@artu-ai/compliance-sdk 0.5.3 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/dist/resources/addresses.d.ts +24 -1
  2. package/dist/resources/addresses.d.ts.map +1 -1
  3. package/dist/resources/addresses.js +51 -1
  4. package/dist/resources/bank-accounts.d.ts +24 -1
  5. package/dist/resources/bank-accounts.d.ts.map +1 -1
  6. package/dist/resources/bank-accounts.js +51 -1
  7. package/dist/resources/clients.d.ts +52 -1
  8. package/dist/resources/clients.d.ts.map +1 -1
  9. package/dist/resources/clients.js +67 -1
  10. package/dist/resources/contact-methods.d.ts +24 -1
  11. package/dist/resources/contact-methods.d.ts.map +1 -1
  12. package/dist/resources/contact-methods.js +51 -1
  13. package/dist/resources/documents.d.ts +24 -19
  14. package/dist/resources/documents.d.ts.map +1 -1
  15. package/dist/resources/documents.js +51 -1
  16. package/dist/resources/mex/actividad-vulnerable/avi/clients.d.ts +21 -1
  17. package/dist/resources/mex/actividad-vulnerable/avi/clients.d.ts.map +1 -1
  18. package/dist/resources/mex/actividad-vulnerable/avi/clients.js +50 -1
  19. package/dist/resources/mex/actividad-vulnerable/avi/reports.d.ts +21 -1
  20. package/dist/resources/mex/actividad-vulnerable/avi/reports.d.ts.map +1 -1
  21. package/dist/resources/mex/actividad-vulnerable/avi/reports.js +50 -1
  22. package/dist/resources/mex/actividad-vulnerable/avi/transactions.d.ts +21 -1
  23. package/dist/resources/mex/actividad-vulnerable/avi/transactions.d.ts.map +1 -1
  24. package/dist/resources/mex/actividad-vulnerable/avi/transactions.js +50 -1
  25. package/dist/resources/mex/actividad-vulnerable/jys/clients.d.ts +21 -1
  26. package/dist/resources/mex/actividad-vulnerable/jys/clients.d.ts.map +1 -1
  27. package/dist/resources/mex/actividad-vulnerable/jys/clients.js +50 -1
  28. package/dist/resources/mex/actividad-vulnerable/jys/reports.d.ts +21 -1
  29. package/dist/resources/mex/actividad-vulnerable/jys/reports.d.ts.map +1 -1
  30. package/dist/resources/mex/actividad-vulnerable/jys/reports.js +50 -1
  31. package/dist/resources/mex/actividad-vulnerable/jys/transactions.d.ts +21 -1
  32. package/dist/resources/mex/actividad-vulnerable/jys/transactions.d.ts.map +1 -1
  33. package/dist/resources/mex/actividad-vulnerable/jys/transactions.js +50 -1
  34. package/dist/resources/mex/actividad-vulnerable/tsc/clients.d.ts +21 -1
  35. package/dist/resources/mex/actividad-vulnerable/tsc/clients.d.ts.map +1 -1
  36. package/dist/resources/mex/actividad-vulnerable/tsc/clients.js +50 -1
  37. package/dist/resources/mex/actividad-vulnerable/tsc/reports.d.ts +21 -1
  38. package/dist/resources/mex/actividad-vulnerable/tsc/reports.d.ts.map +1 -1
  39. package/dist/resources/mex/actividad-vulnerable/tsc/reports.js +50 -1
  40. package/dist/resources/mex/actividad-vulnerable/tsc/transactions.d.ts +21 -1
  41. package/dist/resources/mex/actividad-vulnerable/tsc/transactions.d.ts.map +1 -1
  42. package/dist/resources/mex/actividad-vulnerable/tsc/transactions.js +50 -1
  43. package/dist/resources/mex/addresses.d.ts +21 -1
  44. package/dist/resources/mex/addresses.d.ts.map +1 -1
  45. package/dist/resources/mex/addresses.js +50 -1
  46. package/dist/resources/mex/bank-accounts.d.ts +8 -1
  47. package/dist/resources/mex/bank-accounts.d.ts.map +1 -1
  48. package/dist/resources/mex/bank-accounts.js +9 -0
  49. package/dist/resources/mex/clients.d.ts +21 -1
  50. package/dist/resources/mex/clients.d.ts.map +1 -1
  51. package/dist/resources/mex/clients.js +50 -1
  52. package/dist/resources/mex/reports.d.ts +21 -1
  53. package/dist/resources/mex/reports.d.ts.map +1 -1
  54. package/dist/resources/mex/reports.js +50 -1
  55. package/dist/resources/mex/transactions.d.ts +21 -1
  56. package/dist/resources/mex/transactions.d.ts.map +1 -1
  57. package/dist/resources/mex/transactions.js +50 -1
  58. package/dist/resources/reports.d.ts +24 -1
  59. package/dist/resources/reports.d.ts.map +1 -1
  60. package/dist/resources/reports.js +51 -1
  61. package/dist/resources/transactions.d.ts +24 -1
  62. package/dist/resources/transactions.d.ts.map +1 -1
  63. package/dist/resources/transactions.js +51 -1
  64. package/dist/utils/trpc-client.d.ts +1 -19879
  65. package/dist/utils/trpc-client.d.ts.map +1 -1
  66. package/package.json +2 -2
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * Manages physical and mailing addresses for clients.
5
5
  */
