@0disoft/mensor-compiler 0.2.0 → 0.9.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 (48) hide show
  1. package/README.md +70 -0
  2. package/dist/src/check-project.d.ts +2 -1
  3. package/dist/src/check-project.d.ts.map +1 -1
  4. package/dist/src/check-project.js +191 -26
  5. package/dist/src/check-project.js.map +1 -1
  6. package/dist/src/filesystem.d.ts +31 -2
  7. package/dist/src/filesystem.d.ts.map +1 -1
  8. package/dist/src/filesystem.js +142 -12
  9. package/dist/src/filesystem.js.map +1 -1
  10. package/dist/src/form-index-types.d.ts +2 -62
  11. package/dist/src/form-index-types.d.ts.map +1 -1
  12. package/dist/src/form-index-types.js.map +1 -1
  13. package/dist/src/form-index.d.ts +5 -0
  14. package/dist/src/form-index.d.ts.map +1 -1
  15. package/dist/src/form-index.js +23 -0
  16. package/dist/src/form-index.js.map +1 -1
  17. package/dist/src/form-rule.d.ts.map +1 -1
  18. package/dist/src/form-rule.js +35 -12
  19. package/dist/src/form-rule.js.map +1 -1
  20. package/dist/src/html-forms.d.ts.map +1 -1
  21. package/dist/src/html-forms.js +150 -87
  22. package/dist/src/html-forms.js.map +1 -1
  23. package/dist/src/index.d.ts +3 -2
  24. package/dist/src/index.d.ts.map +1 -1
  25. package/dist/src/index.js +2 -1
  26. package/dist/src/index.js.map +1 -1
  27. package/dist/src/locations.d.ts +7 -0
  28. package/dist/src/locations.d.ts.map +1 -1
  29. package/dist/src/locations.js +77 -67
  30. package/dist/src/locations.js.map +1 -1
  31. package/dist/src/module-boundary-rule.d.ts +2 -0
  32. package/dist/src/module-boundary-rule.d.ts.map +1 -1
  33. package/dist/src/module-boundary-rule.js +89 -55
  34. package/dist/src/module-boundary-rule.js.map +1 -1
  35. package/dist/src/route-index.d.ts +6 -1
  36. package/dist/src/route-index.d.ts.map +1 -1
  37. package/dist/src/route-index.js +26 -8
  38. package/dist/src/route-index.js.map +1 -1
  39. package/dist/src/route-rule.d.ts +3 -2
  40. package/dist/src/route-rule.d.ts.map +1 -1
  41. package/dist/src/route-rule.js +2 -7
  42. package/dist/src/route-rule.js.map +1 -1
  43. package/dist/src/types.d.ts +19 -1
  44. package/dist/src/types.d.ts.map +1 -1
  45. package/dist/src/typescript-source.d.ts.map +1 -1
  46. package/dist/src/typescript-source.js +206 -45
  47. package/dist/src/typescript-source.js.map +1 -1
  48. package/package.json +2 -2
@@ -1,6 +1,17 @@
1
- import { lstat, readFile, readdir } from "node:fs/promises";
1
+ import { lstat, open, readdir } from "node:fs/promises";
2
2
  import * as path from "node:path";
3
3
  import { assertRelativePosixPath, compareText, fromProjectPath, InputFailure, joinProjectPath, } from "./paths.js";
