@fieldia/core 0.23.0 → 0.25.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 (221) hide show
  1. package/README.md +211 -3
  2. package/package.json +1 -1
  3. package/schema/page.schema.json +1051 -325
  4. package/src/index.d.mts +9 -2
  5. package/src/index.d.ts +9 -2
  6. package/src/index.js +31 -1
  7. package/src/index.js.map +1 -1
  8. package/src/index.mjs +12 -2
  9. package/src/index.mjs.map +1 -1
  10. package/src/lib/format/actions.d.mts +31 -1
  11. package/src/lib/format/actions.d.ts +31 -1
  12. package/src/lib/format/actions.js +1 -0
  13. package/src/lib/format/actions.js.map +1 -1
  14. package/src/lib/format/actions.mjs +1 -0
  15. package/src/lib/format/actions.mjs.map +1 -1
  16. package/src/lib/format/autofill-group.d.mts +12 -0
  17. package/src/lib/format/autofill-group.d.ts +12 -0
  18. package/src/lib/format/autofill-group.js +23 -0
  19. package/src/lib/format/autofill-group.js.map +1 -0
  20. package/src/lib/format/autofill-group.mjs +19 -0
  21. package/src/lib/format/autofill-group.mjs.map +1 -0
  22. package/src/lib/format/autofill.d.mts +14 -0
  23. package/src/lib/format/autofill.d.ts +14 -0
  24. package/src/lib/format/autofill.js +54 -0
  25. package/src/lib/format/autofill.js.map +1 -0
  26. package/src/lib/format/autofill.mjs +48 -0
  27. package/src/lib/format/autofill.mjs.map +1 -0
  28. package/src/lib/format/bulk-edit.d.mts +18 -0
  29. package/src/lib/format/bulk-edit.d.ts +18 -0
  30. package/src/lib/format/bulk-edit.js +26 -0
  31. package/src/lib/format/bulk-edit.js.map +1 -0
  32. package/src/lib/format/bulk-edit.mjs +21 -0
  33. package/src/lib/format/bulk-edit.mjs.map +1 -0
  34. package/src/lib/format/duplicate-kinds.d.mts +10 -0
  35. package/src/lib/format/duplicate-kinds.d.ts +10 -0
  36. package/src/lib/format/duplicate-kinds.js +14 -0
  37. package/src/lib/format/duplicate-kinds.js.map +1 -0
  38. package/src/lib/format/duplicate-kinds.mjs +10 -0
  39. package/src/lib/format/duplicate-kinds.mjs.map +1 -0
  40. package/src/lib/format/duplicates.d.mts +22 -0
  41. package/src/lib/format/duplicates.d.ts +22 -0
  42. package/src/lib/format/duplicates.js +24 -0
  43. package/src/lib/format/duplicates.js.map +1 -0
  44. package/src/lib/format/duplicates.mjs +21 -0
  45. package/src/lib/format/duplicates.mjs.map +1 -0
  46. package/src/lib/format/field.d.mts +291 -34
  47. package/src/lib/format/field.d.ts +291 -34
  48. package/src/lib/format/field.js +19 -4
  49. package/src/lib/format/field.js.map +1 -1
  50. package/src/lib/format/field.mjs +17 -2
  51. package/src/lib/format/field.mjs.map +1 -1
  52. package/src/lib/format/import-fields.d.mts +18 -0
  53. package/src/lib/format/import-fields.d.ts +18 -0
  54. package/src/lib/format/import-fields.js +26 -0
  55. package/src/lib/format/import-fields.js.map +1 -0
  56. package/src/lib/format/import-fields.mjs +21 -0
  57. package/src/lib/format/import-fields.mjs.map +1 -0
  58. package/src/lib/format/layout.d.mts +7357 -3127
  59. package/src/lib/format/layout.d.ts +7357 -3127
  60. package/src/lib/format/layout.js +108 -32
  61. package/src/lib/format/layout.js.map +1 -1
  62. package/src/lib/format/layout.mjs +107 -32
  63. package/src/lib/format/layout.mjs.map +1 -1
  64. package/src/lib/format/layout.types.d.mts +5 -2
  65. package/src/lib/format/layout.types.d.ts +5 -2
  66. package/src/lib/format/page.d.mts +1080 -106
  67. package/src/lib/format/page.d.ts +1080 -106
  68. package/src/lib/format/page.js +25 -0
  69. package/src/lib/format/page.js.map +1 -1
  70. package/src/lib/format/page.mjs +26 -1
  71. package/src/lib/format/page.mjs.map +1 -1
  72. package/src/lib/format/phone.d.mts +27 -0
  73. package/src/lib/format/phone.d.ts +27 -0
  74. package/src/lib/format/phone.js +43 -0
  75. package/src/lib/format/phone.js.map +1 -0
  76. package/src/lib/format/phone.mjs +39 -0
  77. package/src/lib/format/phone.mjs.map +1 -0
  78. package/src/lib/format/references.d.mts +39 -0
  79. package/src/lib/format/references.d.ts +39 -0
  80. package/src/lib/format/references.js +263 -20
  81. package/src/lib/format/references.js.map +1 -1
  82. package/src/lib/format/references.mjs +263 -20
  83. package/src/lib/format/references.mjs.map +1 -1
  84. package/src/lib/format/slots-options.d.mts +26 -0
  85. package/src/lib/format/slots-options.d.ts +26 -0
  86. package/src/lib/format/slots-options.js +35 -0
  87. package/src/lib/format/slots-options.js.map +1 -0
  88. package/src/lib/format/slots-options.mjs +31 -0
  89. package/src/lib/format/slots-options.mjs.map +1 -0
  90. package/src/lib/format/translate.js +8 -4
  91. package/src/lib/format/translate.js.map +1 -1
  92. package/src/lib/format/translate.mjs +8 -4
  93. package/src/lib/format/translate.mjs.map +1 -1
  94. package/src/lib/format/upgrade.d.mts +8 -3
  95. package/src/lib/format/upgrade.d.ts +8 -3
  96. package/src/lib/format/upgrade.js +8 -3
  97. package/src/lib/format/upgrade.js.map +1 -1
  98. package/src/lib/format/upgrade.mjs +8 -3
  99. package/src/lib/format/upgrade.mjs.map +1 -1
  100. package/src/lib/format/version.d.mts +2 -2
  101. package/src/lib/format/version.d.ts +2 -2
  102. package/src/lib/format/version.js +2 -2
  103. package/src/lib/format/version.js.map +1 -1
  104. package/src/lib/format/version.mjs +2 -2
  105. package/src/lib/format/version.mjs.map +1 -1
  106. package/src/lib/format/zoned.d.mts +8 -0
  107. package/src/lib/format/zoned.d.ts +8 -0
  108. package/src/lib/format/zoned.js +36 -0
  109. package/src/lib/format/zoned.js.map +1 -0
  110. package/src/lib/format/zoned.mjs +33 -0
  111. package/src/lib/format/zoned.mjs.map +1 -0
  112. package/src/lib/record/check.d.mts +6 -1
  113. package/src/lib/record/check.d.ts +6 -1
  114. package/src/lib/record/check.js +12 -4
  115. package/src/lib/record/check.js.map +1 -1
  116. package/src/lib/record/check.mjs +12 -4
  117. package/src/lib/record/check.mjs.map +1 -1
  118. package/src/lib/record/data-source.d.mts +309 -3
  119. package/src/lib/record/data-source.d.ts +309 -3
  120. package/src/lib/record/data-source.js +16 -0
  121. package/src/lib/record/data-source.js.map +1 -1
  122. package/src/lib/record/data-source.mjs +15 -0
  123. package/src/lib/record/data-source.mjs.map +1 -1
  124. package/src/lib/record/form.d.mts +116 -25
  125. package/src/lib/record/form.d.ts +116 -25
  126. package/src/lib/record/form.js +457 -78
  127. package/src/lib/record/form.js.map +1 -1
  128. package/src/lib/record/form.mjs +457 -78
  129. package/src/lib/record/form.mjs.map +1 -1
  130. package/src/lib/record/input-rules.d.mts +51 -9
  131. package/src/lib/record/input-rules.d.ts +51 -9
  132. package/src/lib/record/input-rules.js +119 -20
  133. package/src/lib/record/input-rules.js.map +1 -1
  134. package/src/lib/record/input-rules.mjs +118 -19
  135. package/src/lib/record/input-rules.mjs.map +1 -1
  136. package/src/lib/record/inputs.js +4 -2
  137. package/src/lib/record/inputs.js.map +1 -1
  138. package/src/lib/record/inputs.mjs +4 -2
  139. package/src/lib/record/inputs.mjs.map +1 -1
  140. package/src/lib/record/limits.d.mts +1 -1
  141. package/src/lib/record/limits.d.ts +1 -1
  142. package/src/lib/record/limits.js +4 -2
  143. package/src/lib/record/limits.js.map +1 -1
  144. package/src/lib/record/limits.mjs +4 -2
  145. package/src/lib/record/limits.mjs.map +1 -1
  146. package/src/lib/record/locales/ar.js +3 -2
  147. package/src/lib/record/locales/ar.js.map +1 -1
  148. package/src/lib/record/locales/ar.mjs +3 -2
  149. package/src/lib/record/locales/ar.mjs.map +1 -1
  150. package/src/lib/record/locales/de.js +3 -2
  151. package/src/lib/record/locales/de.js.map +1 -1
  152. package/src/lib/record/locales/de.mjs +3 -2
  153. package/src/lib/record/locales/de.mjs.map +1 -1
  154. package/src/lib/record/locales/fr.js +3 -2
  155. package/src/lib/record/locales/fr.js.map +1 -1
  156. package/src/lib/record/locales/fr.mjs +3 -2
  157. package/src/lib/record/locales/fr.mjs.map +1 -1
  158. package/src/lib/record/memory-data-source.d.mts +20 -2
  159. package/src/lib/record/memory-data-source.d.ts +20 -2
  160. package/src/lib/record/memory-data-source.js +153 -35
  161. package/src/lib/record/memory-data-source.js.map +1 -1
  162. package/src/lib/record/memory-data-source.mjs +154 -36
  163. package/src/lib/record/memory-data-source.mjs.map +1 -1
  164. package/src/lib/record/memory-duplicates.d.mts +19 -0
  165. package/src/lib/record/memory-duplicates.d.ts +19 -0
  166. package/src/lib/record/memory-duplicates.js +78 -0
  167. package/src/lib/record/memory-duplicates.js.map +1 -0
  168. package/src/lib/record/memory-duplicates.mjs +74 -0
  169. package/src/lib/record/memory-duplicates.mjs.map +1 -0
  170. package/src/lib/record/memory-schedules.d.mts +45 -0
  171. package/src/lib/record/memory-schedules.d.ts +45 -0
  172. package/src/lib/record/memory-schedules.js +81 -0
  173. package/src/lib/record/memory-schedules.js.map +1 -0
  174. package/src/lib/record/memory-schedules.mjs +78 -0
  175. package/src/lib/record/memory-schedules.mjs.map +1 -0
  176. package/src/lib/record/messages.d.mts +3 -1
  177. package/src/lib/record/messages.d.ts +3 -1
  178. package/src/lib/record/messages.js +3 -2
  179. package/src/lib/record/messages.js.map +1 -1
  180. package/src/lib/record/messages.mjs +3 -2
  181. package/src/lib/record/messages.mjs.map +1 -1
  182. package/src/lib/record/periods.d.mts +47 -0
  183. package/src/lib/record/periods.d.ts +47 -0
  184. package/src/lib/record/periods.js +86 -0
  185. package/src/lib/record/periods.js.map +1 -0
  186. package/src/lib/record/periods.mjs +79 -0
  187. package/src/lib/record/periods.mjs.map +1 -0
  188. package/src/lib/record/rules.js +5 -6
  189. package/src/lib/record/rules.js.map +1 -1
  190. package/src/lib/record/rules.mjs +5 -6
  191. package/src/lib/record/rules.mjs.map +1 -1
  192. package/src/lib/record/run.d.mts +75 -9
  193. package/src/lib/record/run.d.ts +75 -9
  194. package/src/lib/record/run.js +169 -26
  195. package/src/lib/record/run.js.map +1 -1
  196. package/src/lib/record/run.mjs +170 -27
  197. package/src/lib/record/run.mjs.map +1 -1
  198. package/src/lib/record/search.d.mts +13 -3
  199. package/src/lib/record/search.d.ts +13 -3
  200. package/src/lib/record/search.js +11 -4
  201. package/src/lib/record/search.js.map +1 -1
  202. package/src/lib/record/search.mjs +11 -4
  203. package/src/lib/record/search.mjs.map +1 -1
  204. package/src/lib/record/waits.d.mts +32 -0
  205. package/src/lib/record/waits.d.ts +32 -0
  206. package/src/lib/record/waits.js +89 -0
  207. package/src/lib/record/waits.js.map +1 -0
  208. package/src/lib/record/waits.mjs +85 -0
  209. package/src/lib/record/waits.mjs.map +1 -0
  210. package/src/lib/record/zones.d.mts +57 -0
  211. package/src/lib/record/zones.d.ts +57 -0
  212. package/src/lib/record/zones.js +147 -0
  213. package/src/lib/record/zones.js.map +1 -0
  214. package/src/lib/record/zones.mjs +132 -0
  215. package/src/lib/record/zones.mjs.map +1 -0
  216. package/src/runtime.d.mts +19 -9
  217. package/src/runtime.d.ts +19 -9
  218. package/src/runtime.js +37 -2
  219. package/src/runtime.js.map +1 -1
  220. package/src/runtime.mjs +9 -2
  221. package/src/runtime.mjs.map +1 -1
