@atcute/lexicons 1.2.5 → 1.2.7
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/README.md +151 -4
- package/dist/interfaces/blob.d.ts +2 -2
- package/dist/interfaces/blob.d.ts.map +1 -1
- package/dist/interfaces/blob.js.map +1 -1
- package/dist/interfaces/bytes.d.ts.map +1 -1
- package/dist/interfaces/bytes.js.map +1 -1
- package/dist/interfaces/cid-link.d.ts.map +1 -1
- package/dist/interfaces/cid-link.js.map +1 -1
- package/dist/syntax/at-identifier.d.ts.map +1 -1
- package/dist/syntax/at-identifier.js.map +1 -1
- package/dist/syntax/at-uri.d.ts +2 -2
- package/dist/syntax/at-uri.d.ts.map +1 -1
- package/dist/syntax/at-uri.js +1 -1
- package/dist/syntax/at-uri.js.map +1 -1
- package/dist/syntax/cid.d.ts +1 -1
- package/dist/syntax/cid.d.ts.map +1 -1
- package/dist/syntax/cid.js.map +1 -1
- package/dist/syntax/datetime.d.ts +1 -1
- package/dist/syntax/datetime.d.ts.map +1 -1
- package/dist/syntax/datetime.js.map +1 -1
- package/dist/syntax/did.d.ts +1 -1
- package/dist/syntax/did.d.ts.map +1 -1
- package/dist/syntax/did.js +1 -1
- package/dist/syntax/did.js.map +1 -1
- package/dist/syntax/handle.d.ts +1 -1
- package/dist/syntax/handle.d.ts.map +1 -1
- package/dist/syntax/handle.js.map +1 -1
- package/dist/syntax/language.d.ts +1 -1
- package/dist/syntax/language.d.ts.map +1 -1
- package/dist/syntax/language.js.map +1 -1
- package/dist/syntax/nsid.d.ts +1 -1
- package/dist/syntax/nsid.d.ts.map +1 -1
- package/dist/syntax/nsid.js.map +1 -1
- package/dist/syntax/record-key.d.ts +1 -1
- package/dist/syntax/record-key.d.ts.map +1 -1
- package/dist/syntax/record-key.js.map +1 -1
- package/dist/syntax/tid.d.ts +1 -1
- package/dist/syntax/tid.d.ts.map +1 -1
- package/dist/syntax/tid.js.map +1 -1
- package/dist/syntax/uri.d.ts +1 -1
- package/dist/syntax/uri.d.ts.map +1 -1
- package/dist/syntax/uri.js +2 -15
- package/dist/syntax/uri.js.map +1 -1
- package/dist/types/brand.d.ts.map +1 -1
- package/dist/utils.d.ts +1 -1
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js.map +1 -1
- package/dist/validations/index.d.ts +11 -11
- package/dist/validations/index.d.ts.map +1 -1
- package/dist/validations/index.js +6 -36
- package/dist/validations/index.js.map +1 -1
- package/dist/validations/utils.d.ts +0 -2
- package/dist/validations/utils.d.ts.map +1 -1
- package/dist/validations/utils.js +1 -59
- package/dist/validations/utils.js.map +1 -1
- package/lib/syntax/at-uri.ts +2 -2
- package/lib/syntax/did.ts +1 -1
- package/lib/syntax/uri.ts +2 -20
- package/lib/validations/index.ts +35 -75
- package/lib/validations/utils.ts +1 -73
- package/package.json +16 -11
package/README.md
CHANGED
|
@@ -1,11 +1,158 @@
|
|
|
1
1
|
# @atcute/lexicons
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
core types and syntax validators for AT Protocol.
|
|
4
|
+
|
|
5
|
+
```sh
|
|
6
|
+
npm install @atcute/lexicons
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
this package provides syntax validators for AT Protocol's string formats (handles, DIDs, NSIDs,
|
|
10
|
+
etc.) and validation functions for use with lexicon schemas from definition packages.
|
|
11
|
+
|
|
12
|
+
## usage
|
|
13
|
+
|
|
14
|
+
### validating syntax
|
|
15
|
+
|
|
16
|
+
use the syntax validators to check AT Protocol string formats:
|
|
17
|
+
|
|
18
|
+
```ts
|
|
19
|
+
import {
|
|
20
|
+
isHandle,
|
|
21
|
+
isDid,
|
|
22
|
+
isNsid,
|
|
23
|
+
isCid,
|
|
24
|
+
isTid,
|
|
25
|
+
isRecordKey,
|
|
26
|
+
isDatetime,
|
|
27
|
+
isResourceUri,
|
|
28
|
+
isActorIdentifier,
|
|
29
|
+
} from '@atcute/lexicons/syntax';
|
|
30
|
+
|
|
31
|
+
// handle format (domain names)
|
|
32
|
+
isHandle('alice.bsky.social'); // true
|
|
33
|
+
isHandle('invalid'); // false (no TLD)
|
|
34
|
+
|
|
35
|
+
// DID format
|
|
36
|
+
isDid('did:plc:z72i7hdynmk6r22z27h6tvur'); // true
|
|
37
|
+
isDid('did:web:example.com'); // true
|
|
38
|
+
isDid('not-a-did'); // false
|
|
39
|
+
|
|
40
|
+
// NSID format (namespaced identifiers)
|
|
41
|
+
isNsid('app.bsky.feed.post'); // true
|
|
42
|
+
isNsid('com.atproto.repo.createRecord'); // true
|
|
43
|
+
|
|
44
|
+
// CID format (content identifiers)
|
|
45
|
+
isCid('bafyreigdyrzt5sfp7udm7hu76uh7y26nf3efuylqabf3oclgtqy55fbzdi'); // true
|
|
46
|
+
|
|
47
|
+
// TID format (timestamp identifiers)
|
|
48
|
+
isTid('3jzfcijpj2z2a'); // true
|
|
49
|
+
|
|
50
|
+
// record key format
|
|
51
|
+
isRecordKey('3jzfcijpj2z2a'); // true (TID)
|
|
52
|
+
isRecordKey('self'); // true (literal "self")
|
|
53
|
+
|
|
54
|
+
// datetime format (ISO 8601)
|
|
55
|
+
isDatetime('2024-01-15T12:00:00.000Z'); // true
|
|
56
|
+
|
|
57
|
+
// AT URI format
|
|
58
|
+
isResourceUri('at://did:plc:123/app.bsky.feed.post/abc'); // true
|
|
59
|
+
|
|
60
|
+
// actor identifier (handle or DID)
|
|
61
|
+
isActorIdentifier('alice.bsky.social'); // true
|
|
62
|
+
isActorIdentifier('did:plc:123'); // true
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
### parsing AT URIs
|
|
66
|
+
|
|
67
|
+
parse AT URIs to extract their components:
|
|
68
|
+
|
|
69
|
+
```ts
|
|
70
|
+
import { parseResourceUri, parseCanonicalResourceUri } from '@atcute/lexicons/syntax';
|
|
71
|
+
|
|
72
|
+
// parse any AT URI (handle or DID authority)
|
|
73
|
+
const uri = parseResourceUri('at://alice.bsky.social/app.bsky.feed.post/123');
|
|
74
|
+
if (uri.ok) {
|
|
75
|
+
console.log(uri.value.repo); // 'alice.bsky.social'
|
|
76
|
+
console.log(uri.value.collection); // 'app.bsky.feed.post'
|
|
77
|
+
console.log(uri.value.rkey); // '123'
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
// parse canonical AT URI (DID authority only)
|
|
81
|
+
const canonical = parseCanonicalResourceUri('at://did:plc:123/app.bsky.feed.post/abc');
|
|
82
|
+
if (canonical.ok) {
|
|
83
|
+
console.log(canonical.value.repo); // 'did:plc:123'
|
|
84
|
+
}
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
### branded types
|
|
88
|
+
|
|
89
|
+
the syntax module exports branded types for type-safe string handling:
|
|
4
90
|
|
|
5
91
|
```ts
|
|
6
|
-
import {
|
|
92
|
+
import type { Handle, Did, Nsid, Cid, Tid, RecordKey, Datetime } from '@atcute/lexicons/syntax';
|
|
93
|
+
import { isHandle } from '@atcute/lexicons/syntax';
|
|
94
|
+
|
|
95
|
+
function getProfile(handle: Handle): Promise<Profile> {
|
|
96
|
+
// handle is guaranteed to be a valid handle format
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
const input = 'alice.bsky.social';
|
|
100
|
+
if (isHandle(input)) {
|
|
101
|
+
// input is narrowed to Handle type
|
|
102
|
+
getProfile(input);
|
|
103
|
+
}
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
### validating records
|
|
107
|
+
|
|
108
|
+
validate data against lexicon schemas using `is()`, `safeParse()`, or `parse()`. schemas come from
|
|
109
|
+
definition packages like `@atcute/bluesky`:
|
|
7
110
|
|
|
8
|
-
|
|
111
|
+
```ts
|
|
112
|
+
import { is, safeParse, parse, ValidationError } from '@atcute/lexicons';
|
|
113
|
+
import { AppBskyFeedPost } from '@atcute/bluesky';
|
|
114
|
+
|
|
115
|
+
const data: unknown = {
|
|
116
|
+
$type: 'app.bsky.feed.post',
|
|
117
|
+
text: 'hello world',
|
|
118
|
+
createdAt: '2024-01-15T12:00:00.000Z',
|
|
119
|
+
};
|
|
120
|
+
|
|
121
|
+
// type guard - returns boolean
|
|
122
|
+
if (is(AppBskyFeedPost.mainSchema, data)) {
|
|
123
|
+
// data is typed as AppBskyFeedPost.$record
|
|
124
|
+
console.log(data.text);
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
// safe parse - returns result object
|
|
128
|
+
const result = safeParse(AppBskyFeedPost.mainSchema, data);
|
|
129
|
+
if (result.ok) {
|
|
130
|
+
console.log(result.value.text);
|
|
131
|
+
} else {
|
|
132
|
+
console.log(result.message);
|
|
133
|
+
console.log(result.issues);
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
// parse - throws on failure
|
|
137
|
+
try {
|
|
138
|
+
const post = parse(AppBskyFeedPost.mainSchema, data);
|
|
139
|
+
console.log(post.text);
|
|
140
|
+
} catch (err) {
|
|
141
|
+
if (err instanceof ValidationError) {
|
|
142
|
+
console.log(err.message);
|
|
143
|
+
console.log(err.issues);
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
### IPLD types
|
|
149
|
+
|
|
150
|
+
the package exports types for IPLD data structures used in AT Protocol:
|
|
151
|
+
|
|
152
|
+
```ts
|
|
153
|
+
import type { Blob, Bytes, CidLink } from '@atcute/lexicons';
|
|
9
154
|
|
|
10
|
-
|
|
155
|
+
// Blob - reference to uploaded media (images, videos)
|
|
156
|
+
// Bytes - raw binary data (base64 encoded in JSON)
|
|
157
|
+
// CidLink - reference to content by CID
|
|
11
158
|
```
|
|
@@ -9,7 +9,7 @@ export interface Blob<TMime extends string = string> {
|
|
|
9
9
|
ref: CidLink;
|
|
10
10
|
size: number;
|
|
11
11
|
}
|
|
12
|
-
export declare const isBlob: (input: unknown) => input is Blob
|
|
12
|
+
export declare const isBlob: (input: unknown) => input is Blob<string>;
|
|
13
13
|
/**
|
|
14
14
|
* deprecated interface representing an interface to a data blob
|
|
15
15
|
*/
|
|
@@ -17,5 +17,5 @@ export interface LegacyBlob<TMime extends string = string> {
|
|
|
17
17
|
cid: Cid;
|
|
18
18
|
mimeType: TMime;
|
|
19
19
|
}
|
|
20
|
-
export declare const isLegacyBlob: (input: unknown) => input is LegacyBlob
|
|
20
|
+
export declare const isLegacyBlob: (input: unknown) => input is LegacyBlob<string>;
|
|
21
21
|
//# sourceMappingURL=blob.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blob.d.ts","sourceRoot":"","sources":["../../lib/interfaces/blob.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAa,KAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,IAAI,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM;IAClD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,KAAK,CAAC;IAChB,GAAG,EAAE,OAAO,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACb;AAED,eAAO,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"blob.d.ts","sourceRoot":"","sources":["../../lib/interfaces/blob.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAa,KAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,IAAI,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM;IAClD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,KAAK,CAAC;IAChB,GAAG,EAAE,OAAO,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACb;AAED,eAAO,MAAM,MAAM,2CAYlB,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,UAAU,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM;IACxD,GAAG,EAAE,GAAG,CAAC;IACT,QAAQ,EAAE,KAAK,CAAC;CAChB;AAED,eAAO,MAAM,YAAY,iDAUxB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blob.js","sourceRoot":"","sources":["../../lib/interfaces/blob.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAgB,MAAM,eAAe,CAAC;AAYxD,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,KAAc,EAAiB,EAAE;
|
|
1
|
+
{"version":3,"file":"blob.js","sourceRoot":"","sources":["../../lib/interfaces/blob.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAgB,MAAM,eAAe,CAAC;AAYxD,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,KAAc,EAAiB,EAAE,CAAC;IACxD,MAAM,CAAC,GAAG,KAAY,CAAC;IAEvB,OAAO,CACN,OAAO,CAAC,KAAK,QAAQ;QACrB,CAAC,KAAK,IAAI;QACV,CAAC,CAAC,KAAK,KAAK,MAAM;QAClB,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ;QAC9B,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5B,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC;QAChB,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAC3B,CAAC;AAAA,CACF,CAAC;AAUF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAc,EAAuB,EAAE,CAAC;IACpE,MAAM,CAAC,GAAG,KAAY,CAAC;IAEvB,OAAO,CACN,OAAO,CAAC,KAAK,QAAQ;QACrB,CAAC,KAAK,IAAI;QACV,OAAO,CAAC,CAAC,GAAG,KAAK,QAAQ;QACzB,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ;QAC9B,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAC3B,CAAC;AAAA,CACF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bytes.d.ts","sourceRoot":"","sources":["../../lib/interfaces/bytes.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,KAAK;IACrB,MAAM,EAAE,MAAM,CAAC;CACf;AAED,QAAA,MAAM,YAAY,eAAsC,CAAC;AAEzD;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC7B,QAAQ,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC;IAE9B,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB,MAAM,IAAI,KAAK,CAAC;CAChB;AAED;;GAEG;AAEH,eAAO,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"bytes.d.ts","sourceRoot":"","sources":["../../lib/interfaces/bytes.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,KAAK;IACrB,MAAM,EAAE,MAAM,CAAC;CACf;AAED,QAAA,MAAM,YAAY,eAAsC,CAAC;AAEzD;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC7B,QAAQ,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC;IAE9B,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB,MAAM,IAAI,KAAK,CAAC;CAChB;AAED;;GAEG;AAEH,eAAO,MAAM,eAAe,4CAE3B,CAAC;AAYF,eAAO,MAAM,OAAO,oCAQnB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bytes.js","sourceRoot":"","sources":["../../lib/interfaces/bytes.ts"],"names":[],"mappings":"AAOA,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;AAezD;;GAEG;AACH,uBAAuB;AACvB,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAAc,EAA0B,EAAE;
|
|
1
|
+
{"version":3,"file":"bytes.js","sourceRoot":"","sources":["../../lib/interfaces/bytes.ts"],"names":[],"mappings":"AAOA,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;AAezD;;GAEG;AACH,uBAAuB;AACvB,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAAc,EAA0B,EAAE,CAAC;IAC1E,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,YAAY,IAAI,KAAK,CAAC;AAAA,CAC5E,CAAC;AAEF,MAAM,SAAS,GAAG,wEAAwE,CAAC;AAC3F,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAmB,EAAE,CAAC;IACrD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,KAAK,CAAC;IACd,CAAC;IAED,OAAO,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAAA,CAC7B,CAAC;AAEF,uBAAuB;AACvB,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,KAAc,EAAkB,EAAE,CAAC;IAC1D,MAAM,CAAC,GAAG,KAAY,CAAC;IAEvB,OAAO,CACN,OAAO,CAAC,KAAK,QAAQ;QACrB,CAAC,KAAK,IAAI;QACV,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAC1E,CAAC;AAAA,CACF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cid-link.d.ts","sourceRoot":"","sources":["../../lib/interfaces/cid-link.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAEnD;;GAEG;AACH,MAAM,WAAW,OAAO;IACvB,KAAK,EAAE,GAAG,CAAC;CACX;AAED,QAAA,MAAM,eAAe,eAAyC,CAAC;AAE/D;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC/B,QAAQ,CAAC,CAAC,eAAe,CAAC,EAAE,IAAI,CAAC;IAEjC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAEvB,MAAM,IAAI,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB,
|
|
1
|
+
{"version":3,"file":"cid-link.d.ts","sourceRoot":"","sources":["../../lib/interfaces/cid-link.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAEnD;;GAEG;AACH,MAAM,WAAW,OAAO;IACvB,KAAK,EAAE,GAAG,CAAC;CACX;AAED,QAAA,MAAM,eAAe,eAAyC,CAAC;AAE/D;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC/B,QAAQ,CAAC,CAAC,eAAe,CAAC,EAAE,IAAI,CAAC;IAEjC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAEvB,MAAM,IAAI,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB,8CAE7B,CAAC;AAEF,eAAO,MAAM,SAAS,sCAIrB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cid-link.js","sourceRoot":"","sources":["../../lib/interfaces/cid-link.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAY,MAAM,kBAAkB,CAAC;AASnD,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;AAe/D;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAc,EAA4B,EAAE;
|
|
1
|
+
{"version":3,"file":"cid-link.js","sourceRoot":"","sources":["../../lib/interfaces/cid-link.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAY,MAAM,kBAAkB,CAAC;AASnD,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;AAe/D;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAc,EAA4B,EAAE,CAAC;IAC9E,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,eAAe,IAAI,KAAK,CAAC;AAAA,CAC/E,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,KAAc,EAAoB,EAAE,CAAC;IAC9D,MAAM,CAAC,GAAG,KAAY,CAAC;IAEvB,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AAAA,CACvF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"at-identifier.d.ts","sourceRoot":"","sources":["../../lib/syntax/at-identifier.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,GAAG,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAY,KAAK,MAAM,EAAE,MAAM,aAAa,CAAC;AAEpD;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,GAAG,GAAG,MAAM,CAAC;AAG3C,eAAO,MAAM,iBAAiB,
|
|
1
|
+
{"version":3,"file":"at-identifier.d.ts","sourceRoot":"","sources":["../../lib/syntax/at-identifier.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,GAAG,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAY,KAAK,MAAM,EAAE,MAAM,aAAa,CAAC;AAEpD;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,GAAG,GAAG,MAAM,CAAC;AAG3C,eAAO,MAAM,iBAAiB,8CAE7B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"at-identifier.js","sourceRoot":"","sources":["../../lib/syntax/at-identifier.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAY,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAe,MAAM,aAAa,CAAC;AAQpD,uBAAuB;AACvB,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAc,EAA4B,EAAE;
|
|
1
|
+
{"version":3,"file":"at-identifier.js","sourceRoot":"","sources":["../../lib/syntax/at-identifier.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAY,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAe,MAAM,aAAa,CAAC;AAQpD,uBAAuB;AACvB,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAc,EAA4B,EAAE,CAAC;IAC9E,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC;AAAA,CACvC,CAAC"}
|
package/dist/syntax/at-uri.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
+
import { type Result } from '../utils.js';
|
|
1
2
|
import { type ActorIdentifier } from './at-identifier.js';
|
|
2
3
|
import { type Did } from './did.js';
|
|
3
4
|
import { type Nsid } from './nsid.js';
|
|
4
5
|
import { type RecordKey } from './record-key.js';
|
|
5
|
-
import { type Result } from '../utils.js';
|
|
6
6
|
/**
|
|
7
7
|
* represents a general AT Protocol URI, representing either an entire
|
|
8
8
|
* repository, a specific collection within a repository, or a record.
|
|
@@ -42,6 +42,6 @@ export type ParsedCanonicalResourceUri = {
|
|
|
42
42
|
rkey: RecordKey;
|
|
43
43
|
fragment: string | undefined;
|
|
44
44
|
};
|
|
45
|
-
export declare const isCanonicalResourceUri: (input: unknown) => input is
|
|
45
|
+
export declare const isCanonicalResourceUri: (input: unknown) => input is `at://did:${string}:${string}/${string}.${string}.${string}/${string}`;
|
|
46
46
|
export declare const parseCanonicalResourceUri: (input: string) => Result<ParsedCanonicalResourceUri, string>;
|
|
47
47
|
//# sourceMappingURL=at-uri.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"at-uri.d.ts","sourceRoot":"","sources":["../../lib/syntax/at-uri.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAAS,KAAK,GAAG,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAU,KAAK,IAAI,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAe,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE9D
|
|
1
|
+
{"version":3,"file":"at-uri.d.ts","sourceRoot":"","sources":["../../lib/syntax/at-uri.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,EAAqB,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAAS,KAAK,GAAG,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAU,KAAK,IAAI,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAe,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE9D;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GACpB,QAAQ,eAAe,EAAE,GACzB,QAAQ,eAAe,IAAI,IAAI,EAAE,GACjC,QAAQ,eAAe,IAAI,IAAI,IAAI,SAAS,EAAE,CAAC;AAElD,MAAM,MAAM,iBAAiB,GAC1B;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,UAAU,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,GAC/F;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,UAAU,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,GAC1F;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,UAAU,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAC;AAM9F,eAAO,MAAM,aAAa,0CAazB,CAAC;AAGF,eAAO,MAAM,gBAAgB,sDAqB5B,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,oBAAoB,GAAG,QAAQ,GAAG,IAAI,IAAI,IAAI,SAAS,EAAE,CAAC;AAEtE,MAAM,MAAM,0BAA0B,GAAG;IACxC,IAAI,EAAE,GAAG,CAAC;IACV,UAAU,EAAE,IAAI,CAAC;IACjB,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B,CAAC;AAGF,eAAO,MAAM,sBAAsB,qGAalC,CAAC;AAGF,eAAO,MAAM,yBAAyB,+DAqBrC,CAAC"}
|
package/dist/syntax/at-uri.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
+
import {} from '../utils.js';
|
|
1
2
|
import { isActorIdentifier } from './at-identifier.js';
|
|
2
3
|
import { isDid } from './did.js';
|
|
3
4
|
import { isNsid } from './nsid.js';
|
|
4
5
|
import { isRecordKey } from './record-key.js';
|
|
5
|
-
import {} from '../utils.js';
|
|
6
6
|
const ATURI_RE = /^at:\/\/([a-zA-Z0-9._:%-]+)(?:\/([a-zA-Z0-9-.]+)(?:\/([a-zA-Z0-9._~:@!$&%')(*+,;=-]+))?)?(?:#(\/[a-zA-Z0-9._~:@!$&%')(*+,;=\-[\]/\\]*))?$/;
|
|
7
7
|
// #__NO_SIDE_EFFECTS__
|
|
8
8
|
export const isResourceUri = (input) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"at-uri.js","sourceRoot":"","sources":["../../lib/syntax/at-uri.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAwB,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAAE,KAAK,EAAY,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAa,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAkB,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"at-uri.js","sourceRoot":"","sources":["../../lib/syntax/at-uri.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,MAAM,aAAa,CAAC;AAE1C,OAAO,EAAE,iBAAiB,EAAwB,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAAE,KAAK,EAAY,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAa,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAkB,MAAM,iBAAiB,CAAC;AAkB9D,MAAM,QAAQ,GACb,2IAA2I,CAAC;AAE7I,uBAAuB;AACvB,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAc,EAAwB,EAAE,CAAC;IACtE,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,KAAK,CAAC;IACd,CAAC;IAED,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO,KAAK,CAAC;IACd,CAAC;IAED,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC;IAE1B,OAAO,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,SAAS,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,SAAS,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;AAAA,CACrG,CAAC;AAEF,uBAAuB;AACvB,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAAa,EAAqC,EAAE,CAAC;IACrF,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,mBAAmB,KAAK,EAAE,EAAE,CAAC;IACzD,CAAC;IAED,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC;IAE7B,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3B,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,2BAA2B,CAAC,EAAE,EAAE,CAAC;IAC7D,CAAC;IAED,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QACnC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,iCAAiC,CAAC,EAAE,EAAE,CAAC;IACnE,CAAC;IAED,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;QACxC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,2BAA2B,CAAC,EAAE,EAAE,CAAC;IAC7D,CAAC;IAED,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC;AAAA,CAC7E,CAAC;AAkBF,uBAAuB;AACvB,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,KAAc,EAAiC,EAAE,CAAC;IACxF,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,KAAK,CAAC;IACd,CAAC;IAED,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO,KAAK,CAAC;IACd,CAAC;IAED,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC;IAE1B,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC;AAAA,CAC/C,CAAC;AAEF,uBAAuB;AACvB,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,KAAa,EAA8C,EAAE,CAAC;IACvG,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,6BAA6B,KAAK,EAAE,EAAE,CAAC;IACnE,CAAC;IAED,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC;IAE7B,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QACf,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,qCAAqC,CAAC,EAAE,EAAE,CAAC;IACvE,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QAChB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,2CAA2C,CAAC,EAAE,EAAE,CAAC;IAC7E,CAAC;IAED,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;QACrB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,qCAAqC,CAAC,EAAE,EAAE,CAAC;IACvE,CAAC;IAED,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC;AAAA,CAC7E,CAAC"}
|
package/dist/syntax/cid.d.ts
CHANGED
package/dist/syntax/cid.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cid.d.ts","sourceRoot":"","sources":["../../lib/syntax/cid.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,GAAG,GAAG,MAAM,CAAC;AAKzB,eAAO,MAAM,KAAK,
|
|
1
|
+
{"version":3,"file":"cid.d.ts","sourceRoot":"","sources":["../../lib/syntax/cid.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,GAAG,GAAG,MAAM,CAAC;AAKzB,eAAO,MAAM,KAAK,qCAOjB,CAAC"}
|
package/dist/syntax/cid.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cid.js","sourceRoot":"","sources":["../../lib/syntax/cid.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,GAAG,iCAAiC,CAAC;AAEtD,uBAAuB;AACvB,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,KAAc,EAAgB,EAAE;
|
|
1
|
+
{"version":3,"file":"cid.js","sourceRoot":"","sources":["../../lib/syntax/cid.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,GAAG,iCAAiC,CAAC;AAEtD,uBAAuB;AACvB,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,KAAc,EAAgB,EAAE,CAAC;IACtD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,KAAK,CAAC;IACd,CAAC;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAC5B,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,KAAK,EAAE,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAAA,CAClE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"datetime.d.ts","sourceRoot":"","sources":["../../lib/syntax/datetime.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC;AAM9B,eAAO,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"datetime.d.ts","sourceRoot":"","sources":["../../lib/syntax/datetime.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC;AAM9B,eAAO,MAAM,UAAU,qCAEtB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"datetime.js","sourceRoot":"","sources":["../../lib/syntax/datetime.ts"],"names":[],"mappings":"AAEA,MAAM,YAAY,GACjB,gKAAgK,CAAC;AAElK,uBAAuB;AACvB,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAc,EAAqB,EAAE;
|
|
1
|
+
{"version":3,"file":"datetime.js","sourceRoot":"","sources":["../../lib/syntax/datetime.ts"],"names":[],"mappings":"AAEA,MAAM,YAAY,GACjB,gKAAgK,CAAC;AAElK,uBAAuB;AACvB,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAc,EAAqB,EAAE,CAAC;IAChE,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,IAAI,EAAE,IAAI,KAAK,CAAC,MAAM,IAAI,EAAE,IAAI,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAAA,CACzG,CAAC"}
|
package/dist/syntax/did.d.ts
CHANGED
|
@@ -7,5 +7,5 @@ export type Did<Method extends string = string> = `did:${Method}:${string}`;
|
|
|
7
7
|
*/
|
|
8
8
|
export type AtprotoDid = Did<'plc' | 'web'>;
|
|
9
9
|
export type AtprotoAudience = `${AtprotoDid}#${string}`;
|
|
10
|
-
export declare const isDid: (input: unknown) => input is
|
|
10
|
+
export declare const isDid: (input: unknown) => input is `did:${string}:${string}`;
|
|
11
11
|
//# sourceMappingURL=did.d.ts.map
|
package/dist/syntax/did.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"did.d.ts","sourceRoot":"","sources":["../../lib/syntax/did.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,GAAG,CAAC,MAAM,SAAS,MAAM,GAAG,MAAM,IAAI,OAAO,MAAM,IAAI,MAAM,EAAE,CAAC;AAE5E;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC;AAE5C,MAAM,MAAM,eAAe,GAAG,GAAG,UAAU,IAAI,MAAM,EAAE,CAAC;AAKxD,eAAO,MAAM,KAAK,
|
|
1
|
+
{"version":3,"file":"did.d.ts","sourceRoot":"","sources":["../../lib/syntax/did.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,GAAG,CAAC,MAAM,SAAS,MAAM,GAAG,MAAM,IAAI,OAAO,MAAM,IAAI,MAAM,EAAE,CAAC;AAE5E;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC;AAE5C,MAAM,MAAM,eAAe,GAAG,GAAG,UAAU,IAAI,MAAM,EAAE,CAAC;AAKxD,eAAO,MAAM,KAAK,wDAEjB,CAAC"}
|
package/dist/syntax/did.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const DID_RE = /^did:([a-z]+):([a-zA-Z0-9._
|
|
1
|
+
const DID_RE = /^did:([a-z]+):([a-zA-Z0-9._:%-]*[a-zA-Z0-9._-])$/;
|
|
2
2
|
// #__NO_SIDE_EFFECTS__
|
|
3
3
|
export const isDid = (input) => {
|
|
4
4
|
return typeof input === 'string' && input.length >= 7 && input.length <= 2048 && DID_RE.test(input);
|
package/dist/syntax/did.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"did.js","sourceRoot":"","sources":["../../lib/syntax/did.ts"],"names":[],"mappings":"AAYA,MAAM,MAAM,GAAG,
|
|
1
|
+
{"version":3,"file":"did.js","sourceRoot":"","sources":["../../lib/syntax/did.ts"],"names":[],"mappings":"AAYA,MAAM,MAAM,GAAG,kDAAkD,CAAC;AAElE,uBAAuB;AACvB,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,KAAc,EAAgB,EAAE,CAAC;IACtD,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAAA,CACpG,CAAC"}
|
package/dist/syntax/handle.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handle.d.ts","sourceRoot":"","sources":["../../lib/syntax/handle.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG,GAAG,MAAM,IAAI,MAAM,EAAE,CAAC;AAM3C,eAAO,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"handle.d.ts","sourceRoot":"","sources":["../../lib/syntax/handle.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG,GAAG,MAAM,IAAI,MAAM,EAAE,CAAC;AAM3C,eAAO,MAAM,QAAQ,oDAEpB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handle.js","sourceRoot":"","sources":["../../lib/syntax/handle.ts"],"names":[],"mappings":"AAMA,MAAM,SAAS,GACd,4FAA4F,CAAC;AAE9F,uBAAuB;AACvB,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAmB,EAAE;
|
|
1
|
+
{"version":3,"file":"handle.js","sourceRoot":"","sources":["../../lib/syntax/handle.ts"],"names":[],"mappings":"AAMA,MAAM,SAAS,GACd,4FAA4F,CAAC;AAE9F,uBAAuB;AACvB,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAmB,EAAE,CAAC;IAC5D,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAAA,CACtG,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"language.d.ts","sourceRoot":"","sources":["../../lib/syntax/language.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC;AAMlC,eAAO,MAAM,cAAc,
|
|
1
|
+
{"version":3,"file":"language.d.ts","sourceRoot":"","sources":["../../lib/syntax/language.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC;AAMlC,eAAO,MAAM,cAAc,qCAE1B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"language.js","sourceRoot":"","sources":["../../lib/syntax/language.ts"],"names":[],"mappings":"AAEA,MAAM,gBAAgB,GACrB,mlBAAmlB,CAAC;AAErlB,uBAAuB;AACvB,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAc,EAAyB,EAAE;
|
|
1
|
+
{"version":3,"file":"language.js","sourceRoot":"","sources":["../../lib/syntax/language.ts"],"names":[],"mappings":"AAEA,MAAM,gBAAgB,GACrB,mlBAAmlB,CAAC;AAErlB,uBAAuB;AACvB,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAc,EAAyB,EAAE,CAAC;IACxE,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAAA,CACtF,CAAC"}
|
package/dist/syntax/nsid.d.ts
CHANGED
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
* represents a namespace identifier (NSID)
|
|
3
3
|
*/
|
|
4
4
|
export type Nsid = `${string}.${string}.${string}`;
|
|
5
|
-
export declare const isNsid: (input: unknown) => input is
|
|
5
|
+
export declare const isNsid: (input: unknown) => input is `${string}.${string}.${string}`;
|
|
6
6
|
//# sourceMappingURL=nsid.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nsid.d.ts","sourceRoot":"","sources":["../../lib/syntax/nsid.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,IAAI,GAAG,GAAG,MAAM,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;AAMnD,eAAO,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"nsid.d.ts","sourceRoot":"","sources":["../../lib/syntax/nsid.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,IAAI,GAAG,GAAG,MAAM,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;AAMnD,eAAO,MAAM,MAAM,8DAElB,CAAC"}
|
package/dist/syntax/nsid.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nsid.js","sourceRoot":"","sources":["../../lib/syntax/nsid.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,GACZ,8HAA8H,CAAC;AAEhI,uBAAuB;AACvB,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,KAAc,EAAiB,EAAE;
|
|
1
|
+
{"version":3,"file":"nsid.js","sourceRoot":"","sources":["../../lib/syntax/nsid.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,GACZ,8HAA8H,CAAC;AAEhI,uBAAuB;AACvB,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,KAAc,EAAiB,EAAE,CAAC;IACxD,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAAA,CACpG,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"record-key.d.ts","sourceRoot":"","sources":["../../lib/syntax/record-key.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAK/B,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"record-key.d.ts","sourceRoot":"","sources":["../../lib/syntax/record-key.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAK/B,eAAO,MAAM,WAAW,qCAEvB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"record-key.js","sourceRoot":"","sources":["../../lib/syntax/record-key.ts"],"names":[],"mappings":"AAKA,MAAM,aAAa,GAAG,uCAAuC,CAAC;AAE9D,uBAAuB;AACvB,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAc,EAAsB,EAAE;
|
|
1
|
+
{"version":3,"file":"record-key.js","sourceRoot":"","sources":["../../lib/syntax/record-key.ts"],"names":[],"mappings":"AAKA,MAAM,aAAa,GAAG,uCAAuC,CAAC;AAE9D,uBAAuB;AACvB,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAc,EAAsB,EAAE,CAAC;IAClE,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAAA,CAC1G,CAAC"}
|
package/dist/syntax/tid.d.ts
CHANGED
package/dist/syntax/tid.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tid.d.ts","sourceRoot":"","sources":["../../lib/syntax/tid.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,GAAG,GAAG,MAAM,CAAC;AAKzB,eAAO,MAAM,KAAK,
|
|
1
|
+
{"version":3,"file":"tid.d.ts","sourceRoot":"","sources":["../../lib/syntax/tid.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,GAAG,GAAG,MAAM,CAAC;AAKzB,eAAO,MAAM,KAAK,qCAEjB,CAAC"}
|
package/dist/syntax/tid.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tid.js","sourceRoot":"","sources":["../../lib/syntax/tid.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,GAAG,4DAA4D,CAAC;AAE5E,uBAAuB;AACvB,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,KAAc,EAAgB,EAAE;
|
|
1
|
+
{"version":3,"file":"tid.js","sourceRoot":"","sources":["../../lib/syntax/tid.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,GAAG,4DAA4D,CAAC;AAE5E,uBAAuB;AACvB,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,KAAc,EAAgB,EAAE,CAAC;IACtD,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAAA,CAC9E,CAAC"}
|
package/dist/syntax/uri.d.ts
CHANGED
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
* represents a generic URI
|
|
3
3
|
*/
|
|
4
4
|
export type GenericUri = `${string}:${string}`;
|
|
5
|
-
export declare const isGenericUri: (input: unknown) => input is
|
|
5
|
+
export declare const isGenericUri: (input: unknown) => input is `${string}:${string}`;
|
|
6
6
|
//# sourceMappingURL=uri.d.ts.map
|
package/dist/syntax/uri.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uri.d.ts","sourceRoot":"","sources":["../../lib/syntax/uri.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,GAAG,MAAM,IAAI,MAAM,EAAE,CAAC;AAK/C,eAAO,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"uri.d.ts","sourceRoot":"","sources":["../../lib/syntax/uri.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,GAAG,MAAM,IAAI,MAAM,EAAE,CAAC;AAK/C,eAAO,MAAM,YAAY,oDAUxB,CAAC"}
|
package/dist/syntax/uri.js
CHANGED
|
@@ -1,24 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { isUtf8LengthInRange } from '@atcute/uint8array';
|
|
2
2
|
const URI_RE = /^\w+:(?:\/\/)?[^\s/][^\s]*$/;
|
|
3
3
|
// #__NO_SIDE_EFFECTS__
|
|
4
4
|
export const isGenericUri = (input) => {
|
|
5
5
|
if (typeof input !== 'string') {
|
|
6
6
|
return false;
|
|
7
7
|
}
|
|
8
|
-
|
|
9
|
-
const MAX_LENGTH = 8192;
|
|
10
|
-
const utf16Len = input.length;
|
|
11
|
-
const maybeUtf8Len = utf16Len * 3;
|
|
12
|
-
// fail early if estimated upper bound is too small
|
|
13
|
-
if (maybeUtf8Len < MIN_LENGTH) {
|
|
14
|
-
return false;
|
|
15
|
-
}
|
|
16
|
-
// skip calculation if UTF-16 length already satisfies both constraints
|
|
17
|
-
if (utf16Len >= MIN_LENGTH && maybeUtf8Len <= MAX_LENGTH) {
|
|
18
|
-
return URI_RE.test(input);
|
|
19
|
-
}
|
|
20
|
-
const utf8Len = getUtf8Length(input);
|
|
21
|
-
if (utf8Len < MIN_LENGTH || utf8Len > MAX_LENGTH) {
|
|
8
|
+
if (!isUtf8LengthInRange(input, 3, 8192)) {
|
|
22
9
|
return false;
|
|
23
10
|
}
|
|
24
11
|
return URI_RE.test(input);
|
package/dist/syntax/uri.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uri.js","sourceRoot":"","sources":["../../lib/syntax/uri.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"uri.js","sourceRoot":"","sources":["../../lib/syntax/uri.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAOzD,MAAM,MAAM,GAAG,6BAA6B,CAAC;AAE7C,uBAAuB;AACvB,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAc,EAAuB,EAAE,CAAC;IACpE,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,KAAK,CAAC;IACd,CAAC;IAED,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC;QAC1C,OAAO,KAAK,CAAC;IACd,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAAA,CAC1B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brand.d.ts","sourceRoot":"","sources":["../../lib/types/brand.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,WAAW,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"brand.d.ts","sourceRoot":"","sources":["../../lib/types/brand.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,WAAW,KAAK,CAAC,CAAC;IAC/B,KAAK,GAAG,CAAC,OAAO,SAAS;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,IAAI,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IAE7E,KAAK,OAAO,CAAC,OAAO,SAAS;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,IAAI,OAAO,SAAS,GAAG,GACnE,SAAS,SAAS,OAAO,CAAC,OAAO,CAAC,GACjC,OAAO,GAAG;QAAE,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAA;KAAE,GAClD,OAAO,GACR,KAAK,CAAC;IAET,KAAK,IAAI,CAAC,OAAO,SAAS;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,IAAI,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;CACvE"}
|
package/dist/utils.d.ts
CHANGED
|
@@ -8,5 +8,5 @@ export type Result<T, E> = {
|
|
|
8
8
|
export declare const assert: {
|
|
9
9
|
(condition: any, message?: string): asserts condition;
|
|
10
10
|
};
|
|
11
|
-
export declare const assertNever: (_: never, message?: string) => never;
|
|
11
|
+
export declare const assertNever: (_: never, message?: string | undefined) => never;
|
|
12
12
|
//# sourceMappingURL=utils.d.ts.map
|
package/dist/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../lib/utils.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,CAAC;AAE5E,eAAO,MAAM,MAAM,EAAE;IAAE,CAAC,SAAS,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAA;CAQ3E,CAAC;AAEF,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../lib/utils.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,CAAC;AAE5E,eAAO,MAAM,MAAM,EAAE;IAAE,CAAC,SAAS,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAA;CAQ3E,CAAC;AAEF,eAAO,MAAM,WAAW,mDAEvB,CAAC"}
|
package/dist/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,SAAS,CAAC;AAI9B,MAAM,CAAC,MAAM,MAAM,GAA8D,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,SAAS,CAAC;AAI9B,MAAM,CAAC,MAAM,MAAM,GAA8D,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,CAAC;IACxG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChB,IAAI,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CAAC,kBAAkB,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACvE,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;IACrC,CAAC;AAAA,CACD,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAQ,EAAE,OAAgB,EAAS,EAAE,CAAC;IACjE,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AAAA,CACvB,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { StandardSchemaV1 } from '@standard-schema/spec';
|
|
2
|
-
import * as syntax from '../syntax/index.js';
|
|
3
2
|
import * as interfaces from '../interfaces/index.js';
|
|
3
|
+
import * as syntax from '../syntax/index.js';
|
|
4
4
|
import type { $type } from '../types/brand.js';
|
|
5
5
|
/**
|
|
6
6
|
* flag indicating whether xrpc schema generation helpers are used. set to true
|
|
@@ -167,9 +167,9 @@ export declare class ValidationError extends Error {
|
|
|
167
167
|
get message(): string;
|
|
168
168
|
get issues(): readonly Issue[];
|
|
169
169
|
}
|
|
170
|
-
export declare const is: <const TSchema extends BaseSchema
|
|
171
|
-
export declare const safeParse: <const TSchema extends BaseSchema
|
|
172
|
-
export declare const parse: <const TSchema extends BaseSchema
|
|
170
|
+
export declare const is: <const TSchema extends BaseSchema<unknown, unknown>>(schema: TSchema, input: unknown) => input is InferInput<TSchema>;
|
|
171
|
+
export declare const safeParse: <const TSchema extends BaseSchema<unknown, unknown>>(schema: TSchema, input: unknown) => ValidationResult<InferOutput<TSchema>>;
|
|
172
|
+
export declare const parse: <const TSchema extends BaseSchema<unknown, unknown>>(schema: TSchema, input: unknown) => InferOutput<TSchema>;
|
|
173
173
|
export interface BaseConstraint<TType = unknown> {
|
|
174
174
|
readonly kind: 'constraint';
|
|
175
175
|
readonly type: string;
|
|
@@ -179,7 +179,7 @@ type ConstraintTuple<T> = readonly [BaseConstraint<T>, ...BaseConstraint<T>[]];
|
|
|
179
179
|
export type SchemaWithConstraint<TItem extends BaseSchema, TConstraints extends ConstraintTuple<InferOutput<TItem>>> = TItem & {
|
|
180
180
|
readonly constraints: TConstraints;
|
|
181
181
|
};
|
|
182
|
-
export declare const constrain: <TItem extends BaseSchema, const TConstraints extends ConstraintTuple<InferOutput<TItem>>>(base: TItem, constraints: TConstraints) => SchemaWithConstraint<TItem, TConstraints>;
|
|
182
|
+
export declare const constrain: <TItem extends BaseSchema<unknown, unknown>, const TConstraints extends ConstraintTuple<InferOutput<TItem>>>(base: TItem, constraints: TConstraints) => SchemaWithConstraint<TItem, TConstraints>;
|
|
183
183
|
export interface BaseMetadata {
|
|
184
184
|
readonly kind: 'metadata';
|
|
185
185
|
readonly type: string;
|
|
@@ -274,7 +274,7 @@ export interface NullableSchema<TItem extends BaseSchema = BaseSchema> extends B
|
|
|
274
274
|
readonly type: 'nullable';
|
|
275
275
|
readonly wrapped: TItem;
|
|
276
276
|
}
|
|
277
|
-
export declare const nullable: <TItem extends BaseSchema
|
|
277
|
+
export declare const nullable: <TItem extends BaseSchema<unknown, unknown>>(wrapped: TItem) => NullableSchema<TItem>;
|
|
278
278
|
export type DefaultValue<TItem extends BaseSchema> = InferOutput<TItem> | (() => InferOutput<TItem>) | undefined;
|
|
279
279
|
export type InferOptionalOutput<TItem extends BaseSchema, TDefault extends DefaultValue<TItem>> = undefined extends TDefault ? InferOutput<TItem> | undefined : InferOutput<TItem>;
|
|
280
280
|
export interface OptionalSchema<TItem extends BaseSchema = BaseSchema, TDefault extends DefaultValue<TItem> = DefaultValue<TItem>> extends BaseSchema<InferInput<TItem> | undefined, InferOptionalOutput<TItem, TDefault>> {
|
|
@@ -294,7 +294,7 @@ export interface ArraySchema<TItem extends BaseSchema = BaseSchema> extends Base
|
|
|
294
294
|
out: InferOutput<TItem>[];
|
|
295
295
|
};
|
|
296
296
|
}
|
|
297
|
-
export declare const array: <TItem extends BaseSchema
|
|
297
|
+
export declare const array: <TItem extends BaseSchema<unknown, unknown>>(item: TItem | (() => TItem)) => ArraySchema<TItem>;
|
|
298
298
|
export interface ArrayLengthConstraint<TMinLength extends number = number, TMaxLength extends number = number> extends BaseConstraint<unknown[]> {
|
|
299
299
|
readonly type: 'array_length';
|
|
300
300
|
readonly minLength: TMinLength;
|
|
@@ -346,7 +346,7 @@ export interface RecordSchema<TObject extends ObjectSchema, TKey extends RecordK
|
|
|
346
346
|
out: InferOutput<TObject>;
|
|
347
347
|
};
|
|
348
348
|
}
|
|
349
|
-
export declare const record: <TKey extends RecordKeySchema, TObject extends ObjectSchema
|
|
349
|
+
export declare const record: <TKey extends RecordKeySchema, TObject extends ObjectSchema<LooseObjectShape>>(key: TKey, object: TObject) => RecordSchema<TObject, TKey>;
|
|
350
350
|
type VariantTuple = readonly ObjectSchema<any>[];
|
|
351
351
|
type InferVariantInput<TMembers extends VariantTuple> = $type.enforce<InferInput<TMembers[number]>>;
|
|
352
352
|
type InferVariantOutput<TMembers extends VariantTuple> = $type.enforce<InferOutput<TMembers[number]>>;
|
|
@@ -385,7 +385,7 @@ export interface XRPCProcedureMetadata<TParams extends ObjectSchema | null = Obj
|
|
|
385
385
|
readonly input: TInput;
|
|
386
386
|
readonly output: TOutput;
|
|
387
387
|
}
|
|
388
|
-
export declare const procedure: <TNsid extends
|
|
388
|
+
export declare const procedure: <TNsid extends `${string}.${string}.${string}`, TParams extends ObjectSchema<LooseObjectShape> | null, TInput extends XRPCBodyParam, TOutput extends XRPCBodyParam>(nsid: TNsid, options: {
|
|
389
389
|
params: TParams;
|
|
390
390
|
input: TInput;
|
|
391
391
|
output: TOutput;
|
|
@@ -396,7 +396,7 @@ export interface XRPCQueryMetadata<TParams extends ObjectSchema | null = ObjectS
|
|
|
396
396
|
readonly params: TParams;
|
|
397
397
|
readonly output: TOutput;
|
|
398
398
|
}
|
|
399
|
-
export declare const query: <TNsid extends
|
|
399
|
+
export declare const query: <TNsid extends `${string}.${string}.${string}`, TParams extends ObjectSchema<LooseObjectShape> | null, TOutput extends XRPCBodyParam>(nsid: TNsid, options: {
|
|
400
400
|
params: TParams;
|
|
401
401
|
output: TOutput;
|
|
402
402
|
}) => XRPCQueryMetadata<TParams, TOutput, TNsid>;
|
|
@@ -406,7 +406,7 @@ export interface XRPCSubscriptionMetadata<TParams extends ObjectSchema | null =
|
|
|
406
406
|
readonly params: TParams;
|
|
407
407
|
readonly message: TMessage;
|
|
408
408
|
}
|
|
409
|
-
export declare const subscription: <TNsid extends
|
|
409
|
+
export declare const subscription: <TNsid extends `${string}.${string}.${string}`, TParams extends ObjectSchema<LooseObjectShape> | null, TMessage extends ObjectSchema<any> | VariantSchema<any, any> | null>(nsid: TNsid, options: {
|
|
410
410
|
params: TParams;
|
|
411
411
|
readonly message: TMessage;
|
|
412
412
|
}) => XRPCSubscriptionMetadata<TParams, TMessage, TNsid>;
|