update: added namespaces in client.js

This commit is contained in:
2026-04-17 10:57:21 +08:00
parent 914ad71a43
commit d9d1547e90
2 changed files with 33 additions and 23 deletions

View File

@@ -5,7 +5,7 @@ build-backend = "setuptools.build_meta"
[project] [project]
name = "common" name = "common"
description = "Reusable code stubs" description = "Reusable code stubs"
version = "0.1.8" version = "0.1.9"
requires-python = ">=3.13" requires-python = ">=3.13"
authors = [ authors = [
{ name="BreakerBear", email="breakerbear@autistic.men" }, { name="BreakerBear", email="breakerbear@autistic.men" },

View File

@@ -12,14 +12,23 @@ CONNECTION.addEventListener('message', (e) => {
else promise.resolve(message.result); else promise.resolve(message.result);
}); });
async function notify(method, ...args) { const LogRecord = {
format: (entry) => {
let date = new Date(entry.created).toISOString().slice(0, 19).replace("T", " ");
let line = `[${date}] [${entry.levelname}] [${entry.name}] ${entry.msg}`;
let message = [line, entry.exc_text, entry.stack_info].filter(Boolean).join('\n');
return message;
},
};
const RemoteProceduralCall = {
notify: async (method, ...args) => {
let request = { method }; let request = { method };
if (args.length > 0) request.params = args; if (args.length > 0) request.params = args;
let data = JSON.stringify(request); let data = JSON.stringify(request);
CONNECTION.send(data); CONNECTION.send(data);
} },
invoke: async (method, ...args) => {
async function invoke(method, ...args) {
let id = Math.floor(Math.random() * 1000000000); let id = Math.floor(Math.random() * 1000000000);
let request = { method, id }; let request = { method, id };
if (args.length > 0) request.params = args; if (args.length > 0) request.params = args;
@@ -35,8 +44,9 @@ async function invoke(method, ...args) {
let result = await promise; let result = await promise;
return result; return result;
} },
};
window.notify = notify; window.LogRecord = LogRecord;
window.invoke = invoke; window.Rpc2 = RemoteProceduralCall;
main(...arguments); // entrypoint to user-defined (async) main stub of the script main(...arguments); // entrypoint to user-defined (async) main stub of the script