@graview/core 0.1.60 → 0.1.62

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 (307) hide show
  1. package/README.md +23 -1
  2. package/dist/app-places.d.ts.map +1 -1
  3. package/dist/app-places.js +2 -2
  4. package/dist/app-places.js.map +1 -1
  5. package/dist/app.d.ts +10 -0
  6. package/dist/app.d.ts.map +1 -1
  7. package/dist/app.js.map +1 -1
  8. package/dist/arrangement.d.ts +2 -0
  9. package/dist/arrangement.d.ts.map +1 -1
  10. package/dist/arrangement.js +14 -0
  11. package/dist/arrangement.js.map +1 -1
  12. package/dist/capabilities.js +1 -1
  13. package/dist/capabilities.js.map +1 -1
  14. package/dist/catalog.d.ts.map +1 -1
  15. package/dist/catalog.js +2 -1
  16. package/dist/catalog.js.map +1 -1
  17. package/dist/cli/check/context.d.ts +5 -0
  18. package/dist/cli/check/context.d.ts.map +1 -1
  19. package/dist/cli/check/context.js.map +1 -1
  20. package/dist/cli/check/face.d.ts +14 -0
  21. package/dist/cli/check/face.d.ts.map +1 -0
  22. package/dist/cli/check/face.js +161 -0
  23. package/dist/cli/check/face.js.map +1 -0
  24. package/dist/cli/check/hidden-reads.d.ts.map +1 -1
  25. package/dist/cli/check/hidden-reads.js +26 -0
  26. package/dist/cli/check/hidden-reads.js.map +1 -1
  27. package/dist/cli/check/index.d.ts +1 -0
  28. package/dist/cli/check/index.d.ts.map +1 -1
  29. package/dist/cli/check/index.js +1 -0
  30. package/dist/cli/check/index.js.map +1 -1
  31. package/dist/cli/check/tidying.d.ts +14 -0
  32. package/dist/cli/check/tidying.d.ts.map +1 -0
  33. package/dist/cli/check/tidying.js +24 -0
  34. package/dist/cli/check/tidying.js.map +1 -0
  35. package/dist/cli/check.d.ts.map +1 -1
  36. package/dist/cli/check.js +4 -4
  37. package/dist/cli/check.js.map +1 -1
  38. package/dist/cli/describe.d.ts.map +1 -1
  39. package/dist/cli/describe.js +14 -1
  40. package/dist/cli/describe.js.map +1 -1
  41. package/dist/cli/docs.d.ts.map +1 -1
  42. package/dist/cli/docs.js +5 -3
  43. package/dist/cli/docs.js.map +1 -1
  44. package/dist/cli/document-schema.d.ts.map +1 -1
  45. package/dist/cli/document-schema.js +8 -2
  46. package/dist/cli/document-schema.js.map +1 -1
  47. package/dist/cli/index.d.ts +2 -1
  48. package/dist/cli/index.d.ts.map +1 -1
  49. package/dist/cli/index.js +15 -4
  50. package/dist/cli/index.js.map +1 -1
  51. package/dist/cli/types.d.ts.map +1 -1
  52. package/dist/cli/types.js +2 -1
  53. package/dist/cli/types.js.map +1 -1
  54. package/dist/compose.d.ts +14 -0
  55. package/dist/compose.d.ts.map +1 -1
  56. package/dist/compose.js +16 -1
  57. package/dist/compose.js.map +1 -1
  58. package/dist/css/sanitize.d.ts +125 -0
  59. package/dist/css/sanitize.d.ts.map +1 -0
  60. package/dist/css/sanitize.js +989 -0
  61. package/dist/css/sanitize.js.map +1 -0
  62. package/dist/css/tables.d.ts +55 -0
  63. package/dist/css/tables.d.ts.map +1 -0
  64. package/dist/css/tables.js +137 -0
  65. package/dist/css/tables.js.map +1 -0
  66. package/dist/css.d.ts +20 -0
  67. package/dist/css.d.ts.map +1 -0
  68. package/dist/css.js +19 -0
  69. package/dist/css.js.map +1 -0
  70. package/dist/days.d.ts +15 -0
  71. package/dist/days.d.ts.map +1 -1
  72. package/dist/days.js +21 -0
  73. package/dist/days.js.map +1 -1
  74. package/dist/describe.d.ts +1 -1
  75. package/dist/describe.d.ts.map +1 -1
  76. package/dist/document/act-findings.d.ts.map +1 -1
  77. package/dist/document/act-findings.js +80 -1
  78. package/dist/document/act-findings.js.map +1 -1
  79. package/dist/document/blocks.d.ts.map +1 -1
  80. package/dist/document/blocks.js +2 -1
  81. package/dist/document/blocks.js.map +1 -1
  82. package/dist/document/brand-check.d.ts +15 -1
  83. package/dist/document/brand-check.d.ts.map +1 -1
  84. package/dist/document/brand-check.js +80 -0
  85. package/dist/document/brand-check.js.map +1 -1
  86. package/dist/document/brand.d.ts.map +1 -1
  87. package/dist/document/brand.js +2 -0
  88. package/dist/document/brand.js.map +1 -1
  89. package/dist/document/compile-checked.d.ts.map +1 -1
  90. package/dist/document/compile-checked.js +4 -3
  91. package/dist/document/compile-checked.js.map +1 -1
  92. package/dist/document/compile.d.ts.map +1 -1
  93. package/dist/document/compile.js +54 -9
  94. package/dist/document/compile.js.map +1 -1
  95. package/dist/document/compiled.d.ts +18 -3
  96. package/dist/document/compiled.d.ts.map +1 -1
  97. package/dist/document/compiled.js +91 -10
  98. package/dist/document/compiled.js.map +1 -1
  99. package/dist/document/connection-findings.d.ts.map +1 -1
  100. package/dist/document/connection-findings.js +219 -19
  101. package/dist/document/connection-findings.js.map +1 -1
  102. package/dist/document/connection-spec.d.ts +7 -0
  103. package/dist/document/connection-spec.d.ts.map +1 -1
  104. package/dist/document/connection-spec.js +26 -2
  105. package/dist/document/connection-spec.js.map +1 -1
  106. package/dist/document/covers.d.ts +48 -0
  107. package/dist/document/covers.d.ts.map +1 -0
  108. package/dist/document/covers.js +90 -0
  109. package/dist/document/covers.js.map +1 -0
  110. package/dist/document/describe-place.d.ts +3 -0
  111. package/dist/document/describe-place.d.ts.map +1 -1
  112. package/dist/document/describe-place.js +11 -0
  113. package/dist/document/describe-place.js.map +1 -1
  114. package/dist/document/described.d.ts +28 -0
  115. package/dist/document/described.d.ts.map +1 -1
  116. package/dist/document/diff.js +10 -1
  117. package/dist/document/diff.js.map +1 -1
  118. package/dist/document/edit.d.ts +1 -1
  119. package/dist/document/edit.d.ts.map +1 -1
  120. package/dist/document/edit.js +186 -18
  121. package/dist/document/edit.js.map +1 -1
  122. package/dist/document/expr/evaluate.d.ts +10 -1
  123. package/dist/document/expr/evaluate.d.ts.map +1 -1
  124. package/dist/document/expr/evaluate.js +110 -2
  125. package/dist/document/expr/evaluate.js.map +1 -1
  126. package/dist/document/expr/index.d.ts +1 -0
  127. package/dist/document/expr/index.d.ts.map +1 -1
  128. package/dist/document/expr/index.js +2 -0
  129. package/dist/document/expr/index.js.map +1 -1
  130. package/dist/document/expr/typing.d.ts +24 -0
  131. package/dist/document/expr/typing.d.ts.map +1 -0
  132. package/dist/document/expr/typing.js +219 -0
  133. package/dist/document/expr/typing.js.map +1 -0
  134. package/dist/document/expr/when.d.ts +52 -0
  135. package/dist/document/expr/when.d.ts.map +1 -0
  136. package/dist/document/expr/when.js +215 -0
  137. package/dist/document/expr/when.js.map +1 -0
  138. package/dist/document/expr-type-findings.d.ts +5 -0
  139. package/dist/document/expr-type-findings.d.ts.map +1 -0
  140. package/dist/document/expr-type-findings.js +90 -0
  141. package/dist/document/expr-type-findings.js.map +1 -0
  142. package/dist/document/field-spec.d.ts.map +1 -1
  143. package/dist/document/field-spec.js +5 -0
  144. package/dist/document/field-spec.js.map +1 -1
  145. package/dist/document/findings.d.ts +33 -2
  146. package/dist/document/findings.d.ts.map +1 -1
  147. package/dist/document/findings.js +14 -17
  148. package/dist/document/findings.js.map +1 -1
  149. package/dist/document/index.d.ts +6 -3
  150. package/dist/document/index.d.ts.map +1 -1
  151. package/dist/document/index.js +5 -2
  152. package/dist/document/index.js.map +1 -1
  153. package/dist/document/linked-findings.js +1 -1
  154. package/dist/document/linked-findings.js.map +1 -1
  155. package/dist/document/migrate.d.ts.map +1 -1
  156. package/dist/document/migrate.js +10 -4
  157. package/dist/document/migrate.js.map +1 -1
  158. package/dist/document/rule-line.d.ts +7 -3
  159. package/dist/document/rule-line.d.ts.map +1 -1
  160. package/dist/document/rule-line.js +17 -2
  161. package/dist/document/rule-line.js.map +1 -1
  162. package/dist/document/rule-reads.d.ts.map +1 -1
  163. package/dist/document/rule-reads.js +3 -1
  164. package/dist/document/rule-reads.js.map +1 -1
  165. package/dist/document/rules.d.ts +30 -0
  166. package/dist/document/rules.d.ts.map +1 -1
  167. package/dist/document/rules.js +74 -0
  168. package/dist/document/rules.js.map +1 -1
  169. package/dist/document/schema.d.ts +80 -2
  170. package/dist/document/schema.d.ts.map +1 -1
  171. package/dist/document/schema.js +90 -4
  172. package/dist/document/schema.js.map +1 -1
  173. package/dist/document/to-document.d.ts.map +1 -1
  174. package/dist/document/to-document.js +3 -1
  175. package/dist/document/to-document.js.map +1 -1
  176. package/dist/document.schema.json +304 -5
  177. package/dist/formats.d.ts +21 -13
  178. package/dist/formats.d.ts.map +1 -1
  179. package/dist/formats.js +21 -13
  180. package/dist/formats.js.map +1 -1
  181. package/dist/import/coerce.d.ts.map +1 -1
  182. package/dist/import/coerce.js +16 -4
  183. package/dist/import/coerce.js.map +1 -1
  184. package/dist/index.d.ts +6 -5
  185. package/dist/index.d.ts.map +1 -1
  186. package/dist/index.js +5 -3
  187. package/dist/index.js.map +1 -1
  188. package/dist/invariants/types.d.ts +7 -2
  189. package/dist/invariants/types.d.ts.map +1 -1
  190. package/dist/kind-list.d.ts +1 -0
  191. package/dist/kind-list.d.ts.map +1 -1
  192. package/dist/kind-list.js +2 -1
  193. package/dist/kind-list.js.map +1 -1
  194. package/dist/lines.d.ts.map +1 -1
  195. package/dist/lines.js +6 -2
  196. package/dist/lines.js.map +1 -1
  197. package/dist/mutations/form.d.ts +2 -0
  198. package/dist/mutations/form.d.ts.map +1 -1
  199. package/dist/mutations/form.js +6 -3
  200. package/dist/mutations/form.js.map +1 -1
  201. package/dist/mutations/types.d.ts +9 -0
  202. package/dist/mutations/types.d.ts.map +1 -1
  203. package/dist/mutations/vote-suggestion.d.ts +67 -0
  204. package/dist/mutations/vote-suggestion.d.ts.map +1 -0
  205. package/dist/mutations/vote-suggestion.js +36 -0
  206. package/dist/mutations/vote-suggestion.js.map +1 -0
  207. package/dist/navigate.d.ts +7 -3
  208. package/dist/navigate.d.ts.map +1 -1
  209. package/dist/navigate.js +7 -3
  210. package/dist/navigate.js.map +1 -1
  211. package/dist/ops/lineage.d.ts +11 -1
  212. package/dist/ops/lineage.d.ts.map +1 -1
  213. package/dist/ops/lineage.js +6 -2
  214. package/dist/ops/lineage.js.map +1 -1
  215. package/dist/ops/suggestions.d.ts +33 -1
  216. package/dist/ops/suggestions.d.ts.map +1 -1
  217. package/dist/ops/suggestions.js +44 -2
  218. package/dist/ops/suggestions.js.map +1 -1
  219. package/dist/ops/types.d.ts +13 -0
  220. package/dist/ops/types.d.ts.map +1 -1
  221. package/dist/ops/types.js.map +1 -1
  222. package/dist/place-names.d.ts +42 -0
  223. package/dist/place-names.d.ts.map +1 -0
  224. package/dist/place-names.js +43 -0
  225. package/dist/place-names.js.map +1 -0
  226. package/dist/places.d.ts +2 -0
  227. package/dist/places.d.ts.map +1 -1
  228. package/dist/places.js +2 -0
  229. package/dist/places.js.map +1 -1
  230. package/dist/scaffold/agents.d.ts +9 -1
  231. package/dist/scaffold/agents.d.ts.map +1 -1
  232. package/dist/scaffold/agents.js +33 -2
  233. package/dist/scaffold/agents.js.map +1 -1
  234. package/dist/scaffold/project.js +1 -1
  235. package/dist/schema/choice-words.d.ts.map +1 -1
  236. package/dist/schema/choice-words.js +3 -0
  237. package/dist/schema/choice-words.js.map +1 -1
  238. package/dist/starting-document.d.ts +73 -0
  239. package/dist/starting-document.d.ts.map +1 -0
  240. package/dist/starting-document.js +645 -0
  241. package/dist/starting-document.js.map +1 -0
  242. package/dist/store.d.ts +50 -0
  243. package/dist/store.d.ts.map +1 -1
  244. package/dist/store.js +167 -27
  245. package/dist/store.js.map +1 -1
  246. package/dist/sync/connection.d.ts +20 -1
  247. package/dist/sync/connection.d.ts.map +1 -1
  248. package/dist/sync/connection.js +198 -34
  249. package/dist/sync/connection.js.map +1 -1
  250. package/dist/sync/engine.d.ts +13 -4
  251. package/dist/sync/engine.d.ts.map +1 -1
  252. package/dist/sync/engine.js +10 -6
  253. package/dist/sync/engine.js.map +1 -1
  254. package/dist/sync/google-calendar.d.ts +8 -0
  255. package/dist/sync/google-calendar.d.ts.map +1 -1
  256. package/dist/sync/google-calendar.js +16 -4
  257. package/dist/sync/google-calendar.js.map +1 -1
  258. package/dist/sync/guests.d.ts +44 -0
  259. package/dist/sync/guests.d.ts.map +1 -0
  260. package/dist/sync/guests.js +57 -0
  261. package/dist/sync/guests.js.map +1 -0
  262. package/dist/sync/notion-types.d.ts +7 -0
  263. package/dist/sync/notion-types.d.ts.map +1 -1
  264. package/dist/sync/notion-types.js +6 -1
  265. package/dist/sync/notion-types.js.map +1 -1
  266. package/dist/sync/recurrence.d.ts +41 -0
  267. package/dist/sync/recurrence.d.ts.map +1 -0
  268. package/dist/sync/recurrence.js +192 -0
  269. package/dist/sync/recurrence.js.map +1 -0
  270. package/dist/sync/types.d.ts +9 -0
  271. package/dist/sync/types.d.ts.map +1 -1
  272. package/dist/sync/types.js.map +1 -1
  273. package/dist/testing.js +1 -1
  274. package/dist/testing.js.map +1 -1
  275. package/dist/theme/contrast.d.ts +2 -0
  276. package/dist/theme/contrast.d.ts.map +1 -1
  277. package/dist/theme/contrast.js +4 -0
  278. package/dist/theme/contrast.js.map +1 -1
  279. package/dist/theme/ground.d.ts +1 -2
  280. package/dist/theme/ground.d.ts.map +1 -1
  281. package/dist/theme/ground.js +2 -5
  282. package/dist/theme/ground.js.map +1 -1
  283. package/dist/theme/marks.d.ts +14 -2
  284. package/dist/theme/marks.d.ts.map +1 -1
  285. package/dist/theme/marks.js +20 -3
  286. package/dist/theme/marks.js.map +1 -1
  287. package/dist/theme/types.d.ts +22 -0
  288. package/dist/theme/types.d.ts.map +1 -1
  289. package/dist/theme/types.js.map +1 -1
  290. package/dist/tidying.d.ts +30 -4
  291. package/dist/tidying.d.ts.map +1 -1
  292. package/dist/tidying.js +110 -5
  293. package/dist/tidying.js.map +1 -1
  294. package/dist/trait-vocabulary.d.ts +17 -0
  295. package/dist/trait-vocabulary.d.ts.map +1 -0
  296. package/dist/trait-vocabulary.js +16 -0
  297. package/dist/trait-vocabulary.js.map +1 -0
  298. package/dist/traits.d.ts +79 -0
  299. package/dist/traits.d.ts.map +1 -0
  300. package/dist/traits.js +468 -0
  301. package/dist/traits.js.map +1 -0
  302. package/dist/typed.d.ts +4 -0
  303. package/dist/typed.d.ts.map +1 -1
  304. package/dist/typed.js.map +1 -1
  305. package/dist/version.d.ts +1 -1
  306. package/dist/version.js +1 -1
  307. package/package.json +11 -1
