@marcoappio/marco-config 4.0.3 → 4.0.5

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.
@@ -1 +1 @@
1
- {"version":3,"file":"appwrite.d.ts","sourceRoot":"","sources":["../../src/appwrite/appwrite.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"appwrite.d.ts","sourceRoot":"","sources":["../../src/appwrite/appwrite.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,17 @@
1
1
  import * as v from 'valibot';
2
2
  import { MESSAGE_RECIPIENT_TYPES } from '../types';
3
- import { appwriteCommands } from './commands';
4
3
  const identifierSchema = v.pipe(v.string(), v.minLength(1), v.maxLength(255));
5
4
  export const appwriteRowIdSchema = v.pipe(v.string(), v.minLength(1), v.maxLength(36), v.regex(/^[a-zA-Z0-9][a-zA-Z0-9._-]*$/));
6
5
  const timestampSchema = v.pipe(v.string(), v.isoTimestamp());
7
6
  const nonNegativeIntegerSchema = v.pipe(v.number(), v.integer(), v.minValue(0));
8
7
  const colourSchema = v.pipe(v.string(), v.maxLength(64));
9
8
  const emailSchema = v.pipe(v.string(), v.email());
9
+ const mailboxSortKeySchema = v.pipe(v.string(), v.minLength(1), v.maxLength(257));
10
10
  const jsonObjectTextSchema = v.pipe(v.string(), v.parseJson(), v.check(value => !Array.isArray(value)), v.looseObject({}));
11
+ const appwriteRelationshipIdSchema = v.union([
12
+ identifierSchema,
13
+ v.pipe(v.object({ $id: identifierSchema }), v.transform(relationship => relationship.$id)),
14
+ ]);
11
15
  const draftAttachmentSchema = v.strictObject({
12
16
  fileId: appwriteRowIdSchema,
13
17
  fileName: v.pipe(v.string(), v.minLength(1), v.maxLength(255)),
@@ -97,12 +101,15 @@ const appwriteIds = {
97
101
  drafts: 'drafts',
98
102
  jobs: 'jobs_v2',
99
103
  labels: 'labels',
104
+ mailboxSyncCandidates: 'mailbox_sync_candidates_v2',
100
105
  mailboxSyncLanes: 'mailbox_sync_lanes',
101
106
  mailboxSyncStates: 'mailbox_sync_states',
107
+ messageLocations: 'message_locations',
102
108
  messages: 'messages',
103
109
  oauthStates: 'oauth_states',
104
110
  pollShardCoordinators: 'poll_shard_coordinators',
105
111
  pollShards: 'poll_shards',
112
+ profileAvatarCleanups: 'profile_avatar_cleanups',
106
113
  profiles: 'profiles',
107
114
  pushNotificationTokens: 'push_notification_tokens',
108
115
  savedViews: 'saved_views',
@@ -124,43 +131,45 @@ const rowSchemas = {
124
131
  accounts: v.strictObject({
125
132
  ...wireMetadata(appwriteIds.tables.accounts),
126
133
  colour: colourSchema,
127
- credential: identifierSchema,
134
+ credential: v.nullable(appwriteRelationshipIdSchema),
128
135
  displayName: v.nullable(identifierSchema),
129
136
  initialSyncCompletedAt: v.nullable(timestampSchema),
130
137
  lastErrorCode: v.nullable(identifierSchema),
131
138
  lastSuccessfulSyncAt: v.nullable(timestampSchema),
132
- mailboxSyncState: identifierSchema,
139
+ mailboxSyncState: v.nullable(appwriteRelationshipIdSchema),
133
140
  mailProcessedCount: nonNegativeIntegerSchema,
134
141
  mailTotalCount: nonNegativeIntegerSchema,
135
- pollShard: v.nullable(identifierSchema),
142
+ pollShardAssignmentId: v.nullable(identifierSchema),
136
143
  pollShardId: v.nullable(identifierSchema),
137
- primaryAlias: v.nullable(identifierSchema),
138
- primaryAliasId: v.nullable(identifierSchema),
144
+ primaryAlias: v.nullable(appwriteRelationshipIdSchema),
139
145
  primaryEmail: emailSchema,
140
- profile: identifierSchema,
146
+ profile: appwriteRelationshipIdSchema,
147
+ profileAssignmentKey: identifierSchema,
141
148
  provider: v.picklist(accountProviders),
142
149
  state: v.picklist(accountStates),
143
- userId: identifierSchema,
144
150
  }),
145
151
  aliases: v.strictObject({
146
152
  ...wireMetadata(appwriteIds.tables.aliases),
147
- accountId: identifierSchema,
153
+ account: appwriteRelationshipIdSchema,
154
+ accountAssignmentKey: identifierSchema,
148
155
  email: emailSchema,
149
156
  isPrimary: v.boolean(),
150
157
  name: v.nullable(identifierSchema),
151
158
  providerId: identifierSchema,
152
159
  signature: v.nullable(v.string()),
153
- userId: identifierSchema,
154
160
  }),
155
161
  commands: v.strictObject({
156
162
  ...wireMetadata(appwriteIds.tables.commands),
163
+ account: v.nullable(appwriteRelationshipIdSchema),
157
164
  accountId: v.nullable(identifierSchema),
158
165
  attempts: nonNegativeIntegerSchema,
159
166
  canonicalRevision: v.nullable(nonNegativeIntegerSchema),
167
+ draftId: v.nullable(identifierSchema),
160
168
  errorCode: v.nullable(identifierSchema),
161
169
  kind: identifierSchema,
162
170
  payload: v.string(),
163
171
  payloadHash: identifierSchema,
172
+ profile: appwriteRelationshipIdSchema,
164
173
  state: v.picklist(commandStates),
165
174
  submittedAt: timestampSchema,
166
175
  userId: identifierSchema,
@@ -171,8 +180,9 @@ const rowSchemas = {
171
180
  lastContactedAt: v.nullable(timestampSchema),
172
181
  messageCount: nonNegativeIntegerSchema,
173
182
  normalisedAddress: emailSchema,
183
+ profile: appwriteRelationshipIdSchema,
184
+ profileAssignmentKey: identifierSchema,
174
185
  searchText: v.string(),
175
- userId: identifierSchema,
176
186
  }),
177
187
  credentials: v.strictObject({
178
188
  ...wireMetadata(appwriteIds.tables.credentials),
@@ -180,24 +190,28 @@ const rowSchemas = {
180
190
  encryptedPayload: v.string(),
181
191
  expiresAt: v.nullable(timestampSchema),
182
192
  provider: v.picklist(accountProviders),
193
+ refreshLeaseExpiresAt: v.nullable(timestampSchema),
194
+ refreshLeaseId: v.nullable(identifierSchema),
183
195
  userId: identifierSchema,
184
196
  }),
185
197
  drafts: v.strictObject({
186
198
  ...wireMetadata(appwriteIds.tables.drafts),
187
- accountId: identifierSchema,
199
+ account: appwriteRelationshipIdSchema,
200
+ accountAssignmentKey: identifierSchema,
188
201
  attachmentMetadata: v.string(),
189
202
  contentHash: identifierSchema,
190
203
  envelope: v.string(),
191
204
  errorCode: v.nullable(identifierSchema),
192
- fromAliasId: v.nullable(identifierSchema),
205
+ executionLeaseExpiresAt: v.nullable(timestampSchema),
206
+ executionLeaseId: v.nullable(identifierSchema),
207
+ fromAlias: v.nullable(appwriteRelationshipIdSchema),
193
208
  html: v.string(),
194
- referencedMessageId: v.nullable(identifierSchema),
209
+ referencedMessage: v.nullable(appwriteRelationshipIdSchema),
195
210
  revision: nonNegativeIntegerSchema,
196
211
  scheduledAt: v.nullable(timestampSchema),
197
212
  sequence: nonNegativeIntegerSchema,
198
213
  status: v.picklist(draftStates),
199
214
  type: v.picklist(draftTypes),
200
- userId: identifierSchema,
201
215
  }),
202
216
  jobs: v.strictObject({
203
217
  ...wireMetadata(appwriteIds.tables.jobs),
@@ -217,20 +231,39 @@ const rowSchemas = {
217
231
  }),
218
232
  labels: v.strictObject({
219
233
  ...wireMetadata(appwriteIds.tables.labels),
220
- accountId: identifierSchema,
234
+ account: appwriteRelationshipIdSchema,
235
+ accountAssignmentKey: identifierSchema,
221
236
  name: v.nullable(identifierSchema),
222
237
  path: identifierSchema,
223
238
  providerId: identifierSchema,
224
239
  specialUse: v.nullable(v.picklist(labelSpecialUses)),
225
240
  totalCount: nonNegativeIntegerSchema,
226
241
  unreadCount: nonNegativeIntegerSchema,
242
+ }),
243
+ mailboxSyncCandidates: v.strictObject({
244
+ ...wireMetadata(appwriteIds.tables.mailboxSyncCandidates),
245
+ account: appwriteRelationshipIdSchema,
246
+ accountId: identifierSchema,
247
+ generation: nonNegativeIntegerSchema,
248
+ label: appwriteRelationshipIdSchema,
249
+ labelId: identifierSchema,
250
+ lane: v.picklist(mailboxSyncLanes),
251
+ mailboxPath: identifierSchema,
252
+ mailboxPriority: nonNegativeIntegerSchema,
253
+ mailboxSortKey: mailboxSortKeySchema,
254
+ providerId: identifierSchema,
255
+ receivedAt: timestampSchema,
256
+ specialUse: v.nullable(v.picklist(labelSpecialUses)),
257
+ uid: nonNegativeIntegerSchema,
258
+ uidValidity: nonNegativeIntegerSchema,
227
259
  userId: identifierSchema,
228
260
  }),
229
261
  mailboxSyncLanes: v.strictObject({
230
262
  ...wireMetadata(appwriteIds.tables.mailboxSyncLanes),
231
263
  $permissions: v.pipe(v.array(v.string()), v.length(0)),
264
+ account: appwriteRelationshipIdSchema,
232
265
  accountId: identifierSchema,
233
- commandId: appwriteCommands.idSchema,
266
+ commandId: identifierSchema,
234
267
  cursor: v.nullable(v.string()),
235
268
  errorCode: v.nullable(identifierSchema),
236
269
  generation: nonNegativeIntegerSchema,
@@ -240,9 +273,12 @@ const rowSchemas = {
240
273
  }),
241
274
  mailboxSyncStates: v.strictObject({
242
275
  ...wireMetadata(appwriteIds.tables.mailboxSyncStates),
276
+ accountId: identifierSchema,
243
277
  errorCode: v.nullable(identifierSchema),
244
278
  lastEventAt: v.nullable(timestampSchema),
245
279
  lastSyncAt: v.nullable(timestampSchema),
280
+ materialisationLeaseExpiresAt: v.nullable(timestampSchema),
281
+ materialisationLeaseId: v.nullable(identifierSchema),
246
282
  nextPollAt: v.nullable(timestampSchema),
247
283
  provider: v.picklist(accountProviders),
248
284
  providerCursor: v.nullable(v.string()),
@@ -250,9 +286,25 @@ const rowSchemas = {
250
286
  uidValidity: v.nullable(v.string()),
251
287
  userId: identifierSchema,
252
288
  }),
289
+ messageLocations: v.strictObject({
290
+ ...wireMetadata(appwriteIds.tables.messageLocations),
291
+ account: appwriteRelationshipIdSchema,
292
+ accountAssignmentKey: identifierSchema,
293
+ flagged: v.boolean(),
294
+ label: appwriteRelationshipIdSchema,
295
+ labelAssignmentKey: identifierSchema,
296
+ message: appwriteRelationshipIdSchema,
297
+ messageAt: timestampSchema,
298
+ seen: v.boolean(),
299
+ thread: appwriteRelationshipIdSchema,
300
+ threadAssignmentKey: identifierSchema,
301
+ uid: nonNegativeIntegerSchema,
302
+ uidValidity: nonNegativeIntegerSchema,
303
+ }),
253
304
  messages: v.strictObject({
254
305
  ...wireMetadata(appwriteIds.tables.messages),
255
- accountId: identifierSchema,
306
+ account: appwriteRelationshipIdSchema,
307
+ accountAssignmentKey: identifierSchema,
256
308
  attachmentMetadata: v.string(),
257
309
  htmlFileId: v.nullable(identifierSchema),
258
310
  preview: v.nullable(v.string()),
@@ -262,13 +314,13 @@ const rowSchemas = {
262
314
  recipients: v.nullable(v.string()),
263
315
  revision: nonNegativeIntegerSchema,
264
316
  rfcMessageId: v.nullable(identifierSchema),
265
- sender: v.nullable(emailSchema),
266
- senderName: v.nullable(identifierSchema),
317
+ sender: v.nullable(v.string()),
318
+ senderName: v.nullable(v.string()),
267
319
  sentAt: timestampSchema,
268
320
  size: nonNegativeIntegerSchema,
269
321
  subject: v.nullable(v.string()),
270
- threadId: identifierSchema,
271
- userId: identifierSchema,
322
+ thread: appwriteRelationshipIdSchema,
323
+ threadAssignmentKey: identifierSchema,
272
324
  }),
273
325
  oauthStates: v.strictObject({
274
326
  ...wireMetadata(appwriteIds.tables.oauthStates),
@@ -277,7 +329,7 @@ const rowSchemas = {
277
329
  expiresAt: timestampSchema,
278
330
  nonceHash: identifierSchema,
279
331
  operation: v.picklist(oauthOperations),
280
- profile: identifierSchema,
332
+ profile: appwriteRelationshipIdSchema,
281
333
  provider: v.picklist(oauthProviders),
282
334
  returnUri: oauthReturnUriSchema,
283
335
  userId: identifierSchema,
@@ -301,6 +353,14 @@ const rowSchemas = {
301
353
  scheduledExecutionId: v.nullable(identifierSchema),
302
354
  state: v.picklist(pollShardStates),
303
355
  }),
356
+ profileAvatarCleanups: v.strictObject({
357
+ ...wireMetadata(appwriteIds.tables.profileAvatarCleanups),
358
+ $permissions: v.pipe(v.array(v.string()), v.length(0)),
359
+ claimedAt: v.nullable(timestampSchema),
360
+ claimId: v.nullable(identifierSchema),
361
+ fileId: identifierSchema,
362
+ profile: appwriteRelationshipIdSchema,
363
+ }),
304
364
  profiles: v.strictObject({
305
365
  ...wireMetadata(appwriteIds.tables.profiles),
306
366
  avatarFileId: v.nullable(appwriteRowIdSchema),
@@ -312,6 +372,7 @@ const rowSchemas = {
312
372
  }),
313
373
  pushNotificationTokens: v.strictObject({
314
374
  ...wireMetadata(appwriteIds.tables.pushNotificationTokens),
375
+ profile: appwriteRelationshipIdSchema,
315
376
  token: identifierSchema,
316
377
  userId: identifierSchema,
317
378
  }),
@@ -320,28 +381,29 @@ const rowSchemas = {
320
381
  aliasIds: v.array(identifierSchema),
321
382
  icon: v.nullable(identifierSchema),
322
383
  name: identifierSchema,
384
+ profile: appwriteRelationshipIdSchema,
323
385
  }),
324
- // Scalar IDs keep this hot materialisation join eligible for TablesDB bulk writes.
325
386
  threadAliases: v.strictObject({
326
387
  ...wireMetadata(appwriteIds.tables.threadAliases),
327
- accountId: identifierSchema,
328
- aliasId: identifierSchema,
388
+ alias: appwriteRelationshipIdSchema,
389
+ aliasAssignmentKey: identifierSchema,
329
390
  latestMessageAt: timestampSchema,
330
- threadId: identifierSchema,
331
- userId: identifierSchema,
391
+ thread: appwriteRelationshipIdSchema,
392
+ threadAssignmentKey: identifierSchema,
332
393
  }),
333
394
  threadLabels: v.strictObject({
334
395
  ...wireMetadata(appwriteIds.tables.threadLabels),
335
- accountId: identifierSchema,
336
- labelId: identifierSchema,
396
+ label: appwriteRelationshipIdSchema,
397
+ labelAssignmentKey: identifierSchema,
337
398
  latestMessageAt: timestampSchema,
338
399
  locationCount: nonNegativeIntegerSchema,
339
- threadId: identifierSchema,
340
- userId: identifierSchema,
400
+ thread: appwriteRelationshipIdSchema,
401
+ threadAssignmentKey: identifierSchema,
341
402
  }),
342
403
  threads: v.strictObject({
343
404
  ...wireMetadata(appwriteIds.tables.threads),
344
- accountId: identifierSchema,
405
+ account: appwriteRelationshipIdSchema,
406
+ accountAssignmentKey: identifierSchema,
345
407
  archived: v.boolean(),
346
408
  firstMessageAt: v.nullable(timestampSchema),
347
409
  flagged: v.boolean(),
@@ -364,7 +426,6 @@ const rowSchemas = {
364
426
  subject: v.nullable(v.string()),
365
427
  trashed: v.boolean(),
366
428
  unseenLocationCount: nonNegativeIntegerSchema,
367
- userId: identifierSchema,
368
429
  }),
369
430
  };
370
431
  export const appwrite = {
@@ -379,19 +440,8 @@ export const appwrite = {
379
440
  deployments: appwriteDeployments,
380
441
  environments: appwriteEnvironments,
381
442
  ids: appwriteIds,
382
- mailboxSync: {
383
- laneStates: mailboxSyncLaneStates,
384
- lanes: mailboxSyncLanes,
385
- states: mailboxSyncStates,
386
- },
387
- oauth: {
388
- operations: oauthOperations,
389
- providers: oauthProviders,
390
- returnUriSchema: oauthReturnUriSchema,
391
- returnUris: oauthReturnUris,
392
- },
393
- polling: {
394
- shardStates: pollShardStates,
395
- },
443
+ mailboxSync: { laneStates: mailboxSyncLaneStates, lanes: mailboxSyncLanes, states: mailboxSyncStates },
444
+ oauth: { operations: oauthOperations, providers: oauthProviders, returnUriSchema: oauthReturnUriSchema, returnUris: oauthReturnUris },
445
+ polling: { shardStates: pollShardStates },
396
446
  rowSchemas,
397
447
  };