6
- import type { CreateAddressInput, UpdateAddressInput, AddressFilter, AddressSort, AddressType, ListOptions, PaginatedResponse, AtomicBatchResult, PartialBatchResult, SyncItem, SyncResult } from "@artu-ai/shared";
6
+ import type { CreateAddressInput, UpdateAddressInput, UpsertAddressInput, AddressFilter, AddressSort, AddressType, ListOptions, PaginatedResponse, AtomicBatchResult, PartialBatchResult, SyncItem, SyncResult, UpsertResult } from "@artu-ai/shared";
7
7
  import { BaseResource } from "./base";
8
8
  import { Address, type AddressData } from "../models/Address";
9
9
  /**
@@ -158,6 +158,29 @@ export declare class AddressesResource<TSort = AddressSort> extends BaseResource
158
158
  sync(clientId: string, items: SyncItem<UpdateAddressInput>[], options?: {
159
159
  replaceMode?: boolean;
160
160
  }): Promise<SyncResult<Address>>;
161
+ /**
162
+ * Creates or updates an address by externalId.
163
+ *
164
+ * If an address with the given externalId exists, it will be updated.
165
+ * Otherwise, a new address will be created.
166
+ *
167
+ * @param data - Address upsert data (must include externalId and clientId)
168
+ * @returns The created or updated address with action indicator
169
+ */
170
+ upsertByExternalId(data: UpsertAddressInput): Promise<UpsertResult<Address>>;
171
+ /**
172
+ * Creates or updates multiple addresses by externalId in a single request.
173
+ *
174
+ * @param addresses - Array of address upsert data (each must include externalId and clientId)
175
+ * @param options - Batch options (atomic: true by default)
176
+ * @returns Atomic result with data array, or partial result with succeeded/failed
177
+ */
178
+ upsertManyByExternalId(addresses: UpsertAddressInput[], options?: {
179
+ atomic?: true;
180
+ }): Promise<AtomicBatchResult<UpsertResult<Address>>>;
181
+ upsertManyByExternalId(addresses: UpsertAddressInput[], options: {
182
+ atomic: false;
183
+ }): Promise<PartialBatchResult<UpsertResult<Address>>>;
161
184
  /**
162
185
  * Gets the primary address for a client
163
186
  *
@@ -1 +1 @@
1
- {"version":3,"file":"addresses.d.ts","sourceRoot":"","sources":["../../src/resources/addresses.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"addresses.d.ts","sourceRoot":"","sources":["../../src/resources/addresses.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  * Manages physical and mailing addresses for clients.
5
5
  */
6
6
  import { z } from "zod";
7
- import { createAddressInputSchema, updateAddressInputSchema, replaceSyncItemSchema, } from "@artu-ai/shared";
7
+ import { createAddressInputSchema, updateAddressInputSchema, upsertAddressInputSchema, replaceSyncItemSchema, } from "@artu-ai/shared";
8
8
  import { BaseResource } from "./base";
