@nejs/basic-extensions 2.6.0 → 2.8.0

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 (271) hide show
  1. package/.vscode/settings.json +5 -0
  2. package/README.md +6129 -1574
  3. package/dist/@nejs/basic-extensions.bundle.2.7.0.js +19 -0
  4. package/dist/@nejs/basic-extensions.bundle.2.7.0.js.map +7 -0
  5. package/dist/cjs/array.extensions.d.ts +39 -0
  6. package/dist/cjs/array.extensions.js +303 -0
  7. package/dist/cjs/array.extensions.js.map +1 -0
  8. package/dist/cjs/big.int.extension.d.ts +31 -0
  9. package/dist/cjs/big.int.extension.js +164 -0
  10. package/dist/cjs/big.int.extension.js.map +1 -0
  11. package/dist/cjs/{newClasses → classes}/asyncIterable.js +32 -44
  12. package/dist/cjs/classes/asyncIterable.js.map +1 -0
  13. package/dist/cjs/{newClasses → classes}/deferred.js +66 -138
  14. package/dist/cjs/classes/deferred.js.map +1 -0
  15. package/dist/cjs/{newClasses → classes}/descriptor.js +56 -90
  16. package/dist/cjs/classes/descriptor.js.map +1 -0
  17. package/dist/cjs/classes/index.d.ts +13 -0
  18. package/dist/cjs/classes/index.js +57 -0
  19. package/dist/cjs/classes/index.js.map +1 -0
  20. package/dist/cjs/classes/introspector.d.ts +20 -0
  21. package/dist/cjs/classes/introspector.js +130 -0
  22. package/dist/cjs/classes/introspector.js.map +1 -0
  23. package/dist/cjs/{newClasses → classes}/iterable.js +42 -63
  24. package/dist/cjs/classes/iterable.js.map +1 -0
  25. package/dist/cjs/classes/param.parser.d.ts +227 -0
  26. package/dist/cjs/classes/param.parser.js +242 -0
  27. package/dist/cjs/classes/param.parser.js.map +1 -0
  28. package/dist/cjs/classes/pluggable.proxy.d.ts +152 -0
  29. package/dist/cjs/classes/pluggable.proxy.js +444 -0
  30. package/dist/cjs/classes/pluggable.proxy.js.map +1 -0
  31. package/dist/cjs/{newClasses → classes}/refmap.js +18 -30
  32. package/dist/cjs/classes/refmap.js.map +1 -0
  33. package/dist/cjs/{newClasses → classes}/refset.js +28 -47
  34. package/dist/cjs/classes/refset.js.map +1 -0
  35. package/dist/cjs/classes/symkeys.d.ts +292 -0
  36. package/dist/cjs/classes/symkeys.js +424 -0
  37. package/dist/cjs/classes/symkeys.js.map +1 -0
  38. package/dist/cjs/classes/type.d.ts +56 -0
  39. package/dist/cjs/classes/type.js +405 -0
  40. package/dist/cjs/classes/type.js.map +1 -0
  41. package/dist/cjs/function.extensions.js +757 -0
  42. package/dist/cjs/function.extensions.js.map +1 -0
  43. package/dist/cjs/global.this.js +261 -0
  44. package/dist/cjs/global.this.js.map +1 -0
  45. package/dist/cjs/index.d.ts +4 -3
  46. package/dist/cjs/index.js +62 -32
  47. package/dist/cjs/index.js.map +1 -1
  48. package/dist/cjs/json.extensions.d.ts +2 -0
  49. package/dist/cjs/json.extensions.js +107 -0
  50. package/dist/cjs/json.extensions.js.map +1 -0
  51. package/dist/{mjs/mapextensions.d.ts → cjs/map.extensions.d.ts} +1 -0
  52. package/dist/cjs/map.extensions.js +142 -0
  53. package/dist/cjs/map.extensions.js.map +1 -0
  54. package/dist/cjs/number.extension.d.ts +44 -0
  55. package/dist/cjs/number.extension.js +260 -0
  56. package/dist/cjs/number.extension.js.map +1 -0
  57. package/dist/cjs/object.extensions.d.ts +62 -0
  58. package/dist/cjs/object.extensions.js +1116 -0
  59. package/dist/cjs/object.extensions.js.map +1 -0
  60. package/dist/cjs/proxy.extensions.d.ts +2 -0
  61. package/dist/cjs/proxy.extensions.js +207 -0
  62. package/dist/cjs/proxy.extensions.js.map +1 -0
  63. package/dist/cjs/reflect.extensions.js +316 -0
  64. package/dist/cjs/reflect.extensions.js.map +1 -0
  65. package/dist/cjs/regular.expression.extensions.d.ts +2 -0
  66. package/dist/cjs/regular.expression.extensions.js +423 -0
  67. package/dist/cjs/regular.expression.extensions.js.map +1 -0
  68. package/dist/cjs/set.extensions.d.ts +40 -0
  69. package/dist/cjs/{setextensions.js → set.extensions.js} +150 -2
  70. package/dist/cjs/set.extensions.js.map +1 -0
  71. package/dist/cjs/string.extensions.js +471 -0
  72. package/dist/cjs/string.extensions.js.map +1 -0
  73. package/dist/{mjs/symbolextensions.d.ts → cjs/symbol.extensions.d.ts} +1 -0
  74. package/dist/cjs/symbol.extensions.js +259 -0
  75. package/dist/cjs/symbol.extensions.js.map +1 -0
  76. package/dist/cjs/{weakrefextensions.js → weakref.extensions.js} +1 -1
  77. package/dist/cjs/weakref.extensions.js.map +1 -0
  78. package/dist/mjs/array.extensions.d.ts +39 -0
  79. package/dist/mjs/array.extensions.js +300 -0
  80. package/dist/mjs/array.extensions.js.map +1 -0
  81. package/dist/mjs/big.int.extension.d.ts +31 -0
  82. package/dist/mjs/big.int.extension.js +161 -0
  83. package/dist/mjs/big.int.extension.js.map +1 -0
  84. package/dist/mjs/classes/asyncIterable.js.map +1 -0
  85. package/dist/mjs/classes/deferred.js.map +1 -0
  86. package/dist/mjs/{newClasses → classes}/descriptor.js +7 -4
  87. package/dist/mjs/classes/descriptor.js.map +1 -0
  88. package/dist/mjs/classes/index.d.ts +13 -0
  89. package/dist/mjs/classes/index.js +40 -0
  90. package/dist/mjs/classes/index.js.map +1 -0
  91. package/dist/mjs/classes/introspector.d.ts +20 -0
  92. package/dist/mjs/classes/introspector.js +126 -0
  93. package/dist/mjs/classes/introspector.js.map +1 -0
  94. package/dist/mjs/classes/iterable.js.map +1 -0
  95. package/dist/mjs/classes/param.parser.d.ts +227 -0
  96. package/dist/mjs/classes/param.parser.js +238 -0
  97. package/dist/mjs/classes/param.parser.js.map +1 -0
  98. package/dist/mjs/classes/pluggable.proxy.d.ts +152 -0
  99. package/dist/mjs/classes/pluggable.proxy.js +438 -0
  100. package/dist/mjs/classes/pluggable.proxy.js.map +1 -0
  101. package/dist/mjs/{newClasses → classes}/refmap.js +3 -3
  102. package/dist/mjs/classes/refmap.js.map +1 -0
  103. package/dist/mjs/classes/refset.js.map +1 -0
  104. package/dist/mjs/classes/symkeys.d.ts +292 -0
  105. package/dist/mjs/classes/symkeys.js +420 -0
  106. package/dist/mjs/classes/symkeys.js.map +1 -0
  107. package/dist/mjs/classes/type.d.ts +56 -0
  108. package/dist/mjs/classes/type.js +401 -0
  109. package/dist/mjs/classes/type.js.map +1 -0
  110. package/dist/mjs/function.extensions.js +754 -0
  111. package/dist/mjs/function.extensions.js.map +1 -0
  112. package/dist/mjs/global.this.js +258 -0
  113. package/dist/mjs/global.this.js.map +1 -0
  114. package/dist/mjs/index.d.ts +4 -3
  115. package/dist/mjs/index.js +49 -19
  116. package/dist/mjs/index.js.map +1 -1
  117. package/dist/mjs/json.extensions.d.ts +2 -0
  118. package/dist/mjs/json.extensions.js +104 -0
  119. package/dist/mjs/json.extensions.js.map +1 -0
  120. package/dist/{cjs/mapextensions.d.ts → mjs/map.extensions.d.ts} +1 -0
  121. package/dist/mjs/map.extensions.js +139 -0
  122. package/dist/mjs/map.extensions.js.map +1 -0
  123. package/dist/mjs/number.extension.d.ts +44 -0
  124. package/dist/mjs/number.extension.js +257 -0
  125. package/dist/mjs/number.extension.js.map +1 -0
  126. package/dist/mjs/object.extensions.d.ts +62 -0
  127. package/dist/mjs/object.extensions.js +1112 -0
  128. package/dist/mjs/object.extensions.js.map +1 -0
  129. package/dist/mjs/proxy.extensions.d.ts +2 -0
  130. package/dist/mjs/proxy.extensions.js +204 -0
  131. package/dist/mjs/proxy.extensions.js.map +1 -0
  132. package/dist/mjs/reflect.extensions.js +313 -0
  133. package/dist/mjs/reflect.extensions.js.map +1 -0
  134. package/dist/mjs/regular.expression.extensions.d.ts +2 -0
  135. package/dist/mjs/regular.expression.extensions.js +420 -0
  136. package/dist/mjs/regular.expression.extensions.js.map +1 -0
  137. package/dist/mjs/set.extensions.d.ts +40 -0
  138. package/dist/mjs/{setextensions.js → set.extensions.js} +149 -1
  139. package/dist/mjs/set.extensions.js.map +1 -0
  140. package/dist/mjs/string.extensions.js +468 -0
  141. package/dist/mjs/string.extensions.js.map +1 -0
  142. package/dist/{cjs/symbolextensions.d.ts → mjs/symbol.extensions.d.ts} +1 -0
  143. package/dist/mjs/symbol.extensions.js +256 -0
  144. package/dist/mjs/symbol.extensions.js.map +1 -0
  145. package/dist/mjs/{weakrefextensions.js → weakref.extensions.js} +1 -1
  146. package/dist/mjs/weakref.extensions.js.map +1 -0
  147. package/docs/index.html +24045 -5805
  148. package/package.json +6 -4
  149. package/repl.bootstrap.js +21 -0
  150. package/src/array.extensions.js +322 -0
  151. package/src/big.int.extension.js +163 -0
  152. package/src/{newClasses → classes}/descriptor.js +16 -12
  153. package/src/classes/index.js +51 -0
  154. package/src/classes/introspector.js +167 -0
  155. package/src/classes/param.parser.js +253 -0
  156. package/src/classes/pluggable.proxy.js +485 -0
  157. package/src/{newClasses → classes}/refmap.js +5 -3
  158. package/src/classes/symkeys.js +464 -0
  159. package/src/classes/type.js +427 -0
  160. package/src/function.extensions.js +818 -0
  161. package/src/global.this.js +304 -0
  162. package/src/index.js +56 -23
  163. package/src/json.extensions.js +108 -0
  164. package/src/map.extensions.js +144 -0
  165. package/src/number.extension.js +273 -0
  166. package/src/object.extensions.js +1222 -0
  167. package/src/proxy.extensions.js +229 -0
  168. package/src/reflect.extensions.js +346 -0
  169. package/src/regular.expression.extensions.js +451 -0
  170. package/src/{setextensions.js → set.extensions.js} +151 -2
  171. package/src/string.extensions.js +515 -0
  172. package/src/symbol.extensions.js +268 -0
  173. package/tests/newClasses/refmap.test.js +3 -2
  174. package/tsconfig.base.json +5 -3
  175. package/tsconfig.cjs.json +2 -2
  176. package/tsconfig.esm.json +2 -2
  177. package/dist/@nejs/basic-extensions.bundle.2.5.0.js +0 -8
  178. package/dist/@nejs/basic-extensions.bundle.2.5.0.js.map +0 -7
  179. package/dist/cjs/arrayextensions.d.ts +0 -10
  180. package/dist/cjs/arrayextensions.js +0 -73
  181. package/dist/cjs/arrayextensions.js.map +0 -1
  182. package/dist/cjs/functionextensions.js +0 -202
  183. package/dist/cjs/functionextensions.js.map +0 -1
  184. package/dist/cjs/globals.js +0 -166
  185. package/dist/cjs/globals.js.map +0 -1
  186. package/dist/cjs/mapextensions.js +0 -32
  187. package/dist/cjs/mapextensions.js.map +0 -1
  188. package/dist/cjs/newClasses/asyncIterable.js.map +0 -1
  189. package/dist/cjs/newClasses/deferred.js.map +0 -1
  190. package/dist/cjs/newClasses/descriptor.js.map +0 -1
  191. package/dist/cjs/newClasses/iterable.js.map +0 -1
  192. package/dist/cjs/newClasses/refmap.js.map +0 -1
  193. package/dist/cjs/newClasses/refset.js.map +0 -1
  194. package/dist/cjs/objectextensions.d.ts +0 -11
  195. package/dist/cjs/objectextensions.js +0 -232
  196. package/dist/cjs/objectextensions.js.map +0 -1
  197. package/dist/cjs/reflectextensions.js +0 -111
  198. package/dist/cjs/reflectextensions.js.map +0 -1
  199. package/dist/cjs/setextensions.d.ts +0 -2
  200. package/dist/cjs/setextensions.js.map +0 -1
  201. package/dist/cjs/stringextensions.js +0 -158
  202. package/dist/cjs/stringextensions.js.map +0 -1
  203. package/dist/cjs/symbolextensions.js +0 -69
  204. package/dist/cjs/symbolextensions.js.map +0 -1
  205. package/dist/cjs/weakrefextensions.js.map +0 -1
  206. package/dist/mjs/arrayextensions.d.ts +0 -10
  207. package/dist/mjs/arrayextensions.js +0 -70
  208. package/dist/mjs/arrayextensions.js.map +0 -1
  209. package/dist/mjs/functionextensions.js +0 -199
  210. package/dist/mjs/functionextensions.js.map +0 -1
  211. package/dist/mjs/globals.js +0 -163
  212. package/dist/mjs/globals.js.map +0 -1
  213. package/dist/mjs/mapextensions.js +0 -29
  214. package/dist/mjs/mapextensions.js.map +0 -1
  215. package/dist/mjs/newClasses/asyncIterable.js.map +0 -1
  216. package/dist/mjs/newClasses/deferred.js.map +0 -1
  217. package/dist/mjs/newClasses/descriptor.js.map +0 -1
  218. package/dist/mjs/newClasses/iterable.js.map +0 -1
  219. package/dist/mjs/newClasses/refmap.js.map +0 -1
  220. package/dist/mjs/newClasses/refset.js.map +0 -1
  221. package/dist/mjs/objectextensions.d.ts +0 -11
  222. package/dist/mjs/objectextensions.js +0 -229
  223. package/dist/mjs/objectextensions.js.map +0 -1
  224. package/dist/mjs/reflectextensions.js +0 -108
  225. package/dist/mjs/reflectextensions.js.map +0 -1
  226. package/dist/mjs/setextensions.d.ts +0 -2
  227. package/dist/mjs/setextensions.js.map +0 -1
  228. package/dist/mjs/stringextensions.js +0 -155
  229. package/dist/mjs/stringextensions.js.map +0 -1
  230. package/dist/mjs/symbolextensions.js +0 -66
  231. package/dist/mjs/symbolextensions.js.map +0 -1
  232. package/dist/mjs/weakrefextensions.js.map +0 -1
  233. package/src/arrayextensions.js +0 -75
  234. package/src/functionextensions.js +0 -225
  235. package/src/globals.js +0 -196
  236. package/src/mapextensions.js +0 -32
  237. package/src/objectextensions.js +0 -256
  238. package/src/reflectextensions.js +0 -118
  239. package/src/stringextensions.js +0 -166
  240. package/src/symbolextensions.js +0 -69
  241. /package/dist/cjs/{newClasses → classes}/asyncIterable.d.ts +0 -0
  242. /package/dist/cjs/{newClasses → classes}/deferred.d.ts +0 -0
  243. /package/dist/cjs/{newClasses → classes}/descriptor.d.ts +0 -0
  244. /package/dist/cjs/{newClasses → classes}/iterable.d.ts +0 -0
  245. /package/dist/cjs/{newClasses → classes}/refmap.d.ts +0 -0
  246. /package/dist/cjs/{newClasses → classes}/refset.d.ts +0 -0
  247. /package/dist/cjs/{functionextensions.d.ts → function.extensions.d.ts} +0 -0
  248. /package/dist/cjs/{globals.d.ts → global.this.d.ts} +0 -0
  249. /package/dist/cjs/{reflectextensions.d.ts → reflect.extensions.d.ts} +0 -0
  250. /package/dist/cjs/{stringextensions.d.ts → string.extensions.d.ts} +0 -0
  251. /package/dist/cjs/{weakrefextensions.d.ts → weakref.extensions.d.ts} +0 -0
  252. /package/dist/mjs/{newClasses → classes}/asyncIterable.d.ts +0 -0
  253. /package/dist/mjs/{newClasses → classes}/asyncIterable.js +0 -0
  254. /package/dist/mjs/{newClasses → classes}/deferred.d.ts +0 -0
  255. /package/dist/mjs/{newClasses → classes}/deferred.js +0 -0
  256. /package/dist/mjs/{newClasses → classes}/descriptor.d.ts +0 -0
  257. /package/dist/mjs/{newClasses → classes}/iterable.d.ts +0 -0
  258. /package/dist/mjs/{newClasses → classes}/iterable.js +0 -0
  259. /package/dist/mjs/{newClasses → classes}/refmap.d.ts +0 -0
  260. /package/dist/mjs/{newClasses → classes}/refset.d.ts +0 -0
  261. /package/dist/mjs/{newClasses → classes}/refset.js +0 -0
  262. /package/dist/mjs/{functionextensions.d.ts → function.extensions.d.ts} +0 -0
  263. /package/dist/mjs/{globals.d.ts → global.this.d.ts} +0 -0
  264. /package/dist/mjs/{reflectextensions.d.ts → reflect.extensions.d.ts} +0 -0
  265. /package/dist/mjs/{stringextensions.d.ts → string.extensions.d.ts} +0 -0
  266. /package/dist/mjs/{weakrefextensions.d.ts → weakref.extensions.d.ts} +0 -0
  267. /package/src/{newClasses → classes}/asyncIterable.js +0 -0
  268. /package/src/{newClasses → classes}/deferred.js +0 -0
  269. /package/src/{newClasses → classes}/iterable.js +0 -0
  270. /package/src/{newClasses → classes}/refset.js +0 -0
  271. /package/src/{weakrefextensions.js → weakref.extensions.js} +0 -0
