@graview/core 0.1.26 → 0.1.27

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 (104) hide show
  1. package/dist/capabilities.js +1 -1
  2. package/dist/capabilities.js.map +1 -1
  3. package/dist/cli/check/fact-rules.js +1 -1
  4. package/dist/cli/check/fact-rules.js.map +1 -1
  5. package/dist/cli/check/hidden-reads.d.ts.map +1 -1
  6. package/dist/cli/check/hidden-reads.js +2 -1
  7. package/dist/cli/check/hidden-reads.js.map +1 -1
  8. package/dist/cli/check/index.d.ts +1 -0
  9. package/dist/cli/check/index.d.ts.map +1 -1
  10. package/dist/cli/check/index.js +1 -0
  11. package/dist/cli/check/index.js.map +1 -1
  12. package/dist/cli/check/people.d.ts +19 -0
  13. package/dist/cli/check/people.d.ts.map +1 -0
  14. package/dist/cli/check/people.js +80 -0
  15. package/dist/cli/check/people.js.map +1 -0
  16. package/dist/cli/check/policy.d.ts.map +1 -1
  17. package/dist/cli/check/policy.js +3 -2
  18. package/dist/cli/check/policy.js.map +1 -1
  19. package/dist/cli/check.d.ts.map +1 -1
  20. package/dist/cli/check.js +2 -1
  21. package/dist/cli/check.js.map +1 -1
  22. package/dist/cli/describe.d.ts.map +1 -1
  23. package/dist/cli/describe.js +6 -0
  24. package/dist/cli/describe.js.map +1 -1
  25. package/dist/days.d.ts +2 -0
  26. package/dist/days.d.ts.map +1 -1
  27. package/dist/days.js +2 -0
  28. package/dist/days.js.map +1 -1
  29. package/dist/document/act-findings.d.ts +1 -1
  30. package/dist/document/act-findings.d.ts.map +1 -1
  31. package/dist/document/act-findings.js +35 -3
  32. package/dist/document/act-findings.js.map +1 -1
  33. package/dist/document/block-context.d.ts.map +1 -1
  34. package/dist/document/block-context.js +2 -1
  35. package/dist/document/block-context.js.map +1 -1
  36. package/dist/document/compile.d.ts.map +1 -1
  37. package/dist/document/compile.js +6 -7
  38. package/dist/document/compile.js.map +1 -1
  39. package/dist/document/compiled.d.ts.map +1 -1
  40. package/dist/document/compiled.js +83 -41
  41. package/dist/document/compiled.js.map +1 -1
  42. package/dist/document/describe-place.d.ts.map +1 -1
  43. package/dist/document/describe-place.js +2 -1
  44. package/dist/document/describe-place.js.map +1 -1
  45. package/dist/document/edit.d.ts.map +1 -1
  46. package/dist/document/edit.js +21 -18
  47. package/dist/document/edit.js.map +1 -1
  48. package/dist/document/expr/evaluate.d.ts.map +1 -1
  49. package/dist/document/expr/evaluate.js +2 -1
  50. package/dist/document/expr/evaluate.js.map +1 -1
  51. package/dist/document/respell.d.ts +2 -0
  52. package/dist/document/respell.d.ts.map +1 -1
  53. package/dist/document/respell.js +2 -1
  54. package/dist/document/respell.js.map +1 -1
  55. package/dist/document/rules.d.ts.map +1 -1
  56. package/dist/document/rules.js +2 -1
  57. package/dist/document/rules.js.map +1 -1
  58. package/dist/document/schema.d.ts +8 -0
  59. package/dist/document/schema.d.ts.map +1 -1
  60. package/dist/document/schema.js +6 -0
  61. package/dist/document/schema.js.map +1 -1
  62. package/dist/document/template.js +2 -2
  63. package/dist/document/template.js.map +1 -1
  64. package/dist/document/to-document.d.ts.map +1 -1
  65. package/dist/document/to-document.js +1 -0
  66. package/dist/document/to-document.js.map +1 -1
  67. package/dist/document.schema.json +12 -2
  68. package/dist/installation.d.ts.map +1 -1
  69. package/dist/installation.js +2 -0
  70. package/dist/installation.js.map +1 -1
  71. package/dist/lines.d.ts.map +1 -1
  72. package/dist/lines.js +2 -1
  73. package/dist/lines.js.map +1 -1
  74. package/dist/mutations/define-mutation.d.ts +2 -0
  75. package/dist/mutations/define-mutation.d.ts.map +1 -1
  76. package/dist/mutations/define-mutation.js +1 -0
  77. package/dist/mutations/define-mutation.js.map +1 -1
  78. package/dist/mutations/types.d.ts +6 -0
  79. package/dist/mutations/types.d.ts.map +1 -1
  80. package/dist/permissions/policy.d.ts +8 -2
  81. package/dist/permissions/policy.d.ts.map +1 -1
  82. package/dist/permissions/policy.js +25 -40
  83. package/dist/permissions/policy.js.map +1 -1
  84. package/dist/permissions/sight.d.ts +4 -3
  85. package/dist/permissions/sight.d.ts.map +1 -1
  86. package/dist/permissions/sight.js +10 -9
  87. package/dist/permissions/sight.js.map +1 -1
  88. package/dist/permissions/types.d.ts +17 -0
  89. package/dist/permissions/types.d.ts.map +1 -1
  90. package/dist/permissions/types.js.map +1 -1
  91. package/dist/schema/define-node.js +2 -2
  92. package/dist/schema/define-node.js.map +1 -1
  93. package/dist/schema/json-schema.d.ts.map +1 -1
  94. package/dist/schema/json-schema.js +5 -1
  95. package/dist/schema/json-schema.js.map +1 -1
  96. package/dist/schema/types.d.ts +9 -0
  97. package/dist/schema/types.d.ts.map +1 -1
  98. package/dist/store.d.ts +4 -1
  99. package/dist/store.d.ts.map +1 -1
  100. package/dist/store.js +79 -75
  101. package/dist/store.js.map +1 -1
  102. package/dist/version.d.ts +1 -1
  103. package/dist/version.js +1 -1
  104. package/package.json +1 -1