9
9
  import { Address } from "../models/Address";
10
10
  // ===========================
@@ -186,6 +186,56 @@ export class AddressesResource extends BaseResource {
186
186
  };
187
187
  }
188
188
  // ─────────────────────────────────────────────────────────────────
189
+ // Upsert Operations
190
+ // ─────────────────────────────────────────────────────────────────
191
+ /**
192
+ * Creates or updates an address by externalId.
193
+ *
194
+ * If an address with the given externalId exists, it will be updated.
195
+ * Otherwise, a new address will be created.
196
+ *
197
+ * @param data - Address upsert data (must include externalId and clientId)
198
+ * @returns The created or updated address with action indicator
199
+ */
200
+ async upsertByExternalId(data) {
201
+ const validated = this.validate(upsertAddressInputSchema, data);
202
+ const response = await this.execute(() => this.trpc.addresses.upsertByExternalId.mutate(validated));
203
+ return {
204
+ data: this.instantiate(response.data),
205
+ action: response.action,
206
+ };
207
+ }
208
+ async upsertManyByExternalId(addresses, options = {}) {
209
+ const atomic = options.atomic ?? true;
210
+ const validated = this.validate(z.array(upsertAddressInputSchema), addresses);
211
+ const response = await this.execute(() => this.trpc.addresses.upsertManyByExternalId.mutate({
212
+ items: validated,
213
+ atomic,
214
+ }));
215
+ if (response.atomic) {
216
+ return {
217
+ atomic: true,
218
+ data: response.data.map((item) => ({
219
+ data: this.instantiate(item.data),
220
+ action: item.action,
221
+ })),
222
+ };
223
+ }
224
+ else {
225
+ return {
226
+ atomic: false,
227
+ succeeded: response.succeeded.map((item) => ({
228
+ index: item.index,
229
+ data: {
230
+ data: this.instantiate(item.data.data),
231
+ action: item.data.action,
232
+ },
233
+ })),
234
+ failed: response.failed,
235
+ };
236
+ }
237
+ }
238
+ // ─────────────────────────────────────────────────────────────────
189
239
  // Helper Methods
190
240
  // ─────────────────────────────────────────────────────────────────
191
241
  /**
@@ -6,7 +6,7 @@
6
6
  * This is the base (unscoped) resource. For jurisdiction-scoped SDKs, use:
7
7
  * - MexBankAccountsResource - Mexico-scoped with flattened CLABE fields
8
8
  */
9
- import type { CreateBankAccountInput, UpdateBankAccountInput, BankAccountFilter, BankAccountSort, PaginatedResponse, ListOptions, AtomicBatchResult, PartialBatchResult, SyncItem, SyncResult } from "@artu-ai/shared";
9
+ import type { CreateBankAccountInput, UpdateBankAccountInput, UpsertBankAccountInput, BankAccountFilter, BankAccountSort, PaginatedResponse, ListOptions, AtomicBatchResult, PartialBatchResult, SyncItem, SyncResult, UpsertResult } from "@artu-ai/shared";
10
10
  import { BaseResource } from "./base";
11
11
  import { BankAccount, type BankAccountData } from "../models/BankAccount";
