@invopop/gobl-worker 0.403.0 → 0.505.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,180 +1,128 @@
1
- const a = '(function(){"use strict";(()=>{const r=()=>{const h=new Error("not implemented");return h.code="ENOSYS",h};if(!globalThis.fs){let h="";globalThis.fs={constants:{O_WRONLY:-1,O_RDWR:-1,O_CREAT:-1,O_TRUNC:-1,O_APPEND:-1,O_EXCL:-1,O_DIRECTORY:-1},writeSync(i,s){h+=g.decode(s);const n=h.lastIndexOf(`\n`);return n!=-1&&(console.log(h.substring(0,n)),h=h.substring(n+1)),s.length},write(i,s,n,a,f,c){if(n!==0||a!==s.length||f!==null){c(r());return}const y=this.writeSync(i,s);c(null,y)},chmod(i,s,n){n(r())},chown(i,s,n,a){a(r())},close(i,s){s(r())},fchmod(i,s,n){n(r())},fchown(i,s,n,a){a(r())},fstat(i,s){s(r())},fsync(i,s){s(null)},ftruncate(i,s,n){n(r())},lchown(i,s,n,a){a(r())},link(i,s,n){n(r())},lstat(i,s){s(r())},mkdir(i,s,n){n(r())},open(i,s,n,a){a(r())},read(i,s,n,a,f,c){c(r())},readdir(i,s){s(r())},readlink(i,s){s(r())},rename(i,s,n){n(r())},rmdir(i,s){s(r())},stat(i,s){s(r())},symlink(i,s,n){n(r())},truncate(i,s,n){n(r())},unlink(i,s){s(r())},utimes(i,s,n,a){a(r())}}}if(globalThis.process||(globalThis.process={getuid(){return-1},getgid(){return-1},geteuid(){return-1},getegid(){return-1},getgroups(){throw r()},pid:-1,ppid:-1,umask(){throw r()},cwd(){throw r()},chdir(){throw r()}}),globalThis.path||(globalThis.path={resolve(...h){return h.join("/")}}),!globalThis.crypto)throw new Error("globalThis.crypto is not available, polyfill required (crypto.getRandomValues only)");if(!globalThis.performance)throw new Error("globalThis.performance is not available, polyfill required (performance.now only)");if(!globalThis.TextEncoder)throw new Error("globalThis.TextEncoder is not available, polyfill required");if(!globalThis.TextDecoder)throw new Error("globalThis.TextDecoder is not available, polyfill required");const d=new TextEncoder("utf-8"),g=new TextDecoder("utf-8");globalThis.Go=class{constructor(){this.argv=["js"],this.env={},this.exit=t=>{t!==0&&console.warn("exit code:",t)},this._exitPromise=new Promise(t=>{this._resolveExitPromise=t}),this._pendingEvent=null,this._scheduledTimeouts=new Map,this._nextCallbackTimeoutID=1;const h=(t,e)=>{this.mem.setUint32(t+0,e,!0),this.mem.setUint32(t+4,Math.floor(e/4294967296),!0)},i=t=>{const e=this.mem.getUint32(t+0,!0),o=this.mem.getInt32(t+4,!0);return e+o*4294967296},s=t=>{const e=this.mem.getFloat64(t,!0);if(e===0)return;if(!isNaN(e))return e;const o=this.mem.getUint32(t,!0);return this._values[o]},n=(t,e)=>{if(typeof e=="number"&&e!==0){if(isNaN(e)){this.mem.setUint32(t+4,2146959360,!0),this.mem.setUint32(t,0,!0);return}this.mem.setFloat64(t,e,!0);return}if(e===void 0){this.mem.setFloat64(t,0,!0);return}let l=this._ids.get(e);l===void 0&&(l=this._idPool.pop(),l===void 0&&(l=this._values.length),this._values[l]=e,this._goRefCounts[l]=0,this._ids.set(e,l)),this._goRefCounts[l]++;let u=0;switch(typeof e){case"object":e!==null&&(u=1);break;case"string":u=2;break;case"symbol":u=3;break;case"function":u=4;break}this.mem.setUint32(t+4,2146959360|u,!0),this.mem.setUint32(t,l,!0)},a=t=>{const e=i(t+0),o=i(t+8);return new Uint8Array(this._inst.exports.mem.buffer,e,o)},f=t=>{const e=i(t+0),o=i(t+8),l=new Array(o);for(let u=0;u<o;u++)l[u]=s(e+u*8);return l},c=t=>{const e=i(t+0),o=i(t+8);return g.decode(new DataView(this._inst.exports.mem.buffer,e,o))},y=(t,e)=>(this._inst.exports.testExport0(),this._inst.exports.testExport(t,e)),m=Date.now()-performance.now();this.importObject={_gotest:{add:(t,e)=>t+e,callExport:y},gojs:{"runtime.wasmExit":t=>{t>>>=0;const e=this.mem.getInt32(t+8,!0);this.exited=!0,delete this._inst,delete this._values,delete this._goRefCounts,delete this._ids,delete this._idPool,this.exit(e)},"runtime.wasmWrite":t=>{t>>>=0;const e=i(t+8),o=i(t+16),l=this.mem.getInt32(t+24,!0);fs.writeSync(e,new Uint8Array(this._inst.exports.mem.buffer,o,l))},"runtime.resetMemoryDataView":t=>{this.mem=new DataView(this._inst.exports.mem.buffer)},"runtime.nanotime1":t=>{t>>>=0,h(t+8,(m+performance.now())*1e6)},"runtime.walltime":t=>{t>>>=0;const e=new Date().getTime();h(t+8,e/1e3),this.mem.setInt32(t+16,e%1e3*1e6,!0)},"runtime.scheduleTimeoutEvent":t=>{t>>>=0;const e=this._nextCallbackTimeoutID;this._nextCallbackTimeoutID++,this._scheduledTimeouts.set(e,setTimeout(()=>{for(this._resume();this._scheduledTimeouts.has(e);)console.warn("scheduleTimeoutEvent: missed timeout event"),this._resume()},i(t+8))),this.mem.setInt32(t+16,e,!0)},"runtime.clearTimeoutEvent":t=>{t>>>=0;const e=this.mem.getInt32(t+8,!0);clearTimeout(this._scheduledTimeouts.get(e)),this._scheduledTimeouts.delete(e)},"runtime.getRandomData":t=>{t>>>=0,crypto.getRandomValues(a(t+8))},"syscall/js.finalizeRef":t=>{t>>>=0;const e=this.mem.getUint32(t+8,!0);if(this._goRefCounts[e]--,this._goRefCounts[e]===0){const o=this._values[e];this._values[e]=null,this._ids.delete(o),this._idPool.push(e)}},"syscall/js.stringVal":t=>{t>>>=0,n(t+24,c(t+8))},"syscall/js.valueGet":t=>{t>>>=0;const e=Reflect.get(s(t+8),c(t+16));t=this._inst.exports.getsp()>>>0,n(t+32,e)},"syscall/js.valueSet":t=>{t>>>=0,Reflect.set(s(t+8),c(t+16),s(t+32))},"syscall/js.valueDelete":t=>{t>>>=0,Reflect.deleteProperty(s(t+8),c(t+16))},"syscall/js.valueIndex":t=>{t>>>=0,n(t+24,Reflect.get(s(t+8),i(t+16)))},"syscall/js.valueSetIndex":t=>{t>>>=0,Reflect.set(s(t+8),i(t+16),s(t+24))},"syscall/js.valueCall":t=>{t>>>=0;try{const e=s(t+8),o=Reflect.get(e,c(t+16)),l=f(t+32),u=Reflect.apply(o,e,l);t=this._inst.exports.getsp()>>>0,n(t+56,u),this.mem.setUint8(t+64,1)}catch(e){t=this._inst.exports.getsp()>>>0,n(t+56,e),this.mem.setUint8(t+64,0)}},"syscall/js.valueInvoke":t=>{t>>>=0;try{const e=s(t+8),o=f(t+16),l=Reflect.apply(e,void 0,o);t=this._inst.exports.getsp()>>>0,n(t+40,l),this.mem.setUint8(t+48,1)}catch(e){t=this._inst.exports.getsp()>>>0,n(t+40,e),this.mem.setUint8(t+48,0)}},"syscall/js.valueNew":t=>{t>>>=0;try{const e=s(t+8),o=f(t+16),l=Reflect.construct(e,o);t=this._inst.exports.getsp()>>>0,n(t+40,l),this.mem.setUint8(t+48,1)}catch(e){t=this._inst.exports.getsp()>>>0,n(t+40,e),this.mem.setUint8(t+48,0)}},"syscall/js.valueLength":t=>{t>>>=0,h(t+16,parseInt(s(t+8).length))},"syscall/js.valuePrepareString":t=>{t>>>=0;const e=d.encode(String(s(t+8)));n(t+16,e),h(t+24,e.length)},"syscall/js.valueLoadString":t=>{t>>>=0;const e=s(t+8);a(t+16).set(e)},"syscall/js.valueInstanceOf":t=>{t>>>=0,this.mem.setUint8(t+24,s(t+8)instanceof s(t+16)?1:0)},"syscall/js.copyBytesToGo":t=>{t>>>=0;const e=a(t+8),o=s(t+32);if(!(o instanceof Uint8Array||o instanceof Uint8ClampedArray)){this.mem.setUint8(t+48,0);return}const l=o.subarray(0,e.length);e.set(l),h(t+40,l.length),this.mem.setUint8(t+48,1)},"syscall/js.copyBytesToJS":t=>{t>>>=0;const e=s(t+8),o=a(t+16);if(!(e instanceof Uint8Array||e instanceof Uint8ClampedArray)){this.mem.setUint8(t+48,0);return}const l=o.subarray(0,e.length);e.set(l),h(t+40,l.length),this.mem.setUint8(t+48,1)},debug:t=>{console.log(t)}}}}async run(h){if(!(h instanceof WebAssembly.Instance))throw new Error("Go.run: WebAssembly.Instance expected");this._inst=h,this.mem=new DataView(this._inst.exports.mem.buffer),this._values=[NaN,0,null,!0,!1,globalThis,this],this._goRefCounts=new Array(this._values.length).fill(1/0),this._ids=new Map([[0,1],[null,2],[!0,3],[!1,4],[globalThis,5],[this,6]]),this._idPool=[],this.exited=!1;let i=4096;const s=m=>{const t=i,e=d.encode(m+"\\0");return new Uint8Array(this.mem.buffer,i,e.length).set(e),i+=e.length,i%8!==0&&(i+=8-i%8),t},n=this.argv.length,a=[];this.argv.forEach(m=>{a.push(s(m))}),a.push(0),Object.keys(this.env).sort().forEach(m=>{a.push(s(`${m}=${this.env[m]}`))}),a.push(0);const c=i;if(a.forEach(m=>{this.mem.setUint32(i,m,!0),this.mem.setUint32(i+4,0,!0),i+=8}),i>=12288)throw new Error("total length of command line and environment variables exceeds limit");this._inst.exports.run(n,c),this.exited&&this._resolveExitPromise(),await this._exitPromise}_resume(){if(this.exited)throw new Error("Go program has already exited");this._inst.exports.resume(),this.exited&&this._resolveExitPromise()}_makeFuncWrapper(h){const i=this;return function(){const s={id:h,this:this,args:arguments};return i._pendingEvent=s,i._resume(),s.result}}}})();const w="https://cdn.gobl.org/cli/gobl.0.403.0.wasm";WebAssembly.instantiateStreaming||(WebAssembly.instantiateStreaming=async(r,d)=>{const g=await(await r).arrayBuffer();return await WebAssembly.instantiate(g,d)});const _=new Go;WebAssembly.instantiateStreaming(fetch(w),_.importObject).then(r=>{_.run(r.instance)}).catch(r=>{console.error("Failed to run GOBL WASM instance: ",r)})})();\n', l = typeof self < "u" && self.Blob && new Blob([a], { type: "text/javascript;charset=utf-8" });
2
- function u(t) {
3
- let e;
4
- try {
5
- if (e = l && (self.URL || self.webkitURL).createObjectURL(l), !e) throw "";
6
- const n = new Worker(e, {
7
- name: t == null ? void 0 : t.name
8
- });
9
- return n.addEventListener("error", () => {
10
- (self.URL || self.webkitURL).revokeObjectURL(e);
11
- }), n;
12
- } catch {
13
- return new Worker(
14
- "data:text/javascript;charset=utf-8," + encodeURIComponent(a),
15
- {
16
- name: t == null ? void 0 : t.name
17
- }
18
- );
19
- } finally {
20
- e && (self.URL || self.webkitURL).revokeObjectURL(e);
21
- }
22
- }
23
- const i = [], r = {};
24
- let m = 0, c = !1;
25
- const o = new u();
26
- o.onmessage = ({ data: t }) => {
27
- if ("ready" in t) {
28
- console.log("GOBLWorker is ready ..."), c = !0;
29
- for (let n = 0; n < i.length; n++)
30
- o.postMessage(i[n]);
31
- return !0;
32
- }
33
- const e = r[t.req_id];
34
- if (delete r[t.req_id], !e)
35
- return console.error(
36
- `Received response for an unregistered request (req_id: ${t.req_id}).`,
37
- { data: t }
38
- ), !0;
39
- if (t.error)
40
- return console.error(t.error), e.reject(t.error), !0;
41
- e.resolve(t.payload);
42
- };
43
- async function s(t) {
44
- t.req_id || (t.req_id = `req${++m}`);
45
- const e = new Promise((n, h) => {
46
- r[t.req_id] = {
47
- resolve: n,
48
- reject: h
49
- };
50
- });
51
- return c ? (o.postMessage(t), e) : (i.push(t), e);
52
- }
53
- async function d({
54
- payload: t,
55
- indent: e
56
- }) {
57
- return s({
58
- action: "build",
59
- payload: t,
60
- indent: e
61
- });
62
- }
63
- async function g({
64
- payload: t,
65
- indent: e
66
- }) {
67
- return s({
68
- action: "sign",
69
- payload: t,
70
- indent: e
71
- });
72
- }
73
- async function y({
74
- payload: t,
75
- indent: e
76
- }) {
77
- return s({
78
- action: "validate",
79
- payload: t,
80
- indent: e
81
- });
82
- }
83
- async function p({
84
- payload: t,
85
- indent: e
86
- }) {
87
- return s({
88
- action: "verify",
89
- payload: t,
90
- indent: e
91
- });
92
- }
93
- async function _({
94
- payload: t,
95
- indent: e
96
- }) {
97
- return s({
98
- action: "correct",
99
- payload: t,
100
- indent: e
101
- });
102
- }
103
- async function w({
104
- payload: t,
105
- indent: e
106
- }) {
107
- return s({
108
- action: "replicate",
109
- payload: t,
110
- indent: e
111
- });
112
- }
113
- async function b(t) {
114
- return JSON.parse(
115
- await s({
116
- action: "keygen",
117
- indent: t == null ? void 0 : t.indent
118
- })
119
- );
120
- }
121
- async function v(t) {
122
- return s({
123
- action: "ping",
124
- indent: t == null ? void 0 : t.indent
125
- });
126
- }
127
- async function x({
128
- duration: t,
129
- indent: e
130
- }) {
131
- return s({
132
- action: "sleep",
133
- payload: t,
134
- indent: e
135
- });
136
- }
137
- async function T() {
138
- return s({ action: "schemas" });
139
- }
140
- async function U(t) {
141
- return s({
142
- action: "schema",
143
- payload: { path: t }
144
- });
145
- }
146
- async function R(t) {
147
- return s({
148
- action: "regime",
149
- payload: { code: t }
150
- });
151
- }
152
- const f = /^code=(\d+), message=(.+)$/;
153
- function E(t) {
154
- if (typeof t != "string")
155
- throw t;
156
- const e = t.match(f);
157
- return {
158
- message: e && e[2] || t,
159
- code: e && +e[1] || 0
160
- };
161
- }
162
- function j(t) {
163
- return t.$schema === "https://gobl.org/draft-0/envelope";
164
- }
165
- export {
166
- d as build,
167
- _ as correct,
168
- j as isEnvelope,
169
- b as keygen,
170
- E as parseGOBLError,
171
- v as ping,
172
- R as regime,
173
- w as replicate,
174
- U as schema,
175
- T as schemas,
176
- g as sign,
177
- x as sleep,
178
- y as validate,
179
- p as verify
1
+ //#region src/worker.js?worker&inline
2
+ var e = "(function(){(()=>{let e=()=>{let e=Error(`not implemented`);return e.code=`ENOSYS`,e};if(!globalThis.fs){let t=``;globalThis.fs={constants:{O_WRONLY:-1,O_RDWR:-1,O_CREAT:-1,O_TRUNC:-1,O_APPEND:-1,O_EXCL:-1,O_DIRECTORY:-1},writeSync(e,r){t+=n.decode(r);let i=t.lastIndexOf(`\n`);return i!=-1&&(console.log(t.substring(0,i)),t=t.substring(i+1)),r.length},write(t,n,r,i,a,o){if(r!==0||i!==n.length||a!==null){o(e());return}o(null,this.writeSync(t,n))},chmod(t,n,r){r(e())},chown(t,n,r,i){i(e())},close(t,n){n(e())},fchmod(t,n,r){r(e())},fchown(t,n,r,i){i(e())},fstat(t,n){n(e())},fsync(e,t){t(null)},ftruncate(t,n,r){r(e())},lchown(t,n,r,i){i(e())},link(t,n,r){r(e())},lstat(t,n){n(e())},mkdir(t,n,r){r(e())},open(t,n,r,i){i(e())},read(t,n,r,i,a,o){o(e())},readdir(t,n){n(e())},readlink(t,n){n(e())},rename(t,n,r){r(e())},rmdir(t,n){n(e())},stat(t,n){n(e())},symlink(t,n,r){r(e())},truncate(t,n,r){r(e())},unlink(t,n){n(e())},utimes(t,n,r,i){i(e())}}}if(globalThis.process||(globalThis.process={getuid(){return-1},getgid(){return-1},geteuid(){return-1},getegid(){return-1},getgroups(){throw e()},pid:-1,ppid:-1,umask(){throw e()},cwd(){throw e()},chdir(){throw e()}}),globalThis.path||(globalThis.path={resolve(...e){return e.join(`/`)}}),!globalThis.crypto)throw Error(`globalThis.crypto is not available, polyfill required (crypto.getRandomValues only)`);if(!globalThis.performance)throw Error(`globalThis.performance is not available, polyfill required (performance.now only)`);if(!globalThis.TextEncoder)throw Error(`globalThis.TextEncoder is not available, polyfill required`);if(!globalThis.TextDecoder)throw Error(`globalThis.TextDecoder is not available, polyfill required`);let t=new TextEncoder(`utf-8`),n=new TextDecoder(`utf-8`);globalThis.Go=class{constructor(){this.argv=[`js`],this.env={},this.exit=e=>{e!==0&&console.warn(`exit code:`,e)},this._exitPromise=new Promise(e=>{this._resolveExitPromise=e}),this._pendingEvent=null,this._scheduledTimeouts=new Map,this._nextCallbackTimeoutID=1;let e=(e,t)=>{this.mem.setUint32(e+0,t,!0),this.mem.setUint32(e+4,Math.floor(t/4294967296),!0)},r=e=>this.mem.getUint32(e+0,!0)+this.mem.getInt32(e+4,!0)*4294967296,i=e=>{let t=this.mem.getFloat64(e,!0);if(t===0)return;if(!isNaN(t))return t;let n=this.mem.getUint32(e,!0);return this._values[n]},a=(e,t)=>{let n=2146959360;if(typeof t==`number`&&t!==0){if(isNaN(t)){this.mem.setUint32(e+4,n,!0),this.mem.setUint32(e,0,!0);return}this.mem.setFloat64(e,t,!0);return}if(t===void 0){this.mem.setFloat64(e,0,!0);return}let r=this._ids.get(t);r===void 0&&(r=this._idPool.pop(),r===void 0&&(r=this._values.length),this._values[r]=t,this._goRefCounts[r]=0,this._ids.set(t,r)),this._goRefCounts[r]++;let i=0;switch(typeof t){case`object`:t!==null&&(i=1);break;case`string`:i=2;break;case`symbol`:i=3;break;case`function`:i=4;break}this.mem.setUint32(e+4,n|i,!0),this.mem.setUint32(e,r,!0)},o=e=>{let t=r(e+0),n=r(e+8);return new Uint8Array(this._inst.exports.mem.buffer,t,n)},s=e=>{let t=r(e+0),n=r(e+8),a=Array(n);for(let e=0;e<n;e++)a[e]=i(t+e*8);return a},c=e=>{let t=r(e+0),i=r(e+8);return n.decode(new DataView(this._inst.exports.mem.buffer,t,i))},l=(e,t)=>(this._inst.exports.testExport0(),this._inst.exports.testExport(e,t)),u=Date.now()-performance.now();this.importObject={_gotest:{add:(e,t)=>e+t,callExport:l},gojs:{\"runtime.wasmExit\":e=>{e>>>=0;let t=this.mem.getInt32(e+8,!0);this.exited=!0,delete this._inst,delete this._values,delete this._goRefCounts,delete this._ids,delete this._idPool,this.exit(t)},\"runtime.wasmWrite\":e=>{e>>>=0;let t=r(e+8),n=r(e+16),i=this.mem.getInt32(e+24,!0);fs.writeSync(t,new Uint8Array(this._inst.exports.mem.buffer,n,i))},\"runtime.resetMemoryDataView\":e=>{e>>>=0,this.mem=new DataView(this._inst.exports.mem.buffer)},\"runtime.nanotime1\":t=>{t>>>=0,e(t+8,(u+performance.now())*1e6)},\"runtime.walltime\":t=>{t>>>=0;let n=new Date().getTime();e(t+8,n/1e3),this.mem.setInt32(t+16,n%1e3*1e6,!0)},\"runtime.scheduleTimeoutEvent\":e=>{e>>>=0;let t=this._nextCallbackTimeoutID;this._nextCallbackTimeoutID++,this._scheduledTimeouts.set(t,setTimeout(()=>{for(this._resume();this._scheduledTimeouts.has(t);)console.warn(`scheduleTimeoutEvent: missed timeout event`),this._resume()},r(e+8))),this.mem.setInt32(e+16,t,!0)},\"runtime.clearTimeoutEvent\":e=>{e>>>=0;let t=this.mem.getInt32(e+8,!0);clearTimeout(this._scheduledTimeouts.get(t)),this._scheduledTimeouts.delete(t)},\"runtime.getRandomData\":e=>{e>>>=0,crypto.getRandomValues(o(e+8))},\"syscall/js.finalizeRef\":e=>{e>>>=0;let t=this.mem.getUint32(e+8,!0);if(this._goRefCounts[t]--,this._goRefCounts[t]===0){let e=this._values[t];this._values[t]=null,this._ids.delete(e),this._idPool.push(t)}},\"syscall/js.stringVal\":e=>{e>>>=0,a(e+24,c(e+8))},\"syscall/js.valueGet\":e=>{e>>>=0;let t=Reflect.get(i(e+8),c(e+16));e=this._inst.exports.getsp()>>>0,a(e+32,t)},\"syscall/js.valueSet\":e=>{e>>>=0,Reflect.set(i(e+8),c(e+16),i(e+32))},\"syscall/js.valueDelete\":e=>{e>>>=0,Reflect.deleteProperty(i(e+8),c(e+16))},\"syscall/js.valueIndex\":e=>{e>>>=0,a(e+24,Reflect.get(i(e+8),r(e+16)))},\"syscall/js.valueSetIndex\":e=>{e>>>=0,Reflect.set(i(e+8),r(e+16),i(e+24))},\"syscall/js.valueCall\":e=>{e>>>=0;try{let t=i(e+8),n=Reflect.get(t,c(e+16)),r=s(e+32),o=Reflect.apply(n,t,r);e=this._inst.exports.getsp()>>>0,a(e+56,o),this.mem.setUint8(e+64,1)}catch(t){e=this._inst.exports.getsp()>>>0,a(e+56,t),this.mem.setUint8(e+64,0)}},\"syscall/js.valueInvoke\":e=>{e>>>=0;try{let t=i(e+8),n=s(e+16),r=Reflect.apply(t,void 0,n);e=this._inst.exports.getsp()>>>0,a(e+40,r),this.mem.setUint8(e+48,1)}catch(t){e=this._inst.exports.getsp()>>>0,a(e+40,t),this.mem.setUint8(e+48,0)}},\"syscall/js.valueNew\":e=>{e>>>=0;try{let t=i(e+8),n=s(e+16),r=Reflect.construct(t,n);e=this._inst.exports.getsp()>>>0,a(e+40,r),this.mem.setUint8(e+48,1)}catch(t){e=this._inst.exports.getsp()>>>0,a(e+40,t),this.mem.setUint8(e+48,0)}},\"syscall/js.valueLength\":t=>{t>>>=0,e(t+16,parseInt(i(t+8).length))},\"syscall/js.valuePrepareString\":n=>{n>>>=0;let r=t.encode(String(i(n+8)));a(n+16,r),e(n+24,r.length)},\"syscall/js.valueLoadString\":e=>{e>>>=0;let t=i(e+8);o(e+16).set(t)},\"syscall/js.valueInstanceOf\":e=>{e>>>=0,this.mem.setUint8(e+24,+(i(e+8)instanceof i(e+16)))},\"syscall/js.copyBytesToGo\":t=>{t>>>=0;let n=o(t+8),r=i(t+32);if(!(r instanceof Uint8Array||r instanceof Uint8ClampedArray)){this.mem.setUint8(t+48,0);return}let a=r.subarray(0,n.length);n.set(a),e(t+40,a.length),this.mem.setUint8(t+48,1)},\"syscall/js.copyBytesToJS\":t=>{t>>>=0;let n=i(t+8),r=o(t+16);if(!(n instanceof Uint8Array||n instanceof Uint8ClampedArray)){this.mem.setUint8(t+48,0);return}let a=r.subarray(0,n.length);n.set(a),e(t+40,a.length),this.mem.setUint8(t+48,1)},debug:e=>{console.log(e)}}}}async run(e){if(!(e instanceof WebAssembly.Instance))throw Error(`Go.run: WebAssembly.Instance expected`);this._inst=e,this.mem=new DataView(this._inst.exports.mem.buffer),this._values=[NaN,0,null,!0,!1,globalThis,this],this._goRefCounts=Array(this._values.length).fill(1/0),this._ids=new Map([[0,1],[null,2],[!0,3],[!1,4],[globalThis,5],[this,6]]),this._idPool=[],this.exited=!1;let n=4096,r=e=>{let r=n,i=t.encode(e+`\\0`);return new Uint8Array(this.mem.buffer,n,i.length).set(i),n+=i.length,n%8!=0&&(n+=8-n%8),r},i=this.argv.length,a=[];this.argv.forEach(e=>{a.push(r(e))}),a.push(0),Object.keys(this.env).sort().forEach(e=>{a.push(r(`${e}=${this.env[e]}`))}),a.push(0);let o=n;if(a.forEach(e=>{this.mem.setUint32(n,e,!0),this.mem.setUint32(n+4,0,!0),n+=8}),n>=12288)throw Error(`total length of command line and environment variables exceeds limit`);this._inst.exports.run(i,o),this.exited&&this._resolveExitPromise(),await this._exitPromise}_resume(){if(this.exited)throw Error(`Go program has already exited`);this._inst.exports.resume(),this.exited&&this._resolveExitPromise()}_makeFuncWrapper(e){let t=this;return function(){let n={id:e,this:this,args:arguments};return t._pendingEvent=n,t._resume(),n.result}}}})(),WebAssembly.instantiateStreaming||(WebAssembly.instantiateStreaming=async(e,t)=>{let n=await(await e).arrayBuffer();return await WebAssembly.instantiate(n,t)});let e=new Go;WebAssembly.instantiateStreaming(fetch(`https://cdn.gobl.org/cli/gobl.0.505.2.wasm`),e.importObject).then(t=>{e.run(t.instance)}).catch(e=>{console.error(`Failed to run GOBL WASM instance: `,e)})})();", t = typeof self < "u" && self.Blob && new Blob(["(self.URL || self.webkitURL).revokeObjectURL(self.location.href);", e], { type: "text/javascript;charset=utf-8" });
3
+ function n(n) {
4
+ let r;
5
+ try {
6
+ if (r = t && (self.URL || self.webkitURL).createObjectURL(t), !r) throw "";
7
+ let e = new Worker(r, { name: n?.name });
8
+ return e.addEventListener("error", () => {
9
+ (self.URL || self.webkitURL).revokeObjectURL(r);
10
+ }), e;
11
+ } catch {
12
+ return new Worker("data:text/javascript;charset=utf-8," + encodeURIComponent(e), { name: n?.name });
13
+ }
14
+ }
15
+ //#endregion
16
+ //#region src/index.ts
17
+ var r = [], i = {}, a = 0, o = !1, s = new n();
18
+ s.onmessage = ({ data: e }) => {
19
+ if ("ready" in e) {
20
+ console.log("GOBLWorker is ready ..."), o = !0;
21
+ for (let e = 0; e < r.length; e++) s.postMessage(r[e]);
22
+ return !0;
23
+ }
24
+ let t = i[e.req_id];
25
+ if (delete i[e.req_id], !t) return console.error(`Received response for an unregistered request (req_id: ${e.req_id}).`, { data: e }), !0;
26
+ if (e.error) return console.error(e.error), t.reject(e.error), !0;
27
+ t.resolve(e.payload);
180
28
  };
29
+ async function c(e) {
30
+ e.req_id ||= `req${++a}`;
31
+ let t = new Promise((t, n) => {
32
+ i[e.req_id] = {
33
+ resolve: t,
34
+ reject: n
35
+ };
36
+ });
37
+ return o ? (s.postMessage(e), t) : (r.push(e), t);
38
+ }
39
+ async function l({ payload: e, indent: t }) {
40
+ return c({
41
+ action: "build",
42
+ payload: e,
43
+ indent: t
44
+ });
45
+ }
46
+ async function u({ payload: e, indent: t }) {
47
+ return c({
48
+ action: "sign",
49
+ payload: e,
50
+ indent: t
51
+ });
52
+ }
53
+ async function d({ payload: e, indent: t }) {
54
+ return c({
55
+ action: "validate",
56
+ payload: e,
57
+ indent: t
58
+ });
59
+ }
60
+ async function f({ payload: e, indent: t }) {
61
+ return c({
62
+ action: "verify",
63
+ payload: e,
64
+ indent: t
65
+ });
66
+ }
67
+ async function p({ payload: e, indent: t }) {
68
+ return c({
69
+ action: "correct",
70
+ payload: e,
71
+ indent: t
72
+ });
73
+ }
74
+ async function m({ payload: e, indent: t }) {
75
+ return c({
76
+ action: "replicate",
77
+ payload: e,
78
+ indent: t
79
+ });
80
+ }
81
+ async function h(e) {
82
+ return JSON.parse(await c({
83
+ action: "keygen",
84
+ indent: e?.indent
85
+ }));
86
+ }
87
+ async function g(e) {
88
+ return c({
89
+ action: "ping",
90
+ indent: e?.indent
91
+ });
92
+ }
93
+ async function _({ duration: e, indent: t }) {
94
+ return c({
95
+ action: "sleep",
96
+ payload: e,
97
+ indent: t
98
+ });
99
+ }
100
+ async function v() {
101
+ return c({ action: "schemas" });
102
+ }
103
+ async function y(e) {
104
+ return c({
105
+ action: "schema",
106
+ payload: { path: e }
107
+ });
108
+ }
109
+ async function b(e) {
110
+ return c({
111
+ action: "regime",
112
+ payload: { code: e }
113
+ });
114
+ }
115
+ var x = /^code=(\d+), message=(.+)$/;
116
+ function S(e) {
117
+ if (typeof e != "string") throw e;
118
+ let t = e.match(x);
119
+ return {
120
+ message: t && t[2] || e,
121
+ code: t && +t[1] || 0
122
+ };
123
+ }
124
+ function C(e) {
125
+ return e.$schema === "https://gobl.org/draft-0/envelope";
126
+ }
127
+ //#endregion
128
+ export { l as build, p as correct, C as isEnvelope, h as keygen, S as parseGOBLError, g as ping, b as regime, m as replicate, y as schema, v as schemas, u as sign, _ as sleep, d as validate, f as verify };
@@ -1 +1 @@
1
- (function(s,r){typeof exports=="object"&&typeof module<"u"?r(exports):typeof define=="function"&&define.amd?define(["exports"],r):(s=typeof globalThis<"u"?globalThis:s||self,r(s["gobl-worker"]={}))})(this,function(s){"use strict";const r='(function(){"use strict";(()=>{const r=()=>{const h=new Error("not implemented");return h.code="ENOSYS",h};if(!globalThis.fs){let h="";globalThis.fs={constants:{O_WRONLY:-1,O_RDWR:-1,O_CREAT:-1,O_TRUNC:-1,O_APPEND:-1,O_EXCL:-1,O_DIRECTORY:-1},writeSync(i,s){h+=g.decode(s);const n=h.lastIndexOf(`\n`);return n!=-1&&(console.log(h.substring(0,n)),h=h.substring(n+1)),s.length},write(i,s,n,a,f,c){if(n!==0||a!==s.length||f!==null){c(r());return}const y=this.writeSync(i,s);c(null,y)},chmod(i,s,n){n(r())},chown(i,s,n,a){a(r())},close(i,s){s(r())},fchmod(i,s,n){n(r())},fchown(i,s,n,a){a(r())},fstat(i,s){s(r())},fsync(i,s){s(null)},ftruncate(i,s,n){n(r())},lchown(i,s,n,a){a(r())},link(i,s,n){n(r())},lstat(i,s){s(r())},mkdir(i,s,n){n(r())},open(i,s,n,a){a(r())},read(i,s,n,a,f,c){c(r())},readdir(i,s){s(r())},readlink(i,s){s(r())},rename(i,s,n){n(r())},rmdir(i,s){s(r())},stat(i,s){s(r())},symlink(i,s,n){n(r())},truncate(i,s,n){n(r())},unlink(i,s){s(r())},utimes(i,s,n,a){a(r())}}}if(globalThis.process||(globalThis.process={getuid(){return-1},getgid(){return-1},geteuid(){return-1},getegid(){return-1},getgroups(){throw r()},pid:-1,ppid:-1,umask(){throw r()},cwd(){throw r()},chdir(){throw r()}}),globalThis.path||(globalThis.path={resolve(...h){return h.join("/")}}),!globalThis.crypto)throw new Error("globalThis.crypto is not available, polyfill required (crypto.getRandomValues only)");if(!globalThis.performance)throw new Error("globalThis.performance is not available, polyfill required (performance.now only)");if(!globalThis.TextEncoder)throw new Error("globalThis.TextEncoder is not available, polyfill required");if(!globalThis.TextDecoder)throw new Error("globalThis.TextDecoder is not available, polyfill required");const d=new TextEncoder("utf-8"),g=new TextDecoder("utf-8");globalThis.Go=class{constructor(){this.argv=["js"],this.env={},this.exit=t=>{t!==0&&console.warn("exit code:",t)},this._exitPromise=new Promise(t=>{this._resolveExitPromise=t}),this._pendingEvent=null,this._scheduledTimeouts=new Map,this._nextCallbackTimeoutID=1;const h=(t,e)=>{this.mem.setUint32(t+0,e,!0),this.mem.setUint32(t+4,Math.floor(e/4294967296),!0)},i=t=>{const e=this.mem.getUint32(t+0,!0),o=this.mem.getInt32(t+4,!0);return e+o*4294967296},s=t=>{const e=this.mem.getFloat64(t,!0);if(e===0)return;if(!isNaN(e))return e;const o=this.mem.getUint32(t,!0);return this._values[o]},n=(t,e)=>{if(typeof e=="number"&&e!==0){if(isNaN(e)){this.mem.setUint32(t+4,2146959360,!0),this.mem.setUint32(t,0,!0);return}this.mem.setFloat64(t,e,!0);return}if(e===void 0){this.mem.setFloat64(t,0,!0);return}let l=this._ids.get(e);l===void 0&&(l=this._idPool.pop(),l===void 0&&(l=this._values.length),this._values[l]=e,this._goRefCounts[l]=0,this._ids.set(e,l)),this._goRefCounts[l]++;let u=0;switch(typeof e){case"object":e!==null&&(u=1);break;case"string":u=2;break;case"symbol":u=3;break;case"function":u=4;break}this.mem.setUint32(t+4,2146959360|u,!0),this.mem.setUint32(t,l,!0)},a=t=>{const e=i(t+0),o=i(t+8);return new Uint8Array(this._inst.exports.mem.buffer,e,o)},f=t=>{const e=i(t+0),o=i(t+8),l=new Array(o);for(let u=0;u<o;u++)l[u]=s(e+u*8);return l},c=t=>{const e=i(t+0),o=i(t+8);return g.decode(new DataView(this._inst.exports.mem.buffer,e,o))},y=(t,e)=>(this._inst.exports.testExport0(),this._inst.exports.testExport(t,e)),m=Date.now()-performance.now();this.importObject={_gotest:{add:(t,e)=>t+e,callExport:y},gojs:{"runtime.wasmExit":t=>{t>>>=0;const e=this.mem.getInt32(t+8,!0);this.exited=!0,delete this._inst,delete this._values,delete this._goRefCounts,delete this._ids,delete this._idPool,this.exit(e)},"runtime.wasmWrite":t=>{t>>>=0;const e=i(t+8),o=i(t+16),l=this.mem.getInt32(t+24,!0);fs.writeSync(e,new Uint8Array(this._inst.exports.mem.buffer,o,l))},"runtime.resetMemoryDataView":t=>{this.mem=new DataView(this._inst.exports.mem.buffer)},"runtime.nanotime1":t=>{t>>>=0,h(t+8,(m+performance.now())*1e6)},"runtime.walltime":t=>{t>>>=0;const e=new Date().getTime();h(t+8,e/1e3),this.mem.setInt32(t+16,e%1e3*1e6,!0)},"runtime.scheduleTimeoutEvent":t=>{t>>>=0;const e=this._nextCallbackTimeoutID;this._nextCallbackTimeoutID++,this._scheduledTimeouts.set(e,setTimeout(()=>{for(this._resume();this._scheduledTimeouts.has(e);)console.warn("scheduleTimeoutEvent: missed timeout event"),this._resume()},i(t+8))),this.mem.setInt32(t+16,e,!0)},"runtime.clearTimeoutEvent":t=>{t>>>=0;const e=this.mem.getInt32(t+8,!0);clearTimeout(this._scheduledTimeouts.get(e)),this._scheduledTimeouts.delete(e)},"runtime.getRandomData":t=>{t>>>=0,crypto.getRandomValues(a(t+8))},"syscall/js.finalizeRef":t=>{t>>>=0;const e=this.mem.getUint32(t+8,!0);if(this._goRefCounts[e]--,this._goRefCounts[e]===0){const o=this._values[e];this._values[e]=null,this._ids.delete(o),this._idPool.push(e)}},"syscall/js.stringVal":t=>{t>>>=0,n(t+24,c(t+8))},"syscall/js.valueGet":t=>{t>>>=0;const e=Reflect.get(s(t+8),c(t+16));t=this._inst.exports.getsp()>>>0,n(t+32,e)},"syscall/js.valueSet":t=>{t>>>=0,Reflect.set(s(t+8),c(t+16),s(t+32))},"syscall/js.valueDelete":t=>{t>>>=0,Reflect.deleteProperty(s(t+8),c(t+16))},"syscall/js.valueIndex":t=>{t>>>=0,n(t+24,Reflect.get(s(t+8),i(t+16)))},"syscall/js.valueSetIndex":t=>{t>>>=0,Reflect.set(s(t+8),i(t+16),s(t+24))},"syscall/js.valueCall":t=>{t>>>=0;try{const e=s(t+8),o=Reflect.get(e,c(t+16)),l=f(t+32),u=Reflect.apply(o,e,l);t=this._inst.exports.getsp()>>>0,n(t+56,u),this.mem.setUint8(t+64,1)}catch(e){t=this._inst.exports.getsp()>>>0,n(t+56,e),this.mem.setUint8(t+64,0)}},"syscall/js.valueInvoke":t=>{t>>>=0;try{const e=s(t+8),o=f(t+16),l=Reflect.apply(e,void 0,o);t=this._inst.exports.getsp()>>>0,n(t+40,l),this.mem.setUint8(t+48,1)}catch(e){t=this._inst.exports.getsp()>>>0,n(t+40,e),this.mem.setUint8(t+48,0)}},"syscall/js.valueNew":t=>{t>>>=0;try{const e=s(t+8),o=f(t+16),l=Reflect.construct(e,o);t=this._inst.exports.getsp()>>>0,n(t+40,l),this.mem.setUint8(t+48,1)}catch(e){t=this._inst.exports.getsp()>>>0,n(t+40,e),this.mem.setUint8(t+48,0)}},"syscall/js.valueLength":t=>{t>>>=0,h(t+16,parseInt(s(t+8).length))},"syscall/js.valuePrepareString":t=>{t>>>=0;const e=d.encode(String(s(t+8)));n(t+16,e),h(t+24,e.length)},"syscall/js.valueLoadString":t=>{t>>>=0;const e=s(t+8);a(t+16).set(e)},"syscall/js.valueInstanceOf":t=>{t>>>=0,this.mem.setUint8(t+24,s(t+8)instanceof s(t+16)?1:0)},"syscall/js.copyBytesToGo":t=>{t>>>=0;const e=a(t+8),o=s(t+32);if(!(o instanceof Uint8Array||o instanceof Uint8ClampedArray)){this.mem.setUint8(t+48,0);return}const l=o.subarray(0,e.length);e.set(l),h(t+40,l.length),this.mem.setUint8(t+48,1)},"syscall/js.copyBytesToJS":t=>{t>>>=0;const e=s(t+8),o=a(t+16);if(!(e instanceof Uint8Array||e instanceof Uint8ClampedArray)){this.mem.setUint8(t+48,0);return}const l=o.subarray(0,e.length);e.set(l),h(t+40,l.length),this.mem.setUint8(t+48,1)},debug:t=>{console.log(t)}}}}async run(h){if(!(h instanceof WebAssembly.Instance))throw new Error("Go.run: WebAssembly.Instance expected");this._inst=h,this.mem=new DataView(this._inst.exports.mem.buffer),this._values=[NaN,0,null,!0,!1,globalThis,this],this._goRefCounts=new Array(this._values.length).fill(1/0),this._ids=new Map([[0,1],[null,2],[!0,3],[!1,4],[globalThis,5],[this,6]]),this._idPool=[],this.exited=!1;let i=4096;const s=m=>{const t=i,e=d.encode(m+"\\0");return new Uint8Array(this.mem.buffer,i,e.length).set(e),i+=e.length,i%8!==0&&(i+=8-i%8),t},n=this.argv.length,a=[];this.argv.forEach(m=>{a.push(s(m))}),a.push(0),Object.keys(this.env).sort().forEach(m=>{a.push(s(`${m}=${this.env[m]}`))}),a.push(0);const c=i;if(a.forEach(m=>{this.mem.setUint32(i,m,!0),this.mem.setUint32(i+4,0,!0),i+=8}),i>=12288)throw new Error("total length of command line and environment variables exceeds limit");this._inst.exports.run(n,c),this.exited&&this._resolveExitPromise(),await this._exitPromise}_resume(){if(this.exited)throw new Error("Go program has already exited");this._inst.exports.resume(),this.exited&&this._resolveExitPromise()}_makeFuncWrapper(h){const i=this;return function(){const s={id:h,this:this,args:arguments};return i._pendingEvent=s,i._resume(),s.result}}}})();const w="https://cdn.gobl.org/cli/gobl.0.403.0.wasm";WebAssembly.instantiateStreaming||(WebAssembly.instantiateStreaming=async(r,d)=>{const g=await(await r).arrayBuffer();return await WebAssembly.instantiate(g,d)});const _=new Go;WebAssembly.instantiateStreaming(fetch(w),_.importObject).then(r=>{_.run(r.instance)}).catch(r=>{console.error("Failed to run GOBL WASM instance: ",r)})})();\n',c=typeof self<"u"&&self.Blob&&new Blob([r],{type:"text/javascript;charset=utf-8"});function u(e){let t;try{if(t=c&&(self.URL||self.webkitURL).createObjectURL(c),!t)throw"";const i=new Worker(t,{name:e==null?void 0:e.name});return i.addEventListener("error",()=>{(self.URL||self.webkitURL).revokeObjectURL(t)}),i}catch{return new Worker("data:text/javascript;charset=utf-8,"+encodeURIComponent(r),{name:e==null?void 0:e.name})}finally{t&&(self.URL||self.webkitURL).revokeObjectURL(t)}}const o=[],l={};let m=0,h=!1;const a=new u;a.onmessage=({data:e})=>{if("ready"in e){console.log("GOBLWorker is ready ..."),h=!0;for(let i=0;i<o.length;i++)a.postMessage(o[i]);return!0}const t=l[e.req_id];if(delete l[e.req_id],!t)return console.error(`Received response for an unregistered request (req_id: ${e.req_id}).`,{data:e}),!0;if(e.error)return console.error(e.error),t.reject(e.error),!0;t.resolve(e.payload)};async function n(e){e.req_id||(e.req_id=`req${++m}`);const t=new Promise((i,k)=>{l[e.req_id]={resolve:i,reject:k}});return h?(a.postMessage(e),t):(o.push(e),t)}async function f({payload:e,indent:t}){return n({action:"build",payload:e,indent:t})}async function d({payload:e,indent:t}){return n({action:"sign",payload:e,indent:t})}async function g({payload:e,indent:t}){return n({action:"validate",payload:e,indent:t})}async function y({payload:e,indent:t}){return n({action:"verify",payload:e,indent:t})}async function p({payload:e,indent:t}){return n({action:"correct",payload:e,indent:t})}async function b({payload:e,indent:t}){return n({action:"replicate",payload:e,indent:t})}async function w(e){return JSON.parse(await n({action:"keygen",indent:e==null?void 0:e.indent}))}async function _(e){return n({action:"ping",indent:e==null?void 0:e.indent})}async function v({duration:e,indent:t}){return n({action:"sleep",payload:e,indent:t})}async function T(){return n({action:"schemas"})}async function U(e){return n({action:"schema",payload:{path:e}})}async function x(e){return n({action:"regime",payload:{code:e}})}const R=/^code=(\d+), message=(.+)$/;function E(e){if(typeof e!="string")throw e;const t=e.match(R);return{message:t&&t[2]||e,code:t&&+t[1]||0}}function j(e){return e.$schema==="https://gobl.org/draft-0/envelope"}s.build=f,s.correct=p,s.isEnvelope=j,s.keygen=w,s.parseGOBLError=E,s.ping=_,s.regime=x,s.replicate=b,s.schema=U,s.schemas=T,s.sign=d,s.sleep=v,s.validate=g,s.verify=y,Object.defineProperty(s,Symbol.toStringTag,{value:"Module"})});
1
+ (function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports):typeof define==`function`&&define.amd?define([`exports`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e[`gobl-worker`]={}))})(this,function(e){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});var t='(function(){(()=>{let e=()=>{let e=Error(`not implemented`);return e.code=`ENOSYS`,e};if(!globalThis.fs){let t=``;globalThis.fs={constants:{O_WRONLY:-1,O_RDWR:-1,O_CREAT:-1,O_TRUNC:-1,O_APPEND:-1,O_EXCL:-1,O_DIRECTORY:-1},writeSync(e,r){t+=n.decode(r);let i=t.lastIndexOf(`\n`);return i!=-1&&(console.log(t.substring(0,i)),t=t.substring(i+1)),r.length},write(t,n,r,i,a,o){if(r!==0||i!==n.length||a!==null){o(e());return}o(null,this.writeSync(t,n))},chmod(t,n,r){r(e())},chown(t,n,r,i){i(e())},close(t,n){n(e())},fchmod(t,n,r){r(e())},fchown(t,n,r,i){i(e())},fstat(t,n){n(e())},fsync(e,t){t(null)},ftruncate(t,n,r){r(e())},lchown(t,n,r,i){i(e())},link(t,n,r){r(e())},lstat(t,n){n(e())},mkdir(t,n,r){r(e())},open(t,n,r,i){i(e())},read(t,n,r,i,a,o){o(e())},readdir(t,n){n(e())},readlink(t,n){n(e())},rename(t,n,r){r(e())},rmdir(t,n){n(e())},stat(t,n){n(e())},symlink(t,n,r){r(e())},truncate(t,n,r){r(e())},unlink(t,n){n(e())},utimes(t,n,r,i){i(e())}}}if(globalThis.process||(globalThis.process={getuid(){return-1},getgid(){return-1},geteuid(){return-1},getegid(){return-1},getgroups(){throw e()},pid:-1,ppid:-1,umask(){throw e()},cwd(){throw e()},chdir(){throw e()}}),globalThis.path||(globalThis.path={resolve(...e){return e.join(`/`)}}),!globalThis.crypto)throw Error(`globalThis.crypto is not available, polyfill required (crypto.getRandomValues only)`);if(!globalThis.performance)throw Error(`globalThis.performance is not available, polyfill required (performance.now only)`);if(!globalThis.TextEncoder)throw Error(`globalThis.TextEncoder is not available, polyfill required`);if(!globalThis.TextDecoder)throw Error(`globalThis.TextDecoder is not available, polyfill required`);let t=new TextEncoder(`utf-8`),n=new TextDecoder(`utf-8`);globalThis.Go=class{constructor(){this.argv=[`js`],this.env={},this.exit=e=>{e!==0&&console.warn(`exit code:`,e)},this._exitPromise=new Promise(e=>{this._resolveExitPromise=e}),this._pendingEvent=null,this._scheduledTimeouts=new Map,this._nextCallbackTimeoutID=1;let e=(e,t)=>{this.mem.setUint32(e+0,t,!0),this.mem.setUint32(e+4,Math.floor(t/4294967296),!0)},r=e=>this.mem.getUint32(e+0,!0)+this.mem.getInt32(e+4,!0)*4294967296,i=e=>{let t=this.mem.getFloat64(e,!0);if(t===0)return;if(!isNaN(t))return t;let n=this.mem.getUint32(e,!0);return this._values[n]},a=(e,t)=>{let n=2146959360;if(typeof t==`number`&&t!==0){if(isNaN(t)){this.mem.setUint32(e+4,n,!0),this.mem.setUint32(e,0,!0);return}this.mem.setFloat64(e,t,!0);return}if(t===void 0){this.mem.setFloat64(e,0,!0);return}let r=this._ids.get(t);r===void 0&&(r=this._idPool.pop(),r===void 0&&(r=this._values.length),this._values[r]=t,this._goRefCounts[r]=0,this._ids.set(t,r)),this._goRefCounts[r]++;let i=0;switch(typeof t){case`object`:t!==null&&(i=1);break;case`string`:i=2;break;case`symbol`:i=3;break;case`function`:i=4;break}this.mem.setUint32(e+4,n|i,!0),this.mem.setUint32(e,r,!0)},o=e=>{let t=r(e+0),n=r(e+8);return new Uint8Array(this._inst.exports.mem.buffer,t,n)},s=e=>{let t=r(e+0),n=r(e+8),a=Array(n);for(let e=0;e<n;e++)a[e]=i(t+e*8);return a},c=e=>{let t=r(e+0),i=r(e+8);return n.decode(new DataView(this._inst.exports.mem.buffer,t,i))},l=(e,t)=>(this._inst.exports.testExport0(),this._inst.exports.testExport(e,t)),u=Date.now()-performance.now();this.importObject={_gotest:{add:(e,t)=>e+t,callExport:l},gojs:{"runtime.wasmExit":e=>{e>>>=0;let t=this.mem.getInt32(e+8,!0);this.exited=!0,delete this._inst,delete this._values,delete this._goRefCounts,delete this._ids,delete this._idPool,this.exit(t)},"runtime.wasmWrite":e=>{e>>>=0;let t=r(e+8),n=r(e+16),i=this.mem.getInt32(e+24,!0);fs.writeSync(t,new Uint8Array(this._inst.exports.mem.buffer,n,i))},"runtime.resetMemoryDataView":e=>{e>>>=0,this.mem=new DataView(this._inst.exports.mem.buffer)},"runtime.nanotime1":t=>{t>>>=0,e(t+8,(u+performance.now())*1e6)},"runtime.walltime":t=>{t>>>=0;let n=new Date().getTime();e(t+8,n/1e3),this.mem.setInt32(t+16,n%1e3*1e6,!0)},"runtime.scheduleTimeoutEvent":e=>{e>>>=0;let t=this._nextCallbackTimeoutID;this._nextCallbackTimeoutID++,this._scheduledTimeouts.set(t,setTimeout(()=>{for(this._resume();this._scheduledTimeouts.has(t);)console.warn(`scheduleTimeoutEvent: missed timeout event`),this._resume()},r(e+8))),this.mem.setInt32(e+16,t,!0)},"runtime.clearTimeoutEvent":e=>{e>>>=0;let t=this.mem.getInt32(e+8,!0);clearTimeout(this._scheduledTimeouts.get(t)),this._scheduledTimeouts.delete(t)},"runtime.getRandomData":e=>{e>>>=0,crypto.getRandomValues(o(e+8))},"syscall/js.finalizeRef":e=>{e>>>=0;let t=this.mem.getUint32(e+8,!0);if(this._goRefCounts[t]--,this._goRefCounts[t]===0){let e=this._values[t];this._values[t]=null,this._ids.delete(e),this._idPool.push(t)}},"syscall/js.stringVal":e=>{e>>>=0,a(e+24,c(e+8))},"syscall/js.valueGet":e=>{e>>>=0;let t=Reflect.get(i(e+8),c(e+16));e=this._inst.exports.getsp()>>>0,a(e+32,t)},"syscall/js.valueSet":e=>{e>>>=0,Reflect.set(i(e+8),c(e+16),i(e+32))},"syscall/js.valueDelete":e=>{e>>>=0,Reflect.deleteProperty(i(e+8),c(e+16))},"syscall/js.valueIndex":e=>{e>>>=0,a(e+24,Reflect.get(i(e+8),r(e+16)))},"syscall/js.valueSetIndex":e=>{e>>>=0,Reflect.set(i(e+8),r(e+16),i(e+24))},"syscall/js.valueCall":e=>{e>>>=0;try{let t=i(e+8),n=Reflect.get(t,c(e+16)),r=s(e+32),o=Reflect.apply(n,t,r);e=this._inst.exports.getsp()>>>0,a(e+56,o),this.mem.setUint8(e+64,1)}catch(t){e=this._inst.exports.getsp()>>>0,a(e+56,t),this.mem.setUint8(e+64,0)}},"syscall/js.valueInvoke":e=>{e>>>=0;try{let t=i(e+8),n=s(e+16),r=Reflect.apply(t,void 0,n);e=this._inst.exports.getsp()>>>0,a(e+40,r),this.mem.setUint8(e+48,1)}catch(t){e=this._inst.exports.getsp()>>>0,a(e+40,t),this.mem.setUint8(e+48,0)}},"syscall/js.valueNew":e=>{e>>>=0;try{let t=i(e+8),n=s(e+16),r=Reflect.construct(t,n);e=this._inst.exports.getsp()>>>0,a(e+40,r),this.mem.setUint8(e+48,1)}catch(t){e=this._inst.exports.getsp()>>>0,a(e+40,t),this.mem.setUint8(e+48,0)}},"syscall/js.valueLength":t=>{t>>>=0,e(t+16,parseInt(i(t+8).length))},"syscall/js.valuePrepareString":n=>{n>>>=0;let r=t.encode(String(i(n+8)));a(n+16,r),e(n+24,r.length)},"syscall/js.valueLoadString":e=>{e>>>=0;let t=i(e+8);o(e+16).set(t)},"syscall/js.valueInstanceOf":e=>{e>>>=0,this.mem.setUint8(e+24,+(i(e+8)instanceof i(e+16)))},"syscall/js.copyBytesToGo":t=>{t>>>=0;let n=o(t+8),r=i(t+32);if(!(r instanceof Uint8Array||r instanceof Uint8ClampedArray)){this.mem.setUint8(t+48,0);return}let a=r.subarray(0,n.length);n.set(a),e(t+40,a.length),this.mem.setUint8(t+48,1)},"syscall/js.copyBytesToJS":t=>{t>>>=0;let n=i(t+8),r=o(t+16);if(!(n instanceof Uint8Array||n instanceof Uint8ClampedArray)){this.mem.setUint8(t+48,0);return}let a=r.subarray(0,n.length);n.set(a),e(t+40,a.length),this.mem.setUint8(t+48,1)},debug:e=>{console.log(e)}}}}async run(e){if(!(e instanceof WebAssembly.Instance))throw Error(`Go.run: WebAssembly.Instance expected`);this._inst=e,this.mem=new DataView(this._inst.exports.mem.buffer),this._values=[NaN,0,null,!0,!1,globalThis,this],this._goRefCounts=Array(this._values.length).fill(1/0),this._ids=new Map([[0,1],[null,2],[!0,3],[!1,4],[globalThis,5],[this,6]]),this._idPool=[],this.exited=!1;let n=4096,r=e=>{let r=n,i=t.encode(e+`\\0`);return new Uint8Array(this.mem.buffer,n,i.length).set(i),n+=i.length,n%8!=0&&(n+=8-n%8),r},i=this.argv.length,a=[];this.argv.forEach(e=>{a.push(r(e))}),a.push(0),Object.keys(this.env).sort().forEach(e=>{a.push(r(`${e}=${this.env[e]}`))}),a.push(0);let o=n;if(a.forEach(e=>{this.mem.setUint32(n,e,!0),this.mem.setUint32(n+4,0,!0),n+=8}),n>=12288)throw Error(`total length of command line and environment variables exceeds limit`);this._inst.exports.run(i,o),this.exited&&this._resolveExitPromise(),await this._exitPromise}_resume(){if(this.exited)throw Error(`Go program has already exited`);this._inst.exports.resume(),this.exited&&this._resolveExitPromise()}_makeFuncWrapper(e){let t=this;return function(){let n={id:e,this:this,args:arguments};return t._pendingEvent=n,t._resume(),n.result}}}})(),WebAssembly.instantiateStreaming||(WebAssembly.instantiateStreaming=async(e,t)=>{let n=await(await e).arrayBuffer();return await WebAssembly.instantiate(n,t)});let e=new Go;WebAssembly.instantiateStreaming(fetch(`https://cdn.gobl.org/cli/gobl.0.505.2.wasm`),e.importObject).then(t=>{e.run(t.instance)}).catch(e=>{console.error(`Failed to run GOBL WASM instance: `,e)})})();',n=typeof self<`u`&&self.Blob&&new Blob([`(self.URL || self.webkitURL).revokeObjectURL(self.location.href);`,t],{type:`text/javascript;charset=utf-8`});function r(e){let r;try{if(r=n&&(self.URL||self.webkitURL).createObjectURL(n),!r)throw``;let t=new Worker(r,{name:e?.name});return t.addEventListener(`error`,()=>{(self.URL||self.webkitURL).revokeObjectURL(r)}),t}catch{return new Worker(`data:text/javascript;charset=utf-8,`+encodeURIComponent(t),{name:e?.name})}}var i=[],a={},o=0,s=!1,c=new r;c.onmessage=({data:e})=>{if(`ready`in e){console.log(`GOBLWorker is ready ...`),s=!0;for(let e=0;e<i.length;e++)c.postMessage(i[e]);return!0}let t=a[e.req_id];if(delete a[e.req_id],!t)return console.error(`Received response for an unregistered request (req_id: ${e.req_id}).`,{data:e}),!0;if(e.error)return console.error(e.error),t.reject(e.error),!0;t.resolve(e.payload)};async function l(e){e.req_id||=`req${++o}`;let t=new Promise((t,n)=>{a[e.req_id]={resolve:t,reject:n}});return s?(c.postMessage(e),t):(i.push(e),t)}async function u({payload:e,indent:t}){return l({action:`build`,payload:e,indent:t})}async function d({payload:e,indent:t}){return l({action:`sign`,payload:e,indent:t})}async function f({payload:e,indent:t}){return l({action:`validate`,payload:e,indent:t})}async function p({payload:e,indent:t}){return l({action:`verify`,payload:e,indent:t})}async function m({payload:e,indent:t}){return l({action:`correct`,payload:e,indent:t})}async function h({payload:e,indent:t}){return l({action:`replicate`,payload:e,indent:t})}async function g(e){return JSON.parse(await l({action:`keygen`,indent:e?.indent}))}async function _(e){return l({action:`ping`,indent:e?.indent})}async function v({duration:e,indent:t}){return l({action:`sleep`,payload:e,indent:t})}async function y(){return l({action:`schemas`})}async function b(e){return l({action:`schema`,payload:{path:e}})}async function x(e){return l({action:`regime`,payload:{code:e}})}var S=/^code=(\d+), message=(.+)$/;function C(e){if(typeof e!=`string`)throw e;let t=e.match(S);return{message:t&&t[2]||e,code:t&&+t[1]||0}}function w(e){return e.$schema===`https://gobl.org/draft-0/envelope`}e.build=u,e.correct=m,e.isEnvelope=w,e.keygen=g,e.parseGOBLError=C,e.ping=_,e.regime=x,e.replicate=h,e.schema=b,e.schemas=y,e.sign=d,e.sleep=v,e.validate=f,e.verify=p});
package/package.json CHANGED
@@ -1,11 +1,12 @@
1
1
  {
2
2
  "name": "@invopop/gobl-worker",
3
- "version": "0.403.0",
3
+ "version": "0.505.2",
4
4
  "license": "Apache-2.0",
5
5
  "type": "module",
6
6
  "repository": {
7
7
  "type": "git",
8
- "url": "git+https://github.com/invopop/gobl.git"
8
+ "url": "git+https://github.com/invopop/gobl.dev.git",
9
+ "directory": "wasm/worker"
9
10
  },
10
11
  "homepage": "https://gobl.org",
11
12
  "author": {
@@ -34,7 +35,11 @@
34
35
  "devDependencies": {
35
36
  "@types/node": "^22.13.5",
36
37
  "typescript": "^5.7.3",
37
- "vite": "^6.4.1",
38
+ "vite": "^8.0.16",
38
39
  "vite-plugin-dts": "^4.5.1"
40
+ },
41
+ "overrides": {
42
+ "esbuild": ">=0.28.1",
43
+ "fast-uri": ">=4.1.3"
39
44
  }
40
45
  }