@nsshunt/stsutils 1.16.67 → 1.16.69

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/stsutils.mjs CHANGED
@@ -8,7 +8,7 @@ var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot
8
8
  var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
9
9
  var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
10
10
  var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
11
- var _options;
11
+ var _options, _id, _options2, _inflightMessages, _messageHeader, _SendMessage, _ProcessMessage, _ipcMessageManager, _options3, _events, _clients, _pingTimeout, _messagePort, _processRawMessage, _messageSender, _ProcessResponseMessage, _processPayload;
12
12
  import Ajv from "ajv/dist/jtd.js";
13
13
  function getDefaultExportFromCjs(x) {
14
14
  return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, "default") ? x["default"] : x;
@@ -1437,6 +1437,52 @@ chalk.stderr = Chalk({ level: stderrColor ? stderrColor.level : 0 });
1437
1437
  chalk.stderr.supportsColor = stderrColor;
1438
1438
  var source = chalk;
1439
1439
  const chalk$1 = /* @__PURE__ */ getDefaultExportFromCjs(source);
1440
+ var ModelDelimeter = /* @__PURE__ */ ((ModelDelimeter2) => {
1441
+ ModelDelimeter2["ROOT"] = "_";
1442
+ ModelDelimeter2["SEPERATOR"] = "|";
1443
+ ModelDelimeter2["COMPONENT_SEPERATOR"] = "@";
1444
+ ModelDelimeter2["NID_SEPERATOR"] = "^";
1445
+ return ModelDelimeter2;
1446
+ })(ModelDelimeter || {});
1447
+ const CheckValidChar = (checkParams) => {
1448
+ const invalidChars = [
1449
+ "_",
1450
+ "|",
1451
+ "@",
1452
+ "^"
1453
+ /* NID_SEPERATOR */
1454
+ ];
1455
+ checkParams.forEach((param) => {
1456
+ invalidChars.forEach((char) => {
1457
+ if (param[1].includes(char)) {
1458
+ throw new Error(`Invalid character inside [${param[0]}:${param[1]}], no [${char}] allowed`);
1459
+ }
1460
+ });
1461
+ });
1462
+ };
1463
+ const defaultLogger = {
1464
+ debug(message) {
1465
+ console.log(chalk$1.grey(`debug: ${message}`));
1466
+ },
1467
+ error(message) {
1468
+ console.log(chalk$1.red(`error: ${message}`));
1469
+ },
1470
+ http(message) {
1471
+ console.log(chalk$1.cyan(`http: ${message}`));
1472
+ },
1473
+ info(message) {
1474
+ console.log(chalk$1.white(`info: ${message}`));
1475
+ },
1476
+ silly(message) {
1477
+ console.log(chalk$1.yellow(`silly: ${message}`));
1478
+ },
1479
+ verbose(message) {
1480
+ console.log(chalk$1.green(`verbose: ${message}`));
1481
+ },
1482
+ warn(message) {
1483
+ console.log(chalk$1.magenta(`warn: ${message}`));
1484
+ }
1485
+ };
1440
1486
  function GetErrorPayload(errorCode, details = null) {
1441
1487
  return {
1442
1488
  error: errorCode.code,
@@ -1579,55 +1625,475 @@ function compareParameterTypes(source1, source2, authParameterTypes) {
1579
1625
  }
1580
1626
  return errors;
1581
1627
  }
1582
- var ModelDelimeter = /* @__PURE__ */ ((ModelDelimeter2) => {
1583
- ModelDelimeter2["ROOT"] = "_";
1584
- ModelDelimeter2["SEPERATOR"] = "|";
1585
- ModelDelimeter2["COMPONENT_SEPERATOR"] = "@";
1586
- ModelDelimeter2["NID_SEPERATOR"] = "^";
1587
- return ModelDelimeter2;
1588
- })(ModelDelimeter || {});
1589
- const CheckValidChar = (checkParams) => {
1590
- const invalidChars = [
1591
- "_",
1592
- "|",
1593
- "@",
1594
- "^"
1595
- /* NID_SEPERATOR */
1596
- ];
1597
- checkParams.forEach((param) => {
1598
- invalidChars.forEach((char) => {
1599
- if (param[1].includes(char)) {
1600
- throw new Error(`Invalid character inside [${param[0]}:${param[1]}], no [${char}] allowed`);
1628
+ var byteToHex = [];
1629
+ for (var i = 0; i < 256; ++i) {
1630
+ byteToHex.push((i + 256).toString(16).slice(1));
1631
+ }
1632
+ function unsafeStringify(arr, offset = 0) {
1633
+ return (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + "-" + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + "-" + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + "-" + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + "-" + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase();
1634
+ }
1635
+ var getRandomValues;
1636
+ var rnds8 = new Uint8Array(16);
1637
+ function rng() {
1638
+ if (!getRandomValues) {
1639
+ getRandomValues = typeof crypto !== "undefined" && crypto.getRandomValues && crypto.getRandomValues.bind(crypto);
1640
+ if (!getRandomValues) {
1641
+ throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");
1642
+ }
1643
+ }
1644
+ return getRandomValues(rnds8);
1645
+ }
1646
+ var randomUUID = typeof crypto !== "undefined" && crypto.randomUUID && crypto.randomUUID.bind(crypto);
1647
+ const native = {
1648
+ randomUUID
1649
+ };
1650
+ function v4(options, buf, offset) {
1651
+ if (native.randomUUID && !buf && !options) {
1652
+ return native.randomUUID();
1653
+ }
1654
+ options = options || {};
1655
+ var rnds = options.random || (options.rng || rng)();
1656
+ rnds[6] = rnds[6] & 15 | 64;
1657
+ rnds[8] = rnds[8] & 63 | 128;
1658
+ return unsafeStringify(rnds);
1659
+ }
1660
+ class GenericMessageManager {
1661
+ constructor(options) {
1662
+ __privateAdd(this, _id);
1663
+ __privateAdd(this, _options2);
1664
+ __privateAdd(this, _inflightMessages, {});
1665
+ __privateAdd(this, _messageHeader);
1666
+ __publicField(this, "SendMessage", (payload, options) => {
1667
+ return new Promise((resolve, reject) => {
1668
+ __privateGet(this, _SendMessage).call(this, payload, options, (payload2) => {
1669
+ resolve(payload2.responsePayload);
1670
+ }, (payload2) => {
1671
+ reject(payload2.requestPayload);
1672
+ });
1673
+ });
1674
+ });
1675
+ __privateAdd(this, _SendMessage, (payload, options, callBack, errorCallBack) => {
1676
+ const messageId = v4();
1677
+ const requestPayload = {
1678
+ header: __privateGet(this, _messageHeader),
1679
+ messageId,
1680
+ senderId: __privateGet(this, _id),
1681
+ senderRole: __privateGet(this, _options2).role,
1682
+ requestPayload: payload,
1683
+ responsePayload: {},
1684
+ pid: process.pid.toString(),
1685
+ messageType: "REQUEST"
1686
+ };
1687
+ const messageRecord = {
1688
+ messageId,
1689
+ senderId: __privateGet(this, _id),
1690
+ senderRole: __privateGet(this, _options2).role,
1691
+ requestPayload,
1692
+ responses: {},
1693
+ // record
1694
+ startTime: performance.now(),
1695
+ endTime: 0,
1696
+ timeout: setTimeout(() => {
1697
+ setTimeout(() => {
1698
+ delete __privateGet(this, _inflightMessages)[messageRecord.messageId];
1699
+ }, 0).unref();
1700
+ errorCallBack(requestPayload);
1701
+ }, __privateGet(this, _options2).requestResponseMessageTimeout).unref(),
1702
+ // max message timeout allowed
1703
+ callBack,
1704
+ errorCallBack
1705
+ };
1706
+ __privateGet(this, _inflightMessages)[messageRecord.messageId] = messageRecord;
1707
+ __privateGet(this, _options2).messageSender(requestPayload, options);
1708
+ });
1709
+ __privateAdd(this, _ProcessMessage, async (msg, options) => {
1710
+ if (msg.header && msg.header.localeCompare(__privateGet(this, _messageHeader)) === 0) {
1711
+ const message = msg;
1712
+ if (__privateGet(this, _inflightMessages)[message.messageId]) {
1713
+ const inFlightMessageRecord = __privateGet(this, _inflightMessages)[message.messageId];
1714
+ inFlightMessageRecord.responses[message.senderId] = { ...message };
1715
+ let completed = true;
1716
+ if (__privateGet(this, _options2).ProcessResponseMessage) {
1717
+ completed = await __privateGet(this, _options2).ProcessResponseMessage(inFlightMessageRecord.responses, options);
1718
+ if (completed) {
1719
+ inFlightMessageRecord.endTime = performance.now();
1720
+ clearTimeout(inFlightMessageRecord.timeout);
1721
+ inFlightMessageRecord.callBack({
1722
+ responsePayload: Object.values(inFlightMessageRecord.responses).map((r) => r.responsePayload)
1723
+ }, options);
1724
+ delete __privateGet(this, _inflightMessages)[message.messageId];
1725
+ }
1726
+ } else if (completed) {
1727
+ inFlightMessageRecord.endTime = performance.now();
1728
+ clearTimeout(inFlightMessageRecord.timeout);
1729
+ inFlightMessageRecord.callBack(message, options);
1730
+ delete __privateGet(this, _inflightMessages)[message.messageId];
1731
+ } else ;
1732
+ }
1601
1733
  }
1602
1734
  });
1603
- });
1604
- };
1605
- const defaultLogger = {
1606
- debug(message) {
1607
- console.log(chalk$1.grey(`debug: ${message}`));
1608
- },
1609
- error(message) {
1610
- console.log(chalk$1.red(`error: ${message}`));
1611
- },
1612
- http(message) {
1613
- console.log(chalk$1.cyan(`http: ${message}`));
1614
- },
1615
- info(message) {
1616
- console.log(chalk$1.white(`info: ${message}`));
1735
+ __publicField(this, "Start", (options) => {
1736
+ __privateSet(this, _messageHeader, `__STS__${__privateGet(this, _options2).namespace}__${v4()}`);
1737
+ __privateGet(this, _options2).messageReceiverStart(options);
1738
+ });
1739
+ __publicField(this, "Stop", (options) => {
1740
+ __privateGet(this, _options2).messageReceiverStop(options);
1741
+ for (const [, iPCMessageProcessorWorkerRecord] of Object.entries(__privateGet(this, _inflightMessages))) {
1742
+ if (iPCMessageProcessorWorkerRecord.timeout) {
1743
+ clearTimeout(iPCMessageProcessorWorkerRecord.timeout);
1744
+ }
1745
+ }
1746
+ __privateSet(this, _inflightMessages, {});
1747
+ });
1748
+ // Process a message recieved from a worker
1749
+ __publicField(this, "ProcessMessage", async (msg, options) => {
1750
+ if (msg.header) {
1751
+ const checkName = `__STS__${__privateGet(this, _options2).namespace}__`;
1752
+ if (msg.header.includes(checkName)) {
1753
+ const message = msg;
1754
+ if (msg.messageType.localeCompare("REQUEST") === 0) {
1755
+ let processMessage = true;
1756
+ if (message.requestPayload.args && message.requestPayload.args.length > 0 && message.requestPayload.args[0].group) {
1757
+ const group = message.requestPayload.args[0].group;
1758
+ processMessage = __privateGet(this, _options2).groups.indexOf(group) === -1 ? false : true;
1759
+ }
1760
+ if (processMessage) {
1761
+ message.responsePayload = await __privateGet(this, _options2).ProcessRequestMessage(message, options);
1762
+ message.senderId = __privateGet(this, _id);
1763
+ message.messageType = "RESPONSE";
1764
+ __privateGet(this, _options2).messageSender(message, options);
1765
+ }
1766
+ } else {
1767
+ __privateGet(this, _ProcessMessage).call(this, msg, options);
1768
+ }
1769
+ }
1770
+ }
1771
+ });
1772
+ __privateSet(this, _id, v4());
1773
+ __privateSet(this, _options2, options);
1774
+ __privateSet(this, _messageHeader, `__STS__${__privateGet(this, _options2).namespace}__${v4()}`);
1775
+ }
1776
+ get id() {
1777
+ return __privateGet(this, _id);
1778
+ }
1779
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
1780
+ ReceivedMessageFromMaster(msg) {
1781
+ }
1782
+ }
1783
+ _id = new WeakMap();
1784
+ _options2 = new WeakMap();
1785
+ _inflightMessages = new WeakMap();
1786
+ _messageHeader = new WeakMap();
1787
+ _SendMessage = new WeakMap();
1788
+ _ProcessMessage = new WeakMap();
1789
+ var tinyEmitter = { exports: {} };
1790
+ function E() {
1791
+ }
1792
+ E.prototype = {
1793
+ on: function(name, callback, ctx) {
1794
+ var e = this.e || (this.e = {});
1795
+ (e[name] || (e[name] = [])).push({
1796
+ fn: callback,
1797
+ ctx
1798
+ });
1799
+ return this;
1617
1800
  },
1618
- silly(message) {
1619
- console.log(chalk$1.yellow(`silly: ${message}`));
1801
+ once: function(name, callback, ctx) {
1802
+ var self = this;
1803
+ function listener() {
1804
+ self.off(name, listener);
1805
+ callback.apply(ctx, arguments);
1806
+ }
1807
+ listener._ = callback;
1808
+ return this.on(name, listener, ctx);
1620
1809
  },
1621
- verbose(message) {
1622
- console.log(chalk$1.green(`verbose: ${message}`));
1810
+ emit: function(name) {
1811
+ var data = [].slice.call(arguments, 1);
1812
+ var evtArr = ((this.e || (this.e = {}))[name] || []).slice();
1813
+ var i = 0;
1814
+ var len = evtArr.length;
1815
+ for (i; i < len; i++) {
1816
+ evtArr[i].fn.apply(evtArr[i].ctx, data);
1817
+ }
1818
+ return this;
1623
1819
  },
1624
- warn(message) {
1625
- console.log(chalk$1.magenta(`warn: ${message}`));
1820
+ off: function(name, callback) {
1821
+ var e = this.e || (this.e = {});
1822
+ var evts = e[name];
1823
+ var liveEvents = [];
1824
+ if (evts && callback) {
1825
+ for (var i = 0, len = evts.length; i < len; i++) {
1826
+ if (evts[i].fn !== callback && evts[i].fn._ !== callback)
1827
+ liveEvents.push(evts[i]);
1828
+ }
1829
+ }
1830
+ liveEvents.length ? e[name] = liveEvents : delete e[name];
1831
+ return this;
1626
1832
  }
1627
1833
  };
1834
+ tinyEmitter.exports = E;
1835
+ var TinyEmitter = tinyEmitter.exports.TinyEmitter = E;
1836
+ class WebWorkerMessageHandler extends TinyEmitter {
1837
+ // MessagePort;
1838
+ constructor(options) {
1839
+ super();
1840
+ __privateAdd(this, _ipcMessageManager, null);
1841
+ __privateAdd(this, _options3);
1842
+ __privateAdd(this, _events, {});
1843
+ __privateAdd(this, _clients, {});
1844
+ __privateAdd(this, _pingTimeout, null);
1845
+ __privateAdd(this, _messagePort);
1846
+ __privateAdd(this, _processRawMessage, (rawmessage) => {
1847
+ var _a;
1848
+ const message = JSON.parse(rawmessage);
1849
+ (_a = __privateGet(this, _ipcMessageManager)) == null ? void 0 : _a.ProcessMessage(message, {});
1850
+ });
1851
+ __publicField(this, "AddGroup", (group) => {
1852
+ const index = __privateGet(this, _options3).groups.indexOf(group);
1853
+ if (index === -1) {
1854
+ __privateGet(this, _options3).groups.push(group);
1855
+ }
1856
+ });
1857
+ __publicField(this, "RemoveGroup", (group) => {
1858
+ const removeIndex = __privateGet(this, _options3).groups.indexOf(group);
1859
+ if (removeIndex !== -1) {
1860
+ __privateGet(this, _options3).groups.splice(removeIndex, 1);
1861
+ }
1862
+ });
1863
+ __publicField(this, "SetupPrimary", () => {
1864
+ const ipcMessageManagerOptions = {
1865
+ logger: __privateGet(this, _options3).logger,
1866
+ requestResponseMessageTimeout: 5e3,
1867
+ namespace: __privateGet(this, _options3).namespace,
1868
+ role: __privateGet(this, _options3).role,
1869
+ messageSender: __privateGet(this, _messageSender),
1870
+ groups: __privateGet(this, _options3).groups,
1871
+ // This method is used to calculate if all responses have been received from multiple clients (broadcast)
1872
+ // returns true/false.
1873
+ ProcessResponseMessage: __privateGet(this, _ProcessResponseMessage),
1874
+ // This gets called when an event is received from a message receiver (when ProcessMessage is invoked from the receiver event handler)
1875
+ ProcessRequestMessage: __privateGet(this, _processPayload),
1876
+ messageReceiverStart: (options) => {
1877
+ __privateGet(this, _messagePort).on("message", __privateGet(this, _processRawMessage));
1878
+ },
1879
+ messageReceiverStop: (options) => {
1880
+ __privateGet(this, _messagePort).off("message", __privateGet(this, _processRawMessage));
1881
+ }
1882
+ };
1883
+ __privateSet(this, _ipcMessageManager, new GenericMessageManager(ipcMessageManagerOptions));
1884
+ });
1885
+ __privateAdd(this, _messageSender, (payload, options) => {
1886
+ if (payload.messageType.localeCompare("REQUEST") === 0) {
1887
+ __privateGet(this, _messagePort).postMessage(JSON.stringify(payload));
1888
+ } else if (payload.messageType.localeCompare("RESPONSE") === 0) {
1889
+ __privateGet(this, _messagePort).postMessage(JSON.stringify(payload));
1890
+ }
1891
+ });
1892
+ __privateAdd(this, _ProcessResponseMessage, async (responses, options) => {
1893
+ let allFound = false;
1894
+ for (const [responseId, response] of Object.entries(responses)) {
1895
+ if (response.senderRole.localeCompare("CLIENT") === 0) {
1896
+ allFound = true;
1897
+ break;
1898
+ }
1899
+ }
1900
+ if (allFound) {
1901
+ return allFound;
1902
+ }
1903
+ let found = true;
1904
+ let requestGroup = null;
1905
+ for (const [responseId, response] of Object.entries(responses)) {
1906
+ if (response.requestPayload.args.length > 0 && response.requestPayload.args[0].group) {
1907
+ requestGroup = response.requestPayload.args[0].group;
1908
+ break;
1909
+ }
1910
+ }
1911
+ if (requestGroup) {
1912
+ const clientsInGroup = Object.values(__privateGet(this, _clients)).filter((c) => {
1913
+ if (c.groups.indexOf(requestGroup) === -1) {
1914
+ return false;
1915
+ }
1916
+ return true;
1917
+ });
1918
+ found = true;
1919
+ clientsInGroup.forEach((c) => {
1920
+ if (!responses[c.id]) {
1921
+ found = false;
1922
+ }
1923
+ });
1924
+ } else {
1925
+ const clientsInGroup = Object.values(__privateGet(this, _clients));
1926
+ found = true;
1927
+ clientsInGroup.forEach((c) => {
1928
+ if (!responses[c.id]) {
1929
+ found = false;
1930
+ }
1931
+ });
1932
+ }
1933
+ return found;
1934
+ });
1935
+ __privateAdd(this, _processPayload, (payload, options) => {
1936
+ return new Promise((resolve, reject) => {
1937
+ if (payload.messageType.localeCompare("REQUEST") === 0) {
1938
+ if (payload.requestPayload["__eventName"]) {
1939
+ const eventName = payload.requestPayload["__eventName"];
1940
+ if (__privateGet(this, _events)[eventName]) {
1941
+ try {
1942
+ __privateGet(this, _events)[eventName].callback(...payload.requestPayload.args, (responseMessage) => {
1943
+ resolve(responseMessage);
1944
+ });
1945
+ } catch (error) {
1946
+ reject(error);
1947
+ }
1948
+ }
1949
+ }
1950
+ }
1951
+ });
1952
+ });
1953
+ __publicField(this, "Start", () => {
1954
+ var _a;
1955
+ (_a = __privateGet(this, _ipcMessageManager)) == null ? void 0 : _a.Start();
1956
+ });
1957
+ __publicField(this, "Stop", () => {
1958
+ var _a;
1959
+ if (__privateGet(this, _pingTimeout)) {
1960
+ clearTimeout(__privateGet(this, _pingTimeout));
1961
+ __privateSet(this, _pingTimeout, null);
1962
+ }
1963
+ (_a = __privateGet(this, _ipcMessageManager)) == null ? void 0 : _a.Stop();
1964
+ });
1965
+ __publicField(this, "emitex", async (event, ...args) => {
1966
+ return __privateGet(this, _ipcMessageManager).SendMessage({
1967
+ __eventName: event,
1968
+ args
1969
+ });
1970
+ });
1971
+ __privateSet(this, _options3, options);
1972
+ __privateSet(this, _messagePort, options.messagePort);
1973
+ this.SetupPrimary();
1974
+ if (__privateGet(this, _options3).role.localeCompare("CLIENT") === 0) {
1975
+ const ping = () => {
1976
+ __privateSet(this, _pingTimeout, setTimeout(() => {
1977
+ const pingData = {
1978
+ id: __privateGet(this, _ipcMessageManager).id,
1979
+ groups: __privateGet(this, _options3).groups
1980
+ };
1981
+ if (__privateGet(this, _options3).context) {
1982
+ pingData.context = __privateGet(this, _options3).context;
1983
+ }
1984
+ this.emit("ping", pingData, (response) => {
1985
+ });
1986
+ ping();
1987
+ }, 1e3).unref());
1988
+ };
1989
+ ping();
1990
+ } else {
1991
+ this.on("ping", (pingData, callback) => {
1992
+ const { id, groups, context } = pingData;
1993
+ if (__privateGet(this, _clients)[id]) {
1994
+ clearTimeout(__privateGet(this, _clients)[id].timeout);
1995
+ __privateGet(this, _clients)[id].pingCount++;
1996
+ __privateGet(this, _clients)[id].timeout = setTimeout(() => {
1997
+ delete __privateGet(this, _clients)[id];
1998
+ }, 2e3);
1999
+ __privateGet(this, _clients)[id].groups = groups;
2000
+ __privateGet(this, _clients)[id].context = context;
2001
+ } else {
2002
+ __privateGet(this, _clients)[id] = {
2003
+ id,
2004
+ clientConnected: /* @__PURE__ */ new Date(),
2005
+ pingCount: 0,
2006
+ timeout: setTimeout(() => {
2007
+ delete __privateGet(this, _clients)[id];
2008
+ }, 2e3),
2009
+ groups,
2010
+ context
2011
+ };
2012
+ }
2013
+ callback("ok");
2014
+ });
2015
+ }
2016
+ }
2017
+ get clients() {
2018
+ return __privateGet(this, _clients);
2019
+ }
2020
+ get groups() {
2021
+ return __privateGet(this, _options3).groups;
2022
+ }
2023
+ // p.on('fromworker', (arg1: number, arg2: string, callback: any) => {
2024
+ on(event, callback, ctx) {
2025
+ if (__privateGet(this, _events)[event]) {
2026
+ delete __privateGet(this, _events)[event];
2027
+ }
2028
+ const eventObject = {
2029
+ event,
2030
+ callback,
2031
+ ctx
2032
+ };
2033
+ __privateGet(this, _events)[eventObject.event] = eventObject;
2034
+ return this;
2035
+ }
2036
+ off(event, callback) {
2037
+ if (__privateGet(this, _events)[event]) {
2038
+ delete __privateGet(this, _events)[event];
2039
+ }
2040
+ return this;
2041
+ }
2042
+ emit(event, ...args) {
2043
+ (async () => {
2044
+ var _a;
2045
+ try {
2046
+ const retVal = await ((_a = __privateGet(this, _ipcMessageManager)) == null ? void 0 : _a.SendMessage({
2047
+ __eventName: event,
2048
+ args: args.slice(0, args.length - 1)
2049
+ }));
2050
+ args[args.length - 1](retVal);
2051
+ } catch (error) {
2052
+ if (__privateGet(this, _options3).ignoreEvents) {
2053
+ if (__privateGet(this, _options3).ignoreEvents.indexOf(error.__eventName) !== -1) {
2054
+ return;
2055
+ }
2056
+ }
2057
+ __privateGet(this, _options3).logger.error(chalk$1.red(`RedisMessageHandler:emit(): Error: [${JSON.stringify(error)}]`));
2058
+ }
2059
+ })();
2060
+ return this;
2061
+ }
2062
+ emitWithError(event, args, responseCb, errorCb) {
2063
+ (async () => {
2064
+ var _a;
2065
+ try {
2066
+ const retVal = await ((_a = __privateGet(this, _ipcMessageManager)) == null ? void 0 : _a.SendMessage({
2067
+ __eventName: event,
2068
+ args: [args]
2069
+ }));
2070
+ responseCb(retVal);
2071
+ } catch (error) {
2072
+ if (__privateGet(this, _options3).ignoreEvents) {
2073
+ if (__privateGet(this, _options3).ignoreEvents.indexOf(error.__eventName) !== -1) {
2074
+ return;
2075
+ }
2076
+ }
2077
+ errorCb(error);
2078
+ }
2079
+ })();
2080
+ return this;
2081
+ }
2082
+ }
2083
+ _ipcMessageManager = new WeakMap();
2084
+ _options3 = new WeakMap();
2085
+ _events = new WeakMap();
2086
+ _clients = new WeakMap();
2087
+ _pingTimeout = new WeakMap();
2088
+ _messagePort = new WeakMap();
2089
+ _processRawMessage = new WeakMap();
2090
+ _messageSender = new WeakMap();
2091
+ _ProcessResponseMessage = new WeakMap();
2092
+ _processPayload = new WeakMap();
1628
2093
  export {
1629
2094
  AddSchema,
1630
2095
  CheckValidChar,
2096
+ GenericMessageManager,
1631
2097
  GetErrorPayload,
1632
2098
  JestSleep,
1633
2099
  ModelDelimeter,
@@ -1638,6 +2104,7 @@ export {
1638
2104
  STSOptionsBase,
1639
2105
  Sleep,
1640
2106
  Validate,
2107
+ WebWorkerMessageHandler,
1641
2108
  compareParameterTypes,
1642
2109
  defaultLogger
1643
2110
  };