@@ -6,7 +6,9 @@
6
6
  "type": "string",
7
7
  "enum": [
8
8
  "0.1",
9
- "0.2"
9
+ "0.2",
10
+ "0.3",
11
+ "0.4"
10
12
  ]
11
13
  },
12
14
  "id": {
@@ -349,6 +351,21 @@
349
351
  },
350
352
  "on": {
351
353
  "$ref": "#/$defs/PageEvents"
354
+ },
355
+ "botCheck": {
356
+ "$ref": "#/$defs/BotCheck"
357
+ },
358
+ "phone": {
359
+ "$ref": "#/$defs/PagePhone"
360
+ },
361
+ "timeZone": {
362
+ "$ref": "#/$defs/TimeZone"
363
+ },
364
+ "print": {
365
+ "$ref": "#/$defs/PagePrint"
366
+ },
367
+ "duplicates": {
368
+ "$ref": "#/$defs/PageDuplicates"
352
369
  }
353
370
  },
354
371
  "required": [
@@ -868,6 +885,9 @@
868
885
  "minimum": 1,
869
886
  "maximum": 7
870
887
  }
888
+ },
889
+ "timeZone": {
890
+ "$ref": "#/$defs/TimeZone"
871
891
  }
872
892
  },
873
893
  "required": [
@@ -1695,6 +1715,17 @@
1695
1715
  },
