@oscarpalmer/atoms 0.221.0 → 0.223.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 (331) hide show
  1. package/dist/array/difference.d.mts +1 -3
  2. package/dist/array/difference.mjs +2 -3
  3. package/dist/array/exists.d.mts +1 -3
  4. package/dist/array/exists.mjs +11 -6
  5. package/dist/array/filter.d.mts +1 -3
  6. package/dist/array/filter.mjs +15 -6
  7. package/dist/array/find.d.mts +1 -3
  8. package/dist/array/find.mjs +9 -5
  9. package/dist/array/first.d.mts +1 -3
  10. package/dist/array/first.mjs +10 -5
  11. package/dist/array/flatten.d.mts +1 -3
  12. package/dist/array/flatten.mjs +1 -2
  13. package/dist/array/from.d.mts +1 -3
  14. package/dist/array/from.mjs +1 -2
  15. package/dist/array/group-by.d.mts +1 -3
  16. package/dist/array/group-by.mjs +1 -2
  17. package/dist/array/index.d.mts +4 -4
  18. package/dist/array/insert.d.mts +1 -3
  19. package/dist/array/insert.mjs +2 -3
  20. package/dist/array/intersection.d.mts +1 -3
  21. package/dist/array/intersection.mjs +2 -3
  22. package/dist/array/last.d.mts +1 -3
  23. package/dist/array/last.mjs +12 -5
  24. package/dist/array/move.d.mts +1 -3
  25. package/dist/array/move.mjs +1 -2
  26. package/dist/array/partition.d.mts +1 -3
  27. package/dist/array/partition.mjs +24 -5
  28. package/dist/array/push.d.mts +0 -2
  29. package/dist/array/push.mjs +2 -3
  30. package/dist/array/reverse.d.mts +1 -3
  31. package/dist/array/reverse.mjs +1 -2
  32. package/dist/array/select.d.mts +0 -2
  33. package/dist/array/select.mjs +40 -9
  34. package/dist/array/single.d.mts +1 -3
  35. package/dist/array/single.mjs +9 -7
  36. package/dist/array/slice.d.mts +1 -3
  37. package/dist/array/slice.mjs +1 -2
  38. package/dist/array/sort.d.mts +0 -2
  39. package/dist/array/sort.mjs +2 -3
  40. package/dist/array/splice.d.mts +1 -3
  41. package/dist/array/splice.mjs +2 -3
  42. package/dist/array/swap.d.mts +0 -2
  43. package/dist/array/swap.mjs +2 -3
  44. package/dist/array/to-map.d.mts +1 -3
  45. package/dist/array/to-map.mjs +1 -2
  46. package/dist/array/to-record.d.mts +1 -3
  47. package/dist/array/to-record.mjs +1 -2
  48. package/dist/array/to-set.d.mts +1 -3
  49. package/dist/array/to-set.mjs +1 -2
  50. package/dist/array/toggle.d.mts +1 -3
  51. package/dist/array/toggle.mjs +1 -2
  52. package/dist/array/union.d.mts +1 -3
  53. package/dist/array/union.mjs +2 -3
  54. package/dist/array/unique.d.mts +1 -3
  55. package/dist/array/unique.mjs +18 -5
  56. package/dist/array/update.d.mts +1 -3
  57. package/dist/array/update.mjs +1 -2
  58. package/dist/beacon.d.mts +3 -13
  59. package/dist/beacon.mjs +10 -21
  60. package/dist/color/constants.d.mts +1 -7
  61. package/dist/color/constants.mjs +3 -11
  62. package/dist/color/index.d.mts +0 -2
  63. package/dist/color/index.mjs +4 -5
  64. package/dist/color/instance.d.mts +1 -3
  65. package/dist/color/instance.mjs +5 -8
  66. package/dist/color/misc/alpha.d.mts +1 -3
  67. package/dist/color/misc/alpha.mjs +1 -2
  68. package/dist/color/misc/format.d.mts +1 -3
  69. package/dist/color/misc/format.mjs +1 -2
  70. package/dist/color/misc/get.d.mts +1 -3
  71. package/dist/color/misc/get.mjs +2 -3
  72. package/dist/color/misc/is.d.mts +1 -11
  73. package/dist/color/misc/is.mjs +4 -16
  74. package/dist/color/misc/state.d.mts +1 -3
  75. package/dist/color/misc/state.mjs +4 -5
  76. package/dist/color/space/hex.d.mts +1 -3
  77. package/dist/color/space/hex.mjs +2 -3
  78. package/dist/color/space/hsl.d.mts +1 -3
  79. package/dist/color/space/hsl.mjs +2 -3
  80. package/dist/color/space/hwb.d.mts +1 -3
  81. package/dist/color/space/hwb.mjs +3 -4
  82. package/dist/color/space/rgb.d.mts +1 -3
  83. package/dist/color/space/rgb.mjs +1 -2
  84. package/dist/function/limit.d.mts +1 -3
  85. package/dist/function/limit.mjs +2 -3
  86. package/dist/function/once.d.mts +1 -3
  87. package/dist/function/once.mjs +8 -9
  88. package/dist/function/retry.d.mts +1 -3
  89. package/dist/function/retry.mjs +11 -12
  90. package/dist/herald.d.mts +2 -2
  91. package/dist/herald.mjs +1 -1
  92. package/dist/index.d.mts +81 -359
  93. package/dist/index.mjs +514 -661
  94. package/dist/internal/aborter.d.mts +1 -3
  95. package/dist/internal/aborter.mjs +1 -2
  96. package/dist/internal/array/callbacks.d.mts +2 -4
  97. package/dist/internal/array/callbacks.mjs +1 -2
  98. package/dist/internal/array/chunk.d.mts +1 -3
  99. package/dist/internal/array/chunk.mjs +1 -2
  100. package/dist/internal/array/compact.d.mts +1 -3
  101. package/dist/internal/array/compact.mjs +1 -2
  102. package/dist/internal/array/find.d.mts +2 -8
  103. package/dist/internal/array/find.mjs +31 -124
  104. package/dist/internal/array/get.d.mts +1 -3
  105. package/dist/internal/array/get.mjs +1 -2
  106. package/dist/internal/array/group.d.mts +1 -3
  107. package/dist/internal/array/group.mjs +1 -2
  108. package/dist/internal/array/index-of.d.mts +1 -3
  109. package/dist/internal/array/index-of.mjs +10 -5
  110. package/dist/internal/array/insert.d.mts +1 -3
  111. package/dist/internal/array/insert.mjs +2 -3
  112. package/dist/internal/array/match.d.mts +2 -4
  113. package/dist/internal/array/match.mjs +2 -3
  114. package/dist/internal/array/overlap.d.mts +1 -3
  115. package/dist/internal/array/overlap.mjs +1 -2
  116. package/dist/internal/array/sets.d.mts +1 -3
  117. package/dist/internal/array/sets.mjs +5 -6
  118. package/dist/internal/array/shuffle.d.mts +1 -3
  119. package/dist/internal/array/shuffle.mjs +1 -2
  120. package/dist/internal/array/update.d.mts +1 -3
  121. package/dist/internal/array/update.mjs +1 -2
  122. package/dist/internal/defaults.d.mts +1 -3
  123. package/dist/internal/defaults.mjs +1 -2
  124. package/dist/internal/function/assert.d.mts +1 -3
  125. package/dist/internal/function/assert.mjs +1 -2
  126. package/dist/internal/function/limit.d.mts +2 -4
  127. package/dist/internal/function/limit.mjs +8 -9
  128. package/dist/internal/function/memoize.d.mts +1 -3
  129. package/dist/internal/function/memoize.mjs +4 -5
  130. package/dist/internal/function/misc.d.mts +1 -2
  131. package/dist/internal/function/misc.mjs +7 -3
  132. package/dist/internal/function/work.d.mts +1 -3
  133. package/dist/internal/function/work.mjs +5 -13
  134. package/dist/internal/herald.d.mts +2 -12
  135. package/dist/internal/herald.mjs +9 -33
  136. package/dist/internal/is.d.mts +1 -3
  137. package/dist/internal/is.mjs +1 -2
  138. package/dist/internal/math/aggregate.d.mts +1 -3
  139. package/dist/internal/math/aggregate.mjs +2 -3
  140. package/dist/internal/math/misc.d.mts +1 -3
  141. package/dist/internal/math/misc.mjs +1 -2
  142. package/dist/internal/number.d.mts +1 -3
  143. package/dist/internal/number.mjs +2 -3
  144. package/dist/internal/plan/index.d.mts +1 -3
  145. package/dist/internal/plan/index.mjs +2 -3
  146. package/dist/internal/plan/plan.generate.d.mts +1 -3
  147. package/dist/internal/plan/plan.generate.mjs +67 -22
  148. package/dist/internal/random.d.mts +1 -3
  149. package/dist/internal/random.mjs +1 -2
  150. package/dist/internal/result/attempt.d.mts +1 -3
  151. package/dist/internal/result/attempt.mjs +1 -2
  152. package/dist/internal/result/misc.d.mts +1 -3
  153. package/dist/internal/result/misc.mjs +1 -2
  154. package/dist/internal/sized/map.d.mts +4 -3
  155. package/dist/internal/sized/map.mjs +4 -2
  156. package/dist/internal/sized/misc.d.mts +1 -3
  157. package/dist/internal/sized/misc.mjs +1 -2
  158. package/dist/internal/string/case.d.mts +1 -3
  159. package/dist/internal/string/case.mjs +3 -4
  160. package/dist/internal/string/misc.d.mts +1 -3
  161. package/dist/internal/string/misc.mjs +1 -2
  162. package/dist/internal/subscription.d.mts +1 -3
  163. package/dist/internal/subscription.mjs +16 -29
  164. package/dist/internal/value/compare.d.mts +1 -3
  165. package/dist/internal/value/compare.mjs +2 -3
  166. package/dist/internal/value/equal.d.mts +1 -3
  167. package/dist/internal/value/equal.mjs +3 -4
  168. package/dist/internal/value/get.d.mts +1 -3
  169. package/dist/internal/value/get.mjs +1 -2
  170. package/dist/internal/value/handlers.d.mts +1 -3
  171. package/dist/internal/value/handlers.mjs +1 -2
  172. package/dist/internal/value/has.d.mts +1 -3
  173. package/dist/internal/value/has.mjs +1 -2
  174. package/dist/internal/value/misc.d.mts +1 -3
  175. package/dist/internal/value/misc.mjs +2 -3
  176. package/dist/internal/value/partial.d.mts +1 -3
  177. package/dist/internal/value/partial.mjs +1 -2
  178. package/dist/internal/value/set.d.mts +1 -3
  179. package/dist/internal/value/set.mjs +2 -3
  180. package/dist/is.d.mts +0 -2
  181. package/dist/is.mjs +2 -3
  182. package/dist/logger.d.mts +0 -2
  183. package/dist/logger.mjs +7 -7
  184. package/dist/math.d.mts +0 -2
  185. package/dist/math.mjs +2 -3
  186. package/dist/models/aborter.model.d.mts +1 -3
  187. package/dist/models/aborter.model.mjs +1 -2
  188. package/dist/models/array/array.match.model.d.mts +1 -3
  189. package/dist/models/array/array.match.model.mjs +1 -2
  190. package/dist/models/array/array.misc.model.d.mts +11 -2
  191. package/dist/models/array/array.misc.model.mjs +3 -3
  192. package/dist/models/array/array.sort.model.d.mts +1 -3
  193. package/dist/models/array/array.sort.model.mjs +1 -2
  194. package/dist/models/beacon.model.d.mts +4 -6
  195. package/dist/models/beacon.model.mjs +3 -10
  196. package/dist/models/color.model.d.mts +2 -4
  197. package/dist/models/function/assert.model.d.mts +1 -3
  198. package/dist/models/function/assert.model.mjs +1 -2
  199. package/dist/models/function/limiter.model.d.mts +2 -4
  200. package/dist/models/function/limiter.model.mjs +2 -4
  201. package/dist/models/function/memoize.model.d.mts +2 -4
  202. package/dist/models/function/memoize.model.mjs +1 -2
  203. package/dist/models/function/once.model.d.mts +0 -3
  204. package/dist/models/function/once.model.mjs +3 -5
  205. package/dist/models/function/retry.model.d.mts +1 -3
  206. package/dist/models/function/retry.model.mjs +1 -2
  207. package/dist/models/function/work.model.d.mts +2 -4
  208. package/dist/models/function/work.model.mjs +1 -2
  209. package/dist/models/herald.model.d.mts +8 -7
  210. package/dist/models/herald.model.mjs +3 -10
  211. package/dist/models/index.d.mts +0 -2
  212. package/dist/models/logger.model.d.mts +1 -4
  213. package/dist/models/logger.model.mjs +3 -5
  214. package/dist/models/math.model.d.mts +1 -3
  215. package/dist/models/math.model.mjs +1 -2
  216. package/dist/models/misc.model.d.mts +1 -3
  217. package/dist/models/misc.model.mjs +1 -2
  218. package/dist/models/plan.model.d.mts +35 -37
  219. package/dist/models/plan.model.mjs +1 -2
  220. package/dist/models/promise.model.d.mts +8 -10
  221. package/dist/models/promise.model.mjs +4 -5
  222. package/dist/models/query.model.d.mts +1 -3
  223. package/dist/models/query.model.mjs +1 -2
  224. package/dist/models/queue.model.d.mts +0 -3
  225. package/dist/models/queue.model.mjs +3 -5
  226. package/dist/models/random.model.d.mts +1 -3
  227. package/dist/models/random.model.mjs +1 -2
  228. package/dist/models/result.model.d.mts +0 -2
  229. package/dist/models/string/string.case.model.d.mts +1 -3
  230. package/dist/models/string/string.case.model.mjs +1 -2
  231. package/dist/models/string/string.fuzzy.model.d.mts +0 -3
  232. package/dist/models/string/string.fuzzy.model.mjs +3 -5
  233. package/dist/models/string/string.misc.model.d.mts +1 -3
  234. package/dist/models/string/string.misc.model.mjs +1 -2
  235. package/dist/models/string/string.normalize.model.d.mts +1 -3
  236. package/dist/models/string/string.normalize.model.mjs +1 -2
  237. package/dist/models/string/string.template.model.d.mts +1 -3
  238. package/dist/models/string/string.template.model.mjs +1 -2
  239. package/dist/models/subscription.model.d.mts +4 -23
  240. package/dist/models/subscription.model.mjs +3 -5
  241. package/dist/models/value/value.clone.model.d.mts +1 -3
  242. package/dist/models/value/value.clone.model.mjs +1 -2
  243. package/dist/models/value/value.diff.model.d.mts +1 -3
  244. package/dist/models/value/value.diff.model.mjs +1 -2
  245. package/dist/models/value/value.equal.model.d.mts +0 -2
  246. package/dist/models/value/value.equal.model.mjs +1 -2
  247. package/dist/models/value/value.handler.model.d.mts +1 -3
  248. package/dist/models/value/value.merge.model.d.mts +0 -2
  249. package/dist/models/value/value.merge.model.mjs +1 -2
  250. package/dist/models/value/value.misc.model.d.mts +0 -2
  251. package/dist/models/value/value.misc.model.mjs +1 -2
  252. package/dist/models/value/value.transform.model.d.mts +1 -3
  253. package/dist/models/value/value.transform.model.mjs +1 -2
  254. package/dist/plan/index.d.mts +1 -3
  255. package/dist/plan/index.mjs +2 -3
  256. package/dist/plan/is.d.mts +1 -3
  257. package/dist/plan/is.mjs +1 -2
  258. package/dist/plan/misc.d.mts +1 -3
  259. package/dist/plan/misc.mjs +2 -3
  260. package/dist/plan/models.d.mts +2 -2
  261. package/dist/plan/result.d.mts +8 -10
  262. package/dist/plan/result.mjs +2 -3
  263. package/dist/plan/run.d.mts +8 -10
  264. package/dist/plan/run.mjs +2 -3
  265. package/dist/plan/use.d.mts +1 -3
  266. package/dist/plan/use.mjs +14 -9
  267. package/dist/promise/delay.d.mts +1 -3
  268. package/dist/promise/delay.mjs +2 -3
  269. package/dist/promise/helpers.d.mts +1 -3
  270. package/dist/promise/helpers.mjs +2 -3
  271. package/dist/promise/index.d.mts +0 -2
  272. package/dist/promise/index.mjs +5 -6
  273. package/dist/promise/misc.d.mts +1 -3
  274. package/dist/promise/misc.mjs +2 -3
  275. package/dist/promise/models.d.mts +2 -2
  276. package/dist/promise/models.mjs +1 -1
  277. package/dist/promise/timed.d.mts +1 -3
  278. package/dist/promise/timed.mjs +4 -5
  279. package/dist/query.d.mts +1 -3
  280. package/dist/query.mjs +2 -3
  281. package/dist/queue.d.mts +0 -2
  282. package/dist/queue.mjs +11 -12
  283. package/dist/random.d.mts +0 -2
  284. package/dist/random.mjs +2 -3
  285. package/dist/result/match.d.mts +1 -3
  286. package/dist/result/match.mjs +1 -2
  287. package/dist/result/misc.d.mts +0 -2
  288. package/dist/result/misc.mjs +1 -2
  289. package/dist/result/work/flow.d.mts +1 -3
  290. package/dist/result/work/flow.mjs +5 -12
  291. package/dist/result/work/pipe.d.mts +0 -2
  292. package/dist/result/work/pipe.mjs +2 -3
  293. package/dist/sized/set.d.mts +4 -3
  294. package/dist/sized/set.mjs +4 -2
  295. package/dist/string/fuzzy.d.mts +0 -2
  296. package/dist/string/fuzzy.mjs +5 -7
  297. package/dist/string/index.d.mts +0 -2
  298. package/dist/string/index.mjs +2 -3
  299. package/dist/string/match.d.mts +1 -3
  300. package/dist/string/match.mjs +2 -3
  301. package/dist/string/normalize.d.mts +0 -2
  302. package/dist/string/normalize.mjs +3 -4
  303. package/dist/string/template.d.mts +0 -2
  304. package/dist/string/template.mjs +1 -2
  305. package/dist/subscription.d.mts +2 -2
  306. package/dist/value/clone.d.mts +1 -3
  307. package/dist/value/clone.mjs +2 -3
  308. package/dist/value/collection.d.mts +1 -3
  309. package/dist/value/collection.mjs +1 -2
  310. package/dist/value/diff.d.mts +0 -2
  311. package/dist/value/diff.mjs +1 -2
  312. package/dist/value/freeze.d.mts +1 -3
  313. package/dist/value/freeze.mjs +1 -2
  314. package/dist/value/handle.mjs +1 -1
  315. package/dist/value/merge.d.mts +0 -2
  316. package/dist/value/merge.mjs +1 -2
  317. package/dist/value/omit.d.mts +1 -3
  318. package/dist/value/omit.mjs +1 -2
  319. package/dist/value/pick.d.mts +1 -3
  320. package/dist/value/pick.mjs +1 -2
  321. package/dist/value/shake.d.mts +0 -2
  322. package/dist/value/shake.mjs +1 -2
  323. package/dist/value/smush.d.mts +0 -2
  324. package/dist/value/smush.mjs +2 -3
  325. package/dist/value/transform.d.mts +0 -2
  326. package/dist/value/transform.mjs +1 -2
  327. package/dist/value/unsmush.d.mts +0 -2
  328. package/dist/value/unsmush.mjs +1 -2
  329. package/package.json +6 -6
  330. package/dist/models/array/array.find.model.d.mts +0 -48
  331. package/dist/models/array/array.find.model.mjs +0 -8
