@bilig/workbook 0.67.8 → 0.67.9

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 CHANGED
@@ -156,9 +156,11 @@ methods, or pass the data directly to `describeRuntimeRequirements(data)` and
156
156
  proof keep nested JSON paths such as `input.rows[1]` and
157
157
  `checks[0].proof.when`, so an agent can repair the exact payload field before
158
158
  hydration. Plan-data guards only trust own payload fields; inherited
159
- prototype fields never satisfy the transport contract. The hydrated plan exposes
160
- `refs: { refsUsed }` instead of the consumer's private model-shaped `refs`
161
- object, so transported execution stays generic.
159
+ prototype fields never satisfy the transport contract. Transported plan arrays
160
+ must contain data entries too; holes or accessor-backed entries are rejected
161
+ without running getters. The hydrated plan exposes `refs: { refsUsed }` instead
162
+ of the consumer's private model-shaped `refs` object, so transported execution
163
+ stays generic.
162
164
 
163
165
  ## Action Input
164
166
 
@@ -311,7 +313,9 @@ command log. If a target is supplied and the op exposes a concrete range,
311
313
  `verifyPlan` checks that the target and op agree.
312
314
  Low-level op guards accept plain own-field payloads only. Prototype-inherited
313
315
  op fields, nested ranges, and batch clocks are ignored so transported ops cannot
314
- smuggle proof through object prototypes.
316
+ smuggle proof through object prototypes. Accessor-backed required fields,
317
+ nested fields, and op-array entries are rejected from descriptors without
318
+ running getters.
315
319
 
316
320
  ## Example
317
321
 
package/dist/guards.js CHANGED
@@ -41,7 +41,25 @@ function isSafePositiveInteger(value) {
41
41
  return typeof value === 'number' && Number.isSafeInteger(value) && value > 0;
42
42
  }
43
43
  function isStringArray(value) {
44
- return Array.isArray(value) && value.every((entry) => typeof entry === 'string');
44
+ return arrayEvery(value, (entry) => typeof entry === 'string');
45
+ }
46
+ function stringSetHas(values, value) {
47
+ return typeof value === 'string' && values.has(value);
48
+ }
49
+ function arrayEvery(value, predicate) {
50
+ if (!Array.isArray(value)) {
51
+ return false;
52
+ }
53
+ for (let index = 0; index < value.length; index += 1) {
54
+ const descriptor = Object.getOwnPropertyDescriptor(value, String(index));
55
+ if (descriptor === undefined || !('value' in descriptor) || !predicate(descriptor.value)) {
56
+ return false;
57
+ }
58
+ }
59
+ return true;
60
+ }
61
+ function nonEmptyArrayEvery(value, predicate) {
62
+ return Array.isArray(value) && value.length > 0 && arrayEvery(value, predicate);
45
63
  }
46
64
  function isConditionalFormatArtifacts(value) {
47
65
  return isRecord(value) && hasString(value, 'xml');
@@ -89,64 +107,60 @@ function isWorkbookAxisEntry(value) {
89
107
  return (isRecord(value) &&
90
108
  hasString(value, 'id') &&
91
109
  hasSafeNonNegativeInteger(value, 'index') &&
92
- isOptionalNullableSafePositiveInteger(value['size']) &&
93
- isOptionalNullableBoolean(value['hidden']) &&
94
- isOptionalNullableBoolean(value['filterHidden']));
110
+ isOptionalNullableSafePositiveInteger(ownValue(value, 'size')) &&
111
+ isOptionalNullableBoolean(ownValue(value, 'hidden')) &&
112
+ isOptionalNullableBoolean(ownValue(value, 'filterHidden')));
95
113
  }
96
114
  function isCellBorderSide(value) {
97
115
  return (isRecord(value) &&
98
116
  hasString(value, 'color') &&
99
- typeof value['style'] === 'string' &&
100
- BORDER_STYLE_VALUES.has(value['style']) &&
101
- typeof value['weight'] === 'string' &&
102
- BORDER_WEIGHT_VALUES.has(value['weight']));
117
+ stringSetHas(BORDER_STYLE_VALUES, ownValue(value, 'style')) &&
118
+ stringSetHas(BORDER_WEIGHT_VALUES, ownValue(value, 'weight')));
103
119
  }
104
120
  function isCellStyleRecord(value) {
105
121
  if (!isRecord(value) || !hasString(value, 'id')) {
106
122
  return false;
107
123
  }
108
- const fill = value['fill'];
109
- if (fill !== undefined && (!isRecord(fill) || typeof fill['backgroundColor'] !== 'string')) {
124
+ const fill = ownValue(value, 'fill');
125
+ if (fill !== undefined && (!isRecord(fill) || typeof ownValue(fill, 'backgroundColor') !== 'string')) {
110
126
  return false;
111
127
  }
112
- const font = value['font'];
128
+ const font = ownValue(value, 'font');
113
129
  if (font !== undefined &&
114
130
  (!isRecord(font) ||
115
- !isOptionalString(font['family']) ||
116
- !isOptionalNumber(font['size']) ||
117
- !isOptionalBoolean(font['bold']) ||
118
- !isOptionalBoolean(font['italic']) ||
119
- !isOptionalBoolean(font['underline']) ||
120
- !isOptionalString(font['color']))) {
131
+ !isOptionalString(ownValue(font, 'family')) ||
132
+ !isOptionalNumber(ownValue(font, 'size')) ||
133
+ !isOptionalBoolean(ownValue(font, 'bold')) ||
134
+ !isOptionalBoolean(ownValue(font, 'italic')) ||
135
+ !isOptionalBoolean(ownValue(font, 'underline')) ||
136
+ !isOptionalString(ownValue(font, 'color')))) {
121
137
  return false;
122
138
  }
123
- const alignment = value['alignment'];
139
+ const alignment = ownValue(value, 'alignment');
124
140
  if (alignment !== undefined &&
125
141
  (!isRecord(alignment) ||
126
- !(alignment['horizontal'] === undefined ||
127
- (typeof alignment['horizontal'] === 'string' && HORIZONTAL_ALIGNMENT_VALUES.has(alignment['horizontal']))) ||
128
- !(alignment['vertical'] === undefined ||
129
- (typeof alignment['vertical'] === 'string' && VERTICAL_ALIGNMENT_VALUES.has(alignment['vertical']))) ||
130
- !isOptionalBoolean(alignment['wrap']) ||
131
- !isOptionalNumber(alignment['indent']) ||
132
- !isOptionalBoolean(alignment['shrinkToFit']) ||
133
- !isOptionalNumber(alignment['readingOrder']) ||
134
- !isOptionalNumber(alignment['textRotation']) ||
135
- !isOptionalBoolean(alignment['justifyLastLine']))) {
142
+ !(ownValue(alignment, 'horizontal') === undefined || stringSetHas(HORIZONTAL_ALIGNMENT_VALUES, ownValue(alignment, 'horizontal'))) ||
143
+ !(ownValue(alignment, 'vertical') === undefined || stringSetHas(VERTICAL_ALIGNMENT_VALUES, ownValue(alignment, 'vertical'))) ||
144
+ !isOptionalBoolean(ownValue(alignment, 'wrap')) ||
145
+ !isOptionalNumber(ownValue(alignment, 'indent')) ||
146
+ !isOptionalBoolean(ownValue(alignment, 'shrinkToFit')) ||
147
+ !isOptionalNumber(ownValue(alignment, 'readingOrder')) ||
148
+ !isOptionalNumber(ownValue(alignment, 'textRotation')) ||
149
+ !isOptionalBoolean(ownValue(alignment, 'justifyLastLine')))) {
136
150
  return false;
137
151
  }
