@fieldia/core 0.11.0 → 0.12.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 (197) hide show
  1. package/README.md +5 -0
  2. package/package.json +1 -1
  3. package/schema/page.schema.json +3996 -904
  4. package/src/index.d.mts +1 -1
  5. package/src/index.d.ts +1 -1
  6. package/src/index.js +4 -1
  7. package/src/index.js.map +1 -1
  8. package/src/index.mjs +1 -1
  9. package/src/index.mjs.map +1 -1
  10. package/src/lib/expression/built-ins.d.mts +4 -0
  11. package/src/lib/expression/built-ins.d.ts +4 -0
  12. package/src/lib/expression/built-ins.js +8 -0
  13. package/src/lib/expression/built-ins.js.map +1 -0
  14. package/src/lib/expression/built-ins.mjs +5 -0
  15. package/src/lib/expression/built-ins.mjs.map +1 -0
  16. package/src/lib/expression/evaluator.js +17 -7
  17. package/src/lib/expression/evaluator.js.map +1 -1
  18. package/src/lib/expression/evaluator.mjs +17 -7
  19. package/src/lib/expression/evaluator.mjs.map +1 -1
  20. package/src/lib/expression/expression.d.mts +7 -0
  21. package/src/lib/expression/expression.d.ts +7 -0
  22. package/src/lib/expression/expression.js +2 -0
  23. package/src/lib/expression/expression.js.map +1 -1
  24. package/src/lib/expression/expression.mjs +3 -1
  25. package/src/lib/expression/expression.mjs.map +1 -1
  26. package/src/lib/expression/functions.d.mts +2 -0
  27. package/src/lib/expression/functions.d.ts +2 -0
  28. package/src/lib/expression/functions.js +38 -5
  29. package/src/lib/expression/functions.js.map +1 -1
  30. package/src/lib/expression/functions.mjs +38 -5
  31. package/src/lib/expression/functions.mjs.map +1 -1
  32. package/src/lib/expression/modifier.d.mts +7 -0
  33. package/src/lib/expression/modifier.d.ts +7 -0
  34. package/src/lib/expression/modifier.js +3 -1
  35. package/src/lib/expression/modifier.js.map +1 -1
  36. package/src/lib/expression/modifier.mjs +4 -2
  37. package/src/lib/expression/modifier.mjs.map +1 -1
  38. package/src/lib/expression/parser.d.mts +8 -1
  39. package/src/lib/expression/parser.d.ts +8 -1
  40. package/src/lib/expression/parser.js +30 -2
  41. package/src/lib/expression/parser.js.map +1 -1
  42. package/src/lib/expression/parser.mjs +30 -2
  43. package/src/lib/expression/parser.mjs.map +1 -1
  44. package/src/lib/expression/reads.d.mts +7 -0
  45. package/src/lib/expression/reads.d.ts +7 -0
  46. package/src/lib/expression/reads.js +23 -0
  47. package/src/lib/expression/reads.js.map +1 -1
  48. package/src/lib/expression/reads.mjs +21 -0
  49. package/src/lib/expression/reads.mjs.map +1 -1
  50. package/src/lib/format/actions.d.mts +486 -2
  51. package/src/lib/format/actions.d.ts +486 -2
  52. package/src/lib/format/actions.js +9 -0
  53. package/src/lib/format/actions.js.map +1 -1
  54. package/src/lib/format/actions.mjs +9 -0
  55. package/src/lib/format/actions.mjs.map +1 -1
  56. package/src/lib/format/check-page.d.mts +7 -2
  57. package/src/lib/format/check-page.d.ts +7 -2
  58. package/src/lib/format/check-page.js +6 -3
  59. package/src/lib/format/check-page.js.map +1 -1
  60. package/src/lib/format/check-page.mjs +6 -3
  61. package/src/lib/format/check-page.mjs.map +1 -1
  62. package/src/lib/format/field.d.mts +3285 -214
  63. package/src/lib/format/field.d.ts +3285 -214
  64. package/src/lib/format/field.js +101 -14
  65. package/src/lib/format/field.js.map +1 -1
  66. package/src/lib/format/field.mjs +100 -13
  67. package/src/lib/format/field.mjs.map +1 -1
  68. package/src/lib/format/hotkeys.d.mts +6 -0
  69. package/src/lib/format/hotkeys.d.ts +6 -0
  70. package/src/lib/format/hotkeys.js +11 -0
  71. package/src/lib/format/hotkeys.js.map +1 -0
  72. package/src/lib/format/hotkeys.mjs +7 -0
  73. package/src/lib/format/hotkeys.mjs.map +1 -0
  74. package/src/lib/format/layout.d.mts +4184 -352
  75. package/src/lib/format/layout.d.ts +4184 -352
  76. package/src/lib/format/layout.js +131 -20
  77. package/src/lib/format/layout.js.map +1 -1
  78. package/src/lib/format/layout.mjs +130 -19
  79. package/src/lib/format/layout.mjs.map +1 -1
  80. package/src/lib/format/page.d.mts +2957 -229
  81. package/src/lib/format/page.d.ts +2957 -229
  82. package/src/lib/format/page.js +2 -0
  83. package/src/lib/format/page.js.map +1 -1
  84. package/src/lib/format/page.mjs +3 -1
  85. package/src/lib/format/page.mjs.map +1 -1
  86. package/src/lib/format/references.d.mts +35 -2
  87. package/src/lib/format/references.d.ts +35 -2
  88. package/src/lib/format/references.js +321 -43
  89. package/src/lib/format/references.js.map +1 -1
  90. package/src/lib/format/references.mjs +321 -43
  91. package/src/lib/format/references.mjs.map +1 -1
  92. package/src/lib/format/translate.js +5 -3
  93. package/src/lib/format/translate.js.map +1 -1
  94. package/src/lib/format/translate.mjs +5 -3
  95. package/src/lib/format/translate.mjs.map +1 -1
  96. package/src/lib/format/words.d.mts +9 -0
  97. package/src/lib/format/words.d.ts +9 -0
  98. package/src/lib/format/words.js +35 -0
  99. package/src/lib/format/words.js.map +1 -0
  100. package/src/lib/format/words.mjs +30 -0
  101. package/src/lib/format/words.mjs.map +1 -0
  102. package/src/lib/record/cells.d.mts +37 -0
  103. package/src/lib/record/cells.d.ts +37 -0
  104. package/src/lib/record/cells.js +59 -0
  105. package/src/lib/record/cells.js.map +1 -0
  106. package/src/lib/record/cells.mjs +54 -0
  107. package/src/lib/record/cells.mjs.map +1 -0
  108. package/src/lib/record/compute.d.mts +5 -4
  109. package/src/lib/record/compute.d.ts +5 -4
  110. package/src/lib/record/compute.js +11 -10
  111. package/src/lib/record/compute.js.map +1 -1
  112. package/src/lib/record/compute.mjs +12 -11
  113. package/src/lib/record/compute.mjs.map +1 -1
  114. package/src/lib/record/data-source.d.mts +32 -2
  115. package/src/lib/record/data-source.d.ts +32 -2
  116. package/src/lib/record/data-source.js.map +1 -1
  117. package/src/lib/record/data-source.mjs.map +1 -1
  118. package/src/lib/record/env.d.mts +38 -1
  119. package/src/lib/record/env.d.ts +38 -1
  120. package/src/lib/record/env.js +41 -3
  121. package/src/lib/record/env.js.map +1 -1
  122. package/src/lib/record/env.mjs +38 -3
  123. package/src/lib/record/env.mjs.map +1 -1
  124. package/src/lib/record/filter.d.mts +10 -0
  125. package/src/lib/record/filter.d.ts +10 -0
  126. package/src/lib/record/filter.js +49 -0
  127. package/src/lib/record/filter.js.map +1 -1
  128. package/src/lib/record/filter.mjs +48 -0
  129. package/src/lib/record/filter.mjs.map +1 -1
  130. package/src/lib/record/form.d.mts +141 -8
  131. package/src/lib/record/form.d.ts +141 -8
  132. package/src/lib/record/form.js +462 -57
  133. package/src/lib/record/form.js.map +1 -1
  134. package/src/lib/record/form.mjs +464 -59
  135. package/src/lib/record/form.mjs.map +1 -1
  136. package/src/lib/record/locales/ar.js +3 -0
  137. package/src/lib/record/locales/ar.js.map +1 -1
  138. package/src/lib/record/locales/ar.mjs +3 -0
  139. package/src/lib/record/locales/ar.mjs.map +1 -1
  140. package/src/lib/record/locales/de.js +3 -0
  141. package/src/lib/record/locales/de.js.map +1 -1
  142. package/src/lib/record/locales/de.mjs +3 -0
  143. package/src/lib/record/locales/de.mjs.map +1 -1
  144. package/src/lib/record/locales/fr.js +3 -0
  145. package/src/lib/record/locales/fr.js.map +1 -1
  146. package/src/lib/record/locales/fr.mjs +3 -0
  147. package/src/lib/record/locales/fr.mjs.map +1 -1
  148. package/src/lib/record/memory-data-source.d.mts +26 -2
  149. package/src/lib/record/memory-data-source.d.ts +26 -2
  150. package/src/lib/record/memory-data-source.js +98 -7
  151. package/src/lib/record/memory-data-source.js.map +1 -1
  152. package/src/lib/record/memory-data-source.mjs +98 -7
  153. package/src/lib/record/memory-data-source.mjs.map +1 -1
  154. package/src/lib/record/messages.d.mts +5 -0
  155. package/src/lib/record/messages.d.ts +5 -0
  156. package/src/lib/record/messages.js +3 -0
  157. package/src/lib/record/messages.js.map +1 -1
  158. package/src/lib/record/messages.mjs +3 -0
  159. package/src/lib/record/messages.mjs.map +1 -1
  160. package/src/lib/record/roles.d.mts +10 -0
  161. package/src/lib/record/roles.d.ts +10 -0
  162. package/src/lib/record/roles.js +21 -0
  163. package/src/lib/record/roles.js.map +1 -0
  164. package/src/lib/record/roles.mjs +18 -0
  165. package/src/lib/record/roles.mjs.map +1 -0
  166. package/src/lib/record/rules.js +30 -0
  167. package/src/lib/record/rules.js.map +1 -1
  168. package/src/lib/record/rules.mjs +31 -1
  169. package/src/lib/record/rules.mjs.map +1 -1
  170. package/src/lib/record/run.d.mts +79 -0
  171. package/src/lib/record/run.d.ts +79 -0
  172. package/src/lib/record/run.js +105 -0
  173. package/src/lib/record/run.js.map +1 -1
  174. package/src/lib/record/run.mjs +105 -0
  175. package/src/lib/record/run.mjs.map +1 -1
  176. package/src/lib/record/set-when.d.mts +5 -2
  177. package/src/lib/record/set-when.d.ts +5 -2
  178. package/src/lib/record/set-when.js +28 -12
  179. package/src/lib/record/set-when.js.map +1 -1
  180. package/src/lib/record/set-when.mjs +30 -14
  181. package/src/lib/record/set-when.mjs.map +1 -1
  182. package/src/lib/record/value-map.d.mts +41 -0
  183. package/src/lib/record/value-map.d.ts +41 -0
  184. package/src/lib/record/value-map.js +80 -0
  185. package/src/lib/record/value-map.js.map +1 -0
  186. package/src/lib/record/value-map.mjs +73 -0
  187. package/src/lib/record/value-map.mjs.map +1 -0
  188. package/src/lib/record/values.d.mts +10 -0
  189. package/src/lib/record/values.d.ts +10 -0
  190. package/src/lib/record/values.js.map +1 -1
  191. package/src/lib/record/values.mjs.map +1 -1
  192. package/src/runtime.d.mts +10 -6
  193. package/src/runtime.d.ts +10 -6
  194. package/src/runtime.js +11 -1
  195. package/src/runtime.js.map +1 -1
  196. package/src/runtime.mjs +3 -0
  197. package/src/runtime.mjs.map +1 -1