@@ -1 +1 @@
1
- {"version":3,"file":"to-document.js","sourceRoot":"","sources":["../../src/document/to-document.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"to-document.js","sourceRoot":"","sources":["../../src/document/to-document.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "https://unpkg.com/@graview/core@0.1.60/dist/document.schema.json",
4
- "title": "Graview declaration document, format 1 (@graview/core 0.1.60)",
3
+ "$id": "https://unpkg.com/@graview/core@0.1.62/dist/document.schema.json",
4
+ "title": "Graview declaration document, format 1 (@graview/core 0.1.62)",
5
5
  "description": "A whole Graview app as one JSON object: its kinds, fields, relations, acts, rules, roles, views and brand. `graview check --document <file>` compiles it and says what is wrong in words; this schema is the same shape, for an editor. Name it in a document's \"$schema\".",
6
6
  "type": "object",
7
7
  "properties": {
@@ -150,6 +150,9 @@
150
150
  "maxLength": 80
151
151
  }
152
152
  },
153
+ "multiple": {
154
+ "type": "boolean"
155
+ },
153
156
  "optionLabels": {
154
157
  "type": "object",
155
158
  "propertyNames": {
@@ -234,6 +237,22 @@
234
237
  }
235
238
  }
236
239
  },
240
+ {
241
+ "if": {
242
+ "properties": {
243
+ "type": {
244
+ "const": "enum"
245
+ }
246
+ }
247
+ },
248
+ "else": {
249
+ "not": {
250
+ "required": [
251
+ "multiple"
252
+ ]
253
+ }
254
+ }
255
+ },
237
256
  {
238
257
  "if": {
239
258
  "properties": {
@@ -848,6 +867,90 @@
848
867
  ]
849
868
  }
850
869
  },
