@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.
@@ -1,12 +1,22 @@
1
1
  import { commandRangeBounds, commandRangeContains, commandRangeLabel, normalizeCommandRange } from './command-ranges.js';
2
+ import { normalizeCommandResultUndoRef } from './command-result-undo.js';
2
3
  import { checkWorkbookCommandReceipt, normalizeWorkbookCommandReceipt, workbookCommandReceiptOpsMatch, workbookCommandReceiptStatuses, } from './features.js';
3
- import { isWorkbookOp } from './guards.js';
4
4
  export const workbookCommandResultStatuses = Object.freeze([
5
5
  'accepted',
6
6
  ...workbookCommandReceiptStatuses,
7
7
  ]);
8
8
  const WORKBOOK_COMMAND_RESULT_STATUS_SET = new Set(workbookCommandResultStatuses);
9
9
  const acceptedResultSettledFields = Object.freeze(['receipts', 'matched', 'changedRanges', 'revision', 'undo', 'errors']);
10
+ const commandResultDataFields = Object.freeze([
11
+ 'status',
12
+ 'bundleId',
13
+ 'targetRevision',
14
+ 'idempotencyKey',
15
+ 'commandCount',
16
+ 'touchedRanges',
17
+ 'touchedCellCount',
18
+ ...acceptedResultSettledFields,
19
+ ]);
10
20
  export const workbookOpCommandFeatureId = 'workbook-op';
