@atproto/lex-client 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (115) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/client.d.ts +79 -25
  3. package/dist/client.d.ts.map +1 -1
  4. package/dist/client.js +56 -24
  5. package/dist/client.js.map +1 -1
  6. package/dist/lexicons/com/atproto/repo/applyWrites.d.ts +3 -0
  7. package/dist/lexicons/com/atproto/repo/applyWrites.d.ts.map +1 -0
  8. package/dist/lexicons/com/atproto/repo/applyWrites.defs.d.ts +100 -0
  9. package/dist/lexicons/com/atproto/repo/applyWrites.defs.d.ts.map +1 -0
  10. package/dist/lexicons/com/atproto/repo/applyWrites.defs.js +81 -0
  11. package/dist/lexicons/com/atproto/repo/applyWrites.defs.js.map +1 -0
  12. package/dist/lexicons/com/atproto/repo/applyWrites.js +6 -0
  13. package/dist/lexicons/com/atproto/repo/applyWrites.js.map +1 -0
  14. package/dist/lexicons/com/atproto/repo/createRecord.d.ts +1 -1
  15. package/dist/lexicons/com/atproto/repo/createRecord.d.ts.map +1 -1
  16. package/dist/lexicons/com/atproto/repo/createRecord.defs.d.ts +16 -13
  17. package/dist/lexicons/com/atproto/repo/createRecord.defs.d.ts.map +1 -1
  18. package/dist/lexicons/com/atproto/repo/createRecord.defs.js +10 -10
  19. package/dist/lexicons/com/atproto/repo/createRecord.defs.js.map +1 -1
  20. package/dist/lexicons/com/atproto/repo/createRecord.js +1 -1
  21. package/dist/lexicons/com/atproto/repo/createRecord.js.map +1 -1
  22. package/dist/lexicons/com/atproto/repo/defs.d.ts +0 -1
  23. package/dist/lexicons/com/atproto/repo/defs.d.ts.map +1 -1
  24. package/dist/lexicons/com/atproto/repo/defs.js +0 -1
  25. package/dist/lexicons/com/atproto/repo/defs.js.map +1 -1
  26. package/dist/lexicons/com/atproto/repo/deleteRecord.d.ts +1 -1
  27. package/dist/lexicons/com/atproto/repo/deleteRecord.d.ts.map +1 -1
  28. package/dist/lexicons/com/atproto/repo/deleteRecord.defs.d.ts +16 -13
  29. package/dist/lexicons/com/atproto/repo/deleteRecord.defs.d.ts.map +1 -1
  30. package/dist/lexicons/com/atproto/repo/deleteRecord.defs.js +10 -10
  31. package/dist/lexicons/com/atproto/repo/deleteRecord.defs.js.map +1 -1
  32. package/dist/lexicons/com/atproto/repo/deleteRecord.js +1 -1
  33. package/dist/lexicons/com/atproto/repo/deleteRecord.js.map +1 -1
  34. package/dist/lexicons/com/atproto/repo/getRecord.d.ts +1 -1
  35. package/dist/lexicons/com/atproto/repo/getRecord.d.ts.map +1 -1
  36. package/dist/lexicons/com/atproto/repo/getRecord.defs.d.ts +13 -11
  37. package/dist/lexicons/com/atproto/repo/getRecord.defs.d.ts.map +1 -1
  38. package/dist/lexicons/com/atproto/repo/getRecord.defs.js +7 -9
  39. package/dist/lexicons/com/atproto/repo/getRecord.defs.js.map +1 -1
  40. package/dist/lexicons/com/atproto/repo/getRecord.js +1 -1
  41. package/dist/lexicons/com/atproto/repo/getRecord.js.map +1 -1
  42. package/dist/lexicons/com/atproto/repo/listRecords.d.ts +1 -1
  43. package/dist/lexicons/com/atproto/repo/listRecords.d.ts.map +1 -1
  44. package/dist/lexicons/com/atproto/repo/listRecords.defs.d.ts +13 -11
  45. package/dist/lexicons/com/atproto/repo/listRecords.defs.d.ts.map +1 -1
  46. package/dist/lexicons/com/atproto/repo/listRecords.defs.js +7 -9
  47. package/dist/lexicons/com/atproto/repo/listRecords.defs.js.map +1 -1
  48. package/dist/lexicons/com/atproto/repo/listRecords.js +1 -1
  49. package/dist/lexicons/com/atproto/repo/listRecords.js.map +1 -1
  50. package/dist/lexicons/com/atproto/repo/putRecord.d.ts +1 -1
  51. package/dist/lexicons/com/atproto/repo/putRecord.d.ts.map +1 -1
  52. package/dist/lexicons/com/atproto/repo/putRecord.defs.d.ts +16 -13
  53. package/dist/lexicons/com/atproto/repo/putRecord.defs.d.ts.map +1 -1
  54. package/dist/lexicons/com/atproto/repo/putRecord.defs.js +10 -10
  55. package/dist/lexicons/com/atproto/repo/putRecord.defs.js.map +1 -1
  56. package/dist/lexicons/com/atproto/repo/putRecord.js +1 -1
  57. package/dist/lexicons/com/atproto/repo/putRecord.js.map +1 -1
  58. package/dist/lexicons/com/atproto/repo/uploadBlob.d.ts +1 -1
  59. package/dist/lexicons/com/atproto/repo/uploadBlob.d.ts.map +1 -1
  60. package/dist/lexicons/com/atproto/repo/uploadBlob.defs.d.ts +11 -8
  61. package/dist/lexicons/com/atproto/repo/uploadBlob.defs.d.ts.map +1 -1
  62. package/dist/lexicons/com/atproto/repo/uploadBlob.defs.js +7 -7
  63. package/dist/lexicons/com/atproto/repo/uploadBlob.defs.js.map +1 -1
  64. package/dist/lexicons/com/atproto/repo/uploadBlob.js +1 -1
  65. package/dist/lexicons/com/atproto/repo/uploadBlob.js.map +1 -1
  66. package/dist/lexicons/com/atproto/repo.d.ts +2 -1
  67. package/dist/lexicons/com/atproto/repo.d.ts.map +1 -1
  68. package/dist/lexicons/com/atproto/repo.js +2 -1
  69. package/dist/lexicons/com/atproto/repo.js.map +1 -1
  70. package/dist/lexicons/com/atproto/sync/getBlob.d.ts +1 -1
  71. package/dist/lexicons/com/atproto/sync/getBlob.d.ts.map +1 -1
  72. package/dist/lexicons/com/atproto/sync/getBlob.defs.d.ts +11 -9
  73. package/dist/lexicons/com/atproto/sync/getBlob.defs.d.ts.map +1 -1
  74. package/dist/lexicons/com/atproto/sync/getBlob.defs.js +6 -8
  75. package/dist/lexicons/com/atproto/sync/getBlob.defs.js.map +1 -1
  76. package/dist/lexicons/com/atproto/sync/getBlob.js +1 -1
  77. package/dist/lexicons/com/atproto/sync/getBlob.js.map +1 -1
  78. package/dist/types.d.ts +2 -6
  79. package/dist/types.d.ts.map +1 -1
  80. package/dist/types.js.map +1 -1
  81. package/dist/util.d.ts +9 -0
  82. package/dist/util.d.ts.map +1 -1
  83. package/dist/util.js +23 -0
  84. package/dist/util.js.map +1 -1
  85. package/dist/write-operation-builder.d.ts +19 -0
  86. package/dist/write-operation-builder.d.ts.map +1 -0
  87. package/dist/write-operation-builder.js +35 -0
  88. package/dist/write-operation-builder.js.map +1 -0
  89. package/dist/xrpc.d.ts.map +1 -1
  90. package/dist/xrpc.js +5 -2
  91. package/dist/xrpc.js.map +1 -1
  92. package/package.json +4 -4
  93. package/src/client.ts +122 -82
  94. package/src/lexicons/com/atproto/repo/applyWrites.defs.ts +201 -0
  95. package/src/lexicons/com/atproto/repo/applyWrites.ts +6 -0
  96. package/src/lexicons/com/atproto/repo/createRecord.defs.ts +43 -46
  97. package/src/lexicons/com/atproto/repo/createRecord.ts +1 -1
  98. package/src/lexicons/com/atproto/repo/defs.ts +0 -1
  99. package/src/lexicons/com/atproto/repo/deleteRecord.defs.ts +37 -40
  100. package/src/lexicons/com/atproto/repo/deleteRecord.ts +1 -1
  101. package/src/lexicons/com/atproto/repo/getRecord.defs.ts +23 -26
  102. package/src/lexicons/com/atproto/repo/getRecord.ts +1 -1
  103. package/src/lexicons/com/atproto/repo/listRecords.defs.ts +30 -32
  104. package/src/lexicons/com/atproto/repo/listRecords.ts +1 -1
  105. package/src/lexicons/com/atproto/repo/putRecord.defs.ts +44 -47
  106. package/src/lexicons/com/atproto/repo/putRecord.ts +1 -1
  107. package/src/lexicons/com/atproto/repo/uploadBlob.defs.ts +21 -23
  108. package/src/lexicons/com/atproto/repo/uploadBlob.ts +1 -1
  109. package/src/lexicons/com/atproto/repo.ts +2 -1
  110. package/src/lexicons/com/atproto/sync/getBlob.defs.ts +23 -26
  111. package/src/lexicons/com/atproto/sync/getBlob.ts +1 -1
  112. package/src/types.ts +6 -10
  113. package/src/util.ts +48 -1
  114. package/src/write-operation-builder.ts +110 -0
  115. package/src/xrpc.ts +5 -5