4
+ const nodeProjectFileOperations = {
5
+ lstat: (file) => lstat(file, { bigint: true }),
6
+ async open(file) {
7
+ const handle = await open(file, "r");
8
+ return {
9
+ close: () => handle.close(),
10
+ read: (buffer, offset, length, position) => handle.read(buffer, offset, length, position),
11
+ stat: () => handle.stat({ bigint: true }),
12
+ };
13
+ },
14
+ };
4
15
  export async function assertProjectRoot(root) {
5
16
  const absoluteRoot = path.resolve(root);
6
17
  try {
@@ -17,15 +28,37 @@ export async function assertProjectRoot(root) {
17
28
  }
18
29
  return absoluteRoot;
19
30
  }
20
- export async function readProjectFile(root, relativePath, maxFileBytes) {
31
+ export async function readProjectFile(root, relativePath, maxFileBytes, operations = nodeProjectFileOperations) {
21
32
  const safePath = assertRelativePosixPath(relativePath, "File path");
22
- await assertPathHasNoSymlink(root, safePath, false);
33
+ await assertParentPathHasNoSymlink(root, safePath, operations);
34
+ return readOpenedProjectFile(root, safePath, maxFileBytes, operations);
35
+ }
36
+ export async function readProjectSnapshotFile(root, relativePath, maxFileBytes, expected, operations = nodeProjectFileOperations) {
37
+ const safePath = assertRelativePosixPath(relativePath, "File path");
38
+ return readOpenedProjectFile(root, safePath, maxFileBytes, operations, expected);
39
+ }
40
+ async function readOpenedProjectFile(root, safePath, maxFileBytes, operations, expected) {
41
+ let handle;
42
+ let primaryError;
23
43
  try {
24
- const stats = await lstat(fromProjectPath(root, safePath));
25
- if (stats.size > maxFileBytes) {
26
- throw new InputFailure("filesystem", "file.size_limit_exceeded", `Project file ${JSON.stringify(safePath)} exceeds the configured limit of ${maxFileBytes} bytes.`, safePath);
44
+ const absolutePath = fromProjectPath(root, safePath);
45
+ handle = await operations.open(absolutePath);
46
+ const before = await handle.stat();
47
+ assertRegularFile(before, safePath);
48
+ if (expected !== undefined && !sameSnapshot(expected, before)) {
49
+ throw new InputFailure("filesystem", "file.changed_since_discovery", `Project file ${JSON.stringify(safePath)} changed after source discovery.`, safePath);
50
+ }
51
+ assertFileSize(before.size, safePath, maxFileBytes);
52
+ const bytes = await readBounded(handle, maxFileBytes);
53
+ const after = await handle.stat();
54
+ if (expected === undefined) {
55
+ const pathAfter = await operations.lstat(absolutePath);
56
+ assertStableFile(before, after, pathAfter, safePath);
57
+ }
58
+ else if (!sameSnapshot(before, after)) {
59
+ throw new InputFailure("filesystem", "file.changed_during_read", `Project file ${JSON.stringify(safePath)} changed while it was being read.`, safePath);
27
60
  }
28
- const bytes = await readFile(fromProjectPath(root, safePath));
61
+ assertFileSize(BigInt(bytes.length), safePath, maxFileBytes);
29
62
  try {
30
63
  return new TextDecoder("utf-8", {
31
64
  fatal: true,
@@ -37,17 +70,94 @@ export async function readProjectFile(root, relativePath, maxFileBytes) {
37
70
  }
38
71
  }
39
72
  catch (error) {
73
+ primaryError = error;
40
74
  if (error instanceof InputFailure) {
41
75
  throw error;
42
76
  }
43
77
  throw filesystemFailure(error, "file.unreadable", `Cannot read project file ${JSON.stringify(safePath)}.`, safePath);
44
78
  }
79
+ finally {
80
+ if (handle !== undefined) {
81
+ try {
82
+ await handle.close();
83
+ }
84
+ catch (error) {
85
+ if (primaryError === undefined) {
86
+ throw filesystemFailure(error, "file.unreadable", `Cannot close project file ${JSON.stringify(safePath)}.`, safePath);
87
+ }
88
+ }
89
+ }
90
+ }
91
+ }
92
+ async function readBounded(handle, maxFileBytes) {
93
+ const bytes = Buffer.alloc(maxFileBytes + 1);
94
+ let offset = 0;
95
+ while (offset < bytes.length) {
96
+ const { bytesRead } = await handle.read(bytes, offset, bytes.length - offset, offset);
97
+ if (bytesRead === 0) {
98
+ break;
99
+ }
100
+ offset += bytesRead;
101
+ }
102
+ return bytes.subarray(0, offset);
103
+ }
104
+ function assertFileSize(size, safePath, maxFileBytes) {
105
+ if (size > BigInt(maxFileBytes)) {
106
+ throw new InputFailure("filesystem", "file.size_limit_exceeded", `Project file ${JSON.stringify(safePath)} exceeds the configured limit of ${maxFileBytes} bytes.`, safePath);
107
+ }
108
+ }
109
+ function assertRegularFile(stats, safePath) {
110
+ if (stats.isSymbolicLink()) {
111
+ throw new InputFailure("filesystem", "path.symlink_forbidden", `Project path ${JSON.stringify(safePath)} is a symlink.`, safePath);
112
+ }
113
+ if (!stats.isFile()) {
114
+ throw new InputFailure("filesystem", "path.not_file", `Project path ${JSON.stringify(safePath)} has the wrong filesystem type.`, safePath);
115
+ }
116
+ }
117
+ function assertStableFile(before, after, pathAfter, safePath) {
118
+ assertRegularFile(pathAfter, safePath);
119
+ if (!sameSnapshot(before, after) ||
120
+ !sameIdentity(after, pathAfter) ||
121
+ after.size !== pathAfter.size ||
122
+ after.mtimeNs !== pathAfter.mtimeNs ||
123
+ after.ctimeNs !== pathAfter.ctimeNs) {
124
+ throw new InputFailure("filesystem", "file.changed_during_read", `Project file ${JSON.stringify(safePath)} changed while it was being read.`, safePath);
125
+ }
45
126
  }
46
- export async function discoverProjectFiles(root, sourceRoot, maxFiles, maxTotalBytes, maxDepth) {
127
+ function sameSnapshot(left, right) {
128
+ return sameIdentity(left, right) &&
129
+ left.size === right.size &&
130
+ left.mtimeNs === right.mtimeNs &&
131
+ left.ctimeNs === right.ctimeNs;
132
+ }
133
+ function sameIdentity(left, right) {
134
+ return left.dev === right.dev && left.ino === right.ino;
135
+ }
136
+ async function assertParentPathHasNoSymlink(root, relativePath, operations) {
137
+ const segments = relativePath.split("/");
138
+ for (let index = 0; index < segments.length - 1; index += 1) {
139
+ const current = segments.slice(0, index + 1).join("/");
140
+ let stats;
141
+ try {
142
+ stats = await operations.lstat(fromProjectPath(root, current));
143
+ }
144
+ catch (error) {
145
+ throw filesystemFailure(error, "path.unreadable", `Cannot inspect project path ${JSON.stringify(current)}.`, current);
146
+ }
147
+ if (stats.isSymbolicLink()) {
148
+ throw new InputFailure("filesystem", "path.symlink_forbidden", `Project path ${JSON.stringify(current)} is a symlink.`, current);
149
+ }
150
+ if (!stats.isDirectory()) {
151
+ throw new InputFailure("filesystem", "path.not_directory", `Project path ${JSON.stringify(current)} must be a directory.`, current);
152
+ }
153
+ }
154
+ }
155
+ export async function discoverProjectSnapshot(root, sourceRoot, maxFiles, maxTotalBytes, maxDepth) {
47
156
  const safeSourceRoot = assertRelativePosixPath(sourceRoot, "sourceRoot");
48
157
  await assertPathHasNoSymlink(root, safeSourceRoot, true);
49
158
  const files = [];
50
- let totalBytes = 0;
159
+ const identities = new Map();
160
+ let totalBytes = 0n;
51
161
  async function visit(relativeDirectory, depth) {
52
162
  if (depth > maxDepth) {
53
163
  throw new InputFailure("filesystem", "discovery.depth_limit_exceeded", `Source discovery exceeded the configured directory depth limit of ${maxDepth}.`, relativeDirectory);
@@ -77,20 +187,40 @@ export async function discoverProjectFiles(root, sourceRoot, maxFiles, maxTotalB
77
187
  }
78
188
  let stats;
79
189
  try {
80
- stats = await lstat(fromProjectPath(root, relativeEntry));
190
+ stats = await lstat(fromProjectPath(root, relativeEntry), { bigint: true });
81
191
  }
82
192
  catch (error) {
83
193
  throw filesystemFailure(error, "file.unreadable", `Cannot inspect project file ${JSON.stringify(relativeEntry)}.`, relativeEntry);
84
194
  }
195
+ identities.set(relativeEntry, fileIdentity(stats));
85
196
  totalBytes += stats.size;
86
- if (totalBytes > maxTotalBytes) {
197
+ if (totalBytes > BigInt(maxTotalBytes)) {
87
198
  throw new InputFailure("filesystem", "discovery.total_bytes_limit_exceeded", `Source discovery exceeded the configured total byte limit of ${maxTotalBytes}.`, safeSourceRoot);
88
199
  }
89
200
  }
90
201
  }
91
202
  }
92
203
  await visit(safeSourceRoot, 0);
93
- return files;
204
+ return {
205
+ files,
206
+ readFile(relativePath, maxFileBytes) {
207
+ const safePath = assertRelativePosixPath(relativePath, "File path");
208
+ const identity = identities.get(safePath);
209
+ if (identity === undefined) {
210
+ throw new InputFailure("filesystem", "file.not_in_snapshot", `Project file ${JSON.stringify(safePath)} was not present during source discovery.`, safePath);
211
+ }
212
+ return readProjectSnapshotFile(root, safePath, maxFileBytes, identity);
213
+ },
214
+ };
215
+ }
216
+ function fileIdentity(stats) {
217
+ return {
218
+ ctimeNs: stats.ctimeNs,
219
+ dev: stats.dev,
220
+ ino: stats.ino,
221
+ mtimeNs: stats.mtimeNs,
222
+ size: stats.size,
223
+ };
94
224
  }
95
225
  async function assertPathHasNoSymlink(root, relativePath, requireDirectory) {
96
226
  const segments = relativePath.split("/");
@@ -1 +1 @@
1
- {"version":3,"file":"filesystem.js","sourceRoot":"","sources":["../../src/filesystem.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"filesystem.js","sourceRoot":"","sources":["../../src/filesystem.ts"],"names":[],"mappings":"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"}
@@ -1,65 +1,5 @@
1
- import type { SourceRange } from "@0disoft/mensor-contract";
2
- export type ContentDigest = `sha256:${string}`;
3
- export type DynamicReason = "computed-attribute" | "conditional-presence" | "custom-helper-semantics" | "dynamic-interpolation" | "repeated-generation";
4
- export type UnsupportedReason = "file-input" | "named-submitter" | "provider-resource-limit" | "submitter-route-override" | "unsupported-control-kind";
5
- export type IndexedEvidence<T> = {
6
- readonly state: "known";
7
- readonly value: T;
8
- readonly range: SourceRange;
9
- } | {
10
- readonly state: "absent";
11
- readonly range?: SourceRange;
12
- } | {
13
- readonly state: "dynamic";
14
- readonly reason: DynamicReason;
15
- readonly range: SourceRange;
16
- } | {
17
- readonly state: "unsupported";
18
- readonly reason: UnsupportedReason;
19
- readonly range: SourceRange;
20
- };
21
- export type FormActionEvidence = IndexedEvidence<string> | {
22
- readonly state: "current-document";
23
- readonly range: SourceRange;
24
- };
25
- export type DocumentInspection = {
26
- readonly state: "complete";
27
- } | {
28
- readonly state: "incomplete";
29
- readonly reason: DynamicReason | UnsupportedReason;
30
- readonly range?: SourceRange;
31
- };
32
- export interface FormIndex {
33
- readonly schemaVersion: 1;
34
- readonly producer: {
35
- readonly name: string;
36
- readonly version: string;
37
- };
38
- readonly documents: readonly FormDocumentFact[];
39
- }
40
- export interface FormDocumentFact {
41
- readonly path: string;
42
- readonly contentDigest: ContentDigest;
43
- readonly sourceKind: string;
44
- readonly inspection: DocumentInspection;
45
- readonly forms: readonly IndexedFormFact[];
46
- }
47
- export interface IndexedFormFact {
48
- readonly identity: IndexedEvidence<string>;
49
- readonly method: IndexedEvidence<string>;
50
- readonly action: FormActionEvidence;
51
- readonly range: SourceRange;
52
- readonly controls: readonly IndexedControlFact[];
53
- }
54
- export interface IndexedControlFact {
55
- readonly name: IndexedEvidence<string>;
56
- readonly controlKind: IndexedEvidence<"button" | "input" | "select" | "textarea">;
57
- readonly inputType: IndexedEvidence<string>;
58
- readonly multiple: IndexedEvidence<boolean>;
59
- readonly multiplicity: IndexedEvidence<"mutually-exclusive" | "repeated" | "scalar">;
60
- readonly successful: IndexedEvidence<boolean>;
61
- readonly range: SourceRange;
62
- }
1
+ import type { ContentDigest, FormIndex, FormIndexActionEvidence, FormIndexControl, FormIndexDocument, FormIndexDocumentInspection, FormIndexDynamicReason, FormIndexEvidence, FormIndexForm, FormIndexUnsupportedReason } from "@0disoft/mensor-contract";
2
+ export type { ContentDigest, FormIndex, FormIndexActionEvidence as FormActionEvidence, FormIndexControl as IndexedControlFact, FormIndexDocument as FormDocumentFact, FormIndexDocumentInspection as DocumentInspection, FormIndexDynamicReason as DynamicReason, FormIndexEvidence as IndexedEvidence, FormIndexForm as IndexedFormFact, FormIndexUnsupportedReason as UnsupportedReason, };
63
3
  export type FormIndexFailureCode = "form_index.digest_invalid" | "form_index.digest_mismatch" | "form_index.duplicate" | "form_index.json_invalid" | "form_index.noncanonical" | "form_index.path_invalid" | "form_index.range_invalid" | "form_index.shape_invalid" | "form_index.source_encoding_invalid" | "form_index.source_missing";
64
4
  export declare class FormIndexFailure extends Error {
65
5
  readonly code: FormIndexFailureCode;
@@ -1 +1 @@
1
- {"version":3,"file":"form-index-types.d.ts","sourceRoot":"","sources":["../../src/form-index-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"form-index-types.d.ts","sourceRoot":"","sources":["../../src/form-index-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,SAAS,EACT,uBAAuB,EACvB,gBAAgB,EAChB,iBAAiB,EACjB,2BAA2B,EAC3B,sBAAsB,EACtB,iBAAiB,EACjB,aAAa,EACb,0BAA0B,EAC3B,MAAM,0BAA0B,CAAC;AAElC,YAAY,EACV,aAAa,EACb,SAAS,EACT,uBAAuB,IAAI,kBAAkB,EAC7C,gBAAgB,IAAI,kBAAkB,EACtC,iBAAiB,IAAI,gBAAgB,EACrC,2BAA2B,IAAI,kBAAkB,EACjD,sBAAsB,IAAI,aAAa,EACvC,iBAAiB,IAAI,eAAe,EACpC,aAAa,IAAI,eAAe,EAChC,0BAA0B,IAAI,iBAAiB,GAChD,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAC5B,2BAA2B,GAC3B,4BAA4B,GAC5B,sBAAsB,GACtB,yBAAyB,GACzB,yBAAyB,GACzB,yBAAyB,GACzB,0BAA0B,GAC1B,0BAA0B,GAC1B,oCAAoC,GACpC,2BAA2B,CAAC;AAEhC,qBAAa,gBAAiB,SAAQ,KAAK;IACzC,QAAQ,CAAC,IAAI,EAAE,oBAAoB,CAAC;IACpC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;gBAG5B,IAAI,EAAE,oBAAoB,EAC1B,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,MAAM;CAOlB"}
@@ -1 +1 @@
1
- {"version":3,"file":"form-index-types.js","sourceRoot":"","sources":["../../src/form-index-types.ts"],"names":[],"mappings":"AA2GA,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IAChC,IAAI,CAAuB;IAC3B,YAAY,CAAS;IAE9B,YACE,IAA0B,EAC1B,YAAoB,EACpB,OAAe;QAEf,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;QAC/B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;CACF"}
1
+ {"version":3,"file":"form-index-types.js","sourceRoot":"","sources":["../../src/form-index-types.ts"],"names":[],"mappings":"AAsCA,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IAChC,IAAI,CAAuB;IAC3B,YAAY,CAAS;IAE9B,YACE,IAA0B,EAC1B,YAAoB,EACpB,OAAe;QAEf,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;QAC/B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;CACF"}
@@ -5,4 +5,9 @@ export declare function createContentDigest(source: string | Uint8Array): Conten
5
5
  export declare function serializeFormIndex(value: unknown): string;
6
6
  export declare function parseFormIndex(text: string): FormIndex;
7
7
  export declare function verifyFormIndexContent(value: unknown, sourceForPath: (path: string) => string | Uint8Array | undefined): FormIndex;
8
+ export declare function verifyExternalFormIndex(options: {
9
+ readonly value: FormIndex;
10
+ readonly discovered: ReadonlySet<string>;
11
+ readonly readSource: (path: string) => Promise<string>;
12
+ }): Promise<FormIndex>;
8
13
  //# sourceMappingURL=form-index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"form-index.d.ts","sourceRoot":"","sources":["../../src/form-index.ts"],"names":[],"mappings":"AAIA,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,SAAS,EACf,MAAM,uBAAuB,CAAC;AAG/B,YAAY,EACV,aAAa,EACb,kBAAkB,EAClB,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,SAAS,EACT,oBAAoB,EACpB,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,GAAG,UAAU,GAC1B,aAAa,CAEf;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAGzD;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAqBtD;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,OAAO,EACd,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,UAAU,GAAG,SAAS,GAC/D,SAAS,CAqBX"}
1
+ {"version":3,"file":"form-index.d.ts","sourceRoot":"","sources":["../../src/form-index.ts"],"names":[],"mappings":"AAIA,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,SAAS,EACf,MAAM,uBAAuB,CAAC;AAI/B,YAAY,EACV,aAAa,EACb,kBAAkB,EAClB,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,SAAS,EACT,oBAAoB,EACpB,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,GAAG,UAAU,GAC1B,aAAa,CAEf;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAGzD;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAqBtD;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,OAAO,EACd,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,UAAU,GAAG,SAAS,GAC/D,SAAS,CAqBX;AAED,wBAAsB,uBAAuB,CAAC,OAAO,EAAE;IACrD,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACzC,QAAQ,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CACxD,GAAG,OAAO,CAAC,SAAS,CAAC,CAgCrB"}
@@ -1,6 +1,7 @@
1
1
  import { createHash } from "node:crypto";
2
2
  import { FormIndexFailure, } from "./form-index-types.js";
3
3
  import { canonicalizeFormIndex } from "./form-index-validation.js";
4
+ import { InputFailure } from "./paths.js";
4
5
  export { FormIndexFailure } from "./form-index-types.js";
5
6
  export function createContentDigest(source) {
6
7
  return `sha256:${createHash("sha256").update(source).digest("hex")}`;
@@ -37,6 +38,28 @@ export function verifyFormIndexContent(value, sourceForPath) {
37
38
  }
38
39
  return canonical;
39
40
  }
41
+ export async function verifyExternalFormIndex(options) {
42
+ const sources = new Map();
43
+ for (const document of options.value.documents) {
44
+ if (!options.discovered.has(document.path)) {
45
+ throw new InputFailure("configuration", "form_index.source_not_discovered", `FormIndex source ${JSON.stringify(document.path)} is not a discovered source file.`, document.path);
46
+ }
47
+ sources.set(document.path, await options.readSource(document.path));
48
+ }
49
+ try {
50
+ return verifyFormIndexContent(options.value, (documentPath) => sources.get(documentPath));
51
+ }
52
+ catch (error) {
53
+ if (!(error instanceof FormIndexFailure)) {
54
+ throw error;
55
+ }
56
+ const match = /^\/documents\/(\d+)/u.exec(error.instancePath);
57
+ const document = match === null
58
+ ? undefined
59
+ : options.value.documents[Number(match[1])];
60
+ throw new InputFailure("configuration", error.code, error.message, document?.path);
61
+ }
62
+ }
40
63
  function verifyDocumentRanges(document, source, instancePath) {
41
64
  const text = sourceText(source, instancePath);
42
65
  const lines = text.split(/\r\n|\n|\r/u);
@@ -1 +1 @@
1
- {"version":3,"file":"form-index.js","sourceRoot":"","sources":["../../src/form-index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"form-index.js","sourceRoot":"","sources":["../../src/form-index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"form-rule.d.ts","sourceRoot":"","sources":["../../src/form-rule.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,UAAU,EACV,eAAe,EAOhB,MAAM,0BAA0B,CAAC;AAIlC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAejD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE;IACzC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;IAClC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;CAC/B,GAAG,SAAS,UAAU,EAAE,CAsLxB"}
1
+ {"version":3,"file":"form-rule.d.ts","sourceRoot":"","sources":["../../src/form-rule.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,UAAU,EACV,eAAe,EAQhB,MAAM,0BAA0B,CAAC;AAIlC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAejD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE;IACzC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;IAClC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;CAC/B,GAAG,SAAS,UAAU,EAAE,CA8KxB"}
@@ -109,12 +109,7 @@ export function checkFeatureForms(options) {
109
109
  if (field === undefined) {
110
110
  return;
111
111
  }
112
- const repeatedControlsAreOneRadioGroup = field.controls.length > 1 &&
113
- field.controls.every((control) => control.kind === "input" && control.inputType === "radio");
114
- const incompatibleControl = field.controls.length > 1 && !repeatedControlsAreOneRadioGroup
115
- ? field.controls[1]
116
- : field.controls.find((control) => (control.kind === "input" && control.inputType === "checkbox") ||
117
- (control.kind === "select" && control.multiple));
112
+ const incompatibleControl = incompatibleControlForDecoder(field.controls, binding.decode);
118
113
  if (incompatibleControl === undefined) {
119
114
  return;
120
115
  }
@@ -124,6 +119,7 @@ export function checkFeatureForms(options) {
124
119
  bindingIndex,
125
120
  controlCount: field.controls.length,
126
121
  fieldName: binding.name,
122
+ decoder: binding.decode,
127
123
  form,
128
124
  control: incompatibleControl,
129
125
  templateFile: projectTemplate,
@@ -134,6 +130,26 @@ export function checkFeatureForms(options) {
134
130
  }
135
131
  return diagnostics;
136
132
  }
133
+ function incompatibleControlForDecoder(controls, decoder) {
134
+ if (decoder.kind === "repeat") {
135
+ return undefined;
136
+ }
137
+ if (decoder.kind === "checkbox") {
138
+ if (controls.length === 1 &&
139
+ controls[0]?.kind === "input" &&
140
+ controls[0].inputType === "checkbox") {
141
+ return undefined;
142
+ }
143
+ return controls[1] ?? controls[0];
144
+ }
145
+ const repeatedControlsAreOneRadioGroup = controls.length > 1 &&
146
+ controls.every((control) => control.kind === "input" && control.inputType === "radio");
147
+ if (controls.length > 1 && !repeatedControlsAreOneRadioGroup) {
148
+ return controls[1];
149
+ }
150
+ return controls.find((control) => (control.kind === "input" && control.inputType === "checkbox") ||
151
+ (control.kind === "select" && control.multiple));
152
+ }
137
153
  function unsupportedControlDiagnostic(options) {
138
154
  const description = options.control.reason === "file-input"
139
155
  ? "file input"
@@ -184,19 +200,20 @@ function controlCodecMismatchDiagnostic(options) {
184
200
  : options.control.kind === "input"
185
201
  ? `input[type=${options.control.inputType}]`
186
202
  : "select[multiple]";
203
+ const isLegacyTextDiagnostic = options.decoder.kind === "text";
187
204
  return {
188
205
  code: "form.control_codec_mismatch",
189
206
  severity: "error",
190
207
  category: "form-contract",
191
- message: `Form field ${JSON.stringify(options.fieldName)} uses ${controlShape}, which is incompatible with the text decoder.`,
208
+ message: `Form field ${JSON.stringify(options.fieldName)} uses ${controlShape}, which is incompatible with the ${isLegacyTextDiagnostic ? "text" : options.decoder.kind} decoder.`,
192
209
  file: options.templateFile,
193
210
  range: options.control.range,
194
211
  facts: {
195
212
  actionId: options.actionId,
196
- controlKind: options.control.kind === "select" ? "select" : "input",
213
+ controlKind: options.control.kind,
197
214
  ...(options.controlCount > 1 ? { controlCount: options.controlCount } : {}),
198
215
  controlType: options.control.inputType,
199
- decoderKind: "text",
216
+ decoderKind: options.decoder.kind,
200
217
  fieldName: options.fieldName,
201
218
  formId: options.form.id,
202
219
  multiple: options.control.multiple,
@@ -205,21 +222,27 @@ function controlCodecMismatchDiagnostic(options) {
205
222
  related: [
206
223
  {
207
224
  role: "form-decoder-kind",
208
- message: "The form codec declares a scalar text decoder for this field.",
225
+ message: isLegacyTextDiagnostic
226
+ ? "The form codec declares a scalar text decoder for this field."
227
+ : `The form codec declares a ${options.decoder.kind} decoder for this field.`,
209
228
  file: options.featureContractPath,
210
229
  range: actionBindingDecoderKindRange(options.featureText, options.actionIndex, options.bindingIndex),
211
230
  },
212
231
  ],
213
232
  repair: {
214
233
  strategy: "align-control-and-decoder",
215
- hint: `Use a scalar text control for ${options.fieldName}, or introduce a codec that explicitly models ${controlShape}.`,
234
+ hint: isLegacyTextDiagnostic
235
+ ? `Use a scalar text control for ${options.fieldName}, or introduce a codec that explicitly models ${controlShape}.`
236
+ : `Use a control shape compatible with ${options.decoder.kind} for ${options.fieldName}, or choose a decoder that explicitly models ${controlShape}.`,
216
237
  mustPreserve: [
217
238
  `action ${options.actionId}`,
218
239
  `field binding ${options.fieldName}`,
219
240
  "form-to-action linkage",
220
241
  ],
221
242
  mustNot: [
222
- "coerce repeated or missing form values through the text decoder",
243
+ isLegacyTextDiagnostic
244
+ ? "coerce repeated or missing form values through the text decoder"
245
+ : `coerce incompatible form values through the ${options.decoder.kind} decoder`,
223
246
  "remove the field binding to hide the mismatch",
224
247
  ],
225
248
  },
@@ -1 +1 @@
1
- {"version":3,"file":"form-rule.js","sourceRoot":"","sources":["../../src/form-rule.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"form-rule.js","sourceRoot":"","sources":["../../src/form-rule.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"html-forms.d.ts","sourceRoot":"","sources":["../../src/html-forms.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAKL,KAAK,gBAAgB,EACrB,KAAK,SAAS,EAKf,MAAM,iBAAiB,CAAC;AAUzB,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,QAAQ,EAAE,CACjB,aAAa,EAAE,SAAS,MAAM,EAAE,KAC7B,OAAO,CAAC,SAAS,CAAC,CAAC;CACzB;AAED,wBAAgB,iCAAiC,CAAC,OAAO,EAAE;IACzD,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,UAAU,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/D,QAAQ,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC;CAClC,GAAG,2BAA2B,CAuD9B;AAED,wBAAgB,6BAA6B,CAC3C,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,MAAM,GACX,gBAAgB,CAclB"}
1
+ {"version":3,"file":"html-forms.d.ts","sourceRoot":"","sources":["../../src/html-forms.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAKL,KAAK,gBAAgB,EACrB,KAAK,SAAS,EAKf,MAAM,iBAAiB,CAAC;AAyBzB,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,QAAQ,EAAE,CACjB,aAAa,EAAE,SAAS,MAAM,EAAE,KAC7B,OAAO,CAAC,SAAS,CAAC,CAAC;CACzB;AAED,wBAAgB,iCAAiC,CAAC,OAAO,EAAE;IACzD,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,UAAU,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/D,QAAQ,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC;CAClC,GAAG,2BAA2B,CAgE9B;AAED,wBAAgB,6BAA6B,CAC3C,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,MAAM,GACX,gBAAgB,CA6ClB"}