@marcoappio/marco-config 2.0.503 → 2.0.505

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 (108) hide show
  1. package/dist/types/AuthData.d.ts +4 -0
  2. package/dist/types/AuthData.d.ts.map +1 -0
  3. package/dist/types/AuthData.js +1 -0
  4. package/dist/types/IMAPSourceLocation.d.ts +7 -0
  5. package/dist/types/IMAPSourceLocation.d.ts.map +1 -0
  6. package/dist/types/IMAPSourceLocation.js +1 -0
  7. package/dist/types/Zero.d.ts +14 -8
  8. package/dist/types/Zero.d.ts.map +1 -1
  9. package/dist/types/index.d.ts +2 -0
  10. package/dist/types/index.d.ts.map +1 -1
  11. package/dist/types/index.js +2 -0
  12. package/dist/zero/index.d.ts +7745 -3109
  13. package/dist/zero/index.d.ts.map +1 -1
  14. package/dist/zero/index.js +14 -5
  15. package/dist/zero/mutatorSchemas/account.d.ts +80 -0
  16. package/dist/zero/mutatorSchemas/account.d.ts.map +1 -0
  17. package/dist/zero/mutatorSchemas/account.js +66 -0
  18. package/dist/zero/mutatorSchemas/draft.d.ts +150 -0
  19. package/dist/zero/mutatorSchemas/draft.d.ts.map +1 -0
  20. package/dist/zero/mutatorSchemas/draft.js +104 -0
  21. package/dist/zero/mutatorSchemas/index.d.ts +323 -0
  22. package/dist/zero/mutatorSchemas/index.d.ts.map +1 -0
  23. package/dist/zero/mutatorSchemas/index.js +10 -0
  24. package/dist/zero/mutatorSchemas/thread.d.ts +71 -0
  25. package/dist/zero/mutatorSchemas/thread.d.ts.map +1 -0
  26. package/dist/zero/mutatorSchemas/thread.js +47 -0
  27. package/dist/zero/mutatorSchemas/user.d.ts +26 -0
  28. package/dist/zero/mutatorSchemas/user.d.ts.map +1 -0
  29. package/dist/zero/mutatorSchemas/user.js +27 -0
  30. package/dist/zero/mutators/accountMutators/accountMutators.d.ts +3 -188
  31. package/dist/zero/mutators/accountMutators/accountMutators.d.ts.map +1 -1
  32. package/dist/zero/mutators/accountMutators/accountMutators.js +82 -117
  33. package/dist/zero/mutators/accountMutators/accountMutators.test.d.ts +2 -0
  34. package/dist/zero/mutators/accountMutators/accountMutators.test.d.ts.map +1 -0
  35. package/dist/zero/mutators/accountMutators/accountMutators.test.js +372 -0
  36. package/dist/zero/mutators/accountMutators/index.d.ts +1 -1
  37. package/dist/zero/mutators/accountMutators/index.d.ts.map +1 -1
  38. package/dist/zero/mutators/accountMutators/index.js +1 -1
  39. package/dist/zero/mutators/draftMutators/draftMutators.d.ts +3 -305
  40. package/dist/zero/mutators/draftMutators/draftMutators.d.ts.map +1 -1
  41. package/dist/zero/mutators/draftMutators/draftMutators.js +83 -156
  42. package/dist/zero/mutators/draftMutators/draftMutators.test.d.ts +2 -0
  43. package/dist/zero/mutators/draftMutators/draftMutators.test.d.ts.map +1 -0
  44. package/dist/zero/mutators/draftMutators/draftMutators.test.js +416 -0
  45. package/dist/zero/mutators/draftMutators/index.d.ts +1 -1
  46. package/dist/zero/mutators/draftMutators/index.d.ts.map +1 -1
  47. package/dist/zero/mutators/draftMutators/index.js +1 -1
  48. package/dist/zero/mutators/index.d.ts +1 -251
  49. package/dist/zero/mutators/index.d.ts.map +1 -1
  50. package/dist/zero/mutators/index.js +1 -11
  51. package/dist/zero/mutators/mutators.d.ts +17 -1519
  52. package/dist/zero/mutators/mutators.d.ts.map +1 -1
  53. package/dist/zero/mutators/mutators.js +38 -11
  54. package/dist/zero/mutators/threadMutators/index.d.ts +1 -1
  55. package/dist/zero/mutators/threadMutators/index.d.ts.map +1 -1
  56. package/dist/zero/mutators/threadMutators/index.js +1 -1
  57. package/dist/zero/mutators/threadMutators/threadMutators.d.ts +6 -199
  58. package/dist/zero/mutators/threadMutators/threadMutators.d.ts.map +1 -1
  59. package/dist/zero/mutators/threadMutators/threadMutators.js +87 -118
  60. package/dist/zero/mutators/threadMutators/threadMutators.test.d.ts +2 -0
  61. package/dist/zero/mutators/threadMutators/threadMutators.test.d.ts.map +1 -0
  62. package/dist/zero/mutators/threadMutators/threadMutators.test.js +755 -0
  63. package/dist/zero/mutators/userMutators/index.d.ts +1 -1
  64. package/dist/zero/mutators/userMutators/index.d.ts.map +1 -1
  65. package/dist/zero/mutators/userMutators/index.js +1 -1
  66. package/dist/zero/mutators/userMutators/userMutators.d.ts +3 -56
  67. package/dist/zero/mutators/userMutators/userMutators.d.ts.map +1 -1
  68. package/dist/zero/mutators/userMutators/userMutators.js +26 -39
  69. package/dist/zero/mutators/userMutators/userMutators.test.d.ts +2 -0
  70. package/dist/zero/mutators/userMutators/userMutators.test.d.ts.map +1 -0
  71. package/dist/zero/mutators/userMutators/userMutators.test.js +84 -0
  72. package/dist/zero/queries/getAccounts.d.ts +1025 -4
  73. package/dist/zero/queries/getAccounts.d.ts.map +1 -1
  74. package/dist/zero/queries/getAccounts.js +3 -3
  75. package/dist/zero/queries/getContacts.d.ts +1033 -18
  76. package/dist/zero/queries/getContacts.d.ts.map +1 -1
  77. package/dist/zero/queries/getContacts.js +15 -11
  78. package/dist/zero/queries/getDrafts.d.ts +1031 -11
  79. package/dist/zero/queries/getDrafts.d.ts.map +1 -1
  80. package/dist/zero/queries/getDrafts.js +11 -7
  81. package/dist/zero/queries/getThread.d.ts +1028 -7
  82. package/dist/zero/queries/getThread.d.ts.map +1 -1
  83. package/dist/zero/queries/getThread.js +9 -5
  84. package/dist/zero/queries/getThreadList.d.ts +1035 -23
  85. package/dist/zero/queries/getThreadList.d.ts.map +1 -1
  86. package/dist/zero/queries/getThreadList.js +18 -14
  87. package/dist/zero/queries/getThreads.d.ts +1035 -23
  88. package/dist/zero/queries/getThreads.d.ts.map +1 -1
  89. package/dist/zero/queries/getThreads.js +18 -14
  90. package/dist/zero/queries/getUser.d.ts +1025 -4
  91. package/dist/zero/queries/getUser.d.ts.map +1 -1
  92. package/dist/zero/queries/getUser.js +3 -3
  93. package/dist/zero/queries/index.d.ts +141 -460
  94. package/dist/zero/queries/index.d.ts.map +1 -1
  95. package/dist/zero/queries/index.js +10 -18
  96. package/dist/zero/schema.d.ts +133 -133
  97. package/dist/zero/schema.d.ts.map +1 -1
  98. package/dist/zero/schema.js +1 -0
  99. package/package.json +2 -2
  100. package/dist/zero/crud.d.ts +0 -1024
  101. package/dist/zero/crud.d.ts.map +0 -1
  102. package/dist/zero/crud.js +0 -3
  103. package/dist/zero/mutators/typedMutator.d.ts +0 -2056
  104. package/dist/zero/mutators/typedMutator.d.ts.map +0 -1
  105. package/dist/zero/mutators/typedMutator.js +0 -2
  106. package/dist/zero/queries/z.d.ts +0 -1024
  107. package/dist/zero/queries/z.d.ts.map +0 -1
  108. package/dist/zero/queries/z.js +0 -3