1696
1716
  "additionalProperties": false
1697
1717
  },
1718
+ "TimeZone": {
1719
+ "type": "string",
1720
+ "pattern": "^[A-Za-z][\\w+-]*(\\/[\\w+-]+)*$",
1721
+ "description": "A time zone by its IANA name: its dates and times are shown and typed on that zone's clock.",
1722
+ "examples": [
1723
+ "Africa/Cairo",
1724
+ "Europe/Berlin",
1725
+ "America/New_York",
1726
+ "UTC"
1727
+ ]
1728
+ },
1698
1729
  "Option": {
1699
1730
  "type": "object",
1700
1731
  "properties": {
@@ -2327,6 +2358,9 @@
2327
2358
  "minimum": 1,
2328
2359
  "maximum": 7
2329
2360
  }
2361
+ },
2362
+ "timeZone": {
2363
+ "$ref": "#/$defs/TimeZone"
2330
2364
  }
2331
2365
  },
2332
2366
  "required": [
@@ -2973,6 +3007,9 @@
2973
3007
  "minimum": 1,
2974
3008
  "maximum": 7
2975
3009
  }
3010
+ },
3011
+ "timeZone": {
3012
+ "$ref": "#/$defs/TimeZone"
2976
3013
  }
2977
3014
  },
2978
3015
  "required": [
@@ -4157,6 +4194,9 @@
4157
4194
  "minimum": 1,
4158
4195
  "maximum": 7
4159
4196
  }
4197
+ },
4198
+ "timeZone": {
4199
+ "$ref": "#/$defs/TimeZone"
4160
4200
  }
4161
4201
  },
4162
4202
  "required": [
@@ -5770,6 +5810,22 @@
5770
5810
  "$ref": "#/$defs/PlaceholderWhen"
5771
5811
  }
5772
5812
  },
5813
+ "autocomplete": {
5814
+ "type": "string",
5815
+ "pattern": "^(?:on|off|(?:section-\\S*(?: +(?:shipping|billing))?|shipping|billing)|(?:(?:section-\\S*(?: +(?:shipping|billing))?|shipping|billing) +)?(?:name|honorific-prefix|given-name|additional-name|family-name|honorific-suffix|nickname|username|new-password|current-password|one-time-code|organization-title|organization|street-address|address-line1|address-line2|address-line3|address-level4|address-level3|address-level2|address-level1|country|country-name|postal-code|cc-name|cc-given-name|cc-additional-name|cc-family-name|cc-number|cc-exp|cc-exp-month|cc-exp-year|cc-csc|cc-type|transaction-currency|transaction-amount|language|bday|bday-day|bday-month|bday-year|sex|url|photo|(?:(?:home|work|mobile|fax|pager) +)?(?:tel|tel-country-code|tel-national|tel-area-code|tel-local|tel-local-prefix|tel-local-suffix|tel-extension|email|impp))(?: +webauthn)?)$"
5816
+ },
5817
+ "inputmode": {
5818
+ "type": "string",
5819
+ "enum": [
5820
+ "text",
5821
+ "numeric",
5822
+ "decimal",
5823
+ "tel",
5824
+ "email",
5825
+ "url",
5826
+ "search"
5827
+ ]
5828
+ },
5773
5829
  "help": {
5774
5830
  "type": "string"
5775
5831
  },
@@ -7020,6 +7076,30 @@
7020
7076
  "message"
7021
7077
  ],
7022
7078
  "additionalProperties": false
7079
+ },
7080
+ {
7081
+ "type": "object",
7082
+ "properties": {
7083
+ "do": {
7084
+ "type": "string",
7085
+ "const": "print"
7086
+ },
7087
+ "when": {
7088
+ "anyOf": [
7089
+ {
7090
+ "type": "boolean"
7091
+ },
7092
+ {
7093
+ "type": "string",
7094
+ "minLength": 1
7095
+ }
7096
+ ]
7097
+ }
7098
+ },
7099
+ "required": [
7100
+ "do"
7101
+ ],
7102
+ "additionalProperties": false
7023
7103
  }
7024
7104
  ]
7025
7105
  },
@@ -7047,7 +7127,8 @@
7047
7127
  "archive",
7048
7128
  "unarchive",
7049
7129
  "duplicate",
7050
- "delete"
7130
+ "delete",
7131
+ "print"
7051
7132
  ]
7052
7133
  },
7053
7134
  "group": {
@@ -7531,6 +7612,9 @@
7531
7612
  },
7532
7613
  {
7533
7614
  "$ref": "#/$defs/MapNode"
7615
+ },
7616
+ {
7617
+ "$ref": "#/$defs/RelatedNode"
7534
7618
  }
7535
7619
  ]
7536
7620
  },
@@ -8221,177 +8305,74 @@
8221
8305
  ],
8222
8306
  "additionalProperties": false
8223
8307
  },
