@fctc/interface-logic 4.3.1 → 4.3.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.
package/dist/hooks.js CHANGED
@@ -1764,9 +1764,9 @@ function applyBinaryOp(ast, context) {
1764
1764
  var DICT = {
1765
1765
  get(...args) {
1766
1766
  const { key, defValue } = parseArgs(args, ["key", "defValue"]);
1767
- const self2 = this;
1768
- if (key in self2) {
1769
- return self2[key];
1767
+ const self = this;
1768
+ if (key in self) {
1769
+ return self[key];
1770
1770
  } else if (defValue !== void 0) {
1771
1771
  return defValue;
1772
1772
  }
@@ -6042,26 +6042,30 @@ var fileService = {
6042
6042
  };
6043
6043
 
6044
6044
  // src/services/filesystem-service/json-worker.ts
6045
- var import_meta = {};
6046
- self.addEventListener("message", async (ev) => {
6047
- const { id, cmd, payload } = ev.data;
6048
- try {
6049
- if (cmd === "parse") {
6050
- const parsed = JSON.parse(payload);
6051
- self.postMessage({ id, ok: true, result: parsed });
6052
- } else if (cmd === "stringify") {
6053
- const str = JSON.stringify(payload);
6054
- self.postMessage({ id, ok: true, result: str });
6055
- }
6056
- } catch (err) {
6057
- self.postMessage({ id, ok: false, error: err?.message || String(err) });
6058
- }
6059
- });
6045
+ function createWorkerBlob() {
6046
+ const workerCode = `
6047
+ self.addEventListener("message", async (ev) => {
6048
+ const { id, cmd, payload } = ev.data;
6049
+ try {
6050
+ if (cmd === "parse") {
6051
+ const parsed = JSON.parse(payload);
6052
+ self.postMessage({ id, ok: true, result: parsed });
6053
+ } else if (cmd === "stringify") {
6054
+ const str = JSON.stringify(payload);
6055
+ self.postMessage({ id, ok: true, result: str });
6056
+ }
6057
+ } catch (err) {
6058
+ self.postMessage({ id, ok: false, error: err?.message || String(err) });
6059
+ }
6060
+ });
6061
+ `;
6062
+ const blob = new Blob([workerCode], { type: "application/javascript" });
6063
+ return URL.createObjectURL(blob);
6064
+ }
6060
6065
  function spawnParseWorker(raw) {
6061
6066
  return new Promise((resolve, reject) => {
6062
- const worker = new Worker(new URL("./json-worker.ts", import_meta.url), {
6063
- type: "module"
6064
- });
6067
+ const workerUrl = createWorkerBlob();
6068
+ const worker = new Worker(workerUrl);
6065
6069
  const id = Math.random().toString(36).slice(2);
6066
6070
  worker.onmessage = (ev) => {
6067
6071
  const { ok, result, error } = ev.data;
@@ -6070,6 +6074,12 @@ function spawnParseWorker(raw) {
6070
6074
  } else {
6071
6075
  reject(new Error(error));
6072
6076
  }
6077
+ URL.revokeObjectURL(workerUrl);
6078
+ worker.terminate();
6079
+ };
6080
+ worker.onerror = (err) => {
6081
+ reject(err);
6082
+ URL.revokeObjectURL(workerUrl);
6073
6083
  worker.terminate();
6074
6084
  };
6075
6085
  worker.postMessage({ id, cmd: "parse", payload: raw });
@@ -6077,13 +6087,18 @@ function spawnParseWorker(raw) {
6077
6087
  }
6078
6088
  function spawnStringifyWorker(obj) {
6079
6089
  return new Promise((resolve, reject) => {
6080
- const worker = new Worker(new URL("./json-worker.ts", import_meta.url), {
6081
- type: "module"
6082
- });
6090
+ const workerUrl = createWorkerBlob();
6091
+ const worker = new Worker(workerUrl);
6083
6092
  worker.onmessage = (ev) => {
6084
6093
  const { ok, result, error } = ev.data;
6085
6094
  if (ok) resolve(result);
6086
6095
  else reject(new Error(error));
6096
+ URL.revokeObjectURL(workerUrl);
6097
+ worker.terminate();
6098
+ };
6099
+ worker.onerror = (err) => {
6100
+ reject(err);
6101
+ URL.revokeObjectURL(workerUrl);
6087
6102
  worker.terminate();
6088
6103
  };
6089
6104
  worker.postMessage({ cmd: "stringify", payload: obj });
package/dist/hooks.mjs CHANGED
@@ -1616,9 +1616,9 @@ function applyBinaryOp(ast, context) {
1616
1616
  var DICT = {
1617
1617
  get(...args) {
1618
1618
  const { key, defValue } = parseArgs(args, ["key", "defValue"]);
1619
- const self2 = this;
1620
- if (key in self2) {
1621
- return self2[key];
1619
+ const self = this;
1620
+ if (key in self) {
1621
+ return self[key];
1622
1622
  } else if (defValue !== void 0) {
1623
1623
  return defValue;
1624
1624
  }
@@ -5894,25 +5894,30 @@ var fileService = {
5894
5894
  };
5895
5895
 
5896
5896
  // src/services/filesystem-service/json-worker.ts
5897
- self.addEventListener("message", async (ev) => {
5898
- const { id, cmd, payload } = ev.data;
5899
- try {
5900
- if (cmd === "parse") {
5901
- const parsed = JSON.parse(payload);
5902
- self.postMessage({ id, ok: true, result: parsed });
5903
- } else if (cmd === "stringify") {
5904
- const str = JSON.stringify(payload);
5905
- self.postMessage({ id, ok: true, result: str });
5906
- }
5907
- } catch (err) {
5908
- self.postMessage({ id, ok: false, error: err?.message || String(err) });
5909
- }
5910
- });
5897
+ function createWorkerBlob() {
5898
+ const workerCode = `
5899
+ self.addEventListener("message", async (ev) => {
5900
+ const { id, cmd, payload } = ev.data;
5901
+ try {
5902
+ if (cmd === "parse") {
5903
+ const parsed = JSON.parse(payload);
5904
+ self.postMessage({ id, ok: true, result: parsed });
5905
+ } else if (cmd === "stringify") {
5906
+ const str = JSON.stringify(payload);
5907
+ self.postMessage({ id, ok: true, result: str });
5908
+ }
5909
+ } catch (err) {
5910
+ self.postMessage({ id, ok: false, error: err?.message || String(err) });
5911
+ }
5912
+ });
5913
+ `;
5914
+ const blob = new Blob([workerCode], { type: "application/javascript" });
5915
+ return URL.createObjectURL(blob);
5916
+ }
5911
5917
  function spawnParseWorker(raw) {
5912
5918
  return new Promise((resolve, reject) => {
5913
- const worker = new Worker(new URL("./json-worker.ts", import.meta.url), {
5914
- type: "module"
5915
- });
5919
+ const workerUrl = createWorkerBlob();
5920
+ const worker = new Worker(workerUrl);
5916
5921
  const id = Math.random().toString(36).slice(2);
5917
5922
  worker.onmessage = (ev) => {
5918
5923
  const { ok, result, error } = ev.data;
@@ -5921,6 +5926,12 @@ function spawnParseWorker(raw) {
5921
5926
  } else {
5922
5927
  reject(new Error(error));
5923
5928
  }
5929
+ URL.revokeObjectURL(workerUrl);
5930
+ worker.terminate();
5931
+ };
5932
+ worker.onerror = (err) => {
5933
+ reject(err);
5934
+ URL.revokeObjectURL(workerUrl);
5924
5935
  worker.terminate();
5925
5936
  };
5926
5937
  worker.postMessage({ id, cmd: "parse", payload: raw });
@@ -5928,13 +5939,18 @@ function spawnParseWorker(raw) {
5928
5939
  }
5929
5940
  function spawnStringifyWorker(obj) {
5930
5941
  return new Promise((resolve, reject) => {
5931
- const worker = new Worker(new URL("./json-worker.ts", import.meta.url), {
5932
- type: "module"
5933
- });
5942
+ const workerUrl = createWorkerBlob();
5943
+ const worker = new Worker(workerUrl);
5934
5944
  worker.onmessage = (ev) => {
5935
5945
  const { ok, result, error } = ev.data;
5936
5946
  if (ok) resolve(result);
5937
5947
  else reject(new Error(error));
5948
+ URL.revokeObjectURL(workerUrl);
5949
+ worker.terminate();
5950
+ };
5951
+ worker.onerror = (err) => {
5952
+ reject(err);
5953
+ URL.revokeObjectURL(workerUrl);
5938
5954
  worker.terminate();
5939
5955
  };
5940
5956
  worker.postMessage({ cmd: "stringify", payload: obj });
package/dist/provider.js CHANGED
@@ -2316,9 +2316,9 @@ function applyBinaryOp(ast, context) {
2316
2316
  var DICT = {
2317
2317
  get(...args) {
2318
2318
  const { key, defValue } = parseArgs(args, ["key", "defValue"]);
2319
- const self2 = this;
2320
- if (key in self2) {
2321
- return self2[key];
2319
+ const self = this;
2320
+ if (key in self) {
2321
+ return self[key];
2322
2322
  } else if (defValue !== void 0) {
2323
2323
  return defValue;
2324
2324
  }
@@ -6024,26 +6024,30 @@ var fileService = {
6024
6024
  };
6025
6025
 
6026
6026
  // src/services/filesystem-service/json-worker.ts
6027
- var import_meta = {};
6028
- self.addEventListener("message", async (ev) => {
6029
- const { id, cmd, payload } = ev.data;
6030
- try {
6031
- if (cmd === "parse") {
6032
- const parsed = JSON.parse(payload);
6033
- self.postMessage({ id, ok: true, result: parsed });
6034
- } else if (cmd === "stringify") {
6035
- const str = JSON.stringify(payload);
6036
- self.postMessage({ id, ok: true, result: str });
6037
- }
6038
- } catch (err) {
6039
- self.postMessage({ id, ok: false, error: err?.message || String(err) });
6040
- }
6041
- });
6027
+ function createWorkerBlob() {
6028
+ const workerCode = `
6029
+ self.addEventListener("message", async (ev) => {
6030
+ const { id, cmd, payload } = ev.data;
6031
+ try {
6032
+ if (cmd === "parse") {
6033
+ const parsed = JSON.parse(payload);
6034
+ self.postMessage({ id, ok: true, result: parsed });
6035
+ } else if (cmd === "stringify") {
6036
+ const str = JSON.stringify(payload);
6037
+ self.postMessage({ id, ok: true, result: str });
6038
+ }
6039
+ } catch (err) {
6040
+ self.postMessage({ id, ok: false, error: err?.message || String(err) });
6041
+ }
6042
+ });
6043
+ `;
6044
+ const blob = new Blob([workerCode], { type: "application/javascript" });
6045
+ return URL.createObjectURL(blob);
6046
+ }
6042
6047
  function spawnParseWorker(raw) {
6043
6048
  return new Promise((resolve, reject) => {
6044
- const worker = new Worker(new URL("./json-worker.ts", import_meta.url), {
6045
- type: "module"
6046
- });
6049
+ const workerUrl = createWorkerBlob();
6050
+ const worker = new Worker(workerUrl);
6047
6051
  const id = Math.random().toString(36).slice(2);
6048
6052
  worker.onmessage = (ev) => {
6049
6053
  const { ok, result, error } = ev.data;
@@ -6052,6 +6056,12 @@ function spawnParseWorker(raw) {
6052
6056
  } else {
6053
6057
  reject(new Error(error));
6054
6058
  }
6059
+ URL.revokeObjectURL(workerUrl);
6060
+ worker.terminate();
6061
+ };
6062
+ worker.onerror = (err) => {
6063
+ reject(err);
6064
+ URL.revokeObjectURL(workerUrl);
6055
6065
  worker.terminate();
6056
6066
  };
6057
6067
  worker.postMessage({ id, cmd: "parse", payload: raw });
@@ -6059,13 +6069,18 @@ function spawnParseWorker(raw) {
6059
6069
  }
6060
6070
  function spawnStringifyWorker(obj) {
6061
6071
  return new Promise((resolve, reject) => {
6062
- const worker = new Worker(new URL("./json-worker.ts", import_meta.url), {
6063
- type: "module"
6064
- });
6072
+ const workerUrl = createWorkerBlob();
6073
+ const worker = new Worker(workerUrl);
6065
6074
  worker.onmessage = (ev) => {
6066
6075
  const { ok, result, error } = ev.data;
6067
6076
  if (ok) resolve(result);
6068
6077
  else reject(new Error(error));
6078
+ URL.revokeObjectURL(workerUrl);
6079
+ worker.terminate();
6080
+ };
6081
+ worker.onerror = (err) => {
6082
+ reject(err);
6083
+ URL.revokeObjectURL(workerUrl);
6069
6084
  worker.terminate();
6070
6085
  };
6071
6086
  worker.postMessage({ cmd: "stringify", payload: obj });
package/dist/provider.mjs CHANGED
@@ -2273,9 +2273,9 @@ function applyBinaryOp(ast, context) {
2273
2273
  var DICT = {
2274
2274
  get(...args) {
2275
2275
  const { key, defValue } = parseArgs(args, ["key", "defValue"]);
2276
- const self2 = this;
2277
- if (key in self2) {
2278
- return self2[key];
2276
+ const self = this;
2277
+ if (key in self) {
2278
+ return self[key];
2279
2279
  } else if (defValue !== void 0) {
2280
2280
  return defValue;
2281
2281
  }
@@ -5981,25 +5981,30 @@ var fileService = {
5981
5981
  };
5982
5982
 
5983
5983
  // src/services/filesystem-service/json-worker.ts
5984
- self.addEventListener("message", async (ev) => {
5985
- const { id, cmd, payload } = ev.data;
5986
- try {
5987
- if (cmd === "parse") {
5988
- const parsed = JSON.parse(payload);
5989
- self.postMessage({ id, ok: true, result: parsed });
5990
- } else if (cmd === "stringify") {
5991
- const str = JSON.stringify(payload);
5992
- self.postMessage({ id, ok: true, result: str });
5993
- }
5994
- } catch (err) {
5995
- self.postMessage({ id, ok: false, error: err?.message || String(err) });
5996
- }
5997
- });
5984
+ function createWorkerBlob() {
5985
+ const workerCode = `
5986
+ self.addEventListener("message", async (ev) => {
5987
+ const { id, cmd, payload } = ev.data;
5988
+ try {
5989
+ if (cmd === "parse") {
5990
+ const parsed = JSON.parse(payload);
5991
+ self.postMessage({ id, ok: true, result: parsed });
5992
+ } else if (cmd === "stringify") {
5993
+ const str = JSON.stringify(payload);
5994
+ self.postMessage({ id, ok: true, result: str });
5995
+ }
5996
+ } catch (err) {
5997
+ self.postMessage({ id, ok: false, error: err?.message || String(err) });
5998
+ }
5999
+ });
6000
+ `;
6001
+ const blob = new Blob([workerCode], { type: "application/javascript" });
6002
+ return URL.createObjectURL(blob);
6003
+ }
5998
6004
  function spawnParseWorker(raw) {
5999
6005
  return new Promise((resolve, reject) => {
6000
- const worker = new Worker(new URL("./json-worker.ts", import.meta.url), {
6001
- type: "module"
6002
- });
6006
+ const workerUrl = createWorkerBlob();
6007
+ const worker = new Worker(workerUrl);
6003
6008
  const id = Math.random().toString(36).slice(2);
6004
6009
  worker.onmessage = (ev) => {
6005
6010
  const { ok, result, error } = ev.data;
@@ -6008,6 +6013,12 @@ function spawnParseWorker(raw) {
6008
6013
  } else {
6009
6014
  reject(new Error(error));
6010
6015
  }
6016
+ URL.revokeObjectURL(workerUrl);
6017
+ worker.terminate();
6018
+ };
6019
+ worker.onerror = (err) => {
6020
+ reject(err);
6021
+ URL.revokeObjectURL(workerUrl);
6011
6022
  worker.terminate();
6012
6023
  };
6013
6024
  worker.postMessage({ id, cmd: "parse", payload: raw });
@@ -6015,13 +6026,18 @@ function spawnParseWorker(raw) {
6015
6026
  }
6016
6027
  function spawnStringifyWorker(obj) {
6017
6028
  return new Promise((resolve, reject) => {
6018
- const worker = new Worker(new URL("./json-worker.ts", import.meta.url), {
6019
- type: "module"
6020
- });
6029
+ const workerUrl = createWorkerBlob();
6030
+ const worker = new Worker(workerUrl);
6021
6031
  worker.onmessage = (ev) => {
6022
6032
  const { ok, result, error } = ev.data;
6023
6033
  if (ok) resolve(result);
6024
6034
  else reject(new Error(error));
6035
+ URL.revokeObjectURL(workerUrl);
6036
+ worker.terminate();
6037
+ };
6038
+ worker.onerror = (err) => {
6039
+ reject(err);
6040
+ URL.revokeObjectURL(workerUrl);
6025
6041
  worker.terminate();
6026
6042
  };
6027
6043
  worker.postMessage({ cmd: "stringify", payload: obj });
package/dist/services.js CHANGED
@@ -1653,9 +1653,9 @@ function applyBinaryOp(ast, context) {
1653
1653
  var DICT = {
1654
1654
  get(...args) {
1655
1655
  const { key, defValue } = parseArgs(args, ["key", "defValue"]);
1656
- const self2 = this;
1657
- if (key in self2) {
1658
- return self2[key];
1656
+ const self = this;
1657
+ if (key in self) {
1658
+ return self[key];
1659
1659
  } else if (defValue !== void 0) {
1660
1660
  return defValue;
1661
1661
  }
@@ -4004,26 +4004,30 @@ var fileService = {
4004
4004
  };
4005
4005
 
4006
4006
  // src/services/filesystem-service/json-worker.ts
4007
- var import_meta = {};
4008
- self.addEventListener("message", async (ev) => {
4009
- const { id, cmd, payload } = ev.data;
4010
- try {
4011
- if (cmd === "parse") {
4012
- const parsed = JSON.parse(payload);
4013
- self.postMessage({ id, ok: true, result: parsed });
4014
- } else if (cmd === "stringify") {
4015
- const str = JSON.stringify(payload);
4016
- self.postMessage({ id, ok: true, result: str });
4017
- }
4018
- } catch (err) {
4019
- self.postMessage({ id, ok: false, error: err?.message || String(err) });
4020
- }
4021
- });
4007
+ function createWorkerBlob() {
4008
+ const workerCode = `
4009
+ self.addEventListener("message", async (ev) => {
4010
+ const { id, cmd, payload } = ev.data;
4011
+ try {
4012
+ if (cmd === "parse") {
4013
+ const parsed = JSON.parse(payload);
4014
+ self.postMessage({ id, ok: true, result: parsed });
4015
+ } else if (cmd === "stringify") {
4016
+ const str = JSON.stringify(payload);
4017
+ self.postMessage({ id, ok: true, result: str });
4018
+ }
4019
+ } catch (err) {
4020
+ self.postMessage({ id, ok: false, error: err?.message || String(err) });
4021
+ }
4022
+ });
4023
+ `;
4024
+ const blob = new Blob([workerCode], { type: "application/javascript" });
4025
+ return URL.createObjectURL(blob);
4026
+ }
4022
4027
  function spawnParseWorker(raw) {
4023
4028
  return new Promise((resolve, reject) => {
4024
- const worker = new Worker(new URL("./json-worker.ts", import_meta.url), {
4025
- type: "module"
4026
- });
4029
+ const workerUrl = createWorkerBlob();
4030
+ const worker = new Worker(workerUrl);
4027
4031
  const id = Math.random().toString(36).slice(2);
4028
4032
  worker.onmessage = (ev) => {
4029
4033
  const { ok, result, error } = ev.data;
@@ -4032,6 +4036,12 @@ function spawnParseWorker(raw) {
4032
4036
  } else {
4033
4037
  reject(new Error(error));
4034
4038
  }
4039
+ URL.revokeObjectURL(workerUrl);
4040
+ worker.terminate();
4041
+ };
4042
+ worker.onerror = (err) => {
4043
+ reject(err);
4044
+ URL.revokeObjectURL(workerUrl);
4035
4045
  worker.terminate();
4036
4046
  };
4037
4047
  worker.postMessage({ id, cmd: "parse", payload: raw });
@@ -4039,13 +4049,18 @@ function spawnParseWorker(raw) {
4039
4049
  }
4040
4050
  function spawnStringifyWorker(obj) {
4041
4051
  return new Promise((resolve, reject) => {
4042
- const worker = new Worker(new URL("./json-worker.ts", import_meta.url), {
4043
- type: "module"
4044
- });
4052
+ const workerUrl = createWorkerBlob();
4053
+ const worker = new Worker(workerUrl);
4045
4054
  worker.onmessage = (ev) => {
4046
4055
  const { ok, result, error } = ev.data;
4047
4056
  if (ok) resolve(result);
4048
4057
  else reject(new Error(error));
4058
+ URL.revokeObjectURL(workerUrl);
4059
+ worker.terminate();
4060
+ };
4061
+ worker.onerror = (err) => {
4062
+ reject(err);
4063
+ URL.revokeObjectURL(workerUrl);
4049
4064
  worker.terminate();
4050
4065
  };
4051
4066
  worker.postMessage({ cmd: "stringify", payload: obj });
package/dist/services.mjs CHANGED
@@ -1606,9 +1606,9 @@ function applyBinaryOp(ast, context) {
1606
1606
  var DICT = {
1607
1607
  get(...args) {
1608
1608
  const { key, defValue } = parseArgs(args, ["key", "defValue"]);
1609
- const self2 = this;
1610
- if (key in self2) {
1611
- return self2[key];
1609
+ const self = this;
1610
+ if (key in self) {
1611
+ return self[key];
1612
1612
  } else if (defValue !== void 0) {
1613
1613
  return defValue;
1614
1614
  }
@@ -3957,25 +3957,30 @@ var fileService = {
3957
3957
  };
3958
3958
 
3959
3959
  // src/services/filesystem-service/json-worker.ts
3960
- self.addEventListener("message", async (ev) => {
3961
- const { id, cmd, payload } = ev.data;
3962
- try {
3963
- if (cmd === "parse") {
3964
- const parsed = JSON.parse(payload);
3965
- self.postMessage({ id, ok: true, result: parsed });
3966
- } else if (cmd === "stringify") {
3967
- const str = JSON.stringify(payload);
3968
- self.postMessage({ id, ok: true, result: str });
3969
- }
3970
- } catch (err) {
3971
- self.postMessage({ id, ok: false, error: err?.message || String(err) });
3972
- }
3973
- });
3960
+ function createWorkerBlob() {
3961
+ const workerCode = `
3962
+ self.addEventListener("message", async (ev) => {
3963
+ const { id, cmd, payload } = ev.data;
3964
+ try {
3965
+ if (cmd === "parse") {
3966
+ const parsed = JSON.parse(payload);
3967
+ self.postMessage({ id, ok: true, result: parsed });
3968
+ } else if (cmd === "stringify") {
3969
+ const str = JSON.stringify(payload);
3970
+ self.postMessage({ id, ok: true, result: str });
3971
+ }
3972
+ } catch (err) {
3973
+ self.postMessage({ id, ok: false, error: err?.message || String(err) });
3974
+ }
3975
+ });
3976
+ `;
3977
+ const blob = new Blob([workerCode], { type: "application/javascript" });
3978
+ return URL.createObjectURL(blob);
3979
+ }
3974
3980
  function spawnParseWorker(raw) {
3975
3981
  return new Promise((resolve, reject) => {
3976
- const worker = new Worker(new URL("./json-worker.ts", import.meta.url), {
3977
- type: "module"
3978
- });
3982
+ const workerUrl = createWorkerBlob();
3983
+ const worker = new Worker(workerUrl);
3979
3984
  const id = Math.random().toString(36).slice(2);
3980
3985
  worker.onmessage = (ev) => {
3981
3986
  const { ok, result, error } = ev.data;
@@ -3984,6 +3989,12 @@ function spawnParseWorker(raw) {
3984
3989
  } else {
3985
3990
  reject(new Error(error));
3986
3991
  }
3992
+ URL.revokeObjectURL(workerUrl);
3993
+ worker.terminate();
3994
+ };
3995
+ worker.onerror = (err) => {
3996
+ reject(err);
3997
+ URL.revokeObjectURL(workerUrl);
3987
3998
  worker.terminate();
3988
3999
  };
3989
4000
  worker.postMessage({ id, cmd: "parse", payload: raw });
@@ -3991,13 +4002,18 @@ function spawnParseWorker(raw) {
3991
4002
  }
3992
4003
  function spawnStringifyWorker(obj) {
3993
4004
  return new Promise((resolve, reject) => {
3994
- const worker = new Worker(new URL("./json-worker.ts", import.meta.url), {
3995
- type: "module"
3996
- });
4005
+ const workerUrl = createWorkerBlob();
4006
+ const worker = new Worker(workerUrl);
3997
4007
  worker.onmessage = (ev) => {
3998
4008
  const { ok, result, error } = ev.data;
3999
4009
  if (ok) resolve(result);
4000
4010
  else reject(new Error(error));
4011
+ URL.revokeObjectURL(workerUrl);
4012
+ worker.terminate();
4013
+ };
4014
+ worker.onerror = (err) => {
4015
+ reject(err);
4016
+ URL.revokeObjectURL(workerUrl);
4001
4017
  worker.terminate();
4002
4018
  };
4003
4019
  worker.postMessage({ cmd: "stringify", payload: obj });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fctc/interface-logic",
3
- "version": "4.3.1",
3
+ "version": "4.3.2",
4
4
  "types": "dist/index.d.ts",
5
5
  "main": "dist/index.cjs",
6
6
  "module": "dist/index.mjs",