12
12
  /**
@@ -125,6 +125,29 @@ export declare class BankAccountsResource<TSort = BankAccountSort> extends BaseR
125
125
  }[], options: {
126
126
  atomic: false;
127
127
  }): Promise<PartialBatchResult<BankAccount>>;
128
+ /**
129
+ * Creates or updates a bank account by externalId.
130
+ *
131
+ * If a bank account with the given externalId exists, it will be updated.
132
+ * Otherwise, a new bank account will be created.
133
+ *
134
+ * @param data - Bank account upsert data (must include externalId and clientId)
135
+ * @returns The created or updated bank account with action indicator
136
+ */
137
+ upsertByExternalId(data: UpsertBankAccountInput): Promise<UpsertResult<BankAccount>>;
138
+ /**
139
+ * Creates or updates multiple bank accounts by externalId in a single request.
140
+ *
141
+ * @param accounts - Array of bank account upsert data (each must include externalId and clientId)
142
+ * @param options - Batch options (atomic: true by default)
143
+ * @returns Atomic result with data array, or partial result with succeeded/failed
144
+ */
145
+ upsertManyByExternalId(accounts: UpsertBankAccountInput[], options?: {
146
+ atomic?: true;
147
+ }): Promise<AtomicBatchResult<UpsertResult<BankAccount>>>;
148
+ upsertManyByExternalId(accounts: UpsertBankAccountInput[], options: {
149
+ atomic: false;
150
+ }): Promise<PartialBatchResult<UpsertResult<BankAccount>>>;
128
151
  /**
129
152
  * Syncs bank accounts for a client - handles create, update, and delete in bulk.
130
153
  *
@@ -1 +1 @@
1
- {"version":3,"file":"bank-accounts.d.ts","sourceRoot":"","sources":["../../src/resources/bank-accounts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bank-accounts.d.ts","sourceRoot":"","sources":["../../src/resources/bank-accounts.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@
7
7
  * - MexBankAccountsResource - Mexico-scoped with flattened CLABE fields
8
8
  */
9
9
  import { z } from "zod";
10
- import { createBankAccountInputSchema, updateBankAccountInputSchema, replaceSyncItemSchema, } from "@artu-ai/shared";
10
+ import { createBankAccountInputSchema, updateBankAccountInputSchema, upsertBankAccountInputSchema, replaceSyncItemSchema, } from "@artu-ai/shared";
11
11
  import { BaseResource } from "./base";
12
12
  import { BankAccount } from "../models/BankAccount";
13
13
  // ===========================
@@ -194,6 +194,56 @@ export class BankAccountsResource extends BaseResource {
194
194
  };
195
195
  }
196
196
  }