@@ -1,16 +1,4 @@
1
1
  "use strict";
2
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
3
- if (kind === "m") throw new TypeError("Private method is not writable");
4
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
5
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
6
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
7
- };
8
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
9
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
10
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
11
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
12
- };
13
- var _AsyncIterable_elements, _AsyncIterator_asyncIterable, _AsyncIterator_asyncIterator;
14
2
  Object.defineProperty(exports, "__esModule", { value: true });
15
3
  exports.AsyncIteratorExtensions = exports.AsyncIterableExtensions = exports.AsyncIterator = exports.AsyncIterable = void 0;
16
4
  const extension_1 = require("@nejs/extension");
@@ -23,6 +11,11 @@ const extension_1 = require("@nejs/extension");
23
11
  * arrives over time.
24
12
  */
25
13
  class AsyncIterable {
14
+ /**
15
+ * Private field to store the elements of the async iterable.
16
+ * @private
17
+ */
18
+ #elements = [];
26
19
  /**
27
20
  * Constructs an instance of AsyncIterable. Similar to Iterable, it can be
28
21
  * initialized with either an iterable object, an async generator function,
@@ -40,22 +33,17 @@ class AsyncIterable {
40
33
  * argument is not an iterable or an async generator function.
41
34
  */
42
35
  constructor(elementsOrFirstElement, ...moreElements) {
43
- /**
44
- * Private field to store the elements of the async iterable.
45
- * @private
46
- */
47
- _AsyncIterable_elements.set(this, []);
48
36
  if (elementsOrFirstElement != null &&
49
37
  (typeof elementsOrFirstElement[Symbol.iterator] === 'function' ||
50
38
  typeof elementsOrFirstElement[Symbol.asyncIterator] === 'function')) {
51
- __classPrivateFieldSet(this, _AsyncIterable_elements, [...elementsOrFirstElement, ...moreElements], "f");
39
+ this.#elements = [...elementsOrFirstElement, ...moreElements];
52
40
  }
53
41
  else if (typeof elementsOrFirstElement === 'function' &&
54
42
  elementsOrFirstElement.constructor.name === 'AsyncGeneratorFunction') {
55
- __classPrivateFieldSet(this, _AsyncIterable_elements, elementsOrFirstElement(), "f");
43
+ this.#elements = elementsOrFirstElement();
56
44
  }
57
45
  else {
58
- __classPrivateFieldSet(this, _AsyncIterable_elements, [elementsOrFirstElement, ...moreElements], "f");
46
+ this.#elements = [elementsOrFirstElement, ...moreElements];
59
47
  }
60
48
  }
61
49
  /**
@@ -68,8 +56,8 @@ class AsyncIterable {
68
56
  * @returns {AsyncGenerator} An async generator that yields each element as
69
57
  * a Promise.
70
58
  */
71
- async *[(_AsyncIterable_elements = new WeakMap(), Symbol.asyncIterator)]() {
72
- for await (const element of __classPrivateFieldGet(this, _AsyncIterable_elements, "f")) {
59
+ async *[Symbol.asyncIterator]() {
60
+ for await (const element of this.#elements) {
73
61
  // No need to wrap as a promise here since `for await...of` can handle
74
62
  // both Promises and non-Promise values.
75
63
  yield element;
@@ -119,33 +107,18 @@ class AsyncIterator {
119
107
  * async generator function itself.
120
108
  */
121
109
  constructor(asyncIterable) {
122
- /**
123
- * The object from which its iterator functionality is derived.
124
- *
125
- * @type {object}
126
- * @private
127
- */
128
- _AsyncIterator_asyncIterable.set(this, null);
129
- /**
130
- * The results of a call to the iterable's `[Symbol.asyncIterator]`
131
- * generator function.
132
- *
133
- * @type {object}
134
- * @private
135
- */
136
- _AsyncIterator_asyncIterator.set(this, null);
137
110
  if (typeof asyncIterable === 'function' &&
138
111
  asyncIterable.constructor.name === 'AsyncGeneratorFunction') {
139
- __classPrivateFieldSet(this, _AsyncIterator_asyncIterable, asyncIterable(), "f");
112
+ this.#asyncIterable = asyncIterable();
140
113
  }
141
114
  else if (!asyncIterable ||
142
115
  !Reflect.has(asyncIterable, Symbol.asyncIterator)) {
143
116
  throw new TypeError('Value used to instantiate AsyncIterator is not an async iterable');
144
117
  }
145
118
  else {
146
- __classPrivateFieldSet(this, _AsyncIterator_asyncIterable, asyncIterable, "f");
119
+ this.#asyncIterable = asyncIterable;
147
120
  }
148
- __classPrivateFieldSet(this, _AsyncIterator_asyncIterator, __classPrivateFieldGet(this, _AsyncIterator_asyncIterable, "f")[Symbol.asyncIterator](), "f");
121
+ this.#asyncIterator = this.#asyncIterable[Symbol.asyncIterator]();
149
122
  }
150
123
  /**
151
124
  * Returns a new `Array` derived from the iterable this object
@@ -169,7 +142,7 @@ class AsyncIterator {
169
142
  * @returns {object} the object containing the `[Symbol.iterator]`
170
143
  */
171
144
  get asyncIterable() {
172
- return __classPrivateFieldGet(this, _AsyncIterator_asyncIterable, "f");
145
+ return this.#asyncIterable;
173
146
  }
174
147
  /**
175
148
  * The function retrieves the next value in the iterator. If the
@@ -179,7 +152,7 @@ class AsyncIterator {
179
152
  * @returns {any} the next value
180
153
  */
181
154
  async next() {
182
- const result = await __classPrivateFieldGet(this, _AsyncIterator_asyncIterator, "f").next();
155
+ const result = await this.#asyncIterator.next();
183
156
  if (result.done) {
184
157
  return { value: undefined, done: true };
185
158
  }
@@ -192,7 +165,7 @@ class AsyncIterator {
192
165
  * iterated over again.
193
166
  */
194
167
  async reset() {
195
- __classPrivateFieldSet(this, _AsyncIterator_asyncIterator, __classPrivateFieldGet(this, _AsyncIterator_asyncIterable, "f")[Symbol.asyncIterator](), "f");
168
+ this.#asyncIterator = this.#asyncIterable[Symbol.asyncIterator]();
196
169
  }
197
170
  /**
198
171
  * The existence of this symbol on the object instances, indicates that
@@ -202,7 +175,7 @@ class AsyncIterator {
202
175
  * @returns {AsyncIterable} this is returned since this object is already
203
176
  * conforming to the expected JavaScript AsyncIterator interface
204
177
  */
205
- [(_AsyncIterator_asyncIterable = new WeakMap(), _AsyncIterator_asyncIterator = new WeakMap(), Symbol.asyncIterator)]() {
178
+ [Symbol.asyncIterator]() {
206
179
  return this;
207
180
  }
208
181
  /**
@@ -214,6 +187,21 @@ class AsyncIterator {
214
187
  get [Symbol.toStringTag]() {
215
188
  return this.constructor.name;
216
189
  }
190
+ /**
191
+ * The object from which its iterator functionality is derived.
192
+ *
193
+ * @type {object}
194
+ * @private
195
+ */
196
+ #asyncIterable = null;
197
+ /**
198
+ * The results of a call to the iterable's `[Symbol.asyncIterator]`
199
+ * generator function.
200
+ *
201
+ * @type {object}
202
+ * @private
203
+ */
204
+ #asyncIterator = null;
217
205
  }
218
206
  exports.AsyncIterator = AsyncIterator;
219
207
  exports.AsyncIterableExtensions = new extension_1.Extension(AsyncIterable);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"asyncIterable.js","sourceRoot":"","sources":["../../../src/classes/asyncIterable.js"],"names":[],"mappings":"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"}
@@ -1,16 +1,4 @@
1
1
  "use strict";
2
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
3
- if (kind === "m") throw new TypeError("Private method is not writable");
4
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
5
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
6
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
7
- };
8
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
9
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
10
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
11
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
12
- };
13
- var _Deferred_promise, _Deferred_reject, _Deferred_resolve, _Deferred_rejected, _Deferred_resolved, _Deferred_settled;
14
2
  Object.defineProperty(exports, "__esModule", { value: true });
15
3
  exports.DeferredExtension = exports.Deferred = void 0;
16
4
  const extension_1 = require("@nejs/extension");
@@ -36,6 +24,54 @@ const extension_1 = require("@nejs/extension");
36
24
  * allows seamless integration with code expecting Promise-like objects.
37
25
  */
38
26
  class Deferred extends Promise {
27
+ /**
28
+ * The promise backing this deferred object. Created when the constructor
29
+ * runs, this promise is what all `Promise.prototype` functions are routed
30
+ * to.
31
+ *
32
+ * @type {Promise}
33
+ */
34
+ #promise = null;
35
+ /**
36
+ * The reject() resolver that will be assigned when a new instance is
37
+ * created. Invoking this function with or without a `reason` will cause
38
+ * the deferred's promise to be settled.
39
+ *
40
+ * @type {function}
41
+ */
42
+ #reject = null;
43
+ /**
44
+ * The resolve() resolver that will be assigned when a new instance is
45
+ * created. Invoking this function with or without a `value` will cause
46
+ * the deferred's promise to be settled.
47
+ *
48
+ * @type {function}
49
+ */
50
+ #resolve = null;
51
+ #rejected = false;
52
+ #resolved = false;
53
+ /**
54
+ * When the Deferred is settled with {@link Deferred.resolve}, the `value`
55
+ * passed to that function will be set here as well.
56
+ *
57
+ * @type {*}
58
+ */
59
+ value = null;
60
+ /**
61
+ * When the Deferred is settled with {@link Deferred.reject}, the `reason`
62
+ * passed to that rejection will also be stored here.
63
+ *
64
+ * @type {*}
65
+ */
66
+ reason = null;
67
+ /**
68
+ * When either {@link Deferred.resolve} or {@link Deferred.reject} are called,
69
+ * this property is set to `true`. Its current status at any time can be
70
+ * queried using the {@link Deferred.settled} getter.
71
+ *
72
+ * @type {boolean}
73
+ */
74
+ #settled = false;
39
75
  /**
40
76
  * The constructor for Deferred instances. By default, a new Deferred will
41
77
  * have three important properties: `promise`, `resolve`, and `reject`.
@@ -91,148 +127,40 @@ class Deferred extends Promise {
91
127
  config?.executor(resolve, reject);
92
128
  }
93
129
  });
94
- /**
95
- * The promise backing this deferred object. Created when the constructor
96
- * runs, this promise is what all `Promise.prototype` functions are routed
97
- * to.
98
- *
99
- * @type {Promise}
100
- */
101
- _Deferred_promise.set(this, null
102
- /**
103
- * The reject() resolver that will be assigned when a new instance is
104
- * created. Invoking this function with or without a `reason` will cause
105
- * the deferred's promise to be settled.
106
- *
107
- * @type {function}
108
- */
109
- );
110
- /**
111
- * The reject() resolver that will be assigned when a new instance is
112
- * created. Invoking this function with or without a `reason` will cause
113
- * the deferred's promise to be settled.
114
- *
115
- * @type {function}
116
- */
117
- _Deferred_reject.set(this, null
118
- /**
119
- * The resolve() resolver that will be assigned when a new instance is
120
- * created. Invoking this function with or without a `value` will cause
121
- * the deferred's promise to be settled.
122
- *
123
- * @type {function}
124
- */
125
- );
126
- /**
127
- * The resolve() resolver that will be assigned when a new instance is
128
- * created. Invoking this function with or without a `value` will cause
129
- * the deferred's promise to be settled.
130
- *
131
- * @type {function}
132
- */
133
- _Deferred_resolve.set(this, null);
134
- _Deferred_rejected.set(this, false);
135
- _Deferred_resolved.set(this, false
136
- /**
137
- * When the Deferred is settled with {@link Deferred.resolve}, the `value`
138
- * passed to that function will be set here as well.
139
- *
140
- * @type {*}
141
- */
142
- );
143
- /**
144
- * When the Deferred is settled with {@link Deferred.resolve}, the `value`
145
- * passed to that function will be set here as well.
146
- *
147
- * @type {*}
148
- */
149
- this.value = null;
150
- /**
151
- * When the Deferred is settled with {@link Deferred.reject}, the `reason`
152
- * passed to that rejection will also be stored here.
153
- *
154
- * @type {*}
155
- */
156
- this.reason = null;
157
- /**
158
- * When either {@link Deferred.resolve} or {@link Deferred.reject} are called,
159
- * this property is set to `true`. Its current status at any time can be
160
- * queried using the {@link Deferred.settled} getter.
161
- *
162
- * @type {boolean}
163
- */
164
- _Deferred_settled.set(this, false
165
- /**
166
- * The constructor for Deferred instances. By default, a new Deferred will
167
- * have three important properties: `promise`, `resolve`, and `reject`.
168
- *
169
- * The constructor takes an object called `options`. It can have the
170
- * following properties:
171
- *
172
- * ```
173
- * interface BaseDeferredOptions {
174
- * // Deferreds store the value or reason. To turn this off, pass true
175
- * // to this option.
176
- * doNotTrackAnswers?: boolean;
177
- * }
178
- *
179
- * interface ResolveDeferredOptions {
180
- * // Passing in an option object with a resolve value will auto resolve
181
- * // the Deferred with your value. An error will be raised if both
182
- * // resolve and reject are supplied at the same time.
183
- * resolve?: (value: any) => void;
184
- * }
185
- *
186
- * interface RejectDeferredOptions {
187
- * // Passing in an option object with a reject reason will auto reject
188
- * // the Deferred with your reason. An error will be raised if both
189
- * // resolve and reject are supplied at the same time.
190
- * reject?: (reason: any) => void;
191
- * }
192
- *
193
- * type DeferredOptions = BaseDeferredOptions &
194
- * (ResolveDeferredOptions | RejectDeferredOptions)
195
- * ```
196
- *
197
- * @param {object} options see above for examples on supported options, but
198
- * when supplied, the constructor can take instructions on how to auto
199
- * resolve or reject the deferred created here.
200
- */
201
- );
202
130
  // Define the resolve function for the Deferred instance
203
- __classPrivateFieldSet(this, _Deferred_resolve, (value) => {
131
+ this.#resolve = (value) => {
204
132
  // If doNotTrackAnswers is not set to true, store the value
205
133
  if (config?.doNotTrackAnswers !== true) {
206
134
  this.value = value;
207
135
  }
208
136
  // Mark the Deferred instance as settled
209
- __classPrivateFieldSet(this, _Deferred_settled, true, "f");
137
+ this.#settled = true;
210
138
  // Mark the Deferred instance as resolved
211
- __classPrivateFieldSet(this, _Deferred_resolved, true, "f");
139
+ this.#resolved = true;
212
140
  // Resolve the promise with the provided value
213
141
  return _resolve(value);
214
- }, "f");
142
+ };
215
143
  // Define the reject function for the Deferred instance
216
- __classPrivateFieldSet(this, _Deferred_reject, async (reason) => {
144
+ this.#reject = async (reason) => {
217
145
  // If doNotTrackAnswers is not set to true, store the reason
218
146
  if (config?.doNotTrackAnswers !== true) {
219
147
  this.reason = reason;
220
148
  }
221
149
  // Mark the Deferred instance as settled
222
- __classPrivateFieldSet(this, _Deferred_settled, true, "f");
150
+ this.#settled = true;
223
151
  // Mark the Deferred as being rejected.
224
- __classPrivateFieldSet(this, _Deferred_rejected, true, "f");
152
+ this.#rejected = true;
225
153
  // Reject the promise with the provided reason
226
154
  return _reject(reason);
227
- }, "f");
228
- __classPrivateFieldSet(this, _Deferred_promise, this, "f");
155
+ };
156
+ this.#promise = this;
229
157
  // If a resolve option is provided, resolve the Deferred instance with it
230
158
  if (config?.resolve) {
231
- __classPrivateFieldGet(this, _Deferred_resolve, "f").call(this, config?.resolve);
159
+ this.#resolve(config?.resolve);
232
160
  }
233
161
  // If a reject option is provided, reject the Deferred instance with it
234
162
  else if (config?.reject) {
235
- __classPrivateFieldGet(this, _Deferred_reject, "f").call(this, config?.reject);
163
+ this.#reject(config?.reject);
236
164
  }
237
165
  }
238
166
  /**
@@ -243,7 +171,7 @@ class Deferred extends Promise {
243
171
  * {@link Deferred.reject} have been invoked; `false` otherwise
244
172
  */
245
173
  get settled() {
246
- return __classPrivateFieldGet(this, _Deferred_settled, "f");
174
+ return this.#settled;
247
175
  }
248
176
  /**
249
177
  * A getter that returns a boolean indicating whether the Deferred instance
@@ -255,7 +183,7 @@ class Deferred extends Promise {
255
183
  * @returns {boolean} `true` if the Deferred was rejected, otherwise `false`.
256
184
  */
257
185
  get wasRejected() {
258
- return __classPrivateFieldGet(this, _Deferred_rejected, "f");
186
+ return this.#rejected;
259
187
  }
260
188
  /**
261
189
  * A getter that returns a boolean indicating whether the Deferred instance
@@ -267,7 +195,7 @@ class Deferred extends Promise {
267
195
  * @returns {boolean} `true` if the Deferred was resolved, otherwise `false`.
268
196
  */
269
197
  get wasResolved() {
270
- return __classPrivateFieldGet(this, _Deferred_resolved, "f");
198
+ return this.#resolved;
271
199
  }
272
200
  /**
273
201
  * Accessor for the promise managed by this Deferred instance.
@@ -280,7 +208,7 @@ class Deferred extends Promise {
280
208
  * @returns {Promise} The promise controlled by this Deferred instance.
281
209
  */
282
210
  get promise() {
283
- return __classPrivateFieldGet(this, _Deferred_promise, "f");
211
+ return this.#promise;
284
212
  }
285
213
  /**
286
214
  * Resolves the Deferred with the given value. If the value is a thenable
@@ -292,7 +220,7 @@ class Deferred extends Promise {
292
220
  * @returns {Promise} A Promise that is resolved with the given value.
293
221
  */
294
222
  resolve(value) {
295
- return __classPrivateFieldGet(this, _Deferred_resolve, "f").call(this, value);
223
+ return this.#resolve(value);
296
224
  }
297
225
  /**
298
226
  * Rejects the Deferred with the given reason. This function behaves the
@@ -303,7 +231,7 @@ class Deferred extends Promise {
303
231
  * @returns {Promise} A Promise that is rejected with the given reason.
304
232
  */
305
233
  reject(reason) {
306
- return __classPrivateFieldGet(this, _Deferred_reject, "f").call(this, reason);
234
+ return this.#reject(reason);
307
235
  }
308
236
  /**
309
237
  * Customizes the output of `util.inspect` on instances of Deferred when
@@ -320,7 +248,7 @@ class Deferred extends Promise {
320
248
  * @param {function} inspect Reference to the `util.inspect` function.
321
249
  * @returns {string} A formatted string representing the Deferred instance.
322
250
  */
323
- [(_Deferred_promise = new WeakMap(), _Deferred_reject = new WeakMap(), _Deferred_resolve = new WeakMap(), _Deferred_rejected = new WeakMap(), _Deferred_resolved = new WeakMap(), _Deferred_settled = new WeakMap(), Symbol.for('nodejs.util.inspect.custom'))](depth, options, inspect) {
251
+ [Symbol.for('nodejs.util.inspect.custom')](depth, options, inspect) {
324
252
  return [
325
253
  '\x1b[1mDeferred [\x1b[22;3mPromise\x1b[23;1m]\x1b[22m ',
326
254
  '{ ',
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deferred.js","sourceRoot":"","sources":["../../../src/classes/deferred.js"],"names":[],"mappings":"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"}