138
- const borders = value['borders'];
152
+ const borders = ownValue(value, 'borders');
139
153
  if (borders !== undefined &&
140
154
  (!isRecord(borders) ||
141
- !(borders['top'] === undefined || isCellBorderSide(borders['top'])) ||
142
- !(borders['right'] === undefined || isCellBorderSide(borders['right'])) ||
143
- !(borders['bottom'] === undefined || isCellBorderSide(borders['bottom'])) ||
144
- !(borders['left'] === undefined || isCellBorderSide(borders['left'])))) {
155
+ !(ownValue(borders, 'top') === undefined || isCellBorderSide(ownValue(borders, 'top'))) ||
156
+ !(ownValue(borders, 'right') === undefined || isCellBorderSide(ownValue(borders, 'right'))) ||
157
+ !(ownValue(borders, 'bottom') === undefined || isCellBorderSide(ownValue(borders, 'bottom'))) ||
158
+ !(ownValue(borders, 'left') === undefined || isCellBorderSide(ownValue(borders, 'left'))))) {
145
159
  return false;
146
160
  }
147
- const protection = value['protection'];
161
+ const protection = ownValue(value, 'protection');
148
162
  if (protection !== undefined &&
149
- (!isRecord(protection) || !isOptionalBoolean(protection['locked']) || !isOptionalBoolean(protection['hidden']))) {
163
+ (!isRecord(protection) || !isOptionalBoolean(ownValue(protection, 'locked')) || !isOptionalBoolean(ownValue(protection, 'hidden')))) {
150
164
  return false;
151
165
  }
152
166
  return true;
@@ -155,29 +169,24 @@ function isCellNumberFormatRecord(value) {
155
169
  return (isRecord(value) &&
156
170
  hasString(value, 'id') &&
157
171
  hasString(value, 'code') &&
158
- typeof value['kind'] === 'string' &&
159
- NUMBER_FORMAT_KIND_VALUES.has(value['kind']));
172
+ stringSetHas(NUMBER_FORMAT_KIND_VALUES, ownValue(value, 'kind')));
160
173
  }
161
174
  function isWorkbookCalculationSettings(value) {
162
175
  return (isRecord(value) &&
163
- (value['mode'] === 'automatic' || value['mode'] === 'manual') &&
164
- (value['compatibilityMode'] === undefined ||
165
- (typeof value['compatibilityMode'] === 'string' && COMPATIBILITY_MODE_VALUES.has(value['compatibilityMode']))));
176
+ (ownValue(value, 'mode') === 'automatic' || ownValue(value, 'mode') === 'manual') &&
177
+ (ownValue(value, 'compatibilityMode') === undefined || stringSetHas(COMPATIBILITY_MODE_VALUES, ownValue(value, 'compatibilityMode'))));
166
178
  }
167
179
  function isWorkbookVolatileContext(value) {
168
180
  return isRecord(value) && hasFiniteNumber(value, 'recalcEpoch');
169
181
  }
170
182
  function isWorkbookSortKey(value) {
171
- return (isRecord(value) &&
172
- hasString(value, 'keyAddress') &&
173
- typeof value['direction'] === 'string' &&
174
- SORT_DIRECTION_VALUES.has(value['direction']));
183
+ return isRecord(value) && hasString(value, 'keyAddress') && stringSetHas(SORT_DIRECTION_VALUES, ownValue(value, 'direction'));
175
184
  }