@@ -9,7 +9,7 @@ import { outsideRange } from "./range.js";
9
9
  * the host's to refuse when the document is kept, and the hosted page does
10
10
  * not carry them (FR-57).
11
11
  */
12
- const asArray = (v) => (v === undefined ? [] : Array.isArray(v) ? v : [v]);
12
+ const asArray = (v) => [v ?? []].flat();
13
13
  /** A number field's range, and its default against it (FR-114). */
14
14
  function rangeFindings(document) {
15
15
  const out = [];
@@ -77,8 +77,40 @@ function otherEndFindings(name, act, document) {
77
77
  }
78
78
  return out;
79
79
  }
80
- /** Every range and other-end finding of a document, in its order: fields, then acts. */
80
+ /**
81
+ * What an act's `$me` needs (Roadmap f-act-as-me): a kind that says it is
82
+ * the people, since `$me` is the acting person's own record of it; and,
83
+ * where it links `$me`, a relation whose end there takes that kind.
84
+ */
85
+ function meFindings(name, act, document) {
86
+ if (!JSON.stringify(act).includes('"$me"'))
87
+ return [];
88
+ const at = `acts.${name}`;
89
+ const people = Object.keys(document.kinds).filter((kind) => document.kinds[kind].people);
90
+ if (people.length === 0) {
91
+ return [error("people-unsaid", at, `"$me" is the acting person's own record, and no kind says it is the people`, `say "people": true on the kind whose records are the people (a record's id is a member's principal id)`)];
92
+ }
93
+ const out = [];
94
+ for (const effect of act.effects ?? []) {
95
+ if (!("connect" in effect) && !("sever" in effect))
96
+ continue;
97
+ const relation = "connect" in effect ? effect.connect : effect.sever;
98
+ for (const end of ["from", "to"]) {
99
+ if (effect[end] !== "$me")
100
+ continue;
101
+ const kinds = Object.entries(document.kinds).flatMap(([kind, spec]) => {
102
+ const edge = spec.edges?.[relation];
103
+ return !edge ? [] : end === "from" ? [kind] : edge.to === "*" ? people : edge.to;
104
+ });
105
+ if (kinds.length > 0 && !people.some((kind) => kinds.includes(kind))) {
106
+ out.push(error("act-me", `${at}.effects`, `"${name}" links "$me" at the ${end} end of ${relation}, which takes ${kinds.join(" or ")} and never ${withArticle(people[0])}`, `link "$me" where ${relation} takes ${withArticle(people[0])}`));
107
+ }
108
+ }
109
+ }
110
+ return out;
111
+ }
112
+ /** Every range, other-end and `$me` finding of a document, in its order: fields, then acts. */
81
113
  export function actFindings(document) {
82
- return [...rangeFindings(document), ...Object.entries(document.acts ?? {}).flatMap(([name, act]) => otherEndFindings(name, act, document))];
114
+ return [...rangeFindings(document), ...Object.entries(document.acts ?? {}).flatMap(([name, act]) => [...otherEndFindings(name, act, document), ...meFindings(name, act, document)])];
83
115
  }
