client.cjs 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.WorkerClient = exports.Client = exports.ACTIONS = void 0;
  6. var _class2;
  7. function _classStaticPrivateFieldSpecSet(receiver, classConstructor, descriptor, value) { _classCheckPrivateStaticAccess(receiver, classConstructor); _classCheckPrivateStaticFieldDescriptor(descriptor, "set"); _classApplyDescriptorSet(receiver, descriptor, value); return value; }
  8. function _classStaticPrivateFieldSpecGet(receiver, classConstructor, descriptor) { _classCheckPrivateStaticAccess(receiver, classConstructor); _classCheckPrivateStaticFieldDescriptor(descriptor, "get"); return _classApplyDescriptorGet(receiver, descriptor); }
  9. function _classCheckPrivateStaticFieldDescriptor(descriptor, action) { if (descriptor === undefined) { throw new TypeError("attempted to " + action + " private static field before its declaration"); } }
  10. function _classCheckPrivateStaticAccess(receiver, classConstructor) { if (receiver !== classConstructor) { throw new TypeError("Private static access of wrong provenance"); } }
  11. function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
  12. function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
  13. function _classPrivateFieldGet(receiver, privateMap) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "get"); return _classApplyDescriptorGet(receiver, descriptor); }
  14. function _classApplyDescriptorGet(receiver, descriptor) { if (descriptor.get) { return descriptor.get.call(receiver); } return descriptor.value; }
  15. function _classPrivateFieldSet(receiver, privateMap, value) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "set"); _classApplyDescriptorSet(receiver, descriptor, value); return value; }
  16. function _classExtractFieldDescriptor(receiver, privateMap, action) { if (!privateMap.has(receiver)) { throw new TypeError("attempted to " + action + " private field on non-instance"); } return privateMap.get(receiver); }
  17. function _classApplyDescriptorSet(receiver, descriptor, value) { if (descriptor.set) { descriptor.set.call(receiver, value); } else { if (!descriptor.writable) { throw new TypeError("attempted to set read only private field"); } descriptor.value = value; } }
  18. const path = require("path");
  19. var ACTIONS = exports.ACTIONS = {
  20. GET_VERSION: "GET_VERSION",
  21. GET_TYPES_INFO: "GET_TYPES_INFO",
  22. GET_VISITOR_KEYS: "GET_VISITOR_KEYS",
  23. GET_TOKEN_LABELS: "GET_TOKEN_LABELS",
  24. MAYBE_PARSE: "MAYBE_PARSE",
  25. MAYBE_PARSE_SYNC: "MAYBE_PARSE_SYNC"
  26. };
  27. var _send = new WeakMap();
  28. var _vCache = new WeakMap();
  29. var _tiCache = new WeakMap();
  30. var _vkCache = new WeakMap();
  31. var _tlCache = new WeakMap();
  32. class Client {
  33. constructor(send) {
  34. _classPrivateFieldInitSpec(this, _send, {
  35. writable: true,
  36. value: void 0
  37. });
  38. _classPrivateFieldInitSpec(this, _vCache, {
  39. writable: true,
  40. value: void 0
  41. });
  42. _classPrivateFieldInitSpec(this, _tiCache, {
  43. writable: true,
  44. value: void 0
  45. });
  46. _classPrivateFieldInitSpec(this, _vkCache, {
  47. writable: true,
  48. value: void 0
  49. });
  50. _classPrivateFieldInitSpec(this, _tlCache, {
  51. writable: true,
  52. value: void 0
  53. });
  54. _classPrivateFieldSet(this, _send, send);
  55. }
  56. getVersion() {
  57. var _classPrivateFieldGet2;
  58. return (_classPrivateFieldGet2 = _classPrivateFieldGet(this, _vCache)) != null ? _classPrivateFieldGet2 : _classPrivateFieldSet(this, _vCache, _classPrivateFieldGet(this, _send).call(this, ACTIONS.GET_VERSION, undefined));
  59. }
  60. getTypesInfo() {
  61. var _classPrivateFieldGet3;
  62. return (_classPrivateFieldGet3 = _classPrivateFieldGet(this, _tiCache)) != null ? _classPrivateFieldGet3 : _classPrivateFieldSet(this, _tiCache, _classPrivateFieldGet(this, _send).call(this, ACTIONS.GET_TYPES_INFO, undefined));
  63. }
  64. getVisitorKeys() {
  65. var _classPrivateFieldGet4;
  66. return (_classPrivateFieldGet4 = _classPrivateFieldGet(this, _vkCache)) != null ? _classPrivateFieldGet4 : _classPrivateFieldSet(this, _vkCache, _classPrivateFieldGet(this, _send).call(this, ACTIONS.GET_VISITOR_KEYS, undefined));
  67. }
  68. getTokLabels() {
  69. var _classPrivateFieldGet5;
  70. return (_classPrivateFieldGet5 = _classPrivateFieldGet(this, _tlCache)) != null ? _classPrivateFieldGet5 : _classPrivateFieldSet(this, _tlCache, _classPrivateFieldGet(this, _send).call(this, ACTIONS.GET_TOKEN_LABELS, undefined));
  71. }
  72. maybeParse(code, options) {
  73. return _classPrivateFieldGet(this, _send).call(this, ACTIONS.MAYBE_PARSE, {
  74. code,
  75. options
  76. });
  77. }
  78. }
  79. exports.Client = Client;
  80. var _worker = new WeakMap();
  81. class WorkerClient extends Client {
  82. constructor() {
  83. super((action, payload) => {
  84. const signal = new Int32Array(new SharedArrayBuffer(8));
  85. const subChannel = new (_classStaticPrivateFieldSpecGet(WorkerClient, WorkerClient, _worker_threads).MessageChannel)();
  86. _classPrivateFieldGet(this, _worker).postMessage({
  87. signal,
  88. port: subChannel.port1,
  89. action,
  90. payload
  91. }, [subChannel.port1]);
  92. Atomics.wait(signal, 0, 0);
  93. const {
  94. message
  95. } = _classStaticPrivateFieldSpecGet(WorkerClient, WorkerClient, _worker_threads).receiveMessageOnPort(subChannel.port2);
  96. if (message.error) throw Object.assign(message.error, message.errorData);else return message.result;
  97. });
  98. _classPrivateFieldInitSpec(this, _worker, {
  99. writable: true,
  100. value: new (_classStaticPrivateFieldSpecGet(WorkerClient, WorkerClient, _worker_threads).Worker)(path.resolve(__dirname, "../lib/worker/index.cjs"), {
  101. env: _classStaticPrivateFieldSpecGet(WorkerClient, WorkerClient, _worker_threads).SHARE_ENV
  102. })
  103. });
  104. _classPrivateFieldGet(this, _worker).unref();
  105. }
  106. }
  107. exports.WorkerClient = WorkerClient;
  108. _class2 = WorkerClient;
  109. function _get_worker_threads() {
  110. var _classStaticPrivateFi2;
  111. return (_classStaticPrivateFi2 = _classStaticPrivateFieldSpecGet(_class2, _class2, _worker_threads_cache)) != null ? _classStaticPrivateFi2 : _classStaticPrivateFieldSpecSet(_class2, _class2, _worker_threads_cache, require("worker_threads"));
  112. }
  113. var _worker_threads = {
  114. get: _get_worker_threads,
  115. set: void 0
  116. };
  117. var _worker_threads_cache = {
  118. writable: true,
  119. value: void 0
  120. };
  121. {
  122. var _class3, _handleMessage;
  123. exports.LocalClient = (_class3 = class LocalClient extends Client {
  124. constructor() {
  125. var _classStaticPrivateFi;
  126. (_classStaticPrivateFi = _classStaticPrivateFieldSpecGet(LocalClient, _class3, _handleMessage)) != null ? _classStaticPrivateFi : _classStaticPrivateFieldSpecSet(LocalClient, _class3, _handleMessage, require("./worker/handle-message.cjs"));
  127. super((action, payload) => {
  128. return _classStaticPrivateFieldSpecGet(LocalClient, _class3, _handleMessage).call(LocalClient, action === ACTIONS.MAYBE_PARSE ? ACTIONS.MAYBE_PARSE_SYNC : action, payload);
  129. });
  130. }
  131. }, _handleMessage = {
  132. writable: true,
  133. value: void 0
  134. }, _class3);
  135. }
  136. //# sourceMappingURL=client.cjs.map