870
+ "setsLinked": {
871
+ "type": "object",
872
+ "propertyNames": {
873
+ "type": "string",
874
+ "pattern": "^(?:[a-z][a-z0-9]*(?:-[a-z0-9]+)*|[a-z][A-Za-z0-9]*)$",
875
+ "not": {
876
+ "enum": [
877
+ "constructor",
878
+ "__defineGetter__",
879
+ "__defineSetter__",
880
+ "hasOwnProperty",
881
+ "__lookupGetter__",
882
+ "__lookupSetter__",
883
+ "isPrototypeOf",
884
+ "propertyIsEnumerable",
885
+ "toString",
886
+ "valueOf",
887
+ "__proto__",
888
+ "toLocaleString"
889
+ ]
890
+ },
891
+ "description": "Kinds, acts, rules and roles are kebab-case, like \"tool-note\"; fields and relations are camelCase, like \"supersededBy\", so a rule can say them bare. A kind keeps the name it is given, because every record stores it."
892
+ },
893
+ "additionalProperties": {
894
+ "type": "object",
895
+ "propertyNames": {
896
+ "type": "string",
897
+ "pattern": "^[a-z][A-Za-z0-9]*$",
898
+ "not": {
899
+ "enum": [
900
+ "id",
901
+ "kind",
902
+ "constructor",
903
+ "__defineGetter__",
904
+ "__defineSetter__",
905
+ "hasOwnProperty",
906
+ "__lookupGetter__",
907
+ "__lookupSetter__",
908
+ "isPrototypeOf",
909
+ "propertyIsEnumerable",
910
+ "toString",
911
+ "valueOf",
912
+ "__proto__",
913
+ "toLocaleString"
914
+ ]
915
+ },
916
+ "description": "Kinds, acts, rules and roles are kebab-case, like \"tool-note\"; fields and relations are camelCase, like \"supersededBy\", so a rule can say them bare. A kind keeps the name it is given, because every record stores it."
917
+ },
918
+ "additionalProperties": {
919
+ "anyOf": [
920
+ {
921
+ "type": "string"
922
+ },
923
+ {
924
+ "type": "number"
925
+ },
926
+ {
927
+ "type": "boolean"
928
+ },
929
+ {
930
+ "type": "null"
931
+ },
932
+ {
933
+ "type": "array",
934
+ "items": {}
935
+ },
936
+ {
937
+ "type": "object",
938
+ "properties": {
939
+ "expr": {
940
+ "type": "string",
941
+ "minLength": 1,
942
+ "maxLength": 2000
943
+ }
944
+ },
945
+ "required": [
946
+ "expr"
947
+ ],
948
+ "additionalProperties": false
949
+ }
950
+ ]
951
+ }
952
+ }
953
+ },
851
954
  "replaces": {
852
955
  "anyOf": [
853
956
  {
@@ -970,6 +1073,9 @@
970
1073
  "maxLength": 80
971
1074
  }
972
1075
  },
1076
+ "multiple": {
1077
+ "type": "boolean"
1078
+ },
973
1079
  "optionLabels": {
974
1080
  "type": "object",
975
1081
  "propertyNames": {
@@ -1054,6 +1160,22 @@
1054
1160
  }
1055
1161
  }
1056
1162
  },
