@mnaoumov/typescript-lib 1.0.0 → 1.0.1

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.
Files changed (168) hide show
  1. package/README.md +9 -1
  2. package/dist/lib/cjs/@types/debug.d.cts +1 -1
  3. package/dist/lib/cjs/abort-controller.cjs +1 -59
  4. package/dist/lib/cjs/abort-controller.d.cts +2 -1
  5. package/dist/lib/cjs/aggregate-error.cjs +1 -59
  6. package/dist/lib/cjs/aggregate-error.d.cts +1 -1
  7. package/dist/lib/cjs/array-buffer.cjs +1 -59
  8. package/dist/lib/cjs/array-buffer.d.cts +1 -1
  9. package/dist/lib/cjs/array.cjs +1 -59
  10. package/dist/lib/cjs/array.d.cts +1 -1
  11. package/dist/lib/cjs/async-events.cjs +1 -59
  12. package/dist/lib/cjs/async-events.d.cts +1 -1
  13. package/dist/lib/cjs/async-operation-hook.cjs +1 -59
  14. package/dist/lib/cjs/async-operation-hook.d.cts +1 -1
  15. package/dist/lib/cjs/async.cjs +1 -59
  16. package/dist/lib/cjs/async.d.cts +2 -1
  17. package/dist/lib/cjs/beeper.cjs +1 -59
  18. package/dist/lib/cjs/beeper.d.cts +1 -1
  19. package/dist/lib/cjs/blob.cjs +1 -59
  20. package/dist/lib/cjs/blob.d.cts +2 -1
  21. package/dist/lib/cjs/bytes.cjs +1 -59
  22. package/dist/lib/cjs/bytes.d.cts +1 -1
  23. package/dist/lib/cjs/debug-controller.cjs +1 -59
  24. package/dist/lib/cjs/debug-controller.d.cts +1 -1
  25. package/dist/lib/cjs/debug.cjs +6 -37
  26. package/dist/lib/cjs/debug.d.cts +1 -1
  27. package/dist/lib/cjs/desktop-zip-extractor.cjs +1 -59
  28. package/dist/lib/cjs/desktop-zip-extractor.d.cts +2 -1
  29. package/dist/lib/cjs/disposable.cjs +4 -54
  30. package/dist/lib/cjs/disposable.d.cts +1 -1
  31. package/dist/lib/cjs/enum.cjs +1 -59
  32. package/dist/lib/cjs/enum.d.cts +1 -1
  33. package/dist/lib/cjs/error.cjs +1 -59
  34. package/dist/lib/cjs/error.d.cts +2 -1
  35. package/dist/lib/cjs/function.cjs +1 -59
  36. package/dist/lib/cjs/function.d.cts +1 -1
  37. package/dist/lib/cjs/html-element.cjs +1 -59
  38. package/dist/lib/cjs/html-element.d.cts +2 -1
  39. package/dist/lib/cjs/index.cjs +33 -91
  40. package/dist/lib/cjs/index.d.cts +1 -1
  41. package/dist/lib/cjs/jpeg-metadata.cjs +1 -59
  42. package/dist/lib/cjs/jpeg-metadata.d.cts +1 -1
  43. package/dist/lib/cjs/library-references.d.cts +2 -0
  44. package/dist/lib/cjs/library.cjs +1 -59
  45. package/dist/lib/cjs/object-utils.cjs +1 -59
  46. package/dist/lib/cjs/object-utils.d.cts +1 -1
  47. package/dist/lib/cjs/path.cjs +6 -37
  48. package/dist/lib/cjs/path.d.cts +2 -1
  49. package/dist/lib/cjs/reg-exp.cjs +1 -59
  50. package/dist/lib/cjs/reg-exp.d.cts +1 -1
  51. package/dist/lib/cjs/string.cjs +1 -59
  52. package/dist/lib/cjs/string.d.cts +2 -1
  53. package/dist/lib/cjs/transformers/date-transformer.cjs +1 -59
  54. package/dist/lib/cjs/transformers/date-transformer.d.cts +1 -1
  55. package/dist/lib/cjs/transformers/group-transformer.cjs +1 -59
  56. package/dist/lib/cjs/transformers/group-transformer.d.cts +1 -1
  57. package/dist/lib/cjs/transformers/index.cjs +9 -67
  58. package/dist/lib/cjs/transformers/index.d.cts +1 -1
  59. package/dist/lib/cjs/transformers/map-transformer.cjs +1 -59
  60. package/dist/lib/cjs/transformers/map-transformer.d.cts +1 -1
  61. package/dist/lib/cjs/transformers/set-transformer.cjs +1 -59
  62. package/dist/lib/cjs/transformers/set-transformer.d.cts +1 -1
  63. package/dist/lib/cjs/transformers/skip-private-property-transformer.cjs +1 -59
  64. package/dist/lib/cjs/transformers/skip-private-property-transformer.d.cts +1 -1
  65. package/dist/lib/cjs/transformers/transformer.cjs +1 -59
  66. package/dist/lib/cjs/transformers/transformer.d.cts +1 -1
  67. package/dist/lib/cjs/transformers/two-way-map-transformer.cjs +1 -59
  68. package/dist/lib/cjs/transformers/two-way-map-transformer.d.cts +1 -1
  69. package/dist/lib/cjs/transformers/typed-transformer.cjs +1 -59
  70. package/dist/lib/cjs/transformers/typed-transformer.d.cts +1 -1
  71. package/dist/lib/cjs/two-way-map.cjs +1 -59
  72. package/dist/lib/cjs/two-way-map.d.cts +1 -1
  73. package/dist/lib/cjs/type-guards.cjs +1 -59
  74. package/dist/lib/cjs/type-guards.d.cts +1 -1
  75. package/dist/lib/cjs/type.cjs +1 -59
  76. package/dist/lib/cjs/type.d.cts +1 -1
  77. package/dist/lib/cjs/typescript-lib-state.cjs +1 -59
  78. package/dist/lib/cjs/typescript-lib-state.d.cts +1 -1
  79. package/dist/lib/cjs/url.cjs +1 -59
  80. package/dist/lib/cjs/url.d.cts +1 -1
  81. package/dist/lib/cjs/value-provider.cjs +1 -59
  82. package/dist/lib/cjs/value-provider.d.cts +2 -1
  83. package/dist/lib/cjs/value-wrapper.cjs +1 -59
  84. package/dist/lib/cjs/value-wrapper.d.cts +1 -1
  85. package/dist/lib/esm/@types/debug.d.mts +1 -1
  86. package/dist/lib/esm/abort-controller.d.mts +2 -1
  87. package/dist/lib/esm/abort-controller.mjs +1 -45
  88. package/dist/lib/esm/aggregate-error.d.mts +1 -1
  89. package/dist/lib/esm/aggregate-error.mjs +1 -45
  90. package/dist/lib/esm/array-buffer.d.mts +1 -1
  91. package/dist/lib/esm/array-buffer.mjs +1 -45
  92. package/dist/lib/esm/array.d.mts +1 -1
  93. package/dist/lib/esm/array.mjs +1 -45
  94. package/dist/lib/esm/async-events.d.mts +1 -1
  95. package/dist/lib/esm/async-events.mjs +1 -45
  96. package/dist/lib/esm/async-operation-hook.d.mts +1 -1
  97. package/dist/lib/esm/async-operation-hook.mjs +1 -45
  98. package/dist/lib/esm/async.d.mts +2 -1
  99. package/dist/lib/esm/async.mjs +1 -45
  100. package/dist/lib/esm/beeper.d.mts +1 -1
  101. package/dist/lib/esm/beeper.mjs +1 -45
  102. package/dist/lib/esm/blob.d.mts +2 -1
  103. package/dist/lib/esm/blob.mjs +1 -45
  104. package/dist/lib/esm/bytes.d.mts +1 -1
  105. package/dist/lib/esm/bytes.mjs +1 -45
  106. package/dist/lib/esm/debug-controller.d.mts +1 -1
  107. package/dist/lib/esm/debug-controller.mjs +0 -44
  108. package/dist/lib/esm/debug.d.mts +1 -1
  109. package/dist/lib/esm/debug.mjs +5 -22
  110. package/dist/lib/esm/desktop-zip-extractor.d.mts +2 -1
  111. package/dist/lib/esm/desktop-zip-extractor.mjs +1 -45
  112. package/dist/lib/esm/disposable.d.mts +1 -1
  113. package/dist/lib/esm/disposable.mjs +4 -40
  114. package/dist/lib/esm/enum.d.mts +1 -1
  115. package/dist/lib/esm/enum.mjs +1 -45
  116. package/dist/lib/esm/error.d.mts +2 -1
  117. package/dist/lib/esm/error.mjs +1 -45
  118. package/dist/lib/esm/function.d.mts +1 -1
  119. package/dist/lib/esm/function.mjs +1 -45
  120. package/dist/lib/esm/html-element.d.mts +2 -1
  121. package/dist/lib/esm/html-element.mjs +1 -45
  122. package/dist/lib/esm/index.d.mts +1 -1
  123. package/dist/lib/esm/index.mjs +1 -45
  124. package/dist/lib/esm/jpeg-metadata.d.mts +1 -1
  125. package/dist/lib/esm/jpeg-metadata.mjs +1 -45
  126. package/dist/lib/esm/library-references.d.mts +2 -0
  127. package/dist/lib/esm/library.mjs +1 -45
  128. package/dist/lib/esm/object-utils.d.mts +1 -1
  129. package/dist/lib/esm/object-utils.mjs +1 -45
  130. package/dist/lib/esm/path.d.mts +2 -1
  131. package/dist/lib/esm/path.mjs +5 -22
  132. package/dist/lib/esm/reg-exp.d.mts +1 -1
  133. package/dist/lib/esm/reg-exp.mjs +1 -45
  134. package/dist/lib/esm/string.d.mts +2 -1
  135. package/dist/lib/esm/string.mjs +1 -45
  136. package/dist/lib/esm/transformers/date-transformer.d.mts +1 -1
  137. package/dist/lib/esm/transformers/date-transformer.mjs +1 -45
  138. package/dist/lib/esm/transformers/group-transformer.d.mts +1 -1
  139. package/dist/lib/esm/transformers/group-transformer.mjs +1 -45
  140. package/dist/lib/esm/transformers/index.d.mts +1 -1
  141. package/dist/lib/esm/transformers/index.mjs +1 -45
  142. package/dist/lib/esm/transformers/map-transformer.d.mts +1 -1
  143. package/dist/lib/esm/transformers/map-transformer.mjs +1 -45
  144. package/dist/lib/esm/transformers/set-transformer.d.mts +1 -1
  145. package/dist/lib/esm/transformers/set-transformer.mjs +1 -45
  146. package/dist/lib/esm/transformers/skip-private-property-transformer.d.mts +1 -1
  147. package/dist/lib/esm/transformers/skip-private-property-transformer.mjs +1 -45
  148. package/dist/lib/esm/transformers/transformer.d.mts +1 -1
  149. package/dist/lib/esm/transformers/transformer.mjs +1 -45
  150. package/dist/lib/esm/transformers/two-way-map-transformer.d.mts +1 -1
  151. package/dist/lib/esm/transformers/two-way-map-transformer.mjs +1 -45
  152. package/dist/lib/esm/transformers/typed-transformer.d.mts +1 -1
  153. package/dist/lib/esm/transformers/typed-transformer.mjs +1 -45
  154. package/dist/lib/esm/two-way-map.d.mts +1 -1
  155. package/dist/lib/esm/two-way-map.mjs +1 -45
  156. package/dist/lib/esm/type-guards.d.mts +1 -1
  157. package/dist/lib/esm/type-guards.mjs +1 -45
  158. package/dist/lib/esm/type.d.mts +1 -1
  159. package/dist/lib/esm/type.mjs +1 -45
  160. package/dist/lib/esm/typescript-lib-state.d.mts +1 -1
  161. package/dist/lib/esm/typescript-lib-state.mjs +1 -45
  162. package/dist/lib/esm/url.d.mts +1 -1
  163. package/dist/lib/esm/url.mjs +1 -45
  164. package/dist/lib/esm/value-provider.d.mts +2 -1
  165. package/dist/lib/esm/value-provider.mjs +1 -45
  166. package/dist/lib/esm/value-wrapper.d.mts +1 -1
  167. package/dist/lib/esm/value-wrapper.mjs +1 -45
  168. package/package.json +61 -19
package/README.md CHANGED
@@ -2,7 +2,15 @@
2
2
 
3
3
  Generic TypeScript utilities, usable in any TypeScript project: async helpers, errors, disposables, strings, paths, debug logging, value transformers and DOM helpers.
4
4
 