@@ -1,306 +1,4 @@
1
- import * as v from 'valibot';
2
- export declare const draftMutatorSchemas: {
3
- cancelSend: v.ObjectSchema<{
4
- readonly id: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>, v.MaxLengthAction<string, number, undefined>]>, undefined>;
5
- readonly updatedAt: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
6
- }, undefined>;
7
- createAttachment: v.ObjectSchema<{
8
- readonly attachment: v.ObjectSchema<{
9
- readonly fileName: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>, v.MaxLengthAction<string, number, undefined>]>, undefined>;
10
- readonly id: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>, v.MaxLengthAction<string, number, undefined>]>, undefined>;
11
- readonly mimeType: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>, v.MaxLengthAction<string, number, undefined>]>, undefined>;
12
- readonly status: v.PicklistSchema<readonly ["PENDING", "COMPLETE", "FAILED"], undefined>;
13
- readonly totalSize: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
14
- }, undefined>;
15
- readonly id: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>, v.MaxLengthAction<string, number, undefined>]>, undefined>;
16
- readonly updatedAt: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
17
- }, undefined>;
18
- createDraft: v.ObjectSchema<{
19
- readonly accountId: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>, v.MaxLengthAction<string, number, undefined>]>, undefined>;
20
- readonly attachments: v.ArraySchema<v.ObjectSchema<{
21
- readonly fileName: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>, v.MaxLengthAction<string, number, undefined>]>, undefined>;
22
- readonly id: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>, v.MaxLengthAction<string, number, undefined>]>, undefined>;
23
- readonly mimeType: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>, v.MaxLengthAction<string, number, undefined>]>, undefined>;
24
- readonly status: v.PicklistSchema<readonly ["PENDING", "COMPLETE", "FAILED"], undefined>;
25
- readonly totalSize: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
26
- }, undefined>, undefined>;
27
- readonly body: v.ObjectSchema<{
28
- readonly bcc: v.ArraySchema<v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.EmailAction<string, undefined>, v.MaxLengthAction<string, 255, undefined>]>, undefined>, undefined>;
29
- readonly cc: v.ArraySchema<v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.EmailAction<string, undefined>, v.MaxLengthAction<string, 255, undefined>]>, undefined>, undefined>;
30
- readonly content: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 384000, undefined>]>;
31
- readonly subject: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>, v.MaxLengthAction<string, number, undefined>]>, undefined>;
32
- readonly to: v.ArraySchema<v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.EmailAction<string, undefined>, v.MaxLengthAction<string, 255, undefined>]>, undefined>, undefined>;
33
- }, undefined>;
34
- readonly error: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>, v.MaxLengthAction<string, number, undefined>]>, undefined>;
35
- readonly from: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.EmailAction<string, undefined>, v.MaxLengthAction<string, 255, undefined>]>, undefined>;
36
- readonly fromName: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>, v.MaxLengthAction<string, number, undefined>]>, undefined>;
37
- readonly id: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>, v.MaxLengthAction<string, number, undefined>]>, undefined>;
38
- readonly referencedMessageId: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>, v.MaxLengthAction<string, number, undefined>]>, undefined>;
39
- readonly scheduledFor: v.NullableSchema<v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>, undefined>;
40
- readonly status: v.PicklistSchema<readonly ["DRAFT", "SEND_REQUESTED", "SEND_CONFIRMED", "SEND_FAILED"], undefined>;
41
- readonly type: v.PicklistSchema<readonly ["NEW", "REPLY", "FORWARD"], undefined>;
42
- readonly updatedAt: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
43
- }, undefined>;
44
- deleteAttachment: v.ObjectSchema<{
45
- readonly attachmentId: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>, v.MaxLengthAction<string, number, undefined>]>, undefined>;
46
- readonly id: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>, v.MaxLengthAction<string, number, undefined>]>, undefined>;
47
- readonly updatedAt: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
48
- }, undefined>;
49
- deleteDraft: v.ObjectSchema<{
50
- readonly id: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>, v.MaxLengthAction<string, number, undefined>]>, undefined>;
51
- }, undefined>;
52
- setContent: v.ObjectSchema<{
53
- readonly id: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>, v.MaxLengthAction<string, number, undefined>]>, undefined>;
54
- readonly patch: v.ArraySchema<v.ObjectSchema<{
55
- readonly index: v.NumberSchema<undefined>;
56
- readonly type: v.UnionSchema<[v.LiteralSchema<"INSERTION", undefined>, v.LiteralSchema<"DELETION", undefined>], undefined>;
57
- readonly value: v.StringSchema<undefined>;
58
- }, undefined>, undefined>;
59
- readonly updatedAt: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
60
- }, undefined>;
61
- setEnvelope: v.ObjectSchema<{
62
- readonly envelope: Omit<v.ObjectSchema<{
63
- readonly bcc: v.ArraySchema<v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.EmailAction<string, undefined>, v.MaxLengthAction<string, 255, undefined>]>, undefined>, undefined>;
64
- readonly cc: v.ArraySchema<v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.EmailAction<string, undefined>, v.MaxLengthAction<string, 255, undefined>]>, undefined>, undefined>;
65
- readonly content: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 384000, undefined>]>;
66
- readonly subject: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>, v.MaxLengthAction<string, number, undefined>]>, undefined>;
67
- readonly to: v.ArraySchema<v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.EmailAction<string, undefined>, v.MaxLengthAction<string, 255, undefined>]>, undefined>, undefined>;
68
- }, undefined>, "~standard" | "~run" | "~types" | "entries"> & {
69
- readonly entries: Omit<{
70
- readonly bcc: v.ArraySchema<v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.EmailAction<string, undefined>, v.MaxLengthAction<string, 255, undefined>]>, undefined>, undefined>;
71
- readonly cc: v.ArraySchema<v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.EmailAction<string, undefined>, v.MaxLengthAction<string, 255, undefined>]>, undefined>, undefined>;
72
- readonly content: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 384000, undefined>]>;
73
- readonly subject: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>, v.MaxLengthAction<string, number, undefined>]>, undefined>;
74
- readonly to: v.ArraySchema<v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.EmailAction<string, undefined>, v.MaxLengthAction<string, 255, undefined>]>, undefined>, undefined>;
75
- }, "content">;
76
- readonly '~standard': v.StandardProps<{
77
- bcc: string[];
78
- cc: string[];
79
- to: string[];
80
- subject: string | null;
81
- }, {
82
- bcc: string[];
83
- cc: string[];
84
- to: string[];
85
- subject: string | null;
86
- }>;
87
- readonly '~run': (dataset: v.UnknownDataset, config: v.Config<v.BaseIssue<unknown>>) => v.OutputDataset<{
88
- bcc: string[];
89
- cc: string[];
90
- to: string[];
91
- subject: string | null;
92
- }, v.StringIssue | v.EmailIssue<string> | v.MaxLengthIssue<string, 255> | v.NonEmptyIssue<string> | v.MaxLengthIssue<string, number> | v.ObjectIssue | v.ArrayIssue | v.NonOptionalIssue>;
93
- readonly '~types'?: {
94
- readonly input: {
95
- bcc: string[];
96
- cc: string[];
97
- to: string[];
98
- subject: string | null;
99
- };
100
- readonly output: {
101
- bcc: string[];
102
- cc: string[];
103
- to: string[];
104
- subject: string | null;
105
- };
106
- readonly issue: v.StringIssue | v.EmailIssue<string> | v.MaxLengthIssue<string, 255> | v.NonEmptyIssue<string> | v.MaxLengthIssue<string, number> | v.ObjectIssue | v.ArrayIssue | v.NonOptionalIssue;
107
- } | undefined;
108
- };
109
- readonly id: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>, v.MaxLengthAction<string, number, undefined>]>, undefined>;
110
- readonly updatedAt: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
111
- }, undefined>;
112
- setFrom: v.ObjectSchema<{
113
- readonly accountId: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>, v.MaxLengthAction<string, number, undefined>]>, undefined>;
114
- readonly aliasId: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>, v.MaxLengthAction<string, number, undefined>]>, undefined>;
115
- readonly from: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.EmailAction<string, undefined>, v.MaxLengthAction<string, 255, undefined>]>, undefined>;
116
- readonly fromName: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>, v.MaxLengthAction<string, number, undefined>]>, undefined>;
117
- readonly id: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>, v.MaxLengthAction<string, number, undefined>]>, undefined>;
118
- readonly updatedAt: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
119
- }, undefined>;
120
- };
121
- export declare const draftMutators: {
122
- cancelSend: import("@rocicorp/zero").MutatorDefinition<{
123
- id: string;
124
- updatedAt: number;
125
- }, {
126
- id: string;
127
- updatedAt: number;
128
- }, {
129
- readonly userId: string;
130
- }, unknown>;
131
- createAttachment: import("@rocicorp/zero").MutatorDefinition<{
132
- attachment: {
133
- fileName: string;
134
- id: string;
135
- mimeType: string;
136
- status: "PENDING" | "COMPLETE" | "FAILED";
137
- totalSize: number;
138
- };
139
- id: string;
140
- updatedAt: number;
141
- }, {
142
- attachment: {
143
- fileName: string;
144
- id: string;
145
- mimeType: string;
146
- status: "PENDING" | "COMPLETE" | "FAILED";
147
- totalSize: number;
148
- };
149
- id: string;
150
- updatedAt: number;
151
- }, {
152
- readonly userId: string;
153
- }, unknown>;
154
- createDraft: import("@rocicorp/zero").MutatorDefinition<{
155
- accountId: string;
156
- attachments: {
157
- fileName: string;
158
- id: string;
159
- mimeType: string;
160
- status: "PENDING" | "COMPLETE" | "FAILED";
161
- totalSize: number;
162
- }[];
163
- body: {
164
- bcc: string[];
165
- cc: string[];
166
- content: string;
167
- subject: string | null;
168
- to: string[];
169
- };
170
- error: string | null;
171
- from: string;
172
- fromName: string | null;
173
- id: string;
174
- referencedMessageId: string | null;
175
- scheduledFor: number | null;
176
- status: "DRAFT" | "SEND_REQUESTED" | "SEND_CONFIRMED" | "SEND_FAILED";
177
- type: "NEW" | "REPLY" | "FORWARD";
178
- updatedAt: number;
179
- }, {
180
- accountId: string;
181
- attachments: {
182
- fileName: string;
183
- id: string;
184
- mimeType: string;
185
- status: "PENDING" | "COMPLETE" | "FAILED";
186
- totalSize: number;
187
- }[];
188
- body: {
189
- bcc: string[];
190
- cc: string[];
191
- content: string;
192
- subject: string | null;
193
- to: string[];
194
- };
195
- error: string | null;
196
- from: string;
197
- fromName: string | null;
198
- id: string;
199
- referencedMessageId: string | null;
200
- scheduledFor: number | null;
201
- status: "DRAFT" | "SEND_REQUESTED" | "SEND_CONFIRMED" | "SEND_FAILED";
202
- type: "NEW" | "REPLY" | "FORWARD";
203
- updatedAt: number;
204
- }, {
205
- readonly userId: string;
206
- }, unknown>;
207
- deleteAttachment: import("@rocicorp/zero").MutatorDefinition<{
208
- attachmentId: string;
209
- id: string;
210
- updatedAt: number;
211
- }, {
212
- attachmentId: string;
213
- id: string;
214
- updatedAt: number;
215
- }, {
216
- readonly userId: string;
217
- }, unknown>;
218
- deleteDraft: import("@rocicorp/zero").MutatorDefinition<{
219
- id: string;
220
- }, {
221
- id: string;
222
- }, {
223
- readonly userId: string;
224
- }, unknown>;
225
- scheduleSend: import("@rocicorp/zero").MutatorDefinition<{
226
- id: string;
227
- kind: "IMMEDIATE";
228
- undoMs: number;
229
- updatedAt: number;
230
- } | {
231
- id: string;
232
- kind: "SCHEDULED";
233
- scheduledFor: number;
234
- updatedAt: number;
235
- }, {
236
- id: string;
237
- kind: "IMMEDIATE";
238
- undoMs: number;
239
- updatedAt: number;
240
- } | {
241
- id: string;
242
- kind: "SCHEDULED";
243
- scheduledFor: number;
244
- updatedAt: number;
245
- }, {
246
- readonly userId: string;
247
- }, unknown>;
248
- setContent: import("@rocicorp/zero").MutatorDefinition<{
249
- id: string;
250
- patch: {
251
- index: number;
252
- type: "INSERTION" | "DELETION";
253
- value: string;
254
- }[];
255
- updatedAt: number;
256
- }, {
257
- id: string;
258
- patch: {
259
- index: number;
260
- type: "INSERTION" | "DELETION";
261
- value: string;
262
- }[];
263
- updatedAt: number;
264
- }, {
265
- readonly userId: string;
266
- }, unknown>;
267
- setEnvelope: import("@rocicorp/zero").MutatorDefinition<{
268
- envelope: {
269
- bcc: string[];
270
- cc: string[];
271
- to: string[];
272
- subject: string | null;
273
- };
274
- id: string;
275
- updatedAt: number;
276
- }, {
277
- envelope: {
278
- bcc: string[];
279
- cc: string[];
280
- to: string[];
281
- subject: string | null;
282
- };
283
- id: string;
284
- updatedAt: number;
285
- }, {
286
- readonly userId: string;
287
- }, unknown>;
288
- setFrom: import("@rocicorp/zero").MutatorDefinition<{
289
- accountId: string;
290
- aliasId: string;
291
- from: string;
292
- fromName: string | null;
293
- id: string;
294
- updatedAt: number;
295
- }, {
296
- accountId: string;
297
- aliasId: string;
298
- from: string;
299
- fromName: string | null;
300
- id: string;
301
- updatedAt: number;
302
- }, {
303
- readonly userId: string;
304
- }, unknown>;
305
- };
1
+ import { type AuthData, type HandlerMap } from '../../../types';
2
+ import type { ZeroMutatorSchemas } from '../../../zero/mutatorSchemas';
3
+ export declare const createDraftMutators: (authData: AuthData | undefined) => HandlerMap<ZeroMutatorSchemas["draft"]>;
306
4
  //# sourceMappingURL=draftMutators.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"draftMutators.d.ts","sourceRoot":"","sources":["../../../../src/zero/mutators/draftMutators/draftMutators.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAuD5B,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqC/B,CAAA;AAED,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyKzB,CAAA"}