1163
+ {
1164
+ "if": {
1165
+ "properties": {
1166
+ "type": {
1167
+ "const": "enum"
1168
+ }
1169
+ }
1170
+ },
1171
+ "else": {
1172
+ "not": {
1173
+ "required": [
1174
+ "multiple"
1175
+ ]
1176
+ }
1177
+ }
1178
+ },
1057
1179
  {
1058
1180
  "if": {
1059
1181
  "properties": {
@@ -1384,6 +1506,45 @@
1384
1506
  "minLength": 1,
1385
1507
  "maxLength": 2000
1386
1508
  },
1509
+ "covers": {
1510
+ "type": "object",
1511
+ "properties": {
1512
+ "every": {
1513
+ "type": "string",
1514
+ "pattern": "^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
1515
+ },
1516
+ "through": {
1517
+ "type": "string",
1518
+ "pattern": "^(?:[a-z][a-z0-9]*(?:-[a-z0-9]+)*|[a-z][A-Za-z0-9]*)$",
1519
+ "not": {
1520
+ "enum": [
1521
+ "constructor",
1522
+ "__defineGetter__",
1523
+ "__defineSetter__",
1524
+ "hasOwnProperty",
1525
+ "__lookupGetter__",
1526
+ "__lookupSetter__",
1527
+ "isPrototypeOf",
1528
+ "propertyIsEnumerable",
1529
+ "toString",
1530
+ "valueOf",
1531
+ "__proto__",
1532
+ "toLocaleString"
1533
+ ]
1534
+ },
1535
+ "description": "Kinds, acts, rules and roles are kebab-case, like \"tool-note\"; fields and relations are camelCase, like \"supersededBy\", so a rule can say them bare. A kind keeps the name it is given, because every record stores it."
1536
+ },
1537
+ "via": {
1538
+ "type": "string",
1539
+ "pattern": "^(?:[a-z][a-z0-9]*(?:-[a-z0-9]+)*|[a-z][A-Za-z0-9]*)$"
1540
+ }
1541
+ },
1542
+ "required": [
1543
+ "every",
1544
+ "through"
1545
+ ],
1546
+ "additionalProperties": false
1547
+ },
1387
1548
  "says": {
1388
1549
  "type": "string",
1389
1550
  "minLength": 1,
@@ -1453,10 +1614,38 @@
1453
1614
  }
1454
1615
  },
1455
1616
  "required": [
1456
- "over",
1457
- "require"
1617
+ "over"
1458
1618
  ],
1459
- "additionalProperties": false
1619
+ "additionalProperties": false,
1620
+ "oneOf": [
1621
+ {
1622
+ "required": [
1623
+ "require"
1624
+ ],
1625
+ "not": {
1626
+ "required": [
1627
+ "covers"
1628
+ ]
1629
+ }
1630
+ },
1631
+ {
1632
+ "required": [
1633
+ "covers"
1634
+ ],
1635
+ "not": {
1636
+ "required": [
1637
+ "require"
1638
+ ]
1639
+ },
1640
+ "properties": {
1641
+ "over": {
1642
+ "not": {
1643
+ "const": "graph"
1644
+ }
1645
+ }
1646
+ }
1647
+ }
1648
+ ]
1460
1649
  }
