@livestore/utils 0.0.0-snapshot-909cdd1ac2fd591945c2be2b0f53e14d87f3c9d4

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 (169) hide show
  1. package/dist/.tsbuildinfo.json +1 -0
  2. package/dist/Deferred.d.ts +10 -0
  3. package/dist/Deferred.d.ts.map +1 -0
  4. package/dist/Deferred.js +21 -0
  5. package/dist/Deferred.js.map +1 -0
  6. package/dist/NoopTracer.d.ts +10 -0
  7. package/dist/NoopTracer.d.ts.map +1 -0
  8. package/dist/NoopTracer.js +52 -0
  9. package/dist/NoopTracer.js.map +1 -0
  10. package/dist/base64.d.ts +13 -0
  11. package/dist/base64.d.ts.map +1 -0
  12. package/dist/base64.js +117 -0
  13. package/dist/base64.js.map +1 -0
  14. package/dist/browser.d.ts +3 -0
  15. package/dist/browser.d.ts.map +1 -0
  16. package/dist/browser.js +28 -0
  17. package/dist/browser.js.map +1 -0
  18. package/dist/cuid/cuid.browser.d.ts +18 -0
  19. package/dist/cuid/cuid.browser.d.ts.map +1 -0
  20. package/dist/cuid/cuid.browser.js +80 -0
  21. package/dist/cuid/cuid.browser.js.map +1 -0
  22. package/dist/cuid/cuid.node.d.ts +18 -0
  23. package/dist/cuid/cuid.node.d.ts.map +1 -0
  24. package/dist/cuid/cuid.node.js +83 -0
  25. package/dist/cuid/cuid.node.js.map +1 -0
  26. package/dist/effect/Effect.d.ts +28 -0
  27. package/dist/effect/Effect.d.ts.map +1 -0
  28. package/dist/effect/Effect.js +82 -0
  29. package/dist/effect/Effect.js.map +1 -0
  30. package/dist/effect/Error.d.ts +11 -0
  31. package/dist/effect/Error.d.ts.map +1 -0
  32. package/dist/effect/Error.js +7 -0
  33. package/dist/effect/Error.js.map +1 -0
  34. package/dist/effect/Schedule.d.ts +4 -0
  35. package/dist/effect/Schedule.d.ts.map +1 -0
  36. package/dist/effect/Schedule.js +5 -0
  37. package/dist/effect/Schedule.js.map +1 -0
  38. package/dist/effect/Scheduler.d.ts +4 -0
  39. package/dist/effect/Scheduler.d.ts.map +1 -0
  40. package/dist/effect/Scheduler.js +10 -0
  41. package/dist/effect/Scheduler.js.map +1 -0
  42. package/dist/effect/Schema/debug-diff.d.ts +12 -0
  43. package/dist/effect/Schema/debug-diff.d.ts.map +1 -0
  44. package/dist/effect/Schema/debug-diff.js +51 -0
  45. package/dist/effect/Schema/debug-diff.js.map +1 -0
  46. package/dist/effect/Schema/debug-diff.test.d.ts +2 -0
  47. package/dist/effect/Schema/debug-diff.test.d.ts.map +1 -0
  48. package/dist/effect/Schema/debug-diff.test.js +91 -0
  49. package/dist/effect/Schema/debug-diff.test.js.map +1 -0
  50. package/dist/effect/Schema/index.d.ts +18 -0
  51. package/dist/effect/Schema/index.d.ts.map +1 -0
  52. package/dist/effect/Schema/index.js +29 -0
  53. package/dist/effect/Schema/index.js.map +1 -0
  54. package/dist/effect/Schema/msgpack.d.ts +3 -0
  55. package/dist/effect/Schema/msgpack.d.ts.map +1 -0
  56. package/dist/effect/Schema/msgpack.js +7 -0
  57. package/dist/effect/Schema/msgpack.js.map +1 -0
  58. package/dist/effect/ServiceContext.d.ts +37 -0
  59. package/dist/effect/ServiceContext.d.ts.map +1 -0
  60. package/dist/effect/ServiceContext.js +55 -0
  61. package/dist/effect/ServiceContext.js.map +1 -0
  62. package/dist/effect/Stream.d.ts +10 -0
  63. package/dist/effect/Stream.d.ts.map +1 -0
  64. package/dist/effect/Stream.js +17 -0
  65. package/dist/effect/Stream.js.map +1 -0
  66. package/dist/effect/SubscriptionRef.d.ts +11 -0
  67. package/dist/effect/SubscriptionRef.d.ts.map +1 -0
  68. package/dist/effect/SubscriptionRef.js +5 -0
  69. package/dist/effect/SubscriptionRef.js.map +1 -0
  70. package/dist/effect/WebChannel.d.ts +30 -0
  71. package/dist/effect/WebChannel.d.ts.map +1 -0
  72. package/dist/effect/WebChannel.js +44 -0
  73. package/dist/effect/WebChannel.js.map +1 -0
  74. package/dist/effect/WebLock.d.ts +9 -0
  75. package/dist/effect/WebLock.d.ts.map +1 -0
  76. package/dist/effect/WebLock.js +73 -0
  77. package/dist/effect/WebLock.js.map +1 -0
  78. package/dist/effect/index.d.ts +21 -0
  79. package/dist/effect/index.d.ts.map +1 -0
  80. package/dist/effect/index.js +20 -0
  81. package/dist/effect/index.js.map +1 -0
  82. package/dist/fast-deep-equal.d.ts +2 -0
  83. package/dist/fast-deep-equal.d.ts.map +1 -0
  84. package/dist/fast-deep-equal.js +79 -0
  85. package/dist/fast-deep-equal.js.map +1 -0
  86. package/dist/global.d.ts +5 -0
  87. package/dist/global.d.ts.map +1 -0
  88. package/dist/global.js +2 -0
  89. package/dist/global.js.map +1 -0
  90. package/dist/guards.d.ts +6 -0
  91. package/dist/guards.d.ts.map +1 -0
  92. package/dist/guards.js +6 -0
  93. package/dist/guards.js.map +1 -0
  94. package/dist/index.d.ts +76 -0
  95. package/dist/index.d.ts.map +1 -0
  96. package/dist/index.js +176 -0
  97. package/dist/index.js.map +1 -0
  98. package/dist/misc.d.ts +3 -0
  99. package/dist/misc.d.ts.map +1 -0
  100. package/dist/misc.js +24 -0
  101. package/dist/misc.js.map +1 -0
  102. package/dist/nanoid/index.d.ts +2 -0
  103. package/dist/nanoid/index.d.ts.map +1 -0
  104. package/dist/nanoid/index.js +2 -0
  105. package/dist/nanoid/index.js.map +1 -0
  106. package/dist/object/index.d.ts +10 -0
  107. package/dist/object/index.d.ts.map +1 -0
  108. package/dist/object/index.js +10 -0
  109. package/dist/object/index.js.map +1 -0
  110. package/dist/object/omit.d.ts +3 -0
  111. package/dist/object/omit.d.ts.map +1 -0
  112. package/dist/object/omit.js +14 -0
  113. package/dist/object/omit.js.map +1 -0
  114. package/dist/object/pick.d.ts +14 -0
  115. package/dist/object/pick.d.ts.map +1 -0
  116. package/dist/object/pick.js +17 -0
  117. package/dist/object/pick.js.map +1 -0
  118. package/dist/promise.d.ts +6 -0
  119. package/dist/promise.d.ts.map +1 -0
  120. package/dist/promise.js +27 -0
  121. package/dist/promise.js.map +1 -0
  122. package/dist/set.d.ts +2 -0
  123. package/dist/set.d.ts.map +1 -0
  124. package/dist/set.js +10 -0
  125. package/dist/set.js.map +1 -0
  126. package/dist/string.d.ts +5 -0
  127. package/dist/string.d.ts.map +1 -0
  128. package/dist/string.js +8 -0
  129. package/dist/string.js.map +1 -0
  130. package/dist/time.d.ts +12 -0
  131. package/dist/time.d.ts.map +1 -0
  132. package/dist/time.js +22 -0
  133. package/dist/time.js.map +1 -0
  134. package/package.json +74 -0
  135. package/src/Deferred.ts +24 -0
  136. package/src/NoopTracer.ts +75 -0
  137. package/src/ambient.d.ts +3 -0
  138. package/src/base64.ts +123 -0
  139. package/src/browser.ts +32 -0
  140. package/src/cuid/cuid.browser.ts +95 -0
  141. package/src/cuid/cuid.node.ts +103 -0
  142. package/src/effect/Effect.ts +180 -0
  143. package/src/effect/Error.ts +6 -0
  144. package/src/effect/Schedule.ts +10 -0
  145. package/src/effect/Scheduler.ts +14 -0
  146. package/src/effect/Schema/debug-diff.test.ts +102 -0
  147. package/src/effect/Schema/debug-diff.ts +58 -0
  148. package/src/effect/Schema/index.ts +58 -0
  149. package/src/effect/Schema/msgpack.ts +8 -0
  150. package/src/effect/ServiceContext.ts +108 -0
  151. package/src/effect/Stream.ts +63 -0
  152. package/src/effect/SubscriptionRef.ts +22 -0
  153. package/src/effect/WebChannel.ts +116 -0
  154. package/src/effect/WebLock.ts +95 -0
  155. package/src/effect/index.ts +91 -0
  156. package/src/fast-deep-equal.ts +72 -0
  157. package/src/global.ts +5 -0
  158. package/src/guards.ts +8 -0
  159. package/src/index.ts +240 -0
  160. package/src/misc.ts +26 -0
  161. package/src/nanoid/index.ts +1 -0
  162. package/src/object/index.ts +24 -0
  163. package/src/object/omit.ts +17 -0
  164. package/src/object/pick.ts +27 -0
  165. package/src/promise.ts +43 -0
  166. package/src/set.ts +10 -0
  167. package/src/string.ts +9 -0
  168. package/src/time.ts +25 -0
  169. package/tsconfig.json +10 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WebChannel.js","sourceRoot":"","sources":["../../src/effect/WebChannel.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { Deferred, Effect } from 'effect';