1
+ {"version":3,"file":"draftMutators.d.ts","sourceRoot":"","sources":["../../../../src/zero/mutators/draftMutators/draftMutators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,UAAU,EAAiB,MAAM,qBAAqB,CAAA;AAEnF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAA;AAE3E,eAAO,MAAM,mBAAmB,aAAc,QAAQ,GAAG,SAAS,KAAG,UAAU,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAwJzG,CAAA"}
@@ -1,118 +1,40 @@
1
- import * as v from 'valibot';
2
- import { marcoSchemas } from '../../../schemas';
3
- import { DRAFT_ATTACHMENT_UPLOAD_STATUSES, DRAFT_STATUSES, DRAFT_TYPES, MutationError } from '../../../types';
1
+ import { MutationError } from '../../../types';
4
2
  import { stringPatch } from '../../../utils';
5
- import { zeroCRUD } from '../../../zero/crud';
6
- import { defineMutator } from '../typedMutator';
7
- const draftBodySchema = v.object({
8
- bcc: v.array(marcoSchemas.string.email()),
9
- cc: v.array(marcoSchemas.string.email()),
10
- content: v.pipe(v.string(), v.maxLength(384000)),
11
- subject: marcoSchemas.string.nullable(),
12
- to: v.array(marcoSchemas.string.email()),
13
- });
14
- const draftAttachmentSchema = v.object({
15
- fileName: marcoSchemas.string.required(),
16
- id: marcoSchemas.string.required(),
17
- mimeType: marcoSchemas.string.required(),
18
- status: v.picklist(DRAFT_ATTACHMENT_UPLOAD_STATUSES),
19
- totalSize: marcoSchemas.number.positiveInteger(),
20
- });
21
- const draftScheduleSchema = v.union([
22
- v.object({
23
- id: marcoSchemas.string.required(),
24
- kind: v.literal('IMMEDIATE'),
25
- undoMs: marcoSchemas.number.positiveInteger(),
26
- updatedAt: marcoSchemas.number.positiveInteger(),
27
- }),
28
- v.object({
29
- id: marcoSchemas.string.required(),
30
- kind: v.literal('SCHEDULED'),
31
- scheduledFor: marcoSchemas.number.positiveInteger(),
32
- updatedAt: marcoSchemas.number.positiveInteger(),
33
- }),
34
- ]);
35
- const draftModelSchema = v.object({
36
- accountId: marcoSchemas.string.required(),
37
- attachments: v.array(draftAttachmentSchema),
38
- body: draftBodySchema,
39
- error: marcoSchemas.string.nullable(),
40
- from: marcoSchemas.string.email(),
41
- fromName: marcoSchemas.string.nullable(),
42
- id: marcoSchemas.string.required(),
43
- referencedMessageId: marcoSchemas.string.nullable(),
44
- scheduledFor: v.nullable(marcoSchemas.number.positiveInteger()),
45
- status: v.picklist(DRAFT_STATUSES),
46
- type: v.picklist(DRAFT_TYPES),
47
- updatedAt: marcoSchemas.number.positiveInteger(),
48
- });
49
- export const draftMutatorSchemas = {
50
- cancelSend: v.object({
51
- id: marcoSchemas.string.required(),
52
- updatedAt: marcoSchemas.number.positiveInteger(),
53
- }),
54
- createAttachment: v.object({
55
- attachment: draftAttachmentSchema,
56
- id: marcoSchemas.string.required(),
57
- updatedAt: marcoSchemas.number.positiveInteger(),
58
- }),
59
- createDraft: draftModelSchema,
60
- deleteAttachment: v.object({
61
- attachmentId: marcoSchemas.string.required(),
62
- id: marcoSchemas.string.required(),
63
- updatedAt: marcoSchemas.number.positiveInteger(),
64
- }),
65
- deleteDraft: v.object({
66
- id: marcoSchemas.string.required(),
67
- }),
68
- setContent: v.object({
69
- id: marcoSchemas.string.required(),
70
- patch: marcoSchemas.drafts.contentPatch.patch(),
71
- updatedAt: marcoSchemas.number.positiveInteger(),
72
- }),
73
- setEnvelope: v.object({
74
- envelope: v.omit(draftBodySchema, ['content']),
75
- id: marcoSchemas.string.required(),
76
- updatedAt: marcoSchemas.number.positiveInteger(),
77
- }),
78
- setFrom: v.object({
79
- accountId: marcoSchemas.string.required(),
80
- aliasId: marcoSchemas.string.required(),
81
- from: marcoSchemas.string.email(),
82
- fromName: marcoSchemas.string.nullable(),
83
- id: marcoSchemas.string.required(),
84
- updatedAt: marcoSchemas.number.positiveInteger(),
85
- }),
86
- };
87
- export const draftMutators = {
88
- cancelSend: defineMutator(draftMutatorSchemas.cancelSend, async ({ tx, args: { id, updatedAt } }) => {
89
- const draft = await tx.run(tx.query.draft.where('id', id).one());
3
+ export const createDraftMutators = (authData) => ({
4
+ cancelSend: async (tx, args) => {
5
+ const draft = await tx.query.draft.where('id', args.id).one().run();
90
6
  if (!draft) {
91
7
  throw new Error(MutationError.ENTITY_NOT_FOUND);
92
8
  }
93
9
  if (draft.status === 'SEND_CONFIRMED') {
94
10
  throw new Error(MutationError.ALREADY_APPLIED);
95
11
  }
96
- await tx.mutate(zeroCRUD.draft.update({
97
- id,
12
+ await tx.mutate.draft.update({
13
+ id: args.id,
98
14
  scheduledFor: null,
99
15
  status: 'DRAFT',
100
- updatedAt,
101
- }));
102
- }),
103
- createAttachment: defineMutator(draftMutatorSchemas.createAttachment, async ({ tx, args: { id, attachment, updatedAt } }) => {
104
- await tx.mutate(zeroCRUD.draftAttachment.insert({
105
- draftId: id,
106
- fileName: attachment.fileName,
107
- id: attachment.id,
108
- mimeType: attachment.mimeType,
109
- status: attachment.status,
110
- totalSize: attachment.totalSize,
111
- }));
112
- await tx.mutate(zeroCRUD.draft.update({ id, updatedAt }));
113
- }),
114
- createDraft: defineMutator(draftMutatorSchemas.createDraft, async ({ tx, ctx: { userId }, args }) => {
115
- await tx.mutate(zeroCRUD.draft.insert({
16
+ updatedAt: args.updatedAt,
17
+ });
18
+ },
19
+ createAttachment: async (tx, args) => {
20
+ await tx.mutate.draftAttachment.insert({
21
+ draftId: args.id,
22
+ fileName: args.attachment.fileName,
23
+ id: args.attachment.id,
24
+ mimeType: args.attachment.mimeType,
25
+ status: args.attachment.status,
26
+ totalSize: args.attachment.totalSize,
27
+ });
28
+ await tx.mutate.draft.update({
29
+ id: args.id,
30
+ updatedAt: args.updatedAt,
31
+ });
32
+ },
33
+ createDraft: async (tx, args) => {
34
+ if (!authData) {
35
+ throw new Error(MutationError.AUTHENTICATION_REQUIRED);
36
+ }
37
+ await tx.mutate.draft.insert({
116
38
  accountId: args.accountId,
117
39
  body: {
118
40
  bcc: args.body.bcc,
@@ -131,85 +53,90 @@ export const draftMutators = {
131
53
  subject: args.body.subject,
132
54
  type: args.type,
133
55
  updatedAt: args.updatedAt,
134
- userId,
135
- }));
56
+ userId: authData.sub,
57
+ });
136
58
  for (const attachment of args.attachments) {
137
- await tx.mutate(zeroCRUD.draftAttachment.insert({
59
+ await tx.mutate.draftAttachment.insert({
138
60
  draftId: args.id,
139
61
  fileName: attachment.fileName,
140
62
  id: attachment.id,
141
63
  mimeType: attachment.mimeType,
142
64
  status: attachment.status,
143
65
  totalSize: attachment.totalSize,
144
- }));
66
+ });
145
67
  }
146
- }),
147
- deleteAttachment: defineMutator(draftMutatorSchemas.deleteAttachment, async ({ tx, args: { id, attachmentId, updatedAt } }) => {
148
- await tx.mutate(zeroCRUD.draftAttachment.delete({
149
- id: attachmentId,
150
- }));
151
- await tx.mutate(zeroCRUD.draft.update({ id, updatedAt }));
152
- }),
153
- deleteDraft: defineMutator(draftMutatorSchemas.deleteDraft, async ({ tx, args: { id } }) => {
154
- await tx.mutate(zeroCRUD.draft.delete({ id }));
155
- }),
156
- scheduleSend: defineMutator(draftScheduleSchema, async ({ tx, args }) => {
68
+ },
69
+ deleteAttachment: async (tx, args) => {
70
+ await tx.mutate.draftAttachment.delete({
71
+ id: args.attachmentId,
72
+ });
73
+ await tx.mutate.draft.update({
74
+ id: args.id,
75
+ updatedAt: args.updatedAt,
76
+ });
77
+ },
78
+ deleteDraft: async (tx, args) => {
79
+ await tx.mutate.draft.delete({
80
+ id: args.id,
81
+ });
82
+ },
83
+ scheduleSend: async (tx, args) => {
157
84
  if (args.kind === 'IMMEDIATE') {
158
- await tx.mutate(zeroCRUD.draft.update({
85
+ await tx.mutate.draft.update({
159
86
  id: args.id,
160
87
  scheduledFor: args.updatedAt + args.undoMs,
161
88
  status: 'SEND_REQUESTED',
162
89
  updatedAt: args.updatedAt,
163
- }));
90
+ });
164
91
  }
165
92
  else {
166
- await tx.mutate(zeroCRUD.draft.update({
93
+ await tx.mutate.draft.update({
167
94
  id: args.id,
168
95
  scheduledFor: args.scheduledFor,
169
96
  status: 'SEND_REQUESTED',
170
97
  updatedAt: args.updatedAt,
171
- }));
98
+ });
172
99
  }
173
- }),
174
- setContent: defineMutator(draftMutatorSchemas.setContent, async ({ tx, args: { id, patch, updatedAt } }) => {
175
- const draft = await tx.run(tx.query.draft.where('id', id).one());
100
+ },
101
+ setContent: async (tx, args) => {
102
+ const draft = await tx.query.draft.where('id', args.id).one().run();
176
103
  if (!draft) {
177
104
  throw new Error(MutationError.ENTITY_NOT_FOUND);
178
105
  }
179
- await tx.mutate(zeroCRUD.draft.update({
106
+ await tx.mutate.draft.update({
180
107
  body: {
181
108
  ...draft.body,
182
- content: stringPatch.apply(typeof draft.body?.content === 'string' ? draft.body.content : '', patch),
109
+ content: stringPatch.apply(typeof draft.body?.content === 'string' ? draft.body.content : '', args.patch),
183
110
  },
184
- id,
185
- updatedAt,
186
- }));
187
- }),
188
- setEnvelope: defineMutator(draftMutatorSchemas.setEnvelope, async ({ tx, args: { id, envelope, updatedAt } }) => {
189
- const draft = await tx.run(tx.query.draft.where('id', id).one());
111
+ id: args.id,
112
+ updatedAt: args.updatedAt,
113
+ });
114
+ },
115
+ setEnvelope: async (tx, args) => {
116
+ const draft = await tx.query.draft.where('id', args.id).one().run();
190
117
  if (!draft) {
191
118
  throw new Error(MutationError.ENTITY_NOT_FOUND);
192
119
  }
193
- await tx.mutate(zeroCRUD.draft.update({
120
+ await tx.mutate.draft.update({
194
121
  body: {
195
- bcc: envelope.bcc,
196
- cc: envelope.cc,
122
+ bcc: args.envelope.bcc,
123
+ cc: args.envelope.cc,
197
124
  content: draft.body.content,
198
- to: envelope.to,
125
+ to: args.envelope.to,
199
126
  },
200
- id,
201
- subject: envelope.subject,
202
- updatedAt,
203
- }));
204
- }),
205
- setFrom: defineMutator(draftMutatorSchemas.setFrom, async ({ tx, args: { id, accountId, aliasId, from, fromName, updatedAt } }) => {
206
- await tx.mutate(zeroCRUD.draft.update({
207
- accountId,
208
- fromAliasId: aliasId,
209
- fromEmail: from,
210
- fromName: fromName,
211
- id,
212
- updatedAt,
213
- }));
214
- }),
215
- };
127
+ id: args.id,
128
+ subject: args.envelope.subject,
129
+ updatedAt: args.updatedAt,
130
+ });
131
+ },
132
+ setFrom: async (tx, args) => {
133
+ await tx.mutate.draft.update({
134
+ accountId: args.accountId,
135
+ fromAliasId: args.aliasId,
136
+ fromEmail: args.from,
137
+ fromName: args.fromName,
138
+ id: args.id,
139
+ updatedAt: args.updatedAt,
140
+ });
141
+ },
142
+ });
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=draftMutators.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"draftMutators.test.d.ts","sourceRoot":"","sources":["../../../../src/zero/mutators/draftMutators/draftMutators.test.ts"],"names":[],"mappings":""}