1461
1650
  },
1462
1651
  "roles": {
@@ -2437,6 +2626,61 @@
2437
2626
  "subtitle": {
2438
2627
  "type": "boolean",
2439
2628
  "const": false
2629
+ },
2630
+ "splash": {
2631
+ "type": "object",
2632
+ "properties": {
2633
+ "style": {
2634
+ "type": "string",
2635
+ "enum": [
2636
+ "plain",
2637
+ "editorial",
2638
+ "shader",
2639
+ "ascii"
2640
+ ]
2641
+ },
2642
+ "image": {
2643
+ "type": "string",
2644
+ "minLength": 1,
2645
+ "maxLength": 65536
2646
+ },
2647
+ "title": {
2648
+ "type": "string",
2649
+ "minLength": 1,
2650
+ "maxLength": 80
2651
+ },
2652
+ "kicker": {
2653
+ "type": "string",
2654
+ "minLength": 1,
2655
+ "maxLength": 80
2656
+ },
2657
+ "shader": {
2658
+ "type": "string",
2659
+ "minLength": 1,
2660
+ "maxLength": 40
2661
+ }
2662
+ },
2663
+ "required": [
2664
+ "style"
2665
+ ],
2666
+ "additionalProperties": false
2667
+ },
2668
+ "views": {
2669
+ "type": "object",
2670
+ "properties": {
2671
+ "css": {
2672
+ "type": "string",
2673
+ "minLength": 1
2674
+ },
2675
+ "motion": {
2676
+ "type": "string",
2677
+ "enum": [
2678
+ "none",
2679
+ "fade"
2680
+ ]
2681
+ }
2682
+ },
2683
+ "additionalProperties": false
2440
2684
  }
2441
2685
  },
