@atproto/common-web 0.5.0-next.0 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,25 +1,34 @@
1
1
  # @atproto/common-web
2
2
 
3
- ## 0.5.0-next.0
3
+ ## 0.5.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [#4967](https://github.com/bluesky-social/atproto/pull/4967) [`9fc720c`](https://github.com/bluesky-social/atproto/commit/9fc720ce75f3ee88a5e48a9be919b07c7647f6f5) Thanks [@matthieusieben](https://github.com/matthieusieben)! - Use TypeScript 7 to build package
8
+
9
+ - Updated dependencies [[`9fc720c`](https://github.com/bluesky-social/atproto/commit/9fc720ce75f3ee88a5e48a9be919b07c7647f6f5)]:
10
+ - @atproto/lex-data@0.1.2
11
+ - @atproto/lex-json@0.1.1
12
+ - @atproto/syntax@0.6.2
13
+
14
+ ## 0.5.0
4
15
 
5
16
  ### Minor Changes
6
17
 
7
- - [#4929](https://github.com/bluesky-social/atproto/pull/4929) [`bb7491c`](https://github.com/bluesky-social/atproto/commit/bb7491c29e06181e1d2f8cf6eb454f9bb8ab961b) Thanks [@devinivy](https://github.com/devinivy)! - **BREAKING:** Drop support for Node.js 18 and 20. Node.js 22 is now the minimum supported version. Docker images now use Node.js 24.
18
+ - [#4929](https://github.com/bluesky-social/atproto/pull/4929) [`f01c59f`](https://github.com/bluesky-social/atproto/commit/f01c59f5bd3f75fb8b47a9eecd4858b84033fb7c) Thanks [@devinivy](https://github.com/devinivy)! - **BREAKING:** Drop support for Node.js 18 and 20. Node.js 22 is now the minimum supported version. Docker images now use Node.js 24.
8
19
 
9
- - [#4943](https://github.com/bluesky-social/atproto/pull/4943) [`07ae5d4`](https://github.com/bluesky-social/atproto/commit/07ae5d4452df51e045e0239da7a04cf0bc154028) Thanks [@devinivy](https://github.com/devinivy)! - **BREAKING:** Convert to pure ESM. All packages now ship `"type": "module"` with ES module output and Node16 module resolution.
20
+ - [#4943](https://github.com/bluesky-social/atproto/pull/4943) [`c459153`](https://github.com/bluesky-social/atproto/commit/c459153395a30ce89e050892c8fab7dc98e019b9) Thanks [@devinivy](https://github.com/devinivy)! - **BREAKING:** Convert to pure ESM. All packages now ship `"type": "module"` with ES module output and Node16 module resolution.
10
21
 
11
22
  Node.js 22's `require()` compatibility layer can still load these packages in CommonJS code.
12
23
 
13
- - [#4930](https://github.com/bluesky-social/atproto/pull/4930) [`042df15`](https://github.com/bluesky-social/atproto/commit/042df15087c0e62cd1e715fcbf58852fab875af9) Thanks [@devinivy](https://github.com/devinivy)! - Build with TypeScript 6.0. Emitted `.d.ts` files now use TypeScript 6's stricter `Uint8Array<ArrayBuffer>` typing in places where Web/Node APIs require buffer-backed (not shared-memory) byte arrays. Consumers compiling against these types on older TypeScript should see no runtime impact, but may need to widen or cast in spots that previously relied on `Uint8Array` defaulting to `<ArrayBufferLike>`.
14
-
15
- Internal: tsconfig `moduleResolution: "node"` is silenced via `ignoreDeprecations: "6.0"` for now; the proper migration to `node16`/`bundler` resolution is deferred.
24
+ - [#4930](https://github.com/bluesky-social/atproto/pull/4930) [`908bece`](https://github.com/bluesky-social/atproto/commit/908bece169258bff5ad121e5eec157d6ded6f705) Thanks [@devinivy](https://github.com/devinivy)! - Build with TypeScript 6.0.
16
25
 
17
26
  ### Patch Changes
18
27
 
19
- - Updated dependencies [[`bb7491c`](https://github.com/bluesky-social/atproto/commit/bb7491c29e06181e1d2f8cf6eb454f9bb8ab961b), [`07ae5d4`](https://github.com/bluesky-social/atproto/commit/07ae5d4452df51e045e0239da7a04cf0bc154028), [`042df15`](https://github.com/bluesky-social/atproto/commit/042df15087c0e62cd1e715fcbf58852fab875af9)]:
20
- - @atproto/lex-data@0.1.0-next.0
21
- - @atproto/lex-json@0.1.0-next.0
22
- - @atproto/syntax@0.6.0-next.0
28
+ - Updated dependencies [[`f01c59f`](https://github.com/bluesky-social/atproto/commit/f01c59f5bd3f75fb8b47a9eecd4858b84033fb7c), [`c459153`](https://github.com/bluesky-social/atproto/commit/c459153395a30ce89e050892c8fab7dc98e019b9), [`908bece`](https://github.com/bluesky-social/atproto/commit/908bece169258bff5ad121e5eec157d6ded6f705)]:
29
+ - @atproto/lex-data@0.1.0
30
+ - @atproto/lex-json@0.1.0
31
+ - @atproto/syntax@0.6.0
23
32
 
24
33
  ## 0.4.21
25
34
 
@@ -1 +1 @@
1
- {"version":3,"file":"arrays.d.ts","sourceRoot":"","sources":["../src/arrays.ts"],"names":[],"mappings":"AAAA,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,EACxC,GAAG,EAAE,SAAS,CAAC,EAAE,EACjB,GAAG,EAAE,CAAC,GACL,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAKd;AAED,eAAO,MAAM,UAAU,GAAI,CAAC,EAAE,CAAC,EAC7B,KAAK,CAAC,EAAE,EACR,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,SAAS,KAC5B,CAAC,EASH,CAAA"}
1
+ {"version":3,"file":"arrays.d.ts","sourceRoot":"","sources":["../src/arrays.ts"],"names":[],"mappings":"AAAA,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,EACxC,GAAG,EAAE,SAAS,CAAC,EAAE,EACjB,GAAG,EAAE,CAAC,GACL,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAKd;AAED,eAAO,MAAM,UAAU,GAAI,CAAC,EAAE,CAAC,OACxB,CAAC,EAAE,MACJ,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,SAAS,KAC5B,CAAC,EASH,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"async.d.ts","sourceRoot":"","sources":["../src/async.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"async.d.ts","sourceRoot":"","sources":["../src/async.ts"],"names":[],"mappings":"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"}
package/dist/async.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"async.js","sourceRoot":"","sources":["../src/async.ts"],"names":[],"mappings":"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","sourcesContent":["import { aggregateErrors, bailableWait } from './util.js'\n\n// reads values from a generator into a list\n// breaks when isDone signals `true` AND `waitFor` completes OR when a max length is reached\n// NOTE: does not signal generator to close. it *will* continue to produce values\nexport const readFromGenerator = async <T>(\n gen: AsyncGenerator<T>,\n isDone: (last?: T) => Promise<boolean> | boolean,\n waitFor: Promise<unknown> = Promise.resolve(),\n maxLength = Number.MAX_SAFE_INTEGER,\n): Promise<T[]> => {\n const evts: T[] = []\n let bail: undefined | (() => void)\n let hasBroke = false\n const awaitDone = async () => {\n if (await isDone(evts.at(-1))) {\n return true\n }\n const bailable = bailableWait(20)\n await bailable.wait()\n bail = bailable.bail\n if (hasBroke) return false\n return await awaitDone()\n }\n const breakOn: Promise<void> = new Promise((resolve) => {\n waitFor.then(() => {\n awaitDone().then(() => resolve())\n })\n })\n\n try {\n while (evts.length < maxLength) {\n const maybeEvt = await Promise.race([gen.next(), breakOn])\n if (!maybeEvt) break\n const evt = maybeEvt as IteratorResult<T>\n if (evt.done) break\n evts.push(evt.value)\n }\n } finally {\n hasBroke = true\n if (bail) bail()\n }\n return evts\n}\n\nexport type Deferrable<T = void> = {\n resolve: (value: T | PromiseLike<T>) => void\n reject: (reason?: unknown) => void\n complete: Promise<T>\n}\n\nexport function createDeferrable<T = void>(): Deferrable<T> {\n let res: (value: T | PromiseLike<T>) => void\n let rej: (reason?: unknown) => void\n const promise = new Promise<T>((resolve, reject) => {\n res = resolve\n rej = reject\n })\n return { resolve: res!, reject: rej!, complete: promise }\n}\n\nexport const createDeferrables = (count: number): Deferrable[] => {\n const list: Deferrable[] = []\n for (let i = 0; i < count; i++) {\n list.push(createDeferrable())\n }\n return list\n}\n\nexport const allComplete = async (deferrables: Deferrable[]): Promise<void> => {\n await Promise.all(deferrables.map((d) => d.complete))\n}\n\nexport class AsyncBuffer<T> {\n private buffer: T[] = []\n private promise: Promise<void>\n private resolve: () => void\n private closed = false\n private toThrow: unknown | undefined\n\n constructor(public maxSize?: number) {\n // Initializing to satisfy types/build, immediately reset by resetPromise()\n this.promise = Promise.resolve()\n this.resolve = () => null\n this.resetPromise()\n }\n\n get curr(): T[] {\n return this.buffer\n }\n\n get size(): number {\n return this.buffer.length\n }\n\n get isClosed(): boolean {\n return this.closed\n }\n\n resetPromise() {\n this.promise = new Promise<void>((r) => (this.resolve = r))\n }\n\n push(item: T) {\n this.buffer.push(item)\n this.resolve()\n }\n\n pushMany(items: T[]) {\n items.forEach((i) => this.buffer.push(i))\n this.resolve()\n }\n\n async *events(): AsyncGenerator<T> {\n while (true) {\n if (this.closed && this.buffer.length === 0) {\n if (this.toThrow) {\n throw this.toThrow\n } else {\n return\n }\n }\n await this.promise\n if (this.toThrow) {\n throw this.toThrow\n }\n if (this.maxSize && this.size > this.maxSize) {\n throw new AsyncBufferFullError(this.maxSize)\n }\n const [first, ...rest] = this.buffer\n if (first) {\n this.buffer = rest\n yield first\n } else {\n this.resetPromise()\n }\n }\n }\n\n throw(err: unknown) {\n this.toThrow = err\n this.closed = true\n this.resolve()\n }\n\n close() {\n this.closed = true\n this.resolve()\n }\n}\n\nexport class AsyncBufferFullError extends Error {\n constructor(maxSize: number) {\n super(`ReachedMaxBufferSize: ${maxSize}`)\n }\n}\n\n/**\n * Utility function that behaves like {@link Promise.allSettled} but returns the\n * same result as {@link Promise.all} in case every promise is fulfilled, and\n * throws an {@link AggregateError} if there are more than one errors.\n */\nexport function allFulfilled<T extends readonly unknown[] | []>(\n promises: T,\n): Promise<{ -readonly [P in keyof T]: Awaited<T[P]> }>\nexport function allFulfilled<T>(\n promises: Iterable<T | PromiseLike<T>>,\n): Promise<Awaited<T>[]>\nexport function allFulfilled(\n promises: Iterable<Promise<unknown>>,\n): Promise<unknown[]> {\n return Promise.allSettled(promises).then(handleAllSettledErrors)\n}\n\nexport function handleAllSettledErrors<\n T extends readonly PromiseSettledResult<unknown>[] | [],\n>(\n results: T,\n): {\n -readonly [P in keyof T]: T[P] extends PromiseSettledResult<infer U>\n ? U\n : never\n}\nexport function handleAllSettledErrors<T>(\n results: PromiseSettledResult<T>[],\n): T[]\nexport function handleAllSettledErrors(\n results: PromiseSettledResult<unknown>[],\n): unknown[] {\n if (results.every(isFulfilledResult)) return results.map(extractValue)\n\n const errors = results.filter(isRejectedResult).map(extractReason)\n throw aggregateErrors(errors)\n}\n\nexport function isRejectedResult(\n result: PromiseSettledResult<unknown>,\n): result is PromiseRejectedResult {\n return result.status === 'rejected'\n}\n\nfunction extractReason(result: PromiseRejectedResult): unknown {\n return result.reason\n}\n\nexport function isFulfilledResult<T>(\n result: PromiseSettledResult<T>,\n): result is PromiseFulfilledResult<T> {\n return result.status === 'fulfilled'\n}\n\nfunction extractValue<T>(result: PromiseFulfilledResult<T>): T {\n return result.value\n}\n"]}
1
+ {"version":3,"file":"async.js","sourceRoot":"","sources":["../src/async.ts"],"names":[],"mappings":"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","sourcesContent":["import { aggregateErrors, bailableWait } from './util.js'\n\n// reads values from a generator into a list\n// breaks when isDone signals `true` AND `waitFor` completes OR when a max length is reached\n// NOTE: does not signal generator to close. it *will* continue to produce values\nexport const readFromGenerator = async <T>(\n gen: AsyncGenerator<T>,\n isDone: (last?: T) => Promise<boolean> | boolean,\n waitFor: Promise<unknown> = Promise.resolve(),\n maxLength = Number.MAX_SAFE_INTEGER,\n): Promise<T[]> => {\n const evts: T[] = []\n let bail: undefined | (() => void)\n let hasBroke = false\n const awaitDone = async () => {\n if (await isDone(evts.at(-1))) {\n return true\n }\n const bailable = bailableWait(20)\n await bailable.wait()\n bail = bailable.bail\n if (hasBroke) return false\n return await awaitDone()\n }\n const breakOn: Promise<void> = new Promise((resolve) => {\n waitFor.then(() => {\n awaitDone().then(() => resolve())\n })\n })\n\n try {\n while (evts.length < maxLength) {\n const maybeEvt = await Promise.race([gen.next(), breakOn])\n if (!maybeEvt) break\n const evt = maybeEvt as IteratorResult<T>\n if (evt.done) break\n evts.push(evt.value)\n }\n } finally {\n hasBroke = true\n if (bail) bail()\n }\n return evts\n}\n\nexport type Deferrable<T = void> = {\n resolve: (value: T | PromiseLike<T>) => void\n reject: (reason?: unknown) => void\n complete: Promise<T>\n}\n\nexport function createDeferrable<T = void>(): Deferrable<T> {\n let res: (value: T | PromiseLike<T>) => void\n let rej: (reason?: unknown) => void\n const promise = new Promise<T>((resolve, reject) => {\n res = resolve\n rej = reject\n })\n return { resolve: res!, reject: rej!, complete: promise }\n}\n\nexport const createDeferrables = (count: number): Deferrable[] => {\n const list: Deferrable[] = []\n for (let i = 0; i < count; i++) {\n list.push(createDeferrable())\n }\n return list\n}\n\nexport const allComplete = async (deferrables: Deferrable[]): Promise<void> => {\n await Promise.all(deferrables.map((d) => d.complete))\n}\n\nexport class AsyncBuffer<T> {\n private buffer: T[] = []\n private promise: Promise<void>\n private resolve: () => void\n private closed = false\n private toThrow: unknown | undefined\n\n constructor(public maxSize?: number) {\n // Initializing to satisfy types/build, immediately reset by resetPromise()\n this.promise = Promise.resolve()\n this.resolve = () => null\n this.resetPromise()\n }\n\n get curr(): T[] {\n return this.buffer\n }\n\n get size(): number {\n return this.buffer.length\n }\n\n get isClosed(): boolean {\n return this.closed\n }\n\n resetPromise() {\n this.promise = new Promise<void>((r) => (this.resolve = r))\n }\n\n push(item: T) {\n this.buffer.push(item)\n this.resolve()\n }\n\n pushMany(items: T[]) {\n items.forEach((i) => this.buffer.push(i))\n this.resolve()\n }\n\n async *events(): AsyncGenerator<T> {\n while (true) {\n if (this.closed && this.buffer.length === 0) {\n if (this.toThrow) {\n throw this.toThrow\n } else {\n return\n }\n }\n await this.promise\n if (this.toThrow) {\n throw this.toThrow\n }\n if (this.maxSize && this.size > this.maxSize) {\n throw new AsyncBufferFullError(this.maxSize)\n }\n const [first, ...rest] = this.buffer\n if (first) {\n this.buffer = rest\n yield first\n } else {\n this.resetPromise()\n }\n }\n }\n\n throw(err: unknown) {\n this.toThrow = err\n this.closed = true\n this.resolve()\n }\n\n close() {\n this.closed = true\n this.resolve()\n }\n}\n\nexport class AsyncBufferFullError extends Error {\n constructor(maxSize: number) {\n super(`ReachedMaxBufferSize: ${maxSize}`)\n }\n}\n\n/**\n * Utility function that behaves like {@link Promise.allSettled} but returns the\n * same result as {@link Promise.all} in case every promise is fulfilled, and\n * throws an {@link AggregateError} if there are more than one errors.\n */\nexport function allFulfilled<T extends readonly unknown[] | []>(\n promises: T,\n): Promise<{ -readonly [P in keyof T]: Awaited<T[P]> }>\nexport function allFulfilled<T>(\n promises: Iterable<T | PromiseLike<T>>,\n): Promise<Awaited<T>[]>\nexport function allFulfilled(\n promises: Iterable<Promise<unknown>>,\n): Promise<unknown[]> {\n return Promise.allSettled(promises).then(handleAllSettledErrors)\n}\n\nexport function handleAllSettledErrors<\n T extends readonly PromiseSettledResult<unknown>[] | [],\n>(\n results: T,\n): {\n -readonly [P in keyof T]: T[P] extends PromiseSettledResult<infer U>\n ? U\n : never\n}\nexport function handleAllSettledErrors<T>(\n results: PromiseSettledResult<T>[],\n): T[]\nexport function handleAllSettledErrors(\n results: PromiseSettledResult<unknown>[],\n): unknown[] {\n if (results.every(isFulfilledResult)) return results.map(extractValue)\n\n const errors = results.filter(isRejectedResult).map(extractReason)\n throw aggregateErrors(errors)\n}\n\nexport function isRejectedResult(\n result: PromiseSettledResult<unknown>,\n): result is PromiseRejectedResult {\n return result.status === 'rejected'\n}\n\nfunction extractReason(result: PromiseRejectedResult): unknown {\n return result.reason\n}\n\nexport function isFulfilledResult<T>(\n result: PromiseSettledResult<T>,\n): result is PromiseFulfilledResult<T> {\n return result.status === 'fulfilled'\n}\n\nfunction extractValue<T>(result: PromiseFulfilledResult<T>): T {\n return result.value\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../src/check.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,SAAS,CAAC,CAAC;IAC1B,KAAK,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,CAAC,CAAA;IAC1B,SAAS,EAAE,CACT,GAAG,EAAE,OAAO,KACT;QAAE,OAAO,EAAE,IAAI,CAAC;QAAC,IAAI,EAAE,CAAC,CAAA;KAAE,GAAG;QAAE,OAAO,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,CAAA;CACnE;AAED,MAAM,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,CAAA;CACrB;AAED,eAAO,MAAM,EAAE,GAAI,CAAC,EAAE,KAAK,OAAO,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,KAAG,GAAG,IAAI,CAE9D,CAAA;AAED,eAAO,MAAM,MAAM,GAChB,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,MACpB,GAAG,OAAO,KAAG,CAAC,IAAI,CACO,CAAA;AAE5B,eAAO,MAAM,MAAM,GAAI,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,KAAG,CAE3D,CAAA;AAED,eAAO,MAAM,QAAQ,GAAI,KAAK,OAAO,KAAG,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAEpE,CAAA"}
1
+ {"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../src/check.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,SAAS,CAAC,CAAC;IAC1B,KAAK,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,CAAC,CAAA;IAC1B,SAAS,EAAE,CACT,GAAG,EAAE,OAAO,KACT;QAAE,OAAO,EAAE,IAAI,CAAC;QAAC,IAAI,EAAE,CAAC,CAAA;KAAE,GAAG;QAAE,OAAO,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,CAAA;CACnE;AAED,MAAM,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,CAAA;CACrB;AAED,eAAO,MAAM,EAAE,GAAI,CAAC,OAAO,OAAO,OAAO,SAAS,CAAC,CAAC,CAAC,KAAG,GAAG,IAAI,CAE9D,CAAA;AAED,eAAO,MAAM,MAAM,GAChB,CAAC,OAAO,SAAS,CAAC,CAAC,CAAC,SACjB,OAAO,KAAG,CAAC,IAAI,CACO,CAAA;AAE5B,eAAO,MAAM,MAAM,GAAI,CAAC,OAAO,SAAS,CAAC,CAAC,CAAC,OAAO,OAAO,KAAG,CAE3D,CAAA;AAED,eAAO,MAAM,QAAQ,QAAS,OAAO,KAAG,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAEpE,CAAA"}
package/dist/did-doc.d.ts CHANGED
@@ -33,14 +33,14 @@ export declare const didDocument: z.ZodObject<{
33
33
  publicKeyJwk: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
34
34
  publicKeyMultibase: z.ZodOptional<z.ZodString>;
35
35
  }, "strip", z.ZodTypeAny, {
36
- type: string;
37
36
  id: string;
37
+ type: string;
38
38
  controller: string;
39
39
  publicKeyJwk?: Record<string, unknown> | undefined;
40
40
  publicKeyMultibase?: string | undefined;
41
41
  }, {
42
- type: string;
43
42
  id: string;
43
+ type: string;
44
44
  controller: string;
45
45
  publicKeyJwk?: Record<string, unknown> | undefined;
46
46
  publicKeyMultibase?: string | undefined;
@@ -52,14 +52,14 @@ export declare const didDocument: z.ZodObject<{
52
52
  publicKeyJwk: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
53
53
  publicKeyMultibase: z.ZodOptional<z.ZodString>;
54
54
  }, "strip", z.ZodTypeAny, {
55
- type: string;
56
55
  id: string;
56
+ type: string;
57
57
  controller: string;
58
58
  publicKeyJwk?: Record<string, unknown> | undefined;
59
59
  publicKeyMultibase?: string | undefined;
60
60
  }, {
61
- type: string;
62
61
  id: string;
62
+ type: string;
63
63
  controller: string;
64
64
  publicKeyJwk?: Record<string, unknown> | undefined;
65
65
  publicKeyMultibase?: string | undefined;
@@ -69,58 +69,58 @@ export declare const didDocument: z.ZodObject<{
69
69
  type: z.ZodString;
70
70
  serviceEndpoint: z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnknown>]>;
71
71
  }, "strip", z.ZodTypeAny, {
72
- type: string;
73
72
  id: string;
73
+ type: string;
74
74
  serviceEndpoint: string | Record<string, unknown>;
75
75
  }, {
76
- type: string;
77
76
  id: string;
77
+ type: string;
78
78
  serviceEndpoint: string | Record<string, unknown>;
79
79
  }>, "many">>;
80
80
  }, "strip", z.ZodTypeAny, {
81
+ '@context'?: "https://www.w3.org/ns/did/v1" | string[] | undefined;
81
82
  id: string;
82
- '@context'?: string[] | "https://www.w3.org/ns/did/v1" | undefined;
83
83
  alsoKnownAs?: string[] | undefined;
84
84
  verificationMethod?: {
85
- type: string;
86
85
  id: string;
86
+ type: string;
87
87
  controller: string;
88
88
  publicKeyJwk?: Record<string, unknown> | undefined;
89
89
  publicKeyMultibase?: string | undefined;
90
90
  }[] | undefined;
91
91
  authentication?: (string | {
92
- type: string;
93
92
  id: string;
93
+ type: string;
94
94
  controller: string;
95
95
  publicKeyJwk?: Record<string, unknown> | undefined;
96
96
  publicKeyMultibase?: string | undefined;
97
97
  })[] | undefined;
98
98
  service?: {
99
- type: string;
100
99
  id: string;
100
+ type: string;
101
101
  serviceEndpoint: string | Record<string, unknown>;
102
102
  }[] | undefined;
103
103
  }, {
104
+ '@context'?: "https://www.w3.org/ns/did/v1" | string[] | undefined;
104
105
  id: string;
105
- '@context'?: string[] | "https://www.w3.org/ns/did/v1" | undefined;
106
106
  alsoKnownAs?: string[] | undefined;
107
107
  verificationMethod?: {
108
- type: string;
109
108
  id: string;
109
+ type: string;
110
110
  controller: string;
111
111
  publicKeyJwk?: Record<string, unknown> | undefined;
112
112
  publicKeyMultibase?: string | undefined;
113
113
  }[] | undefined;
114
114
  authentication?: (string | {
115
- type: string;
116
115
  id: string;
116
+ type: string;
117
117
  controller: string;
118
118
  publicKeyJwk?: Record<string, unknown> | undefined;
119
119
  publicKeyMultibase?: string | undefined;
120
120
  })[] | undefined;
121
121
  service?: {
122
- type: string;
123
122
  id: string;
123
+ type: string;
124
124
  serviceEndpoint: string | Record<string, unknown>;
125
125
  }[] | undefined;
126
126
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"did-doc.d.ts","sourceRoot":"","sources":["../src/did-doc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAKvB,eAAO,MAAM,aAAa,GAAI,KAAK,OAAO,KAAG,GAAG,IAAI,WAEnD,CAAA;AAED,eAAO,MAAM,MAAM,GAAI,KAAK,WAAW,KAAG,MAMzC,CAAA;AAED,eAAO,MAAM,SAAS,GAAI,KAAK,WAAW,KAAG,MAAM,GAAG,SAYrD,CAAA;AAGD,eAAO,MAAM,aAAa,GACxB,KAAK,WAAW,KACf;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,MAAM,CAAA;CAAE,GAAG,SAEjD,CAAA;AAED,eAAO,MAAM,uBAAuB,GAClC,KAAK,WAAW,EAChB,OAAO,MAAM,KACZ;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,MAAM,CAAA;CAAE,GAAG,SAgBjD,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,KAAK,WAAW,KAAG,MAAM,GAAG,SAI5D,CAAA;AAED,eAAO,MAAM,cAAc,GAAI,KAAK,WAAW,KAAG,MAAM,GAAG,SAK1D,CAAA;AAED,eAAO,MAAM,kBAAkB,GAAI,KAAK,WAAW,KAAG,MAAM,GAAG,SAK9D,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,KAAK,WAAW,KAAG,MAAM,GAAG,SAK5D,CAAA;AAED,eAAO,MAAM,kBAAkB,GAC7B,KAAK,WAAW,EAChB,MAAM;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,uBAkBpC,CAAA;AA6ED;;;GAGG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYtB,CAAA;AAEF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAA"}
1
+ {"version":3,"file":"did-doc.d.ts","sourceRoot":"","sources":["../src/did-doc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAKvB,eAAO,MAAM,aAAa,QAAS,OAAO,KAAG,GAAG,IAAI,WAEnD,CAAA;AAED,eAAO,MAAM,MAAM,QAAS,WAAW,KAAG,MAMzC,CAAA;AAED,eAAO,MAAM,SAAS,QAAS,WAAW,KAAG,MAAM,GAAG,SAYrD,CAAA;AAGD,eAAO,MAAM,aAAa,QACnB,WAAW,KACf;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,MAAM,CAAA;CAAE,GAAG,SAEjD,CAAA;AAED,eAAO,MAAM,uBAAuB,QAC7B,WAAW,SACT,MAAM,KACZ;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,MAAM,CAAA;CAAE,GAAG,SAgBjD,CAAA;AAED,eAAO,MAAM,gBAAgB,QAAS,WAAW,KAAG,MAAM,GAAG,SAI5D,CAAA;AAED,eAAO,MAAM,cAAc,QAAS,WAAW,KAAG,MAAM,GAAG,SAK1D,CAAA;AAED,eAAO,MAAM,kBAAkB,QAAS,WAAW,KAAG,MAAM,GAAG,SAK9D,CAAA;AAED,eAAO,MAAM,gBAAgB,QAAS,WAAW,KAAG,MAAM,GAAG,SAK5D,CAAA;AAED,eAAO,MAAM,kBAAkB,QACxB,WAAW,QACV;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,uBAkBpC,CAAA;AA6ED;;;GAGG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYtB,CAAA;AAEF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"ipld.d.ts","sourceRoot":"","sources":["../src/ipld.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,OAAO,CAAA;AAErC,YAAY,EAAE,eAAe,IAAI,SAAS,EAAE,CAAA;AAE5C;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,OAAO,CAAA;AAE/B;;;GAGG;AACH,eAAO,MAAM,UAAU,GAAI,KAAK,eAAe,KAAG,SAEjD,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,UAAU,GAAI,KAAK,SAAS,KAAG,eAM3C,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,UAAU,GAAI,GAAG,SAAS,EAAE,GAAG,SAAS,KAAG,OAQvD,CAAA"}
1
+ {"version":3,"file":"ipld.d.ts","sourceRoot":"","sources":["../src/ipld.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,OAAO,CAAA;AAErC,YAAY,EAAE,eAAe,IAAI,SAAS,EAAE,CAAA;AAE5C;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,OAAO,CAAA;AAE/B;;;GAGG;AACH,eAAO,MAAM,UAAU,QAAS,eAAe,KAAG,SAEjD,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,UAAU,QAAS,SAAS,KAAG,eAM3C,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,UAAU,MAAO,SAAS,KAAK,SAAS,KAAG,OAQvD,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../src/retry.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,YAAY,GAAG;IACzB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAA;CACzC,CAAA;AAED,wBAAsB,KAAK,CAAC,CAAC,EAC3B,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,IAAI,GAAE,YAAY,GAAG;IACnB,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAA;CACjC,GACL,OAAO,CAAC,CAAC,CAAC,CAsBZ;AAED,wBAAgB,eAAe,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,IACpD,CAAC,EAAE,IAAI,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,YAAY,gBAE3D;AAGD,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,SAAM,EAAE,GAAG,SAAO,UAIhE"}
1
+ {"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../src/retry.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,YAAY,GAAG;IACzB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAA;CACzC,CAAA;AAED,wBAAsB,KAAK,CAAC,CAAC,EAC3B,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,IAAI,GAAE,YAAY,GAAG;IACnB,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAA;CACjC,GACL,OAAO,CAAC,CAAC,CAAC,CAsBZ;AAED,wBAAgB,eAAe,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,IACpD,CAAC,MAAM,MAAM,OAAO,CAAC,CAAC,CAAC,SAAS,YAAY,gBAE3D;AAGD,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,SAAM,EAAE,GAAG,SAAO,UAIhE"}
package/dist/retry.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"retry.js","sourceRoot":"","sources":["../src/retry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAOhC,MAAM,CAAC,KAAK,UAAU,KAAK,CACzB,EAAoB,EACpB,OAEI,EAAE;IAEN,MAAM,EAAE,UAAU,GAAG,CAAC,EAAE,SAAS,GAAG,GAAG,EAAE,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS,EAAE,GAAG,IAAI,CAAA;IAC9E,IAAI,OAAO,GAAG,CAAC,CAAA;IACf,IAAI,SAAkB,CAAA;IACtB,OAAO,CAAC,SAAS,EAAE,CAAC;QAClB,IAAI,CAAC;YACH,OAAO,MAAM,EAAE,EAAE,CAAA;QACnB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,CAAA;YACjC,MAAM,SAAS,GACb,OAAO,GAAG,UAAU,IAAI,MAAM,KAAK,IAAI,IAAI,SAAS,CAAC,GAAG,CAAC,CAAA;YAC3D,IAAI,SAAS,EAAE,CAAC;gBACd,OAAO,IAAI,CAAC,CAAA;gBACZ,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;oBACjB,MAAM,IAAI,CAAC,MAAM,CAAC,CAAA;gBACpB,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,SAAS,GAAG,GAAG,CAAA;YACjB,CAAC;QACH,CAAC;IACH,CAAC;IACD,MAAM,SAAS,CAAA;AACjB,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,SAAoC;IAClE,OAAO,KAAK,EAAK,EAAoB,EAAE,IAAmB,EAAE,EAAE,CAC5D,KAAK,CAAC,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;AACrC,CAAC;AAED,2FAA2F;AAC3F,MAAM,UAAU,SAAS,CAAC,CAAS,EAAE,UAAU,GAAG,GAAG,EAAE,GAAG,GAAG,IAAI;IAC/D,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,UAAU,CAAA;IACjD,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,GAAG,CAAC,CAAA;IACvC,OAAO,MAAM,CAAC,EAAE,CAAC,CAAA;AACnB,CAAC;AAED,kCAAkC;AAClC,SAAS,MAAM,CAAC,KAAa;IAC3B,MAAM,KAAK,GAAG,KAAK,GAAG,IAAI,CAAA;IAC1B,OAAO,KAAK,GAAG,WAAW,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;AAC3C,CAAC;AAED,SAAS,WAAW,CAAC,IAAY,EAAE,EAAU;IAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,CAAA;IACxC,OAAO,IAAI,GAAG,IAAI,CAAA;AACpB,CAAC","sourcesContent":["import { wait } from './util.js'\n\nexport type RetryOptions = {\n maxRetries?: number\n getWaitMs?: (n: number) => number | null\n}\n\nexport async function retry<T>(\n fn: () => Promise<T>,\n opts: RetryOptions & {\n retryable?: (err: unknown) => boolean\n } = {},\n): Promise<T> {\n const { maxRetries = 3, retryable = () => true, getWaitMs = backoffMs } = opts\n let retries = 0\n let doneError: unknown\n while (!doneError) {\n try {\n return await fn()\n } catch (err) {\n const waitMs = getWaitMs(retries)\n const willRetry =\n retries < maxRetries && waitMs !== null && retryable(err)\n if (willRetry) {\n retries += 1\n if (waitMs !== 0) {\n await wait(waitMs)\n }\n } else {\n doneError = err\n }\n }\n }\n throw doneError\n}\n\nexport function createRetryable(retryable: (err: unknown) => boolean) {\n return async <T>(fn: () => Promise<T>, opts?: RetryOptions) =>\n retry(fn, { ...opts, retryable })\n}\n\n// Waits exponential backoff with max and jitter: ~100, ~200, ~400, ~800, ~1000, ~1000, ...\nexport function backoffMs(n: number, multiplier = 100, max = 1000) {\n const exponentialMs = Math.pow(2, n) * multiplier\n const ms = Math.min(exponentialMs, max)\n return jitter(ms)\n}\n\n// Adds randomness +/-15% of value\nfunction jitter(value: number) {\n const delta = value * 0.15\n return value + randomRange(-delta, delta)\n}\n\nfunction randomRange(from: number, to: number) {\n const rand = Math.random() * (to - from)\n return rand + from\n}\n"]}
1
+ {"version":3,"file":"retry.js","sourceRoot":"","sources":["../src/retry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAOhC,MAAM,CAAC,KAAK,UAAU,KAAK,CACzB,EAAoB,EACpB,IAAI,GAEA,EAAE;IAEN,MAAM,EAAE,UAAU,GAAG,CAAC,EAAE,SAAS,GAAG,GAAG,EAAE,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS,EAAE,GAAG,IAAI,CAAA;IAC9E,IAAI,OAAO,GAAG,CAAC,CAAA;IACf,IAAI,SAAkB,CAAA;IACtB,OAAO,CAAC,SAAS,EAAE,CAAC;QAClB,IAAI,CAAC;YACH,OAAO,MAAM,EAAE,EAAE,CAAA;QACnB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,CAAA;YACjC,MAAM,SAAS,GACb,OAAO,GAAG,UAAU,IAAI,MAAM,KAAK,IAAI,IAAI,SAAS,CAAC,GAAG,CAAC,CAAA;YAC3D,IAAI,SAAS,EAAE,CAAC;gBACd,OAAO,IAAI,CAAC,CAAA;gBACZ,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;oBACjB,MAAM,IAAI,CAAC,MAAM,CAAC,CAAA;gBACpB,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,SAAS,GAAG,GAAG,CAAA;YACjB,CAAC;QACH,CAAC;IACH,CAAC;IACD,MAAM,SAAS,CAAA;AACjB,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,SAAoC;IAClE,OAAO,KAAK,EAAK,EAAoB,EAAE,IAAmB,EAAE,EAAE,CAC5D,KAAK,CAAC,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;AACrC,CAAC;AAED,2FAA2F;AAC3F,MAAM,UAAU,SAAS,CAAC,CAAS,EAAE,UAAU,GAAG,GAAG,EAAE,GAAG,GAAG,IAAI;IAC/D,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,UAAU,CAAA;IACjD,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,GAAG,CAAC,CAAA;IACvC,OAAO,MAAM,CAAC,EAAE,CAAC,CAAA;AACnB,CAAC;AAED,kCAAkC;AAClC,SAAS,MAAM,CAAC,KAAa;IAC3B,MAAM,KAAK,GAAG,KAAK,GAAG,IAAI,CAAA;IAC1B,OAAO,KAAK,GAAG,WAAW,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;AAC3C,CAAC;AAED,SAAS,WAAW,CAAC,IAAY,EAAE,EAAU;IAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,CAAA;IACxC,OAAO,IAAI,GAAG,IAAI,CAAA;AACpB,CAAC","sourcesContent":["import { wait } from './util.js'\n\nexport type RetryOptions = {\n maxRetries?: number\n getWaitMs?: (n: number) => number | null\n}\n\nexport async function retry<T>(\n fn: () => Promise<T>,\n opts: RetryOptions & {\n retryable?: (err: unknown) => boolean\n } = {},\n): Promise<T> {\n const { maxRetries = 3, retryable = () => true, getWaitMs = backoffMs } = opts\n let retries = 0\n let doneError: unknown\n while (!doneError) {\n try {\n return await fn()\n } catch (err) {\n const waitMs = getWaitMs(retries)\n const willRetry =\n retries < maxRetries && waitMs !== null && retryable(err)\n if (willRetry) {\n retries += 1\n if (waitMs !== 0) {\n await wait(waitMs)\n }\n } else {\n doneError = err\n }\n }\n }\n throw doneError\n}\n\nexport function createRetryable(retryable: (err: unknown) => boolean) {\n return async <T>(fn: () => Promise<T>, opts?: RetryOptions) =>\n retry(fn, { ...opts, retryable })\n}\n\n// Waits exponential backoff with max and jitter: ~100, ~200, ~400, ~800, ~1000, ~1000, ...\nexport function backoffMs(n: number, multiplier = 100, max = 1000) {\n const exponentialMs = Math.pow(2, n) * multiplier\n const ms = Math.min(exponentialMs, max)\n return jitter(ms)\n}\n\n// Adds randomness +/-15% of value\nfunction jitter(value: number) {\n const delta = value * 0.15\n return value + randomRange(-delta, delta)\n}\n\nfunction randomRange(from: number, to: number) {\n const rand = Math.random() * (to - from)\n return rand + from\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"strings.d.ts","sourceRoot":"","sources":["../src/strings.ts"],"names":[],"mappings":"AACA,OAAO,EACL,WAAW,EACX,eAAe,EACf,mBAAmB,EACpB,MAAM,iBAAiB,CAAA;AAExB;;GAEG;AACH,QAAA,MAAM,iBAAiB,yBAAc,CAAA;AACrC,OAAO,EAAE,iBAAiB,IAAI,WAAW,EAAE,CAAA;AAE3C;;GAEG;AACH,QAAA,MAAM,aAAa,4BAAU,CAAA;AAC7B,OAAO,EAAE,aAAa,IAAI,OAAO,EAAE,CAAA;AAEnC;;GAEG;AACH,KAAK,iBAAiB,GAAG,WAAW,CAAA;AACpC,YAAY,EAAE,iBAAiB,IAAI,WAAW,EAAE,CAAA;AAEhD;;GAEG;AACH,QAAA,MAAM,mBAAmB,4BAAsB,CAAA;AAC/C,OAAO,EAAE,mBAAmB,IAAI,aAAa,EAAE,CAAA;AAE/C;;GAEG;AACH,eAAO,MAAM,gBAAgB,wBAAkB,CAAA;AAE/C;;GAEG;AACH,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,KAAG,MAE3C,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,YAAY,GAAI,KAAK,MAAM,KAAG,MAE1C,CAAA"}
1
+ {"version":3,"file":"strings.d.ts","sourceRoot":"","sources":["../src/strings.ts"],"names":[],"mappings":"AACA,OAAO,EACL,WAAW,EACX,eAAe,EACf,mBAAmB,EACpB,MAAM,iBAAiB,CAAA;AAExB;;GAEG;AACH,QAAA,MAAM,iBAAiB,yBAAc,CAAA;AACrC,OAAO,EAAE,iBAAiB,IAAI,WAAW,EAAE,CAAA;AAE3C;;GAEG;AACH,QAAA,MAAM,aAAa,4BAAU,CAAA;AAC7B,OAAO,EAAE,aAAa,IAAI,OAAO,EAAE,CAAA;AAEnC;;GAEG;AACH,KAAK,iBAAiB,GAAG,WAAW,CAAA;AACpC,YAAY,EAAE,iBAAiB,IAAI,WAAW,EAAE,CAAA;AAEhD;;GAEG;AACH,QAAA,MAAM,mBAAmB,4BAAsB,CAAA;AAC/C,OAAO,EAAE,mBAAmB,IAAI,aAAa,EAAE,CAAA;AAE/C;;GAEG;AACH,eAAO,MAAM,gBAAgB,wBAAkB,CAAA;AAE/C;;GAEG;AACH,eAAO,MAAM,YAAY,SAAU,MAAM,KAAG,MAE3C,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,YAAY,QAAS,MAAM,KAAG,MAE1C,CAAA"}
package/dist/tid.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tid.d.ts","sourceRoot":"","sources":["../src/tid.ts"],"names":[],"mappings":"AAYA,qBAAa,GAAG;IACd,GAAG,EAAE,MAAM,CAAA;gBAEC,GAAG,EAAE,MAAM;IAQvB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG;IAsB5B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM;IAIrC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,GAAG;IAMxD,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG;IAIhC,MAAM,CAAC,WAAW,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,GAAG,MAAM;IAI1C,MAAM,CAAC,WAAW,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,GAAG,MAAM;IAI1C,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAI/B,SAAS,IAAI,MAAM;IAInB,OAAO,IAAI,MAAM;IAIjB,SAAS,IAAI,MAAM;IAQnB,QAAQ,IAAI,MAAM;IAKlB,SAAS,CAAC,KAAK,EAAE,GAAG,GAAG,MAAM;IAM7B,MAAM,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO;IAI3B,SAAS,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO;IAI9B,SAAS,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO;CAG/B"}
1
+ {"version":3,"file":"tid.d.ts","sourceRoot":"","sources":["../src/tid.ts"],"names":[],"mappings":"AAYA,qBAAa,GAAG;IACd,GAAG,EAAE,MAAM,CAAA;IAEX,YAAY,GAAG,EAAE,MAAM,EAMtB;IAED,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,CAoB3B;IAED,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAEpC;IAED,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,GAAG,CAIvD;IAED,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAE/B;IAED,MAAM,CAAC,WAAW,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,GAAG,MAAM,CAEzC;IAED,MAAM,CAAC,WAAW,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,GAAG,MAAM,CAEzC;IAED,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAE9B;IAED,SAAS,IAAI,MAAM,CAElB;IAED,OAAO,IAAI,MAAM,CAEhB;IAED,SAAS,IAAI,MAAM,CAMlB;IAED,QAAQ,IAAI,MAAM,CAEjB;IAGD,SAAS,CAAC,KAAK,EAAE,GAAG,GAAG,MAAM,CAI5B;IAED,MAAM,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAE1B;IAED,SAAS,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAE7B;IAED,SAAS,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAE7B;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"times.d.ts","sourceRoot":"","sources":["../src/times.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM,OAAO,CAAA;AAC1B,eAAO,MAAM,MAAM,QAAc,CAAA;AACjC,eAAO,MAAM,IAAI,QAAc,CAAA;AAC/B,eAAO,MAAM,GAAG,QAAY,CAAA;AAE5B,eAAO,MAAM,aAAa,GAAI,MAAM,IAAI,EAAE,OAAO,MAAM,YAEtD,CAAA;AAED,eAAO,MAAM,cAAc,GAAI,OAAO,MAAM,EAAE,eAAe,IAAI,KAAG,IAKnE,CAAA"}
1
+ {"version":3,"file":"times.d.ts","sourceRoot":"","sources":["../src/times.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM,OAAO,CAAA;AAC1B,eAAO,MAAM,MAAM,QAAc,CAAA;AACjC,eAAO,MAAM,IAAI,QAAc,CAAA;AAC/B,eAAO,MAAM,GAAG,QAAY,CAAA;AAE5B,eAAO,MAAM,aAAa,SAAU,IAAI,SAAS,MAAM,YAEtD,CAAA;AAED,eAAO,MAAM,cAAc,UAAW,MAAM,iBAAiB,IAAI,KAAG,IAKnE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAA;AAgBhC,QAAA,MAAM,SAAS;;;;;;;;;EAGb,CAAA;AACF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,SAAS,CAAC,CAAA;AAEjD,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;CAQlB,CAAA;AAED,eAAO,MAAM,GAAG;SAIT,GAAG,CAAC,GAAG,CAAC;eAIR,GAAG,CAAC,SAAS,CAAC;WAId,GAAG,CAAC,UAAU,CAAC;YAIf,GAAG,CAAC,MAAM,CAAC;SAIX,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;aAI5B,GAAG,CAAC,OAAO,CAAC;CAClB,CAAA;AAED,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK,CAAA;AAEnE,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAA;AAgBhC,QAAA,MAAM,SAAS;;;;;;;;;EAGb,CAAA;AACF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,SAAS,CAAC,CAAA;AAEjD,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;CAQlB,CAAA;AAED,eAAO,MAAM,GAAG;IACd,GAAG,EAGE,GAAG,CAAC,GAAG,CAAC;IACb,SAAS,EAGJ,GAAG,CAAC,SAAS,CAAC;IACnB,KAAK,EAGA,GAAG,CAAC,UAAU,CAAC;IACpB,MAAM,EAGD,GAAG,CAAC,MAAM,CAAC;IAChB,GAAG,EAGE,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,OAAO,EAGF,GAAG,CAAC,OAAO,CAAC;CAClB,CAAA;AAED,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK,CAAA;AAEnE,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA"}
package/dist/types.js CHANGED
@@ -18,7 +18,7 @@ const carHeader = z.object({
18
18
  export const schema = {
19
19
  cid: cidSchema,
20
20
  carHeader,
21
- bytes: z.instanceof((Uint8Array)),
21
+ bytes: z.instanceof(Uint8Array),
22
22
  string: z.string(),
23
23
  array: z.array(z.unknown()),
24
24
  map: z.record(z.string(), z.unknown()),
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AAGvC,MAAM,SAAS,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,GAAG,EAAO,EAAE;IACxD,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAE1B,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAChB,GAAG,CAAC,QAAQ,CAAC;YACX,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;YAC3B,OAAO,EAAE,iBAAiB;SAC3B,CAAC,CAAA;QACF,OAAO,CAAC,CAAC,KAAK,CAAA;IAChB,CAAC;IAED,OAAO,GAAG,CAAA;AACZ,CAAC,CAAC,CAAA;AAEF,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC;IACzB,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IACrB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC;CAC1B,CAAC,CAAA;AAGF,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,GAAG,EAAE,SAAS;IACd,SAAS;IACT,KAAK,EAAE,CAAC,CAAC,UAAU,CAAC,CAAA,UAA2B,CAAA,CAAC;IAChD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IAC3B,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;IACtC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;CACrB,CAAA;AAED,MAAM,CAAC,MAAM,GAAG,GAAG;IACjB,GAAG,EAAE;QACH,IAAI,EAAE,KAAK;QACX,MAAM,EAAE,MAAM,CAAC,GAAG;KACP;IACb,SAAS,EAAE;QACT,IAAI,EAAE,YAAY;QAClB,MAAM,EAAE,MAAM,CAAC,SAAS;KACP;IACnB,KAAK,EAAE;QACL,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,MAAM,CAAC,KAAK;KACF;IACpB,MAAM,EAAE;QACN,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,MAAM,CAAC,MAAM;KACP;IAChB,GAAG,EAAE;QACH,IAAI,EAAE,KAAK;QACX,MAAM,EAAE,MAAM,CAAC,GAAG;KACa;IACjC,OAAO,EAAE;QACP,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,MAAM,CAAC,OAAO;KACP;CAClB,CAAA","sourcesContent":["import { z } from 'zod'\nimport { CID } from '@atproto/lex-data'\nimport { Def } from './check.js'\n\nconst cidSchema = z.unknown().transform((obj, ctx): CID => {\n const cid = CID.asCID(obj)\n\n if (cid == null) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Not a valid CID',\n })\n return z.NEVER\n }\n\n return cid\n})\n\nconst carHeader = z.object({\n version: z.literal(1),\n roots: z.array(cidSchema),\n})\nexport type CarHeader = z.infer<typeof carHeader>\n\nexport const schema = {\n cid: cidSchema,\n carHeader,\n bytes: z.instanceof(Uint8Array<ArrayBufferLike>),\n string: z.string(),\n array: z.array(z.unknown()),\n map: z.record(z.string(), z.unknown()),\n unknown: z.unknown(),\n}\n\nexport const def = {\n cid: {\n name: 'cid',\n schema: schema.cid,\n } as Def<CID>,\n carHeader: {\n name: 'CAR header',\n schema: schema.carHeader,\n } as Def<CarHeader>,\n bytes: {\n name: 'bytes',\n schema: schema.bytes,\n } as Def<Uint8Array>,\n string: {\n name: 'string',\n schema: schema.string,\n } as Def<string>,\n map: {\n name: 'map',\n schema: schema.map,\n } as Def<Record<string, unknown>>,\n unknown: {\n name: 'unknown',\n schema: schema.unknown,\n } as Def<unknown>,\n}\n\nexport type ArrayEl<A> = A extends readonly (infer T)[] ? T : never\n\nexport type NotEmptyArray<T> = [T, ...T[]]\n"]}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AAGvC,MAAM,SAAS,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,GAAG,EAAO,EAAE;IACxD,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAE1B,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAChB,GAAG,CAAC,QAAQ,CAAC;YACX,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;YAC3B,OAAO,EAAE,iBAAiB;SAC3B,CAAC,CAAA;QACF,OAAO,CAAC,CAAC,KAAK,CAAA;IAChB,CAAC;IAED,OAAO,GAAG,CAAA;AACZ,CAAC,CAAC,CAAA;AAEF,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC;IACzB,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IACrB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC;CAC1B,CAAC,CAAA;AAGF,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,GAAG,EAAE,SAAS;IACd,SAAS;IACT,KAAK,EAAE,CAAC,CAAC,UAAU,CAAC,UAA2B,CAAC;IAChD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IAC3B,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;IACtC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;CACrB,CAAA;AAED,MAAM,CAAC,MAAM,GAAG,GAAG;IACjB,GAAG,EAAE;QACH,IAAI,EAAE,KAAK;QACX,MAAM,EAAE,MAAM,CAAC,GAAG;KACP;IACb,SAAS,EAAE;QACT,IAAI,EAAE,YAAY;QAClB,MAAM,EAAE,MAAM,CAAC,SAAS;KACP;IACnB,KAAK,EAAE;QACL,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,MAAM,CAAC,KAAK;KACF;IACpB,MAAM,EAAE;QACN,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,MAAM,CAAC,MAAM;KACP;IAChB,GAAG,EAAE;QACH,IAAI,EAAE,KAAK;QACX,MAAM,EAAE,MAAM,CAAC,GAAG;KACa;IACjC,OAAO,EAAE;QACP,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,MAAM,CAAC,OAAO;KACP;CAClB,CAAA","sourcesContent":["import { z } from 'zod'\nimport { CID } from '@atproto/lex-data'\nimport { Def } from './check.js'\n\nconst cidSchema = z.unknown().transform((obj, ctx): CID => {\n const cid = CID.asCID(obj)\n\n if (cid == null) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Not a valid CID',\n })\n return z.NEVER\n }\n\n return cid\n})\n\nconst carHeader = z.object({\n version: z.literal(1),\n roots: z.array(cidSchema),\n})\nexport type CarHeader = z.infer<typeof carHeader>\n\nexport const schema = {\n cid: cidSchema,\n carHeader,\n bytes: z.instanceof(Uint8Array<ArrayBufferLike>),\n string: z.string(),\n array: z.array(z.unknown()),\n map: z.record(z.string(), z.unknown()),\n unknown: z.unknown(),\n}\n\nexport const def = {\n cid: {\n name: 'cid',\n schema: schema.cid,\n } as Def<CID>,\n carHeader: {\n name: 'CAR header',\n schema: schema.carHeader,\n } as Def<CarHeader>,\n bytes: {\n name: 'bytes',\n schema: schema.bytes,\n } as Def<Uint8Array>,\n string: {\n name: 'string',\n schema: schema.string,\n } as Def<string>,\n map: {\n name: 'map',\n schema: schema.map,\n } as Def<Record<string, unknown>>,\n unknown: {\n name: 'unknown',\n schema: schema.unknown,\n } as Def<unknown>,\n}\n\nexport type ArrayEl<A> = A extends readonly (infer T)[] ? T : never\n\nexport type NotEmptyArray<T> = [T, ...T[]]\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,GAAI,CAAC,EAC/B,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,SAAS,CAAC,KACjC,MAAM,CAAC,MAAM,EAAE,CAAC,CAOlB,CAAA;AAED,wBAAgB,eAAe,CAC7B,MAAM,EAAE,OAAO,EAAE,EACjB,OAAO,CAAC,EAAE,MAAM,GACf,KAAK,GAAG,cAAc,CAWxB;AASD;;;GAGG;AACH,wBAAgB,IAAI,CAClB,CAAC,SAAS,SAAS,GAAG,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACpD,CAAC,SAAS,MAAM,WAAW,CAAC,CAAC,CAAC,EAE9B,MAAM,EAAE,CAAC,EACT,YAAY,EAAE,SAAS,CAAC,EAAE,GACzB,CAAC,SAAS,SAAS,GAAG,SAAS,GAAG,CAAC,SAAS,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AAoBvE,eAAO,MAAM,MAAM,GAAI,OAAO,MAAM,WAEnC,CAAA;AAED,eAAO,MAAM,IAAI,GAAI,IAAI,MAAM,qBAE9B,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,IAAI,CAAA;IAChB,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,YAAY,GAAI,IAAI,MAAM,KAAG,YAUzC,CAAA;AAED,eAAO,MAAM,kBAAkB,GAAI,MAAM,UAAU,EAAE,KAAG,UAWvD,CAAA;AAED,eAAO,MAAM,cAAc,GACzB,QAAQ,aAAa,CAAC,UAAU,CAAC,KAChC,OAAO,CAAC,UAAU,CAMpB,CAAA;AAID,eAAO,MAAM,SAAS,GAAI,GAAG,MAAM,KAAG,MAQrC,CAAA;AAED,eAAO,MAAM,SAAS,GAAI,GAAG,MAAM,KAAG,MAMrC,CAAA;AAED,eAAO,MAAM,WAAW,GAAU,CAAC,EACjC,KAAK,CAAC,EAAE,EACR,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,iBAI/B,CAAA;AAED,eAAO,MAAM,gBAAgB,GAC3B,KAAK,OAAO,KACX,GAAG,IAAI,MAAM,CAAC,cAEhB,CAAA;AAED,eAAO,MAAM,SAAS,GAAI,KAAK,OAAO,EAAE,KAAK,MAAM,KAAG,OAErD,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,WAAW,MAAM,KAAG,CAAC,EAAE,EAS9D,CAAA;AAED,eAAO,MAAM,KAAK,GAAI,KAAK,MAAM,KAAG,MAAM,EAMzC,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,CAAC,SAAS,MAAM,EAAE,MAAM,QAAQ,CAAC,CAAC,CAAC,KAAG,CAAC,EAEjE,CAAA;AAED,eAAO,MAAM,oBAAoB,GAAI,CAAC,EACpC,OAAO,MAAM,GAAG,SAAS,EACzB,UAAU,CAAC,KACV,MAAM,GAAG,CAGX,CAAA"}
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,GAAI,CAAC,OAC1B,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,SAAS,CAAC,KACjC,MAAM,CAAC,MAAM,EAAE,CAAC,CAOlB,CAAA;AAED,wBAAgB,eAAe,CAC7B,MAAM,EAAE,OAAO,EAAE,EACjB,OAAO,CAAC,EAAE,MAAM,GACf,KAAK,GAAG,cAAc,CAWxB;AASD;;;GAGG;AACH,wBAAgB,IAAI,CAClB,CAAC,SAAS,SAAS,GAAG,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACpD,CAAC,SAAS,MAAM,WAAW,CAAC,CAAC,CAAC,EAE9B,MAAM,EAAE,CAAC,EACT,YAAY,EAAE,SAAS,CAAC,EAAE,GACzB,CAAC,SAAS,SAAS,GAAG,SAAS,GAAG,CAAC,SAAS,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AAoBvE,eAAO,MAAM,MAAM,UAAW,MAAM,WAEnC,CAAA;AAED,eAAO,MAAM,IAAI,OAAQ,MAAM,qBAE9B,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,IAAI,CAAA;IAChB,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,YAAY,OAAQ,MAAM,KAAG,YAUzC,CAAA;AAED,eAAO,MAAM,kBAAkB,SAAU,UAAU,EAAE,KAAG,UAWvD,CAAA;AAED,eAAO,MAAM,cAAc,WACjB,aAAa,CAAC,UAAU,CAAC,KAChC,OAAO,CAAC,UAAU,CAMpB,CAAA;AAID,eAAO,MAAM,SAAS,MAAO,MAAM,KAAG,MAQrC,CAAA;AAED,eAAO,MAAM,SAAS,MAAO,MAAM,KAAG,MAMrC,CAAA;AAED,eAAO,MAAM,WAAW,GAAU,CAAC,OAC5B,CAAC,EAAE,MACJ,CAAC,CAAC,EAAE,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,iBAI/B,CAAA;AAED,eAAO,MAAM,gBAAgB,QACtB,OAAO,KACX,GAAG,IAAI,MAAM,CAAC,cAEhB,CAAA;AAED,eAAO,MAAM,SAAS,QAAS,OAAO,OAAO,MAAM,KAAG,OAErD,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,CAAC,OAAO,CAAC,EAAE,aAAa,MAAM,KAAG,CAAC,EAAE,EAS9D,CAAA;AAED,eAAO,MAAM,KAAK,QAAS,MAAM,KAAG,MAAM,EAMzC,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,CAAC,SAAS,MAAM,QAAQ,QAAQ,CAAC,CAAC,CAAC,KAAG,CAAC,EAEjE,CAAA;AAED,eAAO,MAAM,oBAAoB,GAAI,CAAC,SAC7B,MAAM,GAAG,SAAS,YACf,CAAC,KACV,MAAM,GAAG,CAGX,CAAA"}
package/jest.config.cjs CHANGED
@@ -4,11 +4,18 @@ module.exports = {
4
4
  transform: {
5
5
  '^.+\\.(t|j)s$': [
6
6
  '@swc/jest',
7
- { jsc: { transform: {} }, module: { type: 'es6' } },
7
+ {
8
+ jsc: {
9
+ parser: { syntax: 'typescript', importAttributes: true },
10
+ experimental: { keepImportAttributes: true },
11
+ transform: {},
12
+ },
13
+ module: { type: 'es6' },
14
+ },
8
15
  ],
9
16
  },
10
17
  extensionsToTreatAsEsm: ['.ts'],
11
18
  transformIgnorePatterns: [],
12
- setupFiles: ['<rootDir>/../../jest.setup.ts'],
19
+ setupFiles: ['<rootDir>/../../test.setup.ts'],
13
20
  moduleNameMapper: { '^(\\.\\.?\\/.+)\\.js$': ['$1.ts', '$1.js'] },
14
21
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atproto/common-web",
3
- "version": "0.5.0-next.0",
3
+ "version": "0.5.1",
4
4
  "engines": {
5
5
  "node": ">=22"
6
6
  },
@@ -17,13 +17,12 @@
17
17
  },
18
18
  "dependencies": {
19
19
  "zod": "^3.23.8",
20
- "@atproto/lex-data": "^0.1.0-next.0",
21
- "@atproto/lex-json": "^0.1.0-next.0",
22
- "@atproto/syntax": "^0.6.0-next.0"
20
+ "@atproto/lex-data": "^0.1.2",
21
+ "@atproto/syntax": "^0.6.2",
22
+ "@atproto/lex-json": "^0.1.1"
23
23
  },
24
24
  "devDependencies": {
25
- "jest": "^30.0.0",
26
- "typescript": "^6.0.3"
25
+ "jest": "^30.0.0"
27
26
  },
28
27
  "type": "module",
29
28
  "exports": {
@@ -34,6 +33,6 @@
34
33
  },
35
34
  "scripts": {
36
35
  "test": "NODE_OPTIONS=--experimental-vm-modules jest",
37
- "build": "tsc --build tsconfig.build.json"
36
+ "build": "tsgo --build tsconfig.build.json"
38
37
  }
39
38
  }
@@ -2,7 +2,7 @@
2
2
  "extends": "../../tsconfig/isomorphic.json",
3
3
  "compilerOptions": {
4
4
  "rootDir": "./src",
5
- "outDir": "./dist"
5
+ "outDir": "./dist",
6
6
  },
7
- "include": ["./src"]
7
+ "include": ["./src"],
8
8
  }
@@ -1 +1 @@
1
- {"root":["./src/arrays.ts","./src/async.ts","./src/check.ts","./src/did-doc.ts","./src/index.ts","./src/ipld.ts","./src/retry.ts","./src/strings.ts","./src/tid.ts","./src/times.ts","./src/types.ts","./src/util.ts"],"version":"6.0.3"}
1
+ {"version":"7.0.0-dev.20260614.1","root":["./src/arrays.ts","./src/async.ts","./src/check.ts","./src/did-doc.ts","./src/index.ts","./src/ipld.ts","./src/retry.ts","./src/strings.ts","./src/tid.ts","./src/times.ts","./src/types.ts","./src/util.ts"]}
package/tsconfig.json CHANGED
@@ -2,6 +2,6 @@
2
2
  "include": [],
3
3
  "references": [
4
4
  { "path": "./tsconfig.build.json" },
5
- { "path": "./tsconfig.tests.json" }
6
- ]
5
+ { "path": "./tsconfig.tests.json" },
6
+ ],
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "extends": "../../tsconfig/tests.json",
3
3
  "compilerOptions": {
4
- "rootDir": "."
4
+ "rootDir": ".",
5
5
  },
6
- "include": ["./tests"]
6
+ "include": ["./tests"],
7
7
  }