@bilig/formula 0.1.83 → 0.1.84

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 (167) hide show
  1. package/dist/addressing.d.ts +6 -6
  2. package/dist/addressing.js +16 -16
  3. package/dist/addressing.js.map +1 -1
  4. package/dist/ast.d.ts +18 -18
  5. package/dist/binder-wasm-rules.d.ts +2 -2
  6. package/dist/binder-wasm-rules.js +677 -724
  7. package/dist/binder-wasm-rules.js.map +1 -1
  8. package/dist/binder.d.ts +2 -2
  9. package/dist/binder.js +133 -137
  10. package/dist/binder.js.map +1 -1
  11. package/dist/builtin-capabilities.d.ts +4 -4
  12. package/dist/builtin-capabilities.js +777 -816
  13. package/dist/builtin-capabilities.js.map +1 -1
  14. package/dist/builtins/complex.d.ts +3 -3
  15. package/dist/builtins/complex.js +20 -48
  16. package/dist/builtins/complex.js.map +1 -1
  17. package/dist/builtins/convert.d.ts +1 -1
  18. package/dist/builtins/convert.js +180 -181
  19. package/dist/builtins/convert.js.map +1 -1
  20. package/dist/builtins/datetime.d.ts +1 -1
  21. package/dist/builtins/datetime.js +60 -72
  22. package/dist/builtins/datetime.js.map +1 -1
  23. package/dist/builtins/distribution-builtins.d.ts +2 -2
  24. package/dist/builtins/distribution-builtins.js +62 -112
  25. package/dist/builtins/distribution-builtins.js.map +1 -1
  26. package/dist/builtins/distributions.js +17 -54
  27. package/dist/builtins/distributions.js.map +1 -1
  28. package/dist/builtins/financial-builtins.d.ts +2 -2
  29. package/dist/builtins/financial-builtins.js +9 -42
  30. package/dist/builtins/financial-builtins.js.map +1 -1
  31. package/dist/builtins/financial.js +4 -18
  32. package/dist/builtins/financial.js.map +1 -1
  33. package/dist/builtins/fixed-income-builtins.d.ts +2 -2
  34. package/dist/builtins/fixed-income-builtins.js +18 -60
  35. package/dist/builtins/fixed-income-builtins.js.map +1 -1
  36. package/dist/builtins/fixed-income.js +25 -96
  37. package/dist/builtins/fixed-income.js.map +1 -1
  38. package/dist/builtins/formatting.js +9 -9
  39. package/dist/builtins/formatting.js.map +1 -1
  40. package/dist/builtins/logical.d.ts +1 -1
  41. package/dist/builtins/logical.js +5 -5
  42. package/dist/builtins/logical.js.map +1 -1
  43. package/dist/builtins/lookup-array-shape-builtins.d.ts +3 -3
  44. package/dist/builtins/lookup-array-shape-builtins.js +8 -15
  45. package/dist/builtins/lookup-array-shape-builtins.js.map +1 -1
  46. package/dist/builtins/lookup-criteria-builtins.d.ts +2 -2
  47. package/dist/builtins/lookup-criteria-builtins.js +1 -1
  48. package/dist/builtins/lookup-criteria-builtins.js.map +1 -1
  49. package/dist/builtins/lookup-database-builtins.d.ts +2 -2
  50. package/dist/builtins/lookup-database-builtins.js +20 -24
  51. package/dist/builtins/lookup-database-builtins.js.map +1 -1
  52. package/dist/builtins/lookup-financial-builtins.d.ts +3 -3
  53. package/dist/builtins/lookup-financial-builtins.js +14 -30
  54. package/dist/builtins/lookup-financial-builtins.js.map +1 -1
  55. package/dist/builtins/lookup-hypothesis-builtins.d.ts +2 -2
  56. package/dist/builtins/lookup-hypothesis-builtins.js +23 -58
  57. package/dist/builtins/lookup-hypothesis-builtins.js.map +1 -1
  58. package/dist/builtins/lookup-matrix-builtins.d.ts +3 -3
  59. package/dist/builtins/lookup-matrix-builtins.js +5 -3
  60. package/dist/builtins/lookup-matrix-builtins.js.map +1 -1
  61. package/dist/builtins/lookup-order-statistics-builtins.d.ts +3 -3
  62. package/dist/builtins/lookup-order-statistics-builtins.js +18 -30
  63. package/dist/builtins/lookup-order-statistics-builtins.js.map +1 -1
  64. package/dist/builtins/lookup-reference-builtins.d.ts +2 -2
  65. package/dist/builtins/lookup-reference-builtins.js +10 -26
  66. package/dist/builtins/lookup-reference-builtins.js.map +1 -1
  67. package/dist/builtins/lookup-regression-builtins.d.ts +2 -2
  68. package/dist/builtins/lookup-regression-builtins.js +52 -69
  69. package/dist/builtins/lookup-regression-builtins.js.map +1 -1
  70. package/dist/builtins/lookup-sort-filter-builtins.d.ts +3 -3
  71. package/dist/builtins/lookup-sort-filter-builtins.js +5 -13
  72. package/dist/builtins/lookup-sort-filter-builtins.js.map +1 -1
  73. package/dist/builtins/lookup.d.ts +5 -5
  74. package/dist/builtins/lookup.js +61 -73
  75. package/dist/builtins/lookup.js.map +1 -1
  76. package/dist/builtins/math-builtins.d.ts +2 -2
  77. package/dist/builtins/math-builtins.js +11 -17
  78. package/dist/builtins/math-builtins.js.map +1 -1
  79. package/dist/builtins/numeric.d.ts +2 -2
  80. package/dist/builtins/numeric.js +2 -2
  81. package/dist/builtins/numeric.js.map +1 -1
  82. package/dist/builtins/placeholder.d.ts +1 -1
  83. package/dist/builtins/placeholder.js +505 -505
  84. package/dist/builtins/placeholder.js.map +1 -1
  85. package/dist/builtins/radix.d.ts +2 -2
  86. package/dist/builtins/radix.js +33 -39
  87. package/dist/builtins/radix.js.map +1 -1
  88. package/dist/builtins/statistical-builtins.d.ts +2 -2
  89. package/dist/builtins/statistical-builtins.js +29 -56
  90. package/dist/builtins/statistical-builtins.js.map +1 -1
  91. package/dist/builtins/statistics.d.ts +1 -1
  92. package/dist/builtins/statistics.js +3 -7
  93. package/dist/builtins/statistics.js.map +1 -1
  94. package/dist/builtins/text-core-builtins.d.ts +2 -2
  95. package/dist/builtins/text-core-builtins.js +110 -110
  96. package/dist/builtins/text-core-builtins.js.map +1 -1
  97. package/dist/builtins/text-format-builtins.d.ts +2 -2
  98. package/dist/builtins/text-format-builtins.js +109 -141
  99. package/dist/builtins/text-format-builtins.js.map +1 -1
  100. package/dist/builtins/text-search-builtins.d.ts +2 -2
  101. package/dist/builtins/text-search-builtins.js +37 -44
  102. package/dist/builtins/text-search-builtins.js.map +1 -1
  103. package/dist/builtins/text.d.ts +2 -2
  104. package/dist/builtins/text.js +19 -29
  105. package/dist/builtins/text.js.map +1 -1
  106. package/dist/builtins.d.ts +3 -3
  107. package/dist/builtins.js +55 -75
  108. package/dist/builtins.js.map +1 -1
  109. package/dist/compatibility.js +425 -430
  110. package/dist/compatibility.js.map +1 -1
  111. package/dist/compiler.d.ts +7 -7
  112. package/dist/compiler.js +212 -228
  113. package/dist/compiler.js.map +1 -1
  114. package/dist/external-function-adapter.d.ts +6 -6
  115. package/dist/external-function-adapter.js +3 -3
  116. package/dist/external-function-adapter.js.map +1 -1
  117. package/dist/formula-template-key.js +25 -26
  118. package/dist/formula-template-key.js.map +1 -1
  119. package/dist/generated/formula-inventory.js +3567 -3567
  120. package/dist/generated/formula-inventory.js.map +1 -1
  121. package/dist/group-pivot-evaluator.d.ts +2 -2
  122. package/dist/group-pivot-evaluator.js +27 -32
  123. package/dist/group-pivot-evaluator.js.map +1 -1
  124. package/dist/index.d.ts +20 -20
  125. package/dist/index.js +20 -20
  126. package/dist/index.js.map +1 -1
  127. package/dist/js-evaluator-array-special-calls.d.ts +3 -3
  128. package/dist/js-evaluator-array-special-calls.js +25 -34
  129. package/dist/js-evaluator-array-special-calls.js.map +1 -1
  130. package/dist/js-evaluator-context-special-calls.d.ts +2 -2
  131. package/dist/js-evaluator-context-special-calls.js +23 -27
  132. package/dist/js-evaluator-context-special-calls.js.map +1 -1
  133. package/dist/js-evaluator-reference-context.d.ts +2 -2
  134. package/dist/js-evaluator-reference-context.js +22 -24
  135. package/dist/js-evaluator-reference-context.js.map +1 -1
  136. package/dist/js-evaluator-workbook-special-calls.d.ts +2 -2
  137. package/dist/js-evaluator-workbook-special-calls.js +18 -24
  138. package/dist/js-evaluator-workbook-special-calls.js.map +1 -1
  139. package/dist/js-evaluator.d.ts +40 -40
  140. package/dist/js-evaluator.js +135 -147
  141. package/dist/js-evaluator.js.map +1 -1
  142. package/dist/js-plan-lowering.d.ts +2 -2
  143. package/dist/js-plan-lowering.js +103 -108
  144. package/dist/js-plan-lowering.js.map +1 -1
  145. package/dist/lexer.d.ts +1 -1
  146. package/dist/lexer.js +34 -43
  147. package/dist/lexer.js.map +1 -1
  148. package/dist/optimizer.d.ts +1 -1
  149. package/dist/optimizer.js +99 -108
  150. package/dist/optimizer.js.map +1 -1
  151. package/dist/parser.d.ts +1 -1
  152. package/dist/parser.js +129 -136
  153. package/dist/parser.js.map +1 -1
  154. package/dist/program-arena.js.map +1 -1
  155. package/dist/runtime-inventory.d.ts +2 -2
  156. package/dist/runtime-inventory.js +14 -20
  157. package/dist/runtime-inventory.js.map +1 -1
  158. package/dist/runtime-values.d.ts +4 -4
  159. package/dist/runtime-values.js +2 -2
  160. package/dist/runtime-values.js.map +1 -1
  161. package/dist/special-call-rewrites.d.ts +1 -1
  162. package/dist/special-call-rewrites.js +14 -18
  163. package/dist/special-call-rewrites.js.map +1 -1
  164. package/dist/translation.d.ts +7 -7
  165. package/dist/translation.js +323 -366
  166. package/dist/translation.js.map +1 -1
  167. package/package.json +2 -2