2442
2686
  "additionalProperties": false
@@ -2541,6 +2785,10 @@
2541
2785
  "type": "string",
2542
2786
  "pattern": "^[a-z][A-Za-z0-9]*$"
2543
2787
  },
2788
+ "days": {
2789
+ "type": "string",
2790
+ "pattern": "^[a-z][A-Za-z0-9]*$"
2791
+ },
2544
2792
  "location": {
2545
2793
  "type": "string",
2546
2794
  "pattern": "^[a-z][A-Za-z0-9]*$"
@@ -2548,6 +2796,46 @@
2548
2796
  "description": {
2549
2797
  "type": "string",
2550
2798
  "pattern": "^[a-z][A-Za-z0-9]*$"
2799
+ },
2800
+ "guests": {
2801
+ "anyOf": [
2802
+ {
2803
+ "type": "string",
2804
+ "pattern": "^[a-z][A-Za-z0-9]*$"
2805
+ },
2806
+ {
2807
+ "type": "object",
2808
+ "properties": {
2809
+ "via": {
2810
+ "type": "string",
2811
+ "pattern": "^(?:[a-z][a-z0-9]*(?:-[a-z0-9]+)*|[a-z][A-Za-z0-9]*)$"
2812
+ },
2813
+ "emails": {
2814
+ "type": "string",
2815
+ "pattern": "^[a-z][A-Za-z0-9]*$"
2816
+ },
2817
+ "invite": {
2818
+ "anyOf": [
2819
+ {
2820
+ "type": "string",
2821
+ "pattern": "^[a-z][A-Za-z0-9]*$"
2822
+ },
2823
+ {
2824
+ "type": "boolean",
2825
+ "const": false
2826
+ }
2827
+ ]
2828
+ },
2829
+ "notify": {
2830
+ "type": "boolean"
2831
+ }
2832
+ },
2833
+ "required": [
2834
+ "via"
2835
+ ],
2836
+ "additionalProperties": false
2837
+ }
2838
+ ]
2551
2839
  }
2552
2840
  },
2553
2841
  "required": [
@@ -2946,6 +3234,17 @@
2946
3234
  "working"
2947
3235
  ],
2948
3236
  "additionalProperties": false
3237
+ },
3238
+ "tidying": {
3239
+ "type": "object",
3240
+ "properties": {
3241
+ "autoAcceptAt": {
3242
+ "type": "integer",
3243
+ "minimum": 1,
3244
+ "maximum": 10000
3245
+ }
3246
+ },
3247
+ "additionalProperties": false
2949
3248
  }
2950
3249
  },
2951
3250
  "required": [
package/dist/formats.d.ts CHANGED
@@ -27,15 +27,21 @@ import { type FormatName } from "./format-error.js";
27
27
  * phase 1). A format-2 op reads as it was written; a build before it
28
28
  * meeting a store stamped `op: 3`, or a splice, refuses it.
29
29
  *
30
- * SNAPSHOT FORMAT 2 is a stored state whose checkpoint lies past what
31
- * stood published (`Epoch.published` keeps the app as readers are served
32
- * it there, Roadmap f-publishing-lifecycle). A build before it would serve
33
- * those readers the horizon — changes never published — so such a store
34
- * and its bundles are stamped `snapshot: 2`, and that build refuses them
35
- * with `NewerFormatError`. Every other store is stamped 1, as before: a
36
- * host that must stay readable by an older build passes
37
- * `pins: [store.publishedSeq]` to the compaction, and its checkpoint
38
- * never passes the publish. A format-1 snapshot reads as written.
30
+ * SNAPSHOT FORMAT 2 is a stored state whose checkpoint keeps the app as
31
+ * readers are, or may again be, served at a seq behind it
32
+ * (`Epoch.published`, Roadmap f-publishing-lifecycle): one past the
33
+ * publish standing at its seq, or past a seq a later publish took readers
34
+ * back to. A build before it would serve those readers the horizon —
35
+ * changes never published — so such a store and its bundles are stamped
36
+ * `snapshot: 2`, and that build refuses them with `NewerFormatError`.
37
+ * Every other store is stamped 1, as before: a host that must stay
38
+ * readable by an older build asks the compaction for `format: 1`
39
+ * (`CompactOptions.format`), which holds the horizon at the earliest such
40
+ * seq, wherever the days, the ops and the pins would have put it, and says
41
+ * where it stopped. A pin at `store.publishedSeq` alone holds only the
42
+ * latest publish: a horizon that lands between two publishes keeps the
43
+ * earlier one and is format 2 with it. A format-1 snapshot reads as
44
+ * written.
39
45
  *
40
46
  * FAIL CLOSED (1.0). A new primitive raises `FORMATS.op` and travels only
41
47
  * to a reader that said it reads it (`opFormat`); a reader that meets a
@@ -58,11 +64,13 @@ export interface FormatStamp {
58
64
  }