@@ -1,4 +1,5 @@
1
1
  import * as z from 'zod';
2
+ import { FilterItemSchema, type FilterItem } from './field.mjs';
2
3
  import { type JsonValue } from './json.mjs';
3
4
  import type { Modifier, Tone } from './layout.mjs';
4
5
  /**
@@ -29,7 +30,9 @@ interface StepBase {
29
30
  export type PanelSide = 'end' | 'start' | 'right' | 'left' | 'top' | 'bottom';
30
31
  /**
31
32
  * Open another page: in a dialog over this form (the default), in a panel
32
- * beside it, or in its place. A panel comes from the `side` named, the end of
33
+ * beside it, or in its place. A list page shows only the records its
34
+ * `filter` lets through — each `valueFrom` read from this form — such as the
35
+ * invoices of this order, as Flectra's smart buttons open them. A panel comes from the `side` named, the end of
33
36
  * the line unless told. It starts on a record (`record`, an expression
34
37
  * giving its id) or a new one with `values`. Once it is saved or sent, `into`
35
38
  * sets this form's fields from its answers — each an expression over the
@@ -50,6 +53,8 @@ export interface OpenStep extends StepBase {
50
53
  record?: string;
51
54
  /** What the opened form starts with: its fields, each an expression over this form's values. */