package/CHANGELOG.md CHANGED
@@ -1,5 +1,24 @@
1
1
  # @atproto/lex-client
2
2
 
3
+ ## 0.1.2
4
+
5
+ ### Patch Changes
6
+
7
+ - [#4980](https://github.com/bluesky-social/atproto/pull/4980) [`482767c`](https://github.com/bluesky-social/atproto/commit/482767c4bcce95aa390b2992b028fd8e27d162b2) Thanks [@matthieusieben](https://github.com/matthieusieben)! - Improve bundling size of lex-client
8
+
9
+ ## 0.1.1
10
+
11
+ ### Patch Changes
12
+
13
+ - [#4954](https://github.com/bluesky-social/atproto/pull/4954) [`e6c6343`](https://github.com/bluesky-social/atproto/commit/e6c6343bd3727455bd0da12300bb4929a944e4f1) Thanks [@matthieusieben](https://github.com/matthieusieben)! - Allow `SharedArrayBuffer`-backed `Uint8Array` to be used as `BinaryBodyInit` (used for binary request bodies and unknown response payloads)
14
+
15
+ - [#4895](https://github.com/bluesky-social/atproto/pull/4895) [`25e0233`](https://github.com/bluesky-social/atproto/commit/25e02339a383740e762c9a9633a701d2fb0cab86) Thanks [@matthieusieben](https://github.com/matthieusieben)! - Add `applyWrites()` method to Lex SDK client class
16
+
17
+ Thank you [@TrySound](https://github.com/TrySound) for the suggestion
18
+
19
+ - Updated dependencies [[`e6c6343`](https://github.com/bluesky-social/atproto/commit/e6c6343bd3727455bd0da12300bb4929a944e4f1)]:
20
+ - @atproto/lex-data@0.1.1
21
+
3
22
  ## 0.1.0
4
23
 
5
24
  ### Minor Changes
package/dist/client.d.ts CHANGED
@@ -1,13 +1,21 @@
1
1
  import { LexMap, LexValue, TypedLexMap } from '@atproto/lex-data';
2
- import { AtIdentifierString, CidString, DidString, Infer, InferMethodInputBody, InferMethodOutputBody, InferRecordKey, LexiconRecordKey, Main, NsidString, Params, Procedure, Query, RecordSchema, Restricted } from '@atproto/lex-schema';
2
+ import { AtIdentifierString, AtUriString, CidString, DidString, Infer, InferMethodInputBody, InferMethodOutputBody, InferRecordKey, LexiconRecordKey, Main, NsidString, Params, Procedure, Query, RecordSchema, Restricted } from '@atproto/lex-schema';
3
3
  import { Agent, AgentOptions } from './agent.js';
4
4
  import { XrpcFailure } from './errors.js';
5
- import { com } from './lexicons/index.js';
5
+ import applyWrites from './lexicons/com/atproto/repo/applyWrites.js';
6
+ import createRecord from './lexicons/com/atproto/repo/createRecord.js';
7
+ import deleteRecord from './lexicons/com/atproto/repo/deleteRecord.js';
8
+ import getRecord from './lexicons/com/atproto/repo/getRecord.js';
9
+ import listRecords from './lexicons/com/atproto/repo/listRecords.js';
10
+ import putRecord from './lexicons/com/atproto/repo/putRecord.js';
11
+ import uploadBlob from './lexicons/com/atproto/repo/uploadBlob.js';
12
+ import getBlob from './lexicons/com/atproto/sync/getBlob.js';
6
13
  import { XrpcResponse, XrpcResponseBody, XrpcResponseOptions } from './response.js';
7
14
  import { BinaryBodyInit, Service } from './types.js';
8
- import { XrpcRequestHeadersOptions } from './util.js';
15
+ import { RecordKeyOptions, XrpcRequestHeadersOptions } from './util.js';
16
+ import { WriteOperation, WriteOperationCreateOptions, WriteOperationDeleteOptions, WriteOperationHelper, WriteOperationUpdateOptions, WriteOperationsFactory } from './write-operation-builder.js';
9
17
  import { XrpcOptions, XrpcRequestParams, XrpcRequestProcessingOptions } from './xrpc.js';
10
- export type { AtIdentifierString, CidString, DidString, Infer, InferMethodInputBody, InferMethodOutputBody, InferRecordKey, LexMap, LexValue, LexiconRecordKey, Main, NsidString, Params, Procedure, Query, RecordSchema, Restricted, TypedLexMap, };
18
+ export { type AtIdentifierString, type CidString, type DidString, type Infer, type InferMethodInputBody, type InferMethodOutputBody, type InferRecordKey, type LexMap, type LexValue, type LexiconRecordKey, type Main, type NsidString, type Params, Procedure, Query, RecordSchema, type Restricted, type TypedLexMap, type WriteOperation, type WriteOperationCreateOptions, type WriteOperationDeleteOptions, WriteOperationHelper, type WriteOperationUpdateOptions, type WriteOperationsFactory, };
11
19
  /**
12
20
  * Configuration options for creating a {@link Client}.
13
21
  *
@@ -72,7 +80,7 @@ export type InferActionOutput<A extends Action> = A extends Action<any, infer O>
72
80
  *
73
81
  * @see {@link Client.createRecord}
74
82
  */
75
- export type CreateRecordOptions = Omit<XrpcOptions<typeof com.atproto.repo.createRecord.main>, 'body'> & {
83
+ export type CreateRecordOptions = Omit<XrpcOptions<typeof createRecord>, 'body'> & {
76
84
  /** Repository identifier (DID or handle). Defaults to authenticated user's DID. */
77
85
  repo?: AtIdentifierString;
78
86
  /** Compare-and-swap on the repo commit. If specified, must match current commit. */
@@ -85,7 +93,7 @@ export type CreateRecordOptions = Omit<XrpcOptions<typeof com.atproto.repo.creat
85
93
  *
86
94
  * @see {@link Client.deleteRecord}
87
95
  */
88
- export type DeleteRecordOptions = Omit<XrpcOptions<typeof com.atproto.repo.deleteRecord.main>, 'body'> & {
96
+ export type DeleteRecordOptions = Omit<XrpcOptions<typeof deleteRecord>, 'body'> & {
89
97
  /** Repository identifier (DID or handle). Defaults to authenticated user's DID. */
90
98
  repo?: AtIdentifierString;
91
99
  /** Compare-and-swap on the repo commit. If specified, must match current commit. */
@@ -98,7 +106,7 @@ export type DeleteRecordOptions = Omit<XrpcOptions<typeof com.atproto.repo.delet
98
106
  *
99
107
  * @see {@link Client.getRecord}
100
108
  */
101
- export type GetRecordOptions = Omit<XrpcOptions<typeof com.atproto.repo.getRecord.main>, 'params'> & {
109
+ export type GetRecordOptions = Omit<XrpcOptions<typeof getRecord>, 'params'> & {
102
110
  /** Repository identifier (DID or handle). Defaults to authenticated user's DID. */
103
111
  repo?: AtIdentifierString;
104
112
  };
@@ -107,7 +115,7 @@ export type GetRecordOptions = Omit<XrpcOptions<typeof com.atproto.repo.getRecor
107
115
  *
108
116
  * @see {@link Client.putRecord}
109
117
  */
110
- export type PutRecordOptions = Omit<XrpcOptions<typeof com.atproto.repo.putRecord.main>, 'body'> & {
118
+ export type PutRecordOptions = Omit<XrpcOptions<typeof putRecord>, 'body'> & {
111
119
  /** Repository identifier (DID or handle). Defaults to authenticated user's DID. */
112
120
  repo?: AtIdentifierString;
113
121
  /** Compare-and-swap on the repo commit. If specified, must match current commit. */
@@ -122,7 +130,7 @@ export type PutRecordOptions = Omit<XrpcOptions<typeof com.atproto.repo.putRecor
122
130
  *
123
131
  * @see {@link Client.listRecords}
124
132
  */
125
- export type ListRecordsOptions = Omit<XrpcOptions<typeof com.atproto.repo.listRecords.main>, 'params'> & {
133
+ export type ListRecordsOptions = Omit<XrpcOptions<typeof listRecords>, 'params'> & {
126
134
  /** Repository identifier (DID or handle). Defaults to authenticated user's DID. */
127
135
  repo?: AtIdentifierString;
128
136
  /** Maximum number of records to return. */
@@ -132,13 +140,21 @@ export type ListRecordsOptions = Omit<XrpcOptions<typeof com.atproto.repo.listRe
132
140
  /** If true, returns records in reverse chronological order. */
133
141
  reverse?: boolean;
134
142
  };
135
- export type UploadBlobOptions = Omit<XrpcOptions<typeof com.atproto.repo.uploadBlob.main>, 'body'>;
136
- export type GetBlobOptions = Omit<XrpcOptions<typeof com.atproto.sync.getBlob.main>, 'params'>;
137
- export type RecordKeyOptions<T extends RecordSchema, AlsoOptionalWhenRecordKeyIs extends LexiconRecordKey = never> = T['key'] extends `literal:${string}` | AlsoOptionalWhenRecordKeyIs ? {
138
- rkey?: InferRecordKey<T>;
139
- } : {
140
- rkey: InferRecordKey<T>;
143
+ /**
144
+ * Options for applying a batch of writes (create/update/delete) to an AT Protocol repository.
145
+ *
146
+ * @see {@link Client.applyWrites}
147
+ */
148
+ export type ApplyWritesOptions = Omit<XrpcOptions<typeof applyWrites>, 'body'> & {
149
+ /** Repository identifier (DID or handle). Defaults to authenticated user's DID. */
150
+ repo?: AtIdentifierString;
151
+ /** Whether the PDS should validate the records against their lexicon schemas. */
152
+ validate?: boolean;
153
+ /** Compare-and-swap on the repo commit. If specified, must match current commit. */
154
+ swapCommit?: CidString;
141
155
  };
156
+ export type UploadBlobOptions = Omit<XrpcOptions<typeof uploadBlob>, 'body'>;
157
+ export type GetBlobOptions = Omit<XrpcOptions<typeof getBlob>, 'params'>;
142
158
  /**
143
159
  * Type-safe options for {@link Client.create}, combining record options with key requirements.
144
160
  * @typeParam T - The record schema type
@@ -149,7 +165,7 @@ export type CreateOptions<T extends RecordSchema> = CreateRecordOptions & Record
149
165
  * Output type for record creation operations.
150
166
  * Contains the URI and CID of the newly created record.
151
167
  */
152
- export type CreateOutput = InferMethodOutputBody<typeof com.atproto.repo.createRecord.main, Uint8Array>;
168
+ export type CreateOutput = InferMethodOutputBody<typeof createRecord, Uint8Array>;
153
169
  /**
154
170
  * Type-safe options for {@link Client.delete}, combining delete options with key requirements.
155
171
  * @typeParam T - The record schema type
@@ -158,7 +174,7 @@ export type DeleteOptions<T extends RecordSchema> = DeleteRecordOptions & Record
158
174
  /**
159
175
  * Output type for record deletion operations.
160
176
  */
161
- export type DeleteOutput = InferMethodOutputBody<typeof com.atproto.repo.deleteRecord.main, Uint8Array>;
177
+ export type DeleteOutput = InferMethodOutputBody<typeof deleteRecord, Uint8Array>;
162
178
  /**
163
179
  * Type-safe options for {@link Client.get}, combining get options with key requirements.
164
180
  * @typeParam T - The record schema type
@@ -169,7 +185,7 @@ export type GetOptions<T extends RecordSchema> = GetRecordOptions & RecordKeyOpt
169
185
  * Contains the record value validated against the schema type.
170
186
  * @typeParam T - The record schema type
171
187
  */
172
- export type GetOutput<T extends RecordSchema> = Omit<InferMethodOutputBody<typeof com.atproto.repo.getRecord.main, Uint8Array>, 'value'> & {
188
+ export type GetOutput<T extends RecordSchema> = Omit<InferMethodOutputBody<typeof getRecord, Uint8Array>, 'value'> & {
173
189
  value: Infer<T>;
174
190
  };
175
191
  /**
@@ -181,7 +197,7 @@ export type PutOptions<T extends RecordSchema> = PutRecordOptions & RecordKeyOpt
181
197
  * Output type for record put (create/update) operations.
182
198
  * Contains the URI and CID of the record.
183
199
  */
184
- export type PutOutput = InferMethodOutputBody<typeof com.atproto.repo.putRecord.main, Uint8Array>;
200
+ export type PutOutput = InferMethodOutputBody<typeof putRecord, Uint8Array>;
185
201
  /**
186
202
  * Options for {@link Client.list} operations.
187
203
  */
@@ -191,7 +207,7 @@ export type ListOptions = ListRecordsOptions;
191
207
  * Contains validated records and any invalid records that failed schema validation.
192
208
  * @typeParam T - The record schema type
193
209
  */
194
- export type ListOutput<T extends RecordSchema> = InferMethodOutputBody<typeof com.atproto.repo.listRecords.main, Uint8Array> & {
210
+ export type ListOutput<T extends RecordSchema> = InferMethodOutputBody<typeof listRecords, Uint8Array> & {
195
211
  /** Records that successfully validated against the schema. */
196
212
  records: ListRecord<Infer<T>>[];
197
213
  /** Records that failed schema validation. */
@@ -201,7 +217,9 @@ export type ListOutput<T extends RecordSchema> = InferMethodOutputBody<typeof co
201
217
  * A record from a list operation with its value typed to the schema.
202
218
  * @typeParam Value - The validated record value type
203
219
  */
204
- export type ListRecord<Value extends LexMap> = com.atproto.repo.listRecords.Record & {
220
+ export type ListRecord<Value extends LexMap> = {
221
+ uri: AtUriString;
222
+ cid: CidString;
205
223
  value: Value;
206
224
  };
207
225
  /**
@@ -391,7 +409,7 @@ export declare class Client implements Agent {
391
409
  cid: import("@atproto/lex-schema").StringSchema<{
392
410
  readonly format: "cid";
393
411
  }>;
394
- commit: import("@atproto/lex-schema").OptionalSchema<import("@atproto/lex-schema").RefSchema<import("@atproto/lex-schema").Validator<com.atproto.repo.defs.$defs.CommitMeta, com.atproto.repo.defs.$defs.CommitMeta>>>;
412
+ commit: import("@atproto/lex-schema").OptionalSchema<import("@atproto/lex-schema").RefSchema<import("@atproto/lex-schema").Validator<import("./lexicons/com/atproto/repo/defs.defs.js").CommitMeta, import("./lexicons/com/atproto/repo/defs.defs.js").CommitMeta>>>;
395
413
  validationStatus: import("@atproto/lex-schema").OptionalSchema<import("@atproto/lex-schema").StringSchema<{
396
414
  knownValues: ["valid", "unknown"];
397
415
  }>>;
@@ -422,7 +440,7 @@ export declare class Client implements Agent {
422
440
  readonly format: "cid";
423
441
  }>>;
424
442
  }>>, import("@atproto/lex-schema").Payload<"application/json", import("@atproto/lex-schema").ObjectSchema<{
425
- commit: import("@atproto/lex-schema").OptionalSchema<import("@atproto/lex-schema").RefSchema<import("@atproto/lex-schema").Validator<com.atproto.repo.defs.$defs.CommitMeta, com.atproto.repo.defs.$defs.CommitMeta>>>;
443
+ commit: import("@atproto/lex-schema").OptionalSchema<import("@atproto/lex-schema").RefSchema<import("@atproto/lex-schema").Validator<import("./lexicons/com/atproto/repo/defs.defs.js").CommitMeta, import("./lexicons/com/atproto/repo/defs.defs.js").CommitMeta>>>;
426
444
  }>>, readonly ["InvalidSwap"]>>>;
427
445
  /**
428
446
  * Retrieves a record from an AT Protocol repository.
@@ -490,7 +508,7 @@ export declare class Client implements Agent {
490
508
  cid: import("@atproto/lex-schema").StringSchema<{
491
509
  readonly format: "cid";
492
510
  }>;
493
- commit: import("@atproto/lex-schema").OptionalSchema<import("@atproto/lex-schema").RefSchema<import("@atproto/lex-schema").Validator<com.atproto.repo.defs.$defs.CommitMeta, com.atproto.repo.defs.$defs.CommitMeta>>>;
511
+ commit: import("@atproto/lex-schema").OptionalSchema<import("@atproto/lex-schema").RefSchema<import("@atproto/lex-schema").Validator<import("./lexicons/com/atproto/repo/defs.defs.js").CommitMeta, import("./lexicons/com/atproto/repo/defs.defs.js").CommitMeta>>>;
494
512
  validationStatus: import("@atproto/lex-schema").OptionalSchema<import("@atproto/lex-schema").StringSchema<{
495
513
  knownValues: ["valid", "unknown"];
496
514
  }>>;
@@ -515,8 +533,44 @@ export declare class Client implements Agent {
515
533
  readonly reverse: import("@atproto/lex-schema").OptionalSchema<import("@atproto/lex-schema").BooleanSchema>;
516
534
  }>, import("@atproto/lex-schema").Payload<"application/json", import("@atproto/lex-schema").ObjectSchema<{
517
535
  cursor: import("@atproto/lex-schema").OptionalSchema<import("@atproto/lex-schema").StringSchema<{}>>;
518
- records: import("@atproto/lex-schema").ArraySchema<import("@atproto/lex-schema").RefSchema<import("@atproto/lex-schema").Validator<com.atproto.repo.listRecords.$defs.Record, com.atproto.repo.listRecords.$defs.Record>>>;
536
+ records: import("@atproto/lex-schema").ArraySchema<import("@atproto/lex-schema").RefSchema<import("@atproto/lex-schema").Validator<import("./lexicons/com/atproto/repo/listRecords.defs.js").Record, import("./lexicons/com/atproto/repo/listRecords.defs.js").Record>>>;
519
537
  }>>, undefined>>>;
538
+ /**
539
+ * Performs an atomic batch of create, update, and delete operations on records in a repository.
540
+ *
541
+ * @param builder - A function that receives an {@link ApplyWritesOperations} instance to build the operations
542
+ * @param options - ApplyWrites options including repo, validate, swapCommit
543
+ * @returns The XRPC response from the applyWrites call
544
+ *
545
+ * @example
546
+ * ```typescript
547
+ * const response = await client.applyWrites((op) => [
548
+ * op.create(app.bsky.feed.post, { text: 'Hello!' }),
549
+ * op.update(app.bsky.feed.post, { text: 'Updated text' }, { rkey: 'post123' }),
550
+ * op.delete(app.bsky.feed.post, 'post456'),
551
+ * op.update(app.bsky.actor.profile, { displayName: 'Alice' }),
552
+ * ], {
553
+ * validate: true,
554
+ * })
555
+ *
556
+ * for (const result of response.body.results) {
557
+ * console.log(result.uri)
558
+ * }
559
+ * ```
560
+ */
561
+ applyWrites(factory: WriteOperationsFactory, options?: ApplyWritesOptions): Promise<XrpcResponse<Procedure<"com.atproto.repo.applyWrites", import("@atproto/lex-schema").ParamsSchema<{}>, import("@atproto/lex-schema").Payload<"application/json", import("@atproto/lex-schema").ObjectSchema<{
562
+ repo: import("@atproto/lex-schema").StringSchema<{
563
+ readonly format: "at-identifier";
564
+ }>;
565
+ validate: import("@atproto/lex-schema").OptionalSchema<import("@atproto/lex-schema").BooleanSchema>;
566
+ writes: import("@atproto/lex-schema").ArraySchema<import("@atproto/lex-schema").TypedUnionSchema<readonly [import("@atproto/lex-schema").TypedRefSchema<import("@atproto/lex-schema").TypedObjectValidator<import("./lexicons/com/atproto/repo/applyWrites.defs.js").Create, import("./lexicons/com/atproto/repo/applyWrites.defs.js").Create>>, import("@atproto/lex-schema").TypedRefSchema<import("@atproto/lex-schema").TypedObjectValidator<import("./lexicons/com/atproto/repo/applyWrites.defs.js").Update, import("./lexicons/com/atproto/repo/applyWrites.defs.js").Update>>, import("@atproto/lex-schema").TypedRefSchema<import("@atproto/lex-schema").TypedObjectValidator<import("./lexicons/com/atproto/repo/applyWrites.defs.js").Delete, import("./lexicons/com/atproto/repo/applyWrites.defs.js").Delete>>], true>>;
567
+ swapCommit: import("@atproto/lex-schema").OptionalSchema<import("@atproto/lex-schema").StringSchema<{
568
+ readonly format: "cid";
569
+ }>>;
570
+ }>>, import("@atproto/lex-schema").Payload<"application/json", import("@atproto/lex-schema").ObjectSchema<{
571
+ commit: import("@atproto/lex-schema").OptionalSchema<import("@atproto/lex-schema").RefSchema<import("@atproto/lex-schema").Validator<import("./lexicons/com/atproto/repo/defs.defs.js").CommitMeta, import("./lexicons/com/atproto/repo/defs.defs.js").CommitMeta>>>;
572
+ results: import("@atproto/lex-schema").OptionalSchema<import("@atproto/lex-schema").ArraySchema<import("@atproto/lex-schema").TypedUnionSchema<readonly [import("@atproto/lex-schema").TypedRefSchema<import("@atproto/lex-schema").TypedObjectValidator<import("./lexicons/com/atproto/repo/applyWrites.defs.js").CreateResult, import("./lexicons/com/atproto/repo/applyWrites.defs.js").CreateResult>>, import("@atproto/lex-schema").TypedRefSchema<import("@atproto/lex-schema").TypedObjectValidator<import("./lexicons/com/atproto/repo/applyWrites.defs.js").UpdateResult, import("./lexicons/com/atproto/repo/applyWrites.defs.js").UpdateResult>>, import("@atproto/lex-schema").TypedRefSchema<import("@atproto/lex-schema").TypedObjectValidator<import("./lexicons/com/atproto/repo/applyWrites.defs.js").DeleteResult, import("./lexicons/com/atproto/repo/applyWrites.defs.js").DeleteResult>>], true>>>;
573
+ }>>, readonly ["InvalidSwap"]>>>;
520
574
  /**
521
575
  * Uploads a blob to an AT Protocol repository.
522
576
  *
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/client.js CHANGED
@@ -1,8 +1,20 @@
1
- import { Procedure, Query, getMain, } from '@atproto/lex-schema';
1
+ import { Procedure, Query, RecordSchema, getMain, } from '@atproto/lex-schema';
2
2
  import { buildAgent } from './agent.js';
3
- import { com } from './lexicons/index.js';
4
- import { applyDefaults, buildXrpcRequestHeaders, } from './util.js';
3
+ // @NOTE We could use import { com } from "./lexicons/index.js" here, but some
4
+ // consumers might not know how to properly tree-shake that, so we import only
5
+ // the needed lexicon schemas directly.
6
+ import applyWrites from './lexicons/com/atproto/repo/applyWrites.js';
7
+ import createRecord from './lexicons/com/atproto/repo/createRecord.js';
8
+ import deleteRecord from './lexicons/com/atproto/repo/deleteRecord.js';
9
+ import getRecord from './lexicons/com/atproto/repo/getRecord.js';
10
+ import listRecords from './lexicons/com/atproto/repo/listRecords.js';
11
+ import putRecord from './lexicons/com/atproto/repo/putRecord.js';
12
+ import uploadBlob from './lexicons/com/atproto/repo/uploadBlob.js';
13
+ import getBlob from './lexicons/com/atproto/sync/getBlob.js';
14
+ import { applyDefaults, buildXrpcRequestHeaders, getDefaultRecordKey, getLiteralRecordKey, } from './util.js';
15
+ import { WriteOperationHelper, } from './write-operation-builder.js';
5
16
  import { xrpc, xrpcSafe, } from './xrpc.js';
17
+ export { Procedure, Query, RecordSchema, WriteOperationHelper, };
6
18
  /**
7
19
  * The Client class is the primary interface for interacting with AT Protocol
8
20
  * services. It provides type-safe methods for XRPC calls, record operations,
@@ -146,7 +158,7 @@ export class Client {
146
158
  * @see {@link create} for a higher-level typed alternative
147
159
  */
148
160
  async createRecord(record, rkey, options) {
149
- return this.xrpc(com.atproto.repo.createRecord.main, {
161
+ return this.xrpc(createRecord, {
150
162
  ...options,
151
163
  body: {
152
164
  repo: options?.repo ?? this.assertDid,
@@ -168,7 +180,7 @@ export class Client {
168
180
  * @see {@link delete} for a higher-level typed alternative
169
181
  */
170
182
  async deleteRecord(collection, rkey, options) {
171
- return this.xrpc(com.atproto.repo.deleteRecord.main, {
183
+ return this.xrpc(deleteRecord, {
172
184
  ...options,
173
185
  body: {
174
186
  repo: options?.repo ?? this.assertDid,
@@ -189,7 +201,7 @@ export class Client {
189
201
  * @see {@link get} for a higher-level typed alternative
190
202
  */
191
203
  async getRecord(collection, rkey, options) {
192
- return this.xrpc(com.atproto.repo.getRecord.main, {
204
+ return this.xrpc(getRecord, {
193
205
  ...options,
194
206
  params: {
195
207
  repo: options?.repo ?? this.assertDid,
@@ -208,7 +220,7 @@ export class Client {
208
220
  * @see {@link put} for a higher-level typed alternative
209
221
  */
210
222
  async putRecord(record, rkey, options) {
211
- return this.xrpc(com.atproto.repo.putRecord.main, {
223
+ return this.xrpc(putRecord, {
212
224
  ...options,
213
225
  body: {
214
226
  repo: options?.repo ?? this.assertDid,
@@ -230,7 +242,7 @@ export class Client {
230
242
  * @see {@link list} for a higher-level typed alternative
231
243
  */
232
244
  async listRecords(nsid, options) {
233
- return this.xrpc(com.atproto.repo.listRecords.main, {
245
+ return this.xrpc(listRecords, {
234
246
  ...options,
235
247
  params: {
236
248
  repo: options?.repo ?? this.assertDid,
@@ -241,6 +253,40 @@ export class Client {
241
253
  },
242
254
  });
243
255
  }
256
+ /**
257
+ * Performs an atomic batch of create, update, and delete operations on records in a repository.
258
+ *
259
+ * @param builder - A function that receives an {@link ApplyWritesOperations} instance to build the operations
260
+ * @param options - ApplyWrites options including repo, validate, swapCommit
261
+ * @returns The XRPC response from the applyWrites call
262
+ *
263
+ * @example
264
+ * ```typescript
265
+ * const response = await client.applyWrites((op) => [
266
+ * op.create(app.bsky.feed.post, { text: 'Hello!' }),
267
+ * op.update(app.bsky.feed.post, { text: 'Updated text' }, { rkey: 'post123' }),
268
+ * op.delete(app.bsky.feed.post, 'post456'),
269
+ * op.update(app.bsky.actor.profile, { displayName: 'Alice' }),
270
+ * ], {
271
+ * validate: true,
272
+ * })
273
+ *
274
+ * for (const result of response.body.results) {
275
+ * console.log(result.uri)
276
+ * }
277
+ * ```
278
+ */
279
+ async applyWrites(factory, options) {
280
+ return this.xrpc(applyWrites, {
281
+ ...options,
282
+ body: {
283
+ repo: options?.repo ?? this.assertDid,
284
+ writes: WriteOperationHelper.build(factory),
285
+ validate: options?.validate,
286
+ swapCommit: options?.swapCommit,
287
+ },
288
+ });
289
+ }
244
290
  /**
245
291
  * Uploads a blob to an AT Protocol repository.
246
292
  *
@@ -258,7 +304,7 @@ export class Client {
258
304
  * ```
259
305
  */
260
306
  async uploadBlob(body, options) {
261
- return this.xrpc(com.atproto.repo.uploadBlob.main, { ...options, body });
307
+ return this.xrpc(uploadBlob, { ...options, body });
262
308
  }
263
309
  /**
264
310
  * Retrieves a blob by DID and CID.
@@ -268,7 +314,7 @@ export class Client {
268
314
  * @param options - Call options
269
315
  */
270
316
  async getBlob(did, cid, options) {
271
- return this.xrpc(com.atproto.sync.getBlob.main, {
317
+ return this.xrpc(getBlob, {
272
318
  ...options,
273
319
  params: { did, cid },
274
320
  });
@@ -354,18 +400,4 @@ export class Client {
354
400
  return { ...body, records, invalid };
355
401
  }
356
402
  }
357
- function getDefaultRecordKey(schema) {
358
- // Let the server generate the TID
359
- if (schema.key === 'tid')
360
- return undefined;
361
- if (schema.key === 'any')
362
- return undefined;
363
- return getLiteralRecordKey(schema);
364
- }
365
- function getLiteralRecordKey(schema) {
366
- if (schema.key.startsWith('literal:')) {
367
- return schema.key.slice(8);
368
- }
369
- throw new TypeError(`An "rkey" must be provided for record key type "${schema.key}" (${schema.$type})`);
370
- }
371
403
  //# sourceMappingURL=client.js.map