8224
- "HelpShown": {
8225
- "type": "string",
8226
- "enum": [
8227
- "below",
8228
- "tooltip",
8229
- "both"
8230
- ]
8231
- },
8232
- "AnswerRule": {
8233
- "type": "object",
8234
- "properties": {
8235
- "minLength": {
8236
- "type": "integer",
8237
- "minimum": 0,
8238
- "maximum": 9007199254740991
8239
- },
8240
- "maxLength": {
8241
- "type": "integer",
8242
- "minimum": 1,
8243
- "maximum": 9007199254740991
8244
- },
8245
- "pattern": {
8246
- "type": "string",
8247
- "minLength": 1
8248
- },
8249
- "endsWith": {
8250
- "type": "string",
8251
- "minLength": 1
8252
- },
8253
- "min": {
8254
- "type": "number"
8255
- },
8256
- "max": {
8257
- "type": "number"
8258
- },
8259
- "atLeast": {
8260
- "type": "integer",
8261
- "minimum": 0,
8262
- "maximum": 9007199254740991
8263
- },
8264
- "atMost": {
8265
- "type": "integer",
8266
- "minimum": 1,
8267
- "maximum": 9007199254740991
8268
- },
8269
- "date": {
8270
- "type": "string",
8271
- "enum": [
8272
- "past",
8273
- "future"
8274
- ]
8275
- },
8276
- "distinct": {
8277
- "type": "string",
8278
- "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
8279
- },
8280
- "holds": {
8281
- "type": "string",
8282
- "minLength": 1
8283
- },
8284
- "when": {
8285
- "$ref": "#/$defs/Modifier"
8286
- },
8287
- "message": {
8288
- "type": "string"
8289
- },
8290
- "level": {
8291
- "type": "string",
8292
- "enum": [
8293
- "error",
8294
- "warning"
8295
- ]
8296
- }
8297
- },
8298
- "additionalProperties": false
8299
- },
8300
- "HeadLink": {
8308
+ "RelatedNode": {
8301
8309
  "type": "object",
8302
8310
  "properties": {
8303
8311
  "type": {
8304
8312
  "type": "string",
8305
- "const": "link"
8313
+ "const": "related"
8306
8314
  },
8307
8315
  "id": {
8308
8316
  "type": "string",
8309
8317
  "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]*$"
8310
8318
  },
8319
+ "title": {
8320
+ "type": "string"
8321
+ },
8311
8322
  "icon": {
8312
8323
  "type": "string",
8313
8324
  "minLength": 1
8314
8325
  },
8315
- "field": {
8326
+ "model": {
8316
8327
  "type": "string",
8317
- "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
8318
- },
8319
- "words": {
8320
- "$ref": "#/$defs/PluralWords"
8328
+ "minLength": 1
8321
8329
  },
8322
- "target": {
8330
+ "field": {
8323
8331
  "type": "string",
8324
- "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]*$"
8332
+ "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
8325
8333
  },
8326
- "steps": {
8327
- "minItems": 1,
8328
- "type": "array",
8329
- "items": {
8330
- "$ref": "#/$defs/ActionStep"
8334
+ "fields": {
8335
+ "type": "object",
8336
+ "propertyNames": {
8337
+ "type": "string",
8338
+ "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
8339
+ },
8340
+ "additionalProperties": {
8341
+ "$ref": "#/$defs/LinkedField"
8331
8342
  }
8332
8343
  },
8333
- "invisible": {
8334
- "$ref": "#/$defs/Modifier"
8335
- },
8336
- "roles": {
8337
- "$ref": "#/$defs/Roles"
8338
- }
8339
- },
8340
- "required": [
8341
- "type",
8342
- "id",
8343
- "field",
8344
- "words"
8345
- ],
8346
- "additionalProperties": false
8347
- },
8348
- "HeadBand": {
8349
- "type": "object",
8350
- "properties": {
8351
- "tracks": {
8344
+ "columns": {
8352
8345
  "minItems": 1,
8353
- "maxItems": 4,
8354
8346
  "type": "array",
8355
8347
  "items": {
8356
8348
  "type": "string",
8357
- "pattern": "^\\d+(\\.\\d+)?(px|%|fr)$"
8349
+ "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
8358
8350
  }
8359
8351
  },
8360
- "labelWidth": {
8361
- "type": "integer",
8362
- "minimum": 48,
8363
- "maximum": 320
8364
- },
8365
- "children": {
8366
- "type": "array",
8367
- "items": {
8368
- "$ref": "#/$defs/LayoutNode"
8352
+ "cells": {
8353
+ "type": "object",
8354
+ "propertyNames": {
8355
+ "type": "string",
8356
+ "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
8357
+ },
8358
+ "additionalProperties": {
8359
+ "$ref": "#/$defs/ListCell"
8369
8360
  }
8370
- }
8371
- },
8372
- "required": [
8373
- "children"
8374
- ],
8375
- "additionalProperties": false
8376
- },
8377
- "SectionsNode": {
8378
- "type": "object",
8379
- "properties": {
8380
- "type": {
8381
- "type": "string",
8382
- "const": "sections"
8383
8361
  },
8384
- "id": {
8385
- "type": "string",
8386
- "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]*$"
8362
+ "card": {
8363
+ "$ref": "#/$defs/ListCard"
8387
8364
  },
8388
- "children": {
8365
+ "rowTones": {
8366
+ "minItems": 1,
8389
8367
  "type": "array",
8390
8368
  "items": {
8391
- "$ref": "#/$defs/LayoutNode"
8369
+ "$ref": "#/$defs/ToneWhen"
8392
8370
  }
8393
8371
  },
8394
- "footer": {
8372
+ "rowBold": {
8373
+ "$ref": "#/$defs/Modifier"
8374
+ },
8375
+ "rowButtons": {
8395
8376
  "minItems": 1,
8396
8377
  "type": "array",
8397
8378
  "items": {
@@ -8499,51 +8480,568 @@
8499
8480
  ],
8500
8481
  "additionalProperties": false
8501
8482
  }
8502
- }
8503
- },
8504
- "required": [
8505
- "type",
8506
- "id",
8507
- "children"
8508
- ],
8509
- "additionalProperties": false
8510
- },
8511
- "WizardNode": {
8512
- "type": "object",
8513
- "properties": {
8514
- "type": {
8515
- "type": "string",
8516
- "const": "wizard"
8517
- },
8518
- "id": {
8519
- "type": "string",
8520
- "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]*$"
8521
- },
8522
- "clickable": {
8523
- "type": "boolean"
8524
- },
8525
- "nextLabel": {
8526
- "type": "string",
8527
- "minLength": 1
8528
- },
8529
- "backLabel": {
8530
- "type": "string",
8531
- "minLength": 1
8532
- },
8533
- "finishLabel": {
8534
- "type": "string",
8535
- "minLength": 1
8536
8483
  },
8537
- "children": {
8484
+ "filter": {
8538
8485
  "minItems": 1,
8539
8486
  "type": "array",
8540
8487
  "items": {
8541
- "$ref": "#/$defs/StepNode"
8488
+ "$ref": "#/$defs/FilterItem"
8542
8489
  }
8543
- }
8544
- },
8545
- "required": [
8546
- "type",
8490
+ },
8491
+ "sort": {
8492
+ "type": "array",
8493
+ "items": {
8494
+ "type": "object",
8495
+ "properties": {
8496
+ "field": {
8497
+ "type": "string",
8498
+ "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
8499
+ },
8500
+ "desc": {
8501
+ "type": "boolean"
8502
+ }
8503
+ },
8504
+ "required": [
8505
+ "field"
8506
+ ],
8507
+ "additionalProperties": false
8508
+ }
8509
+ },
8510
+ "limit": {
8511
+ "type": "integer",
8512
+ "minimum": 1,
8513
+ "maximum": 100
8514
+ },
8515
+ "searchFields": {
8516
+ "minItems": 1,
8517
+ "type": "array",
8518
+ "items": {
8519
+ "type": "string",
8520
+ "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
8521
+ }
8522
+ },
8523
+ "viewAll": {
8524
+ "type": "object",
8525
+ "properties": {
8526
+ "page": {
8527
+ "type": "string",
8528
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]*$"
8529
+ },
8530
+ "as": {
8531
+ "type": "string",
8532
+ "enum": [
8533
+ "dialog",
8534
+ "panel",
8535
+ "page"
8536
+ ]
8537
+ }
8538
+ },
8539
+ "required": [
8540
+ "page"
8541
+ ],
8542
+ "additionalProperties": false
8543
+ },
8544
+ "create": {
8545
+ "type": "boolean"
8546
+ },
8547
+ "colspan": {
8548
+ "type": "integer",
8549
+ "minimum": 1,
8550
+ "maximum": 12
8551
+ },
8552
+ "invisible": {
8553
+ "$ref": "#/$defs/Modifier"
8554
+ },
8555
+ "roles": {
8556
+ "$ref": "#/$defs/Roles"
8557
+ },
8558
+ "hideOn": {
8559
+ "minItems": 1,
8560
+ "type": "array",
8561
+ "items": {
8562
+ "$ref": "#/$defs/ScreenWidth"
8563
+ }
8564
+ }
8565
+ },
8566
+ "required": [
8567
+ "type",
8568
+ "id",
8569
+ "model",
8570
+ "field",
8571
+ "fields",
8572
+ "columns"
8573
+ ],
8574
+ "additionalProperties": false
8575
+ },
8576
+ "ListCell": {
8577
+ "type": "object",
8578
+ "properties": {
8579
+ "widget": {
8580
+ "type": "string",
8581
+ "minLength": 1
8582
+ },
8583
+ "options": {
8584
+ "type": "object",
8585
+ "properties": {
8586
+ "clear": {
8587
+ "type": "boolean"
8588
+ }
8589
+ },
8590
+ "additionalProperties": {
8591
+ "$ref": "#/$defs/JsonValue"
8592
+ }
8593
+ },
8594
+ "lead": {
8595
+ "type": "object",
8596
+ "properties": {
8597
+ "field": {
8598
+ "type": "string",
8599
+ "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
8600
+ },
8601
+ "looks": {
8602
+ "type": "object",
8603
+ "propertyNames": {
8604
+ "type": "string"
8605
+ },
8606
+ "additionalProperties": {
8607
+ "type": "object",
8608
+ "properties": {
8609
+ "icon": {
8610
+ "type": "string",
8611
+ "minLength": 1
8612
+ },
8613
+ "colour": {
8614
+ "type": "string",
8615
+ "pattern": "^#[0-9a-fA-F]{6}$"
8616
+ }
8617
+ },
8618
+ "required": [
8619
+ "icon"
8620
+ ],
8621
+ "additionalProperties": false
8622
+ }
8623
+ }
8624
+ },
8625
+ "required": [
8626
+ "field",
8627
+ "looks"
8628
+ ],
8629
+ "additionalProperties": false
8630
+ },
8631
+ "width": {
8632
+ "anyOf": [
8633
+ {
8634
+ "type": "integer",
8635
+ "minimum": 1,
8636
+ "maximum": 200
8637
+ },
8638
+ {
8639
+ "type": "string",
8640
+ "pattern": "^([89]|[1-9]\\d{1,2}|[1-3]\\d{3}|4000)px$"
8641
+ }
8642
+ ]
8643
+ },
8644
+ "align": {
8645
+ "type": "string",
8646
+ "enum": [
8647
+ "start",
8648
+ "end"
8649
+ ]
8650
+ },
8651
+ "total": {
8652
+ "type": "string",
8653
+ "enum": [
8654
+ "sum",
8655
+ "avg",
8656
+ "min",
8657
+ "max",
8658
+ "count"
8659
+ ]
8660
+ },
8661
+ "rule": {
8662
+ "anyOf": [
8663
+ {
8664
+ "type": "boolean",
8665
+ "const": false
8666
+ },
8667
+ {
8668
+ "type": "string",
8669
+ "pattern": "^(\\d|[1-9]\\d|[1-3]\\d{2}|400)px$"
8670
+ }
8671
+ ]
8672
+ }
8673
+ },
8674
+ "additionalProperties": false
8675
+ },
8676
+ "ListCard": {
8677
+ "type": "object",
8678
+ "properties": {
8679
+ "title": {
8680
+ "type": "string",
8681
+ "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
8682
+ },
8683
+ "subtitle": {
8684
+ "type": "string",
8685
+ "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
8686
+ },
8687
+ "image": {
8688
+ "type": "string",
8689
+ "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
8690
+ },
8691
+ "fields": {
8692
+ "minItems": 1,
8693
+ "type": "array",
8694
+ "items": {
8695
+ "anyOf": [
8696
+ {
8697
+ "$ref": "#/$defs/CardPart"
8698
+ },
8699
+ {
8700
+ "minItems": 1,
8701
+ "type": "array",
8702
+ "items": {
8703
+ "$ref": "#/$defs/CardPart"
8704
+ }
8705
+ }
8706
+ ]
8707
+ }
8708
+ },
8709
+ "status": {
8710
+ "type": "string",
8711
+ "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
8712
+ },
8713
+ "labels": {
8714
+ "type": "boolean"
8715
+ },
8716
+ "lead": {
8717
+ "type": "boolean"
8718
+ }
8719
+ },
8720
+ "additionalProperties": false
8721
+ },
8722
+ "HelpShown": {
8723
+ "type": "string",
8724
+ "enum": [
8725
+ "below",
8726
+ "tooltip",
8727
+ "both"
8728
+ ]
8729
+ },
8730
+ "AnswerRule": {
8731
+ "type": "object",
8732
+ "properties": {
8733
+ "minLength": {
8734
+ "type": "integer",
8735
+ "minimum": 0,
8736
+ "maximum": 9007199254740991
8737
+ },
8738
+ "maxLength": {
8739
+ "type": "integer",
8740
+ "minimum": 1,
8741
+ "maximum": 9007199254740991
8742
+ },
8743
+ "pattern": {
8744
+ "type": "string",
8745
+ "minLength": 1
8746
+ },
8747
+ "endsWith": {
8748
+ "type": "string",
8749
+ "minLength": 1
8750
+ },
8751
+ "min": {
8752
+ "type": "number"
8753
+ },
8754
+ "max": {
8755
+ "type": "number"
8756
+ },
8757
+ "atLeast": {
8758
+ "type": "integer",
8759
+ "minimum": 0,
8760
+ "maximum": 9007199254740991
8761
+ },
8762
+ "atMost": {
8763
+ "type": "integer",
8764
+ "minimum": 1,
8765
+ "maximum": 9007199254740991
8766
+ },
8767
+ "date": {
8768
+ "type": "string",
8769
+ "enum": [
8770
+ "past",
8771
+ "future"
8772
+ ]
8773
+ },
8774
+ "distinct": {
8775
+ "type": "string",
8776
+ "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
8777
+ },
8778
+ "holds": {
8779
+ "type": "string",
8780
+ "minLength": 1
8781
+ },
8782
+ "when": {
8783
+ "$ref": "#/$defs/Modifier"
8784
+ },
8785
+ "message": {
8786
+ "type": "string"
8787
+ },
8788
+ "level": {
8789
+ "type": "string",
8790
+ "enum": [
8791
+ "error",
8792
+ "warning"
8793
+ ]
8794
+ }
8795
+ },
8796
+ "additionalProperties": false
8797
+ },
8798
+ "HeadLink": {
8799
+ "type": "object",
8800
+ "properties": {
8801
+ "type": {
8802
+ "type": "string",
8803
+ "const": "link"
8804
+ },
8805
+ "id": {
8806
+ "type": "string",
8807
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]*$"
8808
+ },
8809
+ "icon": {
8810
+ "type": "string",
8811
+ "minLength": 1
8812
+ },
8813
+ "field": {
8814
+ "type": "string",
8815
+ "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
8816
+ },
8817
+ "words": {
8818
+ "$ref": "#/$defs/PluralWords"
8819
+ },
8820
+ "target": {
8821
+ "type": "string",
8822
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]*$"
8823
+ },
8824
+ "steps": {
8825
+ "minItems": 1,
8826
+ "type": "array",
8827
+ "items": {
8828
+ "$ref": "#/$defs/ActionStep"
8829
+ }
8830
+ },
8831
+ "invisible": {
8832
+ "$ref": "#/$defs/Modifier"
8833
+ },
8834
+ "roles": {
8835
+ "$ref": "#/$defs/Roles"
8836
+ }
8837
+ },
8838
+ "required": [
8839
+ "type",
8840
+ "id",
8841
+ "field",
8842
+ "words"
8843
+ ],
8844
+ "additionalProperties": false
8845
+ },
8846
+ "HeadBand": {
8847
+ "type": "object",
8848
+ "properties": {
8849
+ "tracks": {
8850
+ "minItems": 1,
8851
+ "maxItems": 4,
8852
+ "type": "array",
8853
+ "items": {
8854
+ "type": "string",
8855
+ "pattern": "^\\d+(\\.\\d+)?(px|%|fr)$"
8856
+ }
8857
+ },
8858
+ "labelWidth": {
8859
+ "type": "integer",
8860
+ "minimum": 48,
8861
+ "maximum": 320
8862
+ },
8863
+ "children": {
8864
+ "type": "array",
8865
+ "items": {
8866
+ "$ref": "#/$defs/LayoutNode"
8867
+ }
8868
+ }
8869
+ },
8870
+ "required": [
8871
+ "children"
8872
+ ],
8873
+ "additionalProperties": false
8874
+ },
8875
+ "SectionsNode": {
8876
+ "type": "object",
8877
+ "properties": {
8878
+ "type": {
8879
+ "type": "string",
8880
+ "const": "sections"
8881
+ },
8882
+ "id": {
8883
+ "type": "string",
8884
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]*$"
8885
+ },
8886
+ "children": {
8887
+ "type": "array",
8888
+ "items": {
8889
+ "$ref": "#/$defs/LayoutNode"
8890
+ }
8891
+ },
8892
+ "footer": {
8893
+ "minItems": 1,
8894
+ "type": "array",
8895
+ "items": {
8896
+ "type": "object",
8897
+ "properties": {
8898
+ "type": {
8899
+ "type": "string",
8900
+ "const": "button"
8901
+ },
8902
+ "id": {
8903
+ "type": "string",
8904
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]*$"
8905
+ },
8906
+ "label": {
8907
+ "type": "string"
8908
+ },
8909
+ "steps": {
8910
+ "minItems": 1,
8911
+ "type": "array",
8912
+ "items": {
8913
+ "$ref": "#/$defs/ActionStep"
8914
+ }
8915
+ },
8916
+ "action": {
8917
+ "type": "string",
8918
+ "minLength": 1
8919
+ },
8920
+ "params": {
8921
+ "type": "object",
8922
+ "propertyNames": {
8923
+ "type": "string"
8924
+ },
8925
+ "additionalProperties": {
8926
+ "$ref": "#/$defs/JsonValue"
8927
+ }
8928
+ },
8929
+ "style": {
8930
+ "type": "string",
8931
+ "enum": [
8932
+ "primary",
8933
+ "secondary",
8934
+ "danger",
8935
+ "link"
8936
+ ]
8937
+ },
8938
+ "confirm": {
8939
+ "type": "string"
8940
+ },
8941
+ "icon": {
8942
+ "type": "string"
8943
+ },
8944
+ "hotkey": {
8945
+ "type": "string",
8946
+ "pattern": "^(shift\\+)?[a-z0-9]$"
8947
+ },
8948
+ "colspan": {
8949
+ "type": "integer",
8950
+ "minimum": 1,
8951
+ "maximum": 12
8952
+ },
8953
+ "invisible": {
8954
+ "$ref": "#/$defs/Modifier"
8955
+ },
8956
+ "roles": {
8957
+ "$ref": "#/$defs/Roles"
8958
+ },
8959
+ "hideOn": {
8960
+ "minItems": 1,
8961
+ "type": "array",
8962
+ "items": {
8963
+ "$ref": "#/$defs/ScreenWidth"
8964
+ }
8965
+ },
8966
+ "iconOnly": {
8967
+ "type": "boolean"
8968
+ },
8969
+ "pressed": {
8970
+ "$ref": "#/$defs/Modifier"
8971
+ },
8972
+ "pressedLabel": {
8973
+ "type": "string"
8974
+ },
8975
+ "menu": {
8976
+ "minItems": 1,
8977
+ "type": "array",
8978
+ "items": {
8979
+ "$ref": "#/$defs/MenuItem"
8980
+ }
8981
+ },
8982
+ "menuIcon": {
8983
+ "type": "string",
8984
+ "minLength": 1
8985
+ },
8986
+ "menuLabel": {
8987
+ "type": "string"
8988
+ },
8989
+ "primaryWhenChanged": {
8990
+ "type": "boolean"
8991
+ }
8992
+ },
8993
+ "required": [
8994
+ "type",
8995
+ "id",
8996
+ "label"
8997
+ ],
8998
+ "additionalProperties": false
8999
+ }
9000
+ }
9001
+ },
9002
+ "required": [
9003
+ "type",
9004
+ "id",
9005
+ "children"
9006
+ ],
9007
+ "additionalProperties": false
9008
+ },
9009
+ "WizardNode": {
9010
+ "type": "object",
9011
+ "properties": {
9012
+ "type": {
9013
+ "type": "string",
9014
+ "const": "wizard"
9015
+ },
9016
+ "id": {
9017
+ "type": "string",
9018
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]*$"
9019
+ },
9020
+ "clickable": {
9021
+ "type": "boolean"
9022
+ },
9023
+ "nextLabel": {
9024
+ "type": "string",
9025
+ "minLength": 1
9026
+ },
9027
+ "backLabel": {
9028
+ "type": "string",
9029
+ "minLength": 1
9030
+ },
9031
+ "finishLabel": {
9032
+ "type": "string",
9033
+ "minLength": 1
9034
+ },
9035
+ "children": {
9036
+ "minItems": 1,
9037
+ "type": "array",
9038
+ "items": {
9039
+ "$ref": "#/$defs/StepNode"
9040
+ }
9041
+ }
9042
+ },
9043
+ "required": [
9044
+ "type",
8547
9045
  "id",
8548
9046
  "children"
8549
9047
  ],
@@ -8662,31 +9160,272 @@
8662
9160
  "items": {
8663
9161
  "$ref": "#/$defs/FilterItem"
8664
9162
  }
9163
+ },
9164
+ "period": {
9165
+ "$ref": "#/$defs/FilterPeriod"
9166
+ }
9167
+ },
9168
+ "required": [
9169
+ "id",
9170
+ "label"
9171
+ ],
9172
+ "additionalProperties": false,
9173
+ "anyOf": [
9174
+ {
9175
+ "required": [
9176
+ "filter"
9177
+ ]
9178
+ },
9179
+ {
9180
+ "required": [
9181
+ "period"
9182
+ ]
9183
+ }
9184
+ ]
9185
+ }
9186
+ },
9187
+ "defaultFilters": {
9188
+ "type": "array",
9189
+ "items": {
9190
+ "type": "string",
9191
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]*$"
9192
+ }
9193
+ },
9194
+ "groupBy": {
9195
+ "type": "array",
9196
+ "items": {
9197
+ "type": "string",
9198
+ "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
9199
+ }
9200
+ },
9201
+ "actions": {
9202
+ "type": "array",
9203
+ "items": {
9204
+ "type": "object",
9205
+ "properties": {
9206
+ "type": {
9207
+ "type": "string",
9208
+ "const": "button"
9209
+ },
9210
+ "id": {
9211
+ "type": "string",
9212
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]*$"
9213
+ },
9214
+ "label": {
9215
+ "type": "string"
9216
+ },
9217
+ "steps": {
9218
+ "minItems": 1,
9219
+ "type": "array",
9220
+ "items": {
9221
+ "$ref": "#/$defs/ActionStep"
9222
+ }
9223
+ },
9224
+ "action": {
9225
+ "type": "string",
9226
+ "minLength": 1
9227
+ },
9228
+ "params": {
9229
+ "type": "object",
9230
+ "propertyNames": {
9231
+ "type": "string"
9232
+ },
9233
+ "additionalProperties": {
9234
+ "$ref": "#/$defs/JsonValue"
9235
+ }
9236
+ },
9237
+ "style": {
9238
+ "type": "string",
9239
+ "enum": [
9240
+ "primary",
9241
+ "secondary",
9242
+ "danger",
9243
+ "link"
9244
+ ]
9245
+ },
9246
+ "confirm": {
9247
+ "type": "string"
9248
+ },
9249
+ "icon": {
9250
+ "type": "string"
9251
+ },
9252
+ "hotkey": {
9253
+ "type": "string",
9254
+ "pattern": "^(shift\\+)?[a-z0-9]$"
9255
+ },
9256
+ "colspan": {
9257
+ "type": "integer",
9258
+ "minimum": 1,
9259
+ "maximum": 12
9260
+ },
9261
+ "invisible": {
9262
+ "$ref": "#/$defs/Modifier"
9263
+ },
9264
+ "roles": {
9265
+ "$ref": "#/$defs/Roles"
9266
+ },
9267
+ "hideOn": {
9268
+ "minItems": 1,
9269
+ "type": "array",
9270
+ "items": {
9271
+ "$ref": "#/$defs/ScreenWidth"
9272
+ }
9273
+ },
9274
+ "iconOnly": {
9275
+ "type": "boolean"
9276
+ },
9277
+ "pressed": {
9278
+ "$ref": "#/$defs/Modifier"
9279
+ },
9280
+ "pressedLabel": {
9281
+ "type": "string"
9282
+ },
9283
+ "menu": {
9284
+ "minItems": 1,
9285
+ "type": "array",
9286
+ "items": {
9287
+ "$ref": "#/$defs/MenuItem"
9288
+ }
9289
+ },
9290
+ "menuIcon": {
9291
+ "type": "string",
9292
+ "minLength": 1
9293
+ },
9294
+ "menuLabel": {
9295
+ "type": "string"
9296
+ },
9297
+ "primaryWhenChanged": {
9298
+ "type": "boolean"
9299
+ }
9300
+ },
9301
+ "required": [
9302
+ "type",
9303
+ "id",
9304
+ "label"
9305
+ ],
9306
+ "additionalProperties": false
9307
+ }
9308
+ },
9309
+ "map": {
9310
+ "$ref": "#/$defs/ListMap"
9311
+ },
9312
+ "calendar": {
9313
+ "$ref": "#/$defs/ListCalendar"
9314
+ },
9315
+ "cells": {
9316
+ "type": "object",
9317
+ "propertyNames": {
9318
+ "type": "string",
9319
+ "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
9320
+ },
9321
+ "additionalProperties": {
9322
+ "$ref": "#/$defs/ListCell"
9323
+ }
9324
+ },
9325
+ "choose": {
9326
+ "type": "boolean"
9327
+ },
9328
+ "sortable": {
9329
+ "type": "boolean"
9330
+ },
9331
+ "search": {
9332
+ "type": "string",
9333
+ "enum": [
9334
+ "bar",
9335
+ "fields"
9336
+ ]
9337
+ },
9338
+ "filterFields": {
9339
+ "minItems": 1,
9340
+ "type": "array",
9341
+ "items": {
9342
+ "type": "string",
9343
+ "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
9344
+ }
9345
+ },
9346
+ "filterLabels": {
9347
+ "type": "object",
9348
+ "propertyNames": {
9349
+ "type": "string",
9350
+ "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
9351
+ },
9352
+ "additionalProperties": {
9353
+ "type": "string",
9354
+ "minLength": 1
9355
+ }
9356
+ },
9357
+ "parentField": {
9358
+ "type": "string",
9359
+ "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
9360
+ },
9361
+ "export": {
9362
+ "type": "boolean"
9363
+ },
9364
+ "bulkEdit": {
9365
+ "anyOf": [
9366
+ {
9367
+ "type": "boolean"
9368
+ },
9369
+ {
9370
+ "minItems": 1,
9371
+ "type": "array",
9372
+ "items": {
9373
+ "type": "string",
9374
+ "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
8665
9375
  }
9376
+ }
9377
+ ]
9378
+ },
9379
+ "import": {
9380
+ "anyOf": [
9381
+ {
9382
+ "type": "boolean"
8666
9383
  },
8667
- "required": [
8668
- "id",
8669
- "label",
8670
- "filter"
8671
- ],
8672
- "additionalProperties": false
8673
- }
9384
+ {
9385
+ "minItems": 1,
9386
+ "type": "array",
9387
+ "items": {
9388
+ "type": "string",
9389
+ "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
9390
+ }
9391
+ }
9392
+ ]
8674
9393
  },
