@bilig/workbook 0.86.1 → 0.90.4
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.
- package/README.md +31 -18
- package/dist/command-bundle.js +6 -15
- package/dist/command-bundle.js.map +1 -1
- package/dist/command-ranges.js +11 -4
- package/dist/command-ranges.js.map +1 -1
- package/dist/command-receipt-ranges.d.ts +7 -0
- package/dist/command-receipt-ranges.js +64 -0
- package/dist/command-receipt-ranges.js.map +1 -0
- package/dist/command-result-undo.d.ts +2 -0
- package/dist/command-result-undo.js +148 -0
- package/dist/command-result-undo.js.map +1 -0
- package/dist/command-result.js +76 -154
- package/dist/command-result.js.map +1 -1
- package/dist/features.js +88 -63
- package/dist/features.js.map +1 -1
- package/dist/find.d.ts +16 -0
- package/dist/find.js +94 -12
- package/dist/find.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/model.js +7 -7
- package/dist/model.js.map +1 -1
- package/dist/plan-data.js +15 -12
- package/dist/plan-data.js.map +1 -1
- package/dist/readback.js +1 -1
- package/dist/readback.js.map +1 -1
- package/dist/ref-data.d.ts +16 -0
- package/dist/ref-data.js +368 -0
- package/dist/ref-data.js.map +1 -0
- package/dist/requirements.js +1 -1
- package/dist/requirements.js.map +1 -1
- package/dist/result.d.ts +1 -1
- package/dist/run.js +1 -1
- package/dist/run.js.map +1 -1
- package/dist/verify.js +1 -1
- package/dist/verify.js.map +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -109,8 +109,8 @@ The main API is intentionally small:
|
|
|
109
109
|
|
|
110
110
|
Stable data helpers are exported for generic tool builders:
|
|
111
111
|
|
|
112
|
-
- `workbookRefKinds`, `isWorkbookRefKind`, `isWorkbookRef`
|
|
113
|
-
- `isWorkbookRefData`, `toWorkbookRefData`, `collectWorkbookRefData`, `hydrateWorkbookRef`, `hydrateWorkbookRefs`
|
|
112
|
+
- `workbookRefKinds`, `isWorkbookRefKind`, `checkWorkbookRef`, `isWorkbookRef`
|
|
113
|
+
- `checkWorkbookRefData`, `isWorkbookRefData`, `toWorkbookRefData`, `collectWorkbookRefData`, `hydrateWorkbookRef`, `hydrateWorkbookRefs`
|
|
114
114
|
- `isPlanData`, `checkPlanData`, `workbookPlanId`
|
|
115
115
|
- `workbookRowOperators`, `workbookRowOperatorValueTypes`, `isWorkbookRowOperator`, `isWorkbookRowValueCompatible`
|
|
116
116
|
- `builtInWorkbookCheckKinds`, `isBuiltInWorkbookCheckKind`
|
|
@@ -144,9 +144,9 @@ Validation and proof results follow the same rule: `checkInput`,
|
|
|
144
144
|
`checkPlanData`, `verifyPlan`, `verifyModel`, and `verifyWorkbookReadbacks`
|
|
145
145
|
return frozen verdict containers, arrays, generated issues, and readback-derived
|
|
146
146
|
checks.
|
|
147
|
-
|
|
148
|
-
validators return frozen verdicts too, so every public
|
|
149
|
-
handoff has the same inspect-once behavior.
|
|
147
|
+
Ref, ref-data, feature, command, receipt, result, run-result-description, and
|
|
148
|
+
runtime-adapter validators return frozen verdicts too, so every public
|
|
149
|
+
`{ status, issues }` handoff has the same inspect-once behavior.
|
|
150
150
|
`runWorkbookPlan` and `runWorkbookAction` return frozen run results too,
|
|
151
151
|
including changed summaries, checks, errors, apply proof, undo refs, and
|
|
152
152
|
unverified proof notes.
|
|
@@ -169,8 +169,9 @@ an agent inspected cannot be mutated behind the same handoff object.
|
|
|
169
169
|
`verifyPlan` also treats plans as data: malformed, sparse, or accessor-backed
|
|
170
170
|
handoff objects return an `invalid_plan` issue instead of executing hidden
|
|
171
171
|
properties or throwing at the caller.
|
|
172
|
-
`verifyModel` keeps the same behavior at whole-model scope: invalid
|
|
173
|
-
return an invalid verdict with an
|
|
172
|
+
`verifyModel` keeps the same behavior at whole-model scope: invalid,
|
|
173
|
+
array-backed, or accessor-backed manifests return an invalid verdict with an
|
|
174
|
+
`invalid_model` error and no actions.
|
|
174
175
|
Its `{ inputs }` option is data-only too: accessor-backed option payloads or
|
|
175
176
|
per-action inputs produce structured `invalid_action_input` results without
|
|
176
177
|
running hidden consumer code.
|
|
@@ -220,9 +221,14 @@ proof keep nested JSON paths such as `input.rows[1]` and
|
|
|
220
221
|
hydration. Plan-data guards only trust own payload fields; inherited
|
|
221
222
|
prototype fields never satisfy the transport contract. Transported plan arrays
|
|
222
223
|
must contain own enumerable data entries too; holes, non-enumerable entries, or
|
|
223
|
-
accessor-backed entries are rejected without running getters. The
|
|
224
|
+
accessor-backed entries are rejected without running getters. The plan root and
|
|
225
|
+
nested plan entries such as commands, changes, checks, formula labels, and
|
|
226
|
+
expectations must be record-shaped payloads, not arrays with attached fields.
|
|
227
|
+
The hydrated plan
|
|
224
228
|
exposes `refs: { refsUsed }` instead of the consumer's private model-shaped
|
|
225
|
-
`refs` object, so transported execution stays generic.
|
|
229
|
+
`refs` object, so transported execution stays generic. A valid
|
|
230
|
+
`checkPlanData(data)` result returns canonical plan data, stripping caller-owned
|
|
231
|
+
scratch fields before ids, hydration, requirements, or execution inspect it.
|
|
226
232
|
|
|
227
233
|
## Action Input
|
|
228
234
|
|
|
@@ -294,6 +300,8 @@ must be own enumerable data entries; holes, non-enumerable entries, or
|
|
|
294
300
|
accessor-backed entries are rejected without running getters. Use
|
|
295
301
|
`checkRuntimeAdapter(planOrRequirements, adapter)` when an agent wants to check
|
|
296
302
|
`apply`, `read`, and `verifyChecks` coverage before calling the runtime.
|
|
303
|
+
The requirements root object, every requirement entry, and runtime adapter
|
|
304
|
+
objects must be record-shaped payloads, not arrays with attached fields.
|
|
297
305
|
Runtime requirement descriptions are frozen normalized data too:
|
|
298
306
|
`describeRuntimeRequirements` and `checkRuntimeRequirements` strip
|
|
299
307
|
caller-owned extra fields and freeze the returned requirement tree, including
|
|
@@ -338,14 +346,18 @@ and the frozen run-result description, and roll back engine ops if post-apply
|
|
|
338
346
|
readback or check proof fails.
|
|
339
347
|
Runtime apply results, undo refs, apply errors, and check verifier output are
|
|
340
348
|
validated from own fields only; prototype-inherited fields are ignored before
|
|
341
|
-
they can become run proof.
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
non-enumerable
|
|
345
|
-
|
|
349
|
+
they can become run proof. Apply-result objects and verifier check objects must
|
|
350
|
+
be plain record-shaped payloads, not arrays with attached fields.
|
|
351
|
+
Adapter-returned ops and verifier proof must be data properties, including
|
|
352
|
+
non-enumerable guard fields such as `kind`. Runtime evidence arrays must contain
|
|
353
|
+
own enumerable data entries; holes, non-enumerable entries, and accessors are
|
|
354
|
+
rejected before any getter can run during validation, cloning, or preview/apply
|
|
355
|
+
comparison.
|
|
346
356
|
Readback checks attach proof to passed checks, such as
|
|
347
357
|
`{ source: "readback", value: 12 }` or
|
|
348
358
|
`{ source: "readback", formula: "Table[Quantity]*Table[Rate]" }`.
|
|
359
|
+
Readback proof objects, check objects, expectations, and formula labels must be
|
|
360
|
+
record-shaped payloads, not arrays with attached fields.
|
|
349
361
|
Formula readback proof is parsed with `@bilig/formula` and stored in canonical
|
|
350
362
|
no-leading-`=` form, so harmless runtime differences such as a leading equals
|
|
351
363
|
sign, whitespace, or redundant parentheses do not make proof fail.
|
|
@@ -453,10 +465,11 @@ It returns the same boring `{ status, issues }` shape for receipt fields such as
|
|
|
453
465
|
`changedRanges`, `proof`, `metadata`, and `errors`. Feature manifests, command
|
|
454
466
|
requests, and command receipts are validated from own payload fields only;
|
|
455
467
|
prototype-inherited fields are ignored. Receipt verdicts are frozen. Receipt ops are frozen after
|
|
456
|
-
normalization, changed ranges
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
468
|
+
normalization, changed ranges are canonicalized through the same workbook range
|
|
469
|
+
normalizer used by command scopes, and manifest or receipt arrays must contain
|
|
470
|
+
own enumerable data entries. Holes, non-enumerable entries, invalid range
|
|
471
|
+
addresses, and accessor-backed ops, undo ops, ranges, or errors are rejected
|
|
472
|
+
before any getter can run.
|
|
460
473
|
Receipt statuses are semantic: `previewed` cannot include applied proof,
|
|
461
474
|
`applied` cannot include errors and must carry applied evidence, `rejected`
|
|
462
475
|
cannot claim changed workbook proof, and `noop` cannot claim changed ranges or
|
package/dist/command-bundle.js
CHANGED
|
@@ -17,15 +17,6 @@ export function checkWorkbookCommandBundle(value) {
|
|
|
17
17
|
issues: Object.freeze([commandBundleIssue('invalid_bundle', 'bundle', 'Workbook command bundle must be an object')]),
|
|
18
18
|
});
|
|
19
19
|
}
|
|
20
|
-
const accessorPath = firstAccessorPath(value, 'bundle');
|
|
21
|
-
if (accessorPath !== null) {
|
|
22
|
-
return Object.freeze({
|
|
23
|
-
status: 'invalid',
|
|
24
|
-
issues: Object.freeze([
|
|
25
|
-
commandBundleIssue('invalid_bundle', accessorPath, 'Workbook command bundle must contain only data properties'),
|
|
26
|
-
]),
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
20
|
const issues = [];
|
|
30
21
|
pushOptionalStringIssue(issues, ownValue(value, 'id'), 'id', 'bundle id');
|
|
31
22
|
pushTargetRevisionIssue(issues, ownValue(value, 'targetRevision'));
|
|
@@ -124,7 +115,12 @@ function pushRequestCommandIssues(issues, value, path, touchedRanges, scopedTouc
|
|
|
124
115
|
}
|
|
125
116
|
}
|
|
126
117
|
function pushOpCommandIssues(issues, value, path, touchedRanges, scopedTouchedRangesRequired) {
|
|
127
|
-
|
|
118
|
+
const op = ownValue(value, 'op');
|
|
119
|
+
const accessorPath = firstAccessorPath(op, `${path}.op`);
|
|
120
|
+
if (accessorPath !== null) {
|
|
121
|
+
issues.push(commandBundleIssue('invalid_command', accessorPath, 'Workbook command bundle op must contain only data properties'));
|
|
122
|
+
}
|
|
123
|
+
else if (!isWorkbookOp(op)) {
|
|
128
124
|
issues.push(commandBundleIssue('invalid_command', `${path}.op`, 'Workbook command bundle op is invalid'));
|
|
129
125
|
}
|
|
130
126
|
if (ownValue(value, 'destructive') !== true) {
|
|
@@ -240,11 +236,6 @@ function pushNonEmptyExactStringIssue(issues, value, path, label, code) {
|
|
|
240
236
|
}
|
|
241
237
|
}
|
|
242
238
|
function pushArrayDataIssues(issues, value, path, label) {
|
|
243
|
-
const accessorPath = firstAccessorPath(value, path);
|
|
244
|
-
if (accessorPath !== null) {
|
|
245
|
-
issues.push(commandBundleIssue('invalid_bundle', accessorPath, `${label} must contain only data properties`));
|
|
246
|
-
return;
|
|
247
|
-
}
|
|
248
239
|
for (let index = 0; index < value.length; index += 1) {
|
|
249
240
|
const descriptor = Object.getOwnPropertyDescriptor(value, String(index));
|
|
250
241
|
if (descriptor === undefined || !descriptor.enumerable || !('value' in descriptor)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-bundle.js","sourceRoot":"","sources":["../src/command-bundle.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"command-bundle.js","sourceRoot":"","sources":["../src/command-bundle.ts"],"names":[],"mappings":"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"}
|
package/dist/command-ranges.js
CHANGED
|
@@ -1,11 +1,18 @@
|
|
|
1
1
|
import { formatAddress, parseCellAddress } from '@bilig/formula';
|
|
2
|
+
const commandRangeDataFields = Object.freeze(['sheetName', 'startAddress', 'endAddress']);
|
|
2
3
|
export function normalizeCommandRange(value, path, label = 'Workbook command bundle') {
|
|
3
4
|
if (!isRecord(value)) {
|
|
4
5
|
throw new Error(`${label} ${path} must be an object`);
|
|
5
6
|
}
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
for (const field of commandRangeDataFields) {
|
|
8
|
+
const descriptor = Object.getOwnPropertyDescriptor(value, field);
|
|
9
|
+
if (descriptor !== undefined && !('value' in descriptor)) {
|
|
10
|
+
throw new Error(`${label} ${path}.${field} must be a data property`);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
const sheetName = ownDataValue(value, 'sheetName');
|
|
14
|
+
const startAddress = ownDataValue(value, 'startAddress');
|
|
15
|
+
const endAddress = ownDataValue(value, 'endAddress');
|
|
9
16
|
if (typeof sheetName !== 'string' || typeof startAddress !== 'string' || typeof endAddress !== 'string') {
|
|
10
17
|
throw new Error(`${label} ${path} must include sheetName, startAddress, and endAddress strings`);
|
|
11
18
|
}
|
|
@@ -76,7 +83,7 @@ function normalizeExactString(value, path, label) {
|
|
|
76
83
|
}
|
|
77
84
|
return normalized;
|
|
78
85
|
}
|
|
79
|
-
function
|
|
86
|
+
function ownDataValue(value, key) {
|
|
80
87
|
return Object.getOwnPropertyDescriptor(value, key)?.value;
|
|
81
88
|
}
|
|
82
89
|
function isRecord(value) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-ranges.js","sourceRoot":"","sources":["../src/command-ranges.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAkBhE,MAAM,UAAU,qBAAqB,CAAC,KAAc,EAAE,IAAY,EAAE,KAAK,GAAG,yBAAyB;IACnG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,IAAI,IAAI,oBAAoB,CAAC,CAAA;IACvD,CAAC;IACD,MAAM,SAAS,GAAG,
|
|
1
|
+
{"version":3,"file":"command-ranges.js","sourceRoot":"","sources":["../src/command-ranges.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { CellRangeRef } from '@bilig/protocol';
|
|
2
|
+
export interface WorkbookCommandReceiptRangeIssue {
|
|
3
|
+
readonly path: string;
|
|
4
|
+
readonly message: string;
|
|
5
|
+
}
|
|
6
|
+
export declare function commandReceiptChangedRangeIssues(value: unknown): readonly WorkbookCommandReceiptRangeIssue[];
|
|
7
|
+
export declare function normalizeCommandReceiptChangedRanges(value: unknown): readonly CellRangeRef[] | null;
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { normalizeCommandRange } from './command-ranges.js';
|
|
2
|
+
const commandReceiptRangeDataFields = Object.freeze(['sheetName', 'startAddress', 'endAddress']);
|
|
3
|
+
export function commandReceiptChangedRangeIssues(value) {
|
|
4
|
+
if (!Array.isArray(value)) {
|
|
5
|
+
return Object.freeze([rangeIssue('changedRanges', 'Workbook command receipt changed ranges must be an array')]);
|
|
6
|
+
}
|
|
7
|
+
const issues = [];
|
|
8
|
+
for (let index = 0; index < value.length; index += 1) {
|
|
9
|
+
const path = `changedRanges[${String(index)}]`;
|
|
10
|
+
const descriptor = Object.getOwnPropertyDescriptor(value, String(index));
|
|
11
|
+
if (descriptor === undefined || !descriptor.enumerable || !('value' in descriptor)) {
|
|
12
|
+
issues.push(rangeIssue(path, 'Workbook command receipt changed ranges must contain only data properties'));
|
|
13
|
+
continue;
|
|
14
|
+
}
|
|
15
|
+
const dataFieldIssue = firstRangeDataFieldIssue(descriptor.value, path);
|
|
16
|
+
if (dataFieldIssue !== null) {
|
|
17
|
+
issues.push(dataFieldIssue);
|
|
18
|
+
continue;
|
|
19
|
+
}
|
|
20
|
+
try {
|
|
21
|
+
normalizeCommandRange(descriptor.value, path, 'Workbook command receipt');
|
|
22
|
+
}
|
|
23
|
+
catch (error) {
|
|
24
|
+
issues.push(rangeIssue(path, errorMessage(error)));
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
return Object.freeze(issues);
|
|
28
|
+
}
|
|
29
|
+
function firstRangeDataFieldIssue(value, path) {
|
|
30
|
+
if (typeof value !== 'object' || value === null || Array.isArray(value)) {
|
|
31
|
+
return null;
|
|
32
|
+
}
|
|
33
|
+
for (const field of commandReceiptRangeDataFields) {
|
|
34
|
+
const descriptor = Object.getOwnPropertyDescriptor(value, field);
|
|
35
|
+
if (descriptor !== undefined && !('value' in descriptor)) {
|
|
36
|
+
return rangeIssue(`${path}.${field}`, `Workbook command receipt ${path}.${field} must be a data property`);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
return null;
|
|
40
|
+
}
|
|
41
|
+
export function normalizeCommandReceiptChangedRanges(value) {
|
|
42
|
+
if (commandReceiptChangedRangeIssues(value).length > 0 || !Array.isArray(value)) {
|
|
43
|
+
return null;
|
|
44
|
+
}
|
|
45
|
+
const ranges = [];
|
|
46
|
+
for (let index = 0; index < value.length; index += 1) {
|
|
47
|
+
const descriptor = Object.getOwnPropertyDescriptor(value, String(index));
|
|
48
|
+
if (descriptor === undefined || !descriptor.enumerable || !('value' in descriptor)) {
|
|
49
|
+
return null;
|
|
50
|
+
}
|
|
51
|
+
ranges.push(normalizeCommandRange(descriptor.value, `changedRanges[${String(index)}]`, 'Workbook command receipt').range);
|
|
52
|
+
}
|
|
53
|
+
return Object.freeze(ranges);
|
|
54
|
+
}
|
|
55
|
+
function rangeIssue(path, message) {
|
|
56
|
+
return Object.freeze({
|
|
57
|
+
path,
|
|
58
|
+
message,
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
function errorMessage(error) {
|
|
62
|
+
return error instanceof Error ? error.message : String(error);
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=command-receipt-ranges.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-receipt-ranges.js","sourceRoot":"","sources":["../src/command-receipt-ranges.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
import { isWorkbookOp } from './guards.js';
|
|
2
|
+
export function normalizeCommandResultUndoRef(value, path) {
|
|
3
|
+
if (!isRecord(value)) {
|
|
4
|
+
throw new Error(`Workbook command result ${path} must be an object`);
|
|
5
|
+
}
|
|
6
|
+
const accessorKeys = ownAccessorKeys(value, ['id', 'ops']);
|
|
7
|
+
if (accessorKeys.length > 0) {
|
|
8
|
+
throw new Error(`Workbook command result ${path}.${accessorKeys[0]} must be a data property`);
|
|
9
|
+
}
|
|
10
|
+
const id = ownValue(value, 'id');
|
|
11
|
+
if (typeof id !== 'string') {
|
|
12
|
+
throw new Error(`Workbook command result ${path}.id must be a string`);
|
|
13
|
+
}
|
|
14
|
+
const ops = ownValue(value, 'ops');
|
|
15
|
+
if (ops !== undefined && !Array.isArray(ops)) {
|
|
16
|
+
throw new Error(`Workbook command result ${path}.ops must be an array`);
|
|
17
|
+
}
|
|
18
|
+
if (Array.isArray(ops)) {
|
|
19
|
+
const accessorPath = firstAccessorPath(ops, `${path}.ops`);
|
|
20
|
+
if (accessorPath !== null) {
|
|
21
|
+
throw new Error(`Workbook command result ${accessorPath} must contain only data properties`);
|
|
22
|
+
}
|
|
23
|
+
const normalizedOps = [];
|
|
24
|
+
for (let index = 0; index < ops.length; index += 1) {
|
|
25
|
+
const op = arrayDataValue(ops, index);
|
|
26
|
+
if (op === undefined) {
|
|
27
|
+
throw new Error(`Workbook command result ${path}.ops[${String(index)}] must contain only data properties`);
|
|
28
|
+
}
|
|
29
|
+
normalizedOps.push(normalizeOp(op));
|
|
30
|
+
}
|
|
31
|
+
return Object.freeze({
|
|
32
|
+
id: normalizeExactString(id, `${path}.id`),
|
|
33
|
+
ops: Object.freeze(normalizedOps),
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
return Object.freeze({
|
|
37
|
+
id: normalizeExactString(id, `${path}.id`),
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
function normalizeOp(value) {
|
|
41
|
+
if (!isWorkbookOp(value)) {
|
|
42
|
+
throw new Error('Workbook command result op is invalid');
|
|
43
|
+
}
|
|
44
|
+
const cloned = cloneData(value);
|
|
45
|
+
if (!isWorkbookOp(cloned)) {
|
|
46
|
+
throw new Error('Workbook command result op clone is invalid');
|
|
47
|
+
}
|
|
48
|
+
return freezeData(cloned);
|
|
49
|
+
}
|
|
50
|
+
function normalizeExactString(value, path) {
|
|
51
|
+
const normalized = value.trim();
|
|
52
|
+
if (normalized === '') {
|
|
53
|
+
throw new Error(`Workbook command result ${path} cannot be empty`);
|
|
54
|
+
}
|
|
55
|
+
if (normalized !== value) {
|
|
56
|
+
throw new Error(`Workbook command result ${path} must not have leading or trailing whitespace`);
|
|
57
|
+
}
|
|
58
|
+
return normalized;
|
|
59
|
+
}
|
|
60
|
+
function arrayDataValue(value, index) {
|
|
61
|
+
const descriptor = Object.getOwnPropertyDescriptor(value, String(index));
|
|
62
|
+
return descriptor !== undefined && descriptor.enumerable && 'value' in descriptor ? descriptor.value : undefined;
|
|
63
|
+
}
|
|
64
|
+
function ownValue(value, key) {
|
|
65
|
+
return Object.getOwnPropertyDescriptor(value, key)?.value;
|
|
66
|
+
}
|
|
67
|
+
function ownAccessorKeys(value, keys) {
|
|
68
|
+
const accessors = [];
|
|
69
|
+
for (const key of keys) {
|
|
70
|
+
const descriptor = Object.getOwnPropertyDescriptor(value, key);
|
|
71
|
+
if (descriptor !== undefined && !('value' in descriptor)) {
|
|
72
|
+
accessors.push(key);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
return accessors;
|
|
76
|
+
}
|
|
77
|
+
function isRecord(value) {
|
|
78
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
79
|
+
}
|
|
80
|
+
function firstAccessorPath(value, path, seen = new WeakSet()) {
|
|
81
|
+
if (typeof value !== 'object' || value === null) {
|
|
82
|
+
return null;
|
|
83
|
+
}
|
|
84
|
+
if (seen.has(value)) {
|
|
85
|
+
return null;
|
|
86
|
+
}
|
|
87
|
+
seen.add(value);
|
|
88
|
+
for (const [key, descriptor] of Object.entries(Object.getOwnPropertyDescriptors(value))) {
|
|
89
|
+
const childPath = Array.isArray(value) && /^\d+$/.test(key) ? `${path}[${key}]` : `${path}.${key}`;
|
|
90
|
+
if (!('value' in descriptor)) {
|
|
91
|
+
return childPath;
|
|
92
|
+
}
|
|
93
|
+
const nestedPath = firstAccessorPath(descriptor.value, childPath, seen);
|
|
94
|
+
if (nestedPath !== null) {
|
|
95
|
+
return nestedPath;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
return null;
|
|
99
|
+
}
|
|
100
|
+
function freezeData(value, seen = new WeakSet()) {
|
|
101
|
+
if (typeof value !== 'object' || value === null) {
|
|
102
|
+
return value;
|
|
103
|
+
}
|
|
104
|
+
if (seen.has(value)) {
|
|
105
|
+
return value;
|
|
106
|
+
}
|
|
107
|
+
seen.add(value);
|
|
108
|
+
Object.values(Object.getOwnPropertyDescriptors(value)).forEach((descriptor) => {
|
|
109
|
+
if ('value' in descriptor) {
|
|
110
|
+
freezeData(descriptor.value, seen);
|
|
111
|
+
}
|
|
112
|
+
});
|
|
113
|
+
return Object.freeze(value);
|
|
114
|
+
}
|
|
115
|
+
function cloneData(value, seen = new WeakMap()) {
|
|
116
|
+
if (typeof value !== 'object' || value === null) {
|
|
117
|
+
return value;
|
|
118
|
+
}
|
|
119
|
+
const existing = seen.get(value);
|
|
120
|
+
if (existing !== undefined) {
|
|
121
|
+
return existing;
|
|
122
|
+
}
|
|
123
|
+
if (Array.isArray(value)) {
|
|
124
|
+
const cloned = [];
|
|
125
|
+
seen.set(value, cloned);
|
|
126
|
+
for (let index = 0; index < value.length; index += 1) {
|
|
127
|
+
const descriptor = Object.getOwnPropertyDescriptor(value, String(index));
|
|
128
|
+
if (descriptor !== undefined && descriptor.enumerable && 'value' in descriptor) {
|
|
129
|
+
cloned[index] = cloneData(descriptor.value, seen);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
return cloned;
|
|
133
|
+
}
|
|
134
|
+
const cloned = Object.create(Object.getPrototypeOf(value));
|
|
135
|
+
seen.set(value, cloned);
|
|
136
|
+
Object.entries(Object.getOwnPropertyDescriptors(value)).forEach(([key, descriptor]) => {
|
|
137
|
+
if (descriptor.enumerable && 'value' in descriptor) {
|
|
138
|
+
Object.defineProperty(cloned, key, {
|
|
139
|
+
configurable: true,
|
|
140
|
+
enumerable: true,
|
|
141
|
+
value: cloneData(descriptor.value, seen),
|
|
142
|
+
writable: true,
|
|
143
|
+
});
|
|
144
|
+
}
|
|
145
|
+
});
|
|
146
|
+
return cloned;
|
|
147
|
+
}
|
|
148
|
+
//# sourceMappingURL=command-result-undo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-result-undo.js","sourceRoot":"","sources":["../src/command-result-undo.ts"],"names":[],"mappings":"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"}
|