59
65
  /**
60
66
  * The stamp this build writes for what begins at `checkpoint` (a store's
61
- * horizon epoch, a bundle's checkpoint): snapshot format 2 when it lies
62
- * past what stood published at its seq and keeps the app as readers were
63
- * served there — what a build before format 2 would misread — else 1.
67
+ * horizon epoch, a bundle's checkpoint): snapshot format 2 when it keeps
68
+ * the app as readers are or may again be served at a seq behind it
69
+ * (`published`: the publish standing at its seq, or one in the tail that
70
+ * took readers back to an earlier seq) — what a build before format 2
71
+ * would misread, serving those readers the horizon — else 1.
64
72
  */
65
- export declare function formatStamp(checkpoint?: Pick<Epoch, "published" | "publishedThrough">): FormatStamp;
73
+ export declare function formatStamp(checkpoint?: Pick<Epoch, "published">): FormatStamp;
66
74
  /** Throws `NewerFormatError` when a stamp says a format this build (or `reads`, the formats another reads) cannot read; absent formats are format 1. */
67
75
  export declare function assertReadable(stamp: {
68
76
  readonly framework?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"formats.d.ts","sourceRoot":"","sources":["../src/formats.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAoD,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEtG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC1F,YAAY,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,qEAAqE;AACrE,MAAM,WAAW,WAAW;IAC1B,iEAAiE;IACjE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE;QAAE,QAAQ,EAAE,CAAC,IAAI,UAAU,GAAG,MAAM;KAAE,CAAC;CAC1D;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,WAAW,GAAG,kBAAkB,CAAC,GAAG,WAAW,CAGnG;AAED,wJAAwJ;AACxJ,wBAAgB,cAAc,CAC5B,KAAK,EAAE;IAAE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAA;CAAE,GAAG,IAAI,GAAG,SAAS,EACjH,KAAK,GAAE;IAAE,QAAQ,EAAE,CAAC,IAAI,UAAU,GAAG,MAAM;CAAY,GACtD,IAAI,CAKN;AA8BD,uFAAuF;AACvF,wBAAgB,eAAe,CAAC,QAAQ,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,GAAG,aAAa,CAEpF;AAED,kFAAkF;AAClF,wBAAgB,SAAS,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,CAGhE"}
1
+ {"version":3,"file":"formats.d.ts","sourceRoot":"","sources":["../src/formats.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAoD,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEtG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC1F,YAAY,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,qEAAqE;AACrE,MAAM,WAAW,WAAW;IAC1B,iEAAiE;IACjE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE;QAAE,QAAQ,EAAE,CAAC,IAAI,UAAU,GAAG,MAAM;KAAE,CAAC;CAC1D;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC,GAAG,WAAW,CAG9E;AAED,wJAAwJ;AACxJ,wBAAgB,cAAc,CAC5B,KAAK,EAAE;IAAE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAA;CAAE,GAAG,IAAI,GAAG,SAAS,EACjH,KAAK,GAAE;IAAE,QAAQ,EAAE,CAAC,IAAI,UAAU,GAAG,MAAM;CAAY,GACtD,IAAI,CAKN;AA8BD,uFAAuF;AACvF,wBAAgB,eAAe,CAAC,QAAQ,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,GAAG,aAAa,CAEpF;AAED,kFAAkF;AAClF,wBAAgB,SAAS,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,CAGhE"}
package/dist/formats.js CHANGED
@@ -26,15 +26,21 @@ import { assertKnownPrimitives, FORMATS, NewerFormatError } from "./format-error
26
26
  * phase 1). A format-2 op reads as it was written; a build before it
27
27
  * meeting a store stamped `op: 3`, or a splice, refuses it.
28
28
  *
29
- * SNAPSHOT FORMAT 2 is a stored state whose checkpoint lies past what
30
- * stood published (`Epoch.published` keeps the app as readers are served
31
- * it there, Roadmap f-publishing-lifecycle). A build before it would serve
32
- * those readers the horizon — changes never published — so such a store
33
- * and its bundles are stamped `snapshot: 2`, and that build refuses them
34
- * with `NewerFormatError`. Every other store is stamped 1, as before: a
35
- * host that must stay readable by an older build passes
36
- * `pins: [store.publishedSeq]` to the compaction, and its checkpoint
37
- * never passes the publish. A format-1 snapshot reads as written.
29
+ * SNAPSHOT FORMAT 2 is a stored state whose checkpoint keeps the app as
30
+ * readers are, or may again be, served at a seq behind it
31
+ * (`Epoch.published`, Roadmap f-publishing-lifecycle): one past the
32
+ * publish standing at its seq, or past a seq a later publish took readers
33
+ * back to. A build before it would serve those readers the horizon —
34
+ * changes never published — so such a store and its bundles are stamped
35
+ * `snapshot: 2`, and that build refuses them with `NewerFormatError`.
36
+ * Every other store is stamped 1, as before: a host that must stay
37
+ * readable by an older build asks the compaction for `format: 1`
38
+ * (`CompactOptions.format`), which holds the horizon at the earliest such
39
+ * seq, wherever the days, the ops and the pins would have put it, and says
40
+ * where it stopped. A pin at `store.publishedSeq` alone holds only the
41
+ * latest publish: a horizon that lands between two publishes keeps the
42
+ * earlier one and is format 2 with it. A format-1 snapshot reads as
43
+ * written.
38
44
  *
39
45
  * FAIL CLOSED (1.0). A new primitive raises `FORMATS.op` and travels only
40
46
  * to a reader that said it reads it (`opFormat`); a reader that meets a
@@ -48,12 +54,14 @@ import { assertKnownPrimitives, FORMATS, NewerFormatError } from "./format-error
48
54
  export { FORMATS, NewerFormatError, PRIMITIVE_OPS, VALUE_TYPES } from "./format-error.js";
49
55
  /**
50
56
  * The stamp this build writes for what begins at `checkpoint` (a store's
51
- * horizon epoch, a bundle's checkpoint): snapshot format 2 when it lies
52
- * past what stood published at its seq and keeps the app as readers were
53
- * served there — what a build before format 2 would misread — else 1.
57
+ * horizon epoch, a bundle's checkpoint): snapshot format 2 when it keeps
58
+ * the app as readers are or may again be served at a seq behind it
59
+ * (`published`: the publish standing at its seq, or one in the tail that
60
+ * took readers back to an earlier seq) — what a build before format 2
61
+ * would misread, serving those readers the horizon — else 1.
54
62
  */
55
63
  export function formatStamp(checkpoint) {
56
- const past = checkpoint?.published?.some((kept) => kept.seq === checkpoint.publishedThrough) === true;
64
+ const past = (checkpoint?.published?.length ?? 0) > 0;
57
65
  return { framework: FRAMEWORK_VERSION, formats: { ...FORMATS, snapshot: past ? 2 : 1 } };
58
66
  }
59
67
  /** Throws `NewerFormatError` when a stamp says a format this build (or `reads`, the formats another reads) cannot read; absent formats are format 1. */
@@ -1 +1 @@
1
- {"version":3,"file":"formats.js","sourceRoot":"","sources":["../src/formats.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"formats.js","sourceRoot":"","sources":["../src/formats.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"coerce.d.ts","sourceRoot":"","sources":["../../src/import/coerce.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAQvD;;;;;;GAMG;AACH,MAAM,MAAM,OAAO,GAAG;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;CAAE,GAAG;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAEpH,MAAM,WAAW,aAAa;IAC5B,sFAAsF;IACtF,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,uGAAuG;IACvG,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;CACnD;AAoBD,kIAAkI;AAClI,wBAAgB,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,GAAE,aAAkB,GAAG,MAAM,GAAG,SAAS,CAgCvF;AASD,gHAAgH;AAChH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,GAAE,aAAkB,GAAG,MAAM,GAAG,SAAS,CA6B5F;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAoB7D;AAKD,oDAAoD;AACpD,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS,CAM/D;AAED,2FAA2F;AAC3F,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,GAAG,MAAM,GAAG,SAAS,CAU7H;AAED,2GAA2G;AAC3G,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAGhD;AAED,4EAA4E;AAC5E,wBAAgB,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,aAAkB,GAAG,OAAO,CA0E9G;AAED,mBAAmB;AACnB,wBAAgB,MAAM,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAGvD;AAED,oBAAoB;AACpB,wBAAgB,OAAO,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAGxD"}
1
+ {"version":3,"file":"coerce.d.ts","sourceRoot":"","sources":["../../src/import/coerce.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAQvD;;;;;;GAMG;AACH,MAAM,MAAM,OAAO,GAAG;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;CAAE,GAAG;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAEpH,MAAM,WAAW,aAAa;IAC5B,sFAAsF;IACtF,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,uGAAuG;IACvG,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;CACnD;AAoBD,kIAAkI;AAClI,wBAAgB,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,GAAE,aAAkB,GAAG,MAAM,GAAG,SAAS,CAgCvF;AASD,gHAAgH;AAChH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,GAAE,aAAkB,GAAG,MAAM,GAAG,SAAS,CA6B5F;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAoB7D;AAKD,oDAAoD;AACpD,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS,CAM/D;AAED,2FAA2F;AAC3F,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,GAAG,MAAM,GAAG,SAAS,CAU7H;AAED,2GAA2G;AAC3G,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAGhD;AAED,4EAA4E;AAC5E,wBAAgB,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,aAAkB,GAAG,OAAO,CAqF9G;AAED,mBAAmB;AACnB,wBAAgB,MAAM,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAGvD;AAED,oBAAoB;AACpB,wBAAgB,OAAO,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAGxD"}
@@ -198,11 +198,23 @@ export function coerceCell(spec, input, said, options = {}) {
198
198
  }
199
199
  case "enum": {
200
200
  const choices = spec.options ?? [];
201
- const value = readOption(input, choices, options.optionWords);
202
- if (value !== undefined)
203
- return { ok: true, value };
204
201
  const listed = choices.map((option) => options.optionWords?.(option) ?? option);
205
- return { ok: false, why: `${quoted} under ${said} is none of ${listed.length <= 8 ? orList(listed) : `its ${listed.length} choices`}` };
202
+ const none = (one) => ({ ok: false, why: `“${String(one).trim()}” under ${said} is none of ${listed.length <= 8 ? orList(listed) : `its ${listed.length} choices`}` });
203
+ // A choice that takes several (FR-233): a cell lists them, "CTO; QA", each one of its options.
204
+ if (spec.multiple) {
205
+ const items = Array.isArray(input) ? input : splitCell(String(input));
206
+ const out = [];
207
+ for (const item of items) {
208
+ const value = readOption(item, choices, options.optionWords);
209
+ if (value === undefined)
210
+ return none(item);
211
+ if (!out.includes(value))
212
+ out.push(value);
213
+ }
214
+ return { ok: true, value: out };
215
+ }
216
+ const value = readOption(input, choices, options.optionWords);
217
+ return value !== undefined ? { ok: true, value } : none(input);
206
218
  }
207
219
  case "list": {
208
220
  const items = Array.isArray(input) ? input : splitCell(String(input));