197
+ // ─────────────────────────────────────────────────────────────────
198
+ // Upsert Operations
199
+ // ─────────────────────────────────────────────────────────────────
200
+ /**
201
+ * Creates or updates a bank account by externalId.
202
+ *
203
+ * If a bank account with the given externalId exists, it will be updated.
204
+ * Otherwise, a new bank account will be created.
205
+ *
206
+ * @param data - Bank account upsert data (must include externalId and clientId)
207
+ * @returns The created or updated bank account with action indicator
208
+ */
209
+ async upsertByExternalId(data) {
210
+ const validated = this.validate(upsertBankAccountInputSchema, data);
211
+ const response = await this.execute(() => this.trpc.bankAccounts.upsertByExternalId.mutate(validated));
212
+ return {
213
+ data: this.instantiate(response.data),
214
+ action: response.action,
215
+ };
216
+ }
217
+ async upsertManyByExternalId(accounts, options = {}) {
218
+ const atomic = options.atomic ?? true;
219
+ const validated = this.validate(z.array(upsertBankAccountInputSchema), accounts);
220
+ const response = await this.execute(() => this.trpc.bankAccounts.upsertManyByExternalId.mutate({
221
+ items: validated,
222
+ atomic,
223
+ }));
224
+ if (response.atomic) {
225
+ return {
226
+ atomic: true,
227
+ data: response.data.map((item) => ({
228
+ data: this.instantiate(item.data),
229
+ action: item.action,
230
+ })),
231
+ };
232
+ }
233
+ else {
234
+ return {
235
+ atomic: false,
236
+ succeeded: response.succeeded.map((item) => ({
237
+ index: item.index,
238
+ data: {
239
+ data: this.instantiate(item.data.data),
240
+ action: item.data.action,
241
+ },
242
+ })),
243
+ failed: response.failed,
244
+ };
245
+ }
246
+ }
197
247
  async sync(clientId, items, options) {
198
248
  const validated = this.validate(z.array(replaceSyncItemSchema(createBankAccountInputSchema, updateBankAccountInputSchema)), items);
199
249
  const response = await this.execute(() => this.trpc.bankAccounts.sync.mutate({
@@ -9,7 +9,7 @@
9
9
  * - JYSClientsResource - Mexico JYS-scoped with flattened JYS fields
10
10
  * - TSCClientsResource - Mexico TSC-scoped with flattened TSC fields
11
11
  */
12
- import type { CreateClientInput, UpdateClientInput, CreateAddressInput, UpdateAddressInput, CreateContactMethodInput, UpdateContactMethodInput, CreateBankAccountInput, UpdateBankAccountInput, ClientFilter, ClientSort, ListOptions, PaginatedResponse, AtomicBatchResult, PartialBatchResult, ClientRelationshipType, LinkedClient as LinkedClientInput, SyncItem, SyncResult } from "@artu-ai/shared";
12
+ import type { CreateClientInput, UpdateClientInput, UpsertClientInput, CreateAddressInput, UpdateAddressInput, CreateContactMethodInput, UpdateContactMethodInput, CreateBankAccountInput, UpdateBankAccountInput, ClientFilter, ClientSort, ListOptions, PaginatedResponse, AtomicBatchResult, PartialBatchResult, ClientRelationshipType, LinkedClient as LinkedClientInput, SyncItem, SyncResult, UpsertResult } from "@artu-ai/shared";
13
13
  import { BaseResource } from "./base";
14
14
  import { Client, type ClientData, Address, ContactMethod, BankAccount, LinkedClient } from "../models";
15
15
  /**
@@ -236,6 +236,57 @@ export declare class ClientsResource<TSort = ClientSort> extends BaseResource<Cl
236
236
  }[], options: {
237
237
  atomic: false;
238
238
  }): Promise<PartialBatchResult<Client>>;
239
+ /**
240
+ * Creates or updates a client by externalId.
241
+ *
242
+ * If a client with the given externalId exists, it will be updated.
243
+ * Otherwise, a new client will be created.
244
+ *
245
+ * @param data - Client data with required externalId
246
+ * @returns Result containing the client and action taken (created/updated)
247
+ *
248
+ * @example
249
+ * ```typescript
250
+ * const result = await sdk.clients.upsertByExternalId({
251
+ * externalId: "crm-123",
252
+ * type: ClientType.Individual,
253
+ * name: "Juan García",
254
+ * primaryJurisdiction: "MX",
255
+ * });
256
+ *
257
+ * if (result.action === "created") {
258
+ * console.log("New client created:", result.data.id);
259
+ * } else {
260
+ * console.log("Existing client updated:", result.data.id);
261
+ * }
262
+ * ```
263
+ */
264
+ upsertByExternalId(data: UpsertClientInput): Promise<UpsertResult<Client>>;
265
+ /**
266
+ * Creates or updates multiple clients by externalId in a single request.
267
+ *
268
+ * @param clients - Array of client data with required externalId
269
+ * @param options - Batch options (atomic: true by default)
270
+ * @returns Atomic result with data array, or partial result with succeeded/failed
271
+ *
272
+ * @example
273
+ * ```typescript
274
+ * // Atomic mode (default) - all or nothing
275
+ * const result = await sdk.clients.upsertManyByExternalId([
276
+ * { externalId: "crm-1", type: "individual", name: "Client 1", ... },
277
+ * { externalId: "crm-2", type: "company", name: "Client 2", ... },
278
+ * ]);
279
+ *
280
+ * // Non-atomic mode - partial success allowed
281
+ * const result = await sdk.clients.upsertManyByExternalId([...], { atomic: false });
282
+ * ```
283
+ */
284
+ upsertManyByExternalId(clients: UpsertClientInput[], options?: {
285
+ atomic?: true;
286
+ }): Promise<AtomicBatchResult<UpsertResult<Client>>>;
287
+ upsertManyByExternalId(clients: UpsertClientInput[], options: {
288
+ atomic: false;
289
+ }): Promise<PartialBatchResult<UpsertResult<Client>>>;
239
290
  /**
240
291
  * Links a client to another client with a relationship type.
241
292
  *
@@ -1 +1 @@
1
- {"version":3,"file":"clients.d.ts","sourceRoot":"","sources":["../../src/resources/clients.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"clients.d.ts","sourceRoot":"","sources":["../../src/resources/clients.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@
10
10
  * - TSCClientsResource - Mexico TSC-scoped with flattened TSC fields
11
11
  */
12
12
  import { z } from "zod";
13
- import { createClientInputSchema, updateClientInputSchema, createAddressInputSchema, updateAddressInputSchema, createContactMethodInputSchema, updateContactMethodInputSchema, createBankAccountInputSchema, updateBankAccountInputSchema, linkedClientSchema, replaceSyncItemSchema, } from "@artu-ai/shared";
13
+ import { createClientInputSchema, updateClientInputSchema, upsertClientInputSchema, createAddressInputSchema, updateAddressInputSchema, createContactMethodInputSchema, updateContactMethodInputSchema, createBankAccountInputSchema, updateBankAccountInputSchema, linkedClientSchema, replaceSyncItemSchema, } from "@artu-ai/shared";
14
14
  import { BaseResource } from "./base";
15
15
  import { Client, Address, ContactMethod, BankAccount, LinkedClient, } from "../models";
16
16
  // ===========================
@@ -236,6 +236,72 @@ export class ClientsResource extends BaseResource {
236
236
  }
237
237
  }
238
238
  // ─────────────────────────────────────────────────────────────────
239
+ // Upsert Operations
240
+ // ─────────────────────────────────────────────────────────────────
241
+ /**
242
+ * Creates or updates a client by externalId.
243
+ *
244
+ * If a client with the given externalId exists, it will be updated.
245
+ * Otherwise, a new client will be created.
246
+ *
247
+ * @param data - Client data with required externalId
248
+ * @returns Result containing the client and action taken (created/updated)
249
+ *
250
+ * @example
251
+ * ```typescript
252
+ * const result = await sdk.clients.upsertByExternalId({
253
+ * externalId: "crm-123",
254
+ * type: ClientType.Individual,
255
+ * name: "Juan García",
256
+ * primaryJurisdiction: "MX",
257
+ * });
258
+ *
259
+ * if (result.action === "created") {
260
+ * console.log("New client created:", result.data.id);
261
+ * } else {
262
+ * console.log("Existing client updated:", result.data.id);
263
+ * }
264
+ * ```
265
+ */
266
+ async upsertByExternalId(data) {
267
+ const validated = this.validate(upsertClientInputSchema, data);
268
+ const response = await this.execute(() => this.trpc.clients.upsertByExternalId.mutate(validated));
269
+ return {
270
+ data: this.instantiate(response.data),
271
+ action: response.action,
272
+ };
273
+ }
274
+ async upsertManyByExternalId(clients, options = {}) {
275
+ const atomic = options.atomic ?? true;
276
+ const validated = this.validate(z.array(upsertClientInputSchema), clients);
277
+ const response = await this.execute(() => this.trpc.clients.upsertManyByExternalId.mutate({
278
+ items: validated,
279
+ atomic,
280
+ }));
281
+ if (response.atomic) {
282
+ return {
283
+ atomic: true,
284
+ data: response.data.map((item) => ({
285
+ data: this.instantiate(item.data),
286
+ action: item.action,
287
+ })),
288
+ };
289
+ }
290
+ else {
291
+ return {
292
+ atomic: false,
293
+ succeeded: response.succeeded.map((item) => ({
294
+ index: item.index,
295
+ data: {
296
+ data: this.instantiate(item.data.data),
297
+ action: item.data.action,
298
+ },
299
+ })),
300
+ failed: response.failed,
301
+ };
302
+ }
303
+ }
304
+ // ─────────────────────────────────────────────────────────────────
239
305
  // Client-to-Client Relationship Management
240
306
  // ─────────────────────────────────────────────────────────────────
241
307
  /**
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * Manages communication channels (email, phone, etc.) for clients.
5
5
  */
6
- import type { CreateContactMethodInput, UpdateContactMethodInput, ContactMethodType, ContactMethodFilter, ContactMethodSort, ListOptions, PaginatedResponse, AtomicBatchResult, PartialBatchResult, SyncItem, SyncResult } from "@artu-ai/shared";
6
+ import type { CreateContactMethodInput, UpdateContactMethodInput, UpsertContactMethodInput, ContactMethodType, ContactMethodFilter, ContactMethodSort, ListOptions, PaginatedResponse, AtomicBatchResult, PartialBatchResult, SyncItem, SyncResult, UpsertResult } from "@artu-ai/shared";
7
7
  import { BaseResource } from "./base";
8
8
  import { ContactMethod, type ContactMethodData } from "../models/ContactMethod";
9
9
  /**
@@ -115,6 +115,29 @@ export declare class ContactMethodsResource extends BaseResource<ContactMethod,
115
115
  }[], options: {
116
116
  atomic: false;
117
117
  }): Promise<PartialBatchResult<ContactMethod>>;
118
+ /**
119
+ * Creates or updates a contact method by externalId.
120
+ *
121
+ * If a contact method with the given externalId exists, it will be updated.
122
+ * Otherwise, a new contact method will be created.
123
+ *
124
+ * @param data - Contact method upsert data (must include externalId and clientId)
125
+ * @returns The created or updated contact method with action indicator
126
+ */
127
+ upsertByExternalId(data: UpsertContactMethodInput): Promise<UpsertResult<ContactMethod>>;
128
+ /**
129
+ * Creates or updates multiple contact methods by externalId in a single request.
130
+ *
131
+ * @param contacts - Array of contact method upsert data (each must include externalId and clientId)
132
+ * @param options - Batch options (atomic: true by default)
133
+ * @returns Atomic result with data array, or partial result with succeeded/failed
134
+ */
135
+ upsertManyByExternalId(contacts: UpsertContactMethodInput[], options?: {
136
+ atomic?: true;
137
+ }): Promise<AtomicBatchResult<UpsertResult<ContactMethod>>>;
138
+ upsertManyByExternalId(contacts: UpsertContactMethodInput[], options: {
139
+ atomic: false;
140
+ }): Promise<PartialBatchResult<UpsertResult<ContactMethod>>>;
118
141
  /**
119
142
  * Syncs contact methods for a client - handles create, update, and delete in bulk.
120
143
  *
@@ -1 +1 @@
1
- {"version":3,"file":"contact-methods.d.ts","sourceRoot":"","sources":["../../src/resources/contact-methods.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contact-methods.d.ts","sourceRoot":"","sources":["../../src/resources/contact-methods.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  * Manages communication channels (email, phone, etc.) for clients.
5
5
  */
6
6
  import { z } from "zod";
7
- import { createContactMethodInputSchema, updateContactMethodInputSchema, replaceSyncItemSchema, } from "@artu-ai/shared";
7
+ import { createContactMethodInputSchema, updateContactMethodInputSchema, upsertContactMethodInputSchema, replaceSyncItemSchema, } from "@artu-ai/shared";
8
8
  import { BaseResource } from "./base";
9
9
  import { ContactMethod } from "../models/ContactMethod";
10
10
  // ===========================
@@ -169,6 +169,56 @@ export class ContactMethodsResource extends BaseResource {
169
169
  };
170
170
  }
171
171
  }
172
+ // ─────────────────────────────────────────────────────────────────
173
+ // Upsert Operations
174
+ // ─────────────────────────────────────────────────────────────────
175
+ /**
176
+ * Creates or updates a contact method by externalId.
177
+ *
178
+ * If a contact method with the given externalId exists, it will be updated.
179
+ * Otherwise, a new contact method will be created.
180
+ *
181
+ * @param data - Contact method upsert data (must include externalId and clientId)
182
+ * @returns The created or updated contact method with action indicator
183
+ */
184
+ async upsertByExternalId(data) {
185
+ const validated = this.validate(upsertContactMethodInputSchema, data);
186
+ const response = await this.execute(() => this.trpc.contactMethods.upsertByExternalId.mutate(validated));
187
+ return {
188
+ data: this.instantiate(response.data),
189
+ action: response.action,
190
+ };
191
+ }
192
+ async upsertManyByExternalId(contacts, options = {}) {
193
+ const atomic = options.atomic ?? true;
194
+ const validated = this.validate(z.array(upsertContactMethodInputSchema), contacts);
195
+ const response = await this.execute(() => this.trpc.contactMethods.upsertManyByExternalId.mutate({
196
+ items: validated,
197
+ atomic,
198
+ }));
199
+ if (response.atomic) {
200
+ return {
201
+ atomic: true,
202
+ data: response.data.map((item) => ({
203
+ data: this.instantiate(item.data),
204
+ action: item.action,
205
+ })),
206
+ };
207
+ }
208
+ else {
209
+ return {
210
+ atomic: false,
211
+ succeeded: response.succeeded.map((item) => ({
212
+ index: item.index,
213
+ data: {
214
+ data: this.instantiate(item.data.data),
215
+ action: item.data.action,
216
+ },
217
+ })),
218
+ failed: response.failed,
219
+ };
220
+ }
221
+ }
172
222
  async sync(clientId, items, options) {
173
223
  const validated = this.validate(z.array(replaceSyncItemSchema(createContactMethodInputSchema, updateContactMethodInputSchema)), items);
174
224
  const response = await this.execute(() => this.trpc.contactMethods.sync.mutate({
@@ -4,31 +4,13 @@
4
4
  * CRUD operations for documents. File upload/download operations are handled separately.
5
5
  * All documents are created with pending_upload status.
6
6
  */
7
- import type { PaginatedResponse, DocumentFilter, DocumentSort, CreateDocumentInput, UpdateDocumentInput, ListOptions, ConfirmUploadInput, PresignedUploadUrl, PresignedDownloadUrl } from "@artu-ai/shared";
7
+ import type { PaginatedResponse, DocumentFilter, DocumentSort, CreateDocumentInput, UpdateDocumentInput, UpsertDocumentInput, ListOptions, ConfirmUploadInput, PresignedUploadUrl, PresignedDownloadUrl, AtomicBatchResult, PartialBatchResult, UpsertResult } from "@artu-ai/shared";
8
8
  import { Document, type DocumentData } from "../models/Document";
9
9
  import { BaseResource } from "./base";
10
10
  import { type UploadableFile, type ProgressCallback } from "../utils/upload";
11
11
  export interface BatchOptions {
12
12
  atomic?: boolean;
13
13
  }
14
- export interface AtomicBatchResult<T> {
15
- atomic: true;
16
- data: T[];
17
- }
18
- export interface PartialBatchResult<T> {
19
- atomic: false;
20
- succeeded: {
21
- index: number;
22
- data: T;
23
- }[];
24
- failed: {
25
- index: number;
26
- error: {
27
- code: string;
28
- message: string;
29
- };
30
- }[];
31
- }
32
14
  /**
33
15
  * Result of creating a document.
34
16
  *
@@ -316,6 +298,29 @@ export declare class DocumentsResource extends BaseResource<Document, CreateDocu
316
298
  }[], options: {
317
299
  atomic: false;
318
300
  }): Promise<PartialBatchResult<Document>>;
301
+ /**
302
+ * Creates or updates a document by externalId.
303
+ *
304
+ * If a document with the given externalId exists, it will be updated.
305
+ * Otherwise, a new document will be created.
306
+ *
307
+ * @param data - Document upsert data (must include externalId and clientId)
308
+ * @returns The created or updated document with action indicator
309
+ */
310
+ upsertByExternalId(data: UpsertDocumentInput): Promise<UpsertResult<Document>>;
311
+ /**
312
+ * Creates or updates multiple documents by externalId in a single request.
313
+ *
314
+ * @param documents - Array of document upsert data (each must include externalId and clientId)
315
+ * @param options - Batch options (atomic: true by default)
316
+ * @returns Atomic result with data array, or partial result with succeeded/failed
317
+ */
318
+ upsertManyByExternalId(documents: UpsertDocumentInput[], options?: {
319
+ atomic?: true;
320
+ }): Promise<AtomicBatchResult<UpsertResult<Document>>>;
321
+ upsertManyByExternalId(documents: UpsertDocumentInput[], options: {
322
+ atomic: false;
323
+ }): Promise<PartialBatchResult<UpsertResult<Document>>>;
319
324
  /**
320
325
  * Gets document count for a client
321
326
  *
@@ -1 +1 @@
1
- {"version":3,"file":"documents.d.ts","sourceRoot":"","sources":["../../src/resources/documents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"documents.d.ts","sourceRoot":"","sources":["../../src/resources/documents.ts"],"names":[],"mappings":"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"}