176
185
  function isWorkbookValidationListSource(value) {
177
- if (!isRecord(value) || typeof value['kind'] !== 'string') {
186
+ if (!isRecord(value) || typeof ownValue(value, 'kind') !== 'string') {
178
187
  return false;
179
188
  }
180
- switch (value['kind']) {
189
+ switch (ownValue(value, 'kind')) {
181
190
  case 'named-range':
182
191
  return hasString(value, 'name');
183
192
  case 'cell-ref':
@@ -191,17 +200,17 @@ function isWorkbookValidationListSource(value) {
191
200
  }
192
201
  }
193
202
  function isWorkbookDataValidationRule(value) {
194
- if (!isRecord(value) || typeof value['kind'] !== 'string') {
203
+ if (!isRecord(value) || typeof ownValue(value, 'kind') !== 'string') {
195
204
  return false;
196
205
  }
197
- switch (value['kind']) {
206
+ switch (ownValue(value, 'kind')) {
198
207
  case 'list': {
199
- const hasValues = Array.isArray(value['values']) && value['values'].every((entry) => isLiteralInput(entry));
200
- const hasSource = value['source'] !== undefined && isWorkbookValidationListSource(value['source']);
208
+ const hasValues = arrayEvery(ownValue(value, 'values'), isLiteralInput);
209
+ const hasSource = ownValue(value, 'source') !== undefined && isWorkbookValidationListSource(ownValue(value, 'source'));
201
210
  return (hasValues ? 1 : 0) + (hasSource ? 1 : 0) === 1;
202
211
  }
203
212
  case 'checkbox':
204
- return isOptionalLiteralInput(value['checkedValue']) && isOptionalLiteralInput(value['uncheckedValue']);
213
+ return isOptionalLiteralInput(ownValue(value, 'checkedValue')) && isOptionalLiteralInput(ownValue(value, 'uncheckedValue'));
205
214
  case 'any':
206
215
  return true;
207
216
  case 'whole':
@@ -209,88 +218,90 @@ function isWorkbookDataValidationRule(value) {
209
218
  case 'date':
210
219
  case 'time':
211
220
  case 'textLength':
212
- return (typeof value['operator'] === 'string' &&
213
- VALIDATION_COMPARISON_OPERATOR_VALUES.has(value['operator']) &&
214
- Array.isArray(value['values']) &&
215
- value['values'].every((entry) => isLiteralInput(entry)) &&
216
- (value['operator'] === 'between' || value['operator'] === 'notBetween'
217
- ? value['values'].length === 2
218
- : value['values'].length === 1));
221
+ const operator = ownValue(value, 'operator');
222
+ const values = ownValue(value, 'values');
223
+ return (stringSetHas(VALIDATION_COMPARISON_OPERATOR_VALUES, operator) &&
224
+ arrayEvery(values, isLiteralInput) &&
225
+ (operator === 'between' || operator === 'notBetween'
226
+ ? Array.isArray(values) && values.length === 2
227
+ : Array.isArray(values) && values.length === 1));
219
228
  default:
220
229
  return false;
221
230
  }
222
231
  }
223
232
  function isWorkbookDataValidation(value) {
224
233
  return (isRecord(value) &&
225
- isCellRangeRef(value['range']) &&
226
- isWorkbookDataValidationRule(value['rule']) &&
227
- isOptionalBoolean(value['allowBlank']) &&
228
- isOptionalBoolean(value['showDropdown']) &&
229
- isOptionalString(value['promptTitle']) &&
230
- isOptionalString(value['promptMessage']) &&
231
- (value['errorStyle'] === undefined ||
232
- (typeof value['errorStyle'] === 'string' && VALIDATION_ERROR_STYLE_VALUES.has(value['errorStyle']))) &&
233
- isOptionalString(value['errorTitle']) &&
234
- isOptionalString(value['errorMessage']));
234
+ isCellRangeRef(ownValue(value, 'range')) &&
235
+ isWorkbookDataValidationRule(ownValue(value, 'rule')) &&
236
+ isOptionalBoolean(ownValue(value, 'allowBlank')) &&
237
+ isOptionalBoolean(ownValue(value, 'showDropdown')) &&
238
+ isOptionalString(ownValue(value, 'promptTitle')) &&
239
+ isOptionalString(ownValue(value, 'promptMessage')) &&
240
+ (ownValue(value, 'errorStyle') === undefined || stringSetHas(VALIDATION_ERROR_STYLE_VALUES, ownValue(value, 'errorStyle'))) &&
241
+ isOptionalString(ownValue(value, 'errorTitle')) &&
242
+ isOptionalString(ownValue(value, 'errorMessage')));
235
243
  }
236
244
  function isCellStylePatch(value) {
237
245
  if (!isRecord(value)) {
238
246
  return false;
239
247
  }
240
- const fill = value['fill'];
248
+ const fill = ownValue(value, 'fill');
241
249
  if (fill !== undefined &&
242
250
  fill !== null &&
243
- (!isRecord(fill) || !(fill['backgroundColor'] === undefined || fill['backgroundColor'] === null || hasString(fill, 'backgroundColor')))) {
251
+ (!isRecord(fill) ||
252
+ !(ownValue(fill, 'backgroundColor') === undefined ||
253
+ ownValue(fill, 'backgroundColor') === null ||
254
+ hasString(fill, 'backgroundColor')))) {
244
255
  return false;
245
256
  }
246
- const font = value['font'];
257
+ const font = ownValue(value, 'font');
247
258
  if (font !== undefined &&
248
259
  font !== null &&
249
260
  (!isRecord(font) ||
250
- !(font['family'] === undefined || font['family'] === null || hasString(font, 'family')) ||
251
- !isOptionalNullableNumber(font['size']) ||
252
- !isOptionalNullableBoolean(font['bold']) ||
253
- !isOptionalNullableBoolean(font['italic']) ||
254
- !isOptionalNullableBoolean(font['underline']) ||
255
- !(font['color'] === undefined || font['color'] === null || hasString(font, 'color')))) {
261
+ !(ownValue(font, 'family') === undefined || ownValue(font, 'family') === null || hasString(font, 'family')) ||
262
+ !isOptionalNullableNumber(ownValue(font, 'size')) ||
263
+ !isOptionalNullableBoolean(ownValue(font, 'bold')) ||
264
+ !isOptionalNullableBoolean(ownValue(font, 'italic')) ||
265
+ !isOptionalNullableBoolean(ownValue(font, 'underline')) ||
266
+ !(ownValue(font, 'color') === undefined || ownValue(font, 'color') === null || hasString(font, 'color')))) {
256
267
  return false;
257
268
  }
258
- const alignment = value['alignment'];
269
+ const alignment = ownValue(value, 'alignment');
259
270
  if (alignment !== undefined &&
260
271
  alignment !== null &&
261
272
  (!isRecord(alignment) ||
262
- !(alignment['horizontal'] === undefined ||
263
- alignment['horizontal'] === null ||
264
- (typeof alignment['horizontal'] === 'string' && HORIZONTAL_ALIGNMENT_VALUES.has(alignment['horizontal']))) ||
265
- !(alignment['vertical'] === undefined ||
266
- alignment['vertical'] === null ||
267
- (typeof alignment['vertical'] === 'string' && VERTICAL_ALIGNMENT_VALUES.has(alignment['vertical']))) ||
268
- !isOptionalNullableBoolean(alignment['wrap']) ||
269
- !isOptionalNullableNumber(alignment['indent']) ||
270
- !isOptionalNullableBoolean(alignment['shrinkToFit']) ||
271
- !isOptionalNullableNumber(alignment['readingOrder']) ||
272
- !isOptionalNullableNumber(alignment['textRotation']) ||
273
- !isOptionalNullableBoolean(alignment['justifyLastLine']))) {
273
+ !(ownValue(alignment, 'horizontal') === undefined ||
274
+ ownValue(alignment, 'horizontal') === null ||
275
+ stringSetHas(HORIZONTAL_ALIGNMENT_VALUES, ownValue(alignment, 'horizontal'))) ||
276
+ !(ownValue(alignment, 'vertical') === undefined ||
277
+ ownValue(alignment, 'vertical') === null ||
278
+ stringSetHas(VERTICAL_ALIGNMENT_VALUES, ownValue(alignment, 'vertical'))) ||
279
+ !isOptionalNullableBoolean(ownValue(alignment, 'wrap')) ||
280
+ !isOptionalNullableNumber(ownValue(alignment, 'indent')) ||
281
+ !isOptionalNullableBoolean(ownValue(alignment, 'shrinkToFit')) ||
282
+ !isOptionalNullableNumber(ownValue(alignment, 'readingOrder')) ||
283
+ !isOptionalNullableNumber(ownValue(alignment, 'textRotation')) ||
284
+ !isOptionalNullableBoolean(ownValue(alignment, 'justifyLastLine')))) {
274
285
  return false;
275
286
  }
276
- const borders = value['borders'];
287
+ const borders = ownValue(value, 'borders');
277
288
  if (borders !== undefined && borders !== null) {
278
289
  if (!isRecord(borders)) {
279
290
  return false;
280
291
  }
281
292
  for (const side of ['top', 'right', 'bottom', 'left']) {
282
- const sideValue = borders[side];
293
+ const sideValue = ownValue(borders, side);
283
294
  if (sideValue === undefined || sideValue === null) {
284
295
  continue;
285
296
  }
286
297
  if (!isRecord(sideValue) ||
287
- !(sideValue['style'] === undefined ||
288
- sideValue['style'] === null ||
289
- (typeof sideValue['style'] === 'string' && BORDER_STYLE_VALUES.has(sideValue['style']))) ||
290
- !(sideValue['weight'] === undefined ||
291
- sideValue['weight'] === null ||
292
- (typeof sideValue['weight'] === 'string' && BORDER_WEIGHT_VALUES.has(sideValue['weight']))) ||
293
- !(sideValue['color'] === undefined || sideValue['color'] === null || hasString(sideValue, 'color'))) {
298
+ !(ownValue(sideValue, 'style') === undefined ||
299
+ ownValue(sideValue, 'style') === null ||
300
+ stringSetHas(BORDER_STYLE_VALUES, ownValue(sideValue, 'style'))) ||
301
+ !(ownValue(sideValue, 'weight') === undefined ||
302
+ ownValue(sideValue, 'weight') === null ||
303
+ stringSetHas(BORDER_WEIGHT_VALUES, ownValue(sideValue, 'weight'))) ||
304
+ !(ownValue(sideValue, 'color') === undefined || ownValue(sideValue, 'color') === null || hasString(sideValue, 'color'))) {
294
305
  return false;
295
306
  }
296
307
  }
@@ -298,20 +309,20 @@ function isCellStylePatch(value) {
298
309
  return true;
299
310
  }
300
311
  function isWorkbookConditionalFormatRule(value) {
301
- if (!isRecord(value) || typeof value['kind'] !== 'string') {
312
+ if (!isRecord(value) || typeof ownValue(value, 'kind') !== 'string') {
302
313
  return false;
303
314
  }
304
- switch (value['kind']) {
315
+ switch (ownValue(value, 'kind')) {
305
316
  case 'cellIs':
306
- return (typeof value['operator'] === 'string' &&
307
- VALIDATION_COMPARISON_OPERATOR_VALUES.has(value['operator']) &&
308
- Array.isArray(value['values']) &&
309
- value['values'].every((entry) => isLiteralInput(entry)) &&
310
- (value['operator'] === 'between' || value['operator'] === 'notBetween'
311
- ? value['values'].length === 2
312
- : value['values'].length === 1));
317
+ const operator = ownValue(value, 'operator');
318
+ const values = ownValue(value, 'values');
319
+ return (stringSetHas(VALIDATION_COMPARISON_OPERATOR_VALUES, operator) &&
320
+ arrayEvery(values, isLiteralInput) &&
321
+ (operator === 'between' || operator === 'notBetween'
322
+ ? Array.isArray(values) && values.length === 2
323
+ : Array.isArray(values) && values.length === 1));
313
324
  case 'textContains':
314
- return hasString(value, 'text') && isOptionalBoolean(value['caseSensitive']);
325
+ return hasString(value, 'text') && isOptionalBoolean(ownValue(value, 'caseSensitive'));
315
326
  case 'formula':
316
327
  return hasString(value, 'formula');
317
328
  case 'blanks':
@@ -324,37 +335,38 @@ function isWorkbookConditionalFormatRule(value) {
324
335
  function isWorkbookConditionalFormat(value) {
325
336
  return (isRecord(value) &&
326
337
  hasString(value, 'id') &&
327
- isCellRangeRef(value['range']) &&
328
- isWorkbookConditionalFormatRule(value['rule']) &&
329
- isCellStylePatch(value['style']) &&
330
- isOptionalBoolean(value['stopIfTrue']) &&
331
- isOptionalSafeNonNegativeInteger(value['priority']));
338
+ isCellRangeRef(ownValue(value, 'range')) &&
339
+ isWorkbookConditionalFormatRule(ownValue(value, 'rule')) &&
340
+ isCellStylePatch(ownValue(value, 'style')) &&
341
+ isOptionalBoolean(ownValue(value, 'stopIfTrue')) &&
342
+ isOptionalSafeNonNegativeInteger(ownValue(value, 'priority')));
332
343
  }
333
344
  function isWorkbookSheetProtection(value) {
334
- return isRecord(value) && hasString(value, 'sheetName') && isOptionalBoolean(value['hideFormulas']);
345
+ return isRecord(value) && hasString(value, 'sheetName') && isOptionalBoolean(ownValue(value, 'hideFormulas'));
335
346
  }
336
347
  function isWorkbookRangeProtection(value) {
337
- return isRecord(value) && hasString(value, 'id') && isCellRangeRef(value['range']) && isOptionalBoolean(value['hideFormulas']);
348
+ return (isRecord(value) &&
349
+ hasString(value, 'id') &&
350
+ isCellRangeRef(ownValue(value, 'range')) &&
351
+ isOptionalBoolean(ownValue(value, 'hideFormulas')));
338
352
  }
339
353
  function isWorkbookCommentEntry(value) {
340
354
  return (isRecord(value) &&
341
355
  hasString(value, 'id') &&
342
356
  hasString(value, 'body') &&
343
- isOptionalString(value['authorUserId']) &&
344
- isOptionalString(value['authorDisplayName']) &&
345
- isOptionalSafeNonNegativeInteger(value['createdAtUnixMs']));
357
+ isOptionalString(ownValue(value, 'authorUserId')) &&
358
+ isOptionalString(ownValue(value, 'authorDisplayName')) &&
359
+ isOptionalSafeNonNegativeInteger(ownValue(value, 'createdAtUnixMs')));
346
360
  }
347
361
  function isWorkbookCommentThread(value) {
348
362
  return (isRecord(value) &&
349
363
  hasString(value, 'threadId') &&
350
364
  hasString(value, 'sheetName') &&
351
365
  hasString(value, 'address') &&
352
- Array.isArray(value['comments']) &&
353
- value['comments'].length > 0 &&
354
- value['comments'].every((entry) => isWorkbookCommentEntry(entry)) &&
355
- isOptionalBoolean(value['resolved']) &&
356
- isOptionalString(value['resolvedByUserId']) &&
357
- isOptionalSafeNonNegativeInteger(value['resolvedAtUnixMs']));
366
+ nonEmptyArrayEvery(ownValue(value, 'comments'), isWorkbookCommentEntry) &&
367
+ isOptionalBoolean(ownValue(value, 'resolved')) &&
368
+ isOptionalString(ownValue(value, 'resolvedByUserId')) &&
369
+ isOptionalSafeNonNegativeInteger(ownValue(value, 'resolvedAtUnixMs')));
358
370
  }
359
371
  function isWorkbookNote(value) {
360
372
  return isRecord(value) && hasString(value, 'sheetName') && hasString(value, 'address') && hasString(value, 'text');
@@ -364,19 +376,19 @@ function isWorkbookHyperlink(value) {
364
376
  hasString(value, 'sheetName') &&
365
377
  hasString(value, 'address') &&
366
378
  hasString(value, 'target') &&
367
- isOptionalString(value['tooltip']) &&
368
- isOptionalString(value['display']));
379
+ isOptionalString(ownValue(value, 'tooltip')) &&
380
+ isOptionalString(ownValue(value, 'display')));
369
381
  }
370
382
  function isWorkbookDefinedNameValue(value) {
371
383
  if (isLiteralInput(value)) {
372
384
  return true;
373
385
  }
374
- if (!isRecord(value) || typeof value['kind'] !== 'string') {
386
+ if (!isRecord(value) || typeof ownValue(value, 'kind') !== 'string') {
375
387
  return false;
376
388
  }
377
- switch (value['kind']) {
389
+ switch (ownValue(value, 'kind')) {
378
390
  case 'scalar':
379
- return isLiteralInput(value['value']);
391
+ return isLiteralInput(ownValue(value, 'value'));
380
392
  case 'cell-ref':
381
393
  return hasString(value, 'sheetName') && hasString(value, 'address');
382
394
  case 'range-ref':
@@ -395,37 +407,35 @@ function isWorkbookTableOp(value) {
395
407
  hasString(value, 'sheetName') &&
396
408
  hasString(value, 'startAddress') &&
397
409
  hasString(value, 'endAddress') &&
398
- isStringArray(value['columnNames']) &&
399
- typeof value['headerRow'] === 'boolean' &&
400
- typeof value['totalsRow'] === 'boolean' &&
401
- (value['columns'] === undefined || isWorkbookTableColumns(value['columns'])) &&
402
- (value['style'] === undefined || isWorkbookTableStyle(value['style'])) &&
403
- (value['autoFilter'] === undefined || isCellRangeRef(value['autoFilter'])) &&
404
- isOptionalString(value['sortState']));
410
+ isStringArray(ownValue(value, 'columnNames')) &&
411
+ typeof ownValue(value, 'headerRow') === 'boolean' &&
412
+ typeof ownValue(value, 'totalsRow') === 'boolean' &&
413
+ (ownValue(value, 'columns') === undefined || isWorkbookTableColumns(ownValue(value, 'columns'))) &&
414
+ (ownValue(value, 'style') === undefined || isWorkbookTableStyle(ownValue(value, 'style'))) &&
415
+ (ownValue(value, 'autoFilter') === undefined || isCellRangeRef(ownValue(value, 'autoFilter'))) &&
416
+ isOptionalString(ownValue(value, 'sortState')));
405
417
  }
406
418
  function isWorkbookTableColumns(value) {
407
- return (Array.isArray(value) &&
408
- value.every((entry) => isRecord(entry) &&
409
- hasString(entry, 'name') &&
410
- isOptionalString(entry['calculatedColumnFormula']) &&
411
- isOptionalString(entry['totalsRowLabel']) &&
412
- isOptionalString(entry['totalsRowFunction']) &&
413
- isOptionalString(entry['totalsRowFormula'])));
419
+ return arrayEvery(value, (entry) => isRecord(entry) &&
420
+ hasString(entry, 'name') &&
421
+ isOptionalString(ownValue(entry, 'calculatedColumnFormula')) &&
422
+ isOptionalString(ownValue(entry, 'totalsRowLabel')) &&
423
+ isOptionalString(ownValue(entry, 'totalsRowFunction')) &&
424
+ isOptionalString(ownValue(entry, 'totalsRowFormula')));
414
425
  }
415
426
  function isWorkbookTableStyle(value) {
416
427
  return (isRecord(value) &&
417
- isOptionalString(value['name']) &&
418
- isOptionalBoolean(value['showFirstColumn']) &&
419
- isOptionalBoolean(value['showLastColumn']) &&
420
- isOptionalBoolean(value['showRowStripes']) &&
421
- isOptionalBoolean(value['showColumnStripes']));
428
+ isOptionalString(ownValue(value, 'name')) &&
429
+ isOptionalBoolean(ownValue(value, 'showFirstColumn')) &&
430
+ isOptionalBoolean(ownValue(value, 'showLastColumn')) &&
431
+ isOptionalBoolean(ownValue(value, 'showRowStripes')) &&
432
+ isOptionalBoolean(ownValue(value, 'showColumnStripes')));
422
433
  }
423
434
  function isWorkbookPivotValue(value) {
424
435
  return (isRecord(value) &&
425
436
  hasString(value, 'sourceColumn') &&
426
- typeof value['summarizeBy'] === 'string' &&
427
- PIVOT_AGGREGATION_VALUES.has(value['summarizeBy']) &&
428
- isOptionalString(value['outputLabel']));
437
+ stringSetHas(PIVOT_AGGREGATION_VALUES, ownValue(value, 'summarizeBy')) &&
438
+ isOptionalString(ownValue(value, 'outputLabel')));
429
439
  }
430
440
  const CHART_TYPE_VALUES = new Set(['column', 'bar', 'line', 'area', 'pie', 'scatter']);
431
441
  const CHART_SERIES_ORIENTATION_VALUES = new Set(['rows', 'columns']);
@@ -436,8 +446,8 @@ function isDrawingAnchorMarker(value) {
436
446
  return (isRecord(value) &&
437
447
  hasSafeNonNegativeInteger(value, 'row') &&
438
448
  hasSafeNonNegativeInteger(value, 'col') &&
439
- isOptionalSafeNonNegativeInteger(value['rowOffset']) &&
440
- isOptionalSafeNonNegativeInteger(value['colOffset']));
449
+ isOptionalSafeNonNegativeInteger(ownValue(value, 'rowOffset')) &&
450
+ isOptionalSafeNonNegativeInteger(ownValue(value, 'colOffset')));
441
451
  }
442
452
  function isDrawingAnchorExtent(value) {
443
453
  return isRecord(value) && hasSafePositiveInteger(value, 'width') && hasSafePositiveInteger(value, 'height');
@@ -446,18 +456,18 @@ function isDrawingAnchorPosition(value) {
446
456
  return isRecord(value) && hasSafeNonNegativeInteger(value, 'x') && hasSafeNonNegativeInteger(value, 'y');
447
457
  }
448
458
  function isWorkbookChartAnchor(value) {
449
- if (!isRecord(value) || typeof value['kind'] !== 'string') {
459
+ if (!isRecord(value) || typeof ownValue(value, 'kind') !== 'string') {
450
460
  return false;
451
461
  }
452
- switch (value['kind']) {
462
+ switch (ownValue(value, 'kind')) {
453
463
  case 'twoCell':
454
- return ((value['editAs'] === undefined || (typeof value['editAs'] === 'string' && DRAWING_ANCHOR_EDIT_AS_VALUES.has(value['editAs']))) &&
455
- isDrawingAnchorMarker(value['from']) &&
456
- isDrawingAnchorMarker(value['to']));
464
+ return ((ownValue(value, 'editAs') === undefined || stringSetHas(DRAWING_ANCHOR_EDIT_AS_VALUES, ownValue(value, 'editAs'))) &&
465
+ isDrawingAnchorMarker(ownValue(value, 'from')) &&
466
+ isDrawingAnchorMarker(ownValue(value, 'to')));
457
467
  case 'oneCell':
458
- return isDrawingAnchorMarker(value['from']) && isDrawingAnchorExtent(value['extent']);
468
+ return isDrawingAnchorMarker(ownValue(value, 'from')) && isDrawingAnchorExtent(ownValue(value, 'extent'));
459
469
  case 'absolute':
460
- return isDrawingAnchorPosition(value['position']) && isDrawingAnchorExtent(value['extent']);
470
+ return isDrawingAnchorPosition(ownValue(value, 'position')) && isDrawingAnchorExtent(ownValue(value, 'extent'));
461
471
  default:
462
472
  return false;
463
473
  }
@@ -467,17 +477,15 @@ function isWorkbookChart(value) {
467
477
  hasString(value, 'id') &&
468
478
  hasString(value, 'sheetName') &&
469
479
  hasString(value, 'address') &&
470
- isCellRangeRef(value['source']) &&
471
- typeof value['chartType'] === 'string' &&
472
- CHART_TYPE_VALUES.has(value['chartType']) &&
473
- (value['anchor'] === undefined || isWorkbookChartAnchor(value['anchor'])) &&
474
- (value['seriesOrientation'] === undefined ||
475
- (typeof value['seriesOrientation'] === 'string' && CHART_SERIES_ORIENTATION_VALUES.has(value['seriesOrientation']))) &&
476
- isOptionalBoolean(value['firstRowAsHeaders']) &&
477
- isOptionalBoolean(value['firstColumnAsLabels']) &&
478
- isOptionalString(value['title']) &&
479
- (value['legendPosition'] === undefined ||
480
- (typeof value['legendPosition'] === 'string' && CHART_LEGEND_POSITION_VALUES.has(value['legendPosition']))) &&
480
+ isCellRangeRef(ownValue(value, 'source')) &&
481
+ stringSetHas(CHART_TYPE_VALUES, ownValue(value, 'chartType')) &&
482
+ (ownValue(value, 'anchor') === undefined || isWorkbookChartAnchor(ownValue(value, 'anchor'))) &&
483
+ (ownValue(value, 'seriesOrientation') === undefined ||
484
+ stringSetHas(CHART_SERIES_ORIENTATION_VALUES, ownValue(value, 'seriesOrientation'))) &&
485
+ isOptionalBoolean(ownValue(value, 'firstRowAsHeaders')) &&
486
+ isOptionalBoolean(ownValue(value, 'firstColumnAsLabels')) &&
487
+ isOptionalString(ownValue(value, 'title')) &&
488
+ (ownValue(value, 'legendPosition') === undefined || stringSetHas(CHART_LEGEND_POSITION_VALUES, ownValue(value, 'legendPosition'))) &&
481
489
  hasSafePositiveInteger(value, 'rows') &&
482
490
  hasSafePositiveInteger(value, 'cols'));
483
491
  }
@@ -489,36 +497,35 @@ function isWorkbookImage(value) {
489
497
  hasString(value, 'sourceUrl') &&
490
498
  hasSafePositiveInteger(value, 'rows') &&
491
499
  hasSafePositiveInteger(value, 'cols') &&
492
- isOptionalString(value['altText']));
500
+ isOptionalString(ownValue(value, 'altText')));
493
501
  }
494
502
  function isWorkbookShape(value) {
495
503
  return (isRecord(value) &&
496
504
  hasString(value, 'id') &&
497
505
  hasString(value, 'sheetName') &&
498
506
  hasString(value, 'address') &&
499
- typeof value['shapeType'] === 'string' &&
500
- SHAPE_TYPE_VALUES.has(value['shapeType']) &&
507
+ stringSetHas(SHAPE_TYPE_VALUES, ownValue(value, 'shapeType')) &&
501
508
  hasSafePositiveInteger(value, 'rows') &&
502
509
  hasSafePositiveInteger(value, 'cols') &&
503
- isOptionalString(value['text']) &&
504
- isOptionalString(value['fillColor']) &&
505
- isOptionalString(value['strokeColor']));
510
+ isOptionalString(ownValue(value, 'text')) &&
511
+ isOptionalString(ownValue(value, 'fillColor')) &&
512
+ isOptionalString(ownValue(value, 'strokeColor')));
506
513
  }
507
514
  export function isWorkbookOp(value) {
508
- if (!isRecord(value) || typeof value['kind'] !== 'string') {
515
+ if (!isRecord(value) || typeof ownValue(value, 'kind') !== 'string') {
509
516
  return false;
510
517
  }
511
- switch (value['kind']) {
518
+ switch (ownValue(value, 'kind')) {
512
519
  case 'upsertWorkbook':
513
520
  return hasString(value, 'name');
514
521
  case 'setWorkbookMetadata':
515
- return hasString(value, 'key') && isLiteralInput(value['value']);
522
+ return hasString(value, 'key') && isLiteralInput(ownValue(value, 'value'));
516
523
  case 'setCalculationSettings':
517
- return isWorkbookCalculationSettings(value['settings']);
524
+ return isWorkbookCalculationSettings(ownValue(value, 'settings'));
518
525
  case 'setVolatileContext':
519
- return isWorkbookVolatileContext(value['context']);
526
+ return isWorkbookVolatileContext(ownValue(value, 'context'));
520
527
  case 'upsertSheet':
521
- return hasString(value, 'name') && hasSafeNonNegativeInteger(value, 'order') && isOptionalSafePositiveInteger(value['id']);
528
+ return hasString(value, 'name') && hasSafeNonNegativeInteger(value, 'order') && isOptionalSafePositiveInteger(ownValue(value, 'id'));
522
529
  case 'renameSheet':
523
530
  return hasString(value, 'oldName') && hasString(value, 'newName');
524
531
  case 'deleteSheet':
@@ -528,8 +535,7 @@ export function isWorkbookOp(value) {
528
535
  return (hasString(value, 'sheetName') &&
529
536
  hasSafeNonNegativeInteger(value, 'start') &&
530
537
  hasSafePositiveInteger(value, 'count') &&
531
- (value['entries'] === undefined ||
532
- (Array.isArray(value['entries']) && value['entries'].every((entry) => isWorkbookAxisEntry(entry)))));
538
+ (ownValue(value, 'entries') === undefined || arrayEvery(ownValue(value, 'entries'), isWorkbookAxisEntry)));
533
539
  case 'deleteRows':
534
540
  case 'deleteColumns':
535
541
  return hasString(value, 'sheetName') && hasSafeNonNegativeInteger(value, 'start') && hasSafePositiveInteger(value, 'count');
@@ -544,81 +550,80 @@ export function isWorkbookOp(value) {
544
550
  return (hasString(value, 'sheetName') &&
545
551
  hasSafeNonNegativeInteger(value, 'start') &&
546
552
  hasSafePositiveInteger(value, 'count') &&
547
- isOptionalNullableSafePositiveInteger(value['size']) &&
548
- isOptionalNullableBoolean(value['hidden']) &&
549
- isOptionalNullableBoolean(value['filterHidden']));
553
+ isOptionalNullableSafePositiveInteger(ownValue(value, 'size')) &&
554
+ isOptionalNullableBoolean(ownValue(value, 'hidden')) &&
555
+ isOptionalNullableBoolean(ownValue(value, 'filterHidden')));
550
556
  case 'setFreezePane':
551
557
  return hasString(value, 'sheetName') && hasSafeNonNegativeInteger(value, 'rows') && hasSafeNonNegativeInteger(value, 'cols');
552
558
  case 'clearFreezePane':
553
559
  return hasString(value, 'sheetName');
554
560
  case 'mergeCells':
555
561
  case 'unmergeCells':
556
- return isCellRangeRef(value['range']);
562
+ return isCellRangeRef(ownValue(value, 'range'));
557
563
  case 'setSheetProtection':
558
- return isWorkbookSheetProtection(value['protection']);
564
+ return isWorkbookSheetProtection(ownValue(value, 'protection'));
559
565
  case 'clearSheetProtection':
560
566
  return hasString(value, 'sheetName');
561
567
  case 'setFilter':
562
568
  case 'clearFilter':
563
569
  case 'clearSort':
564
- return hasString(value, 'sheetName') && isCellRangeRef(value['range']);
570
+ return hasString(value, 'sheetName') && isCellRangeRef(ownValue(value, 'range'));
565
571
  case 'setSort':
566
- return (hasString(value, 'sheetName') &&
567
- isCellRangeRef(value['range']) &&
568
- Array.isArray(value['keys']) &&
569
- value['keys'].every((entry) => isWorkbookSortKey(entry)));
572
+ return (hasString(value, 'sheetName') && isCellRangeRef(ownValue(value, 'range')) && arrayEvery(ownValue(value, 'keys'), isWorkbookSortKey));
570
573
  case 'setDataValidation':
571
- return isWorkbookDataValidation(value['validation']);
574
+ return isWorkbookDataValidation(ownValue(value, 'validation'));
572
575
  case 'clearDataValidation':
573
- return hasString(value, 'sheetName') && isCellRangeRef(value['range']);
576
+ return hasString(value, 'sheetName') && isCellRangeRef(ownValue(value, 'range'));
574
577
  case 'upsertConditionalFormat':
575
- return isWorkbookConditionalFormat(value['format']);
578
+ return isWorkbookConditionalFormat(ownValue(value, 'format'));
576
579
  case 'deleteConditionalFormat':
577
580
  return hasString(value, 'id') && hasString(value, 'sheetName');
578
581
  case 'setConditionalFormatArtifacts':
579
- return hasString(value, 'sheetName') && isConditionalFormatArtifacts(value['artifacts']);
582
+ return hasString(value, 'sheetName') && isConditionalFormatArtifacts(ownValue(value, 'artifacts'));
580
583
  case 'clearConditionalFormatArtifacts':
581
584
  return hasString(value, 'sheetName');
582
585
  case 'upsertRangeProtection':
583
- return isWorkbookRangeProtection(value['protection']);
586
+ return isWorkbookRangeProtection(ownValue(value, 'protection'));
584
587
  case 'deleteRangeProtection':
585
588
  return hasString(value, 'id') && hasString(value, 'sheetName');
586
589
  case 'upsertCommentThread':
587
- return isWorkbookCommentThread(value['thread']);
590
+ return isWorkbookCommentThread(ownValue(value, 'thread'));
588
591
  case 'deleteCommentThread':
589
592
  case 'deleteNote':
590
593
  case 'deleteHyperlink':
591
594
  return hasString(value, 'sheetName') && hasString(value, 'address');
592
595
  case 'upsertNote':
593
- return isWorkbookNote(value['note']);
596
+ return isWorkbookNote(ownValue(value, 'note'));
594
597
  case 'upsertHyperlink':
595
- return isWorkbookHyperlink(value['hyperlink']);
598
+ return isWorkbookHyperlink(ownValue(value, 'hyperlink'));
596
599
  case 'setCellValue':
597
600
  return (hasString(value, 'sheetName') &&
598
601
  hasString(value, 'address') &&
599
- isLiteralInput(value['value']) &&
600
- (value['authoredBlank'] === undefined || typeof value['authoredBlank'] === 'boolean'));
602
+ isLiteralInput(ownValue(value, 'value')) &&
603
+ (ownValue(value, 'authoredBlank') === undefined || typeof ownValue(value, 'authoredBlank') === 'boolean'));
601
604
  case 'setCellFormula':
602
605
  return hasString(value, 'sheetName') && hasString(value, 'address') && hasString(value, 'formula');
603
606
  case 'setCellFormat':
604
- return (hasString(value, 'sheetName') && hasString(value, 'address') && (value['format'] === null || typeof value['format'] === 'string'));
607
+ return (hasString(value, 'sheetName') &&
608
+ hasString(value, 'address') &&
609
+ (ownValue(value, 'format') === null || typeof ownValue(value, 'format') === 'string'));
605
610
  case 'upsertCellStyle':
606
- return isCellStyleRecord(value['style']);
611
+ return isCellStyleRecord(ownValue(value, 'style'));
607
612
  case 'upsertCellNumberFormat':
608
- return isCellNumberFormatRecord(value['format']);
613
+ return isCellNumberFormatRecord(ownValue(value, 'format'));
609
614
  case 'setStyleRange':
610
- return isCellRangeRef(value['range']) && hasString(value, 'styleId');
615
+ return isCellRangeRef(ownValue(value, 'range')) && hasString(value, 'styleId');
611
616
  case 'setFormatRange':
612
- return isCellRangeRef(value['range']) && hasString(value, 'formatId');
617
+ return isCellRangeRef(ownValue(value, 'range')) && hasString(value, 'formatId');
613
618
  case 'clearCell':
614
619
  return hasString(value, 'sheetName') && hasString(value, 'address');
615
620
  case 'upsertDefinedName':
616
- return hasString(value, 'name') && isWorkbookDefinedNameValue(value['value']);
621
+ return hasString(value, 'name') && isWorkbookDefinedNameValue(ownValue(value, 'value'));
617
622
  case 'deleteDefinedName':
618
623
  case 'deleteTable':
619
624
  return hasString(value, 'name');
620
625
  case 'upsertTable':
621
- return isWorkbookTableOp(value['table']);
626
+ return isWorkbookTableOp(ownValue(value, 'table'));
622
627
  case 'upsertSpillRange':
623
628
  return (hasString(value, 'sheetName') &&
624
629
  hasString(value, 'address') &&
@@ -631,22 +636,21 @@ export function isWorkbookOp(value) {
631
636
  return (hasString(value, 'name') &&
632
637
  hasString(value, 'sheetName') &&
633
638
  hasString(value, 'address') &&
634
- isCellRangeRef(value['source']) &&
635
- isStringArray(value['groupBy']) &&
636
- Array.isArray(value['values']) &&
637
- value['values'].every((entry) => isWorkbookPivotValue(entry)) &&
639
+ isCellRangeRef(ownValue(value, 'source')) &&
640
+ isStringArray(ownValue(value, 'groupBy')) &&
641
+ arrayEvery(ownValue(value, 'values'), isWorkbookPivotValue) &&
638
642
  hasSafePositiveInteger(value, 'rows') &&
639
643
  hasSafePositiveInteger(value, 'cols'));
640
644
  case 'upsertChart':
641
- return isWorkbookChart(value['chart']);
645
+ return isWorkbookChart(ownValue(value, 'chart'));
642
646
  case 'deleteChart':
643
647
  return hasString(value, 'id');
644
648
  case 'upsertImage':
645
- return isWorkbookImage(value['image']);
649
+ return isWorkbookImage(ownValue(value, 'image'));
646
650
  case 'deleteImage':
647
651
  return hasString(value, 'id');
648
652
  case 'upsertShape':
649
- return isWorkbookShape(value['shape']);
653
+ return isWorkbookShape(ownValue(value, 'shape'));
650
654
  case 'deleteShape':
651
655
  return hasString(value, 'id');
652
656
  default:
@@ -657,14 +661,17 @@ export function isEngineOp(value) {
657
661
  return isWorkbookOp(value);
658
662
  }
659
663
  export function isEngineOps(value) {
660
- return Array.isArray(value) && value.every((entry) => isEngineOp(entry));
664
+ return arrayEvery(value, isEngineOp);
661
665
  }
662
666
  export function isEngineOpBatch(value) {
663
- return (isRecord(value) &&
664
- hasString(value, 'id') &&
667
+ if (!isRecord(value)) {
668
+ return false;
669
+ }
670
+ const clock = ownValue(value, 'clock');
671
+ return (hasString(value, 'id') &&
665
672
  hasString(value, 'replicaId') &&
666
- isRecord(value['clock']) &&
667
- hasSafeNonNegativeInteger(value['clock'], 'counter') &&
668
- isEngineOps(value['ops']));
673
+ isRecord(clock) &&
674
+ hasSafeNonNegativeInteger(clock, 'counter') &&
675
+ isEngineOps(ownValue(value, 'ops')));
669
676
  }
670
677
  //# sourceMappingURL=guards.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"guards.js","sourceRoot":"","sources":["../src/guards.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"guards.js","sourceRoot":"","sources":["../src/guards.ts"],"names":[],"mappings":"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"}
package/dist/plan-data.js CHANGED
@@ -19,6 +19,29 @@ function hasOptionalString(value, key) {
19
19
  const descriptor = Object.getOwnPropertyDescriptor(value, key);
20
20
  return descriptor === undefined || typeof descriptor.value === 'string';
21
21
  }
22
+ function arrayEvery(value, predicate) {
23
+ if (!Array.isArray(value)) {
24
+ return false;
25
+ }
26
+ for (let index = 0; index < value.length; index += 1) {
27
+ const descriptor = Object.getOwnPropertyDescriptor(value, String(index));
28
+ if (descriptor === undefined || !('value' in descriptor) || !predicate(descriptor.value)) {
29
+ return false;
30
+ }
31
+ }
32
+ return true;
33
+ }
34
+ function mapArrayData(value, guard, mapper) {
35
+ const mapped = [];
36
+ for (let index = 0; index < value.length; index += 1) {
37
+ const descriptor = Object.getOwnPropertyDescriptor(value, String(index));
38
+ if (descriptor === undefined || !('value' in descriptor) || !guard(descriptor.value)) {
39
+ throw new Error('Workbook plan data arrays must contain only data properties');
40
+ }
41
+ mapped.push(mapper(descriptor.value));
42
+ }
43
+ return mapped;
44
+ }
22
45
  function isWorkbookRefDescription(value) {
23
46
  return isWorkbookRefData(value);
24
47
  }
@@ -26,10 +49,10 @@ function isFormulaLabelData(value) {
26
49
  return isRecord(value) && hasString(value, 'name') && isWorkbookRefDescription(ownValue(value, 'ref'));
27
50
  }
28
51
  function isFormulaLabelDataArray(value) {
29
- return Array.isArray(value) && value.every(isFormulaLabelData);
52
+ return arrayEvery(value, isFormulaLabelData);
30
53
  }
31
54
  function isRefDataArray(value) {
32
- return Array.isArray(value) && value.every(isWorkbookRefDescription);
55
+ return arrayEvery(value, isWorkbookRefDescription);
33
56
  }
34
57
  function isWorkbookActionCommandData(value) {
35
58
  if (!isRecord(value) || !hasString(value, 'kind')) {
@@ -107,14 +130,10 @@ export function isPlanData(value) {
107
130
  hasString(value, 'actionName') &&
108
131
  (!hasOwnValue(value, 'input') || isWorkbookActionInput(input)) &&
109
132
  isRefDataArray(refsUsed) &&
110
- Array.isArray(commands) &&
111
- commands.every(isWorkbookActionCommandData) &&
112
- Array.isArray(ops) &&
113
- ops.every(isWorkbookOp) &&
114
- Array.isArray(changed) &&
115
- changed.every(isChangeData) &&
116
- Array.isArray(checks) &&
117
- checks.every(isCheckData));
133
+ arrayEvery(commands, isWorkbookActionCommandData) &&
134
+ arrayEvery(ops, isWorkbookOp) &&
135
+ arrayEvery(changed, isChangeData) &&
136
+ arrayEvery(checks, isCheckData));
118
137
  }
119
138
  function planDataIssue(path, message) {
120
139
  return Object.freeze({
@@ -164,11 +183,17 @@ function pushArrayIssues(issues, value, key, guard, label) {
164
183
  issues.push(planDataIssue(key, `Workbook plan data ${key} must be an array`));
165
184
  return;
166
185
  }
167
- array.forEach((entry, index) => {
186
+ for (let index = 0; index < array.length; index += 1) {
187
+ const descriptor = Object.getOwnPropertyDescriptor(array, String(index));
188
+ if (descriptor === undefined || !('value' in descriptor)) {
189
+ issues.push(planDataIssue(`${key}[${index}]`, `Workbook plan data ${label} at ${key}[${index}] is invalid`));
190
+ continue;
191
+ }
192
+ const entry = descriptor.value;
168
193
  if (!guard(entry)) {
169
194
  issues.push(planDataIssue(`${key}[${index}]`, `Workbook plan data ${label} at ${key}[${index}] is invalid`));
170
195
  }
171
- });
196
+ }
172
197
  }
173
198
  function pushCheckIssues(issues, entry, index) {
174
199
  const path = `checks[${index}]`;
@@ -205,9 +230,11 @@ function pushCheckArrayIssues(issues, value) {
205
230
  issues.push(planDataIssue('checks', 'Workbook plan data checks must be an array'));
206
231
  return;
207
232
  }
208
- checks.forEach((entry, index) => {
233
+ for (let index = 0; index < checks.length; index += 1) {
234
+ const descriptor = Object.getOwnPropertyDescriptor(checks, String(index));
235
+ const entry = descriptor !== undefined && 'value' in descriptor ? descriptor.value : undefined;
209
236
  pushCheckIssues(issues, entry, index);
210
- });
237
+ }
211
238
  }
212
239
  export function checkPlanData(value) {
213
240
  if (!isRecord(value)) {
@@ -259,8 +286,8 @@ function hydrateCommand(command) {
259
286
  kind: 'writeFormula',
260
287
  target: hydrateRef(command.target),
261
288
  formula: command.formula,
262
- inputs: Object.freeze(command.inputs.map(hydrateRef)),
263
- labels: Object.freeze(command.labels.map(hydrateFormulaLabel)),
289
+ inputs: Object.freeze(mapArrayData(command.inputs, isWorkbookRefDescription, hydrateRef)),
290
+ labels: Object.freeze(mapArrayData(command.labels, isFormulaLabelData, hydrateFormulaLabel)),
264
291
  });
265
292
  case 'writeValue':
266
293
  return Object.freeze({
@@ -307,8 +334,8 @@ function hydrateExpectation(expectation) {
307
334
  return Object.freeze({
308
335
  kind: 'formulaEquals',
309
336
  formula: expectation.formula,
310
- inputs: Object.freeze(expectation.inputs.map(hydrateRef)),
311
- labels: Object.freeze(expectation.labels.map(hydrateFormulaLabel)),
337
+ inputs: Object.freeze(mapArrayData(expectation.inputs, isWorkbookRefDescription, hydrateRef)),
338
+ labels: Object.freeze(mapArrayData(expectation.labels, isFormulaLabelData, hydrateFormulaLabel)),
312
339
  });
313
340
  }
314
341
  }
@@ -318,7 +345,7 @@ function hydrateCheck(check) {
318
345
  status: check.status,
319
346
  kind: check.kind,
320
347
  ...(check.target !== undefined ? { target: hydrateRef(check.target) } : {}),
321
- ...(check.refs !== undefined ? { refs: Object.freeze(check.refs.map(hydrateRef)) } : {}),
348
+ ...(check.refs !== undefined ? { refs: Object.freeze(mapArrayData(check.refs, isWorkbookRefDescription, hydrateRef)) } : {}),
322
349
  message: check.message,
323
350
  ...(check.expectation !== undefined ? { expectation: hydrateExpectation(check.expectation) } : {}),
324
351
  ...(proof !== undefined ? { proof } : {}),
@@ -337,7 +364,7 @@ export function hydratePlanData(data) {
337
364
  throw new Error(firstIssue === undefined ? 'Workbook plan data is invalid' : `Workbook plan data is invalid: ${firstIssue.message}`);
338
365
  }
339
366
  const plan = check.plan;
340
- const refsUsed = Object.freeze(plan.refsUsed.map(hydrateRef));
367
+ const refsUsed = Object.freeze(mapArrayData(plan.refsUsed, isWorkbookRefDescription, hydrateRef));
341
368
  const input = plan.input === undefined ? undefined : normalizeWorkbookActionInput(plan.input);
342
369
  return Object.freeze({
343
370
  modelName: plan.modelName,
@@ -345,14 +372,14 @@ export function hydratePlanData(data) {
345
372
  ...(input !== undefined ? { input } : {}),
346
373
  refs: Object.freeze({ refsUsed }),
347
374
  refsUsed,
348
- commands: Object.freeze(plan.commands.map(hydrateCommand)),
349
- ops: Object.freeze(plan.ops.map(cloneOp)),
350
- changed: Object.freeze(plan.changed.map(hydrateChange)),
351
- checks: Object.freeze(plan.checks.map(hydrateCheck)),
375
+ commands: Object.freeze(mapArrayData(plan.commands, isWorkbookActionCommandData, hydrateCommand)),
376
+ ops: Object.freeze(mapArrayData(plan.ops, isWorkbookOp, cloneOp)),
377
+ changed: Object.freeze(mapArrayData(plan.changed, isChangeData, hydrateChange)),
378
+ checks: Object.freeze(mapArrayData(plan.checks, isCheckData, hydrateCheck)),
352
379
  });
353
380
  }
354
381
  export function isHydratedPlan(value) {
355
- return isRecord(value) && isRecord(value['refs']);
382
+ return isRecord(value) && isRecord(ownValue(value, 'refs'));
356
383
  }
357
384
  export function executablePlan(plan) {
358
385
  return isHydratedPlan(plan) ? plan : hydratePlanData(plan);
@@ -1 +1 @@
1
- {"version":3,"file":"plan-data.js","sourceRoot":"","sources":["../src/plan-data.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plan-data.js","sourceRoot":"","sources":["../src/plan-data.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bilig/workbook",
3
- "version": "0.67.8",
3
+ "version": "0.67.9",
4
4
  "description": "Agent-first workbook model API and transport-neutral workbook operation language for bilig.",
5
5
  "keywords": [
6
6
  "agent-first",
@@ -43,8 +43,8 @@
43
43
  "test": "cd ../.. && tsx scripts/run-vitest.ts --run packages/workbook/src/__tests__/guards.test.ts packages/workbook/src/__tests__/model-api.test.ts packages/workbook/src/__tests__/transport-api.test.ts packages/workbook/src/__tests__/low-level-op-api.test.ts packages/workbook/src/__tests__/check-api.test.ts packages/workbook/src/__tests__/format-api.test.ts packages/workbook/src/__tests__/formula-api.test.ts packages/workbook/src/__tests__/action-input-api.test.ts packages/workbook/src/__tests__/action-metadata-api.test.ts packages/workbook/src/__tests__/features-api.test.ts packages/workbook/src/__tests__/run-api.test.ts packages/workbook/src/__tests__/run-proof-boundary.test.ts packages/workbook/src/__tests__/requirements-api.test.ts packages/workbook/src/__tests__/plan-refs-api.test.ts"
44
44
  },
45
45
  "dependencies": {
46
- "@bilig/formula": "0.67.8",
47
- "@bilig/protocol": "0.67.8"
46
+ "@bilig/formula": "0.67.9",
47
+ "@bilig/protocol": "0.67.9"
48
48
  },
49
49
  "engines": {
50
50
  "node": ">=22.0.0"