@@ -1,7 +1,7 @@
1
- import { join, words } from "./misc.mjs";
2
- import { memoize } from "../function/memoize.mjs";
3
1
  import { STRING_CASE_CAMEL, STRING_CASE_CAPITALIZE, STRING_CASE_KEBAB, STRING_CASE_LOWER, STRING_CASE_PASCAL, STRING_CASE_SNAKE, STRING_CASE_TITLE, STRING_CASE_UPPER, STRING_EXPRESSION_ACRONYM, STRING_EXPRESSION_CAMEL_CASE, STRING_REPLACEMENT_CAMEL_CASE, ignoreCachingCases } from "../../models/string/string.case.model.mjs";
4
- //#region src/internal/string/case.ts
2
+ import { memoize } from "../function/memoize.mjs";
3
+ import { join, words } from "./misc.mjs";
4
+ // src/internal/string/case.ts
5
5
  /**
6
6
  * Convert a string to camel case _(thisIsCamelCase)_
7
7
  *
@@ -194,5 +194,4 @@ const delimiters = {
194
194
  [STRING_CASE_SNAKE]: "_"
195
195
  };
196
196
  const simpleMemoizers = {};
197
- //#endregion
198
197
  export { camelCase, capitalize, kebabCase, lowerCase, pascalCase, snakeCase, titleCase, toCaseCallback, upperCase };
@@ -1,4 +1,3 @@
1
- //#region src/internal/string/misc.d.ts
2
1
  /**
3
2
  * Get the string value from any value
4
3
  *
@@ -57,5 +56,4 @@ export declare function tryEncode(value: boolean | number | string): unknown;
57
56
  * @param value Original string
58
57
  * @returns Array of words found in the string
59
58
  */