2
+ export declare const withLock: <E2>({ lockName, onTaken, options, }: {
3
+ lockName: string;
4
+ onTaken?: Effect.Effect<void, E2>;
5
+ options?: Omit<LockOptions, "signal">;
6
+ }) => <Ctx, E, A>(eff: Effect.Effect<A, E, Ctx>) => Effect.Effect<A | void, E | E2, Ctx>;
7
+ export declare const waitForDeferredLock: (deferred: Deferred.Deferred<void>, lockName: string) => Effect.Effect<void, never, never>;
8
+ export declare const tryGetDeferredLock: (deferred: Deferred.Deferred<void>, lockName: string) => Effect.Effect<boolean, never, never>;
9
+ //# sourceMappingURL=WebLock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WebLock.d.ts","sourceRoot":"","sources":["../../src/effect/WebLock.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAW,MAAM,QAAQ,CAAA;AAGlD,eAAO,MAAM,QAAQ,GAClB,EAAE,mCAIA;IACD,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;IACjC,OAAO,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;CACtC,MACA,GAAG,EAAE,CAAC,EAAE,CAAC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,GAAG,CAiC3E,CAAA;AAEN,eAAO,MAAM,mBAAmB,aAAc,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,MAAM,sCAqBnF,CAAA;AAEJ,eAAO,MAAM,kBAAkB,aAAc,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,MAAM,yCAsBlF,CAAA"}
@@ -0,0 +1,73 @@
1
+ import { Deferred, Effect, Runtime } from 'effect';
2
+ // See https://developer.mozilla.org/en-US/docs/Web/API/Web_Locks_API
3
+ export const withLock = ({ lockName, onTaken, options, }) => (eff) => Effect.gen(function* () {
4
+ const runtime = yield* Effect.runtime();
5
+ const exit = yield* Effect.tryPromise({
6
+ try: (signal) => {
7
+ if (signal.aborted)
8
+ return 'aborted';
9
+ // NOTE The 'signal' and 'ifAvailable' options cannot be used together.
10
+ const requestOptions = options?.ifAvailable === true ? options : { ...options, signal };
11
+ return navigator.locks.request(lockName, requestOptions, async (lock) => {
12
+ if (lock === null) {
13
+ if (onTaken) {
14
+ const exit = await Runtime.runPromiseExit(runtime)(onTaken);
15
+ if (exit._tag === 'Failure') {
16
+ return exit;
17
+ }
18
+ }
19
+ return;
20
+ }
21
+ // TODO also propagate Effect interruption to the execution
22
+ return Runtime.runPromiseExit(runtime)(eff);
23
+ });
24
+ },
25
+ catch: (err) => err,
26
+ });
27
+ if (exit._tag === 'Failure') {
28
+ return yield* Effect.failCause(exit.cause);
29
+ }
30
+ else {
31
+ return exit.value;
32
+ }
33
+ });
34
+ export const waitForDeferredLock = (deferred, lockName) => Effect.async((cb, signal) => {
35
+ if (signal.aborted)
36
+ return;
37
+ navigator.locks
38
+ .request(lockName, { signal, mode: 'exclusive', ifAvailable: false }, (_lock) => {
39
+ // immediately continuing calling Effect since we have the lock
40
+ cb(Effect.void);
41
+ // the code below is still running
42
+ // holding lock until deferred is resolved
43
+ return Effect.runPromise(Deferred.await(deferred));
44
+ })
45
+ .catch((error) => {
46
+ if (error.code === 20 && error.message === 'signal is aborted without reason') {
47
+ // Given signal interruption is handled via Effect, we can ignore this case
48
+ }
49
+ else {
50
+ throw error;
51
+ }
52
+ });
53
+ });
54
+ export const tryGetDeferredLock = (deferred, lockName) => Effect.async((cb, signal) => {
55
+ navigator.locks.request(lockName, { mode: 'exclusive', ifAvailable: true }, (lock) => {
56
+ cb(Effect.succeed(lock !== null));
57
+ // the code below is still running
58
+ const abortPromise = new Promise((resolve) => {
59
+ signal.addEventListener('abort', () => {
60
+ resolve();
61
+ });
62
+ });
63
+ // holding lock until deferred is resolved
64
+ return Promise.race([
65
+ Effect.runPromise(Deferred.await(deferred)),
66
+ // .finally(() =>
67
+ // console.log('[@livestore/utils:WebLock] tryGetDeferredLock. finally', lockName),
68
+ // ),
69
+ abortPromise,
70
+ ]);
71
+ });
72
+ });
73
+ //# sourceMappingURL=WebLock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WebLock.js","sourceRoot":"","sources":["../../src/effect/WebLock.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import '../global.js';
2
+ export { Scope, Ref, SynchronizedRef, Queue, Fiber, FiberId, FiberSet, FiberMap, FiberHandle, Inspectable, RuntimeFlags, PubSub, Exit, Cause, Runtime, FiberRef, FiberRefs, FiberRefsPatch, Deferred, Metric, MetricState, Request, Tracer, Context, Data, Either, Brand, Hash, Equal, Chunk, Duration, Array as ReadonlyArray, Record as ReadonlyRecord, SortedMap, HashMap, HashSet, MutableHashSet, MutableHashMap, Option, LogLevel, Logger, Layer, STM, TRef, Channel, pipe, identity, GlobalValue, Match, } from 'effect';
3
+ export { dual } from 'effect/Function';
4
+ export * as Stream from './Stream.js';
5
+ export * as SubscriptionRef from './SubscriptionRef.js';
6
+ export * as WebChannel from './WebChannel.js';
7
+ export * as SchemaAST from 'effect/SchemaAST';
8
+ export { TreeFormatter } from 'effect/ParseResult';
9
+ export { ParseResult, Pretty } from 'effect';
10
+ export type { Serializable, SerializableWithResult } from 'effect/Schema';
11
+ export * as Schema from './Schema/index.js';
12
+ export * as OtelTracer from '@effect/opentelemetry/Tracer';
13
+ export { Transferable, FileSystem, Worker, WorkerError, WorkerRunner, Terminal, HttpServer, HttpClient, HttpClientError, HttpClientRequest, HttpClientResponse, FetchHttpClient, } from '@effect/platform';
14
+ export { BrowserWorker, BrowserWorkerRunner } from '@effect/platform-browser';
15
+ export * as Effect from './Effect.js';
16
+ export * as Schedule from './Schedule.js';
17
+ export * as Scheduler from './Scheduler.js';
18
+ export * from './Error.js';
19
+ export * as ServiceContext from './ServiceContext.js';
20
+ export * as WebLock from './WebLock.js';
21
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/effect/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,CAAA;AAErB,OAAO,EACL,KAAK,EACL,GAAG,EACH,eAAe,EACf,KAAK,EACL,KAAK,EACL,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,WAAW,EACX,YAAY,EACZ,MAAM,EACN,IAAI,EACJ,KAAK,EACL,OAAO,EACP,QAAQ,EACR,SAAS,EACT,cAAc,EACd,QAAQ,EACR,MAAM,EACN,WAAW,EACX,OAAO,EACP,MAAM,EACN,OAAO,EACP,IAAI,EACJ,MAAM,EACN,KAAK,EACL,IAAI,EACJ,KAAK,EACL,KAAK,EACL,QAAQ,EACR,KAAK,IAAI,aAAa,EACtB,MAAM,IAAI,cAAc,EACxB,SAAS,EACT,OAAO,EACP,OAAO,EACP,cAAc,EACd,cAAc,EACd,MAAM,EACN,QAAQ,EACR,MAAM,EACN,KAAK,EACL,GAAG,EACH,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,QAAQ,EACR,WAAW,EACX,KAAK,GACN,MAAM,QAAQ,CAAA;AAEf,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAEtC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC,OAAO,KAAK,eAAe,MAAM,sBAAsB,CAAA;AAEvD,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C,OAAO,KAAK,SAAS,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC5C,YAAY,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AACzE,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,UAAU,MAAM,8BAA8B,CAAA;AAE1D,OAAO,EACL,YAAY,EACZ,UAAU,EACV,MAAM,EACN,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,UAAU,EACV,UAAU,EACV,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,GAChB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAE7E,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C,cAAc,YAAY,CAAA;AAC1B,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AACrD,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA"}
@@ -0,0 +1,20 @@
1
+ import '../global.js';
2
+ export { Scope, Ref, SynchronizedRef, Queue, Fiber, FiberId, FiberSet, FiberMap, FiberHandle, Inspectable, RuntimeFlags, PubSub, Exit, Cause, Runtime, FiberRef, FiberRefs, FiberRefsPatch, Deferred, Metric, MetricState, Request, Tracer, Context, Data, Either, Brand, Hash, Equal, Chunk, Duration, Array as ReadonlyArray, Record as ReadonlyRecord, SortedMap, HashMap, HashSet, MutableHashSet, MutableHashMap, Option, LogLevel, Logger, Layer, STM, TRef, Channel, pipe, identity, GlobalValue, Match, } from 'effect';
3
+ export { dual } from 'effect/Function';
4
+ export * as Stream from './Stream.js';
5
+ export * as SubscriptionRef from './SubscriptionRef.js';
6
+ export * as WebChannel from './WebChannel.js';
7
+ export * as SchemaAST from 'effect/SchemaAST';
8
+ export { TreeFormatter } from 'effect/ParseResult';
9
+ export { ParseResult, Pretty } from 'effect';
10
+ export * as Schema from './Schema/index.js';
11
+ export * as OtelTracer from '@effect/opentelemetry/Tracer';
12
+ export { Transferable, FileSystem, Worker, WorkerError, WorkerRunner, Terminal, HttpServer, HttpClient, HttpClientError, HttpClientRequest, HttpClientResponse, FetchHttpClient, } from '@effect/platform';
13
+ export { BrowserWorker, BrowserWorkerRunner } from '@effect/platform-browser';
14
+ export * as Effect from './Effect.js';
15
+ export * as Schedule from './Schedule.js';
16
+ export * as Scheduler from './Scheduler.js';
17
+ export * from './Error.js';
18
+ export * as ServiceContext from './ServiceContext.js';
19
+ export * as WebLock from './WebLock.js';
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/effect/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,CAAA;AAErB,OAAO,EACL,KAAK,EACL,GAAG,EACH,eAAe,EACf,KAAK,EACL,KAAK,EACL,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,WAAW,EACX,YAAY,EACZ,MAAM,EACN,IAAI,EACJ,KAAK,EACL,OAAO,EACP,QAAQ,EACR,SAAS,EACT,cAAc,EACd,QAAQ,EACR,MAAM,EACN,WAAW,EACX,OAAO,EACP,MAAM,EACN,OAAO,EACP,IAAI,EACJ,MAAM,EACN,KAAK,EACL,IAAI,EACJ,KAAK,EACL,KAAK,EACL,QAAQ,EACR,KAAK,IAAI,aAAa,EACtB,MAAM,IAAI,cAAc,EACxB,SAAS,EACT,OAAO,EACP,OAAO,EACP,cAAc,EACd,cAAc,EACd,MAAM,EACN,QAAQ,EACR,MAAM,EACN,KAAK,EACL,GAAG,EACH,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,QAAQ,EACR,WAAW,EACX,KAAK,GACN,MAAM,QAAQ,CAAA;AAEf,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAEtC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC,OAAO,KAAK,eAAe,MAAM,sBAAsB,CAAA;AAEvD,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C,OAAO,KAAK,SAAS,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE5C,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,UAAU,MAAM,8BAA8B,CAAA;AAE1D,OAAO,EACL,YAAY,EACZ,UAAU,EACV,MAAM,EACN,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,UAAU,EACV,UAAU,EACV,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,GAChB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAE7E,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C,cAAc,YAAY,CAAA;AAC1B,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AACrD,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const deepEqual: <T>(a: T, b: T) => boolean;
2
+ //# sourceMappingURL=fast-deep-equal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fast-deep-equal.d.ts","sourceRoot":"","sources":["../src/fast-deep-equal.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,SAAS,GAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAG,OAkEzC,CAAA"}
@@ -0,0 +1,79 @@
1
+ /* eslint-disable no-var */
2
+ // Copied from fast-deep-equal
3
+ // MIT License
4
+ export const deepEqual = (a, b) => {
5
+ if (a === b)
6
+ return true;
7
+ if (a && b && typeof a == 'object' && typeof b == 'object') {
8
+ if (a.constructor !== b.constructor)
9
+ return false;
10
+ var length, i, keys;
11
+ if (Array.isArray(a)) {
12
+ length = a.length;
13
+ // @ts-expect-error ...
14
+ if (length != b.length)
15
+ return false;
16
+ for (i = length; i-- !== 0;)
17
+ // @ts-expect-error ...
18
+ if (!deepEqual(a[i], b[i]))
19
+ return false;
20
+ return true;
21
+ }
22
+ if (a instanceof Map && b instanceof Map) {
23
+ if (a.size !== b.size)
24
+ return false;
25
+ for (i of a.entries())
26
+ if (!b.has(i[0]))
27
+ return false;
28
+ for (i of a.entries())
29
+ if (!deepEqual(i[1], b.get(i[0])))
30
+ return false;
31
+ return true;
32
+ }
33
+ if (a instanceof Set && b instanceof Set) {
34
+ if (a.size !== b.size)
35
+ return false;
36
+ for (i of a.entries())
37
+ if (!b.has(i[0]))
38
+ return false;
39
+ return true;
40
+ }
41
+ if (ArrayBuffer.isView(a) && ArrayBuffer.isView(b)) {
42
+ // @ts-expect-error ...
43
+ length = a.length;
44
+ // @ts-expect-error ...
45
+ if (length != b.length)
46
+ return false;
47
+ for (i = length; i-- !== 0;)
48
+ // @ts-expect-error ...
49
+ if (a[i] !== b[i])
50
+ return false;
51
+ return true;
52
+ }
53
+ // @ts-expect-error ...
54
+ if (a.constructor === RegExp)
55
+ return a.source === b.source && a.flags === b.flags;
56
+ if (a.valueOf !== undefined && a.valueOf !== Object.prototype.valueOf)
57
+ return a.valueOf() === b.valueOf();
58
+ if (a.toString !== undefined && a.toString !== Object.prototype.toString)
59
+ return a.toString() === b.toString();
60
+ keys = Object.keys(a);
61
+ length = keys.length;
62
+ if (length !== Object.keys(b).length)
63
+ return false;
64
+ for (i = length; i-- !== 0;)
65
+ // @ts-expect-error ...
66
+ if (!Object.prototype.hasOwnProperty.call(b, keys[i]))
67
+ return false;
68
+ for (i = length; i-- !== 0;) {
69
+ var key = keys[i];
70
+ // @ts-expect-error ...
71
+ if (!deepEqual(a[key], b[key]))
72
+ return false;
73
+ }
74
+ return true;
75
+ }
76
+ // true if both NaN, false otherwise
77
+ return a !== a && b !== b;
78
+ };
79
+ //# sourceMappingURL=fast-deep-equal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fast-deep-equal.js","sourceRoot":"","sources":["../src/fast-deep-equal.ts"],"names":[],"mappings":"AAAA,2BAA2B;AAE3B,8BAA8B;AAC9B,cAAc;AAEd,MAAM,CAAC,MAAM,SAAS,GAAG,CAAI,CAAI,EAAE,CAAI,EAAW,EAAE;IAClD,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IAExB,IAAI,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,IAAI,QAAQ,IAAI,OAAO,CAAC,IAAI,QAAQ,EAAE,CAAC;QAC3D,IAAI,CAAC,CAAC,WAAW,KAAK,CAAC,CAAC,WAAW;YAAE,OAAO,KAAK,CAAA;QAEjD,IAAI,MAAM,EAAE,CAAC,EAAE,IAAI,CAAA;QACnB,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACrB,MAAM,GAAG,CAAC,CAAC,MAAM,CAAA;YACjB,uBAAuB;YACvB,IAAI,MAAM,IAAI,CAAC,CAAC,MAAM;gBAAE,OAAO,KAAK,CAAA;YACpC,KAAK,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,KAAK,CAAC;gBACxB,uBAAuB;gBACvB,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;oBAAE,OAAO,KAAK,CAAA;YAC1C,OAAO,IAAI,CAAA;QACb,CAAC;QAED,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;YACzC,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI;gBAAE,OAAO,KAAK,CAAA;YACnC,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE;gBAAE,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBAAE,OAAO,KAAK,CAAA;YACrD,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE;gBAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBAAE,OAAO,KAAK,CAAA;YACtE,OAAO,IAAI,CAAA;QACb,CAAC;QAED,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;YACzC,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI;gBAAE,OAAO,KAAK,CAAA;YACnC,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE;gBAAE,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBAAE,OAAO,KAAK,CAAA;YACrD,OAAO,IAAI,CAAA;QACb,CAAC;QAED,IAAI,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;YACnD,uBAAuB;YACvB,MAAM,GAAG,CAAC,CAAC,MAAM,CAAA;YACjB,uBAAuB;YACvB,IAAI,MAAM,IAAI,CAAC,CAAC,MAAM;gBAAE,OAAO,KAAK,CAAA;YACpC,KAAK,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,KAAK,CAAC;gBACxB,uBAAuB;gBACvB,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBAAE,OAAO,KAAK,CAAA;YACjC,OAAO,IAAI,CAAA;QACb,CAAC;QAED,uBAAuB;QACvB,IAAI,CAAC,CAAC,WAAW,KAAK,MAAM;YAAE,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,CAAA;QACjF,IAAI,CAAC,CAAC,OAAO,KAAK,SAAS,IAAI,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,SAAS,CAAC,OAAO;YAAE,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,OAAO,EAAE,CAAA;QACzG,IAAI,CAAC,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,SAAS,CAAC,QAAQ;YAAE,OAAO,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAA;QAE9G,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACrB,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;QACpB,IAAI,MAAM,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM;YAAE,OAAO,KAAK,CAAA;QAElD,KAAK,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,KAAK,CAAC;YACxB,uBAAuB;YACvB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;gBAAE,OAAO,KAAK,CAAA;QAErE,KAAK,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,KAAK,CAAC,GAAI,CAAC;YAC7B,IAAI,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;YAEjB,uBAAuB;YACvB,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;gBAAE,OAAO,KAAK,CAAA;QAC9C,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAED,oCAAoC;IACpC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AAC3B,CAAC,CAAA"}
@@ -0,0 +1,5 @@
1
+ declare global {
2
+ export type TODO<_Reason extends string = 'unknown'> = any;
3
+ }
4
+ export {};
5
+ //# sourceMappingURL=global.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"global.d.ts","sourceRoot":"","sources":["../src/global.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,CAAC;IACb,MAAM,MAAM,IAAI,CAAC,OAAO,SAAS,MAAM,GAAG,SAAS,IAAI,GAAG,CAAA;CAC3D;AAED,OAAO,EAAE,CAAA"}
package/dist/global.js ADDED
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=global.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"global.js","sourceRoot":"","sources":["../src/global.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ export declare const isNotUndefined: <T>(_: T | undefined) => _ is T;
2
+ export declare const isNotNull: <T>(_: T | null) => _ is T;
3
+ export declare const isUndefined: <T>(_: T | undefined) => _ is undefined;
4
+ export declare const isNil: (val: any) => val is null | undefined;
5
+ export declare const isNotNil: <T>(val: T | undefined | null) => val is T;
6
+ //# sourceMappingURL=guards.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"guards.d.ts","sourceRoot":"","sources":["../src/guards.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,GAAI,CAAC,KAAK,CAAC,GAAG,SAAS,KAAG,CAAC,IAAI,CAAoB,CAAA;AAE9E,eAAO,MAAM,SAAS,GAAI,CAAC,KAAK,CAAC,GAAG,IAAI,KAAG,CAAC,IAAI,CAAe,CAAA;AAC/D,eAAO,MAAM,WAAW,GAAI,CAAC,KAAK,CAAC,GAAG,SAAS,KAAG,CAAC,IAAI,SAA4B,CAAA;AAEnF,eAAO,MAAM,KAAK,QAAS,GAAG,KAAG,GAAG,IAAI,IAAI,GAAG,SAA8C,CAAA;AAE7F,eAAO,MAAM,QAAQ,GAAI,CAAC,OAAO,CAAC,GAAG,SAAS,GAAG,IAAI,KAAG,GAAG,IAAI,CAAsC,CAAA"}
package/dist/guards.js ADDED
@@ -0,0 +1,6 @@
1
+ export const isNotUndefined = (_) => _ !== undefined;
2
+ export const isNotNull = (_) => _ !== null;
3
+ export const isUndefined = (_) => _ === undefined;
4
+ export const isNil = (val) => val === null || val === undefined;
5
+ export const isNotNil = (val) => val !== null && val !== undefined;
6
+ //# sourceMappingURL=guards.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"guards.js","sourceRoot":"","sources":["../src/guards.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GAAG,CAAI,CAAgB,EAAU,EAAE,CAAC,CAAC,KAAK,SAAS,CAAA;AAE9E,MAAM,CAAC,MAAM,SAAS,GAAG,CAAI,CAAW,EAAU,EAAE,CAAC,CAAC,KAAK,IAAI,CAAA;AAC/D,MAAM,CAAC,MAAM,WAAW,GAAG,CAAI,CAAgB,EAAkB,EAAE,CAAC,CAAC,KAAK,SAAS,CAAA;AAEnF,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,GAAQ,EAA2B,EAAE,CAAC,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,CAAA;AAE7F,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAI,GAAyB,EAAY,EAAE,CAAC,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,CAAA"}
@@ -0,0 +1,76 @@
1
+ export * from './string.js';
2
+ export * from './guards.js';
3
+ export * from './object/index.js';
4
+ export * from './promise.js';
5
+ export * from './time.js';
6
+ export * from './NoopTracer.js';
7
+ export * from './set.js';
8
+ export * from './browser.js';
9
+ export * from './Deferred.js';
10
+ export * from './misc.js';
11
+ export * from './fast-deep-equal.js';
12
+ export * as base64 from './base64.js';
13
+ export { default as prettyBytes } from 'pretty-bytes';
14
+ import type * as otel from '@opentelemetry/api';
15
+ export type Prettify<T> = T extends infer U ? {
16
+ [K in keyof U]: Prettify<U[K]>;
17
+ } : never;
18
+ export type PrettifyFlat<T> = T extends infer U ? {
19
+ [K in keyof U]: U[K];
20
+ } : never;
21
+ export type TypeEq<A, B> = (<T>() => T extends A ? 1 : 2) extends <T>() => T extends B ? 1 : 2 ? true : false;
22
+ /** `A` is subtype of `B` */
23
+ export type IsSubtype<A, B> = A extends B ? true : false;
24
+ export type AssertTrue<T extends true> = T;
25
+ export type Writeable<T> = {
26
+ -readonly [P in keyof T]: T[P];
27
+ };
28
+ export type DeepWriteable<T> = {
29
+ -readonly [P in keyof T]: DeepWriteable<T[P]>;
30
+ };
31
+ export type Primitive = null | undefined | string | number | boolean | symbol | bigint;
32
+ export type LiteralUnion<LiteralType, BaseType extends Primitive> = LiteralType | (BaseType & Record<never, never>);
33
+ export type GetValForKey<T, K> = K extends keyof T ? T[K] : never;
34
+ export declare const sleep: (ms: number) => Promise<unknown>;
35
+ export declare const ref: <T>(val: T) => {
36
+ current: T;
37
+ };
38
+ export declare const times: (n: number, fn: (index: number) => {}) => void;
39
+ export declare const debugCatch: <T>(try_: () => T) => T;
40
+ export declare const recRemoveUndefinedValues: (val: any) => void;
41
+ export declare const prop: <T extends {}, K extends keyof T>(key: K) => (obj: T) => T[K];
42
+ export declare const capitalizeFirstLetter: (str: string) => string;
43
+ export declare const isReadonlyArray: <I, T>(value: ReadonlyArray<I> | T) => value is ReadonlyArray<I>;
44
+ /**
45
+ * Use this to make assertion at end of if-else chain that all members of a
46
+ * union have been accounted for.
47
+ */
48
+ export declare function casesHandled(unexpectedCase: never): never;
49
+ export declare const shouldNeverHappen: (msg?: string, ...args: any[]) => never;
50
+ export declare const assertNever: (failIfFalse: boolean, msg?: string) => void;
51
+ export declare const debuggerPipe: <T>(val: T) => T;
52
+ export declare const notYetImplemented: (msg?: string) => never;
53
+ export declare const noop: () => void;
54
+ export type Thunk<T> = () => T;
55
+ export declare const unwrapThunk: <T>(_: T | (() => T)) => T;
56
+ export type NullableFieldsToOptional<T> = PrettifyFlat<Partial<T> & {
57
+ [K in keyof T as null extends T[K] ? K : never]?: Exclude<T[K], null>;
58
+ } & {
59
+ [K in keyof T as null extends T[K] ? never : K]: T[K];
60
+ }>;
61
+ /** `end` is not included */
62
+ export declare const range: (start: number, end: number) => number[];
63
+ export declare const throttle: (fn: () => void, ms: number) => () => void;
64
+ export declare const getTraceParentHeader: (parentSpan: otel.Span) => string;
65
+ export declare const assertTag: <TObj extends {
66
+ _tag: string;
67
+ }, TTag extends TObj["_tag"]>(obj: TObj, tag: TTag) => Extract<TObj, {
68
+ _tag: TTag;
69
+ }>;
70
+ export declare const memoizeByStringifyArgs: <T extends (...args: any[]) => any>(fn: T) => T;
71
+ export declare const memoizeByRef: <T extends (arg: any) => any>(fn: T) => T;
72
+ export declare const isNonEmptyString: (str: string | undefined | null) => str is string;
73
+ export declare const isPromise: (value: any) => value is Promise<unknown>;
74
+ export declare const isIterable: <T>(value: any) => value is Iterable<T>;
75
+ export { objectToString as errorToString } from './misc.js';
76
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js ADDED
@@ -0,0 +1,176 @@
1
+ export * from './string.js';
2
+ export * from './guards.js';
3
+ export * from './object/index.js';
4
+ export * from './promise.js';
5
+ export * from './time.js';
6
+ export * from './NoopTracer.js';
7
+ export * from './set.js';
8
+ export * from './browser.js';
9
+ export * from './Deferred.js';
10
+ export * from './misc.js';
11
+ export * from './fast-deep-equal.js';
12
+ export * as base64 from './base64.js';
13
+ export { default as prettyBytes } from 'pretty-bytes';
14
+ import { objectToString } from './misc.js';
15
+ export const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
16
+ export const ref = (val) => ({ current: val });
17
+ export const times = (n, fn) => {
18
+ for (let i = 0; i < n; i++) {
19
+ fn(i);
20
+ }
21
+ };
22
+ export const debugCatch = (try_) => {
23
+ try {
24
+ return try_();
25
+ }
26
+ catch (e) {
27
+ debugger;
28
+ throw e;
29
+ }
30
+ };
31
+ export const recRemoveUndefinedValues = (val) => {
32
+ if (Array.isArray(val)) {
33
+ val.forEach(recRemoveUndefinedValues);
34
+ }
35
+ else if (typeof val === 'object') {
36
+ Object.keys(val).forEach((key) => {
37
+ if (val[key] === undefined) {
38
+ delete val[key];
39
+ }
40
+ else {
41
+ recRemoveUndefinedValues(val[key]);
42
+ }
43
+ });
44
+ }
45
+ };
46
+ export const prop = (key) => (obj) => obj[key];
47
+ export const capitalizeFirstLetter = (str) => str.charAt(0).toUpperCase() + str.slice(1);
48
+ export const isReadonlyArray = (value) => Array.isArray(value);
49
+ /**
50
+ * Use this to make assertion at end of if-else chain that all members of a
51
+ * union have been accounted for.
52
+ */
53
+ /* eslint-disable-next-line prefer-arrow/prefer-arrow-functions */
54
+ export function casesHandled(unexpectedCase) {
55
+ debugger;
56
+ throw new Error(`A case was not handled for value: ${truncate(objectToString(unexpectedCase), 1000)}`);
57
+ }
58
+ export const shouldNeverHappen = (msg, ...args) => {
59
+ console.error(msg, ...args);
60
+ if (isDev()) {
61
+ debugger;
62
+ }
63
+ throw new Error(`This should never happen: ${msg}`);
64
+ };
65
+ export const assertNever = (failIfFalse, msg) => {
66
+ if (failIfFalse === false) {
67
+ debugger;
68
+ throw new Error(`This should never happen: ${msg}`);
69
+ }
70
+ };
71
+ export const debuggerPipe = (val) => {
72
+ debugger;
73
+ return val;
74
+ };
75
+ const truncate = (str, length) => {
76
+ if (str.length > length) {
77
+ return str.slice(0, length) + '...';
78
+ }
79
+ else {
80
+ return str;
81
+ }
82
+ };
83
+ export const notYetImplemented = (msg) => {
84
+ debugger;
85
+ throw new Error(`Not yet implemented: ${msg}`);
86
+ };
87
+ export const noop = () => { };
88
+ export const unwrapThunk = (_) => {
89
+ if (typeof _ === 'function') {
90
+ return _();
91
+ }
92
+ else {
93
+ return _;
94
+ }
95
+ };
96
+ /** `end` is not included */
97
+ export const range = (start, end) => {
98
+ const length = end - start;
99
+ return Array.from({ length }, (_, i) => start + i);
100
+ };
101
+ export const throttle = (fn, ms) => {
102
+ let shouldWait = false;
103
+ let shouldCallAgain = false;
104
+ const timeoutFunc = () => {
105
+ if (shouldCallAgain) {
106
+ fn();
107
+ shouldCallAgain = false;
108
+ setTimeout(timeoutFunc, ms);
109
+ }
110
+ else {
111
+ shouldWait = false;
112
+ }
113
+ };
114
+ return () => {
115
+ if (shouldWait) {
116
+ shouldCallAgain = true;
117
+ return;
118
+ }
119
+ fn();
120
+ shouldWait = true;
121
+ setTimeout(timeoutFunc, ms);
122
+ };
123
+ };
124
+ export const getTraceParentHeader = (parentSpan) => {
125
+ const spanContext = parentSpan.spanContext();
126
+ // Format: {version}-{trace_id}-{span_id}-{trace_flags}
127
+ // https://www.w3.org/TR/trace-context/#examples-of-http-traceparent-headers
128
+ return `00-${spanContext.traceId}-${spanContext.spanId}-01`;
129
+ };
130
+ export const assertTag = (obj, tag) => {
131
+ if (obj._tag !== tag) {
132
+ throw new Error(`Expected tag ${tag} but got ${obj._tag}`);
133
+ }
134
+ return obj;
135
+ };
136
+ export const memoizeByStringifyArgs = (fn) => {
137
+ const cache = new Map();
138
+ return ((...args) => {
139
+ const key = JSON.stringify(args);
140
+ if (cache.has(key)) {
141
+ return cache.get(key);
142
+ }
143
+ const result = fn(...args);
144
+ cache.set(key, result);
145
+ return result;
146
+ });
147
+ };
148
+ export const memoizeByRef = (fn) => {
149
+ const cache = new Map();
150
+ return ((arg) => {
151
+ if (cache.has(arg)) {
152
+ return cache.get(arg);
153
+ }
154
+ const result = fn(arg);
155
+ cache.set(arg, result);
156
+ return result;
157
+ });
158
+ };
159
+ export const isNonEmptyString = (str) => {
160
+ return typeof str === 'string' && str.length > 0;
161
+ };
162
+ export const isPromise = (value) => typeof value?.then === 'function';
163
+ export const isIterable = (value) => typeof value?.[Symbol.iterator] === 'function';
164
+ export { objectToString as errorToString } from './misc.js';
165
+ const isDev = memoizeByRef(() => {
166
+ if (import.meta.env !== undefined) {
167
+ return import.meta.env.DEV || import.meta.env.VITE_DEV;
168
+ }
169
+ else if (typeof process !== 'undefined' && process.env !== undefined) {
170
+ return process.env.DEV;
171
+ }
172
+ else {
173
+ return false;
174
+ }
175
+ });
176
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/misc.d.ts ADDED
@@ -0,0 +1,3 @@
1
+ export declare const objectToString: (error: any) => string;
2
+ export declare const tryAsFunctionAndNew: <TArg, TResult>(fnOrConstructor: ((arg: TArg) => TResult) | (new (arg: TArg) => TResult), arg: TArg) => TResult;
3
+ //# sourceMappingURL=misc.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"misc.d.ts","sourceRoot":"","sources":["../src/misc.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,UAAW,GAAG,KAAG,MAW3C,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAI,IAAI,EAAE,OAAO,mBAC9B,CAAC,CAAC,GAAG,EAAE,IAAI,KAAK,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,IAAI,KAAK,OAAO,CAAC,OACnE,IAAI,KACR,OASF,CAAA"}
package/dist/misc.js ADDED
@@ -0,0 +1,24 @@
1
+ export const objectToString = (error) => {
2
+ const str = error?.toString();
3
+ if (str !== '[object Object]')
4
+ return str;
5
+ try {
6
+ return JSON.stringify(error, null, 2);
7
+ }
8
+ catch (e) {
9
+ console.log(error);
10
+ return 'Error while printing error: ' + e;
11
+ }
12
+ };
13
+ export const tryAsFunctionAndNew = (fnOrConstructor, arg) => {
14
+ try {
15
+ // @ts-expect-error try out as constructor
16
+ return new fnOrConstructor(arg);
17
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
18
+ }
19
+ catch (e) {
20
+ // @ts-expect-error try out as function
21
+ return fnOrConstructor(arg);
22
+ }
23
+ };
24
+ //# sourceMappingURL=misc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"misc.js","sourceRoot":"","sources":["../src/misc.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAU,EAAU,EAAE;IACnD,MAAM,GAAG,GAAG,KAAK,EAAE,QAAQ,EAAE,CAAA;IAC7B,IAAI,GAAG,KAAK,iBAAiB;QAAE,OAAO,GAAG,CAAA;IAEzC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IACvC,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QAElB,OAAO,8BAA8B,GAAG,CAAC,CAAA;IAC3C,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,eAAwE,EACxE,GAAS,EACA,EAAE;IACX,IAAI,CAAC;QACH,0CAA0C;QAC1C,OAAO,IAAI,eAAe,CAAC,GAAG,CAAC,CAAA;QAC/B,6DAA6D;IAC/D,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,uCAAuC;QACvC,OAAO,eAAe,CAAC,GAAG,CAAC,CAAA;IAC7B,CAAC;AACH,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export { nanoid } from 'nanoid';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/nanoid/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA"}
@@ -0,0 +1,2 @@
1
+ export { nanoid } from 'nanoid';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/nanoid/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA"}