8675
- "defaultFilters": {
8676
- "type": "array",
8677
- "items": {
9394
+ "print": {
9395
+ "type": "boolean"
9396
+ },
9397
+ "card": {
9398
+ "$ref": "#/$defs/ListCard"
9399
+ },
9400
+ "gallery": {
9401
+ "$ref": "#/$defs/ListGallery"
9402
+ },
9403
+ "optionalColumns": {
9404
+ "type": "object",
9405
+ "propertyNames": {
8678
9406
  "type": "string",
8679
- "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]*$"
9407
+ "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
9408
+ },
9409
+ "additionalProperties": {
9410
+ "type": "string",
9411
+ "enum": [
9412
+ "show",
9413
+ "hide"
9414
+ ]
8680
9415
  }
8681
9416
  },
8682
- "groupBy": {
9417
+ "rowTones": {
9418
+ "minItems": 1,
8683
9419
  "type": "array",
8684
9420
  "items": {
8685
- "type": "string",
8686
- "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
9421
+ "$ref": "#/$defs/ToneWhen"
8687
9422
  }
8688
9423
  },
8689
- "actions": {
9424
+ "rowBold": {
9425
+ "$ref": "#/$defs/Modifier"
9426
+ },
9427
+ "rowButtons": {
9428
+ "minItems": 1,
8690
9429
  "type": "array",
8691
9430
  "items": {
8692
9431
  "type": "object",
@@ -8793,64 +9532,41 @@
8793
9532
  ],
8794
9533
  "additionalProperties": false
8795
9534
  }
9535
+ }
9536
+ },
9537
+ "required": [
9538
+ "type",
9539
+ "id",
9540
+ "columns"
9541
+ ],
9542
+ "additionalProperties": false
9543
+ },
9544
+ "FilterPeriod": {
9545
+ "type": "object",
9546
+ "properties": {
9547
+ "field": {
9548
+ "type": "string",
9549
+ "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
8796
9550
  },
8797
- "map": {
8798
- "$ref": "#/$defs/ListMap"
8799
- },
8800
- "calendar": {
8801
- "$ref": "#/$defs/ListCalendar"
8802
- },
8803
- "cells": {
8804
- "type": "object",
8805
- "propertyNames": {
8806
- "type": "string",
8807
- "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
8808
- },
8809
- "additionalProperties": {
8810
- "$ref": "#/$defs/ListCell"
8811
- }
8812
- },
8813
- "choose": {
8814
- "type": "boolean"
8815
- },
8816
- "sortable": {
8817
- "type": "boolean"
8818
- },
8819
- "search": {
9551
+ "is": {
8820
9552
  "type": "string",
8821
9553
  "enum": [
8822
- "bar",
8823
- "fields"
9554
+ "today",
9555
+ "yesterday",
9556
+ "thisWeek",
9557
+ "lastWeek",
9558
+ "thisMonth",
9559
+ "lastMonth",
9560
+ "thisYear",
9561
+ "last7Days",
9562
+ "last30Days",
9563
+ "overdue"
8824
9564
  ]
8825
- },
8826
- "filterFields": {
8827
- "minItems": 1,
8828
- "type": "array",
8829
- "items": {
8830
- "type": "string",
8831
- "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
8832
- }
8833
- },
8834
- "filterLabels": {
8835
- "type": "object",
8836
- "propertyNames": {
8837
- "type": "string",
8838
- "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
8839
- },
8840
- "additionalProperties": {
8841
- "type": "string",
8842
- "minLength": 1
8843
- }
8844
- },
8845
- "parentField": {
8846
- "type": "string",
8847
- "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
8848
9565
  }
8849
9566
  },
8850
9567
  "required": [
8851
- "type",
8852
- "id",
8853
- "columns"
9568
+ "field",
9569
+ "is"
8854
9570
  ],
8855
9571
  "additionalProperties": false
8856
9572
  },
@@ -9083,91 +9799,22 @@
9083
9799
  ],
9084
9800
  "additionalProperties": false
9085
9801
  },