5
- It is one of the packages built in the [obsidian-dev-utils](https://github.com/mnaoumov/obsidian-dev-utils) repository; see its README for how they fit together. It is not published yet.
5
+ ## Installation
6
+
7
+ ```bash
8
+ npm install @mnaoumov/typescript-lib
9
+ ```
10
+
11
+ ## Where it fits
12
+
13
+ It is one of five packages that replace [`obsidian-dev-utils`](https://github.com/mnaoumov/obsidian-dev-utils): [`@mnaoumov/typescript-lib`](https://github.com/mnaoumov/typescript-lib), [`@mnaoumov/typescript-test-toolkit`](https://github.com/mnaoumov/typescript-test-toolkit), [`@mnaoumov/typescript-dev-toolkit`](https://github.com/mnaoumov/typescript-dev-toolkit), [`@mnaoumov/obsidian-lib`](https://github.com/mnaoumov/obsidian-lib) and [`@mnaoumov/obsidian-dev-toolkit`](https://github.com/mnaoumov/obsidian-dev-toolkit). It depends on none of the other `@mnaoumov` packages. It moved here from that repository with its history.
6
14
 
7
15
  ## License
8
16
 
@@ -1,4 +1,4 @@
1
- /// <reference path="../library.d.cts" />
1
+ /// <reference path="../library-references.d.cts" />
2
2
  /**
3
3
  * @file
4
4
  *
@@ -3,64 +3,6 @@ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
3
  if you want to view the source, please visit the github repository of this plugin
4
4
  */
5
5
 
6
- (function () {
7
- function ensureDisposeSymbols(symbolConstructor = Symbol) {
8
- symbolConstructor.asyncDispose ??= symbolConstructor.for('Symbol.asyncDispose');
9
- symbolConstructor.dispose ??= symbolConstructor.for('Symbol.dispose');
10
- }
11
-
12
- function ensureBrowserProcess() {
13
- const browserProcess = {
14
- browser: true,
15
- cwd() {
16
- return '/';
17
- },
18
- env: {},
19
- platform: 'android'
20
- };
21
-
22
- // eslint-disable-next-line obsidianmd/no-global-this, unicorn/no-unnecessary-global-this -- Must stay `globalThis`-qualified: in the emitted banner a bare `process` is a free identifier, so reading it where the host has none throws a ReferenceError instead of yielding `undefined`. That is the very case this function exists to handle.
23
- const existingProcess = globalThis.process;
24
-
25
- if (!existingProcess) {
26
- // eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
27
- globalThis.process = browserProcess;
28
- return;
29
- }
30
-
31
- if (existingProcess.versions?.node) {
32
- return;
33
- }
34
-
35
- const existingProcessRecord = existingProcess;
36
-
37
- for (const [key, value] of Object.entries(browserProcess)) {
38
- existingProcessRecord[key] ??= value;
39
- }
40
-
41
- existingProcessRecord['browser'] = true;
42
- }
43
-
44
- function keepName($unknown) {
45
- return $unknown;
46
- }
47
-
48
- (function initCjs() {
49
- // eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
50
- const globalThisRecord = globalThis;
51
- ensureDisposeSymbols();
52
- globalThisRecord['__name'] ??= keepName;
53
- globalThisRecord['__extractDefault'] ??= extractDefault;
54
-
55
- ensureBrowserProcess();
56
-
57
- // eslint-disable-next-line unicorn/consistent-function-scoping -- Serialized with initCjs into the banner; at module scope it would be left out of it.
58
- function extractDefault(module) {
59
- return module && module.__esModule && 'default' in module ? module.default : module;
60
- }
61
- })();
62
- })();
63
-
64
6
  "use strict";
65
7
  var __defProp = Object.defineProperty;
66
8
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -199,4 +141,4 @@ function waitForAbort(abortSignal, shouldRejectOnAbort) {
199
141
  onAbort,
200
142
  waitForAbort
201
143
  });
202
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2Fib3J0LWNvbnRyb2xsZXIudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBBYm9ydENvbnRyb2xsZXIgdXRpbGl0aWVzLlxuICovXG5cbmltcG9ydCB7XG4gIENhbGxiYWNrRGlzcG9zYWJsZSxcbiAgQ29tYmluZURpc3Bvc2FibGVcbn0gZnJvbSAnLi9kaXNwb3NhYmxlLnRzJztcbmltcG9ydCB7IG5vb3AgfSBmcm9tICcuL2Z1bmN0aW9uLnRzJztcbmltcG9ydCB7IGdldFR5cGVzY3JpcHRMaWJTdGF0ZSB9IGZyb20gJy4vdHlwZXNjcmlwdC1saWItc3RhdGUudHMnO1xuXG4vKipcbiAqIEEgY29uc3RhbnQgcmVwcmVzZW50aW5nIGFuIGluZmluaXRlIHRpbWVvdXQuXG4gKi9cbmV4cG9ydCBjb25zdCBJTkZJTklURV9USU1FT1VUID0gSW5maW5pdHk7XG5cbi8qKlxuICogQW4ge0BsaW5rIEFib3J0Q29udHJvbGxlcn0gdGhhdCBjYW4gYmUgYWJvcnRlZCBtb3JlIHRoYW4gb25jZS5cbiAqXG4gKiBBIHBsYWluIHtAbGluayBBYm9ydENvbnRyb2xsZXJ9IGlzIHNpbmdsZS11c2U6IG9uY2UgYWJvcnRlZCwgaXRzIHNpZ25hbCBzdGF5cyBhYm9ydGVkIGZvcmV2ZXIsIHNvIGl0XG4gKiBjYW5ub3QgYmFjayBhIGNhbmNlbCBidXR0b24gdGhhdCB0aGUgdXNlciBtYXkgcHJlc3MgbW9yZSB0aGFuIG9uY2UuIFRoaXMgb25lIGFib3J0cyB0aGUgY3VycmVudCBzaWduYWxcbiAqIGFuZCBpbW1lZGlhdGVseSByZXBsYWNlcyBpdCwgc28gdGhlIG5leHQgb3BlcmF0aW9uIHN0YXJ0cyB3aXRoIGEgZnJlc2gsIG5vbi1hYm9ydGVkIHNpZ25hbCB3aGlsZSB0aGUgd29ya1xuICogdGhhdCBjYXB0dXJlZCB0aGUgcHJldmlvdXMgc2lnbmFsIHN0aWxsIG9ic2VydmVzIHRoZSBhYm9ydC5cbiAqXG4gKiBSZWFkIHtAbGluayBSZXNldHRhYmxlQWJvcnRDb250cm9sbGVyLnNpZ25hbH0gYXQgdGhlIHN0YXJ0IG9mIGVhY2ggb3BlcmF0aW9uLiBOZXZlciBjYWNoZSBpdCwgb3IgdGhlXG4gKiBvcGVyYXRpb24gYWZ0ZXIgdGhlIGZpcnN0IGFib3J0IHN0YXJ0cyBhbHJlYWR5IGFib3J0ZWQuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IHJlc2V0dGFibGVBYm9ydENvbnRyb2xsZXIgPSBuZXcgUmVzZXR0YWJsZUFib3J0Q29udHJvbGxlcigpO1xuICpcbiAqIGF3YWl0IGxvb3Aoe1xuICogICBhYm9ydFNpZ25hbDogcmVzZXR0YWJsZUFib3J0Q29udHJvbGxlci5zaWduYWwsXG4gKiAgIGJ1aWxkTm90aWNlTWVzc2FnZTogKGZpbGUpID0+IGBQcm9jZXNzaW5nICR7ZmlsZS5wYXRofWAsXG4gKiAgIGl0ZW1zOiBhcHAudmF1bHQuZ2V0TWFya2Rvd25GaWxlcygpLFxuICogICBwcm9jZXNzSXRlbTogYXN5bmMgKGZpbGUpID0+IHsgYXdhaXQgcHJvY2Vzc0ZpbGUoZmlsZSk7IH1cbiAqIH0pO1xuICpcbiAqIC8vIEZyb20gYSBjYW5jZWwgYnV0dG9uLCBhIGNvbW1hbmQsIG9yIHRoZSBkZXZ0b29scyBjb25zb2xlLlxuICogcmVzZXR0YWJsZUFib3J0Q29udHJvbGxlci5hYm9ydCgpO1xuICogYGBgXG4gKlxuICogQHNlZSB7QGxpbmsgZ2V0U2hhcmVkQWJvcnRDb250cm9sbGVyfSBmb3IgdGhlIGFwcC13aWRlIGluc3RhbmNlLlxuICovXG5leHBvcnQgY2xhc3MgUmVzZXR0YWJsZUFib3J0Q29udHJvbGxlciB7XG4gIC8qKlxuICAgKiBUaGUgY3VycmVudCBhYm9ydCBzaWduYWwuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSB7QGxpbmsgQWJvcnRTaWduYWx9IHRoYXQgYWJvcnRzIG9uIHRoZSBuZXh0IHtAbGluayBSZXNldHRhYmxlQWJvcnRDb250cm9sbGVyLmFib3J0fSBjYWxsLlxuICAgKi9cbiAgcHVibGljIGdldCBzaWduYWwoKTogQWJvcnRTaWduYWwge1xuICAgIHJldHVybiB0aGlzLmFib3J0Q29udHJvbGxlci5zaWduYWw7XG4gIH1cblxuICBwcml2YXRlIGFib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcblxuICAvKipcbiAgICogQWJvcnRzIHRoZSBjdXJyZW50IHNpZ25hbCBhbmQgcmVwbGFjZXMgaXQgd2l0aCBhIGZyZXNoLCBub24tYWJvcnRlZCBvbmUuXG4gICAqXG4gICAqIEBwYXJhbSByZWFzb24gLSBUaGUgcmVhc29uIHRvIGFib3J0IHdpdGguIFdoZW4gb21pdHRlZCwgdGhlIHNpZ25hbCBpcyBhYm9ydGVkIHdpdGggdGhlIG5hdGl2ZVxuICAgKiBgQWJvcnRFcnJvcmAge0BsaW5rIERPTUV4Y2VwdGlvbn0sIGV4YWN0bHkgYXMge0BsaW5rIEFib3J0Q29udHJvbGxlci5hYm9ydH0gZG9lcy5cbiAgICovXG4gIHB1YmxpYyBhYm9ydChyZWFzb24/OiB1bmtub3duKTogdm9pZCB7XG4gICAgdGhpcy5hYm9ydENvbnRyb2xsZXIuYWJvcnQocmVhc29uKTtcbiAgICB0aGlzLmFib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcbiAgfVxufVxuXG4vKipcbiAqIEFuIGFib3J0IHNpZ25hbCB0aGF0IGFib3J0cyB3aGVuIGFueSBvZiB0aGUgZ2l2ZW4gYWJvcnQgc2lnbmFscyBhYm9ydC5cbiAqXG4gKiBAcGFyYW0gbWF5YmVBYm9ydFNpZ25hbHMgLSBUaGUgYWJvcnQgc2lnbmFscyB0byBhYm9ydCB3aGVuIGFueSBvZiB0aGVtIGFib3J0LlxuICogQHJldHVybnMgVGhlIGFib3J0IHNpZ25hbCB0aGF0IGFib3J0cyB3aGVuIGFueSBvZiB0aGUgZ2l2ZW4gYWJvcnQgc2lnbmFscyBhYm9ydC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFib3J0U2lnbmFsQW55KC4uLm1heWJlQWJvcnRTaWduYWxzOiAoQWJvcnRTaWduYWwgfCB1bmRlZmluZWQpW10pOiBBYm9ydFNpZ25hbCB7XG4gIGNvbnN0IGFib3J0U2lnbmFscyA9IG1heWJlQWJvcnRTaWduYWxzLmZpbHRlcigoYWJvcnRTaWduYWwpID0+ICEhYWJvcnRTaWduYWwpO1xuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuL25vLXVuc3VwcG9ydGVkLWZlYXR1cmVzL25vZGUtYnVpbHRpbnMgLS0gYEFib3J0U2lnbmFsLmFueWAgaXMgZmVhdHVyZS1kZXRlY3RlZCBoZXJlIHdpdGggYSBtYW51YWwgZmFsbGJhY2sgYmVsb3csIHNvIGl0IGlzIG5vdCByZXF1aXJlZCBvbiBvbGRlciBPYnNpZGlhbi9FbGVjdHJvbiAoQ2hyb21pdW0pIHZlcnNpb25zIHRoYXQgbGFjayBpdC5cbiAgaWYgKHR5cGVvZiBBYm9ydFNpZ25hbC5hbnkgPT09ICdmdW5jdGlvbicpIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbi9uby11bnN1cHBvcnRlZC1mZWF0dXJlcy9ub2RlLWJ1aWx0aW5zIC0tIGBBYm9ydFNpZ25hbC5hbnlgIGlzIGZlYXR1cmUtZGV0ZWN0ZWQgYnkgdGhlIGd1YXJkIGFib3ZlIHdpdGggYSBtYW51YWwgZmFsbGJhY2sgYmVsb3csIHNvIGl0IGlzIG5vdCByZXF1aXJlZCBvbiBvbGRlciBPYnNpZGlhbi9FbGVjdHJvbiAoQ2hyb21pdW0pIHZlcnNpb25zIHRoYXQgbGFjayBpdC5cbiAgICByZXR1cm4gQWJvcnRTaWduYWwuYW55KGFib3J0U2lnbmFscyk7XG4gIH1cblxuICBpZiAoYWJvcnRTaWduYWxzLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiBhYm9ydFNpZ25hbE5ldmVyKCk7XG4gIH1cblxuICBpZiAoYWJvcnRTaWduYWxzLmxlbmd0aCA9PT0gMSAmJiBhYm9ydFNpZ25hbHNbMF0pIHtcbiAgICByZXR1cm4gYWJvcnRTaWduYWxzWzBdO1xuICB9XG5cbiAgY29uc3QgYWJvcnRDb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuXG4gIGZvciAoY29uc3QgYWJvcnRTaWduYWwgb2YgYWJvcnRTaWduYWxzKSB7XG4gICAgaWYgKGFib3J0U2lnbmFsLmFib3J0ZWQpIHtcbiAgICAgIHJldHVybiBhYm9ydFNpZ25hbDtcbiAgICB9XG4gIH1cblxuICBjb25zdCBhYm9ydEhhbmRsZXJEaXNwb3NhYmxlczogRGlzcG9zYWJsZVtdID0gQXJyYXkuZnJvbShhYm9ydFNpZ25hbHMsIChhYm9ydFNpZ25hbCkgPT4gb25BYm9ydChhYm9ydFNpZ25hbCwgaGFuZGxlQWJvcnQpKTtcblxuICBjb25zdCBjb21iaW5lZEFib3J0SGFuZGxlckRpc3Bvc2FibGUgPSBuZXcgQ29tYmluZURpc3Bvc2FibGUoeyBkaXNwb3NhYmxlczogYWJvcnRIYW5kbGVyRGlzcG9zYWJsZXMgfSk7XG5cbiAgcmV0dXJuIGFib3J0Q29udHJvbGxlci5zaWduYWw7XG5cbiAgZnVuY3Rpb24gaGFuZGxlQWJvcnQoYWJvcnRTaWduYWw6IEFib3J0U2lnbmFsKTogdm9pZCB7XG4gICAgY29tYmluZWRBYm9ydEhhbmRsZXJEaXNwb3NhYmxlLmRpc3Bvc2UoKTtcbiAgICBhYm9ydENvbnRyb2xsZXIuYWJvcnQoYWJvcnRTaWduYWwucmVhc29uKTtcbiAgfVxufVxuXG4vKipcbiAqIEFuIGFib3J0IHNpZ25hbCB0aGF0IG5ldmVyIGFib3J0cy5cbiAqXG4gKiBAcmV0dXJucyBUaGUgYWJvcnQgc2lnbmFsIHRoYXQgbmV2ZXIgYWJvcnRzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYWJvcnRTaWduYWxOZXZlcigpOiBBYm9ydFNpZ25hbCB7XG4gIHJldHVybiBuZXcgQWJvcnRDb250cm9sbGVyKCkuc2lnbmFsO1xufVxuXG4vKipcbiAqIEFuIGFib3J0IHNpZ25hbCB0aGF0IGFib3J0cyBhZnRlciBhIHRpbWVvdXQuXG4gKlxuICogQHBhcmFtIHRpbWVvdXRJbk1pbGxpc2Vjb25kcyAtIFRoZSB0aW1lb3V0IGluIG1pbGxpc2Vjb25kcy5cbiAqIEByZXR1cm5zIFRoZSBhYm9ydCBzaWduYWwgdGhhdCBhYm9ydHMgYWZ0ZXIgYSB0aW1lb3V0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gYWJvcnRTaWduYWxUaW1lb3V0KHRpbWVvdXRJbk1pbGxpc2Vjb25kczogbnVtYmVyKTogQWJvcnRTaWduYWwge1xuICBpZiAodGltZW91dEluTWlsbGlzZWNvbmRzID09PSBJTkZJTklURV9USU1FT1VUKSB7XG4gICAgcmV0dXJuIGFib3J0U2lnbmFsTmV2ZXIoKTtcbiAgfVxuXG4gIC8vIEludGVudGlvbmFsbHkgTk9UIHRoZSBuYXRpdmUgYEFib3J0U2lnbmFsLnRpbWVvdXRgLCB3aG9zZSBpbnRlcm5hbCB0aW1lciBjYW5ub3QgYmUgYWR2YW5jZWQgYnlcbiAgLy8gYHZpLnVzZUZha2VUaW1lcnMoKWAsIHNvIGBzbGVlcGAgKGl0cyBzb2xlIGNvbnN1bWVyKSB3b3VsZCBiZSB1bmNvbnRyb2xsYWJsZSBpbiB0ZXN0cy4gQnVpbGRpbmdcbiAgLy8gYHNsZWVwYCdzIHNpZ25hbCBvZmYgYGdsb2JhbFRoaXMuc2V0VGltZW91dGAga2VlcHMgaXQgZmFrZS10aW1lciBjb250cm9sbGFibGUgKGxpa2VcbiAgLy8gYHNldFRpbWVvdXRBc3luY2ApIGFuZCBhbHNvIHdvcmtzIGluIGEgTm9kZSBlbnZpcm9ubWVudCB3aGVyZSBgd2luZG93YCBpcyB1bmRlZmluZWQsIHNpbmNlXG4gIC8vIGBnbG9iYWxUaGlzYCBleGlzdHMgaW4gTm9kZSB0b28uIENvbnN1bWVyIGludGVncmF0aW9uLXRlc3QgcHJvamVjdHMgcnVuIHZpdGVzdCB1bmRlclxuICAvLyBgZW52aXJvbm1lbnQ6ICdub2RlJ2AsIGluIHdoaWNoIGEgYHdpbmRvd2AtYmFzZWQgcHJpbWl0aXZlIHRocm93cyBhIGBSZWZlcmVuY2VFcnJvcmAuXG4gIC8vIFRoZSBhYm9ydCByZWFzb24gbWlycm9ycyB0aGUgbmF0aXZlIG9uZSAtLSBhIGBET01FeGNlcHRpb25gIG5hbWVkIGBUaW1lb3V0RXJyb3JgIC0tIG1hdGNoaW5nXG4gIC8vIGBBYm9ydFNpZ25hbC50aW1lb3V0YCBmb3IgYHJlYXNvbi5uYW1lYCBjaGVja3MuXG4gIGNvbnN0IGFib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG9ic2lkaWFubWQvbm8tZ2xvYmFsLXRoaXMsIHVuaWNvcm4vbm8tdW5uZWNlc3NhcnktZ2xvYmFsLXRoaXMgLS0gSW50ZW50aW9uYWw6IGBnbG9iYWxUaGlzLnNldFRpbWVvdXRgIChub3QgYHdpbmRvd2ApIHNvIHRoaXMgdGltZW91dCBwcmltaXRpdmUgYWxzbyB3b3JrcyBpbiBhIE5vZGUgZW52aXJvbm1lbnQgd2hlcmUgYHdpbmRvd2AgaXMgdW5kZWZpbmVkOyB0aGUgc3BlY2lmaWMgd2luZG93IGlzIGlycmVsZXZhbnQgZm9yIGEgcGxhaW4gdGltZXIuIFRoZSBleHBsaWNpdCBgZ2xvYmFsVGhpc2AgaXMgYWxzbyB3aGF0IGtlZXBzIHRoZSBzaWJsaW5nIGBvYnNpZGlhbm1kL3ByZWZlci13aW5kb3ctdGltZXJzYCBydWxlIGZyb20gcmV3cml0aW5nIGl0IGJhY2sgdG8gYHdpbmRvd2AuXG4gIGdsb2JhbFRoaXMuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG4vbm8tdW5zdXBwb3J0ZWQtZmVhdHVyZXMvbm9kZS1idWlsdGlucyAtLSBgRE9NRXhjZXB0aW9uYCBpcyBhIERPTSBnbG9iYWwgYWx3YXlzIHByZXNlbnQgaW4gdGhlIE9ic2lkaWFuL0VsZWN0cm9uIChDaHJvbWl1bSkgcnVudGltZSB0aGlzIGNvZGUgdGFyZ2V0cywgYW5kIGlzIGFsc28gYSBOb2RlIGdsb2JhbCBmcm9tIE5vZGUgMTcgb253YXJkLlxuICAgIGFib3J0Q29udHJvbGxlci5hYm9ydChuZXcgRE9NRXhjZXB0aW9uKGBUaW1lZCBvdXQgaW4gJHtTdHJpbmcodGltZW91dEluTWlsbGlzZWNvbmRzKX0gbWlsbGlzZWNvbmRzYCwgJ1RpbWVvdXRFcnJvcicpKTtcbiAgfSwgdGltZW91dEluTWlsbGlzZWNvbmRzKTtcbiAgcmV0dXJuIGFib3J0Q29udHJvbGxlci5zaWduYWw7XG59XG5cbi8qKlxuICogVGhlIGFwcC13aWRlIHNoYXJlZCB7QGxpbmsgUmVzZXR0YWJsZUFib3J0Q29udHJvbGxlcn0uXG4gKlxuICogRXZlcnkgcGx1Z2luIGJ1aWx0IG9uIHRoaXMgbGlicmFyeSBzaGFyZXMgb25lIGluc3RhbmNlLCBzbyBhIHNpbmdsZSB7QGxpbmsgUmVzZXR0YWJsZUFib3J0Q29udHJvbGxlci5hYm9ydH1cbiAqIGNhbGwgY2FuY2VscyB3aGF0ZXZlciBsb25nLXJ1bm5pbmcgb3BlcmF0aW9uIGlzIGluIGZsaWdodCwgd2hpY2hldmVyIHBsdWdpbiBzdGFydGVkIGl0LiBBIHBsdWdpbiB0aGF0IG5lZWRzXG4gKiBhIGNhbmNlbCBidXR0b24gb2YgaXRzIG93biBzY29wZSBjb25zdHJ1Y3RzIGl0cyBvd24ge0BsaW5rIFJlc2V0dGFibGVBYm9ydENvbnRyb2xsZXJ9IGluc3RlYWQuXG4gKlxuICogSXQgbGl2ZXMgaW4gdGhlIHNoYXJlZCBzdGF0ZSwgc28gaXQgaXMgcmVhY2hhYmxlIGZyb20gdGhlIGRldnRvb2xzIGNvbnNvbGU6XG4gKlxuICogYGBgamF2YXNjcmlwdFxuICogZ2xvYmFsVGhpc1tTeW1ib2wuZm9yKCdAbW5hb3Vtb3YvdHlwZXNjcmlwdC1saWIvc3RhdGUnKV0udmFsdWVzLnNoYXJlZEFib3J0Q29udHJvbGxlci52YWx1ZS5hYm9ydCgpO1xuICogYGBgXG4gKlxuICogSW4gYW4gT2JzaWRpYW4gcGx1Z2luIHRoZSBzYW1lIGluc3RhbmNlIGlzIGFsc28gcmVhY2hhYmxlIGFzIGBfX29ic2lkaWFuRGV2VXRpbHMuc2hhcmVkQWJvcnRDb250cm9sbGVyLnZhbHVlYC5cbiAqXG4gKiBAcmV0dXJucyBUaGUgc2hhcmVkIHtAbGluayBSZXNldHRhYmxlQWJvcnRDb250cm9sbGVyfS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFNoYXJlZEFib3J0Q29udHJvbGxlcigpOiBSZXNldHRhYmxlQWJvcnRDb250cm9sbGVyIHtcbiAgcmV0dXJuIGdldFR5cGVzY3JpcHRMaWJTdGF0ZSgnc2hhcmVkQWJvcnRDb250cm9sbGVyJywgbmV3IFJlc2V0dGFibGVBYm9ydENvbnRyb2xsZXIoKSkudmFsdWU7XG59XG5cbi8qKlxuICogVGhlIHNpZ25hbCBvZiB0aGUgYXBwLXdpZGUgc2hhcmVkIHtAbGluayBSZXNldHRhYmxlQWJvcnRDb250cm9sbGVyfS5cbiAqXG4gKiBDYWxsIGl0IGF0IHRoZSBzdGFydCBvZiBlYWNoIG9wZXJhdGlvbi4gTmV2ZXIgY2FjaGUgaXQsIG9yIHRoZSBvcGVyYXRpb24gYWZ0ZXIgdGhlIGZpcnN0IGFib3J0IHN0YXJ0c1xuICogYWxyZWFkeSBhYm9ydGVkLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBhd2FpdCBsb29wKHtcbiAqICAgYWJvcnRTaWduYWw6IGdldFNoYXJlZEFib3J0U2lnbmFsKCksXG4gKiAgIGJ1aWxkTm90aWNlTWVzc2FnZTogKGZpbGUpID0+IGBQcm9jZXNzaW5nICR7ZmlsZS5wYXRofWAsXG4gKiAgIGl0ZW1zOiBhcHAudmF1bHQuZ2V0TWFya2Rvd25GaWxlcygpLFxuICogICBwcm9jZXNzSXRlbTogYXN5bmMgKGZpbGUpID0+IHsgYXdhaXQgcHJvY2Vzc0ZpbGUoZmlsZSk7IH1cbiAqIH0pO1xuICogYGBgXG4gKlxuICogQHJldHVybnMgVGhlIHtAbGluayBBYm9ydFNpZ25hbH0gb2YgdGhlIHNoYXJlZCB7QGxpbmsgUmVzZXR0YWJsZUFib3J0Q29udHJvbGxlcn0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRTaGFyZWRBYm9ydFNpZ25hbCgpOiBBYm9ydFNpZ25hbCB7XG4gIHJldHVybiBnZXRTaGFyZWRBYm9ydENvbnRyb2xsZXIoKS5zaWduYWw7XG59XG5cbi8qKlxuICogQWRkcyBhbiBhYm9ydCBsaXN0ZW5lciB0byBhbiBhYm9ydCBzaWduYWwgYW5kIGNhbGxzIHRoZSBjYWxsYmFjayBpZiB0aGUgYWJvcnQgc2lnbmFsIGlzIGFscmVhZHkgYWJvcnRlZC5cbiAqXG4gKiBAcGFyYW0gYWJvcnRTaWduYWwgLSBUaGUgYWJvcnQgc2lnbmFsIHRvIGFkZCB0aGUgbGlzdGVuZXIgdG8uXG4gKiBAcGFyYW0gY2FsbGJhY2sgLSBUaGUgY2FsbGJhY2sgdG8gY2FsbCB3aGVuIHRoZSBhYm9ydCBzaWduYWwgYWJvcnRzLlxuICogQHJldHVybnMgQSB7QGxpbmsgRGlzcG9zYWJsZX0gdGhhdCByZW1vdmVzIHRoZSBhYm9ydCBsaXN0ZW5lciB3aGVuIGRpc3Bvc2VkLCBmb3IgdXNlIHdpdGggYHVzaW5nYC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG9uQWJvcnQoYWJvcnRTaWduYWw6IEFib3J0U2lnbmFsLCBjYWxsYmFjazogKGFib3J0U2lnbmFsOiBBYm9ydFNpZ25hbCkgPT4gdm9pZCk6IERpc3Bvc2FibGUge1xuICBpZiAoYWJvcnRTaWduYWwuYWJvcnRlZCkge1xuICAgIGNhbGxiYWNrKGFib3J0U2lnbmFsKTtcbiAgICByZXR1cm4gbmV3IENhbGxiYWNrRGlzcG9zYWJsZSh7IGNhbGxiYWNrOiBub29wIH0pO1xuICB9XG5cbiAgYWJvcnRTaWduYWwuYWRkRXZlbnRMaXN0ZW5lcignYWJvcnQnLCB3cmFwcGVkQ2FsbGJhY2ssIHsgb25jZTogdHJ1ZSB9KTtcbiAgcmV0dXJuIG5ldyBDYWxsYmFja0Rpc3Bvc2FibGUoe1xuICAgIGNhbGxiYWNrOiAoKTogdm9pZCA9PiB7XG4gICAgICBhYm9ydFNpZ25hbC5yZW1vdmVFdmVudExpc3RlbmVyKCdhYm9ydCcsIHdyYXBwZWRDYWxsYmFjayk7XG4gICAgfVxuICB9KTtcblxuICBmdW5jdGlvbiB3cmFwcGVkQ2FsbGJhY2soJGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIGNhbGxiYWNrKCRldmVudC50YXJnZXQgYXMgQWJvcnRTaWduYWwpO1xuICB9XG59XG5cbi8qKlxuICogV2FpdHMgZm9yIGFuIGFib3J0IHNpZ25hbCB0byBhYm9ydCBhbmQgcmVzb2x2ZXMgd2l0aCBpdHMgcmVhc29uLlxuICpcbiAqIEB0eXBlUGFyYW0gVCAtIEV4cGVjdGVkIHR5cGUgb2YgYGFib3J0U2lnbmFsLnJlYXNvbmAuXG4gKiBAcGFyYW0gYWJvcnRTaWduYWwgLSBUaGUgYWJvcnQgc2lnbmFsIHRvIHdhaXQgZm9yLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB3aXRoIHRoZSByZWFzb24gb2YgdGhlIGFib3J0IHNpZ25hbC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHdhaXRGb3JBYm9ydDxUID0gdW5rbm93bj4oYWJvcnRTaWduYWw6IEFib3J0U2lnbmFsKTogUHJvbWlzZTxUPjtcbi8qKlxuICogV2FpdHMgZm9yIGFuIGFib3J0IHNpZ25hbCB0byBhYm9ydCBhbmQgcmVqZWN0cyB3aXRoIGl0cyByZWFzb24uXG4gKlxuICogQHBhcmFtIGFib3J0U2lnbmFsIC0gVGhlIGFib3J0IHNpZ25hbCB0byB3YWl0IGZvci5cbiAqIEBwYXJhbSBzaG91bGRSZWplY3RPbkFib3J0IC0gV2hldGhlciB0byByZWplY3QgdGhlIHByb21pc2UgaWYgdGhlIGFib3J0IHNpZ25hbCBpcyBhYm9ydGVkLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZWplY3RzIHdpdGggdGhlIHJlYXNvbiBvZiB0aGUgYWJvcnQgc2lnbmFsLlxuICovXG5leHBvcnQgZnVuY3Rpb24gd2FpdEZvckFib3J0KGFib3J0U2lnbmFsOiBBYm9ydFNpZ25hbCwgc2hvdWxkUmVqZWN0T25BYm9ydDogdHJ1ZSk6IFByb21pc2U8bmV2ZXI+O1xuLyoqXG4gKiBXYWl0cyBmb3IgYW4gYWJvcnQgc2lnbmFsIHRvIGFib3J0IGFuZCByZXNvbHZlcyB3aXRoIGl0cyByZWFzb24uXG4gKlxuICogQHR5cGVQYXJhbSBUIC0gRXhwZWN0ZWQgdHlwZSBvZiBgYWJvcnRTaWduYWwucmVhc29uYC5cbiAqIEBwYXJhbSBhYm9ydFNpZ25hbCAtIFRoZSBhYm9ydCBzaWduYWwgdG8gd2FpdCBmb3IuXG4gKiBAcGFyYW0gc2hvdWxkUmVqZWN0T25BYm9ydCAtIFdoZXRoZXIgdG8gcmVqZWN0IHRoZSBwcm9taXNlIGlmIHRoZSBhYm9ydCBzaWduYWwgaXMgYWJvcnRlZC5cbiAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHRoYXQgcmVzb2x2ZXMgd2l0aCB0aGUgcmVhc29uIG9mIHRoZSBhYm9ydCBzaWduYWwuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB3YWl0Rm9yQWJvcnQ8VCA9IHVua25vd24+KGFib3J0U2lnbmFsOiBBYm9ydFNpZ25hbCwgc2hvdWxkUmVqZWN0T25BYm9ydD86IGJvb2xlYW4pOiBQcm9taXNlPFQ+IHtcbiAgcmV0dXJuIG5ldyBQcm9taXNlPFQ+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICBvbkFib3J0KGFib3J0U2lnbmFsLCAoKSA9PiB7XG4gICAgICBpZiAoc2hvdWxkUmVqZWN0T25BYm9ydCkge1xuICAgICAgICByZWplY3QoYWJvcnRTaWduYWwucmVhc29uIGFzIEVycm9yKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJlc29sdmUoYWJvcnRTaWduYWwucmVhc29uIGFzIFQpO1xuICAgICAgfVxuICAgIH0pO1xuICB9KTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUEsd0JBR087QUFDUCxzQkFBcUI7QUFDckIsa0NBQXNDO0FBSy9CLE1BQU0sbUJBQW1CO0FBOEJ6QixNQUFNLDBCQUEwQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU1yQyxJQUFXLFNBQXNCO0FBQy9CLFdBQU8sS0FBSyxnQkFBZ0I7QUFBQSxFQUM5QjtBQUFBLEVBRVEsa0JBQWtCLElBQUksZ0JBQWdCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRdkMsTUFBTSxRQUF3QjtBQUNuQyxTQUFLLGdCQUFnQixNQUFNLE1BQU07QUFDakMsU0FBSyxrQkFBa0IsSUFBSSxnQkFBZ0I7QUFBQSxFQUM3QztBQUNGO0FBUU8sU0FBUyxrQkFBa0IsbUJBQTZEO0FBQzdGLFFBQU0sZUFBZSxrQkFBa0IsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUMsV0FBVztBQUc1RSxNQUFJLE9BQU8sWUFBWSxRQUFRLFlBQVk7QUFFekMsV0FBTyxZQUFZLElBQUksWUFBWTtBQUFBLEVBQ3JDO0FBRUEsTUFBSSxhQUFhLFdBQVcsR0FBRztBQUM3QixXQUFPLGlCQUFpQjtBQUFBLEVBQzFCO0FBRUEsTUFBSSxhQUFhLFdBQVcsS0FBSyxhQUFhLENBQUMsR0FBRztBQUNoRCxXQUFPLGFBQWEsQ0FBQztBQUFBLEVBQ3ZCO0FBRUEsUUFBTSxrQkFBa0IsSUFBSSxnQkFBZ0I7QUFFNUMsYUFBVyxlQUFlLGNBQWM7QUFDdEMsUUFBSSxZQUFZLFNBQVM7QUFDdkIsYUFBTztBQUFBLElBQ1Q7QUFBQSxFQUNGO0FBRUEsUUFBTSwwQkFBd0MsTUFBTSxLQUFLLGNBQWMsQ0FBQyxnQkFBZ0IsUUFBUSxhQUFhLFdBQVcsQ0FBQztBQUV6SCxRQUFNLGlDQUFpQyxJQUFJLG9DQUFrQixFQUFFLGFBQWEsd0JBQXdCLENBQUM7QUFFckcsU0FBTyxnQkFBZ0I7QUFFdkIsV0FBUyxZQUFZLGFBQWdDO0FBQ25ELG1DQUErQixRQUFRO0FBQ3ZDLG9CQUFnQixNQUFNLFlBQVksTUFBTTtBQUFBLEVBQzFDO0FBQ0Y7QUFPTyxTQUFTLG1CQUFnQztBQUM5QyxTQUFPLElBQUksZ0JBQWdCLEVBQUU7QUFDL0I7QUFRTyxTQUFTLG1CQUFtQix1QkFBNEM7QUFDN0UsTUFBSSwwQkFBMEIsa0JBQWtCO0FBQzlDLFdBQU8saUJBQWlCO0FBQUEsRUFDMUI7QUFVQSxRQUFNLGtCQUFrQixJQUFJLGdCQUFnQjtBQUU1QyxhQUFXLFdBQVcsTUFBTTtBQUUxQixvQkFBZ0IsTUFBTSxJQUFJLGFBQWEsZ0JBQWdCLE9BQU8scUJBQXFCLENBQUMsaUJBQWlCLGNBQWMsQ0FBQztBQUFBLEVBQ3RILEdBQUcscUJBQXFCO0FBQ3hCLFNBQU8sZ0JBQWdCO0FBQ3pCO0FBbUJPLFNBQVMsMkJBQXNEO0FBQ3BFLGFBQU8sbURBQXNCLHlCQUF5QixJQUFJLDBCQUEwQixDQUFDLEVBQUU7QUFDekY7QUFvQk8sU0FBUyx1QkFBb0M7QUFDbEQsU0FBTyx5QkFBeUIsRUFBRTtBQUNwQztBQVNPLFNBQVMsUUFBUSxhQUEwQixVQUEwRDtBQUMxRyxNQUFJLFlBQVksU0FBUztBQUN2QixhQUFTLFdBQVc7QUFDcEIsV0FBTyxJQUFJLHFDQUFtQixFQUFFLFVBQVUscUJBQUssQ0FBQztBQUFBLEVBQ2xEO0FBRUEsY0FBWSxpQkFBaUIsU0FBUyxpQkFBaUIsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUNyRSxTQUFPLElBQUkscUNBQW1CO0FBQUEsSUFDNUIsVUFBVSxNQUFZO0FBQ3BCLGtCQUFZLG9CQUFvQixTQUFTLGVBQWU7QUFBQSxJQUMxRDtBQUFBLEVBQ0YsQ0FBQztBQUVELFdBQVMsZ0JBQWdCLFFBQXFCO0FBQzVDLGFBQVMsT0FBTyxNQUFxQjtBQUFBLEVBQ3ZDO0FBQ0Y7QUEwQk8sU0FBUyxhQUEwQixhQUEwQixxQkFBMkM7QUFDN0csU0FBTyxJQUFJLFFBQVcsQ0FBQyxTQUFTLFdBQVc7QUFDekMsWUFBUSxhQUFhLE1BQU07QUFDekIsVUFBSSxxQkFBcUI7QUFDdkIsZUFBTyxZQUFZLE1BQWU7QUFBQSxNQUNwQyxPQUFPO0FBQ0wsZ0JBQVEsWUFBWSxNQUFXO0FBQUEsTUFDakM7QUFBQSxJQUNGLENBQUM7QUFBQSxFQUNILENBQUM7QUFDSDsiLAogICJuYW1lcyI6IFtdCn0K
144
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2Fib3J0LWNvbnRyb2xsZXIudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBBYm9ydENvbnRyb2xsZXIgdXRpbGl0aWVzLlxuICovXG5cbmltcG9ydCB7XG4gIENhbGxiYWNrRGlzcG9zYWJsZSxcbiAgQ29tYmluZURpc3Bvc2FibGVcbn0gZnJvbSAnLi9kaXNwb3NhYmxlLnRzJztcbmltcG9ydCB7IG5vb3AgfSBmcm9tICcuL2Z1bmN0aW9uLnRzJztcbmltcG9ydCB7IGdldFR5cGVzY3JpcHRMaWJTdGF0ZSB9IGZyb20gJy4vdHlwZXNjcmlwdC1saWItc3RhdGUudHMnO1xuXG4vKipcbiAqIEEgY29uc3RhbnQgcmVwcmVzZW50aW5nIGFuIGluZmluaXRlIHRpbWVvdXQuXG4gKi9cbmV4cG9ydCBjb25zdCBJTkZJTklURV9USU1FT1VUID0gSW5maW5pdHk7XG5cbi8qKlxuICogQW4ge0BsaW5rIEFib3J0Q29udHJvbGxlcn0gdGhhdCBjYW4gYmUgYWJvcnRlZCBtb3JlIHRoYW4gb25jZS5cbiAqXG4gKiBBIHBsYWluIHtAbGluayBBYm9ydENvbnRyb2xsZXJ9IGlzIHNpbmdsZS11c2U6IG9uY2UgYWJvcnRlZCwgaXRzIHNpZ25hbCBzdGF5cyBhYm9ydGVkIGZvcmV2ZXIsIHNvIGl0XG4gKiBjYW5ub3QgYmFjayBhIGNhbmNlbCBidXR0b24gdGhhdCB0aGUgdXNlciBtYXkgcHJlc3MgbW9yZSB0aGFuIG9uY2UuIFRoaXMgb25lIGFib3J0cyB0aGUgY3VycmVudCBzaWduYWxcbiAqIGFuZCBpbW1lZGlhdGVseSByZXBsYWNlcyBpdCwgc28gdGhlIG5leHQgb3BlcmF0aW9uIHN0YXJ0cyB3aXRoIGEgZnJlc2gsIG5vbi1hYm9ydGVkIHNpZ25hbCB3aGlsZSB0aGUgd29ya1xuICogdGhhdCBjYXB0dXJlZCB0aGUgcHJldmlvdXMgc2lnbmFsIHN0aWxsIG9ic2VydmVzIHRoZSBhYm9ydC5cbiAqXG4gKiBSZWFkIHtAbGluayBSZXNldHRhYmxlQWJvcnRDb250cm9sbGVyLnNpZ25hbH0gYXQgdGhlIHN0YXJ0IG9mIGVhY2ggb3BlcmF0aW9uLiBOZXZlciBjYWNoZSBpdCwgb3IgdGhlXG4gKiBvcGVyYXRpb24gYWZ0ZXIgdGhlIGZpcnN0IGFib3J0IHN0YXJ0cyBhbHJlYWR5IGFib3J0ZWQuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IHJlc2V0dGFibGVBYm9ydENvbnRyb2xsZXIgPSBuZXcgUmVzZXR0YWJsZUFib3J0Q29udHJvbGxlcigpO1xuICpcbiAqIGF3YWl0IGxvb3Aoe1xuICogICBhYm9ydFNpZ25hbDogcmVzZXR0YWJsZUFib3J0Q29udHJvbGxlci5zaWduYWwsXG4gKiAgIGJ1aWxkTm90aWNlTWVzc2FnZTogKGZpbGUpID0+IGBQcm9jZXNzaW5nICR7ZmlsZS5wYXRofWAsXG4gKiAgIGl0ZW1zOiBhcHAudmF1bHQuZ2V0TWFya2Rvd25GaWxlcygpLFxuICogICBwcm9jZXNzSXRlbTogYXN5bmMgKGZpbGUpID0+IHsgYXdhaXQgcHJvY2Vzc0ZpbGUoZmlsZSk7IH1cbiAqIH0pO1xuICpcbiAqIC8vIEZyb20gYSBjYW5jZWwgYnV0dG9uLCBhIGNvbW1hbmQsIG9yIHRoZSBkZXZ0b29scyBjb25zb2xlLlxuICogcmVzZXR0YWJsZUFib3J0Q29udHJvbGxlci5hYm9ydCgpO1xuICogYGBgXG4gKlxuICogQHNlZSB7QGxpbmsgZ2V0U2hhcmVkQWJvcnRDb250cm9sbGVyfSBmb3IgdGhlIGFwcC13aWRlIGluc3RhbmNlLlxuICovXG5leHBvcnQgY2xhc3MgUmVzZXR0YWJsZUFib3J0Q29udHJvbGxlciB7XG4gIC8qKlxuICAgKiBUaGUgY3VycmVudCBhYm9ydCBzaWduYWwuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSB7QGxpbmsgQWJvcnRTaWduYWx9IHRoYXQgYWJvcnRzIG9uIHRoZSBuZXh0IHtAbGluayBSZXNldHRhYmxlQWJvcnRDb250cm9sbGVyLmFib3J0fSBjYWxsLlxuICAgKi9cbiAgcHVibGljIGdldCBzaWduYWwoKTogQWJvcnRTaWduYWwge1xuICAgIHJldHVybiB0aGlzLmFib3J0Q29udHJvbGxlci5zaWduYWw7XG4gIH1cblxuICBwcml2YXRlIGFib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcblxuICAvKipcbiAgICogQWJvcnRzIHRoZSBjdXJyZW50IHNpZ25hbCBhbmQgcmVwbGFjZXMgaXQgd2l0aCBhIGZyZXNoLCBub24tYWJvcnRlZCBvbmUuXG4gICAqXG4gICAqIEBwYXJhbSByZWFzb24gLSBUaGUgcmVhc29uIHRvIGFib3J0IHdpdGguIFdoZW4gb21pdHRlZCwgdGhlIHNpZ25hbCBpcyBhYm9ydGVkIHdpdGggdGhlIG5hdGl2ZVxuICAgKiBgQWJvcnRFcnJvcmAge0BsaW5rIERPTUV4Y2VwdGlvbn0sIGV4YWN0bHkgYXMge0BsaW5rIEFib3J0Q29udHJvbGxlci5hYm9ydH0gZG9lcy5cbiAgICovXG4gIHB1YmxpYyBhYm9ydChyZWFzb24/OiB1bmtub3duKTogdm9pZCB7XG4gICAgdGhpcy5hYm9ydENvbnRyb2xsZXIuYWJvcnQocmVhc29uKTtcbiAgICB0aGlzLmFib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcbiAgfVxufVxuXG4vKipcbiAqIEFuIGFib3J0IHNpZ25hbCB0aGF0IGFib3J0cyB3aGVuIGFueSBvZiB0aGUgZ2l2ZW4gYWJvcnQgc2lnbmFscyBhYm9ydC5cbiAqXG4gKiBAcGFyYW0gbWF5YmVBYm9ydFNpZ25hbHMgLSBUaGUgYWJvcnQgc2lnbmFscyB0byBhYm9ydCB3aGVuIGFueSBvZiB0aGVtIGFib3J0LlxuICogQHJldHVybnMgVGhlIGFib3J0IHNpZ25hbCB0aGF0IGFib3J0cyB3aGVuIGFueSBvZiB0aGUgZ2l2ZW4gYWJvcnQgc2lnbmFscyBhYm9ydC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFib3J0U2lnbmFsQW55KC4uLm1heWJlQWJvcnRTaWduYWxzOiAoQWJvcnRTaWduYWwgfCB1bmRlZmluZWQpW10pOiBBYm9ydFNpZ25hbCB7XG4gIGNvbnN0IGFib3J0U2lnbmFscyA9IG1heWJlQWJvcnRTaWduYWxzLmZpbHRlcigoYWJvcnRTaWduYWwpID0+ICEhYWJvcnRTaWduYWwpO1xuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuL25vLXVuc3VwcG9ydGVkLWZlYXR1cmVzL25vZGUtYnVpbHRpbnMgLS0gYEFib3J0U2lnbmFsLmFueWAgaXMgZmVhdHVyZS1kZXRlY3RlZCBoZXJlIHdpdGggYSBtYW51YWwgZmFsbGJhY2sgYmVsb3csIHNvIGl0IGlzIG5vdCByZXF1aXJlZCBvbiBvbGRlciBPYnNpZGlhbi9FbGVjdHJvbiAoQ2hyb21pdW0pIHZlcnNpb25zIHRoYXQgbGFjayBpdC5cbiAgaWYgKHR5cGVvZiBBYm9ydFNpZ25hbC5hbnkgPT09ICdmdW5jdGlvbicpIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbi9uby11bnN1cHBvcnRlZC1mZWF0dXJlcy9ub2RlLWJ1aWx0aW5zIC0tIGBBYm9ydFNpZ25hbC5hbnlgIGlzIGZlYXR1cmUtZGV0ZWN0ZWQgYnkgdGhlIGd1YXJkIGFib3ZlIHdpdGggYSBtYW51YWwgZmFsbGJhY2sgYmVsb3csIHNvIGl0IGlzIG5vdCByZXF1aXJlZCBvbiBvbGRlciBPYnNpZGlhbi9FbGVjdHJvbiAoQ2hyb21pdW0pIHZlcnNpb25zIHRoYXQgbGFjayBpdC5cbiAgICByZXR1cm4gQWJvcnRTaWduYWwuYW55KGFib3J0U2lnbmFscyk7XG4gIH1cblxuICBpZiAoYWJvcnRTaWduYWxzLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiBhYm9ydFNpZ25hbE5ldmVyKCk7XG4gIH1cblxuICBpZiAoYWJvcnRTaWduYWxzLmxlbmd0aCA9PT0gMSAmJiBhYm9ydFNpZ25hbHNbMF0pIHtcbiAgICByZXR1cm4gYWJvcnRTaWduYWxzWzBdO1xuICB9XG5cbiAgY29uc3QgYWJvcnRDb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuXG4gIGZvciAoY29uc3QgYWJvcnRTaWduYWwgb2YgYWJvcnRTaWduYWxzKSB7XG4gICAgaWYgKGFib3J0U2lnbmFsLmFib3J0ZWQpIHtcbiAgICAgIHJldHVybiBhYm9ydFNpZ25hbDtcbiAgICB9XG4gIH1cblxuICBjb25zdCBhYm9ydEhhbmRsZXJEaXNwb3NhYmxlczogRGlzcG9zYWJsZVtdID0gQXJyYXkuZnJvbShhYm9ydFNpZ25hbHMsIChhYm9ydFNpZ25hbCkgPT4gb25BYm9ydChhYm9ydFNpZ25hbCwgaGFuZGxlQWJvcnQpKTtcblxuICBjb25zdCBjb21iaW5lZEFib3J0SGFuZGxlckRpc3Bvc2FibGUgPSBuZXcgQ29tYmluZURpc3Bvc2FibGUoeyBkaXNwb3NhYmxlczogYWJvcnRIYW5kbGVyRGlzcG9zYWJsZXMgfSk7XG5cbiAgcmV0dXJuIGFib3J0Q29udHJvbGxlci5zaWduYWw7XG5cbiAgZnVuY3Rpb24gaGFuZGxlQWJvcnQoYWJvcnRTaWduYWw6IEFib3J0U2lnbmFsKTogdm9pZCB7XG4gICAgY29tYmluZWRBYm9ydEhhbmRsZXJEaXNwb3NhYmxlLmRpc3Bvc2UoKTtcbiAgICBhYm9ydENvbnRyb2xsZXIuYWJvcnQoYWJvcnRTaWduYWwucmVhc29uKTtcbiAgfVxufVxuXG4vKipcbiAqIEFuIGFib3J0IHNpZ25hbCB0aGF0IG5ldmVyIGFib3J0cy5cbiAqXG4gKiBAcmV0dXJucyBUaGUgYWJvcnQgc2lnbmFsIHRoYXQgbmV2ZXIgYWJvcnRzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYWJvcnRTaWduYWxOZXZlcigpOiBBYm9ydFNpZ25hbCB7XG4gIHJldHVybiBuZXcgQWJvcnRDb250cm9sbGVyKCkuc2lnbmFsO1xufVxuXG4vKipcbiAqIEFuIGFib3J0IHNpZ25hbCB0aGF0IGFib3J0cyBhZnRlciBhIHRpbWVvdXQuXG4gKlxuICogQHBhcmFtIHRpbWVvdXRJbk1pbGxpc2Vjb25kcyAtIFRoZSB0aW1lb3V0IGluIG1pbGxpc2Vjb25kcy5cbiAqIEByZXR1cm5zIFRoZSBhYm9ydCBzaWduYWwgdGhhdCBhYm9ydHMgYWZ0ZXIgYSB0aW1lb3V0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gYWJvcnRTaWduYWxUaW1lb3V0KHRpbWVvdXRJbk1pbGxpc2Vjb25kczogbnVtYmVyKTogQWJvcnRTaWduYWwge1xuICBpZiAodGltZW91dEluTWlsbGlzZWNvbmRzID09PSBJTkZJTklURV9USU1FT1VUKSB7XG4gICAgcmV0dXJuIGFib3J0U2lnbmFsTmV2ZXIoKTtcbiAgfVxuXG4gIC8vIEludGVudGlvbmFsbHkgTk9UIHRoZSBuYXRpdmUgYEFib3J0U2lnbmFsLnRpbWVvdXRgLCB3aG9zZSBpbnRlcm5hbCB0aW1lciBjYW5ub3QgYmUgYWR2YW5jZWQgYnlcbiAgLy8gYHZpLnVzZUZha2VUaW1lcnMoKWAsIHNvIGBzbGVlcGAgKGl0cyBzb2xlIGNvbnN1bWVyKSB3b3VsZCBiZSB1bmNvbnRyb2xsYWJsZSBpbiB0ZXN0cy4gQnVpbGRpbmdcbiAgLy8gYHNsZWVwYCdzIHNpZ25hbCBvZmYgYGdsb2JhbFRoaXMuc2V0VGltZW91dGAga2VlcHMgaXQgZmFrZS10aW1lciBjb250cm9sbGFibGUgKGxpa2VcbiAgLy8gYHNldFRpbWVvdXRBc3luY2ApIGFuZCBhbHNvIHdvcmtzIGluIGEgTm9kZSBlbnZpcm9ubWVudCB3aGVyZSBgd2luZG93YCBpcyB1bmRlZmluZWQsIHNpbmNlXG4gIC8vIGBnbG9iYWxUaGlzYCBleGlzdHMgaW4gTm9kZSB0b28uIENvbnN1bWVyIGludGVncmF0aW9uLXRlc3QgcHJvamVjdHMgcnVuIHZpdGVzdCB1bmRlclxuICAvLyBgZW52aXJvbm1lbnQ6ICdub2RlJ2AsIGluIHdoaWNoIGEgYHdpbmRvd2AtYmFzZWQgcHJpbWl0aXZlIHRocm93cyBhIGBSZWZlcmVuY2VFcnJvcmAuXG4gIC8vIFRoZSBhYm9ydCByZWFzb24gbWlycm9ycyB0aGUgbmF0aXZlIG9uZSAtLSBhIGBET01FeGNlcHRpb25gIG5hbWVkIGBUaW1lb3V0RXJyb3JgIC0tIG1hdGNoaW5nXG4gIC8vIGBBYm9ydFNpZ25hbC50aW1lb3V0YCBmb3IgYHJlYXNvbi5uYW1lYCBjaGVja3MuXG4gIGNvbnN0IGFib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcblxuICBnbG9iYWxUaGlzLnNldFRpbWVvdXQoKCkgPT4ge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuL25vLXVuc3VwcG9ydGVkLWZlYXR1cmVzL25vZGUtYnVpbHRpbnMgLS0gYERPTUV4Y2VwdGlvbmAgaXMgYSBET00gZ2xvYmFsIGFsd2F5cyBwcmVzZW50IGluIHRoZSBPYnNpZGlhbi9FbGVjdHJvbiAoQ2hyb21pdW0pIHJ1bnRpbWUgdGhpcyBjb2RlIHRhcmdldHMsIGFuZCBpcyBhbHNvIGEgTm9kZSBnbG9iYWwgZnJvbSBOb2RlIDE3IG9ud2FyZC5cbiAgICBhYm9ydENvbnRyb2xsZXIuYWJvcnQobmV3IERPTUV4Y2VwdGlvbihgVGltZWQgb3V0IGluICR7U3RyaW5nKHRpbWVvdXRJbk1pbGxpc2Vjb25kcyl9IG1pbGxpc2Vjb25kc2AsICdUaW1lb3V0RXJyb3InKSk7XG4gIH0sIHRpbWVvdXRJbk1pbGxpc2Vjb25kcyk7XG4gIHJldHVybiBhYm9ydENvbnRyb2xsZXIuc2lnbmFsO1xufVxuXG4vKipcbiAqIFRoZSBhcHAtd2lkZSBzaGFyZWQge0BsaW5rIFJlc2V0dGFibGVBYm9ydENvbnRyb2xsZXJ9LlxuICpcbiAqIEV2ZXJ5IHBsdWdpbiBidWlsdCBvbiB0aGlzIGxpYnJhcnkgc2hhcmVzIG9uZSBpbnN0YW5jZSwgc28gYSBzaW5nbGUge0BsaW5rIFJlc2V0dGFibGVBYm9ydENvbnRyb2xsZXIuYWJvcnR9XG4gKiBjYWxsIGNhbmNlbHMgd2hhdGV2ZXIgbG9uZy1ydW5uaW5nIG9wZXJhdGlvbiBpcyBpbiBmbGlnaHQsIHdoaWNoZXZlciBwbHVnaW4gc3RhcnRlZCBpdC4gQSBwbHVnaW4gdGhhdCBuZWVkc1xuICogYSBjYW5jZWwgYnV0dG9uIG9mIGl0cyBvd24gc2NvcGUgY29uc3RydWN0cyBpdHMgb3duIHtAbGluayBSZXNldHRhYmxlQWJvcnRDb250cm9sbGVyfSBpbnN0ZWFkLlxuICpcbiAqIEl0IGxpdmVzIGluIHRoZSBzaGFyZWQgc3RhdGUsIHNvIGl0IGlzIHJlYWNoYWJsZSBmcm9tIHRoZSBkZXZ0b29scyBjb25zb2xlOlxuICpcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGdsb2JhbFRoaXNbU3ltYm9sLmZvcignQG1uYW91bW92L3R5cGVzY3JpcHQtbGliL3N0YXRlJyldLnZhbHVlcy5zaGFyZWRBYm9ydENvbnRyb2xsZXIudmFsdWUuYWJvcnQoKTtcbiAqIGBgYFxuICpcbiAqIEluIGFuIE9ic2lkaWFuIHBsdWdpbiB0aGUgc2FtZSBpbnN0YW5jZSBpcyBhbHNvIHJlYWNoYWJsZSBhcyBgX19vYnNpZGlhbkRldlV0aWxzLnNoYXJlZEFib3J0Q29udHJvbGxlci52YWx1ZWAuXG4gKlxuICogQHJldHVybnMgVGhlIHNoYXJlZCB7QGxpbmsgUmVzZXR0YWJsZUFib3J0Q29udHJvbGxlcn0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRTaGFyZWRBYm9ydENvbnRyb2xsZXIoKTogUmVzZXR0YWJsZUFib3J0Q29udHJvbGxlciB7XG4gIHJldHVybiBnZXRUeXBlc2NyaXB0TGliU3RhdGUoJ3NoYXJlZEFib3J0Q29udHJvbGxlcicsIG5ldyBSZXNldHRhYmxlQWJvcnRDb250cm9sbGVyKCkpLnZhbHVlO1xufVxuXG4vKipcbiAqIFRoZSBzaWduYWwgb2YgdGhlIGFwcC13aWRlIHNoYXJlZCB7QGxpbmsgUmVzZXR0YWJsZUFib3J0Q29udHJvbGxlcn0uXG4gKlxuICogQ2FsbCBpdCBhdCB0aGUgc3RhcnQgb2YgZWFjaCBvcGVyYXRpb24uIE5ldmVyIGNhY2hlIGl0LCBvciB0aGUgb3BlcmF0aW9uIGFmdGVyIHRoZSBmaXJzdCBhYm9ydCBzdGFydHNcbiAqIGFscmVhZHkgYWJvcnRlZC5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogYXdhaXQgbG9vcCh7XG4gKiAgIGFib3J0U2lnbmFsOiBnZXRTaGFyZWRBYm9ydFNpZ25hbCgpLFxuICogICBidWlsZE5vdGljZU1lc3NhZ2U6IChmaWxlKSA9PiBgUHJvY2Vzc2luZyAke2ZpbGUucGF0aH1gLFxuICogICBpdGVtczogYXBwLnZhdWx0LmdldE1hcmtkb3duRmlsZXMoKSxcbiAqICAgcHJvY2Vzc0l0ZW06IGFzeW5jIChmaWxlKSA9PiB7IGF3YWl0IHByb2Nlc3NGaWxlKGZpbGUpOyB9XG4gKiB9KTtcbiAqIGBgYFxuICpcbiAqIEByZXR1cm5zIFRoZSB7QGxpbmsgQWJvcnRTaWduYWx9IG9mIHRoZSBzaGFyZWQge0BsaW5rIFJlc2V0dGFibGVBYm9ydENvbnRyb2xsZXJ9LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0U2hhcmVkQWJvcnRTaWduYWwoKTogQWJvcnRTaWduYWwge1xuICByZXR1cm4gZ2V0U2hhcmVkQWJvcnRDb250cm9sbGVyKCkuc2lnbmFsO1xufVxuXG4vKipcbiAqIEFkZHMgYW4gYWJvcnQgbGlzdGVuZXIgdG8gYW4gYWJvcnQgc2lnbmFsIGFuZCBjYWxscyB0aGUgY2FsbGJhY2sgaWYgdGhlIGFib3J0IHNpZ25hbCBpcyBhbHJlYWR5IGFib3J0ZWQuXG4gKlxuICogQHBhcmFtIGFib3J0U2lnbmFsIC0gVGhlIGFib3J0IHNpZ25hbCB0byBhZGQgdGhlIGxpc3RlbmVyIHRvLlxuICogQHBhcmFtIGNhbGxiYWNrIC0gVGhlIGNhbGxiYWNrIHRvIGNhbGwgd2hlbiB0aGUgYWJvcnQgc2lnbmFsIGFib3J0cy5cbiAqIEByZXR1cm5zIEEge0BsaW5rIERpc3Bvc2FibGV9IHRoYXQgcmVtb3ZlcyB0aGUgYWJvcnQgbGlzdGVuZXIgd2hlbiBkaXNwb3NlZCwgZm9yIHVzZSB3aXRoIGB1c2luZ2AuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBvbkFib3J0KGFib3J0U2lnbmFsOiBBYm9ydFNpZ25hbCwgY2FsbGJhY2s6IChhYm9ydFNpZ25hbDogQWJvcnRTaWduYWwpID0+IHZvaWQpOiBEaXNwb3NhYmxlIHtcbiAgaWYgKGFib3J0U2lnbmFsLmFib3J0ZWQpIHtcbiAgICBjYWxsYmFjayhhYm9ydFNpZ25hbCk7XG4gICAgcmV0dXJuIG5ldyBDYWxsYmFja0Rpc3Bvc2FibGUoeyBjYWxsYmFjazogbm9vcCB9KTtcbiAgfVxuXG4gIGFib3J0U2lnbmFsLmFkZEV2ZW50TGlzdGVuZXIoJ2Fib3J0Jywgd3JhcHBlZENhbGxiYWNrLCB7IG9uY2U6IHRydWUgfSk7XG4gIHJldHVybiBuZXcgQ2FsbGJhY2tEaXNwb3NhYmxlKHtcbiAgICBjYWxsYmFjazogKCk6IHZvaWQgPT4ge1xuICAgICAgYWJvcnRTaWduYWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignYWJvcnQnLCB3cmFwcGVkQ2FsbGJhY2spO1xuICAgIH1cbiAgfSk7XG5cbiAgZnVuY3Rpb24gd3JhcHBlZENhbGxiYWNrKCRldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBjYWxsYmFjaygkZXZlbnQudGFyZ2V0IGFzIEFib3J0U2lnbmFsKTtcbiAgfVxufVxuXG4vKipcbiAqIFdhaXRzIGZvciBhbiBhYm9ydCBzaWduYWwgdG8gYWJvcnQgYW5kIHJlc29sdmVzIHdpdGggaXRzIHJlYXNvbi5cbiAqXG4gKiBAdHlwZVBhcmFtIFQgLSBFeHBlY3RlZCB0eXBlIG9mIGBhYm9ydFNpZ25hbC5yZWFzb25gLlxuICogQHBhcmFtIGFib3J0U2lnbmFsIC0gVGhlIGFib3J0IHNpZ25hbCB0byB3YWl0IGZvci5cbiAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHRoYXQgcmVzb2x2ZXMgd2l0aCB0aGUgcmVhc29uIG9mIHRoZSBhYm9ydCBzaWduYWwuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB3YWl0Rm9yQWJvcnQ8VCA9IHVua25vd24+KGFib3J0U2lnbmFsOiBBYm9ydFNpZ25hbCk6IFByb21pc2U8VD47XG4vKipcbiAqIFdhaXRzIGZvciBhbiBhYm9ydCBzaWduYWwgdG8gYWJvcnQgYW5kIHJlamVjdHMgd2l0aCBpdHMgcmVhc29uLlxuICpcbiAqIEBwYXJhbSBhYm9ydFNpZ25hbCAtIFRoZSBhYm9ydCBzaWduYWwgdG8gd2FpdCBmb3IuXG4gKiBAcGFyYW0gc2hvdWxkUmVqZWN0T25BYm9ydCAtIFdoZXRoZXIgdG8gcmVqZWN0IHRoZSBwcm9taXNlIGlmIHRoZSBhYm9ydCBzaWduYWwgaXMgYWJvcnRlZC5cbiAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHRoYXQgcmVqZWN0cyB3aXRoIHRoZSByZWFzb24gb2YgdGhlIGFib3J0IHNpZ25hbC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHdhaXRGb3JBYm9ydChhYm9ydFNpZ25hbDogQWJvcnRTaWduYWwsIHNob3VsZFJlamVjdE9uQWJvcnQ6IHRydWUpOiBQcm9taXNlPG5ldmVyPjtcbi8qKlxuICogV2FpdHMgZm9yIGFuIGFib3J0IHNpZ25hbCB0byBhYm9ydCBhbmQgcmVzb2x2ZXMgd2l0aCBpdHMgcmVhc29uLlxuICpcbiAqIEB0eXBlUGFyYW0gVCAtIEV4cGVjdGVkIHR5cGUgb2YgYGFib3J0U2lnbmFsLnJlYXNvbmAuXG4gKiBAcGFyYW0gYWJvcnRTaWduYWwgLSBUaGUgYWJvcnQgc2lnbmFsIHRvIHdhaXQgZm9yLlxuICogQHBhcmFtIHNob3VsZFJlamVjdE9uQWJvcnQgLSBXaGV0aGVyIHRvIHJlamVjdCB0aGUgcHJvbWlzZSBpZiB0aGUgYWJvcnQgc2lnbmFsIGlzIGFib3J0ZWQuXG4gKiBAcmV0dXJucyBBIHtAbGluayBQcm9taXNlfSB0aGF0IHJlc29sdmVzIHdpdGggdGhlIHJlYXNvbiBvZiB0aGUgYWJvcnQgc2lnbmFsLlxuICovXG5leHBvcnQgZnVuY3Rpb24gd2FpdEZvckFib3J0PFQgPSB1bmtub3duPihhYm9ydFNpZ25hbDogQWJvcnRTaWduYWwsIHNob3VsZFJlamVjdE9uQWJvcnQ/OiBib29sZWFuKTogUHJvbWlzZTxUPiB7XG4gIHJldHVybiBuZXcgUHJvbWlzZTxUPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgb25BYm9ydChhYm9ydFNpZ25hbCwgKCkgPT4ge1xuICAgICAgaWYgKHNob3VsZFJlamVjdE9uQWJvcnQpIHtcbiAgICAgICAgcmVqZWN0KGFib3J0U2lnbmFsLnJlYXNvbiBhcyBFcnJvcik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXNvbHZlKGFib3J0U2lnbmFsLnJlYXNvbiBhcyBUKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfSk7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUEsd0JBR087QUFDUCxzQkFBcUI7QUFDckIsa0NBQXNDO0FBSy9CLE1BQU0sbUJBQW1CO0FBOEJ6QixNQUFNLDBCQUEwQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU1yQyxJQUFXLFNBQXNCO0FBQy9CLFdBQU8sS0FBSyxnQkFBZ0I7QUFBQSxFQUM5QjtBQUFBLEVBRVEsa0JBQWtCLElBQUksZ0JBQWdCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRdkMsTUFBTSxRQUF3QjtBQUNuQyxTQUFLLGdCQUFnQixNQUFNLE1BQU07QUFDakMsU0FBSyxrQkFBa0IsSUFBSSxnQkFBZ0I7QUFBQSxFQUM3QztBQUNGO0FBUU8sU0FBUyxrQkFBa0IsbUJBQTZEO0FBQzdGLFFBQU0sZUFBZSxrQkFBa0IsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUMsV0FBVztBQUc1RSxNQUFJLE9BQU8sWUFBWSxRQUFRLFlBQVk7QUFFekMsV0FBTyxZQUFZLElBQUksWUFBWTtBQUFBLEVBQ3JDO0FBRUEsTUFBSSxhQUFhLFdBQVcsR0FBRztBQUM3QixXQUFPLGlCQUFpQjtBQUFBLEVBQzFCO0FBRUEsTUFBSSxhQUFhLFdBQVcsS0FBSyxhQUFhLENBQUMsR0FBRztBQUNoRCxXQUFPLGFBQWEsQ0FBQztBQUFBLEVBQ3ZCO0FBRUEsUUFBTSxrQkFBa0IsSUFBSSxnQkFBZ0I7QUFFNUMsYUFBVyxlQUFlLGNBQWM7QUFDdEMsUUFBSSxZQUFZLFNBQVM7QUFDdkIsYUFBTztBQUFBLElBQ1Q7QUFBQSxFQUNGO0FBRUEsUUFBTSwwQkFBd0MsTUFBTSxLQUFLLGNBQWMsQ0FBQyxnQkFBZ0IsUUFBUSxhQUFhLFdBQVcsQ0FBQztBQUV6SCxRQUFNLGlDQUFpQyxJQUFJLG9DQUFrQixFQUFFLGFBQWEsd0JBQXdCLENBQUM7QUFFckcsU0FBTyxnQkFBZ0I7QUFFdkIsV0FBUyxZQUFZLGFBQWdDO0FBQ25ELG1DQUErQixRQUFRO0FBQ3ZDLG9CQUFnQixNQUFNLFlBQVksTUFBTTtBQUFBLEVBQzFDO0FBQ0Y7QUFPTyxTQUFTLG1CQUFnQztBQUM5QyxTQUFPLElBQUksZ0JBQWdCLEVBQUU7QUFDL0I7QUFRTyxTQUFTLG1CQUFtQix1QkFBNEM7QUFDN0UsTUFBSSwwQkFBMEIsa0JBQWtCO0FBQzlDLFdBQU8saUJBQWlCO0FBQUEsRUFDMUI7QUFVQSxRQUFNLGtCQUFrQixJQUFJLGdCQUFnQjtBQUU1QyxhQUFXLFdBQVcsTUFBTTtBQUUxQixvQkFBZ0IsTUFBTSxJQUFJLGFBQWEsZ0JBQWdCLE9BQU8scUJBQXFCLENBQUMsaUJBQWlCLGNBQWMsQ0FBQztBQUFBLEVBQ3RILEdBQUcscUJBQXFCO0FBQ3hCLFNBQU8sZ0JBQWdCO0FBQ3pCO0FBbUJPLFNBQVMsMkJBQXNEO0FBQ3BFLGFBQU8sbURBQXNCLHlCQUF5QixJQUFJLDBCQUEwQixDQUFDLEVBQUU7QUFDekY7QUFvQk8sU0FBUyx1QkFBb0M7QUFDbEQsU0FBTyx5QkFBeUIsRUFBRTtBQUNwQztBQVNPLFNBQVMsUUFBUSxhQUEwQixVQUEwRDtBQUMxRyxNQUFJLFlBQVksU0FBUztBQUN2QixhQUFTLFdBQVc7QUFDcEIsV0FBTyxJQUFJLHFDQUFtQixFQUFFLFVBQVUscUJBQUssQ0FBQztBQUFBLEVBQ2xEO0FBRUEsY0FBWSxpQkFBaUIsU0FBUyxpQkFBaUIsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUNyRSxTQUFPLElBQUkscUNBQW1CO0FBQUEsSUFDNUIsVUFBVSxNQUFZO0FBQ3BCLGtCQUFZLG9CQUFvQixTQUFTLGVBQWU7QUFBQSxJQUMxRDtBQUFBLEVBQ0YsQ0FBQztBQUVELFdBQVMsZ0JBQWdCLFFBQXFCO0FBQzVDLGFBQVMsT0FBTyxNQUFxQjtBQUFBLEVBQ3ZDO0FBQ0Y7QUEwQk8sU0FBUyxhQUEwQixhQUEwQixxQkFBMkM7QUFDN0csU0FBTyxJQUFJLFFBQVcsQ0FBQyxTQUFTLFdBQVc7QUFDekMsWUFBUSxhQUFhLE1BQU07QUFDekIsVUFBSSxxQkFBcUI7QUFDdkIsZUFBTyxZQUFZLE1BQWU7QUFBQSxNQUNwQyxPQUFPO0FBQ0wsZ0JBQVEsWUFBWSxNQUFXO0FBQUEsTUFDakM7QUFBQSxJQUNGLENBQUM7QUFBQSxFQUNILENBQUM7QUFDSDsiLAogICJuYW1lcyI6IFtdCn0K
@@ -1,4 +1,5 @@
1
- /// <reference path="./library.d.cts" />
1
+ /// <reference path="./library-references.d.cts" />
2
+ /// <reference lib="dom" />
2
3
  /**
3
4
  * @file
4
5
  *
@@ -3,64 +3,6 @@ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
3
  if you want to view the source, please visit the github repository of this plugin
4
4
  */
5
5
 
6
- (function () {
7
- function ensureDisposeSymbols(symbolConstructor = Symbol) {
8
- symbolConstructor.asyncDispose ??= symbolConstructor.for('Symbol.asyncDispose');
9
- symbolConstructor.dispose ??= symbolConstructor.for('Symbol.dispose');
10
- }
11
-
12
- function ensureBrowserProcess() {
13
- const browserProcess = {
14
- browser: true,
15
- cwd() {
16
- return '/';
17
- },
18
- env: {},
19
- platform: 'android'
20
- };
21
-
22
- // eslint-disable-next-line obsidianmd/no-global-this, unicorn/no-unnecessary-global-this -- Must stay `globalThis`-qualified: in the emitted banner a bare `process` is a free identifier, so reading it where the host has none throws a ReferenceError instead of yielding `undefined`. That is the very case this function exists to handle.
23
- const existingProcess = globalThis.process;
24
-
25
- if (!existingProcess) {
26
- // eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
27
- globalThis.process = browserProcess;
28
- return;
29
- }
30
-
31
- if (existingProcess.versions?.node) {
32
- return;
33
- }
34
-
35
- const existingProcessRecord = existingProcess;
36
-
37
- for (const [key, value] of Object.entries(browserProcess)) {
38
- existingProcessRecord[key] ??= value;
39
- }
40
-
41
- existingProcessRecord['browser'] = true;
42
- }
43
-
44
- function keepName($unknown) {
45
- return $unknown;
46
- }
47
-
48
- (function initCjs() {
49
- // eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
50
- const globalThisRecord = globalThis;
51
- ensureDisposeSymbols();
52
- globalThisRecord['__name'] ??= keepName;
53
- globalThisRecord['__extractDefault'] ??= extractDefault;
54
-
55
- ensureBrowserProcess();
56
-
57
- // eslint-disable-next-line unicorn/consistent-function-scoping -- Serialized with initCjs into the banner; at module scope it would be left out of it.
58
- function extractDefault(module) {
59
- return module && module.__esModule && 'default' in module ? module.default : module;
60
- }
61
- })();
62
- })();
63
-
64
6
  "use strict";
65
7
  var __defProp = Object.defineProperty;
66
8
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -95,4 +37,4 @@ function getAggregateErrorMessage(errors) {
95
37
  0 && (module.exports = {
96
38
  createAggregateError
97
39
  });
98
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2FnZ3JlZ2F0ZS1lcnJvci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIENvbnRhaW5zIGEgdXRpbGl0eSBmdW5jdGlvbiBmb3IgYnVpbGRpbmcgYW4gYEFnZ3JlZ2F0ZUVycm9yYCB0aGF0IG5hbWVzIHdoYXQgZmFpbGVkLlxuICovXG5cbi8qKlxuICogQnVpbGRzIGFuIGBBZ2dyZWdhdGVFcnJvcmAgb3ZlciBjb2xsZWN0ZWQgZXJyb3JzLCBnaXZpbmcgaXQgYSBtZXNzYWdlIHRoYXQgbmFtZXMgd2hhdCBmYWlsZWQuXG4gKlxuICogYEFnZ3JlZ2F0ZUVycm9yYCdzIG93biBtZXNzYWdlIGlzIG9wdGlvbmFsLCBhbmQgb21pdHRpbmcgaXQgaXMgbG9zc3kgaW4gYSB3YXkgdGhhdCBvbmx5IHNob3dzIHVwXG4gKiBvdXRzaWRlIHRoaXMgbGlicmFyeS4ge0BsaW5rIGVycm9yIWVycm9yVG9TdHJpbmd9IHdhbGtzIGBlcnJvcnNgIGFuZCBwcmludHMgdGhlIHdob2xlIHRyZWUsIHNvIHRoZVxuICogY29uc29sZSBpcyBmaW5lOyBldmVyeXRoaW5nIHRoYXQgcmVhZHMgYG1lc3NhZ2VgIGlzIG5vdC4gT2JzaWRpYW4ncyBvd24gcGx1Z2luLWxvYWQgZmFpbHVyZSByZXBvcnQsIGFcbiAqIGBOb3RpY2VgIGJ1aWx0IGZyb20gYW4gZXJyb3IsIGFuZCBhIGNvbnN1bWVyJ3MgYHJlamVjdHMudG9UaHJvdyhtZXNzYWdlKWAgYWxsIHNlZSBhbiBlbXB0eSBzdHJpbmcgYW5kXG4gKiByZWFkIGl0IGFzIFwibm90aGluZyB3YXMgdGhyb3duXCIuIE5lc3RpbmcgY29tcG91bmRzIGl0OiBhbiBhZ2dyZWdhdGUgaG9sZGluZyBvbmUgYWdncmVnYXRlIHB1dHMgdHdvIGVtcHR5XG4gKiBsYXllcnMgYWJvdmUgdGhlIG9ubHkgc2VudGVuY2UgdGhhdCBzYXlzIHdoYXQgd2VudCB3cm9uZy5cbiAqXG4gKiBBIHNpbmdsZSBjb2xsZWN0ZWQgZXJyb3IgdGhlcmVmb3JlIGxlbmRzIGl0cyBvd24gbWVzc2FnZSB0byB0aGUgYWdncmVnYXRlLCB3aGljaCBtYWtlcyBhIG9uZS1jYXVzZVxuICogY2hhaW4gcmVhZCBpZGVudGljYWxseSBhdCBldmVyeSBsZXZlbC4gU2V2ZXJhbCBiZWNvbWUgYSBjb3VudCwgd2l0aCB0aGUgZGV0YWlsIG9uZSBsZXZlbCBkb3duIHdoZXJlXG4gKiB7QGxpbmsgZXJyb3IhZXJyb3JUb1N0cmluZ30gYWxyZWFkeSBwcmludHMgaXQuXG4gKlxuICogQHBhcmFtIGVycm9ycyAtIFRoZSBjb2xsZWN0ZWQgZXJyb3JzIHRvIGFnZ3JlZ2F0ZS5cbiAqIEByZXR1cm5zIEFuIGBBZ2dyZWdhdGVFcnJvcmAgaG9sZGluZyBldmVyeSBjb2xsZWN0ZWQgZXJyb3IsIHdpdGggYSBub24tZW1wdHkgbWVzc2FnZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUFnZ3JlZ2F0ZUVycm9yKGVycm9yczogcmVhZG9ubHkgdW5rbm93bltdKTogQWdncmVnYXRlRXJyb3Ige1xuICByZXR1cm4gbmV3IEFnZ3JlZ2F0ZUVycm9yKGVycm9ycywgZ2V0QWdncmVnYXRlRXJyb3JNZXNzYWdlKGVycm9ycykpO1xufVxuXG5mdW5jdGlvbiBnZXRBZ2dyZWdhdGVFcnJvck1lc3NhZ2UoZXJyb3JzOiByZWFkb25seSB1bmtub3duW10pOiBzdHJpbmcge1xuICBjb25zdCBbc2luZ2xlRXJyb3JdID0gZXJyb3JzO1xuICAvLyBBIGxvbmUgZmFpbHVyZSBsZW5kcyBpdHMgb3duIG1lc3NhZ2UsIHdoaWNoIGlzIHdoYXQgbWFrZXMgYSBvbmUtY2F1c2UgY2hhaW4gcmVhZCBpZGVudGljYWxseSBhdCBldmVyeVxuICAvLyBsZXZlbCBvZiBuZXN0aW5nLiBBbnl0aGluZyBlbHNlIGlzIGEgY291bnQsIGJlY2F1c2UgcGlja2luZyBvbmUgb2Ygc2V2ZXJhbCBtZXNzYWdlcyB0byBwcm9tb3RlIHdvdWxkXG4gIC8vIGRlc2NyaWJlIHRoZSBmYWlsdXJlIGFzIGlmIHRoZSBvdGhlcnMgaGFkIG5vdCBoYXBwZW5lZC5cbiAgcmV0dXJuIGVycm9ycy5sZW5ndGggPT09IDEgJiYgc2luZ2xlRXJyb3IgaW5zdGFuY2VvZiBFcnJvciAmJiBzaW5nbGVFcnJvci5tZXNzYWdlICE9PSAnJyA/IHNpbmdsZUVycm9yLm1lc3NhZ2UgOiBgJHtTdHJpbmcoZXJyb3JzLmxlbmd0aCl9IGVycm9yKHMpIG9jY3VycmVkYDtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUF1Qk8sU0FBUyxxQkFBcUIsUUFBNEM7QUFDL0UsU0FBTyxJQUFJLGVBQWUsUUFBUSx5QkFBeUIsTUFBTSxDQUFDO0FBQ3BFO0FBRUEsU0FBUyx5QkFBeUIsUUFBb0M7QUFDcEUsUUFBTSxDQUFDLFdBQVcsSUFBSTtBQUl0QixTQUFPLE9BQU8sV0FBVyxLQUFLLHVCQUF1QixTQUFTLFlBQVksWUFBWSxLQUFLLFlBQVksVUFBVSxHQUFHLE9BQU8sT0FBTyxNQUFNLENBQUM7QUFDM0k7IiwKICAibmFtZXMiOiBbXQp9Cg==
40
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2FnZ3JlZ2F0ZS1lcnJvci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIENvbnRhaW5zIGEgdXRpbGl0eSBmdW5jdGlvbiBmb3IgYnVpbGRpbmcgYW4gYEFnZ3JlZ2F0ZUVycm9yYCB0aGF0IG5hbWVzIHdoYXQgZmFpbGVkLlxuICovXG5cbi8qKlxuICogQnVpbGRzIGFuIGBBZ2dyZWdhdGVFcnJvcmAgb3ZlciBjb2xsZWN0ZWQgZXJyb3JzLCBnaXZpbmcgaXQgYSBtZXNzYWdlIHRoYXQgbmFtZXMgd2hhdCBmYWlsZWQuXG4gKlxuICogYEFnZ3JlZ2F0ZUVycm9yYCdzIG93biBtZXNzYWdlIGlzIG9wdGlvbmFsLCBhbmQgb21pdHRpbmcgaXQgaXMgbG9zc3kgaW4gYSB3YXkgdGhhdCBvbmx5IHNob3dzIHVwXG4gKiBvdXRzaWRlIHRoaXMgbGlicmFyeS4ge0BsaW5rIGVycm9yIWVycm9yVG9TdHJpbmd9IHdhbGtzIGBlcnJvcnNgIGFuZCBwcmludHMgdGhlIHdob2xlIHRyZWUsIHNvIHRoZVxuICogY29uc29sZSBpcyBmaW5lOyBldmVyeXRoaW5nIHRoYXQgcmVhZHMgYG1lc3NhZ2VgIGlzIG5vdC4gT2JzaWRpYW4ncyBvd24gcGx1Z2luLWxvYWQgZmFpbHVyZSByZXBvcnQsIGFcbiAqIGBOb3RpY2VgIGJ1aWx0IGZyb20gYW4gZXJyb3IsIGFuZCBhIGNvbnN1bWVyJ3MgYHJlamVjdHMudG9UaHJvdyhtZXNzYWdlKWAgYWxsIHNlZSBhbiBlbXB0eSBzdHJpbmcgYW5kXG4gKiByZWFkIGl0IGFzIFwibm90aGluZyB3YXMgdGhyb3duXCIuIE5lc3RpbmcgY29tcG91bmRzIGl0OiBhbiBhZ2dyZWdhdGUgaG9sZGluZyBvbmUgYWdncmVnYXRlIHB1dHMgdHdvIGVtcHR5XG4gKiBsYXllcnMgYWJvdmUgdGhlIG9ubHkgc2VudGVuY2UgdGhhdCBzYXlzIHdoYXQgd2VudCB3cm9uZy5cbiAqXG4gKiBBIHNpbmdsZSBjb2xsZWN0ZWQgZXJyb3IgdGhlcmVmb3JlIGxlbmRzIGl0cyBvd24gbWVzc2FnZSB0byB0aGUgYWdncmVnYXRlLCB3aGljaCBtYWtlcyBhIG9uZS1jYXVzZVxuICogY2hhaW4gcmVhZCBpZGVudGljYWxseSBhdCBldmVyeSBsZXZlbC4gU2V2ZXJhbCBiZWNvbWUgYSBjb3VudCwgd2l0aCB0aGUgZGV0YWlsIG9uZSBsZXZlbCBkb3duIHdoZXJlXG4gKiB7QGxpbmsgZXJyb3IhZXJyb3JUb1N0cmluZ30gYWxyZWFkeSBwcmludHMgaXQuXG4gKlxuICogQHBhcmFtIGVycm9ycyAtIFRoZSBjb2xsZWN0ZWQgZXJyb3JzIHRvIGFnZ3JlZ2F0ZS5cbiAqIEByZXR1cm5zIEFuIGBBZ2dyZWdhdGVFcnJvcmAgaG9sZGluZyBldmVyeSBjb2xsZWN0ZWQgZXJyb3IsIHdpdGggYSBub24tZW1wdHkgbWVzc2FnZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUFnZ3JlZ2F0ZUVycm9yKGVycm9yczogcmVhZG9ubHkgdW5rbm93bltdKTogQWdncmVnYXRlRXJyb3Ige1xuICByZXR1cm4gbmV3IEFnZ3JlZ2F0ZUVycm9yKGVycm9ycywgZ2V0QWdncmVnYXRlRXJyb3JNZXNzYWdlKGVycm9ycykpO1xufVxuXG5mdW5jdGlvbiBnZXRBZ2dyZWdhdGVFcnJvck1lc3NhZ2UoZXJyb3JzOiByZWFkb25seSB1bmtub3duW10pOiBzdHJpbmcge1xuICBjb25zdCBbc2luZ2xlRXJyb3JdID0gZXJyb3JzO1xuICAvLyBBIGxvbmUgZmFpbHVyZSBsZW5kcyBpdHMgb3duIG1lc3NhZ2UsIHdoaWNoIGlzIHdoYXQgbWFrZXMgYSBvbmUtY2F1c2UgY2hhaW4gcmVhZCBpZGVudGljYWxseSBhdCBldmVyeVxuICAvLyBsZXZlbCBvZiBuZXN0aW5nLiBBbnl0aGluZyBlbHNlIGlzIGEgY291bnQsIGJlY2F1c2UgcGlja2luZyBvbmUgb2Ygc2V2ZXJhbCBtZXNzYWdlcyB0byBwcm9tb3RlIHdvdWxkXG4gIC8vIGRlc2NyaWJlIHRoZSBmYWlsdXJlIGFzIGlmIHRoZSBvdGhlcnMgaGFkIG5vdCBoYXBwZW5lZC5cbiAgcmV0dXJuIGVycm9ycy5sZW5ndGggPT09IDEgJiYgc2luZ2xlRXJyb3IgaW5zdGFuY2VvZiBFcnJvciAmJiBzaW5nbGVFcnJvci5tZXNzYWdlICE9PSAnJyA/IHNpbmdsZUVycm9yLm1lc3NhZ2UgOiBgJHtTdHJpbmcoZXJyb3JzLmxlbmd0aCl9IGVycm9yKHMpIG9jY3VycmVkYDtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQXVCTyxTQUFTLHFCQUFxQixRQUE0QztBQUMvRSxTQUFPLElBQUksZUFBZSxRQUFRLHlCQUF5QixNQUFNLENBQUM7QUFDcEU7QUFFQSxTQUFTLHlCQUF5QixRQUFvQztBQUNwRSxRQUFNLENBQUMsV0FBVyxJQUFJO0FBSXRCLFNBQU8sT0FBTyxXQUFXLEtBQUssdUJBQXVCLFNBQVMsWUFBWSxZQUFZLEtBQUssWUFBWSxVQUFVLEdBQUcsT0FBTyxPQUFPLE1BQU0sQ0FBQztBQUMzSTsiLAogICJuYW1lcyI6IFtdCn0K
@@ -1,4 +1,4 @@
1
- /// <reference path="./library.d.cts" />
1
+ /// <reference path="./library-references.d.cts" />
2
2
  /**
3
3
  * @file
4
4
  *
@@ -3,64 +3,6 @@ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
3
  if you want to view the source, please visit the github repository of this plugin
4
4
  */
5
5
 
6
- (function () {
7
- function ensureDisposeSymbols(symbolConstructor = Symbol) {
8
- symbolConstructor.asyncDispose ??= symbolConstructor.for('Symbol.asyncDispose');
9
- symbolConstructor.dispose ??= symbolConstructor.for('Symbol.dispose');
10
- }
11
-
12
- function ensureBrowserProcess() {
13
- const browserProcess = {
14
- browser: true,
15
- cwd() {
16
- return '/';
17
- },
18
- env: {},
19
- platform: 'android'
20
- };
21
-
22
- // eslint-disable-next-line obsidianmd/no-global-this, unicorn/no-unnecessary-global-this -- Must stay `globalThis`-qualified: in the emitted banner a bare `process` is a free identifier, so reading it where the host has none throws a ReferenceError instead of yielding `undefined`. That is the very case this function exists to handle.
23
- const existingProcess = globalThis.process;
24
-
25
- if (!existingProcess) {
26
- // eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
27
- globalThis.process = browserProcess;
28
- return;
29
- }
30
-
31
- if (existingProcess.versions?.node) {
32
- return;
33
- }
34
-
35
- const existingProcessRecord = existingProcess;
36
-
37
- for (const [key, value] of Object.entries(browserProcess)) {
38
- existingProcessRecord[key] ??= value;
39
- }
40
-
41
- existingProcessRecord['browser'] = true;
42
- }
43
-
44
- function keepName($unknown) {
45
- return $unknown;
46
- }
47
-
48
- (function initCjs() {
49
- // eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
50
- const globalThisRecord = globalThis;
51
- ensureDisposeSymbols();
52
- globalThisRecord['__name'] ??= keepName;
53
- globalThisRecord['__extractDefault'] ??= extractDefault;
54
-
55
- ensureBrowserProcess();
56
-
57
- // eslint-disable-next-line unicorn/consistent-function-scoping -- Serialized with initCjs into the banner; at module scope it would be left out of it.
58
- function extractDefault(module) {
59
- return module && module.__esModule && 'default' in module ? module.default : module;
60
- }
61
- })();
62
- })();
63
-
64
6
  "use strict";
65
7
  var __defProp = Object.defineProperty;
66
8
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -93,4 +35,4 @@ function toArrayBuffer(data) {
93
35
  0 && (module.exports = {
94
36
  toArrayBuffer
95
37
  });
96
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2FycmF5LWJ1ZmZlci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIENvbnRhaW5zIHV0aWxpdHkgZnVuY3Rpb25zIGZvciB7QGxpbmsgQXJyYXlCdWZmZXJ9IG9iamVjdHMuXG4gKi9cblxuLyoqXG4gKiBDb3BpZXMgYnl0ZXMgaW50byBhIGZyZXNoIHtAbGluayBBcnJheUJ1ZmZlcn0uXG4gKlxuICogUmVhY2hpbmcgZm9yIGBkYXRhLmJ1ZmZlcmAgd291bGQgYmUgY2hlYXBlciBidXQgd3Jvbmc6IGl0cyB0eXBlIGlzIGBBcnJheUJ1ZmZlckxpa2VgLCBhbmQgdGhlIHZpZXcgbWF5XG4gKiBjb3ZlciBvbmx5IHBhcnQgb2YgYSBsYXJnZXIgYnVmZmVyLCBzbyB0aGUgY2FsbGVyIGNhbiBlbmQgdXAgaGFuZGVkIGJ5dGVzIGl0IG5ldmVyIGFza2VkIGZvci5cbiAqXG4gKiBAcGFyYW0gZGF0YSAtIFRoZSBieXRlcyB0byBjb3B5LlxuICogQHJldHVybnMgQW4ge0BsaW5rIEFycmF5QnVmZmVyfSBob2xkaW5nIGV4YWN0bHkgdGhvc2UgYnl0ZXMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0FycmF5QnVmZmVyKGRhdGE6IFVpbnQ4QXJyYXkpOiBBcnJheUJ1ZmZlciB7XG4gIGNvbnN0IGJ1ZmZlciA9IG5ldyBBcnJheUJ1ZmZlcihkYXRhLmJ5dGVMZW5ndGgpO1xuICBuZXcgVWludDhBcnJheShidWZmZXIpLnNldChkYXRhKTtcbiAgcmV0dXJuIGJ1ZmZlcjtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFlTyxTQUFTLGNBQWMsTUFBK0I7QUFDM0QsUUFBTSxTQUFTLElBQUksWUFBWSxLQUFLLFVBQVU7QUFDOUMsTUFBSSxXQUFXLE1BQU0sRUFBRSxJQUFJLElBQUk7QUFDL0IsU0FBTztBQUNUOyIsCiAgIm5hbWVzIjogW10KfQo=
38
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2FycmF5LWJ1ZmZlci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIENvbnRhaW5zIHV0aWxpdHkgZnVuY3Rpb25zIGZvciB7QGxpbmsgQXJyYXlCdWZmZXJ9IG9iamVjdHMuXG4gKi9cblxuLyoqXG4gKiBDb3BpZXMgYnl0ZXMgaW50byBhIGZyZXNoIHtAbGluayBBcnJheUJ1ZmZlcn0uXG4gKlxuICogUmVhY2hpbmcgZm9yIGBkYXRhLmJ1ZmZlcmAgd291bGQgYmUgY2hlYXBlciBidXQgd3Jvbmc6IGl0cyB0eXBlIGlzIGBBcnJheUJ1ZmZlckxpa2VgLCBhbmQgdGhlIHZpZXcgbWF5XG4gKiBjb3ZlciBvbmx5IHBhcnQgb2YgYSBsYXJnZXIgYnVmZmVyLCBzbyB0aGUgY2FsbGVyIGNhbiBlbmQgdXAgaGFuZGVkIGJ5dGVzIGl0IG5ldmVyIGFza2VkIGZvci5cbiAqXG4gKiBAcGFyYW0gZGF0YSAtIFRoZSBieXRlcyB0byBjb3B5LlxuICogQHJldHVybnMgQW4ge0BsaW5rIEFycmF5QnVmZmVyfSBob2xkaW5nIGV4YWN0bHkgdGhvc2UgYnl0ZXMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0FycmF5QnVmZmVyKGRhdGE6IFVpbnQ4QXJyYXkpOiBBcnJheUJ1ZmZlciB7XG4gIGNvbnN0IGJ1ZmZlciA9IG5ldyBBcnJheUJ1ZmZlcihkYXRhLmJ5dGVMZW5ndGgpO1xuICBuZXcgVWludDhBcnJheShidWZmZXIpLnNldChkYXRhKTtcbiAgcmV0dXJuIGJ1ZmZlcjtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQWVPLFNBQVMsY0FBYyxNQUErQjtBQUMzRCxRQUFNLFNBQVMsSUFBSSxZQUFZLEtBQUssVUFBVTtBQUM5QyxNQUFJLFdBQVcsTUFBTSxFQUFFLElBQUksSUFBSTtBQUMvQixTQUFPO0FBQ1Q7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -1,4 +1,4 @@
1
- /// <reference path="./library.d.cts" />
1
+ /// <reference path="./library-references.d.cts" />
2
2
  /**
3
3
  * @file
4
4
  *
@@ -3,64 +3,6 @@ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
3
  if you want to view the source, please visit the github repository of this plugin
4
4
  */
5
5
 
6
- (function () {
7
- function ensureDisposeSymbols(symbolConstructor = Symbol) {
8
- symbolConstructor.asyncDispose ??= symbolConstructor.for('Symbol.asyncDispose');
9
- symbolConstructor.dispose ??= symbolConstructor.for('Symbol.dispose');
10
- }
11
-
12
- function ensureBrowserProcess() {
13
- const browserProcess = {
14
- browser: true,
15
- cwd() {
16
- return '/';
17
- },
18
- env: {},
19
- platform: 'android'
20
- };
21
-
22
- // eslint-disable-next-line obsidianmd/no-global-this, unicorn/no-unnecessary-global-this -- Must stay `globalThis`-qualified: in the emitted banner a bare `process` is a free identifier, so reading it where the host has none throws a ReferenceError instead of yielding `undefined`. That is the very case this function exists to handle.
23
- const existingProcess = globalThis.process;
24
-
25
- if (!existingProcess) {
26
- // eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
27
- globalThis.process = browserProcess;
28
- return;
29
- }
30
-
31
- if (existingProcess.versions?.node) {
32
- return;
33
- }
34
-
35
- const existingProcessRecord = existingProcess;
36
-
37
- for (const [key, value] of Object.entries(browserProcess)) {
38
- existingProcessRecord[key] ??= value;
39
- }
40
-
41
- existingProcessRecord['browser'] = true;
42
- }
43
-
44
- function keepName($unknown) {
45
- return $unknown;
46
- }
47
-
48
- (function initCjs() {
49
- // eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
50
- const globalThisRecord = globalThis;
51
- ensureDisposeSymbols();
52
- globalThisRecord['__name'] ??= keepName;
53
- globalThisRecord['__extractDefault'] ??= extractDefault;
54
-
55
- ensureBrowserProcess();
56
-
57
- // eslint-disable-next-line unicorn/consistent-function-scoping -- Serialized with initCjs into the banner; at module scope it would be left out of it.
58
- function extractDefault(module) {
59
- return module && module.__esModule && 'default' in module ? module.default : module;
60
- }
61
- })();
62
- })();
63
-
64
6
  "use strict";
65
7
  var __defProp = Object.defineProperty;
66
8
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -131,4 +73,4 @@ function uniqueInPlace(array) {
131
73
  unique,
132
74
  uniqueInPlace
133
75
  });
134
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2FycmF5LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBmaWxlXG4gKlxuICogQXJyYXkgdXRpbGl0aWVzLlxuICovXG5cbi8qKlxuICogRmlsdGVyIGFuIGFycmF5IGluIHBsYWNlLlxuICpcbiAqIEB0eXBlUGFyYW0gVCAtIFRoZSB0eXBlIG9mIHRoZSBhcnJheSBlbGVtZW50cy5cbiAqIEBwYXJhbSBhcnJheSAtIFRoZSBhcnJheSB0byBmaWx0ZXIuXG4gKiBAcGFyYW0gc2hvdWxkS2VlcCAtIFRoZSBwcmVkaWNhdGUgdG8gZmlsdGVyIHRoZSBhcnJheS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZpbHRlckluUGxhY2U8VD4oYXJyYXk6IFRbXSwgc2hvdWxkS2VlcDogKHZhbHVlOiBULCBpbmRleDogbnVtYmVyLCBhcnJheTogVFtdKSA9PiBib29sZWFuKTogdm9pZCB7XG4gIGNvbnN0IGxlbmd0aCA9IGFycmF5Lmxlbmd0aDtcbiAgbGV0IHdyaXRlSW5kZXggPSAwO1xuICBmb3IgKGxldCByZWFkSW5kZXggPSAwOyByZWFkSW5kZXggPCBsZW5ndGg7IHJlYWRJbmRleCsrKSB7XG4gICAgaWYgKCFPYmplY3QuaGFzT3duKGFycmF5LCByZWFkSW5kZXgpKSB7XG4gICAgICBjb250aW51ZTtcbiAgICB9XG5cbiAgICBjb25zdCBjdXJyZW50ID0gYXJyYXlbcmVhZEluZGV4XSBhcyBUO1xuICAgIGlmIChzaG91bGRLZWVwKGN1cnJlbnQsIHJlYWRJbmRleCwgYXJyYXkpKSB7XG4gICAgICBhcnJheVt3cml0ZUluZGV4KytdID0gY3VycmVudDtcbiAgICB9XG4gIH1cbiAgYXJyYXkubGVuZ3RoID0gd3JpdGVJbmRleDtcbn1cblxuLyoqXG4gKiBDb3BpZXMgYW4gaXRlcmFibGUgaW50byBhIG5ldyBhcnJheSwgc28gaXQgY2FuIGJlIHNhZmVseSBpdGVyYXRlZCB3aGlsZSB0aGUgb3JpZ2luYWwgaXMgbW9kaWZpZWQuXG4gKlxuICogVXNlIHRoaXMgd2hlbmV2ZXIgdGhlIGxvb3AgYm9keSAob3IgYW4gYXdhaXRlZCBjYWxsIGluc2lkZSBpdCkgYWRkcyB0byBvciByZW1vdmVzIGZyb20gdGhlIGNvbGxlY3Rpb25cbiAqIGJlaW5nIGl0ZXJhdGVkIFx1MjAxNCByZWxlYXNpbmcgbG9ja3MsIGNhbmNlbGxpbmcgdGltZXJzLCBzZXR0bGluZyBwZW5kaW5nIG9wZXJhdGlvbnMuIEl0ZXJhdGluZyB0aGUgbGl2ZVxuICogY29sbGVjdGlvbiBpbiB0aG9zZSBjYXNlcyBzaWxlbnRseSBza2lwcyBlbnRyaWVzLlxuICpcbiAqIFByZWZlciB0aGlzIG92ZXIgYW4gaW5saW5lIGBbLi4uY29sbGVjdGlvbl1gOiBpdCBzYXlzIHdoeSB0aGUgY29weSBleGlzdHMsIGFuZCBpdCBrZWVwcyB0aGUgY2FsbCBzaXRlXG4gKiBjbGVhciBvZiBgdW5pY29ybi9uby11c2VsZXNzLXNwcmVhZGAsIHdoaWNoIGNhbm5vdCB0ZWxsIGEgZGVmZW5zaXZlIGNvcHkgZnJvbSBhIHJlZHVuZGFudCBvbmUuXG4gKlxuICogVGhlIHJlc3VsdCBpcyBgcmVhZG9ubHlgOiBpdCBleGlzdHMgdG8gYmUgaXRlcmF0ZWQsIG5vdCB3b3JrZWQgb24uIE11dGF0aW5nIGl0IHdvdWxkIGNoYW5nZSBhIHRocm93YXdheVxuICogY29weSBhbmQgbGVhdmUgdGhlIG9yaWdpbmFsIHVudG91Y2hlZCwgd2hpY2ggaXMgbmV2ZXIgd2hhdCB0aGUgY2FsbGVyIHdhbnRzLlxuICpcbiAqIEB0eXBlUGFyYW0gVCAtIFRoZSB0eXBlIG9mIHRoZSBlbGVtZW50cy5cbiAqIEBwYXJhbSBjb2xsZWN0aW9uIC0gVGhlIGNvbGxlY3Rpb24gdG8gY29weS5cbiAqIEByZXR1cm5zIEEgbmV3IGFycmF5IGhvbGRpbmcgdGhlIGNvbGxlY3Rpb24ncyBlbGVtZW50cyBhdCB0aGUgdGltZSBvZiB0aGUgY2FsbC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNuYXBzaG90PFQ+KGNvbGxlY3Rpb246IEl0ZXJhYmxlPFQ+KTogcmVhZG9ubHkgVFtdIHtcbiAgcmV0dXJuIFsuLi5jb2xsZWN0aW9uXTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgZHVwbGljYXRlcyBmcm9tIGFuIGFycmF5LlxuICpcbiAqIEB0eXBlUGFyYW0gVCAtIFRoZSB0eXBlIG9mIHRoZSBhcnJheSBlbGVtZW50cy5cbiAqIEBwYXJhbSBhcnJheSAtIFRoZSBhcnJheSB0byByZW1vdmUgZHVwbGljYXRlcyBmcm9tLlxuICogQHJldHVybnMgVGhlIGFycmF5IHdpdGggZHVwbGljYXRlcyByZW1vdmVkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdW5pcXVlPFQ+KGFycmF5OiByZWFkb25seSBUW10pOiBUW10ge1xuICBjb25zdCBzZXQgPSBuZXcgU2V0PFQ+KCk7XG4gIHJldHVybiBhcnJheS5maWx0ZXIoKHZhbHVlKSA9PiB7XG4gICAgaWYgKHNldC5oYXModmFsdWUpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHNldC5hZGQodmFsdWUpO1xuICAgIHJldHVybiB0cnVlO1xuICB9KTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgZHVwbGljYXRlcyBmcm9tIGFuIGFycmF5IGluIHBsYWNlLlxuICpcbiAqIEBwYXJhbSBhcnJheSAtIFRoZSBhcnJheSB0byByZW1vdmUgZHVwbGljYXRlcyBmcm9tLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdW5pcXVlSW5QbGFjZShhcnJheTogdW5rbm93bltdKTogdm9pZCB7XG4gIGNvbnN0IHNldCA9IG5ldyBTZXQ8dW5rbm93bj4oKTtcbiAgZmlsdGVySW5QbGFjZShhcnJheSwgKHZhbHVlKSA9PiB7XG4gICAgaWYgKHNldC5oYXModmFsdWUpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHNldC5hZGQodmFsdWUpO1xuICAgIHJldHVybiB0cnVlO1xuICB9KTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFhTyxTQUFTLGNBQWlCLE9BQVksWUFBb0U7QUFDL0csUUFBTSxTQUFTLE1BQU07QUFDckIsTUFBSSxhQUFhO0FBQ2pCLFdBQVMsWUFBWSxHQUFHLFlBQVksUUFBUSxhQUFhO0FBQ3ZELFFBQUksQ0FBQyxPQUFPLE9BQU8sT0FBTyxTQUFTLEdBQUc7QUFDcEM7QUFBQSxJQUNGO0FBRUEsVUFBTSxVQUFVLE1BQU0sU0FBUztBQUMvQixRQUFJLFdBQVcsU0FBUyxXQUFXLEtBQUssR0FBRztBQUN6QyxZQUFNLFlBQVksSUFBSTtBQUFBLElBQ3hCO0FBQUEsRUFDRjtBQUNBLFFBQU0sU0FBUztBQUNqQjtBQW1CTyxTQUFTLFNBQVksWUFBdUM7QUFDakUsU0FBTyxDQUFDLEdBQUcsVUFBVTtBQUN2QjtBQVNPLFNBQVMsT0FBVSxPQUEwQjtBQUNsRCxRQUFNLE1BQU0sb0JBQUksSUFBTztBQUN2QixTQUFPLE1BQU0sT0FBTyxDQUFDLFVBQVU7QUFDN0IsUUFBSSxJQUFJLElBQUksS0FBSyxHQUFHO0FBQ2xCLGFBQU87QUFBQSxJQUNUO0FBQ0EsUUFBSSxJQUFJLEtBQUs7QUFDYixXQUFPO0FBQUEsRUFDVCxDQUFDO0FBQ0g7QUFPTyxTQUFTLGNBQWMsT0FBd0I7QUFDcEQsUUFBTSxNQUFNLG9CQUFJLElBQWE7QUFDN0IsZ0JBQWMsT0FBTyxDQUFDLFVBQVU7QUFDOUIsUUFBSSxJQUFJLElBQUksS0FBSyxHQUFHO0FBQ2xCLGFBQU87QUFBQSxJQUNUO0FBQ0EsUUFBSSxJQUFJLEtBQUs7QUFDYixXQUFPO0FBQUEsRUFDVCxDQUFDO0FBQ0g7IiwKICAibmFtZXMiOiBbXQp9Cg==
76
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2FycmF5LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBmaWxlXG4gKlxuICogQXJyYXkgdXRpbGl0aWVzLlxuICovXG5cbi8qKlxuICogRmlsdGVyIGFuIGFycmF5IGluIHBsYWNlLlxuICpcbiAqIEB0eXBlUGFyYW0gVCAtIFRoZSB0eXBlIG9mIHRoZSBhcnJheSBlbGVtZW50cy5cbiAqIEBwYXJhbSBhcnJheSAtIFRoZSBhcnJheSB0byBmaWx0ZXIuXG4gKiBAcGFyYW0gc2hvdWxkS2VlcCAtIFRoZSBwcmVkaWNhdGUgdG8gZmlsdGVyIHRoZSBhcnJheS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZpbHRlckluUGxhY2U8VD4oYXJyYXk6IFRbXSwgc2hvdWxkS2VlcDogKHZhbHVlOiBULCBpbmRleDogbnVtYmVyLCBhcnJheTogVFtdKSA9PiBib29sZWFuKTogdm9pZCB7XG4gIGNvbnN0IGxlbmd0aCA9IGFycmF5Lmxlbmd0aDtcbiAgbGV0IHdyaXRlSW5kZXggPSAwO1xuICBmb3IgKGxldCByZWFkSW5kZXggPSAwOyByZWFkSW5kZXggPCBsZW5ndGg7IHJlYWRJbmRleCsrKSB7XG4gICAgaWYgKCFPYmplY3QuaGFzT3duKGFycmF5LCByZWFkSW5kZXgpKSB7XG4gICAgICBjb250aW51ZTtcbiAgICB9XG5cbiAgICBjb25zdCBjdXJyZW50ID0gYXJyYXlbcmVhZEluZGV4XSBhcyBUO1xuICAgIGlmIChzaG91bGRLZWVwKGN1cnJlbnQsIHJlYWRJbmRleCwgYXJyYXkpKSB7XG4gICAgICBhcnJheVt3cml0ZUluZGV4KytdID0gY3VycmVudDtcbiAgICB9XG4gIH1cbiAgYXJyYXkubGVuZ3RoID0gd3JpdGVJbmRleDtcbn1cblxuLyoqXG4gKiBDb3BpZXMgYW4gaXRlcmFibGUgaW50byBhIG5ldyBhcnJheSwgc28gaXQgY2FuIGJlIHNhZmVseSBpdGVyYXRlZCB3aGlsZSB0aGUgb3JpZ2luYWwgaXMgbW9kaWZpZWQuXG4gKlxuICogVXNlIHRoaXMgd2hlbmV2ZXIgdGhlIGxvb3AgYm9keSAob3IgYW4gYXdhaXRlZCBjYWxsIGluc2lkZSBpdCkgYWRkcyB0byBvciByZW1vdmVzIGZyb20gdGhlIGNvbGxlY3Rpb25cbiAqIGJlaW5nIGl0ZXJhdGVkIFx1MjAxNCByZWxlYXNpbmcgbG9ja3MsIGNhbmNlbGxpbmcgdGltZXJzLCBzZXR0bGluZyBwZW5kaW5nIG9wZXJhdGlvbnMuIEl0ZXJhdGluZyB0aGUgbGl2ZVxuICogY29sbGVjdGlvbiBpbiB0aG9zZSBjYXNlcyBzaWxlbnRseSBza2lwcyBlbnRyaWVzLlxuICpcbiAqIFByZWZlciB0aGlzIG92ZXIgYW4gaW5saW5lIGBbLi4uY29sbGVjdGlvbl1gOiBpdCBzYXlzIHdoeSB0aGUgY29weSBleGlzdHMsIGFuZCBpdCBrZWVwcyB0aGUgY2FsbCBzaXRlXG4gKiBjbGVhciBvZiBgdW5pY29ybi9uby11c2VsZXNzLXNwcmVhZGAsIHdoaWNoIGNhbm5vdCB0ZWxsIGEgZGVmZW5zaXZlIGNvcHkgZnJvbSBhIHJlZHVuZGFudCBvbmUuXG4gKlxuICogVGhlIHJlc3VsdCBpcyBgcmVhZG9ubHlgOiBpdCBleGlzdHMgdG8gYmUgaXRlcmF0ZWQsIG5vdCB3b3JrZWQgb24uIE11dGF0aW5nIGl0IHdvdWxkIGNoYW5nZSBhIHRocm93YXdheVxuICogY29weSBhbmQgbGVhdmUgdGhlIG9yaWdpbmFsIHVudG91Y2hlZCwgd2hpY2ggaXMgbmV2ZXIgd2hhdCB0aGUgY2FsbGVyIHdhbnRzLlxuICpcbiAqIEB0eXBlUGFyYW0gVCAtIFRoZSB0eXBlIG9mIHRoZSBlbGVtZW50cy5cbiAqIEBwYXJhbSBjb2xsZWN0aW9uIC0gVGhlIGNvbGxlY3Rpb24gdG8gY29weS5cbiAqIEByZXR1cm5zIEEgbmV3IGFycmF5IGhvbGRpbmcgdGhlIGNvbGxlY3Rpb24ncyBlbGVtZW50cyBhdCB0aGUgdGltZSBvZiB0aGUgY2FsbC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNuYXBzaG90PFQ+KGNvbGxlY3Rpb246IEl0ZXJhYmxlPFQ+KTogcmVhZG9ubHkgVFtdIHtcbiAgcmV0dXJuIFsuLi5jb2xsZWN0aW9uXTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgZHVwbGljYXRlcyBmcm9tIGFuIGFycmF5LlxuICpcbiAqIEB0eXBlUGFyYW0gVCAtIFRoZSB0eXBlIG9mIHRoZSBhcnJheSBlbGVtZW50cy5cbiAqIEBwYXJhbSBhcnJheSAtIFRoZSBhcnJheSB0byByZW1vdmUgZHVwbGljYXRlcyBmcm9tLlxuICogQHJldHVybnMgVGhlIGFycmF5IHdpdGggZHVwbGljYXRlcyByZW1vdmVkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdW5pcXVlPFQ+KGFycmF5OiByZWFkb25seSBUW10pOiBUW10ge1xuICBjb25zdCBzZXQgPSBuZXcgU2V0PFQ+KCk7XG4gIHJldHVybiBhcnJheS5maWx0ZXIoKHZhbHVlKSA9PiB7XG4gICAgaWYgKHNldC5oYXModmFsdWUpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHNldC5hZGQodmFsdWUpO1xuICAgIHJldHVybiB0cnVlO1xuICB9KTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgZHVwbGljYXRlcyBmcm9tIGFuIGFycmF5IGluIHBsYWNlLlxuICpcbiAqIEBwYXJhbSBhcnJheSAtIFRoZSBhcnJheSB0byByZW1vdmUgZHVwbGljYXRlcyBmcm9tLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdW5pcXVlSW5QbGFjZShhcnJheTogdW5rbm93bltdKTogdm9pZCB7XG4gIGNvbnN0IHNldCA9IG5ldyBTZXQ8dW5rbm93bj4oKTtcbiAgZmlsdGVySW5QbGFjZShhcnJheSwgKHZhbHVlKSA9PiB7XG4gICAgaWYgKHNldC5oYXModmFsdWUpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHNldC5hZGQodmFsdWUpO1xuICAgIHJldHVybiB0cnVlO1xuICB9KTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQWFPLFNBQVMsY0FBaUIsT0FBWSxZQUFvRTtBQUMvRyxRQUFNLFNBQVMsTUFBTTtBQUNyQixNQUFJLGFBQWE7QUFDakIsV0FBUyxZQUFZLEdBQUcsWUFBWSxRQUFRLGFBQWE7QUFDdkQsUUFBSSxDQUFDLE9BQU8sT0FBTyxPQUFPLFNBQVMsR0FBRztBQUNwQztBQUFBLElBQ0Y7QUFFQSxVQUFNLFVBQVUsTUFBTSxTQUFTO0FBQy9CLFFBQUksV0FBVyxTQUFTLFdBQVcsS0FBSyxHQUFHO0FBQ3pDLFlBQU0sWUFBWSxJQUFJO0FBQUEsSUFDeEI7QUFBQSxFQUNGO0FBQ0EsUUFBTSxTQUFTO0FBQ2pCO0FBbUJPLFNBQVMsU0FBWSxZQUF1QztBQUNqRSxTQUFPLENBQUMsR0FBRyxVQUFVO0FBQ3ZCO0FBU08sU0FBUyxPQUFVLE9BQTBCO0FBQ2xELFFBQU0sTUFBTSxvQkFBSSxJQUFPO0FBQ3ZCLFNBQU8sTUFBTSxPQUFPLENBQUMsVUFBVTtBQUM3QixRQUFJLElBQUksSUFBSSxLQUFLLEdBQUc7QUFDbEIsYUFBTztBQUFBLElBQ1Q7QUFDQSxRQUFJLElBQUksS0FBSztBQUNiLFdBQU87QUFBQSxFQUNULENBQUM7QUFDSDtBQU9PLFNBQVMsY0FBYyxPQUF3QjtBQUNwRCxRQUFNLE1BQU0sb0JBQUksSUFBYTtBQUM3QixnQkFBYyxPQUFPLENBQUMsVUFBVTtBQUM5QixRQUFJLElBQUksSUFBSSxLQUFLLEdBQUc7QUFDbEIsYUFBTztBQUFBLElBQ1Q7QUFDQSxRQUFJLElBQUksS0FBSztBQUNiLFdBQU87QUFBQSxFQUNULENBQUM7QUFDSDsiLAogICJuYW1lcyI6IFtdCn0K
@@ -1,4 +1,4 @@
1
- /// <reference path="./library.d.cts" />
1
+ /// <reference path="./library-references.d.cts" />
2
2
  /**
3
3
  * @file
4
4
  *