52
55
  values?: ValueMap;
56
+ /** On a list page, the records it shows: conditions as a link's filter, `valueFrom` naming this form's fields. */
57
+ filter?: FilterItem[];
53
58
  /** This form's fields, each an expression over the opened form's values once it is saved or sent. */
54
59
  into?: ValueMap;
55
60
  then?: ActionStep[];
@@ -116,7 +121,58 @@ export interface CallStep extends StepBase {
116
121
  export interface CloseStep extends StepBase {
117
122
  do: 'close';
118
123
  }
119
- export type ActionStep = OpenStep | SetStep | ClearStep | AddLineStep | CheckStep | SaveStep | ResetStep | GoToStep | SayStep | AskStep | CallStep | CloseStep;
124
+ /** Load the record again, as its data source now has it: after the app has changed it on its server. */
125
+ export interface ReloadStep extends StepBase {
126
+ do: 'reload';
127
+ }
128
+ /** Open a web address, an expression: in a new tab unless `newTab` is false. Flectra's `act_url`. */
129
+ export interface OpenUrlStep extends StepBase {
130
+ do: 'openUrl';
131
+ url: string;
132
+ newTab?: boolean;
133
+ }
134
+ /**
135
+ * Archive the record, as Flectra's Archive: through the data source's
136
+ * `archive`, or — without one — the app's action named "archive". The record
137
+ * is then loaded again, so a ribbon or a condition on `active` follows. A
138
+ * new record cannot be.
139
+ */
140
+ export interface ArchiveStep extends StepBase {
141
+ do: 'archive';
142
+ }
143
+ /** Bring an archived record back: the data source's `archive` told so, or the app's action "unarchive". */
144
+ export interface UnarchiveStep extends StepBase {
145
+ do: 'unarchive';
146
+ }
147
+ /**
148
+ * Copy the record and show the copy, as Flectra's Duplicate: changes not
149
+ * saved yet are saved first, then the data source's `copy` makes it — or,
150
+ * without one, the app's action "duplicate", answering with the copy's id
151
+ * (`record`).
152
+ */
153
+ export interface DuplicateStep extends StepBase {
154
+ do: 'duplicate';
155
+ }
156
+ /**
157
+ * Delete the record: the data source's `delete`, or the app's action
158
+ * "delete". The form then shows the next record of its pager, or goes back
159
+ * along its breadcrumbs, or starts a new record.
160
+ */
161
+ export interface DeleteStep extends StepBase {
162
+ do: 'delete';
163
+ }
164
+ /**
165
+ * Post a message about the record in its conversation — the chatter beside
166
+ * it, or, in a page opened over a record, that record's — as Flectra posts a
167
+ * closing note: the words, each `{field}` showing that field's value. A note
168
+ * for the team unless it is a `message` its followers get.
169
+ */
170
+ export interface PostStep extends StepBase {
171
+ do: 'post';
172
+ message: string;
173
+ kind?: 'note' | 'message';
174
+ }
175
+ export type ActionStep = OpenStep | SetStep | ClearStep | AddLineStep | CheckStep | SaveStep | ResetStep | GoToStep | SayStep | AskStep | CallStep | CloseStep | ReloadStep | OpenUrlStep | ArchiveStep | UnarchiveStep | DuplicateStep | DeleteStep | PostStep;
120
176
  /**
121
177
  * The moments of a form that run steps. A change is a person's: values set by
122
178
  * a step, a rule or the app do not run `change` again, so steps never chase
@@ -159,6 +215,35 @@ export declare const OpenStepSchema: z.ZodObject<{
159
215
  title: z.ZodOptional<z.ZodString>;
160
216
  record: z.ZodOptional<z.ZodString>;
161
217
  values: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
218
+ filter: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
219
+ field: z.ZodString;
220
+ op: z.ZodEnum<{
221
+ set: "set";
222
+ "=": "=";
223
+ "!=": "!=";
224
+ "<": "<";
225
+ ">": ">";
226
+ "<=": "<=";
227
+ ">=": ">=";
228
+ in: "in";
229
+ "not in": "not in";
230
+ like: "like";
231
+ ilike: "ilike";
232
+ startswith: "startswith";
233
+ endswith: "endswith";
234
+ notset: "notset";
235
+ between: "between";
236
+ contains: "contains";
237
+ "not contains": "not contains";
238
+ "=?": "=?";
239
+ }>;
240
+ value: z.ZodOptional<z.ZodJSONSchema>;
241
+ valueFrom: z.ZodOptional<z.ZodString>;
242
+ }, z.core.$strict>, z.ZodObject<{
243
+ any: z.ZodArray<typeof FilterItemSchema>;
244
+ }, z.core.$strict>, z.ZodObject<{
245
+ all: z.ZodArray<typeof FilterItemSchema>;
246
+ }, z.core.$strict>]>>>;
162
247
  into: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
163
248
  then: z.ZodOptional<z.ZodArray<typeof ActionStepSchema>>;
164
249
  }, z.core.$strict>;
@@ -183,6 +268,35 @@ export declare const ActionStepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
183
268
  title: z.ZodOptional<z.ZodString>;
184
269
  record: z.ZodOptional<z.ZodString>;
185
270
  values: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
271
+ filter: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
272
+ field: z.ZodString;
273
+ op: z.ZodEnum<{
274
+ set: "set";
275
+ "=": "=";
276
+ "!=": "!=";
277
+ "<": "<";
278
+ ">": ">";
279
+ "<=": "<=";
280
+ ">=": ">=";
281
+ in: "in";
282
+ "not in": "not in";
283
+ like: "like";
284
+ ilike: "ilike";
285
+ startswith: "startswith";
286
+ endswith: "endswith";
287
+ notset: "notset";
288
+ between: "between";
289
+ contains: "contains";
290
+ "not contains": "not contains";
291
+ "=?": "=?";
292
+ }>;
293
+ value: z.ZodOptional<z.ZodJSONSchema>;
294
+ valueFrom: z.ZodOptional<z.ZodString>;
295
+ }, z.core.$strict>, z.ZodObject<{
296
+ any: z.ZodArray<typeof FilterItemSchema>;
297
+ }, z.core.$strict>, z.ZodObject<{
298
+ all: z.ZodArray<typeof FilterItemSchema>;
299
+ }, z.core.$strict>]>>>;
186
300
  into: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
187
301
  then: z.ZodOptional<z.ZodArray<typeof ActionStepSchema>>;
188
302
  }, z.core.$strict>, z.ZodObject<{
@@ -236,6 +350,34 @@ export declare const ActionStepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
236
350
  }, z.core.$strict>, z.ZodObject<{
237
351
  do: z.ZodLiteral<"close">;
238
352
  when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
353
+ }, z.core.$strict>, z.ZodObject<{
354
+ do: z.ZodLiteral<"reload">;
355
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
356
+ }, z.core.$strict>, z.ZodObject<{
357
+ do: z.ZodLiteral<"openUrl">;
358
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
359
+ url: z.ZodString;
360
+ newTab: z.ZodOptional<z.ZodBoolean>;
361
+ }, z.core.$strict>, z.ZodObject<{
362
+ do: z.ZodLiteral<"archive">;
363
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
364
+ }, z.core.$strict>, z.ZodObject<{
365
+ do: z.ZodLiteral<"unarchive">;
366
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
367
+ }, z.core.$strict>, z.ZodObject<{
368
+ do: z.ZodLiteral<"duplicate">;
369
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
370
+ }, z.core.$strict>, z.ZodObject<{
371
+ do: z.ZodLiteral<"delete">;
372
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
373
+ }, z.core.$strict>, z.ZodObject<{
374
+ do: z.ZodLiteral<"post">;
375
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
376
+ message: z.ZodString;
377
+ kind: z.ZodOptional<z.ZodEnum<{
378
+ message: "message";
379
+ note: "note";
380
+ }>>;
239
381
  }, z.core.$strict>], "do">;
240
382
  export declare const ActionStepsSchema: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
241
383
  do: z.ZodLiteral<"open">;
@@ -258,6 +400,35 @@ export declare const ActionStepsSchema: z.ZodArray<z.ZodDiscriminatedUnion<[z.Zo
258
400
  title: z.ZodOptional<z.ZodString>;
259
401
  record: z.ZodOptional<z.ZodString>;
260
402
  values: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
403
+ filter: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
404
+ field: z.ZodString;
405
+ op: z.ZodEnum<{
406
+ set: "set";
407
+ "=": "=";
408
+ "!=": "!=";
409
+ "<": "<";
410
+ ">": ">";
411
+ "<=": "<=";
412
+ ">=": ">=";
413
+ in: "in";
414
+ "not in": "not in";
415
+ like: "like";
416
+ ilike: "ilike";
417
+ startswith: "startswith";
418
+ endswith: "endswith";
419
+ notset: "notset";
420
+ between: "between";
421
+ contains: "contains";
422
+ "not contains": "not contains";
423
+ "=?": "=?";
424
+ }>;
425
+ value: z.ZodOptional<z.ZodJSONSchema>;
426
+ valueFrom: z.ZodOptional<z.ZodString>;
427
+ }, z.core.$strict>, z.ZodObject<{
428
+ any: z.ZodArray<typeof FilterItemSchema>;
429
+ }, z.core.$strict>, z.ZodObject<{
430
+ all: z.ZodArray<typeof FilterItemSchema>;
431
+ }, z.core.$strict>]>>>;
261
432
  into: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
262
433
  then: z.ZodOptional<z.ZodArray<typeof ActionStepSchema>>;
263
434
  }, z.core.$strict>, z.ZodObject<{
@@ -311,6 +482,34 @@ export declare const ActionStepsSchema: z.ZodArray<z.ZodDiscriminatedUnion<[z.Zo
311
482
  }, z.core.$strict>, z.ZodObject<{
312
483
  do: z.ZodLiteral<"close">;
313
484
  when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
485
+ }, z.core.$strict>, z.ZodObject<{
486
+ do: z.ZodLiteral<"reload">;
487
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
488
+ }, z.core.$strict>, z.ZodObject<{
489
+ do: z.ZodLiteral<"openUrl">;
490
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
491
+ url: z.ZodString;
492
+ newTab: z.ZodOptional<z.ZodBoolean>;
493
+ }, z.core.$strict>, z.ZodObject<{
494
+ do: z.ZodLiteral<"archive">;
495
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
496
+ }, z.core.$strict>, z.ZodObject<{
497
+ do: z.ZodLiteral<"unarchive">;
498
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
499
+ }, z.core.$strict>, z.ZodObject<{
500
+ do: z.ZodLiteral<"duplicate">;
501
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
502
+ }, z.core.$strict>, z.ZodObject<{
503
+ do: z.ZodLiteral<"delete">;
504
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
505
+ }, z.core.$strict>, z.ZodObject<{
506
+ do: z.ZodLiteral<"post">;
507
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
508
+ message: z.ZodString;
509
+ kind: z.ZodOptional<z.ZodEnum<{
510
+ message: "message";
511
+ note: "note";
512
+ }>>;
314
513
  }, z.core.$strict>], "do">>;
315
514
  export declare const PageEventsSchema: z.ZodObject<{
316
515
  open: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
@@ -334,6 +533,35 @@ export declare const PageEventsSchema: z.ZodObject<{
334
533
  title: z.ZodOptional<z.ZodString>;
335
534
  record: z.ZodOptional<z.ZodString>;
336
535
  values: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
536
+ filter: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
537
+ field: z.ZodString;
538
+ op: z.ZodEnum<{
539
+ set: "set";
540
+ "=": "=";
541
+ "!=": "!=";
542
+ "<": "<";
543
+ ">": ">";
544
+ "<=": "<=";
545
+ ">=": ">=";
546
+ in: "in";
547
+ "not in": "not in";
548
+ like: "like";
549
+ ilike: "ilike";
550
+ startswith: "startswith";
551
+ endswith: "endswith";
552
+ notset: "notset";
553
+ between: "between";
554
+ contains: "contains";
555
+ "not contains": "not contains";
556
+ "=?": "=?";
557
+ }>;
558
+ value: z.ZodOptional<z.ZodJSONSchema>;
559
+ valueFrom: z.ZodOptional<z.ZodString>;
560
+ }, z.core.$strict>, z.ZodObject<{
561
+ any: z.ZodArray<typeof FilterItemSchema>;
562
+ }, z.core.$strict>, z.ZodObject<{
563
+ all: z.ZodArray<typeof FilterItemSchema>;
564
+ }, z.core.$strict>]>>>;
337
565
  into: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
338
566
  then: z.ZodOptional<z.ZodArray<typeof ActionStepSchema>>;
339
567
  }, z.core.$strict>, z.ZodObject<{
@@ -387,6 +615,34 @@ export declare const PageEventsSchema: z.ZodObject<{
387
615
  }, z.core.$strict>, z.ZodObject<{
388
616
  do: z.ZodLiteral<"close">;
389
617
  when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
618
+ }, z.core.$strict>, z.ZodObject<{
619
+ do: z.ZodLiteral<"reload">;
620
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
621
+ }, z.core.$strict>, z.ZodObject<{
622
+ do: z.ZodLiteral<"openUrl">;
623
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
624
+ url: z.ZodString;
625
+ newTab: z.ZodOptional<z.ZodBoolean>;
626
+ }, z.core.$strict>, z.ZodObject<{
627
+ do: z.ZodLiteral<"archive">;
628
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
629
+ }, z.core.$strict>, z.ZodObject<{
630
+ do: z.ZodLiteral<"unarchive">;
631
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
632
+ }, z.core.$strict>, z.ZodObject<{
633
+ do: z.ZodLiteral<"duplicate">;
634
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
635
+ }, z.core.$strict>, z.ZodObject<{
636
+ do: z.ZodLiteral<"delete">;
637
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
638
+ }, z.core.$strict>, z.ZodObject<{
639
+ do: z.ZodLiteral<"post">;
640
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
641
+ message: z.ZodString;
642
+ kind: z.ZodOptional<z.ZodEnum<{
643
+ message: "message";
644
+ note: "note";
645
+ }>>;
390
646
  }, z.core.$strict>], "do">>>;
391
647
  change: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
392
648
  do: z.ZodLiteral<"open">;
@@ -409,6 +665,35 @@ export declare const PageEventsSchema: z.ZodObject<{
409
665
  title: z.ZodOptional<z.ZodString>;
410
666
  record: z.ZodOptional<z.ZodString>;
411
667
  values: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
668
+ filter: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
669
+ field: z.ZodString;
670
+ op: z.ZodEnum<{
671
+ set: "set";
672
+ "=": "=";
673
+ "!=": "!=";
674
+ "<": "<";
675
+ ">": ">";
676
+ "<=": "<=";
677
+ ">=": ">=";
678
+ in: "in";
679
+ "not in": "not in";
680
+ like: "like";
681
+ ilike: "ilike";
682
+ startswith: "startswith";
683
+ endswith: "endswith";
684
+ notset: "notset";
685
+ between: "between";
686
+ contains: "contains";
687
+ "not contains": "not contains";
688
+ "=?": "=?";
689
+ }>;
690
+ value: z.ZodOptional<z.ZodJSONSchema>;
691
+ valueFrom: z.ZodOptional<z.ZodString>;
692
+ }, z.core.$strict>, z.ZodObject<{
693
+ any: z.ZodArray<typeof FilterItemSchema>;
694
+ }, z.core.$strict>, z.ZodObject<{
695
+ all: z.ZodArray<typeof FilterItemSchema>;
696
+ }, z.core.$strict>]>>>;
412
697
  into: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
413
698
  then: z.ZodOptional<z.ZodArray<typeof ActionStepSchema>>;
414
699
  }, z.core.$strict>, z.ZodObject<{
@@ -462,6 +747,34 @@ export declare const PageEventsSchema: z.ZodObject<{
462
747
  }, z.core.$strict>, z.ZodObject<{
463
748
  do: z.ZodLiteral<"close">;
464
749
  when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
750
+ }, z.core.$strict>, z.ZodObject<{
751
+ do: z.ZodLiteral<"reload">;
752
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
753
+ }, z.core.$strict>, z.ZodObject<{
754
+ do: z.ZodLiteral<"openUrl">;
755
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
756
+ url: z.ZodString;
757
+ newTab: z.ZodOptional<z.ZodBoolean>;
758
+ }, z.core.$strict>, z.ZodObject<{
759
+ do: z.ZodLiteral<"archive">;
760
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
761
+ }, z.core.$strict>, z.ZodObject<{
762
+ do: z.ZodLiteral<"unarchive">;
763
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
764
+ }, z.core.$strict>, z.ZodObject<{
765
+ do: z.ZodLiteral<"duplicate">;
766
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
767
+ }, z.core.$strict>, z.ZodObject<{
768
+ do: z.ZodLiteral<"delete">;
769
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
770
+ }, z.core.$strict>, z.ZodObject<{
771
+ do: z.ZodLiteral<"post">;
772
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
773
+ message: z.ZodString;
774
+ kind: z.ZodOptional<z.ZodEnum<{
775
+ message: "message";
776
+ note: "note";
777
+ }>>;
465
778
  }, z.core.$strict>], "do">>>>;
466
779
  beforeSave: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
467
780
  do: z.ZodLiteral<"open">;
@@ -484,6 +797,35 @@ export declare const PageEventsSchema: z.ZodObject<{
484
797
  title: z.ZodOptional<z.ZodString>;
485
798
  record: z.ZodOptional<z.ZodString>;
486
799
  values: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
800
+ filter: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
801
+ field: z.ZodString;
802
+ op: z.ZodEnum<{
803
+ set: "set";
804
+ "=": "=";
805
+ "!=": "!=";
806
+ "<": "<";
807
+ ">": ">";
808
+ "<=": "<=";
809
+ ">=": ">=";
810
+ in: "in";
811
+ "not in": "not in";
812
+ like: "like";
813
+ ilike: "ilike";
814
+ startswith: "startswith";
815
+ endswith: "endswith";
816
+ notset: "notset";
817
+ between: "between";
818
+ contains: "contains";
819
+ "not contains": "not contains";
820
+ "=?": "=?";
821
+ }>;
822
+ value: z.ZodOptional<z.ZodJSONSchema>;
823
+ valueFrom: z.ZodOptional<z.ZodString>;
824
+ }, z.core.$strict>, z.ZodObject<{
825
+ any: z.ZodArray<typeof FilterItemSchema>;
826
+ }, z.core.$strict>, z.ZodObject<{
827
+ all: z.ZodArray<typeof FilterItemSchema>;
828
+ }, z.core.$strict>]>>>;
487
829
  into: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
488
830
  then: z.ZodOptional<z.ZodArray<typeof ActionStepSchema>>;
489
831
  }, z.core.$strict>, z.ZodObject<{
@@ -537,6 +879,34 @@ export declare const PageEventsSchema: z.ZodObject<{
537
879
  }, z.core.$strict>, z.ZodObject<{
538
880
  do: z.ZodLiteral<"close">;
539
881
  when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
882
+ }, z.core.$strict>, z.ZodObject<{
883
+ do: z.ZodLiteral<"reload">;
884
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
885
+ }, z.core.$strict>, z.ZodObject<{
886
+ do: z.ZodLiteral<"openUrl">;
887
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
888
+ url: z.ZodString;
889
+ newTab: z.ZodOptional<z.ZodBoolean>;
890
+ }, z.core.$strict>, z.ZodObject<{
891
+ do: z.ZodLiteral<"archive">;
892
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
893
+ }, z.core.$strict>, z.ZodObject<{
894
+ do: z.ZodLiteral<"unarchive">;
895
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
896
+ }, z.core.$strict>, z.ZodObject<{
897
+ do: z.ZodLiteral<"duplicate">;
898
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
899
+ }, z.core.$strict>, z.ZodObject<{
900
+ do: z.ZodLiteral<"delete">;
901
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
902
+ }, z.core.$strict>, z.ZodObject<{
903
+ do: z.ZodLiteral<"post">;
904
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
905
+ message: z.ZodString;
906
+ kind: z.ZodOptional<z.ZodEnum<{
907
+ message: "message";
908
+ note: "note";
909
+ }>>;
540
910
  }, z.core.$strict>], "do">>>;
541
911
  afterSave: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
542
912
  do: z.ZodLiteral<"open">;
@@ -559,6 +929,35 @@ export declare const PageEventsSchema: z.ZodObject<{
559
929
  title: z.ZodOptional<z.ZodString>;
560
930
  record: z.ZodOptional<z.ZodString>;
561
931
  values: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
932
+ filter: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
933
+ field: z.ZodString;
934
+ op: z.ZodEnum<{
935
+ set: "set";
936
+ "=": "=";
937
+ "!=": "!=";
938
+ "<": "<";
939
+ ">": ">";
940
+ "<=": "<=";
941
+ ">=": ">=";
942
+ in: "in";
943
+ "not in": "not in";
944
+ like: "like";
945
+ ilike: "ilike";
946
+ startswith: "startswith";
947
+ endswith: "endswith";
948
+ notset: "notset";
949
+ between: "between";
950
+ contains: "contains";
951
+ "not contains": "not contains";
952
+ "=?": "=?";
953
+ }>;
954
+ value: z.ZodOptional<z.ZodJSONSchema>;
955
+ valueFrom: z.ZodOptional<z.ZodString>;
956
+ }, z.core.$strict>, z.ZodObject<{
957
+ any: z.ZodArray<typeof FilterItemSchema>;
958
+ }, z.core.$strict>, z.ZodObject<{
959
+ all: z.ZodArray<typeof FilterItemSchema>;
960
+ }, z.core.$strict>]>>>;
562
961
  into: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
563
962
  then: z.ZodOptional<z.ZodArray<typeof ActionStepSchema>>;
564
963
  }, z.core.$strict>, z.ZodObject<{
@@ -612,6 +1011,34 @@ export declare const PageEventsSchema: z.ZodObject<{
612
1011
  }, z.core.$strict>, z.ZodObject<{
613
1012
  do: z.ZodLiteral<"close">;
614
1013
  when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
1014
+ }, z.core.$strict>, z.ZodObject<{
1015
+ do: z.ZodLiteral<"reload">;
1016
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
1017
+ }, z.core.$strict>, z.ZodObject<{
1018
+ do: z.ZodLiteral<"openUrl">;
1019
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
1020
+ url: z.ZodString;
1021
+ newTab: z.ZodOptional<z.ZodBoolean>;
1022
+ }, z.core.$strict>, z.ZodObject<{
1023
+ do: z.ZodLiteral<"archive">;
1024
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
1025
+ }, z.core.$strict>, z.ZodObject<{
1026
+ do: z.ZodLiteral<"unarchive">;
1027
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
1028
+ }, z.core.$strict>, z.ZodObject<{
1029
+ do: z.ZodLiteral<"duplicate">;
1030
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
1031
+ }, z.core.$strict>, z.ZodObject<{
1032
+ do: z.ZodLiteral<"delete">;
1033
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
1034
+ }, z.core.$strict>, z.ZodObject<{
1035
+ do: z.ZodLiteral<"post">;
1036
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
1037
+ message: z.ZodString;
1038
+ kind: z.ZodOptional<z.ZodEnum<{
1039
+ message: "message";
1040
+ note: "note";
1041
+ }>>;
615
1042
  }, z.core.$strict>], "do">>>;
616
1043
  show: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
617
1044
  do: z.ZodLiteral<"open">;
@@ -634,6 +1061,35 @@ export declare const PageEventsSchema: z.ZodObject<{
634
1061
  title: z.ZodOptional<z.ZodString>;
635
1062
  record: z.ZodOptional<z.ZodString>;
636
1063
  values: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1064
+ filter: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
1065
+ field: z.ZodString;
1066
+ op: z.ZodEnum<{
1067
+ set: "set";
1068
+ "=": "=";
1069
+ "!=": "!=";
1070
+ "<": "<";
1071
+ ">": ">";
1072
+ "<=": "<=";
1073
+ ">=": ">=";
1074
+ in: "in";
1075
+ "not in": "not in";
1076
+ like: "like";
1077
+ ilike: "ilike";
1078
+ startswith: "startswith";
1079
+ endswith: "endswith";
1080
+ notset: "notset";
1081
+ between: "between";
1082
+ contains: "contains";
1083
+ "not contains": "not contains";
1084
+ "=?": "=?";
1085
+ }>;
1086
+ value: z.ZodOptional<z.ZodJSONSchema>;
1087
+ valueFrom: z.ZodOptional<z.ZodString>;
1088
+ }, z.core.$strict>, z.ZodObject<{
1089
+ any: z.ZodArray<typeof FilterItemSchema>;
1090
+ }, z.core.$strict>, z.ZodObject<{
1091
+ all: z.ZodArray<typeof FilterItemSchema>;
1092
+ }, z.core.$strict>]>>>;
637
1093
  into: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
638
1094
  then: z.ZodOptional<z.ZodArray<typeof ActionStepSchema>>;
639
1095
  }, z.core.$strict>, z.ZodObject<{
@@ -687,6 +1143,34 @@ export declare const PageEventsSchema: z.ZodObject<{
687
1143
  }, z.core.$strict>, z.ZodObject<{
688
1144
  do: z.ZodLiteral<"close">;
689
1145
  when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
1146
+ }, z.core.$strict>, z.ZodObject<{
1147
+ do: z.ZodLiteral<"reload">;
1148
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
1149
+ }, z.core.$strict>, z.ZodObject<{
1150
+ do: z.ZodLiteral<"openUrl">;
1151
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
1152
+ url: z.ZodString;
1153
+ newTab: z.ZodOptional<z.ZodBoolean>;
1154
+ }, z.core.$strict>, z.ZodObject<{
1155
+ do: z.ZodLiteral<"archive">;
1156
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
1157
+ }, z.core.$strict>, z.ZodObject<{
1158
+ do: z.ZodLiteral<"unarchive">;
1159
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
1160
+ }, z.core.$strict>, z.ZodObject<{
1161
+ do: z.ZodLiteral<"duplicate">;
1162
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
1163
+ }, z.core.$strict>, z.ZodObject<{
1164
+ do: z.ZodLiteral<"delete">;
1165
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
1166
+ }, z.core.$strict>, z.ZodObject<{
1167
+ do: z.ZodLiteral<"post">;
1168
+ when: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
1169
+ message: z.ZodString;
1170
+ kind: z.ZodOptional<z.ZodEnum<{
1171
+ message: "message";
1172
+ note: "note";
1173
+ }>>;
690
1174
  }, z.core.$strict>], "do">>>>;
691
1175
  }, z.core.$strict>;
692
1176
  export {};