9086
- "ListCell": {
9802
+ "ListGallery": {
9087
9803
  "type": "object",
9088
9804
  "properties": {
9089
- "widget": {
9805
+ "opens": {
9090
9806
  "type": "string",
9091
- "minLength": 1
9092
- },
9093
- "options": {
9094
- "type": "object",
9095
- "properties": {
9096
- "clear": {
9097
- "type": "boolean"
9098
- }
9099
- },
9100
- "additionalProperties": {
9101
- "$ref": "#/$defs/JsonValue"
9102
- }
9103
- },
9104
- "lead": {
9105
- "type": "object",
9106
- "properties": {
9107
- "field": {
9108
- "type": "string",
9109
- "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
9110
- },
9111
- "looks": {
9112
- "type": "object",
9113
- "propertyNames": {
9114
- "type": "string"
9115
- },
9116
- "additionalProperties": {
9117
- "type": "object",
9118
- "properties": {
9119
- "icon": {
9120
- "type": "string",
9121
- "minLength": 1
9122
- },
9123
- "colour": {
9124
- "type": "string",
9125
- "pattern": "^#[0-9a-fA-F]{6}$"
9126
- }
9127
- },
9128
- "required": [
9129
- "icon"
9130
- ],
9131
- "additionalProperties": false
9132
- }
9133
- }
9134
- },
9135
- "required": [
9136
- "field",
9137
- "looks"
9138
- ],
9139
- "additionalProperties": false
9140
- },
9141
- "width": {
9142
- "anyOf": [
9143
- {
9144
- "type": "integer",
9145
- "minimum": 1,
9146
- "maximum": 200
9147
- },
9148
- {
9149
- "type": "string",
9150
- "pattern": "^([89]|[1-9]\\d{1,2}|[1-3]\\d{3}|4000)px$"
9151
- }
9807
+ "enum": [
9808
+ "list",
9809
+ "gallery"
9152
9810
  ]
9153
9811
  },
9154
- "align": {
9812
+ "size": {
9155
9813
  "type": "string",
9156
9814
  "enum": [
9157
- "start",
9158
- "end"
9159
- ]
9160
- },
9161
- "rule": {
9162
- "anyOf": [
9163
- {
9164
- "type": "boolean",
9165
- "const": false
9166
- },
9167
- {
9168
- "type": "string",
9169
- "pattern": "^(\\d|[1-9]\\d|[1-3]\\d{2}|400)px$"
9170
- }
9815
+ "small",
9816
+ "medium",
9817
+ "large"
9171
9818
  ]
9172
9819
  }
9173
9820
  },
@@ -9227,6 +9874,85 @@
9227
9874
  }
9228
9875
  },
9229
9876
  "additionalProperties": false
9877
+ },
9878
+ "BotCheck": {
9879
+ "type": "object",
9880
+ "properties": {
9881
+ "honeypot": {
9882
+ "type": "boolean"
9883
+ },
9884
+ "minSeconds": {
9885
+ "type": "number",
9886
+ "minimum": 0,
9887
+ "maximum": 3600
9888
+ },
9889
+ "captcha": {
9890
+ "type": "string",
9891
+ "minLength": 1
9892
+ }
9893
+ },
9894
+ "additionalProperties": false
9895
+ },
9896
+ "PagePhone": {
9897
+ "type": "object",
9898
+ "properties": {
9899
+ "country": {
9900
+ "type": "string",
9901
+ "pattern": "^[A-Z]{2}$"
9902
+ },
9903
+ "shown": {
9904
+ "type": "string",
9905
+ "enum": [
9906
+ "international",
9907
+ "national"
9908
+ ]
9909
+ }
9910
+ },
9911
+ "additionalProperties": false
9912
+ },
9913
+ "PagePrint": {
9914
+ "type": "object",
9915
+ "properties": {
9916
+ "header": {
9917
+ "type": "string",
9918
+ "minLength": 1,
9919
+ "maxLength": 500
9920
+ },
9921
+ "footer": {
9922
+ "type": "string",
9923
+ "minLength": 1,
9924
+ "maxLength": 1000
9925
+ },
9926
+ "logo": {
9927
+ "type": "string",
9928
+ "pattern": "^(https?:\\/\\/|data:image\\/|\\/|\\.{0,2}\\/?[^:\\s]+$)"
9929
+ }
9930
+ },
9931
+ "additionalProperties": false
9932
+ },
9933
+ "PageDuplicates": {
9934
+ "type": "object",
9935
+ "properties": {
9936
+ "fields": {
9937
+ "minItems": 1,
9938
+ "type": "array",
9939
+ "items": {
9940
+ "type": "string",
9941
+ "minLength": 1
9942
+ }
9943
+ },
9944
+ "on": {
9945
+ "type": "string",
9946
+ "enum": [
9947
+ "type",
9948
+ "save"
9949
+ ]
9950
+ }
9951
+ },
9952
+ "required": [
9953
+ "fields"
9954
+ ],
9955
+ "additionalProperties": false
9230
9956
  }
9231
9957
  }
9232
9958
  }