60
- export declare function words(value: string): string[];
61
- //#endregion
59
+ export declare function words(value: string): string[];
@@ -1,7 +1,7 @@
1
1
  import { STRING_EXPRESSION_IGNORED, STRING_EXPRESSION_WORDS } from "../../models/string/string.misc.model.mjs";
2
2
  import { unwrap } from "../result/misc.mjs";
3
3
  import { attempt } from "../result/attempt.mjs";
4
- //#region src/internal/string/misc.ts
4
+ // src/internal/string/misc.ts
5
5
  /**
6
6
  * Get the string value from any value
7
7
  *
@@ -98,5 +98,4 @@ function words(value) {
98
98
  if (typeof value === "string") return value.match(STRING_EXPRESSION_WORDS) ?? [];
99
99
  return [];
100
100
  }
101
- //#endregion
102
101
  export { getString, ignoreKey, interpolate, join, tryDecode, tryEncode, words };
@@ -1,5 +1,4 @@
1
1
  import { Subscription, Subscriptions, SubscriptionsParameters } from "../models/subscription.model.mjs";
2
- //#region src/internal/subscription.d.ts
3
2
  /**
4
3
  * Is the value a subscription?
5
4
  *
@@ -20,5 +19,4 @@ export declare function isSubscriptions(value: unknown): value is Subscriptions;
20
19
  * @param parameters Store parameters
21
20
  * @returns Subscription store
22
21
  */