11
21
  export function isWorkbookCommandResultStatus(value) {
12
22
  return typeof value === 'string' && WORKBOOK_COMMAND_RESULT_STATUS_SET.has(value);
@@ -45,7 +55,7 @@ export function workbookCommandResultForReceipts(bundle, receipts, options = {})
45
55
  if (revision !== undefined && !isSafeNonNegativeInteger(revision)) {
46
56
  throw new Error('Workbook command result is invalid: revision must be a safe non-negative integer');
47
57
  }
48
- const undo = options.undo === undefined ? undefined : normalizeUndoRef(options.undo, 'undo');
58
+ const undo = options.undo === undefined ? undefined : normalizeCommandResultUndoRef(options.undo, 'undo');
49
59
  const changedRanges = normalizedReceipts.flatMap((receipt) => [...(receipt.changedRanges ?? [])]);
50
60
  const errors = commandResultErrorsForReceipts(normalizedReceipts);
51
61
  return normalizeWorkbookCommandResult({
@@ -82,47 +92,70 @@ export function checkWorkbookCommandResult(value) {
82
92
  issues: Object.freeze([commandResultIssue('invalid_command_result', 'result', 'Workbook command result must be an object')]),
83
93
  });
84
94
  }
85
- const accessorPath = firstAccessorPath(value, 'result');
86
- if (accessorPath !== null) {
87
- return Object.freeze({
88
- status: 'invalid',
89
- issues: Object.freeze([
90
- commandResultIssue('invalid_command_result', accessorPath, 'Workbook command result must contain only data properties'),
91
- ]),
92
- });
93
- }
94
95
  const issues = [];
95
- const status = ownValue(value, 'status');
96
+ const accessorKeys = new Set(ownAccessorKeys(value, commandResultDataFields));
97
+ accessorKeys.forEach((key) => {
98
+ issues.push(commandResultIssue('invalid_command_result', key, `Workbook command result ${key} must be a data property`));
99
+ });
100
+ const status = accessorKeys.has('status') ? undefined : ownValue(value, 'status');
96
101
  if (!isWorkbookCommandResultStatus(status)) {
97
102
  issues.push(commandResultIssue('invalid_command_result', 'status', 'Workbook command result status is invalid'));
98
103
  }
99
- pushResultOptionalStringIssue(issues, ownValue(value, 'bundleId'), 'bundleId', 'bundle id');
100
- pushResultSafeIntegerIssue(issues, ownValue(value, 'targetRevision'), 'targetRevision', 'target revision', true);
101
- pushResultRequiredStringIssue(issues, ownValue(value, 'idempotencyKey'), 'idempotencyKey', 'idempotency key');
102
- pushResultSafeIntegerIssue(issues, ownValue(value, 'commandCount'), 'commandCount', 'command count', true);
103
- pushResultRangesIssues(issues, ownValue(value, 'touchedRanges'), 'touchedRanges', 'touched ranges');
104
- pushResultSafeIntegerIssue(issues, ownValue(value, 'touchedCellCount'), 'touchedCellCount', 'touched cell count', true);
104
+ if (!accessorKeys.has('bundleId')) {
105
+ pushResultOptionalStringIssue(issues, ownValue(value, 'bundleId'), 'bundleId', 'bundle id');
106
+ }
107
+ if (!accessorKeys.has('targetRevision')) {
108
+ pushResultSafeIntegerIssue(issues, ownValue(value, 'targetRevision'), 'targetRevision', 'target revision', true);
109
+ }
110
+ if (!accessorKeys.has('idempotencyKey')) {
111
+ pushResultRequiredStringIssue(issues, ownValue(value, 'idempotencyKey'), 'idempotencyKey', 'idempotency key');
112
+ }
113
+ if (!accessorKeys.has('commandCount')) {
114
+ pushResultSafeIntegerIssue(issues, ownValue(value, 'commandCount'), 'commandCount', 'command count', true);
115
+ }
116
+ if (!accessorKeys.has('touchedRanges')) {
117
+ pushResultRangesIssues(issues, ownValue(value, 'touchedRanges'), 'touchedRanges', 'touched ranges');
118
+ }
119
+ if (!accessorKeys.has('touchedCellCount')) {
120
+ pushResultSafeIntegerIssue(issues, ownValue(value, 'touchedCellCount'), 'touchedCellCount', 'touched cell count', true);
121
+ }
105
122
  if (status === 'accepted') {
106
123
  pushAcceptedResultSettledFieldIssues(issues, value);
107
124
  }
108
125
  else if (isWorkbookCommandResultStatus(status)) {
109
- pushResultSafeIntegerIssue(issues, ownValue(value, 'revision'), 'revision', 'revision', false);
110
- pushResultReceiptsIssues(issues, ownValue(value, 'receipts'));
111
- const matched = ownValue(value, 'matched');
112
- if (matched !== null && typeof matched !== 'boolean') {
113
- issues.push(commandResultIssue('invalid_command_result', 'matched', 'Workbook command result matched must be boolean or null'));
114
- }
115
- pushResultRangesIssues(issues, ownValue(value, 'changedRanges'), 'changedRanges', 'changed ranges');
116
- const undo = ownValue(value, 'undo');
117
- if (undo !== undefined) {
118
- try {
119
- normalizeUndoRef(undo, 'undo');
126
+ if (!accessorKeys.has('revision')) {
127
+ pushResultSafeIntegerIssue(issues, ownValue(value, 'revision'), 'revision', 'revision', false);
128
+ }
129
+ if (!accessorKeys.has('receipts')) {
130
+ pushResultReceiptsIssues(issues, ownValue(value, 'receipts'));
131
+ }
132
+ if (!accessorKeys.has('matched')) {
133
+ const matched = ownValue(value, 'matched');
134
+ if (matched !== null && typeof matched !== 'boolean') {
135
+ issues.push(commandResultIssue('invalid_command_result', 'matched', 'Workbook command result matched must be boolean or null'));
120
136
  }
121
- catch (error) {
122
- issues.push(commandResultIssue('invalid_undo', 'undo', errorMessage(error)));
137
+ }
138
+ if (!accessorKeys.has('changedRanges')) {
139
+ pushResultRangesIssues(issues, ownValue(value, 'changedRanges'), 'changedRanges', 'changed ranges');
140
+ }
141
+ const undo = accessorKeys.has('undo') ? undefined : ownValue(value, 'undo');
142
+ if (!accessorKeys.has('undo') && undo !== undefined) {
143
+ const undoAccessorKeys = isRecord(undo) ? ownAccessorKeys(undo, ['id', 'ops']) : [];
144
+ undoAccessorKeys.forEach((key) => {
145
+ issues.push(commandResultIssue('invalid_undo', `undo.${key}`, `Workbook command result undo.${key} must be a data property`));
146
+ });
147
+ if (undoAccessorKeys.length === 0) {
148
+ try {
149
+ normalizeCommandResultUndoRef(undo, 'undo');
150
+ }
151
+ catch (error) {
152
+ issues.push(commandResultIssue('invalid_undo', 'undo', errorMessage(error)));
153
+ }
123
154
  }
124
155
  }
125
- pushResultErrorsIssues(issues, ownValue(value, 'errors'));
156
+ if (!accessorKeys.has('errors')) {
157
+ pushResultErrorsIssues(issues, ownValue(value, 'errors'));
158
+ }
126
159
  }
127
160
  if (issues.length > 0) {
128
161
  return Object.freeze({
@@ -189,10 +222,6 @@ function normalizeReceiptArrayForResult(receipts) {
189
222
  if (!Array.isArray(receipts)) {
190
223
  throw new Error('Workbook command result is invalid: receipts must be an array');
191
224
  }
192
- const accessorPath = firstAccessorPath(receipts, 'receipts');
193
- if (accessorPath !== null) {
194
- throw new Error(`Workbook command result is invalid: ${accessorPath} must contain only data properties`);
195
- }
196
225
  const normalizedReceipts = [];
197
226
  for (let index = 0; index < receipts.length; index += 1) {
198
227
  const receipt = arrayDataValue(receipts, index);
@@ -475,11 +504,6 @@ function pushResultErrorsIssues(issues, value) {
475
504
  }
476
505
  }
477
506
  function pushResultArrayDataIssues(issues, value, path, label) {
478
- const accessorPath = firstAccessorPath(value, path);
479
- if (accessorPath !== null) {
480
- issues.push(commandResultIssue('invalid_command_result', accessorPath, `${label} must contain only data properties`));
481
- return;
482
- }
483
507
  for (let index = 0; index < value.length; index += 1) {
484
508
  const descriptor = Object.getOwnPropertyDescriptor(value, String(index));
485
509
  if (descriptor === undefined || !descriptor.enumerable || !('value' in descriptor)) {
@@ -563,7 +587,7 @@ function normalizeWorkbookCommandResultData(value) {
563
587
  receipts: Object.freeze(normalizeResultReceipts(ownValue(value, 'receipts'))),
564
588
  matched: matched === true ? true : matched === false ? false : null,
565
589
  changedRanges: Object.freeze(normalizeResultRanges(ownValue(value, 'changedRanges'), 'changedRanges')),
566
- ...(undo !== undefined ? { undo: normalizeUndoRef(undo, 'undo') } : {}),
590
+ ...(undo !== undefined ? { undo: normalizeCommandResultUndoRef(undo, 'undo') } : {}),
567
591
  ...(Array.isArray(errors) ? { errors: Object.freeze(normalizeResultErrors(errors)) } : {}),
568
592
  });
569
593
  }
@@ -587,50 +611,6 @@ function normalizeResultErrors(errors) {
587
611
  return normalizeExactString(entry, `errors[${String(index)}]`);
588
612
  });
589
613
  }
590
- function normalizeUndoRef(value, path) {
591
- if (!isRecord(value)) {
592
- throw new Error(`Workbook command result ${path} must be an object`);
593
- }
594
- const id = ownValue(value, 'id');
595
- if (typeof id !== 'string') {
596
- throw new Error(`Workbook command result ${path}.id must be a string`);
597
- }
598
- const ops = ownValue(value, 'ops');
599
- if (ops !== undefined && !Array.isArray(ops)) {
600
- throw new Error(`Workbook command result ${path}.ops must be an array`);
601
- }
602
- if (Array.isArray(ops)) {
603
- const accessorPath = firstAccessorPath(ops, `${path}.ops`);
604
- if (accessorPath !== null) {
605
- throw new Error(`Workbook command result ${accessorPath} must contain only data properties`);
606
- }
607
- const normalizedOps = [];
608
- for (let index = 0; index < ops.length; index += 1) {
609
- const op = arrayDataValue(ops, index);
610
- if (op === undefined) {
611
- throw new Error(`Workbook command result ${path}.ops[${String(index)}] must contain only data properties`);
612
- }
613
- normalizedOps.push(normalizeOp(op));
614
- }
615
- return Object.freeze({
616
- id: normalizeExactString(id, `${path}.id`),
617
- ops: Object.freeze(normalizedOps),
618
- });
619
- }
620
- return Object.freeze({
621
- id: normalizeExactString(id, `${path}.id`),
622
- });
623
- }
624
- function normalizeOp(value) {
625
- if (!isWorkbookOp(value)) {
626
- throw new Error('Workbook command result op is invalid');
627
- }
628
- const cloned = cloneData(value);
629
- if (!isWorkbookOp(cloned)) {
630
- throw new Error('Workbook command result op clone is invalid');
631
- }
632
- return freezeData(cloned);
633
- }
634
614
  function normalizeExactString(value, path) {
635
615
  const normalized = value.trim();
636
616
  if (normalized === '') {
@@ -648,6 +628,16 @@ function arrayDataValue(value, index) {
648
628
  function ownValue(value, key) {
649
629
  return Object.getOwnPropertyDescriptor(value, key)?.value;
650
630
  }
631
+ function ownAccessorKeys(value, keys) {
632
+ const accessors = [];
633
+ for (const key of keys) {
634
+ const descriptor = Object.getOwnPropertyDescriptor(value, key);
635
+ if (descriptor !== undefined && !('value' in descriptor)) {
636
+ accessors.push(key);
637
+ }
638
+ }
639
+ return accessors;
640
+ }
651
641
  function isRecord(value) {
652
642
  return typeof value === 'object' && value !== null && !Array.isArray(value);
653
643
  }
@@ -657,72 +647,4 @@ function isSafeNonNegativeInteger(value) {
657
647
  function errorMessage(error) {
658
648
  return error instanceof Error ? error.message : String(error);
659
649
  }
660
- function firstAccessorPath(value, path, seen = new WeakSet()) {
661
- if (typeof value !== 'object' || value === null) {
662
- return null;
663
- }
664
- if (seen.has(value)) {
665
- return null;
666
- }
667
- seen.add(value);
668
- for (const [key, descriptor] of Object.entries(Object.getOwnPropertyDescriptors(value))) {
669
- const childPath = Array.isArray(value) && /^\d+$/.test(key) ? `${path}[${key}]` : `${path}.${key}`;
670
- if (!('value' in descriptor)) {
671
- return childPath;
672
- }
673
- const nestedPath = firstAccessorPath(descriptor.value, childPath, seen);
674
- if (nestedPath !== null) {
675
- return nestedPath;
676
- }
677
- }
678
- return null;
679
- }
680
- function freezeData(value, seen = new WeakSet()) {
681
- if (typeof value !== 'object' || value === null) {
682
- return value;
683
- }
684
- if (seen.has(value)) {
685
- return value;
686
- }
687
- seen.add(value);
688
- Object.values(Object.getOwnPropertyDescriptors(value)).forEach((descriptor) => {
689
- if ('value' in descriptor) {
690
- freezeData(descriptor.value, seen);
691
- }
692
- });
693
- return Object.freeze(value);
694
- }
695
- function cloneData(value, seen = new WeakMap()) {
696
- if (typeof value !== 'object' || value === null) {
697
- return value;
698
- }
699
- const existing = seen.get(value);
700
- if (existing !== undefined) {
701
- return existing;
702
- }
703
- if (Array.isArray(value)) {
704
- const cloned = [];
705
- seen.set(value, cloned);
706
- for (let index = 0; index < value.length; index += 1) {
707
- const descriptor = Object.getOwnPropertyDescriptor(value, String(index));
708
- if (descriptor !== undefined && descriptor.enumerable && 'value' in descriptor) {
709
- cloned[index] = cloneData(descriptor.value, seen);
710
- }
711
- }
712
- return cloned;
713
- }
714
- const cloned = Object.create(Object.getPrototypeOf(value));
715
- seen.set(value, cloned);
716
- Object.entries(Object.getOwnPropertyDescriptors(value)).forEach(([key, descriptor]) => {
717
- if (descriptor.enumerable && 'value' in descriptor) {
718
- Object.defineProperty(cloned, key, {
719
- configurable: true,
720
- enumerable: true,
721
- value: cloneData(descriptor.value, seen),
722
- writable: true,
723
- });
724
- }
725
- });
726
- return cloned;
727
- }
728
650
  //# sourceMappingURL=command-result.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"command-result.js","sourceRoot":"","sources":["../src/command-result.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command-result.js","sourceRoot":"","sources":["../src/command-result.ts"],"names":[],"mappings":"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"}