package/dist/builtins.js CHANGED
@@ -1,22 +1,22 @@
1
- import { BUILTINS, BuiltinId, ErrorCode, ValueTag } from "@bilig/protocol";
2
- import { builtinJsSpecialNames } from "./builtin-capabilities.js";
3
- import { createComplexBuiltins } from "./builtins/complex.js";
4
- import { createDistributionBuiltins } from "./builtins/distribution-builtins.js";
5
- import { createFinancialBuiltins } from "./builtins/financial-builtins.js";
6
- import { createFixedIncomeBuiltins } from "./builtins/fixed-income-builtins.js";
7
- import { countLeadingZeros, formatFixed, isValidDollarFraction, parseDollarDecimal, toColumnLabel, } from "./builtins/formatting.js";
8
- import { buildIdentityMatrix, collectNumericArgs, createNumericBuiltinHelpers, doubleFactorialValue, evenValue, factorialValue, gcdPair, lcmPair, oddValue, roundDownToDigits, roundTowardZero, roundUpToDigits, } from "./builtins/numeric.js";
9
- import { createMathBuiltins } from "./builtins/math-builtins.js";
10
- import { createRadixBuiltins } from "./builtins/radix.js";
11
- import { populationVariance, sampleVariance } from "./builtins/statistics.js";
12
- import { createStatisticalBuiltins } from "./builtins/statistical-builtins.js";
13
- import { datetimeBuiltins } from "./builtins/datetime.js";
14
- import { convertBuiltin, euroconvertBuiltin } from "./builtins/convert.js";
15
- import { logicalBuiltins } from "./builtins/logical.js";
16
- import { lookupBuiltins } from "./builtins/lookup.js";
17
- import { createBlockedBuiltinMap, scalarPlaceholderBuiltinNames } from "./builtins/placeholder.js";
18
- import { getExternalScalarFunction, hasExternalFunction } from "./external-function-adapter.js";
19
- import { textBuiltins } from "./builtins/text.js";
1
+ import { BUILTINS, BuiltinId, ErrorCode, ValueTag } from '@bilig/protocol';
2
+ import { builtinJsSpecialNames } from './builtin-capabilities.js';
3
+ import { createComplexBuiltins } from './builtins/complex.js';
4
+ import { createDistributionBuiltins } from './builtins/distribution-builtins.js';
5
+ import { createFinancialBuiltins } from './builtins/financial-builtins.js';
6
+ import { createFixedIncomeBuiltins } from './builtins/fixed-income-builtins.js';
7
+ import { countLeadingZeros, formatFixed, isValidDollarFraction, parseDollarDecimal, toColumnLabel } from './builtins/formatting.js';
8
+ import { buildIdentityMatrix, collectNumericArgs, createNumericBuiltinHelpers, doubleFactorialValue, evenValue, factorialValue, gcdPair, lcmPair, oddValue, roundDownToDigits, roundTowardZero, roundUpToDigits, } from './builtins/numeric.js';
9
+ import { createMathBuiltins } from './builtins/math-builtins.js';
10
+ import { createRadixBuiltins } from './builtins/radix.js';
11
+ import { populationVariance, sampleVariance } from './builtins/statistics.js';
12
+ import { createStatisticalBuiltins } from './builtins/statistical-builtins.js';
13
+ import { datetimeBuiltins } from './builtins/datetime.js';
14
+ import { convertBuiltin, euroconvertBuiltin } from './builtins/convert.js';
15
+ import { logicalBuiltins } from './builtins/logical.js';
16
+ import { lookupBuiltins } from './builtins/lookup.js';
17
+ import { createBlockedBuiltinMap, scalarPlaceholderBuiltinNames } from './builtins/placeholder.js';
18
+ import { getExternalScalarFunction, hasExternalFunction } from './external-function-adapter.js';
19
+ import { textBuiltins } from './builtins/text.js';
20
20
  function toNumber(value) {
21
21
  switch (value.tag) {
22
22
  case ValueTag.Number:
@@ -135,7 +135,7 @@ function sequenceResult(rowsArg, colsArg, startArg, stepArg) {
135
135
  values.push(numberResult(start + index * step));
136
136
  }
137
137
  return {
138
- kind: "array",
138
+ kind: 'array',
139
139
  rows,
140
140
  cols,
141
141
  values,
@@ -257,8 +257,7 @@ function aggregateByCode(functionNum, values) {
257
257
  ? numberResult(0)
258
258
  : numberResult(numericValues.reduce((sum, value) => sum + value, 0) / numericValues.length);
259
259
  case 2:
260
- return numberResult(values.filter((value) => value.tag === ValueTag.Number || value.tag === ValueTag.Boolean)
261
- .length);
260
+ return numberResult(values.filter((value) => value.tag === ValueTag.Number || value.tag === ValueTag.Boolean).length);
262
261
  case 3:
263
262
  return numberResult(values.filter((value) => value.tag !== ValueTag.Empty).length);
264
263
  case 4:
@@ -266,9 +265,7 @@ function aggregateByCode(functionNum, values) {
266
265
  case 5:
267
266
  return numberResult(numericValues.length === 0 ? 0 : Math.min(...numericValues));
268
267
  case 6:
269
- return numberResult(numericValues.length === 0
270
- ? 0
271
- : numericValues.reduce((product, value) => product * value, 1));
268
+ return numberResult(numericValues.length === 0 ? 0 : numericValues.reduce((product, value) => product * value, 1));
272
269
  case 7:
273
270
  return numberResult(Math.sqrt(sampleVariance(numericValues)));
274
271
  case 8:
@@ -285,23 +282,23 @@ function aggregateByCode(functionNum, values) {
285
282
  }
286
283
  const scalarPlaceholderBuiltins = createBlockedBuiltinMap(scalarPlaceholderBuiltinNames);
287
284
  const externalScalarBuiltinNames = [
288
- "CALL",
289
- "CUBEKPIMEMBER",
290
- "CUBEMEMBER",
291
- "CUBEMEMBERPROPERTY",
292
- "CUBERANKEDMEMBER",
293
- "CUBESET",
294
- "CUBESETCOUNT",
295
- "CUBEVALUE",
296
- "DDE",
297
- "DETECTLANGUAGE",
298
- "HYPERLINK",
299
- "IMAGE",
300
- "INFO",
301
- "REGISTER.ID",
302
- "RTD",
303
- "TRANSLATE",
304
- "WEBSERVICE",
285
+ 'CALL',
286
+ 'CUBEKPIMEMBER',
287
+ 'CUBEMEMBER',
288
+ 'CUBEMEMBERPROPERTY',
289
+ 'CUBERANKEDMEMBER',
290
+ 'CUBESET',
291
+ 'CUBESETCOUNT',
292
+ 'CUBEVALUE',
293
+ 'DDE',
294
+ 'DETECTLANGUAGE',
295
+ 'HYPERLINK',
296
+ 'IMAGE',
297
+ 'INFO',
298
+ 'REGISTER.ID',
299
+ 'RTD',
300
+ 'TRANSLATE',
301
+ 'WEBSERVICE',
305
302
  ];
306
303
  function createExternalScalarBuiltin(name) {
307
304
  return (...args) => {
@@ -325,9 +322,7 @@ const scalarBuiltins = {
325
322
  const error = firstError(args);
326
323
  if (error)
327
324
  return error;
328
- const numbers = args
329
- .map((arg) => toZeroNumericValue(arg))
330
- .filter((value) => value !== undefined);
325
+ const numbers = args.map((arg) => toZeroNumericValue(arg)).filter((value) => value !== undefined);
331
326
  return numberResult(numbers.length === 0 ? 0 : numbers.reduce((sum, value) => sum + value, 0) / numbers.length);
332
327
  },
333
328
  AVERAGE: (...args) => {
@@ -362,18 +357,14 @@ const scalarBuiltins = {
362
357
  const error = firstError(args);
363
358
  if (error)
364
359
  return error;
365
- const values = args
366
- .map((arg) => toZeroNumericValue(arg))
367
- .filter((value) => value !== undefined);
360
+ const values = args.map((arg) => toZeroNumericValue(arg)).filter((value) => value !== undefined);
368
361
  return values.length === 0 ? numberResult(0) : numberResult(Math.max(...values));
369
362
  },
370
363
  MINA: (...args) => {
371
364
  const error = firstError(args);
372
365
  if (error)
373
366
  return error;
374
- const values = args
375
- .map((arg) => toZeroNumericValue(arg))
376
- .filter((value) => value !== undefined);
367
+ const values = args.map((arg) => toZeroNumericValue(arg)).filter((value) => value !== undefined);
377
368
  return values.length === 0 ? numberResult(0) : numberResult(Math.min(...values));
378
369
  },
379
370
  COUNT: (...args) => numberResult(args.filter((arg) => arg.tag === ValueTag.Number || arg.tag === ValueTag.Boolean).length),
@@ -393,18 +384,13 @@ const scalarBuiltins = {
393
384
  const column = positiveIntegerValue(columnArg);
394
385
  const absNum = integerValue(absNumArg, 1);
395
386
  const refStyle = integerValue(refStyleArg, 1);
396
- if (row === undefined ||
397
- column === undefined ||
398
- absNum === undefined ||
399
- refStyle === undefined) {
387
+ if (row === undefined || column === undefined || absNum === undefined || refStyle === undefined) {
400
388
  return valueError();
401
389
  }
402
390
  if (![1, 2, 3, 4].includes(absNum) || ![1, 2].includes(refStyle)) {
403
391
  return valueError();
404
392
  }
405
- if (sheetTextArg !== undefined &&
406
- sheetTextArg.tag !== ValueTag.String &&
407
- sheetTextArg.tag !== ValueTag.Empty) {
393
+ if (sheetTextArg !== undefined && sheetTextArg.tag !== ValueTag.String && sheetTextArg.tag !== ValueTag.Empty) {
408
394
  return valueError();
409
395
  }
410
396
  if (sheetTextArg?.tag === ValueTag.Empty) {
@@ -414,7 +400,7 @@ const scalarBuiltins = {
414
400
  if (columnLabel === undefined) {
415
401
  return valueError();
416
402
  }
417
- const sheetPrefix = sheetTextArg?.tag === ValueTag.String ? `'${sheetTextArg.value.replace(/'/g, "''")}'!` : "";
403
+ const sheetPrefix = sheetTextArg?.tag === ValueTag.String ? `'${sheetTextArg.value.replace(/'/g, "''")}'!` : '';
418
404
  if (refStyle === 2) {
419
405
  const rowLabel = absNum === 1 || absNum === 2 ? String(row) : `[${row}]`;
420
406
  const colLabel = absNum === 1 || absNum === 3 ? String(column) : `[${column}]`;
@@ -440,10 +426,10 @@ const scalarBuiltins = {
440
426
  return valueError();
441
427
  }
442
428
  const text = formatFixed(value, decimals, noCommasValue === 0);
443
- if (text === "") {
429
+ if (text === '') {
444
430
  return valueError();
445
431
  }
446
- const normalizedText = text.startsWith("-") ? text.slice(1) : text;
432
+ const normalizedText = text.startsWith('-') ? text.slice(1) : text;
447
433
  return {
448
434
  tag: ValueTag.String,
449
435
  value: value < 0 ? `-$${normalizedText}` : `$${text}`,
@@ -458,7 +444,7 @@ const scalarBuiltins = {
458
444
  return valueError();
459
445
  }
460
446
  const text = formatFixed(value, decimals, noCommasValue === 0);
461
- return text === "" ? valueError() : { tag: ValueTag.String, value: text, stringId: 0 };
447
+ return text === '' ? valueError() : { tag: ValueTag.String, value: text, stringId: 0 };
462
448
  },
463
449
  DOLLARDE: (valueArg, fractionArg) => {
464
450
  const value = toNumber(valueArg);
@@ -487,7 +473,7 @@ const scalarBuiltins = {
487
473
  const scaledNumerator = Math.round(fractional * fraction);
488
474
  const carry = Math.floor(scaledNumerator / fraction);
489
475
  const numerator = scaledNumerator - carry * fraction;
490
- const outputValue = `${integerPart + carry}.${String(numerator).padStart(width, "0")}`;
476
+ const outputValue = `${integerPart + carry}.${String(numerator).padStart(width, '0')}`;
491
477
  return numberResult(sign * Number(outputValue));
492
478
  },
493
479
  GEOMEAN: (...args) => {
@@ -533,11 +519,7 @@ const scalarBuiltins = {
533
519
  const min = coerceNumber(minArg, 0);
534
520
  const max = coerceNumber(maxArg, 1);
535
521
  const whole = wholeArg === undefined ? false : (toNumber(wholeArg) ?? 0) !== 0;
536
- if (rows === undefined ||
537
- cols === undefined ||
538
- min === undefined ||
539
- max === undefined ||
540
- max < min) {
522
+ if (rows === undefined || cols === undefined || min === undefined || max === undefined || max < min) {
541
523
  return valueError();
542
524
  }
543
525
  const values = [];
@@ -547,7 +529,7 @@ const scalarBuiltins = {
547
529
  : Math.random() * (max - min) + min;
548
530
  values.push(numberResult(value));
549
531
  }
550
- return { kind: "array", rows, cols, values };
532
+ return { kind: 'array', rows, cols, values };
551
533
  },
552
534
  MUNIT: (sizeArg) => {
553
535
  const size = positiveIntegerValue(sizeArg);
@@ -569,9 +551,7 @@ const scalarBuiltins = {
569
551
  },
570
552
  SQRTPI: (value) => {
571
553
  const numeric = toNumber(value);
572
- return numeric === undefined
573
- ? valueError()
574
- : numericResultOrError(Math.sqrt(numeric * Math.PI));
554
+ return numeric === undefined ? valueError() : numericResultOrError(Math.sqrt(numeric * Math.PI));
575
555
  },
576
556
  SUMSQ: (...args) => {
577
557
  const error = firstError(args);
@@ -605,7 +585,7 @@ const scalarBuiltins = {
605
585
  if (value.tag === ValueTag.Error) {
606
586
  return numberResult(16);
607
587
  }
608
- if (value.kind === "array") {
588
+ if (value.kind === 'array') {
609
589
  return numberResult(64);
610
590
  }
611
591
  switch (value.tag) {
@@ -676,8 +656,8 @@ const builtins = {
676
656
  ...datetimeBuiltins,
677
657
  };
678
658
  const builtinIdByName = new Map(BUILTINS.map((builtin) => [builtin.name.toUpperCase(), builtin.id]));
679
- builtinIdByName.set("USE.THE.COUNTIF", BuiltinId.Countif);
680
- builtinIdByName.set("FORECAST.LINEAR", BuiltinId.Forecast);
659
+ builtinIdByName.set('USE.THE.COUNTIF', BuiltinId.Countif);
660
+ builtinIdByName.set('FORECAST.LINEAR', BuiltinId.Forecast);
681
661
  export function getBuiltin(name) {
682
662
  return builtins[name.toUpperCase()] ?? getExternalScalarFunction(name);
683
663
  }
@@ -1 +1 @@
1
- {"version":3,"file":"builtins.js","sourceRoot":"","sources":["../src/builtins.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"builtins.js","sourceRoot":"","sources":["../src/builtins.ts"],"names":[],"mappings":"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"}