23
- export declare function subscriptions<Value = unknown>(parameters?: SubscriptionsParameters): Subscriptions<Value>;
24
- //#endregion
22
+ export declare function subscriptions<Value = unknown>(parameters?: SubscriptionsParameters): Subscriptions<Value>;
@@ -1,24 +1,21 @@
1
- import { isKey, isPlainObject } from "./is.mjs";
2
- import { SUBSCRIPTION_DISALLOWED_KEY, SUBSCRIPTION_INVALID_KEY, SUBSCRIPTION_INVALID_VALUE, SUBSCRIPTION_NAME, SUBSCRIPTION_PROPERTY, SUBSCRIPTION_STORE, SUBSCRIPTION_SYMBOL } from "../models/subscription.model.mjs";
1
+ import { SUBSCRIPTION_DISALLOWED_KEY, SUBSCRIPTION_INVALID_KEY, SUBSCRIPTION_INVALID_VALUE, SUBSCRIPTION_NAME, SUBSCRIPTION_STORE, SUBSCRIPTION_SYMBOL } from "../models/subscription.model.mjs";
3
2
  import { createAborter } from "./aborter.mjs";
4
- //#region src/internal/subscription.ts
5
- function Subscription(state, property, parameters) {
3
+ import { isKey, isPlainObject } from "./is.mjs";
4
+ // src/internal/subscription.ts
5
+ function Subscription(state, parameters) {
6
6
  this[SUBSCRIPTION_SYMBOL] = state;
7
- this[property.key] = property.value;
8
7
  state.aborter = createAborter(parameters.signal, () => this.unsubscribe(subscriptions, this, state));
9
8
  addSubscription(this);
10
9
  }
11
- Subscription.prototype[SUBSCRIPTION_PROPERTY] = SUBSCRIPTION_NAME;
12
10
  Subscription.prototype.unsubscribe = removeSubscription;
13
11
  Object.defineProperty(Subscription.prototype, "active", {
14
12
  enumerable: true,
15
13
  get: getSubscriptionActive
16
14
  });
17
15
  function Subscriptions(parameters) {
18
- const { keys, property } = createSubscriptionsParameters(parameters);
19
- this[SUBSCRIPTION_SYMBOL] = createSubscriptionsState(property, keys);
16
+ const { keys } = createSubscriptionsParameters(parameters);
17
+ this[SUBSCRIPTION_SYMBOL] = createSubscriptionsState(keys);
20
18
  }
21
- Subscriptions.prototype[SUBSCRIPTION_PROPERTY] = SUBSCRIPTION_STORE;
22
19
  Subscriptions.prototype.clear = clearSubscriptions;
23
20
  Subscriptions.prototype.create = createSubscription;
24
21
  Object.defineProperties(Subscriptions.prototype, {
@@ -74,7 +71,8 @@ function createSubscription(params) {
74
71
  const state = {
75
72
  parameters,
76
73
  subscriptions,
77
- active: true
74
+ active: true,
75
+ name: SUBSCRIPTION_NAME
78
76
  };
79
77
  const existing = getExistingSubscription(subscriptions, state);
80
78
  if (existing != null) return [existing, true];
@@ -82,7 +80,7 @@ function createSubscription(params) {
82
80
  if (subscriptions.keys === false) throw new Error(SUBSCRIPTION_DISALLOWED_KEY);
83
81
  else if (subscriptions.keys !== true && !subscriptions.keys.has(parameters.key)) throw new Error(SUBSCRIPTION_INVALID_KEY);
84
82
  }
85
- return [new Subscription(state, subscriptions.property, parameters), false];
83
+ return [new Subscription(state, parameters), false];
86
84
  }
87
85
  function getExistingSubscription(subscriptions, state) {
88
86
  const { values } = subscriptions;
@@ -114,26 +112,16 @@ function createSubscriptionsParameters(input) {
114
112
  let keys;
115
113
  if (values.keys instanceof Set) keys = values.keys;
116
114
  else keys = typeof values.keys === "boolean" ? values.keys : false;
117
- return {
118
- keys,
119
- property: createSubscriptionsProperty(values.property)
120
- };
121
- }
122
- function createSubscriptionsProperty(input) {
123
- const values = isPlainObject(input) ? input : {};
124
- return {
125
- key: typeof values.key === "string" ? values.key : SUBSCRIPTION_PROPERTY,
126
- value: values.value ?? "subscription"
127
- };
115
+ return { keys };
128
116
  }
129
- function createSubscriptionsState(property, keys) {
117
+ function createSubscriptionsState(keys) {
130
118
  return {
131
119
  keys,
132
- property,
133
120
  items: {
134
121
  any: /* @__PURE__ */ new Set(),
135
122
  keyed: keys === false ? void 0 : /* @__PURE__ */ new Map()
136
123
  },
124
+ name: SUBSCRIPTION_STORE,
137
125
  values: {
138
126
  from: {
139
127
  any: /* @__PURE__ */ new Map(),
@@ -153,10 +141,10 @@ function createSubscriptionsState(property, keys) {
153
141
  * @returns `true` if the value is a subscription, otherwise `false`
154
142
  */
155
143
  function isSubscription(value) {
156
- return isSubscriptionInstance(value, SUBSCRIPTION_NAME);
144
+ return isSubscriptionInstance(SUBSCRIPTION_NAME, value);
157
145
  }
158
- function isSubscriptionInstance(value, name) {
159
- return typeof value === "object" && value !== null && "$subscription" in value && value["$subscription"] === name;
146
+ function isSubscriptionInstance(type, value) {
147
+ return typeof value === "object" && value !== null && SUBSCRIPTION_SYMBOL in value && value[SUBSCRIPTION_SYMBOL].name === type;
160
148
  }
161
149
  /**
162
150
  * Is the value a subscriptions store?
@@ -165,7 +153,7 @@ function isSubscriptionInstance(value, name) {
165
153
  * @returns `true` if the value is a subscriptions store, otherwise `false`
166
154
  */
167
155
  function isSubscriptions(value) {
168
- return isSubscriptionInstance(value, SUBSCRIPTION_STORE);
156
+ return isSubscriptionInstance(SUBSCRIPTION_STORE, value);
169
157
  }
170
158
  function removeFromStore(items, values, subscription, value, key) {
171
159
  items.delete(subscription);
@@ -205,5 +193,4 @@ function removeSubscription() {
205
193
  function subscriptions(parameters) {
206
194
  return new Subscriptions(parameters);
207
195
  }
208
- //#endregion
209
196
  export { isSubscription, isSubscriptions, subscriptions };
@@ -1,7 +1,6 @@
1
1
  import { Constructor } from "../../models/index.mjs";
2
2
  import { CompareHandler } from "../../models/value/value.handler.model.mjs";
3
3
  import { ComparisonHandler } from "../../models/value/value.misc.model.mjs";
4
- //#region src/internal/value/compare.d.ts
5
4
  /**
6
5
  * Compare two values _(for sorting purposes)_
7
6
  *
@@ -31,5 +30,4 @@ export declare namespace compare {
31
30
  export var deregister: typeof deregisterComparator;
32
31
  export var handler: CompareHandler<number>;
33
32
  export var register: typeof registerComparator;
34
- }
35
- //#endregion
33
+ }
@@ -1,8 +1,8 @@
1
- import { max } from "../math/aggregate.mjs";
2
1
  import { COMPARE_NAME } from "../../models/value/value.misc.model.mjs";
2
+ import { max } from "../math/aggregate.mjs";
3
3
  import { getString, words } from "../string/misc.mjs";
4
4
  import { createCompareHandler } from "./handlers.mjs";
5
- //#region src/internal/value/compare.ts
5
+ // src/internal/value/compare.ts
6
6
  /**
7
7
  * Compare two values _(for sorting purposes)_
8
8
  *
@@ -85,5 +85,4 @@ const compareHandler = createCompareHandler(compare, {
85
85
  compare.deregister = deregisterComparator;
86
86
  compare.handler = compareHandler;
87
87
  compare.register = registerComparator;
88
- //#endregion
89
88
  export { compare, deregisterComparator, registerComparator };
@@ -1,7 +1,6 @@
1
1
  import { Constructor } from "../../models/index.mjs";
2
- import { CompareHandler } from "../../models/value/value.handler.model.mjs";
3
2
  import { EqualOptions, Equalizer, EqualizerOptions } from "../../models/value/value.equal.model.mjs";
4
- //#region src/internal/value/equal.d.ts
3
+ import { CompareHandler } from "../../models/value/value.handler.model.mjs";
5
4
  declare function Equalizer(this: any, options: EqualizerOptions): void;
6
5
  /**
7
6
  * Deregister a equality comparison handler for a specific class
@@ -53,5 +52,4 @@ export declare namespace equal {
53
52
  export var initialize: typeof initializeEqualizer;
54
53
  export var register: typeof registerEqualizer;
55
54
  }
56
- //#endregion
57
55
  export type { EqualOptions, Equalizer };
@@ -1,9 +1,9 @@
1
+ import { EQUAL_ERROR_PROPERTIES, EQUAL_EXPRESSION_PROPERTIES, EQUAL_SYMBOL } from "../../models/value/value.equal.model.mjs";
1
2
  import { isNonPlainObject, isPlainObject, isPrimitive, isTypedArray } from "../is.mjs";
2
- import { round } from "../math/misc.mjs";
3
3
  import { min } from "../math/aggregate.mjs";
4
+ import { round } from "../math/misc.mjs";
4
5
  import { createCompareHandler } from "./handlers.mjs";
5
- import { EQUAL_ERROR_PROPERTIES, EQUAL_EXPRESSION_PROPERTIES, EQUAL_SYMBOL } from "../../models/value/value.equal.model.mjs";
6
- //#region src/internal/value/equal.ts
6
+ // src/internal/value/equal.ts
7
7
  function Equalizer(options) {
8
8
  this[EQUAL_SYMBOL] = options;
9
9
  }
@@ -176,5 +176,4 @@ equal.deregister = deregisterEqualizer;
176
176
  equal.handler = equalHandler;
177
177
  equal.initialize = initializeEqualizer;
178
178
  equal.register = registerEqualizer;
179
- //#endregion
180
179
  export { deregisterEqualizer, equal, initializeEqualizer, registerEqualizer };
@@ -1,5 +1,4 @@
1
1
  import { NestedKeys, NestedValue, PlainObject } from "../../models/index.mjs";
2
- //#region src/internal/value/get.d.ts
3
2
  /**
4
3
  * Get the value from an object using a known path
5
4
  *
@@ -36,5 +35,4 @@ export declare function getValue<Data extends PlainObject, Path extends NestedKe
36
35
  * getValue(data, 'foo.nope'); // => undefined
37
36
  * ```
38
37
  */
39
- export declare function getValue<Data extends PlainObject>(data: Data, path: string, ignoreCase?: boolean): unknown;
40
- //#endregion
38
+ export declare function getValue<Data extends PlainObject>(data: Data, path: string, ignoreCase?: boolean): unknown;
@@ -1,7 +1,6 @@
1
1
  import { getNestedValue } from "./misc.mjs";
2
- //#region src/internal/value/get.ts
2
+ // src/internal/value/get.ts
3
3
  function getValue(data, path, ignoreCase) {
4
4
  return getNestedValue(data, path, ignoreCase === true).value;
5
5
  }
6
- //#endregion
7
6
  export { getValue };
@@ -1,6 +1,4 @@
1
1
  import { GenericCallback } from "../../models/index.mjs";
2
2
  import { BaseHandlerOptions, CompareHandler, ValueHandler } from "../../models/value/value.handler.model.mjs";
3
- //#region src/internal/value/handlers.d.ts
4
3
  export declare function createCompareHandler<Value>(owner: GenericCallback, options: BaseHandlerOptions): CompareHandler<Value>;
5
- export declare function createValueHandler(owner: GenericCallback, options: BaseHandlerOptions): ValueHandler;
6
- //#endregion
4
+ export declare function createValueHandler(owner: GenericCallback, options: BaseHandlerOptions): ValueHandler;
@@ -1,5 +1,5 @@
1
1
  import { isNonConstructor } from "../is.mjs";
2
- //#region src/internal/value/handlers.ts
2
+ // src/internal/value/handlers.ts
3
3
  function BaseHandler(owner, options) {
4
4
  this.handlers = /* @__PURE__ */ new WeakMap();
5
5
  this.owner = owner;
@@ -51,5 +51,4 @@ function handleValue(value, ...parameters) {
51
51
  if (handler == null) return this.base.options.callback(value, ...parameters);
52
52
  return typeof handler === "function" ? handler(value) : value[handler]();
53
53
  }
54
- //#endregion
55
54
  export { createCompareHandler, createValueHandler };
@@ -1,6 +1,5 @@
1
1
  import { NestedKeys, NestedValue, PlainObject, ToString } from "../../models/index.mjs";
2
2
  import { Result } from "../../models/result.model.mjs";
3
- //#region src/internal/value/has.d.ts
4
3
  /**
5
4
  * Check if a property is defined in an object
6
5
  *
@@ -82,5 +81,4 @@ export declare function hasValueResult<Data extends PlainObject, Path extends Ne
82
81
  export declare function hasValueResult<Data extends PlainObject>(data: Data, path: string, ignoreCase?: boolean): Result<unknown, string>;
83
82
  export declare namespace hasValue {
84
83
  export var get: typeof hasValueResult;
85
- }
86
- //#endregion
84
+ }
@@ -1,5 +1,5 @@
1
1
  import { getNestedValue } from "./misc.mjs";
2
- //#region src/internal/value/has.ts
2
+ // src/internal/value/has.ts
3
3
  function hasValue(data, path, ignoreCase) {
4
4
  return getNestedValue(data, path, ignoreCase === true).ok;
5
5
  }
@@ -7,5 +7,4 @@ function hasValueResult(data, path, ignoreCase) {
7
7
  return getNestedValue(data, path, ignoreCase === true);
8
8
  }
9
9
  hasValue.get = hasValueResult;
10
- //#endregion
11
10
  export { hasValue, hasValueResult };
@@ -1,8 +1,6 @@
1
1
  import { Result } from "../../models/result.model.mjs";
2
- //#region src/internal/value/misc.d.ts
3
2
  export declare function findKey(needle: string, haystack: object): string;
4
3
  export declare function getNestedValue(data: object, path: string, ignoreCase: boolean): Result<unknown, string>;
5
4
  export declare function getPaths(path: string, lowercase: boolean): string | string[];
6
5
  export declare function handleValue(data: object, path: string, value: unknown, get: true, ignoreCase: boolean): Result<object, string>;
7
- export declare function handleValue(data: object, path: string, value: unknown, get: false, ignoreCase: boolean): void;
8
- //#endregion
6
+ export declare function handleValue(data: object, path: string, value: unknown, get: false, ignoreCase: boolean): void;
@@ -1,7 +1,7 @@
1
- import { VALUE_MISC_EXPRESSION_BRACKET, VALUE_MISC_EXPRESSION_DOTS, VALUE_MISC_EXPRESSION_NESTED, VALUE_MISC_NESTED_MESSAGE_INPUT, VALUE_MISC_NESTED_MESSAGE_MISSING, VALUE_MISC_NESTED_MESSAGE_PATH, VALUE_MISC_NESTED_MESSAGE_UNSAFE } from "../../models/value/value.misc.model.mjs";
2
1
  import { error, ok } from "../result/misc.mjs";
2
+ import { VALUE_MISC_EXPRESSION_BRACKET, VALUE_MISC_EXPRESSION_DOTS, VALUE_MISC_EXPRESSION_NESTED, VALUE_MISC_NESTED_MESSAGE_INPUT, VALUE_MISC_NESTED_MESSAGE_MISSING, VALUE_MISC_NESTED_MESSAGE_PATH, VALUE_MISC_NESTED_MESSAGE_UNSAFE } from "../../models/value/value.misc.model.mjs";
3
3
  import { ignoreKey } from "../string/misc.mjs";
4
- //#region src/internal/value/misc.ts
4
+ // src/internal/value/misc.ts
5
5
  function findKey(needle, haystack) {
6
6
  const keys = Object.keys(haystack);
7
7
  const index = keys.map((key) => key.toLowerCase()).indexOf(needle.toLowerCase());
@@ -38,5 +38,4 @@ function handleValue(data, path, value, get, ignoreCase) {
38
38
  }
39
39
  if (get) return error(VALUE_MISC_NESTED_MESSAGE_MISSING);
40
40
  }
41
- //#endregion
42
41
  export { findKey, getNestedValue, getPaths, handleValue };
@@ -1,4 +1,2 @@
1
- //#region src/internal/value/partial.d.ts
2
1
  export declare function partial<Value extends object, ValueKey extends keyof Value>(value: unknown, keys: ValueKey[], omit: true): Omit<Value, ValueKey>;
3
- export declare function partial<Value extends object, ValueKey extends keyof Value>(value: unknown, keys: ValueKey[], omit: false): Pick<Value, ValueKey>;
4
- //#endregion
2
+ export declare function partial<Value extends object, ValueKey extends keyof Value>(value: unknown, keys: ValueKey[], omit: false): Pick<Value, ValueKey>;
@@ -1,5 +1,5 @@
1
1
  import { isPlainObject } from "../is.mjs";
2
- //#region src/internal/value/partial.ts
2
+ // src/internal/value/partial.ts
3
3
  function partial(value, providedKeys, omit) {
4
4
  if (!isPlainObject(value)) return {};
5
5
  let keys;
@@ -15,5 +15,4 @@ function partial(value, providedKeys, omit) {
15
15
  }
16
16
  return partials;
17
17
  }
18
- //#endregion
19
18
  export { partial };
@@ -1,5 +1,4 @@
1
1
  import { NestedKeys, NestedValue, PlainObject } from "../../models/index.mjs";
2
- //#region src/internal/value/set.d.ts
3
2
  /**
4
3
  * Update the value in an object using a known path
5
4
  *
@@ -48,5 +47,4 @@ export declare function setValue<Data extends PlainObject, Path extends NestedKe
48
47
  * setValue(data, 'Foo.Bar.Baz', 99, true); // => {foo: {bar: {baz: 99}}}
49
48
  * ```
50
49
  */
51
- export declare function setValue<Data extends PlainObject>(data: Data, path: string, value: unknown, ignoreCase?: boolean): Data;
52
- //#endregion
50
+ export declare function setValue<Data extends PlainObject>(data: Data, path: string, value: unknown, ignoreCase?: boolean): Data;
@@ -1,7 +1,7 @@
1
+ import { EXPRESSION_INTEGER } from "../../models/misc.model.mjs";
1
2
  import { unwrap } from "../result/misc.mjs";
2
3
  import { getPaths, handleValue } from "./misc.mjs";
3
- import { EXPRESSION_INTEGER } from "../../models/misc.model.mjs";
4
- //#region src/internal/value/set.ts
4
+ // src/internal/value/set.ts
5
5
  function setValue(data, path, value, ignoreCase) {
6
6
  if (typeof data !== "object" || data === null || typeof path !== "string" || path.trim().length === 0) return data;
7
7
  const shouldIgnoreCase = ignoreCase === true;
@@ -30,5 +30,4 @@ function setValue(data, path, value, ignoreCase) {
30
30
  }
31
31
  return data;
32
32
  }
33
- //#endregion
34
33
  export { setValue };
package/dist/is.d.mts CHANGED
@@ -1,5 +1,4 @@
1
1
  import { isArrayOrPlainObject, isConstructor, isInstanceOf, isKey, isNonArrayOrPlainObject, isNonConstructor, isNonInstanceOf, isNonKey, isNonNumber, isNonPlainObject, isNonPrimitive, isNonTemplateStringsArray, isNonTypedArray, isNumber, isPlainObject, isPrimitive, isTemplateStringsArray, isTypedArray } from "./internal/is.mjs";
2
- //#region src/is.d.ts
3
2
  /**
4
3
  * Is the value empty, or only containing `null` or `undefined` values?
5
4
  *
@@ -84,5 +83,4 @@ export declare function isNumerical(value: unknown): value is number | `${number
84
83
  * @returns `true` if the value matches, otherwise `false`
85
84
  */
86
85
  export declare function isObject(value: unknown): value is object;
87
- //#endregion
88
86
  export { isArrayOrPlainObject, isConstructor, isInstanceOf, isKey, isNonArrayOrPlainObject, isNonConstructor, isNonInstanceOf, isNonKey, isNonNumber, isNonPlainObject, isNonPrimitive, isNonTemplateStringsArray, isNonTypedArray, isNumber, isPlainObject, isPrimitive, isTemplateStringsArray, isTypedArray };
package/dist/is.mjs CHANGED
@@ -1,8 +1,8 @@
1
- import { isArrayOrPlainObject, isConstructor, isInstanceOf, isKey, isNonArrayOrPlainObject, isNonConstructor, isNonInstanceOf, isNonKey, isNonNumber, isNonPlainObject, isNonPrimitive, isNonTemplateStringsArray, isNonTypedArray, isNumber, isPlainObject, isPrimitive, isTemplateStringsArray, isTypedArray } from "./internal/is.mjs";
2
1
  import { getArray } from "./internal/array/get.mjs";
2
+ import { isArrayOrPlainObject, isConstructor, isInstanceOf, isKey, isNonArrayOrPlainObject, isNonConstructor, isNonInstanceOf, isNonKey, isNonNumber, isNonPlainObject, isNonPrimitive, isNonTemplateStringsArray, isNonTypedArray, isNumber, isPlainObject, isPrimitive, isTemplateStringsArray, isTypedArray } from "./internal/is.mjs";
3
3
  import { getString } from "./internal/string/misc.mjs";
4
4
  import { EXPRESSION_WHITESPACE_ONLY } from "./models/misc.model.mjs";
5
- //#region src/is.ts
5
+ // src/is.ts
6
6
  /**
7
7
  * Is the value empty, or only containing `null` or `undefined` values?
8
8
  *
@@ -119,5 +119,4 @@ function isNumerical(value) {
119
119
  function isObject(value) {
120
120
  return typeof value === "object" && value !== null || typeof value === "function";
121
121
  }
122
- //#endregion
123
122
  export { isArrayOrPlainObject, isConstructor, isEmpty, isInstanceOf, isKey, isNonArrayOrPlainObject, isNonConstructor, isNonEmpty, isNonInstanceOf, isNonKey, isNonNullable, isNonNullableOrEmpty, isNonNullableOrWhitespace, isNonNumber, isNonNumerical, isNonObject, isNonPlainObject, isNonPrimitive, isNonTemplateStringsArray, isNonTypedArray, isNullable, isNullableOrEmpty, isNullableOrWhitespace, isNumber, isNumerical, isObject, isPlainObject, isPrimitive, isTemplateStringsArray, isTypedArray };
package/dist/logger.d.mts CHANGED
@@ -1,5 +1,4 @@
1
1
  import { Lumberjack, TimeLogger } from "./models/logger.model.mjs";
2
- //#region src/logger.d.ts
3
2
  declare function TimeLogger(this: any, label: string): void;
4
3
  /**
5
4
  * Is the value a _Logger_?
@@ -21,5 +20,4 @@ declare function isTimeLogger(value: unknown): value is TimeLogger;
21
20
  * _(Logging can be enabled or disabled by setting the `enabled` property)_
22
21
  */
23
22
  declare const Logger: Lumberjack;
24
- //#endregion
25
23
  export { Logger, type TimeLogger, isLogger, isTimeLogger };
package/dist/logger.mjs CHANGED
@@ -1,9 +1,10 @@
1
1
  import { noop } from "./internal/function/misc.mjs";
2
2
  import { getString } from "./internal/string/misc.mjs";
3
- import { LOGGER_NAME, LOGGER_NAME_TIMED, LOGGER_PROPERTY, LOGGER_SYMBOL } from "./models/logger.model.mjs";
4
- //#region src/logger.ts
5
- function Lumberjack() {}
6
- Lumberjack.prototype[LOGGER_PROPERTY] = LOGGER_NAME;
3
+ import { LOGGER_NAME, LOGGER_NAME_TIMED, LOGGER_SYMBOL } from "./models/logger.model.mjs";
4
+ // src/logger.ts
5
+ function Lumberjack() {
6
+ this[LOGGER_SYMBOL] = { name: LOGGER_NAME };
7
+ }
7
8
  Lumberjack.prototype.time = getTimeLogger;
8
9
  Object.defineProperties(Lumberjack.prototype, {
9
10
  debug: { get: getLoggerCallback.bind("debug") },
@@ -23,6 +24,7 @@ Object.defineProperties(Lumberjack.prototype, {
23
24
  function TimeLogger(label) {
24
25
  this[LOGGER_SYMBOL] = {
25
26
  label,
27
+ name: LOGGER_NAME_TIMED,
26
28
  started: enabled,
27
29
  stopped: false
28
30
  };
@@ -31,7 +33,6 @@ function TimeLogger(label) {
31
33
  };
32
34
  if (this[LOGGER_SYMBOL].started) console.time(label);
33
35
  }
34
- TimeLogger.prototype[LOGGER_PROPERTY] = LOGGER_NAME_TIMED;
35
36
  Object.defineProperties(TimeLogger.prototype, {
36
37
  active: {
37
38
  enumerable: true,
@@ -74,7 +75,7 @@ function isLogger(value) {
74
75
  return isLoggerInstance(LOGGER_NAME, value);
75
76
  }
76
77
  function isLoggerInstance(name, value) {
77
- return typeof value === "object" && value !== null && "$logger" in value && value["$logger"] === name;
78
+ return typeof value === "object" && value !== null && LOGGER_SYMBOL in value && value[LOGGER_SYMBOL].name === name;
78
79
  }
79
80
  /**
80
81
  * Is the value a _TimeLogger_?
@@ -95,5 +96,4 @@ function setLoggerEnabled(value) {
95
96
  */
96
97
  const Logger = new Lumberjack();
97
98
  let enabled = true;
98
- //#endregion
99
99
  export { Logger, isLogger, isTimeLogger };
package/dist/math.d.mts CHANGED
@@ -1,7 +1,6 @@
1
1
  import { NumericalValues, PlainObject } from "./models/index.mjs";
2
2
  import { max, min } from "./internal/math/aggregate.mjs";
3
3
  import { floor, round } from "./internal/math/misc.mjs";
4
- //#region src/math.d.ts
5
4
  /**
6
5
  * Get the average value from a list of items
7
6
  *
@@ -194,5 +193,4 @@ export declare function sum<Item extends PlainObject>(items: Item[], key: keyof
194
193
  * ```
195
194
  */
196
195
  export declare function sum(values: number[]): number;
197
- //#endregion
198
196
  export { floor, max, min, round };
package/dist/math.mjs CHANGED
@@ -1,8 +1,8 @@
1
1
  import { isNumber } from "./internal/is.mjs";
2
+ import { aggregate, getAggregateCallback, getAggregated, max, min } from "./internal/math/aggregate.mjs";
2
3
  import { floor, round, roundNumber } from "./internal/math/misc.mjs";
3
4
  import { AGGREGATION_AVERAGE } from "./models/math.model.mjs";
4
- import { aggregate, getAggregateCallback, getAggregated, max, min } from "./internal/math/aggregate.mjs";
5
- //#region src/math.ts
5
+ // src/math.ts
6
6
  function average(array, key) {
7
7
  const aggregated = aggregate(AGGREGATION_AVERAGE, array, key);
8
8
  return aggregated.count > 0 ? aggregated.value / aggregated.count : NaN;
@@ -55,5 +55,4 @@ function median(array, key) {
55
55
  function sum(array, key) {
56
56
  return getAggregated("sum", array, key);
57
57
  }
58
- //#endregion
59
58
  export { average, ceil, count, floor, max, median, min, round, sum };
@@ -1,5 +1,4 @@
1
1
  import { GenericCallback } from "./index.mjs";
2
- //#region src/models/aborter.model.d.ts
3
2
  export type Aborter = {
4
3
  callback: GenericCallback;
5
4
  cancel(): void;
@@ -8,5 +7,4 @@ export type Aborter = {
8
7
  export declare const ABORTER_EVENT = "abort";
9
8
  export declare const ABORTER_OPTIONS: {
10
9
  once: boolean;
11
- };
12
- //#endregion
10
+ };
@@ -1,5 +1,4 @@
1
- //#region src/models/aborter.model.ts
1
+ // src/models/aborter.model.ts
2
2
  const ABORTER_EVENT = "abort";
3
3
  const ABORTER_OPTIONS = { once: true };
4
- //#endregion
5
4
  export { ABORTER_EVENT, ABORTER_OPTIONS };
@@ -1,5 +1,4 @@
1
1
  import { ArrayComparison } from "./array.misc.model.mjs";
2
- //#region src/models/array/array.match.model.d.ts
3
2
  export declare const ARRAY_MATCH_COMPARISON_END: ArrayComparison;
4
3
  export declare const ARRAY_MATCH_COMPARISON_INSIDE: ArrayComparison;
5
4
  export declare const ARRAY_MATCH_COMPARISON_INVALID: ArrayComparison;
@@ -10,5 +9,4 @@ export declare const arrayMatchEndings: Set<ArrayComparison>;
10
9
  export declare const arrayMatchInvalid: readonly [-1, ArrayComparison];
11
10
  export declare const arrayMatchOutside: readonly [-1, ArrayComparison];
12
11
  export declare const arrayMatchOutsides: Set<ArrayComparison>;
13
- export declare const arrayMatchStarts: Set<ArrayComparison>;
14
- //#endregion
12
+ export declare const arrayMatchStarts: Set<ArrayComparison>;
@@ -1,4 +1,4 @@
1
- //#region src/models/array/array.match.model.ts
1
+ // src/models/array/array.match.model.ts
2
2
  const ARRAY_MATCH_COMPARISON_END = "end";
3
3
  const ARRAY_MATCH_COMPARISON_INSIDE = "inside";
4
4
  const ARRAY_MATCH_COMPARISON_INVALID = "invalid";
@@ -10,5 +10,4 @@ const arrayMatchInvalid = [-1, ARRAY_MATCH_COMPARISON_INVALID];
10
10
  const arrayMatchOutside = [-1, ARRAY_MATCH_COMPARISON_OUTSIDE];
11
11
  const arrayMatchOutsides = /* @__PURE__ */ new Set([ARRAY_MATCH_COMPARISON_INVALID, ARRAY_MATCH_COMPARISON_OUTSIDE]);
12
12
  const arrayMatchStarts = /* @__PURE__ */ new Set([ARRAY_MATCH_COMPARISON_START, ARRAY_MATCH_COMPARISON_SAME]);
13
- //#endregion
14
13
  export { ARRAY_MATCH_COMPARISON_END, ARRAY_MATCH_COMPARISON_INSIDE, ARRAY_MATCH_COMPARISON_INVALID, ARRAY_MATCH_COMPARISON_OUTSIDE, ARRAY_MATCH_COMPARISON_SAME, ARRAY_MATCH_COMPARISON_START, arrayMatchEndings, arrayMatchInvalid, arrayMatchOutside, arrayMatchOutsides, arrayMatchStarts };
@@ -1,11 +1,20 @@
1
1
  import { GenericCallback } from "../index.mjs";
2
- //#region src/models/array/array.misc.model.d.ts
3
2
  export type ArrayCompareSetsType = "difference" | "intersection" | "union";
4
3
  /**
5
4
  * Comparison of an array within another array
6
5
  */
7
6
  export type ArrayComparison = "end" | "inside" | "invalid" | "outside" | "same" | "start";
8
7
  export type ArrayExtractType = "drop" | "take";
8
+ export type ArrayFindParameters = {
9
+ bare?: boolean;
10
+ indiced?: boolean;
11
+ input: unknown[];
12
+ limit?: number;
13
+ reverse?: boolean;
14
+ };
15
+ export type ArrayFindResult = {
16
+ values: unknown[];
17
+ };
9
18
  export type ArrayFlattened<Value> = Value extends ReadonlyArray<infer Inner> ? Inner : Value;
10
19
  export type ArrayGetCallbacks = {
11
20
  bool?: GenericCallback;
@@ -31,4 +40,4 @@ export declare const ARRAY_SETS_COMPARE_INTERSECTION: ArrayCompareSetsType;
31
40
  export declare const ARRAY_SETS_COMPARE_UNION: ArrayCompareSetsType;
32
41
  export declare const ARRAY_SLICE_DROP: ArrayExtractType;
33
42
  export declare const ARRAY_SLICE_TAKE: ArrayExtractType;
34
- //#endregion
43
+ export declare const ARRAY_UNIQUE_THRESHOLD = 100;
@@ -1,4 +1,4 @@
1
- //#region src/models/array/array.misc.model.ts
1
+ // src/models/array/array.misc.model.ts
2
2
  const ARRAY_CHUNK_MAX_SIZE = 5e3;
3
3
  const ARRAY_INSERT_TYPE_INSERT = "insert";
4
4
  const ARRAY_INSERT_TYPE_PUSH = "push";
@@ -8,5 +8,5 @@ const ARRAY_SETS_COMPARE_INTERSECTION = "intersection";
8
8
  const ARRAY_SETS_COMPARE_UNION = "union";
9
9
  const ARRAY_SLICE_DROP = "drop";
10
10
  const ARRAY_SLICE_TAKE = "take";
11
- //#endregion
12
- export { ARRAY_CHUNK_MAX_SIZE, ARRAY_INSERT_TYPE_INSERT, ARRAY_INSERT_TYPE_PUSH, ARRAY_INSERT_TYPE_SPLICE, ARRAY_SETS_COMPARE_DIFFERENCE, ARRAY_SETS_COMPARE_INTERSECTION, ARRAY_SETS_COMPARE_UNION, ARRAY_SLICE_DROP, ARRAY_SLICE_TAKE };
11
+ const ARRAY_UNIQUE_THRESHOLD = 100;
12
+ export { ARRAY_CHUNK_MAX_SIZE, ARRAY_INSERT_TYPE_INSERT, ARRAY_INSERT_TYPE_PUSH, ARRAY_INSERT_TYPE_SPLICE, ARRAY_SETS_COMPARE_DIFFERENCE, ARRAY_SETS_COMPARE_INTERSECTION, ARRAY_SETS_COMPARE_UNION, ARRAY_SLICE_DROP, ARRAY_SLICE_TAKE, ARRAY_UNIQUE_THRESHOLD };
@@ -1,5 +1,4 @@
1
1
  import { PlainObject, Primitive } from "../index.mjs";
2
- //#region src/models/array/array.sort.model.d.ts
3
2
  /**
4
3
  * Sorting information for arrays _(using a comparison callback)_
5
4
  */
@@ -118,5 +117,4 @@ export declare const SORT_THRESHOLD = 100;
118
117
  export declare const SORT_DIRECTION_ASCENDING: SortDirection;
119
118
  export declare const SORT_DIRECTION_DESCENDING: SortDirection;
120
119
  export declare const SORTER_SYMBOL: unique symbol;
121
- export declare const arrayModifiers: Record<string, number>;
122
- //#endregion
120
+ export declare const arrayModifiers: Record<string, number>;
@@ -1,4 +1,4 @@
1
- //#region src/models/array/array.sort.model.ts
1
+ // src/models/array/array.sort.model.ts
2
2
  const SORT_PEEK_PERCENTAGE = 10;
3
3
  const SORT_THRESHOLD = 100;
4
4
  const SORT_DIRECTION_ASCENDING = "ascending";
@@ -8,5 +8,4 @@ const arrayModifiers = {
8
8
  [SORT_DIRECTION_ASCENDING]: 1,
9
9
  [SORT_DIRECTION_DESCENDING]: -1
10
10
  };
11
- //#endregion
12
11
  export { SORTER_SYMBOL, SORT_DIRECTION_ASCENDING, SORT_DIRECTION_DESCENDING, SORT_PEEK_PERCENTAGE, SORT_THRESHOLD, arrayModifiers };