84
116
  //# sourceMappingURL=act-findings.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"act-findings.js","sourceRoot":"","sources":["../../src/document/act-findings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"act-findings.js","sourceRoot":"","sources":["../../src/document/act-findings.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"block-context.d.ts","sourceRoot":"","sources":["../../src/document/block-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAgB,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAG9D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAmB3C,mGAAmG;AACnG,eAAO,MAAM,WAAW,MAAM,CAAC;AAC/B;;;;GAIG;AACH,eAAO,MAAM,WAAW,QAAS,CAAC;AAElC,0HAA0H;AAC1H,MAAM,WAAW,mBAAmB;IAClC,+GAA+G;IAC/G,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC;IACzB;;;;OAIG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,uFAAuF;IACvF,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,yFAAyF;IACzF,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3C,iFAAiF;IACjF,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,mEAAmE;IACnE,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;CACpC;AAED,yFAAyF;AACzF,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAAC;IACrC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,KAAK,CAAC,IAAI,MAAM,GAAG,SAAS,CAAC;CAC9B;AAaD;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,GAAG,IAAI,EAAE,KAAK,EAAE;IAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,EAAE,OAAO,GAAE,mBAAwB,GAAG,YAAY,CAwB/L"}
1
+ {"version":3,"file":"block-context.d.ts","sourceRoot":"","sources":["../../src/document/block-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAgB,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAG9D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAoB3C,mGAAmG;AACnG,eAAO,MAAM,WAAW,MAAM,CAAC;AAC/B;;;;GAIG;AACH,eAAO,MAAM,WAAW,QAAS,CAAC;AAElC,0HAA0H;AAC1H,MAAM,WAAW,mBAAmB;IAClC,+GAA+G;IAC/G,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC;IACzB;;;;OAIG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,uFAAuF;IACvF,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,yFAAyF;IACzF,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3C,iFAAiF;IACjF,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,mEAAmE;IACnE,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;CACpC;AAED,yFAAyF;AACzF,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAAC;IACrC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,KAAK,CAAC,IAAI,MAAM,GAAG,SAAS,CAAC;CAC9B;AAaD;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,GAAG,IAAI,EAAE,KAAK,EAAE;IAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,EAAE,OAAO,GAAE,mBAAwB,GAAG,YAAY,CAwB/L"}
@@ -1,5 +1,6 @@
1
1
  import { fieldSpecsOf } from "./blocks.js";
2
2
  import { shapesFor } from "./computed-values.js";
3
+ import { isoToday } from "../days.js";
3
4
  /*
4
5
  * A RECORD'S DECLARED BLOCKS, RESOLVED ONCE, FOR EVERYONE WHO SAYS THEM.
5
6
  *
@@ -59,7 +60,7 @@ export function blockContextFor(source, principal, given, options = {}) {
59
60
  kinds: shapesFor(schema),
60
61
  fields: node ? fieldsFor(schema, node.kind) : {},
61
62
  definition: (definition || undefined),
62
- today: options.today ?? seen.today?.() ?? new Date().toISOString().slice(0, 10),
63
+ today: options.today ?? seen.today?.() ?? isoToday(),
63
64
  money,
64
65
  heading: options.heading ?? (once ? 2 : 3),
65
66
  firstHeading,
@@ -1 +1 @@
1
- {"version":3,"file":"block-context.js","sourceRoot":"","sources":["../../src/document/block-context.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAqB,MAAM,aAAa,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAKjD;;;;;;;;;;;;;;;GAeG;AAEH,mGAAmG;AACnG,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,CAAC;AAC/B;;;;GAIG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC;AA6BlC,MAAM,MAAM,GAAG,IAAI,OAAO,EAA4D,CAAC;AAEvF,qEAAqE;AACrE,SAAS,SAAS,CAAC,MAAiB,EAAE,IAAY;IAChD,IAAI,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC,MAAM;QAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC;IACtD,IAAI,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC9B,IAAI,CAAC,MAAM;QAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACrE,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,MAAmB,EAAE,SAA2B,EAAE,KAA4D,EAAE,UAA+B,EAAE;IAC/K,IAAI,SAAS,IAAI,OAAQ,MAAoC,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QACpF,MAAM,IAAI,SAAS,CAAC,kIAAkI,CAAC,CAAC;IAC1J,CAAC;IACD,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAE,MAA2B,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACjF,gJAAgJ;IAChJ,MAAM,IAAI,GAAG,SAAS,IAAI,KAAK,CAAC,CAAC,CAAC,CAAG,IAAI,CAAC,KAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAgE,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAClK,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3B,MAAM,UAAU,GAAG,IAAI,IAAI,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3D,MAAM,IAAI,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,MAAM,CAAC;IAC1D,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IACxC,OAAO;QACL,IAAI,EAAE,IAA2B;QACjC,KAAK,EAAE,IAAI,CAAC,KAAoB;QAChC,MAAM;QACN,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC;QACxB,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;QAChD,UAAU,EAAE,CAAC,UAAU,IAAI,SAAS,CAA+B;QACnE,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;QAC/E,KAAK;QACL,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1C,YAAY;QACZ,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC;KAC7D,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"block-context.js","sourceRoot":"","sources":["../../src/document/block-context.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAqB,MAAM,aAAa,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAIjD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC;;;;;;;;;;;;;;;GAeG;AAEH,mGAAmG;AACnG,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,CAAC;AAC/B;;;;GAIG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC;AA6BlC,MAAM,MAAM,GAAG,IAAI,OAAO,EAA4D,CAAC;AAEvF,qEAAqE;AACrE,SAAS,SAAS,CAAC,MAAiB,EAAE,IAAY;IAChD,IAAI,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC,MAAM;QAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC;IACtD,IAAI,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC9B,IAAI,CAAC,MAAM;QAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACrE,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,MAAmB,EAAE,SAA2B,EAAE,KAA4D,EAAE,UAA+B,EAAE;IAC/K,IAAI,SAAS,IAAI,OAAQ,MAAoC,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QACpF,MAAM,IAAI,SAAS,CAAC,kIAAkI,CAAC,CAAC;IAC1J,CAAC;IACD,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAE,MAA2B,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACjF,gJAAgJ;IAChJ,MAAM,IAAI,GAAG,SAAS,IAAI,KAAK,CAAC,CAAC,CAAC,CAAG,IAAI,CAAC,KAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAgE,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAClK,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3B,MAAM,UAAU,GAAG,IAAI,IAAI,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3D,MAAM,IAAI,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,MAAM,CAAC;IAC1D,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IACxC,OAAO;QACL,IAAI,EAAE,IAA2B;QACjC,KAAK,EAAE,IAAI,CAAC,KAAoB;QAChC,MAAM;QACN,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC;QACxB,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;QAChD,UAAU,EAAE,CAAC,UAAU,IAAI,SAAS,CAA+B;QACnE,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,QAAQ,EAAE;QACpD,KAAK;QACL,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1C,YAAY;QACZ,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC;KAC7D,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"compile.d.ts","sourceRoot":"","sources":["../../src/document/compile.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAe,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEjE,OAAO,EAA6B,KAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AACxE,OAAO,EAGL,KAAK,OAAO,EAGZ,KAAK,eAAe,EAErB,MAAM,aAAa,CAAC;AAQrB,OAAO,EAML,KAAK,SAAS,EAId,KAAK,gBAAgB,EAGrB,KAAK,eAAe,EAErB,MAAM,eAAe,CAAC;AAEvB,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAkBjG,MAAM,WAAW,cAAc;IAC7B,6DAA6D;IAC7D,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,eAAe,CAAC;IACpC;;;;OAIG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACpC;AAID,mGAAmG;AACnG,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG;IAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,eAAe,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAA;CAAE,CAoCzH;AA2BD,wBAAgB,UAAU,CAAC,QAAQ,EAAE,eAAe,GAAG,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAa5E;AAED,sDAAsD;AACtD,wBAAgB,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,eAAe,GAAG,SAAS,SAAS,EAAE,CA+BvF;AA+OD;;;;;;;GAOG;AACH,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,GAAE,cAAmB,GAAG,gBAAgB,GAAG,eAAe,CAS1H;AAiID,4GAA4G;AAC5G,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,GAAG,MAAM,CAM9E;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,GAAG,OAAO,CAMnG;AAED,OAAO,EAAE,UAAU,EAAE,CAAC"}
1
+ {"version":3,"file":"compile.d.ts","sourceRoot":"","sources":["../../src/document/compile.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAe,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEjE,OAAO,EAA6B,KAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AACxE,OAAO,EAGL,KAAK,OAAO,EAGZ,KAAK,eAAe,EAErB,MAAM,aAAa,CAAC;AAQrB,OAAO,EAML,KAAK,SAAS,EAId,KAAK,gBAAgB,EAGrB,KAAK,eAAe,EAErB,MAAM,eAAe,CAAC;AAEvB,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAkBjG,MAAM,WAAW,cAAc;IAC7B,6DAA6D;IAC7D,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,eAAe,CAAC;IACpC;;;;OAIG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACpC;AAID,mGAAmG;AACnG,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG;IAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,eAAe,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAA;CAAE,CAqCzH;AA2BD,wBAAgB,UAAU,CAAC,QAAQ,EAAE,eAAe,GAAG,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAa5E;AAED,sDAAsD;AACtD,wBAAgB,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,eAAe,GAAG,SAAS,SAAS,EAAE,CA+BvF;AA+OD;;;;;;;GAOG;AACH,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,GAAE,cAAmB,GAAG,gBAAgB,GAAG,eAAe,CAS1H;AAiID,4GAA4G;AAC5G,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,GAAG,MAAM,CAM9E;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,GAAG,OAAO,CAMnG;AAED,OAAO,EAAE,UAAU,EAAE,CAAC"}
@@ -12,12 +12,14 @@ import { farEnd } from "./far-end.js";
12
12
  import { parsedComputed, workedOutAlone } from "./computed.js";
13
13
  import { pageFieldFindings } from "./page-fields.js";
14
14
  import { build, COMPILED_FORMAT, defaultLabelField, refName, SUBJECT_ARG, } from "./compiled.js";
15
- const BUILTIN_REFS = new Set(["subject", "now", "today"]);
15
+ const BUILTIN_REFS = new Set(["subject", "now", "today", "me"]);
16
16
  /** Parse and validate without compiling — the document's own sentences, before the framework's. */
17
17
  export function readDocument(raw) {
18
+ // Measured as it came, text or a value: one sentence for either too large, and no text that size parsed.
19
+ if ((typeof raw === "string" ? raw : JSON.stringify(raw ?? null)).length > MAX_DOCUMENT_BYTES) {
20
+ return { findings: [error("too-large", "", `a document may be at most ${MAX_DOCUMENT_BYTES / 1024} KB`)] };
21
+ }
18
22
  if (typeof raw === "string") {
19
- if (raw.length > MAX_DOCUMENT_BYTES)
20
- return { findings: [error("too-large", "", `a document may be at most ${MAX_DOCUMENT_BYTES / 1024} KB`)] };
21
23
  try {
22
24
  raw = JSON.parse(raw);
23
25
  }
@@ -25,9 +27,6 @@ export function readDocument(raw) {
25
27
  return { findings: [error("not-json", "", `this is not JSON: ${e.message}`)] };
26
28
  }
27
29
  }
28
- else if (JSON.stringify(raw ?? null).length > MAX_DOCUMENT_BYTES) {
29
- return { findings: [error("too-large", "", `a document may be at most ${MAX_DOCUMENT_BYTES / 1024} KB`)] };
30
- }
31
30
  // An older format is upgraded before it is read (upgrade.ts); the host records that as a new version.
32
31
  try {
33
32
  raw = upgradeDocument(raw).document;
@@ -56,7 +55,7 @@ export function readDocument(raw) {
56
55
  const document = parsed.data;
57
56
  return { document, findings: validate(document) };
58
57
  }
59
- const asArray = (v) => (v === undefined ? [] : Array.isArray(v) ? v : [v]);
58
+ const asArray = (v) => [v ?? []].flat();
60
59
  function edgeIndex(document) {
61
60
  const edges = new Map();
62
61
  for (const [kind, spec] of Object.entries(document.kinds)) {
@@ -1 +1 @@
1
- {"version":3,"file":"compile.js","sourceRoot":"","sources":["../../src/document/compile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compile.js","sourceRoot":"","sources":["../../src/document/compile.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"compiled.d.ts","sourceRoot":"","sources":["../../src/document/compiled.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compiled.d.ts","sourceRoot":"","sources":["../../src/document/compiled.ts"],"names":[],"mappings":"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"}
@@ -4,17 +4,18 @@
4
4
  * split the page's first chunks differently, a third of a kilobyte more up
5
5
  * front (docs/hosted-page.md).
6
6
  */
7
- import { createSchema, defineInvariant, defineMutation, defineNode, edgeId, RuleBudgetError, withArticle, } from "../index.js";
7
+ import { createSchema, defineInvariant, defineMutation, defineNode, edgeId, humanizeField, RuleBudgetError, withArticle, } from "../index.js";
8
8
  import { refTo } from "../mutations/node-ref.js";
9
9
  import { ActRefusal } from "../refused.js";
10
10
  import * as z from "../schema/zod.js";
11
11
  import { fileSchema } from "../schema/files.js";
12
12
  import { evaluateExpr, ExprBudgetError, ExprEvalError, GRAPH_FACTS } from "./expr/evaluate.js";
13
13
  import { error } from "./findings.js";
14
- import { renderTemplate } from "./template.js";
14
+ import { formatValue, renderTemplate } from "./template.js";
15
15
  import { rememberDocument } from "./remembered.js";
16
- import { respellDocument } from "./respell.js";
16
+ import { isRecord, respellDocument } from "./respell.js";
17
17
  import { moneyOf } from "./brand.js";
18
+ import { ISO_DAY, isoToday } from "../days.js";
18
19
  /*
19
20
  * A COMPILED APP, HANDED TO THE PAGE (FR-123).
20
21
  *
@@ -81,7 +82,7 @@ export function fieldSchema(spec, optional) {
81
82
  schema = z.boolean();
82
83
  break;
83
84
  case "date":
84
- schema = z.string().check(z.regex(/^\d{4}-\d{2}-\d{2}$/, "a date like 2026-10-02"));
85
+ schema = z.string().check(z.regex(ISO_DAY, "a date like 2026-10-02"));
85
86
  break;
86
87
  case "datetime":
87
88
  schema = z.string().check(z.refine((s) => !Number.isNaN(Date.parse(s)), "a date and time like 2026-10-02T14:30:00Z"));
@@ -90,7 +91,7 @@ export function fieldSchema(spec, optional) {
90
91
  schema = z.enum(spec.options);
91
92
  break;
92
93
  case "list":
93
- schema = z.array(spec.of === "number" ? z.number() : spec.of === "date" ? z.string().check(z.regex(/^\d{4}-\d{2}-\d{2}$/)) : spec.of === "image" || spec.of === "file" ? fileSchema(spec.of) : z.string().check(z.maxLength(500))).check(z.maxLength(200));
94
+ schema = z.array(spec.of === "number" ? z.number() : spec.of === "date" ? z.string().check(z.regex(ISO_DAY)) : spec.of === "image" || spec.of === "file" ? fileSchema(spec.of) : z.string().check(z.maxLength(500))).check(z.maxLength(200));
94
95
  break;
95
96
  case "image":
96
97
  case "file":
@@ -132,7 +133,6 @@ export function serializeCompiled(compiled) {
132
133
  throw new Error("this app was not compiled from a document: serializeCompiled takes what compileDocument, compileDocumentWithoutCheck or appFrom returned");
133
134
  return { ...plan, findings: [...compiled.findings] };
134
135
  }
135
- const isRecord = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
136
136
  const sameNames = (a, b) => isRecord(b) && Object.keys(a ?? {}).length === Object.keys(b).length && Object.keys(a ?? {}).every((name) => Object.hasOwn(b, name));
137
137
  /**
138
138
  * The app a compiled document describes, built in the page without the
@@ -176,7 +176,7 @@ export function appFrom(compiled, options = {}) {
176
176
  /** The app, from a compiled document: the second half of compiling one, and all of `appFrom`. */
177
177
  export function build(plan, options = {}) {
178
178
  const { document } = plan;
179
- const today = options.today ?? (() => new Date().toISOString().slice(0, 10));
179
+ const today = options.today ?? isoToday;
180
180
  const edges = new Map(plan.edges.map(([name, edge]) => [name, edge]));
181
181
  const shapes = new Map();
182
182
  for (const [kind, spec] of Object.entries(document.kinds)) {
@@ -193,6 +193,8 @@ export function build(plan, options = {}) {
193
193
  // What `{x | money}` says in a label, a sentence or a refusal: the app's currency and locale (FR-100).
194
194
  const money = moneyOf(document);
195
195
  // ── kinds ────────────────────────────────────────────────────────────────
196
+ // Each kind's defaults: what a record is made with before an act sets anything.
197
+ const madeAs = new Map();
196
198
  const definitions = Object.entries(document.kinds).map(([kind, spec]) => {
197
199
  const shape = {};
198
200
  for (const [field, f] of Object.entries(spec.fields))
@@ -204,8 +206,10 @@ export function build(plan, options = {}) {
204
206
  ...Object.entries(spec.fields).filter(([, f]) => f.label).map(([n, f]) => [n, f.label]),
205
207
  ...computed.filter(([, c]) => c.label).map(([n, c]) => [n, c.label]),
206
208
  ]);
209
+ const named = Object.keys(labels).length > 0;
207
210
  // Defaults stay out of the zod schema (hydration must not invent values) and ride beside it, for a repair to read.
208
211
  const defaults = Object.fromEntries(Object.entries(spec.fields).filter(([, f]) => f.default !== undefined).map(([n, f]) => [n, f.default]));
212
+ madeAs.set(kind, defaults);
209
213
  // A relation as the kind declares it, less the name it had in the version before, which is the migration's.
210
214
  const edgeDecls = Object.fromEntries(Object.entries(spec.edges ?? {}).map(([n, { renamedFrom: _, ...e }]) => [n, e]));
211
215
  // What the definition says as the document says it, where it is said.
@@ -221,9 +225,10 @@ export function build(plan, options = {}) {
221
225
  ...said("lifecycle"),
222
226
  ...said("figure"),
223
227
  ...said("fieldRoles"),
228
+ ...said("people"),
224
229
  ...(spec.computed && Object.keys(spec.computed).length > 0 ? { computed: spec.computed } : {}),
225
- ...(Object.keys(labels).length > 0 || spec.glance || spec.page
226
- ? { display: { ...(Object.keys(labels).length > 0 ? { labels } : {}), ...(spec.glance ? { glance: [...spec.glance] } : {}), ...(spec.page ? { page: spec.page } : {}) } }
230
+ ...(named || spec.glance || spec.page
231
+ ? { display: { ...(named ? { labels } : {}), ...(spec.glance ? { glance: [...spec.glance] } : {}), ...(spec.page ? { page: spec.page } : {}) } }
227
232
  : {}),
228
233
  ...(Object.keys(defaults).length > 0 ? { defaults } : {}),
229
234
  });
@@ -234,6 +239,8 @@ export function build(plan, options = {}) {
234
239
  return definition?.label?.(node) ?? node.id;
235
240
  }
236
241
  // ── acts ─────────────────────────────────────────────────────────────────
242
+ /** A record of a kind as it is made: its defaults, before what an act sets. */
243
+ const blank = (kind) => ({ id: "", kind, ...madeAs.get(kind) });
237
244
  const mutations = [];
238
245
  for (const [name, act] of Object.entries(document.acts ?? {})) {
239
246
  const planned = plan.acts[name];
@@ -242,8 +249,53 @@ export function build(plan, options = {}) {
242
249
  const shape = {};
243
250
  for (const [arg, a] of args)
244
251
  shape[arg] = argSchema(a);
245
- const subjectKinds = act.on === undefined ? [] : Array.isArray(act.on) ? act.on : [act.on];
252
+ const subjectKinds = [act.on ?? []].flat();
246
253
  const exprs = new Map(planned.exprs);
254
+ /*
255
+ * WHAT A CREATING ACT MADE, BY ITS OWN LABEL. With no subject, the line
256
+ * the log keeps took the first string argument, which is whatever the
257
+ * caller happened to send first: "Add a feature: framework" for a
258
+ * feature named in another field. The first record the act creates is
259
+ * labeled from the arguments its fields are set from.
260
+ */
261
+ const creation = effects.find((e) => "create" in e);
262
+ /** What an effect's value is, as the act works it out: an expression, a literal (`$$` saying one `$`), the time or an argument. */
263
+ const valueOf = (value, bindings, graph, subject = null) => {
264
+ if (isRecord(value) && "expr" in value)
265
+ return evaluateExpr(exprs.get(value.expr), { graph, subject, kinds: shapes, bindings: bindings, today: today() });
266
+ const ref = refName(value);
267
+ return ref === undefined ? (typeof value === "string" && value.startsWith("$$") ? value.slice(1) : value) : ref === "now" ? new Date().toISOString() : ref === "today" ? today() : bindings[ref];
268
+ };
269
+ /*
270
+ * Labeled as it would be made: its defaults, then what the act sets (the review before 0.1.27).
271
+ * THEN THE REST IT WAS GIVEN (FR-169), as the record says them: "Add a revenue stream: nascent"
272
+ * was read as a stream called nascent, by the person and then by the model.
273
+ */
274
+ const madeLabel = (input, graph) => {
275
+ if (!creation)
276
+ return "";
277
+ const fields = document.kinds[creation.create].fields;
278
+ const node = blank(creation.create);
279
+ const given = [];
280
+ for (const [field, value] of Object.entries(creation.set ?? {})) {
281
+ try {
282
+ node[field] = valueOf(value, input, graph) ?? node[field];
283
+ }
284
+ catch {
285
+ // A value that cannot be worked out here is left unsaid: the act refuses it in its own words.
286
+ }
287
+ const arg = refName(value);
288
+ // Every field it sets is one of the kind's: the reader refused any other (`act-field`).
289
+ if (arg && input[arg] !== undefined)
290
+ given.push(field);
291
+ }
292
+ const label = labelFor(node).trim();
293
+ // Said once: what the label already says, a no and a long text are not said again.
294
+ const rest = given
295
+ .filter((field) => node[field] !== false && fields[field].type !== "text" && labelFor({ ...node, [field]: undefined }).trim() === label)
296
+ .map((field) => (node[field] === true ? (fields[field].label ?? humanizeField(field)) : formatValue(node[field], fields[field].format, today(), [], money)));
297
+ return label && rest.length > 0 ? `${label} (${rest.join(", ")})` : label;
298
+ };
247
299
  mutations.push(defineMutation(name, {
248
300
  input: z.object(shape),
249
301
  title,
@@ -261,8 +313,9 @@ export function build(plan, options = {}) {
261
313
  ...(Object.keys(sets).length > 0 ? { sets } : {}),
262
314
  describe: (input, graph) => {
263
315
  const subject = typeof input[SUBJECT_ARG] === "string" ? graph.getNode(input[SUBJECT_ARG]) : undefined;
264
- const what = subject ? labelFor(subject) : Object.values(input).find((v) => typeof v === "string");
265
- return what ? `${title}: ${String(what)}` : title;
316
+ // Never the first string it was handed (FR-169): that was a stream's maturity read as its name.
317
+ const what = subject ? labelFor(subject) : madeLabel(input, graph);
318
+ return what ? `${title}: ${what}` : title;
266
319
  },
267
320
  apply(context, input) {
268
321
  const graph = context.graph;
@@ -308,36 +361,31 @@ export function build(plan, options = {}) {
308
361
  context.removeEdge(edge);
309
362
  };
310
363
  const resolve = (value, current) => {
311
- if (value && typeof value === "object" && !Array.isArray(value) && "expr" in value) {
312
- try {
313
- return evaluateExpr(exprs.get(value.expr), { graph, subject: current ?? subject ?? null, kinds: shapes, bindings, today: today() });
314
- }
315
- catch (e) {
316
- if (e instanceof ExprEvalError)
317
- throw new ActRefusal(`"${title}" could not work out a value: ${e.sentence}`);
318
- throw e;
319
- }
320
- }
321
364
  const ref = refName(value);
322
- if (ref === undefined)
323
- return typeof value === "string" && value.startsWith("$$") ? value.slice(1) : value;
324
365
  if (ref === "subject")
325
366
  return subjectId;
326
- if (ref === "now")
327
- return new Date().toISOString();
328
- if (ref === "today")
329
- return today();
367
+ // The acting person's own record of the people kind (Roadmap f-act-as-me), never an argument.
368
+ if (ref === "me") {
369
+ const me = context.me;
370
+ if (me && document.kinds[graph.getNode(me)?.kind]?.people)
371
+ return me;
372
+ throw new ActRefusal(`"${title}" is done as you, and you have no record here`);
373
+ }
330
374
  if (made.has(ref))
331
375
  return made.get(ref);
332
- return input[ref];
376
+ try {
377
+ return valueOf(value, bindings, graph, current ?? subject ?? null);
378
+ }
379
+ catch (e) {
380
+ if (e instanceof ExprEvalError)
381
+ throw new ActRefusal(`"${title}" could not work out a value: ${e.sentence}`);
382
+ throw e;
383
+ }
333
384
  };
334
385
  for (const effect of effects) {
335
386
  if ("create" in effect) {
336
387
  const kind = document.kinds[effect.create];
337
- const node = { kind: effect.create };
338
- for (const [field, f] of Object.entries(kind.fields))
339
- if (f.default !== undefined)
340
- node[field] = f.default;
388
+ const node = blank(effect.create);
341
389
  for (const [field, value] of Object.entries(effect.set ?? {})) {
342
390
  const v = resolve(value, undefined);
343
391
  if (v !== undefined)
@@ -345,7 +393,7 @@ export function build(plan, options = {}) {
345
393
  }
346
394
  const labelField = defaultLabelField(kind);
347
395
  const id = context.freshId(String((labelField && node[labelField]) ?? effect.create), effect.create);
348
- context.addNode({ id, ...node });
396
+ context.addNode({ ...node, id });
349
397
  if (effect.as)
350
398
  made.set(effect.as, id);
351
399
  }
@@ -474,13 +522,7 @@ export function build(plan, options = {}) {
474
522
  * absent, everybody sees everything; present, a kind no sight names is
475
523
  * seen by nobody but the system, and `own` is the principal's own records.
476
524
  */
477
- const policy = document.policy
478
- ? {
479
- grants: document.policy.grants,
480
- ...(document.policy.sees ? { sees: document.policy.sees } : {}),
481
- ...(document.roles ? { roles: document.roles } : {}),
482
- }
483
- : undefined;
525
+ const policy = document.policy && { ...document.policy, ...(document.roles ? { roles: document.roles } : {}) };
484
526
  const app = {
485
527
  name: document.name,
486
528
  schema,