@sheetxl/sdk 0.8.0-beta.15 → 0.8.0-beta.16

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 (195) hide show
  1. package/LICENSE.md +8 -7
  2. package/browser/esm/4MbBwfmW2hDXk9_w.mjs +165 -0
  3. package/browser/esm/{zjEXdQiQruTkUyf5.mjs → 9YWdxmSjzLN4j_ts.mjs} +22 -22
  4. package/browser/esm/B6BdiHigbUdbZp3J.mjs +686 -0
  5. package/browser/esm/{D8PxKK6OrmancpLT.mjs → BF_QwkZ_hs2rFoTT.mjs} +3 -3
  6. package/browser/esm/{Do8TQqQvnFXRlFu-.mjs → BMo2_9Ul36IwRm3S.mjs} +3 -3
  7. package/browser/esm/{DDQtExVGSoCzAf6-.mjs → BWY1qiidTUBVPJoD.mjs} +506 -502
  8. package/browser/esm/{DA4S5eqog20pG7b2.mjs → Bf80epSsm_RyAOb9.mjs} +29 -29
  9. package/browser/esm/{FHp0QfwZMIfP0Sry.mjs → BfoE6Dn_GQCIkQD3.mjs} +2 -2
  10. package/browser/esm/{D4ZCoKyNCJvDQAkx.mjs → BlMYYQZP-QM-iBHz.mjs} +23 -22
  11. package/browser/esm/{CWyzk_3eDCR9bKq6.mjs → BqT-ASHP0NVSUUnY.mjs} +1528 -1433
  12. package/browser/esm/{DwH4H_p6gTAcpQ17.mjs → BtNuoQIrrHw_jnbJ.mjs} +4 -4
  13. package/browser/esm/BxFzcCYhvo9NXFjC.mjs +527 -0
  14. package/browser/esm/{BsGN0Tk0jVc2n0hy.mjs → BxYuRTSF9ykc-Tpz.mjs} +3 -3
  15. package/browser/esm/{KgTozk3nvOZzEG27.mjs → C2PvZwqK-uvsugVS.mjs} +2 -2
  16. package/browser/esm/C3JOjQwdG9kAig7i.mjs +2017 -0
  17. package/browser/esm/{Blo0Hwg2ojXt99Dl.mjs → C5x0EzqElYGTiTQc.mjs} +2 -2
  18. package/browser/esm/{Bbrhl946_QbCz5WS.mjs → CMChv-fCFh68VQQt.mjs} +588 -587
  19. package/browser/esm/{Cl3jq6y4Idilod82.mjs → CRbQATfI0yZxe1kX.mjs} +3 -3
  20. package/browser/esm/{CxhXbk-5XhaK8UNs.mjs → CUu3zeHqcwMRYiov.mjs} +2 -2
  21. package/browser/esm/{CNM5d4p0Y7In0rTf.mjs → C_jLGkFemj55_BP3.mjs} +3 -3
  22. package/browser/esm/{BGPT-k25jo0UhtT5.mjs → CkZoDPUCK5jMUaeJ.mjs} +26901 -22016
  23. package/browser/esm/{DMbcmIZ-G2fbWn8v.mjs → D-iHJ3q4nwOLcn1D.mjs} +2 -2
  24. package/browser/esm/{KsfZhE6ocmYobGjY.mjs → D807piM0VSokWz-L.mjs} +2 -2
  25. package/browser/esm/{BVsG6Vpvb1ZzpURJ.mjs → DW3oQ39IF0bsc_lm.mjs} +2 -2
  26. package/browser/esm/{BzG0p8RdGDWHttVr.mjs → DcB52JPBPmkc3l1m.mjs} +4 -4
  27. package/browser/esm/{CZ_ZPliIkoh8BViV.mjs → DlVnybrgwZWxWN3_.mjs} +10 -10
  28. package/browser/esm/{CqzKBrmmV-fWRoK7.mjs → DvVhatd0J1ch3OCO.mjs} +22 -22
  29. package/browser/esm/{tm7XJ-Zd_04xWKG6.mjs → Dx9Fya60meMpuHqm.mjs} +2 -2
  30. package/browser/esm/{Blo0jHze0bQxnKh4.mjs → HV0FkJ6k3Ils318J.mjs} +78 -78
  31. package/browser/esm/{DJNLo8Rd_5UQP0U5.mjs → JV9Szh5qTssjxJoE.mjs} +2 -2
  32. package/browser/esm/{D0KMmRjGOQUs7Ls-.mjs → KpuD1kEcWB7cT0VM.mjs} +3 -3
  33. package/browser/esm/{Bw66vzKThXKvXvPI.mjs → U4FL-QeC0bRUhTEo.mjs} +2 -2
  34. package/browser/esm/{Dp4OIVjjAVhpD815.mjs → WLlpmgLN5OVLoLrC.mjs} +3 -3
  35. package/browser/esm/{D6OqcO9IWPaY211T.mjs → WR146UAqrsUsL39e.mjs} +2 -2
  36. package/browser/esm/{CPUobTehcKZllBDS.mjs → WcHfawW2lkTHtWUd.mjs} +51 -49
  37. package/browser/esm/{XrasOsWQ-64jwMn1.mjs → Zp5-cTJ0Llb6EfGi.mjs} +4 -4
  38. package/browser/esm/{CMSeF5rGzeuMUydM.mjs → ad9PX897hYE4Srkc.mjs} +3 -3
  39. package/browser/esm/{CIab4UYcHQQKTHeD.mjs → d_t-7d5BD1AdHg3u.mjs} +404 -404
  40. package/browser/esm/{L7SKr6r1tmMwFx6Q.mjs → dwGdnbV-CykjNrlm.mjs} +2 -2
  41. package/browser/esm/{DpaqR081c-Q7WemN.mjs → e69NcYnKMLnAmqyA.mjs} +2 -2
  42. package/browser/esm/index.mjs +886 -578
  43. package/browser/esm/{BN1MW1nuBndrzryn.mjs → r-o0UCm7KtluNmyK.mjs} +3 -3
  44. package/licenses/dependencies.txt +69 -69
  45. package/node/esm/{DjsOfZn5vYpB7L6U.mjs → 446KYBjJQa8g-8Gg.mjs} +52 -50
  46. package/node/esm/{BlHlBRvKGt-4CS0A.mjs → 5OfKfTRX2_y2NwpU.mjs} +2 -2
  47. package/node/esm/{BRnNpoS8VpkAhdVk.mjs → A3PEHO1HJvkHfb5n.mjs} +2 -2
  48. package/node/esm/{ZtF9EuipL7Z9Iwfs.mjs → B4WUGzJBkQu7BXRm.mjs} +2 -2
  49. package/node/esm/{DKdFasYVvjAitASZ.mjs → BH8J6vKSO5zI_TWo.mjs} +2 -2
  50. package/node/esm/BLmdKnkLwkb3wWe6.mjs +2040 -0
  51. package/node/esm/{D9RwzPR5s2mWrbCQ.mjs → BZSxu_ZqX8-Uczzn.mjs} +2 -2
  52. package/node/esm/{-afI0SRg_vgXtea7.mjs → BfPBiAgVmWhuFgFP.mjs} +3 -3
  53. package/node/esm/{OnkJkCGFDjamqIUQ.mjs → Bknw7zWZhl2-w1pi.mjs} +3 -3
  54. package/node/esm/{BNiG1ISiMjs-G2mE.mjs → BvIPsPiHhMclZ1kH.mjs} +22 -22
  55. package/node/esm/{B07QPde9GloqsW8e.mjs → By2TFKOjA1HekZap.mjs} +4 -4
  56. package/node/esm/{D9zb5xVRehABdbXL.mjs → BywIhvYkWk2o7MSW.mjs} +2 -2
  57. package/node/esm/{BZ0IRjh2hYuI86xW.mjs → C3zyhnMwQ2hRQBz7.mjs} +31 -30
  58. package/node/esm/{DVejVdSBXzAFQbqo.mjs → C884edhUf9yMqpPp.mjs} +2 -2
  59. package/node/esm/{DDIiQZTdeY4vdK8_.mjs → CDHY-0OyQ9348Brb.mjs} +189 -189
  60. package/node/esm/{BlzPuXtKvF3Qfr0p.mjs → CERNLhFrAwtu_p-q.mjs} +2 -2
  61. package/node/esm/{BfXLtDqsXXYeZ6LX.mjs → CFkX_Cn6avQqQiVC.mjs} +78 -78
  62. package/node/esm/CJDV8P3hI8lu--3Z.mjs +530 -0
  63. package/node/esm/{C6b4rM62pIWIywlM.mjs → CKwiipdPJGzAiPjg.mjs} +2 -2
  64. package/node/esm/{DUft-qpAS4MMANwG.mjs → CLtUMJfKsy4SevWE.mjs} +3 -3
  65. package/node/esm/{Cx9nQSsuyqhayyBS.mjs → CVPieTgKCwkL21nD.mjs} +32752 -27295
  66. package/node/esm/{DW3u4bBJIUaHZ6m-.mjs → C_fYuynP2a_70WdL.mjs} +2 -2
  67. package/node/esm/{C-JEySqMuKdpcKe0.mjs → CgdNA3B_GFG_yJiN.mjs} +3 -3
  68. package/node/esm/Cs3ibv6YHCDwLRlk.mjs +115 -0
  69. package/node/esm/{CjwmkzMtjj6OMJbO.mjs → Cxak8i2NidZ4Uv6v.mjs} +487 -483
  70. package/node/esm/{MtRwC1PMkOEb1Nty.mjs → D88A3UpCyGRjcX3U.mjs} +3 -3
  71. package/node/esm/{B8KEX44VZTFTTKb3.mjs → DBIUe2BC9xU7qMHR.mjs} +3 -3
  72. package/node/esm/{C7h7SvhWNwQ9TfGh.mjs → DELfV5HQZo1mInBd.mjs} +4 -4
  73. package/node/esm/{WBHD7ECKG6HZ5UpY.mjs → DOt3t-13tsnM7Fj6.mjs} +2 -2
  74. package/node/esm/{BqvqbFsPQB0gEvwF.mjs → DfWc3nW_Z_qqc_Wf.mjs} +1762 -1674
  75. package/node/esm/DgnwKbUEyQN5_gWT.mjs +169 -0
  76. package/node/esm/{D7ia4o3y5Wvl__9Y.mjs → Dhv9JymnXqcF54oo.mjs} +2 -2
  77. package/node/esm/{CHBlLTJaoPUVxA2J.mjs → DvtyKKzOnoOM80NB.mjs} +22 -22
  78. package/node/esm/{Dh8o-woVpmUL50BD.mjs → KDGrIa9R5XzWfjM2.mjs} +2 -2
  79. package/node/esm/{DyIASfKKPuNl5Xx-.mjs → RTwm9ge1KoPdlBNt.mjs} +2 -2
  80. package/node/esm/{DQqXPS05dvF0F-gh.mjs → _RIAmJI98l6bIFfZ.mjs} +2 -2
  81. package/node/esm/{j8DqCwPgfIPICFtf.mjs → bIGdvfpnijWeCac6.mjs} +1005 -1004
  82. package/node/esm/index.mjs +913 -598
  83. package/node/esm/kaiXmn0AA5WDsLPo.mjs +199 -0
  84. package/node/esm/{Ddd1y3TP0kqnnSs7.mjs → mTIhoz1gEcaEm7s1.mjs} +3 -3
  85. package/package.json +7 -7
  86. package/resources/locales/de/model.msg.json +82 -1
  87. package/resources/locales/en/model.msg.json +80 -1
  88. package/types/scripting-api.json +9967 -9497
  89. package/types/scripting-enums.json +27 -0
  90. package/types/scripting.d.ts +2282 -166
  91. package/types/src/.generated/wasm/sdk.d.ts +332 -0
  92. package/types/src/calculation/Calculation.d.ts +8 -0
  93. package/types/src/calculation/ICalculation.d.ts +51 -0
  94. package/types/src/calculation/compiler/Types.d.ts +5 -0
  95. package/types/src/calculation/executor/CalcExecutorUtils.d.ts +1 -1
  96. package/types/src/calculation/formula/FormulaBlock.d.ts +2 -0
  97. package/types/src/calculation/formula/IFormulaBlock.d.ts +18 -0
  98. package/types/src/calculation/grid/CalcGrid.d.ts +5 -1
  99. package/types/src/calculation/grid/CalcGridBackend.d.ts +36 -1
  100. package/types/src/calculation/grid/CalcGridProxy.d.ts +2 -0
  101. package/types/src/calculation/grid/CalcGridUtils.d.ts +4 -2
  102. package/types/src/calculation/grid/FormulaHost.d.ts +3 -1
  103. package/types/src/calculation/grid/ICalcGrid.d.ts +88 -0
  104. package/types/src/calculation/grid/_CalcRequest.d.ts +9 -0
  105. package/types/src/calculation/spatial/FormulaSpatialValue.d.ts +2 -0
  106. package/types/src/calculation/spatial/SpillEntry.d.ts +55 -4
  107. package/types/src/calculation/state/CalcNode.d.ts +6 -3
  108. package/types/src/calculation/state/CalculationContext.d.ts +4 -2
  109. package/types/src/calculation/state/_PivotView.d.ts +22 -0
  110. package/types/src/cell/ICell.d.ts +1 -21
  111. package/types/src/cellRange/ICellRange.d.ts +18 -2
  112. package/types/src/collections/MixedTypedArrayList.d.ts +16 -2
  113. package/types/src/condition/BuiltInOperators/AbstractOperator.d.ts +10 -0
  114. package/types/src/condition/BuiltInOperators/GreaterThanEqualToOperator.d.ts +3 -0
  115. package/types/src/condition/BuiltInOperators/GreaterThanOperator.d.ts +3 -0
  116. package/types/src/condition/BuiltInOperators/LessThanEqualToOperator.d.ts +3 -0
  117. package/types/src/condition/BuiltInOperators/LessThanOperator.d.ts +3 -0
  118. package/types/src/condition/BuiltInOperators/MatchesOperator.d.ts +10 -0
  119. package/types/src/condition/BuiltInOperators/TimePeriodOperator.d.ts +2 -0
  120. package/types/src/condition/BuiltInOperators/index.d.ts +2 -0
  121. package/types/src/condition/Condition.d.ts +1 -0
  122. package/types/src/condition/ICondition.d.ts +15 -0
  123. package/types/src/condition/_ConditionUtils.d.ts +14 -0
  124. package/types/src/conditionalFormat/ConditionalFormat.d.ts +2 -1
  125. package/types/src/conditionalFormat/IConditionalFormat.d.ts +4 -3
  126. package/types/src/license/LicenseDetails.d.ts +27 -0
  127. package/types/src/license/LicenseManager.d.ts +24 -7
  128. package/types/src/license/_Utils.d.ts +34 -3
  129. package/types/src/license/index.d.ts +1 -0
  130. package/types/src/license/runtime.browser.d.ts +32 -4
  131. package/types/src/license/runtime.node.d.ts +8 -5
  132. package/types/src/license/summary.d.ts +18 -0
  133. package/types/src/pivot/IPivotTable.d.ts +1549 -13
  134. package/types/src/pivot/IPivotTableCollection.d.ts +70 -4
  135. package/types/src/pivot/PivotCache.d.ts +95 -11
  136. package/types/src/pivot/PivotDataField.d.ts +73 -0
  137. package/types/src/pivot/PivotField.d.ts +142 -0
  138. package/types/src/pivot/PivotTable.d.ts +548 -14
  139. package/types/src/pivot/PivotTableCollection.d.ts +18 -3
  140. package/types/src/pivot/_PivotAreas.d.ts +48 -0
  141. package/types/src/pivot/_PivotControls.d.ts +140 -0
  142. package/types/src/pivot/_PivotEngine.d.ts +9 -0
  143. package/types/src/pivot/_PivotGroups.d.ts +25 -0
  144. package/types/src/pivot/_PivotItems.d.ts +167 -0
  145. package/types/src/pivot/_PivotStructure.d.ts +237 -0
  146. package/types/src/pivot/_PivotStylePreview.d.ts +21 -0
  147. package/types/src/pivot/_PivotUtils.d.ts +37 -0
  148. package/types/src/pivot/engine/PivotAdd.d.ts +37 -0
  149. package/types/src/pivot/engine/PivotData.d.ts +65 -0
  150. package/types/src/pivot/engine/PivotEdit.d.ts +45 -0
  151. package/types/src/pivot/engine/PivotFilters.d.ts +50 -0
  152. package/types/src/pivot/engine/PivotFormulas.d.ts +72 -0
  153. package/types/src/pivot/engine/PivotLayout.d.ts +133 -0
  154. package/types/src/pivot/engine/PivotMove.d.ts +24 -0
  155. package/types/src/pivot/engine/PivotRefresh.d.ts +87 -0
  156. package/types/src/pivot/engine/PivotSort.d.ts +26 -0
  157. package/types/src/pivot/engine/PivotViewBuilder.d.ts +22 -0
  158. package/types/src/pivot/engine/index.d.ts +15 -0
  159. package/types/src/pivot/index.d.ts +4 -0
  160. package/types/src/pivot/kernel/KernelPivot.d.ts +63 -0
  161. package/types/src/pivot/kernel/_KernelLeaves.d.ts +100 -0
  162. package/types/src/pivot/kernel/_PivotAxisTree.d.ts +71 -0
  163. package/types/src/primitives/Range.d.ts +12 -1
  164. package/types/src/sheet/IWorksheet.d.ts +35 -0
  165. package/types/src/sheet/SheetCell.d.ts +21 -14
  166. package/types/src/sheet/SheetRange.d.ts +3 -0
  167. package/types/src/sheet/Worksheet.d.ts +175 -7
  168. package/types/src/sheet/_PivotFootprint.d.ts +42 -0
  169. package/types/src/sheet/_SheetAutoFitUtils.d.ts +12 -1
  170. package/types/src/sheet/_SheetMutations.d.ts +47 -0
  171. package/types/src/sheet/_SheetStateTypes.d.ts +11 -0
  172. package/types/src/sheet/style/SheetCellStyle.d.ts +6 -0
  173. package/types/src/sheet/style/SheetPivotStyle.d.ts +83 -0
  174. package/types/src/sheet/style/_IndentUnit.d.ts +14 -0
  175. package/types/src/sheetHeader/SheetCellHeader.d.ts +1 -1
  176. package/types/src/slicer/ISlicer.d.ts +114 -34
  177. package/types/src/slicer/ITimeline.d.ts +61 -0
  178. package/types/src/slicer/Slicer.d.ts +76 -3
  179. package/types/src/slicer/_PivotSlicer.d.ts +51 -0
  180. package/types/src/slicer/index.d.ts +1 -0
  181. package/types/src/table/AnchoredTable.d.ts +11 -1
  182. package/types/src/table/ITable.d.ts +5 -6
  183. package/types/src/table/ITableStyle.d.ts +50 -34
  184. package/types/src/table/_BuiltInPivotStyles.d.ts +8 -0
  185. package/types/src/table/_BuiltInTableStyles.d.ts +0 -1
  186. package/types/src/type/ITypes.d.ts +5 -1
  187. package/types/src/workbook/IWorkbook.d.ts +8 -2
  188. package/types/src/workbook/Workbook.d.ts +72 -6
  189. package/browser/esm/BrHplg4RuI5jOmmr.mjs +0 -357
  190. package/browser/esm/eImPONkfn5DstmS8.mjs +0 -184
  191. package/node/esm/03AYPvCda2x9EOlY.mjs +0 -360
  192. package/node/esm/BmVQRGAijOHzgHmz.mjs +0 -199
  193. package/node/esm/Dk4KLs5GoRRuD8J4.mjs +0 -115
  194. package/types/src/pivot/_PivotXml.d.ts +0 -24
  195. package/types/src/primitives/Grouping.d.ts +0 -65
@@ -0,0 +1,2017 @@
1
+ /**
2
+ * @license @sheetxl/sdk - SDK - A high-performance, embeddable spreadsheet engine. - v0.8.0-beta.16
3
+ *
4
+ * (C) 2026-present SheetXL Inc. & Michael T. Ford
5
+ * License: SheetXL EULA — https://www.sheetxl.com/eula
6
+ */
7
+ import { An as e, Bn as t, Cn as n, Cr as r, Dn as i, Ea as a, En as o, Fa as s, Fn as c, In as l, Ln as u, Mn as d, Nn as f, On as p, Pn as m, Rn as h, Sn as g, Sr as _, Tn as v, Un as y, Vn as b, Ya as x, _n as S, bn as C, cn as w, dn as T, fn as E, gi as D, gn as O, jn as k, kn as A, ln as j, pn as M, un as N, vn as P, wn as F, wr as I, xn as L, yn as R, zn as ee } from "./CkZoDPUCK5jMUaeJ.mjs";
8
+ import { Mt as z, Vt as B, _t as V, vt as te } from "./CMChv-fCFh68VQQt.mjs";
9
+ import { c as H, i as U, r as ne, s as W, t as re } from "./4MbBwfmW2hDXk9_w.mjs";
10
+ import { FormulaError as G } from "@sheetxl/primitives";
11
+ import { ExpectedError as K, t as q } from "@sheetxl/utils";
12
+ var J = [
13
+ "Jan",
14
+ "Feb",
15
+ "Mar",
16
+ "Apr",
17
+ "May",
18
+ "Jun",
19
+ "Jul",
20
+ "Aug",
21
+ "Sep",
22
+ "Oct",
23
+ "Nov",
24
+ "Dec"
25
+ ], Y = [
26
+ 31,
27
+ 29,
28
+ 31,
29
+ 30,
30
+ 31,
31
+ 30,
32
+ 31,
33
+ 31,
34
+ 30,
35
+ 31,
36
+ 30,
37
+ 31
38
+ ], X = (e, t, n, r) => {
39
+ if (typeof n != "number") return null;
40
+ if (n < e.start) return 0;
41
+ let i = t - 1;
42
+ if (((e) => e.by === "numbers" || e.by === "days" && (e.interval ?? 1) !== 1)(e)) {
43
+ let r = Math.floor((n - e.start) / (e.interval ?? 1));
44
+ return r >= t - 2 ? n <= e.end ? t - 2 : i : r + 1;
45
+ }
46
+ if (n > e.end) return i;
47
+ let a = z(n, r, !0);
48
+ if (!a) return null;
49
+ switch (e.by) {
50
+ case "years": return Math.min(a.year - (z(e.start, r, !0)?.year ?? a.year) + 1, i);
51
+ case "quarters": return Math.floor((a.month - 1) / 3) + 1;
52
+ case "months": return a.month;
53
+ case "days": {
54
+ let e = a.day;
55
+ for (let t = 0; t < a.month - 1; t++) e += Y[t];
56
+ return e;
57
+ }
58
+ case "hours": return a.hour + 1;
59
+ case "minutes": return a.minute + 1;
60
+ case "seconds": return a.second + 1;
61
+ default: return null;
62
+ }
63
+ }, ie = (e, t) => {
64
+ let n = e.fields ?? [], r = P(e.records, n.length);
65
+ if (!n.some(A)) return r;
66
+ let i = P(e.items, n.length), a = e.recordCount ?? 0, o = r.slice();
67
+ for (let e = 0; e < n.length; e++) {
68
+ let s = n[e];
69
+ if (!A(s)) continue;
70
+ let l = s.group, u = r[l.base] ?? [], d = i[l.base] ?? [], f = new Int32Array(d.length);
71
+ for (let e = 0; e < d.length; e++) {
72
+ let n = l.range ? X(l.range, l.items.length, c(d[e]), t) : l.discrete?.[e] ?? null;
73
+ f[e] = n ?? -1;
74
+ }
75
+ let p = Array(a);
76
+ for (let e = 0; e < a; e++) {
77
+ let t = f[u[e]];
78
+ if (t === void 0 || t < 0) return null;
79
+ p[e] = t;
80
+ }
81
+ o[e] = p;
82
+ }
83
+ return o;
84
+ }, ae = (e) => String(Number(e.toPrecision(12))), oe = (e, t) => {
85
+ let n = z(e, t, !0);
86
+ return n ? `${n.month}/${n.day}/${n.year}` : String(e);
87
+ }, se = (e, t, n) => {
88
+ let r = e.range, i = 1 / 0, a = -1 / 0;
89
+ for (let e of t) {
90
+ if (typeof e != "number") return null;
91
+ e < i && (i = e), e > a && (a = e);
92
+ }
93
+ if (t.length === 0) return e;
94
+ let o = { ...r };
95
+ r.fixedStart || (o.start = i), r.fixedEnd || (o.end = r.by !== "numbers" && Number.isInteger(a) ? a + 1 : a);
96
+ let { inner: s, endText: c } = ((e, t) => {
97
+ let { start: n, end: r } = e, i = e.interval ?? 1, a = oe(r, t), o = (e, t) => Array.from({ length: e }, (e, n) => t(n));
98
+ switch (e.by) {
99
+ case "numbers": {
100
+ let e = Math.max(1, Math.ceil(Number(((r - n) / i).toPrecision(12)))), t = Number.isInteger(Number(((r - n) / i).toPrecision(12))), a = Number.isInteger(n) && Number.isInteger(i);
101
+ return {
102
+ inner: o(e, (o) => {
103
+ let s = n + o * i, c = o === e - 1 && t ? r : a ? s + i - 1 : s + i;
104
+ return `${ae(s)}-${ae(c)}`;
105
+ }),
106
+ endText: ae(t ? r : n + e * i)
107
+ };
108
+ }
109
+ case "days":
110
+ if (i === 1) {
111
+ let e = [];
112
+ return Y.forEach((t, n) => {
113
+ for (let r = 1; r <= t; r++) e.push(`${r}-${J[n]}`);
114
+ }), {
115
+ inner: e,
116
+ endText: a
117
+ };
118
+ }
119
+ return {
120
+ inner: o(Math.max(1, Math.ceil((r - n) / i)), (e) => {
121
+ let a = n + e * i;
122
+ return `${oe(a, t)} - ${oe(Math.min(a + i - 1, r), t)}`;
123
+ }),
124
+ endText: a
125
+ };
126
+ case "months": return {
127
+ inner: J.slice(),
128
+ endText: a
129
+ };
130
+ case "quarters": return {
131
+ inner: [
132
+ "Qtr1",
133
+ "Qtr2",
134
+ "Qtr3",
135
+ "Qtr4"
136
+ ],
137
+ endText: a
138
+ };
139
+ case "years": {
140
+ let e = z(n, t)?.year ?? 0;
141
+ return {
142
+ inner: o((z(r, t)?.year ?? e) - e + 1, (t) => String(e + t)),
143
+ endText: a
144
+ };
145
+ }
146
+ case "hours": return {
147
+ inner: o(24, (e) => `${e % 12 == 0 ? 12 : e % 12} ${e < 12 ? "AM" : "PM"}`),
148
+ endText: a
149
+ };
150
+ default: return {
151
+ inner: o(60, (e) => `:${String(e).padStart(2, "0")}`),
152
+ endText: a
153
+ };
154
+ }
155
+ })(o, n), l = o.by === "numbers" ? ae(o.start) : oe(o.start, n);
156
+ return {
157
+ ...e,
158
+ range: o,
159
+ items: [
160
+ `<${l}`,
161
+ ...s,
162
+ `>${c}`
163
+ ]
164
+ };
165
+ }, ce = (e, t) => {
166
+ let n = "", r = 0, i = () => {
167
+ let t = "";
168
+ for (r++; r < e.length;) {
169
+ if (e[r] === "'") {
170
+ if (e[r + 1] !== "'") {
171
+ r++;
172
+ break;
173
+ }
174
+ r++;
175
+ }
176
+ t += e[r++];
177
+ }
178
+ return t;
179
+ };
180
+ for (; r < e.length;) {
181
+ let a = e[r];
182
+ if (a === "\"") {
183
+ let t = /^"(?:[^"]|"")*"/.exec(e.slice(r)), i = t ? t[0] : e.slice(r);
184
+ n += i, r += i.length;
185
+ continue;
186
+ }
187
+ if (/[0-9.]/.test(a)) {
188
+ let t = /^[0-9.]+(?:[eE][+-]?[0-9]+)?/.exec(e.slice(r))[0];
189
+ n += t, r += t.length;
190
+ continue;
191
+ }
192
+ let o = a === "'", s = o ? null : /^[\p{L}_][\p{L}\p{N}_.]*/u.exec(e.slice(r))?.[0];
193
+ if (!o && !s) {
194
+ n += a, r++;
195
+ continue;
196
+ }
197
+ let c = o ? i() : s;
198
+ if (o || (r += c.length), e[r] !== "(") {
199
+ if (e[r] === "[") {
200
+ r++;
201
+ let a = "";
202
+ for (e[r] === "'" && (a = i()); r < e.length && e[r] !== "]";) a += e[r++];
203
+ r++;
204
+ let o = t(c, a);
205
+ if (o === null) return null;
206
+ n += o;
207
+ continue;
208
+ }
209
+ n += t(c, null) ?? (o ? `'${c.replace(/'/g, "''")}'` : c);
210
+ } else n += c;
211
+ }
212
+ return n;
213
+ }, le = (e) => {
214
+ let t = "";
215
+ for (let n = e + 1; n > 0; n = Math.floor((n - 1) / 26)) t = String.fromCharCode(65 + (n - 1) % 26) + t;
216
+ return `${t}1`;
217
+ }, ue = (e, t) => ({
218
+ rowStart: 0,
219
+ colStart: e,
220
+ rowEnd: t - 1,
221
+ colEnd: e
222
+ }), de = (e, t) => {
223
+ let n = [];
224
+ for (let r = 0; r < t; r++) n.push([r, [[0, e.map((e) => e[r] ?? null)]]]);
225
+ return n;
226
+ }, fe = (e, t) => {
227
+ let n = t.fields ?? [], r = [], a = [], o = /* @__PURE__ */ new Map(), s = /* @__PURE__ */ new Map(), c = (e, t) => {
228
+ if (o.has(e)) return !0;
229
+ if (t.includes(e)) return !1;
230
+ let l = [];
231
+ ce(n[e].formula, (e) => {
232
+ let t = n.findIndex((t) => k(t.name, e));
233
+ return t >= 0 && l.push(t), t >= 0 ? "" : null;
234
+ });
235
+ for (let a of l) if (i(n[a])) {
236
+ if (!c(a, [...t, e])) return !1;
237
+ } else r.includes(a) || r.push(a);
238
+ return o.set(e, a.length), s.set(e, n[e].formula), a.push({
239
+ field: e,
240
+ expression: ""
241
+ }), !0;
242
+ }, l = [];
243
+ for (let [t, r] of (e.dataFields ?? []).entries()) if (i(n[r.field])) {
244
+ if (!c(r.field, [])) return null;
245
+ l.push({
246
+ data: t,
247
+ formula: o.get(r.field)
248
+ });
249
+ }
250
+ let u = (e, t) => {
251
+ if (t !== null) return null;
252
+ let a = n.findIndex((t) => k(t.name, e));
253
+ return a >= 0 ? le(i(n[s = a]) ? r.length + o.get(s) : r.indexOf(s)) : null;
254
+ var s;
255
+ };
256
+ for (let e of a) {
257
+ let t = ce(s.get(e.field), u);
258
+ if (t === null) return null;
259
+ e.expression = t;
260
+ }
261
+ return {
262
+ operands: r,
263
+ formulas: a,
264
+ measures: l
265
+ };
266
+ }, pe = /* @__PURE__ */ new Set([
267
+ "sum",
268
+ "count",
269
+ "countNums"
270
+ ]), Z = -2, me = 4294967295, he = 1, ge = 2, _e = 4, ve = 8, ye = 16, be = 4294967295, xe = 0, Se = 1, Ce = 2, we = 3, Te = 0, Ee = 1, De = {
271
+ sum: 0,
272
+ countNums: 1,
273
+ count: 11,
274
+ average: 3,
275
+ min: 4,
276
+ max: 5,
277
+ product: 6,
278
+ var: 7,
279
+ varp: 8,
280
+ stdDev: 9,
281
+ stdDevp: 10
282
+ }, Oe = [
283
+ "sum",
284
+ "countA",
285
+ "avg",
286
+ "max",
287
+ "min",
288
+ "product",
289
+ "count",
290
+ "stdDev",
291
+ "stdDevP",
292
+ "var",
293
+ "varP"
294
+ ], ke = {
295
+ sum: 0,
296
+ countA: 13,
297
+ avg: 3,
298
+ max: 5,
299
+ min: 4,
300
+ product: 6,
301
+ count: 12,
302
+ stdDev: 9,
303
+ stdDevP: 10,
304
+ var: 7,
305
+ varP: 8
306
+ }, Ae = {
307
+ sum: "Sum",
308
+ countA: "Count",
309
+ avg: "Average",
310
+ max: "Max",
311
+ min: "Min",
312
+ product: "Product",
313
+ count: "Count",
314
+ stdDev: "StdDev",
315
+ stdDevP: "StdDevp",
316
+ var: "Var",
317
+ varP: "Varp"
318
+ }, je = (e) => {
319
+ let t = e?.subtotals;
320
+ return t && !t.includes("default") ? Oe.filter((e) => t.includes(e)) : [];
321
+ }, Me = (e, t) => {
322
+ let n = new Set(t.flatMap((t) => t.field === Z ? [] : je(e.fields?.[t.field])));
323
+ return Oe.filter((e) => n.has(e));
324
+ }, Ne = (e, t) => {
325
+ let n = t.filter((e) => e.field !== Z).map((e) => e.field);
326
+ return !(n.length < 2 || t[t.length - 1].field === Z) && !n.slice(0, -1).some((t) => e.fields?.[t]?.items?.some((e) => e.collapsed)) && !e.filters?.some((e) => e.dataField !== void 0 && n.includes(e.field));
327
+ }, Pe = {
328
+ normal: 0,
329
+ percentOfTotal: 1,
330
+ percentOfRow: 2,
331
+ percentOfCol: 3,
332
+ index: 4,
333
+ percentOfParentRow: 5,
334
+ percentOfParentCol: 6,
335
+ percentOfParent: 7,
336
+ runTotal: 8,
337
+ percentOfRunningTotal: 9,
338
+ rankAscending: 10,
339
+ rankDescending: 11,
340
+ difference: 12,
341
+ percent: 13,
342
+ percentDiff: 14
343
+ }, Fe = (e, t, n, r) => {
344
+ let i = a.peek(), o = e.fields, s = t.fields;
345
+ if (!i || !o || !s || o.length !== s.length) return null;
346
+ if (T(e)) return {
347
+ cells: [],
348
+ ...w,
349
+ rowPageCount: 0,
350
+ columnPageCount: 0,
351
+ header: N(e),
352
+ rowLines: [],
353
+ columnLines: [],
354
+ viewValues: [],
355
+ firstKey: null,
356
+ ...r?.roles ? { roles: /* @__PURE__ */ new Map() } : {}
357
+ };
358
+ let c = m(e, s), l = c ? r?.filters : null;
359
+ if (c && !l) return null;
360
+ let u = o.some((e) => e.items?.some((e) => e.calculated));
361
+ if (u && !l?.calculatedRecords) return null;
362
+ let d = fe(e, t);
363
+ if (!d || d.measures.length > 0 && !l?.fieldValues || (e.dataFields ?? []).some((e) => Pe[e.showDataAs ?? "normal"] === void 0 || De[e.subtotal ?? "sum"] === void 0)) return null;
364
+ let f = Ie(e, t, n, l?.calculatedRecords, d.operands);
365
+ if (!f) return null;
366
+ let { items: p, records: h, values: g, n: _ } = f, v = (e) => !!e && (!e.noRecords || A(e)), y = e.form ?? "compact", b = (e) => {
367
+ let t = [];
368
+ for (let n of e ?? []) {
369
+ if (n === Z) {
370
+ t.push({
371
+ field: n,
372
+ form: y
373
+ });
374
+ continue;
375
+ }
376
+ let e = o[n], r = e?.subtotals;
377
+ if (!e || !v(s[n]) || u && r && r.some((e) => e !== "default")) return null;
378
+ t.push({
379
+ field: n,
380
+ form: e.form ?? "compact"
381
+ });
382
+ }
383
+ return t;
384
+ }, x = b(e.rowFields), S = b(e.columnFields), C = e.pageFields ?? [];
385
+ if (!x || !S || C.some((e) => !v(s[e.field]))) return null;
386
+ let E = ee(e, r?.slicerFields);
387
+ return E.pageFields?.some((e) => !v(s[e.field])) ? null : We(e, t, p, x, S, Be(i, E, p, h, g, x, S, _, l?.keep, l?.records, d.operands.length, l?.fieldValues, !0), n, !0 === r?.roles, r?.cellOrder === "columns");
388
+ }, Ie = (e, t, n, r, i = []) => {
389
+ let a = t.fields?.length ?? 0, o = f(t);
390
+ if (!t.records) return null;
391
+ let s = ie(t, n.isDate1904());
392
+ if (!s) return null;
393
+ let l = !0 === t.fields?.some(A), u = l ? P(t.items, a) : o, d = l ? P(t.records, a) : s, p = t.recordCount ?? 0, m = r?.count ?? 0, h = p + m, g = (e, n) => {
394
+ let r = !t.fields?.[e]?.noRecords, i = r ? d[e] : s[e] ?? [], a = r ? u[e] : o[e], l = Array(h);
395
+ for (let e = 0; e < p; e++) l[e] = c(a[i[e]]);
396
+ for (let e = 0; e < m; e++) l[p + e] = n?.[e] ?? null;
397
+ return l;
398
+ }, _ = [...(e.dataFields ?? []).map((e, t) => g(e.field, r?.values[t])), ...i.map((e) => g(e))];
399
+ return {
400
+ items: o,
401
+ records: r ? s.map((e, t) => e.concat(r.ids[t] ?? [])) : s,
402
+ values: _,
403
+ n: h
404
+ };
405
+ }, Le = async (e, t, n, r, i, o, s, c, l) => {
406
+ let u = a.peek(), d = e.dataFields?.[i];
407
+ if (!u || !e.fields || !d || De[d.subtotal ?? "sum"] === void 0) return null;
408
+ let f = [e.rowFields, e.columnFields].map((e) => (e ?? []).filter((e) => e !== Z)), p = f.findIndex((e) => e.includes(r)), m = f[p];
409
+ if (!m) return null;
410
+ let h = m.slice(0, m.indexOf(r)), g = e.fields.map((e) => {
411
+ let { blankRowAfter: t, showItemsWithNoData: n, sort: r, ...i } = e;
412
+ return {
413
+ ...i,
414
+ items: e.items?.map((e) => {
415
+ if (!e.collapsed) return e;
416
+ let { collapsed: t, ...n } = e;
417
+ return n;
418
+ })
419
+ };
420
+ }), { columnGrandTotals: _, ...v } = e, { showDataAs: y, ...b } = d, x = {
421
+ ...v,
422
+ fields: g,
423
+ rowFields: [...h, r],
424
+ columnFields: [],
425
+ dataFields: [b],
426
+ rowGrandTotals: !1
427
+ }, S = c && {
428
+ ...c,
429
+ values: [c.values[i] ?? []]
430
+ }, C = fe(x, t);
431
+ if (!C || C.measures.length > 0 && !l) return null;
432
+ let w = Ie(x, t, n, S, C.operands);
433
+ if (!w) return null;
434
+ let { items: T, records: E, values: D, n: O } = w, k = x.rowFields.map((e) => ({
435
+ field: e,
436
+ form: "compact"
437
+ })), A;
438
+ if (s) {
439
+ let e = p === 0 ? 1 : 2;
440
+ A = new Uint8Array(O);
441
+ for (let t = 0; t < O; t++) {
442
+ let n = s[t];
443
+ A[t] = (n & e ? 1 : 0) | (n === 3 ? 2 : 0);
444
+ }
445
+ }
446
+ let j = C.measures.length > 0 ? await ze(u, C, x, T, E, D, k, [], O, o, A, l) : void 0, M = Be(u, x, T, E, D, k, [], O, o, A, C.operands.length, j), N = (t, n) => e.fields[t].items?.[n]?.item ?? n, P = /* @__PURE__ */ new Map(), F = M.columns.length;
447
+ return M.rows.forEach((e, t) => {
448
+ if (e.kind !== xe || e.path.length !== h.length + 1) return;
449
+ let n = h.map((t, n) => N(t, e.path[n])).join(","), i = P.get(n);
450
+ i || P.set(n, i = {
451
+ ids: [],
452
+ totals: []
453
+ }), i.ids.push(N(r, e.path[h.length])), i.totals.push(M.values[t * F]);
454
+ }), {
455
+ outer: h,
456
+ groups: P,
457
+ records: E
458
+ };
459
+ }, Re = (e, t, n) => {
460
+ let r = new Uint32Array(t).fill(me), i = new Uint8Array(t), a = e.items;
461
+ if (a) a.forEach((e, n) => {
462
+ e.item === void 0 || e.type !== void 0 || e.item >= t || (r[e.item] = n, i[e.item] = +!!e.hidden | (e.collapsed ? 2 : 0));
463
+ });
464
+ else for (let e = 0; e < t; e++) r[e] = e;
465
+ if (n) for (let e = 0; e < t; e++) n[e] || (i[e] |= 1);
466
+ return {
467
+ ranks: r,
468
+ flags: i
469
+ };
470
+ }, ze = async (e, t, n, r, i, a, o, s, c, l, u, d) => {
471
+ let { request: f, errors: p } = Ve(e, n, r, i, a, o, s, c, l, u, t.operands.length), m = 0, h = [];
472
+ try {
473
+ let r = f.operands(0, p.codeOf(G.BuiltIn.NA), p.codeOf(G.BuiltIn.Null));
474
+ try {
475
+ m = r.cell_count();
476
+ let i = n.dataFields?.length ?? 0;
477
+ t.operands.forEach((t, n) => {
478
+ let a = r.values(i + n);
479
+ try {
480
+ let t = W(e.wasm_memory().buffer, a, p), n = Array(m);
481
+ for (let e = 0; e < m; e++) n[e] = t(e);
482
+ h.push(n);
483
+ } finally {
484
+ a.free();
485
+ }
486
+ });
487
+ } finally {
488
+ r.free();
489
+ }
490
+ } finally {
491
+ f.free();
492
+ }
493
+ return (async (e, t, n, r) => {
494
+ let i = n + 1, a = t.map((e) => {
495
+ let t = Array(i);
496
+ for (let r = 0; r < n; r++) t[r] = e[r] ?? 0;
497
+ return t[n] = 0, t;
498
+ }), o = await r.evaluateBatch({
499
+ values: de(a, i),
500
+ formulas: e.formulas.map(({ expression: e }, n) => ({
501
+ expression: e,
502
+ coords: ue(t.length + n, i)
503
+ }))
504
+ }), s = /* @__PURE__ */ new Map();
505
+ for (let { data: t, formula: n } of e.measures) {
506
+ let e = Array(i);
507
+ for (let t = 0; t < i; t++) e[t] = o[n].getValueAt(t, 0) ?? 0;
508
+ s.set(t, e);
509
+ }
510
+ return s;
511
+ })(t, h, m, d);
512
+ }, Be = (e, t, n, r, i, a, o, s, c, l, u = 0, d, f = !1) => {
513
+ let { request: p, errors: m } = Ve(e, t, n, r, i, a, o, s, c, l, u, d, f), h = m.codeOf(G.BuiltIn.NA), g = m.codeOf(G.BuiltIn.Null), _ = p.lay_out(0, h, g);
514
+ try {
515
+ let n = He(_.row_lines(), _.row_stride()), r = He(_.column_lines(), _.column_stride()), i = _.states(), s = _.values();
516
+ try {
517
+ let c = W(e.wasm_memory().buffer, s, m), l = Array(i.length);
518
+ for (let e = 0; e < i.length; e++) l[e] = i[e] === Te ? c(e) : null;
519
+ return {
520
+ rows: n,
521
+ columns: r,
522
+ states: i,
523
+ values: l,
524
+ functions: f ? Me(t, [...a, ...o]) : []
525
+ };
526
+ } finally {
527
+ s.free();
528
+ }
529
+ } finally {
530
+ _.free(), p.free();
531
+ }
532
+ }, Ve = (e, t, n, r, i, a, o, s, c, l, u = 0, d, f = !1) => {
533
+ let p = t.fields, m = new e.LayoutRequest(s), h = f ? Me(t, [...a, ...o]) : [], g = [], _ = (e, r) => {
534
+ for (let { field: i, form: a } of r) {
535
+ if (i === Z) {
536
+ m.add_values_slot(e, a === "tabular");
537
+ continue;
538
+ }
539
+ let o = p[i], s = o.subtotals, c = (!s || s.includes("default") ? he : 0) | (!1 === o.subtotalsOnTop ? 0 : ge) | (o.blankRowAfter ? _e : 0) | (o.showItemsWithNoData ? ve : 0) | (a === "tabular" ? ye : 0), l = m.add_field(e, n[i].length, c), u = o.sort;
540
+ u?.dataField !== void 0 && m.set_field_sort(e, l, u.dataField, u.order === "descending", new Uint32Array((u.scope?.items ?? []).map((e) => e.item)));
541
+ let d = f ? je(o) : [];
542
+ if (d.length > 0) {
543
+ let n = r[r.length - 1].field === i && Ne(t, r);
544
+ m.set_field_functions(e, l, new Uint32Array(d.map((e) => h.indexOf(e))), n);
545
+ }
546
+ g.push({
547
+ axis: e,
548
+ slot: l,
549
+ field: i
550
+ });
551
+ }
552
+ };
553
+ _(0, a), _(1, o);
554
+ let v = (t.pageFields ?? []).map((e) => ({
555
+ page: e,
556
+ index: m.add_page(n[e.field].length)
557
+ })), y = i.map(() => m.add_values(127)), b = t.dataFields ?? [];
558
+ b.forEach((e, t) => {
559
+ m.add_measure(t, De[e.subtotal ?? "sum"]);
560
+ let n = Pe[e.showDataAs ?? "normal"];
561
+ if (!n) return;
562
+ let r = 2, i = a.findIndex((t) => t.field === e.baseField);
563
+ i >= 0 ? r = 0 : (i = o.findIndex((t) => t.field === e.baseField), i >= 0 && (r = 1));
564
+ let s = e.baseItem === "previous" ? 4294967294 : e.baseItem === "next" ? 4294967295 : e.baseItem ?? 0;
565
+ m.set_show_as(t, n, r, Math.max(i, 0), s);
566
+ });
567
+ for (let e = 0; e < u; e++) m.add_measure(b.length + e, De.sum);
568
+ u > 0 && m.set_operand_measures(u);
569
+ for (let e of h) b.forEach((t, n) => m.add_measure(n, ke[e]));
570
+ h.length > 0 && m.set_functions(h.length);
571
+ let x = [...d ?? []].map(([e, t]) => ({
572
+ column: t,
573
+ ptr: m.add_calculated(e, t.length - 1, 127)
574
+ }));
575
+ m.set_grand(!1 !== t.rowGrandTotals, !1 !== t.columnGrandTotals);
576
+ let S = l ? m.record_keep() : null, C = e.wasm_memory().buffer;
577
+ l && S !== null && new Uint8Array(C, S, s).set(l.subarray(0, s));
578
+ for (let { axis: e, slot: t, field: i } of g) {
579
+ let a = n[i].length;
580
+ new Uint32Array(C, m.field_ids(e, t), s).set(r[i].slice(0, s));
581
+ let { ranks: o, flags: l } = Re(p[i], a, c?.get(i));
582
+ new Uint32Array(C, m.field_ranks(e, t), a).set(o), new Uint8Array(C, m.field_flags(e, t), a).set(l);
583
+ }
584
+ for (let { page: e, index: t } of v) {
585
+ let i = n[e.field].length;
586
+ new Uint32Array(C, m.page_ids(t), s).set(r[e.field].slice(0, s));
587
+ let { ranks: a, flags: o } = Re(p[e.field], i), l = new Uint8Array(C, m.page_keep(t), i), u = e.item === void 0 ? void 0 : p[e.field].items?.[e.item]?.item, d = e.slicer ? c?.get(e.field) : void 0;
588
+ for (let t = 0; t < i; t++) {
589
+ let n = u === void 0 ? !(a[t] === me && p[e.field].items || 1 & o[t]) : t === u;
590
+ l[t] = !n || d && d[t] === 0 ? 0 : 1;
591
+ }
592
+ }
593
+ let w = new ne();
594
+ y.forEach((e, t) => {
595
+ let n = {
596
+ doubles: new Float64Array(C, e, s),
597
+ ints: new Int32Array(C, e, 2 * s),
598
+ types: new Uint8Array(C, e + 8 * s, s)
599
+ }, r = {
600
+ ok: !0,
601
+ numeric: !0
602
+ }, a = i[t];
603
+ for (let e = 0; e < s; e++) H(n, e, a[e], w, r);
604
+ });
605
+ for (let { column: e, ptr: t } of x) {
606
+ let n = e.length, r = {
607
+ doubles: new Float64Array(C, t, n),
608
+ ints: new Int32Array(C, t, 2 * n),
609
+ types: new Uint8Array(C, t + 8 * n, n)
610
+ }, i = {
611
+ ok: !0,
612
+ numeric: !0
613
+ };
614
+ for (let t = 0; t < n; t++) H(r, t, e[t], w, i);
615
+ }
616
+ return {
617
+ request: m,
618
+ errors: w
619
+ };
620
+ }, He = (e, t) => {
621
+ let n = [], r = 7 + t;
622
+ for (let t = 0; t + r <= e.length; t += r) {
623
+ let r = e[t + 1], i = e[t + 3], a = e[t + 5];
624
+ n.push({
625
+ kind: e[t],
626
+ path: Array.from(e.subarray(t + 7, t + 7 + r)),
627
+ data: i === be ? null : i,
628
+ function: a === be ? null : a,
629
+ across: e[t + 6] === 1
630
+ });
631
+ }
632
+ return n;
633
+ }, Ue = (e, t) => {
634
+ let n = [];
635
+ return e.map((e) => {
636
+ let r = { items: [] };
637
+ if (e.kind === xe) {
638
+ let t = 0;
639
+ for (; t < e.path.length - 1 && t < n.length && e.path[t] === n[t];) t++;
640
+ t > 0 && (r.repeat = t), r.items = e.path.slice(t), n = e.path;
641
+ } else r.type = e.kind === Se ? e.function === null ? "default" : t[e.function] : e.kind === Ce ? "grand" : "blank", r.items = e.kind === Ce ? [0] : e.path.slice();
642
+ return e.data !== null && e.data > 0 && (r.dataField = e.data), r;
643
+ });
644
+ }, We = (e, t, n, r, i, a, s, l, u) => {
645
+ let d = e.fields, f = t.fields, m = e.dataFields ?? [], h = (t) => t === Z ? e.valuesCaption ?? "Values" : d[t].name ?? f[t].name, g = (e, t) => {
646
+ if (e === Z) return m[t]?.name ?? "";
647
+ let r = d[e].items?.[t];
648
+ if (r?.name !== void 0) return r.name;
649
+ let i = c(n[e][r?.item ?? t]);
650
+ return i === null ? O : i;
651
+ }, _ = (e, t) => {
652
+ let n = g(e, t);
653
+ if (typeof n == "number") {
654
+ let r = d[e].items?.[t]?.item ?? t, i = (d[e].numberFormat ?? f[e].numberFormat) === void 0 && p(f[e], r);
655
+ return te(s, i ? j(L(f[e], r), s) : ((e) => j(d[e].numberFormat ?? f[e].numberFormat, s))(e), n);
656
+ }
657
+ return G.isError(n) ? n.getLabel() : typeof n == "boolean" ? n ? "TRUE" : "FALSE" : String(n);
658
+ }, v = (e) => {
659
+ if (e.item !== void 0) return g(e.field, e.item);
660
+ let t = d[e.field].items ?? [];
661
+ if (!t.some((e) => e.hidden)) return "(All)";
662
+ let n = t.flatMap((e, t) => o(e) && !e.hidden ? [t] : []);
663
+ return n.length === 1 ? g(e.field, n[0]) : "(Multiple Items)";
664
+ }, b = e.grandTotalCaption ?? "Grand Total", S = l ? /* @__PURE__ */ new Map() : null, C = (e, t) => e === Z ? {
665
+ kind: "dataCaption",
666
+ data: t
667
+ } : {
668
+ kind: "item",
669
+ field: e,
670
+ rank: t
671
+ }, w = (e) => e === Z ? null : {
672
+ kind: "fieldCaption",
673
+ field: e
674
+ }, T = (e, t) => e.kind === Ce && t === b ? { kind: "grandTotal" } : null, D = r.length === 0 && i.length === 0 && m.length === 0, k = D ? {
675
+ firstHeaderRow: 0,
676
+ firstDataRow: 0,
677
+ firstDataCol: 0
678
+ } : N(e), A = D ? [] : Ue(a.rows, a.functions), P = D ? [] : Ue(a.columns, a.functions), F = M({
679
+ ...e,
680
+ header: k,
681
+ rowLines: A,
682
+ columnLines: P
683
+ }), I = a.columns.length, R = (e) => e === "row" ? r : i, ee = (t) => {
684
+ switch (t.kind) {
685
+ case "pageCaption": {
686
+ let n = e.pageFields[t.page].field;
687
+ return [h(n), {
688
+ kind: "fieldCaption",
689
+ field: n
690
+ }];
691
+ }
692
+ case "pageItem": {
693
+ let n = e.pageFields[t.page];
694
+ return [v(n), {
695
+ kind: "pageItem",
696
+ page: t.page
697
+ }];
698
+ }
699
+ case "dataCaption": return [m[t.data]?.name ?? null, {
700
+ kind: "dataCaption",
701
+ data: t.data
702
+ }];
703
+ case "rowHeader": return [r.every((e) => e.field === Z) ? e.valuesCaption ?? "Values" : e.rowHeaderCaption ?? "Row Labels", { kind: "rowHeader" }];
704
+ case "columnHeader": return [e.columnHeaderCaption ?? "Column Labels", { kind: "columnHeader" }];
705
+ case "fieldCaption": {
706
+ let e = R(t.axis)[t.level].field;
707
+ return [h(e), w(e)];
708
+ }
709
+ case "label": {
710
+ let e = R(t.axis)[t.level].field, n = t.line.path[t.level];
711
+ return [g(e, n), C(e, n)];
712
+ }
713
+ case "total": {
714
+ let e = (t.axis === "row" ? a.rows : a.columns)[t.line.index], n = ((e, t) => {
715
+ let n = e.findIndex((e) => e.field === Z) >= t.path.length && t.data !== null, r = n ? m[t.data]?.name ?? "" : "";
716
+ if (t.kind === Ce) return n ? `Total ${r}` : b;
717
+ let i = t.path.length - 1, o = e[i].field, s = _(o, t.path[i]);
718
+ if (t.function !== null) {
719
+ let e = Ae[a.functions[t.function]];
720
+ return (n || t.across) && t.data !== null ? `${s} ${e} of ${h(m[t.data].field)}` : `${s} ${e}`;
721
+ }
722
+ return d[o]?.subtotalCaption ?? (n ? `${s} ${r}` : `${s} Total`);
723
+ })(R(t.axis), e);
724
+ return [n, T(e, n)];
725
+ }
726
+ case "value": {
727
+ let n = t.row.index * I + t.column.index, r = a.states[n], i = null;
728
+ return r === Te ? (i = a.values[n], e.showError && G.isError(i) && (i = e.errorCaption ?? "")) : r === Ee && (i = !1 === e.showEmpty ? 0 : ((e) => {
729
+ if (e === void 0) return null;
730
+ let t = e.trim();
731
+ if (!/^[+-]?\d*(?:\.\d*)?$/.test(t)) return e;
732
+ let n = Number(t.replace(/^([+-]?)\.?$/, "$10"));
733
+ return Number.isFinite(n) ? n + 0 : e;
734
+ })(e.emptyCaption)), [i, null];
735
+ }
736
+ }
737
+ }, z = new x.Builder(), B = F.top, V = F.pages.reduce((e, t) => Math.max(e, t.column + 2), 0), H = (e, t) => {
738
+ let n = E(F, e, t);
739
+ if (!n) return;
740
+ let [r, i] = ee(n);
741
+ ((e, t, n) => {
742
+ S && n && S.set(e + "," + t, n);
743
+ })(e - B, t, i), r !== null && (u ? z.pushAt(t, e - B, r) : z.pushAt(e - B, t, r));
744
+ };
745
+ if (u) {
746
+ let e = Math.max(V, F.columns.length);
747
+ for (let t = 0; t < e; t++) for (let e = 0; e < F.rows.length; e++) t < (e < B ? V : F.columns.length) && H(e, t);
748
+ } else for (let e = 0; e < F.rows.length; e++) {
749
+ let t = e < B ? V : F.columns.length;
750
+ for (let n = 0; n < t; n++) H(e, n);
751
+ }
752
+ if (D) {
753
+ let t = y(e);
754
+ return {
755
+ cells: z.build()?.tuples ?? [],
756
+ rows: 1,
757
+ columns: 1,
758
+ rowPageCount: t.rows,
759
+ columnPageCount: t.columns,
760
+ header: k,
761
+ rowLines: [],
762
+ columnLines: [],
763
+ viewValues: [],
764
+ firstKey: null,
765
+ ...S ? { roles: S } : {}
766
+ };
767
+ }
768
+ let U = (e, t) => {
769
+ let n = [];
770
+ return e.forEach((e, r) => {
771
+ e.field !== Z && n.push(r < t.path.length ? t.path[r] : -1);
772
+ }), n;
773
+ }, ne = (e, t) => re(e.data ?? t.data ?? 0, [...U(r, e), ...U(i, t)]), [W] = a.rows, [K] = a.columns, q = W && K && W.kind !== we && K.kind !== we ? ne(W, K) : null, J = [], Y = (e) => e.kind === Se && e.function !== null;
774
+ a.rows.forEach((t, n) => {
775
+ t.kind === we || Y(t) || (U(r, t), a.columns.forEach((r, i) => {
776
+ let o = a.states[n * I + i];
777
+ if (r.kind === we || Y(r) || o !== Te && o !== Ee) return;
778
+ let s = o === Te ? a.values[n * I + i] : 0;
779
+ e.showError && G.isError(s) && (s = e.errorCaption || 0), J.push([ne(t, r), s]);
780
+ }));
781
+ });
782
+ let X = y(e);
783
+ return {
784
+ cells: z.build()?.tuples ?? [],
785
+ rows: F.rows.length - B,
786
+ columns: F.columns.length,
787
+ rowPageCount: X.rows,
788
+ columnPageCount: X.columns,
789
+ header: k,
790
+ rowLines: A,
791
+ columnLines: P,
792
+ viewValues: J,
793
+ firstKey: q,
794
+ ...S ? { roles: S } : {}
795
+ };
796
+ }, Ge = (e, t, n, r, i = !1, a, o) => {
797
+ let s = Fe(e, t, r, {
798
+ filters: a,
799
+ slicerFields: o
800
+ });
801
+ if (!s) return null;
802
+ let l = s.rowPageCount > 0 ? s.rowPageCount + 1 : 0, u = s.rowPageCount > 0 ? 3 * s.columnPageCount - 1 : 0, { rowStart: d, colStart: m } = n;
803
+ if (d - l < 0) return null;
804
+ let h = {
805
+ rowStart: d - l,
806
+ colStart: m,
807
+ rowEnd: d + s.rows - 1,
808
+ colEnd: m + Math.max(s.columns, u) - 1
809
+ }, g = e.fields, _ = t.fields, v = f(t), y = (e, t) => {
810
+ let n = g[e], i = n.numberFormat ?? _[e].numberFormat, a = j(i, r), o = A(_[e]), s = v[e], l = (n.items ?? []).filter((e) => e.item !== void 0 && e.type === void 0), u = l.length > 0 ? l : s.map((e, t) => ({ item: t })), d = u.map((t) => {
811
+ let n = c(s[t.item]), l = p(_[e], t.item), u = n === null ? "(blank)" : typeof n == "number" ? te(r, l ? (d = t.item, i === void 0 ? j(L(_[e], d), r) : a) : a, n) : G.isError(n) ? n.getLabel() : typeof n == "boolean" ? n ? "TRUE" : "FALSE" : String(n);
812
+ var d;
813
+ let f = o && l ? u : n;
814
+ return t.name === void 0 ? {
815
+ value: f,
816
+ text: u
817
+ } : {
818
+ value: f,
819
+ text: u,
820
+ name: t.name
821
+ };
822
+ }), f = {
823
+ name: n.name ?? _[e].name,
824
+ items: d
825
+ };
826
+ if (t) {
827
+ let e = t.item === void 0 ? void 0 : (n.items ?? [])[t.item]?.item;
828
+ f.page = e === void 0 ? -1 : u.findIndex((t) => t.item === e);
829
+ }
830
+ return f;
831
+ }, b = (e) => (e ?? []).filter((e) => e !== -2);
832
+ return {
833
+ view: {
834
+ range: h,
835
+ dataFields: (e.dataFields ?? []).map((e) => ({
836
+ name: e.name,
837
+ sourceName: _[e.field].name
838
+ })),
839
+ fields: [
840
+ ...b(e.rowFields).map((e) => y(e)),
841
+ ...b(e.columnFields).map((e) => y(e)),
842
+ ...(e.pageFields ?? []).map((e) => y(e.field, e))
843
+ ],
844
+ values: s.viewValues,
845
+ block: {
846
+ anchor: {
847
+ row: d,
848
+ column: m
849
+ },
850
+ ...i ? { blocked: !0 } : {},
851
+ ...s.firstKey === null ? {} : { first: s.firstKey }
852
+ }
853
+ },
854
+ size: {
855
+ rows: s.rows,
856
+ columns: s.columns
857
+ }
858
+ };
859
+ }, Ke = async (t, n, r, o) => {
860
+ let s = /* @__PURE__ */ new Map(), l = (t.filters ?? []).filter((n) => e(n) || t.rowFields?.includes(n.field) || t.columnFields?.includes(n.field)), d = t.fields?.some((e) => e.items?.some((e) => e.calculated)), m = t.dataFields?.some((e) => i(n.fields?.[e.field]));
861
+ if (l.length === 0 && !d && !m) return { keep: s };
862
+ let h = f(n);
863
+ for (let i of l.filter(e)) {
864
+ let e = i.field, a = h[e];
865
+ if (!a) continue;
866
+ let l = I(i.condition) ? Ye(t, n, a, e, r) : null, u = Array(a.length);
867
+ for (let e = 0; e < a.length; e++) u[e] = l ? l[e] : c(a[e]);
868
+ let d = await Je(i.condition, u, r, o), f = s.get(e);
869
+ if (f) for (let e = 0; e < d.length; e++) f[e] &= d[e];
870
+ else s.set(e, d);
871
+ }
872
+ let g = d && o ? await (async (e, t, n, r, a) => {
873
+ let o = t.fields ?? [], s = e.fields ?? [], l = o.flatMap((e, t) => e.calculatedItems?.length ? [t] : []), d = e.dataFields ?? [];
874
+ if (l.length !== 1 || d.some((e) => i(o[e.field]) || !pe.has(e.subtotal ?? "sum"))) return null;
875
+ let m = l[0], h = o[m].calculatedItems, g = ie(t, n.isDate1904());
876
+ if (!g) return null;
877
+ let _ = f(t), v = f({
878
+ ...t,
879
+ fields: o.map(({ group: e, ...t }) => t)
880
+ }), y = (e.rowFields ?? []).filter((e) => e >= 0), b = (e.columnFields ?? []).filter((e) => e >= 0), x = y.includes(m) ? y : b.includes(m) ? b : null;
881
+ if (!x) return null;
882
+ let S = x.slice(0, x.indexOf(m)), C = [...x.slice(x.indexOf(m) + 1), ...x === y ? b : y], w = [...S, ...C], T = t.recordCount ?? 0, E = (e, t) => {
883
+ let n = s[e]?.items, r = n?.find((e) => e.item === t && e.type === void 0);
884
+ return !(n && (!r || r.hidden) || a?.get(e) && a.get(e)[t] === 0);
885
+ }, D = (e, t) => {
886
+ let n = s[e.field]?.items;
887
+ if (e.item !== void 0) return n?.[e.item]?.item === t;
888
+ let r = n?.find((e) => e.item === t && e.type === void 0);
889
+ return !n || !!r && !r.hidden;
890
+ }, A = e.pageFields ?? [], M = j(o[m].numberFormat ?? 14, n), N = (e) => _[m].findIndex((t, r) => {
891
+ let i = c(t);
892
+ return typeof i == "number" && (o[m].dates || p(o[m], r)) ? k(te(n, M, i), e) : k(i === null ? O : u(i), e);
893
+ }), P = /* @__PURE__ */ new Map(), F = new Map(h.map((e) => [e.item, e.formula])), I = (e) => {
894
+ let t = P.get(e);
895
+ return t === void 0 && P.set(e, t = P.size), t;
896
+ };
897
+ for (let e of h) if (ce(e.formula, (e, t) => {
898
+ if (t === null || !k(o[m].name, e)) return null;
899
+ let n = N(t);
900
+ return n < 0 ? null : (F.has(n) || I(n), "");
901
+ }) === null) return null;
902
+ let L = /* @__PURE__ */ new Map(), R = /* @__PURE__ */ new Map(), ee = d.map((e) => ({
903
+ column: g[e.field],
904
+ values: v[e.field],
905
+ fold: e.subtotal ?? "sum"
906
+ })), z = P.size;
907
+ for (let e = 0; e < T; e++) {
908
+ if (!A.every((t) => D(t, g[t.field][e])) || !w.every((t) => E(t, g[t][e]))) continue;
909
+ let t = "";
910
+ for (let n of S) t += g[n][e] + ",";
911
+ R.has(t) || R.set(t, e);
912
+ let n = P.get(g[m][e]);
913
+ if (n === void 0) continue;
914
+ let r = t;
915
+ for (let t of C) r += g[t][e] + ",";
916
+ let i = L.get(r);
917
+ i || (i = {
918
+ sums: d.map(() => Array(z).fill(0)),
919
+ errors: d.map(() => Array(z).fill(void 0))
920
+ }, L.set(r, i));
921
+ let { sums: a, errors: o } = i;
922
+ ee.forEach(({ column: t, values: r, fold: i }, s) => {
923
+ let l = c(r[t[e]]);
924
+ i === "sum" ? typeof l == "number" ? a[s][n] += l : G.isError(l) && (o[s][n] ??= l) : (i === "countNums" ? typeof l == "number" : l !== null) && (a[s][n] += 1);
925
+ });
926
+ }
927
+ let B = C.map((e) => {
928
+ let t = s[e]?.items;
929
+ return t ? t.flatMap((t) => t.item !== void 0 && t.type === void 0 && !t.missing && E(e, t.item) ? [t.item] : []) : _[e].map((e, t) => t);
930
+ });
931
+ if (B.reduce((e, t) => e * t.length, R.size) > 5e5) return null;
932
+ let V = [];
933
+ for (let [e, t] of R) {
934
+ let n = (e, r, i) => {
935
+ if (e !== B.length) for (let t of B[e]) n(e + 1, [...r, t], i + t + ",");
936
+ else V.push({
937
+ exemplar: t,
938
+ path: r,
939
+ key: i
940
+ });
941
+ };
942
+ n(0, [], e);
943
+ }
944
+ let H = V.length;
945
+ if (H === 0) return {
946
+ count: 0,
947
+ ids: o.map(() => []),
948
+ values: d.map(() => [])
949
+ };
950
+ let U = d.length * z, ne = (e, t) => e * z + t, W = (e, t) => U + e * h.length + t, re = [];
951
+ for (let e = 0; e < d.length; e++) for (let t = 0; t < z; t++) re.push(V.map(({ key: n }) => {
952
+ let r = L.get(n);
953
+ return r ? r.errors[e][t] ?? r.sums[e][t] : 0;
954
+ }));
955
+ let K = [];
956
+ for (let e = 0; e < d.length; e++) for (let t = 0; t < h.length; t++) {
957
+ let n = ce(h[t].formula, (t, n) => {
958
+ if (n === null) return null;
959
+ let r = N(n), i = h.findIndex((e) => e.item === r);
960
+ return le(i >= 0 ? W(e, i) : ne(e, P.get(r)));
961
+ });
962
+ if (n === null) return null;
963
+ K.push({
964
+ expression: n,
965
+ coords: ue(W(e, t), H)
966
+ });
967
+ }
968
+ let q = await r.evaluateBatch({
969
+ values: de(re, H),
970
+ formulas: K
971
+ }), J = o.map(() => []), Y = d.map(() => []), X = (e, t, n, r) => {
972
+ g.forEach((n, r) => {
973
+ let i = C.indexOf(r);
974
+ J[r].push(r === m ? t : i >= 0 ? e.path[i] : n[e.exemplar] ?? 0);
975
+ }), Y.forEach((e, t) => {
976
+ e.push(t === n ? r : null);
977
+ });
978
+ };
979
+ return V.forEach((e, t) => {
980
+ h.forEach(({ item: n }, r) => {
981
+ d.forEach((i, a) => {
982
+ let o = q[a * h.length + r].getValueAt(t, 0) ?? 0;
983
+ if ((i.subtotal ?? "sum") !== "sum" && typeof o == "number") for (let t = 0; t < Math.round(o); t++) X(e, n, a, 1);
984
+ else X(e, n, a, o);
985
+ });
986
+ });
987
+ }), {
988
+ count: J[0]?.length ?? 0,
989
+ ids: J,
990
+ values: Y
991
+ };
992
+ })(t, n, r, o, s) : void 0, _ = l.filter((t) => !e(t)).map((e, t) => ({
993
+ filter: e,
994
+ index: t
995
+ })).sort((e, t) => (e.filter.evalOrder ?? -1) - (t.filter.evalOrder ?? -1) || e.index - t.index), v = (n.recordCount ?? 0) + (g?.count ?? 0), y, b = t.rowFields ?? [];
996
+ for (let { filter: e } of _) {
997
+ let i = await Le(t, n, r, e.field, e.dataField, s, y, g, o);
998
+ if (!i) continue;
999
+ let a = /* @__PURE__ */ new Set();
1000
+ for (let [t, n] of i.groups) {
1001
+ let i = await Je(e.condition, n.totals, r, o);
1002
+ n.ids.forEach((e, n) => {
1003
+ i[n] || a.add(`${t}|${e}`);
1004
+ });
1005
+ }
1006
+ if (a.size === 0) continue;
1007
+ y ??= new Uint8Array(v).fill(3);
1008
+ let c = i.outer.map((e) => i.records[e]), l = i.records[e.field], u = b.includes(e.field) ? 1 : 2;
1009
+ for (let e = 0; e < v; e++) {
1010
+ if (!(y[e] & u)) continue;
1011
+ let t = "";
1012
+ for (let n = 0; n < c.length; n++) t += (n > 0 ? "," : "") + c[n][e];
1013
+ a.has(`${t}|${l[e]}`) && (y[e] &= ~u);
1014
+ }
1015
+ }
1016
+ let x = m && o ? await (async (e, t, n, r, i, o, s) => {
1017
+ let c = a.peek(), l = fe(e, t);
1018
+ if (!c || !l) return null;
1019
+ let u = Ie(e, t, n, s, l.operands);
1020
+ if (!u) return null;
1021
+ let d = (t) => (t ?? []).map((t) => ({
1022
+ field: t,
1023
+ form: t === Z ? e.form ?? "compact" : e.fields?.[t]?.form ?? "compact"
1024
+ }));
1025
+ return ze(c, l, e, u.items, u.records, u.values, d(e.rowFields), d(e.columnFields), u.n, i, o, r);
1026
+ })(t, n, r, o, s, y, g) : void 0;
1027
+ return {
1028
+ keep: s,
1029
+ ...y ? { records: y } : {},
1030
+ ...g ? { calculatedRecords: g } : {},
1031
+ ...x ? { fieldValues: x } : {}
1032
+ };
1033
+ }, qe = (e, t) => {
1034
+ let n = e.filters;
1035
+ if (!n) return e;
1036
+ let r = !1, i = n.map((e) => {
1037
+ let n = e.condition && _(e.condition, t);
1038
+ return n === e.condition ? e : (r = !0, {
1039
+ ...e,
1040
+ condition: n
1041
+ });
1042
+ });
1043
+ return r ? {
1044
+ ...e,
1045
+ filters: i
1046
+ } : e;
1047
+ }, Je = async (e, t, n, i) => {
1048
+ let a = t.length, o = new Uint8Array(a);
1049
+ if (a === 0) return o;
1050
+ let c = new s();
1051
+ for (let e = 0; e < a; e++) t[e] !== null && c.setValueAt(e, 0, t[e]);
1052
+ let l = !1;
1053
+ return await r({
1054
+ conditions: [e],
1055
+ runtime: n,
1056
+ calculation: i ?? null,
1057
+ values: c,
1058
+ coords: {
1059
+ rowStart: 0,
1060
+ rowEnd: a - 1,
1061
+ colStart: 0,
1062
+ colEnd: 0
1063
+ },
1064
+ onTrue: (e) => {
1065
+ l = !0, o[e.rowIndex] = 1;
1066
+ },
1067
+ onFalse: () => {
1068
+ l = !0;
1069
+ },
1070
+ onBlank: (e) => {
1071
+ l = !0;
1072
+ for (let n = 0; n < a; n++) t[n] === null && e(n, 0) && (o[n] = 1);
1073
+ }
1074
+ }), l || o.fill(1), o;
1075
+ }, Ye = (e, t, n, r, i) => {
1076
+ let a = e.fields?.[r], o = /* @__PURE__ */ new Map();
1077
+ for (let e of a?.items ?? []) e.item !== void 0 && e.type === void 0 && e.name !== void 0 && o.set(e.item, e.name);
1078
+ let s = a?.numberFormat ?? t.fields?.[r]?.numberFormat, l = j(s, i), u = (e) => s === void 0 ? j(L(t.fields?.[r], e), i) : l, d = Array(n.length);
1079
+ for (let e = 0; e < n.length; e++) {
1080
+ let a = o.get(e);
1081
+ if (a !== void 0) {
1082
+ d[e] = a;
1083
+ continue;
1084
+ }
1085
+ let s = c(n[e]);
1086
+ s === null ? d[e] = O : typeof s == "number" ? d[e] = te(i, p(t.fields?.[r], e) ? u(e) : l, s) : typeof s == "boolean" ? d[e] = s ? "TRUE" : "FALSE" : G.isError(s) ? d[e] = s.getLabel() : d[e] = String(s);
1087
+ }
1088
+ return d;
1089
+ }, Xe = (e) => {
1090
+ let t = e.getCoords(), n = t.colEnd - t.colStart + 1, r = t.rowEnd - t.rowStart, i = e.getWorksheet(), a = i.getRange({
1091
+ rowStart: t.rowStart,
1092
+ rowEnd: t.rowStart,
1093
+ colStart: t.colStart,
1094
+ colEnd: t.colEnd
1095
+ }).getValues()[0] ?? [], o = [];
1096
+ for (let e = 0; e < n; e++) {
1097
+ let n = a[e] ?? null, s = new U(), c = new Uint32Array(r), l, u, d = !1, f = s.values;
1098
+ if (r > 0) {
1099
+ let n = i.getRange({
1100
+ rowStart: t.rowStart + 1,
1101
+ rowEnd: t.rowEnd,
1102
+ colStart: t.colStart + e,
1103
+ colEnd: t.colStart + e
1104
+ });
1105
+ s.fill(n.getValuesRange(), c), l = Qe(n, r);
1106
+ let a = $e(n, t.rowStart + 1, c, s.values);
1107
+ d = a.dates, u = a.dateIds, f = a.values;
1108
+ }
1109
+ o.push({
1110
+ header: Ze(n),
1111
+ ids: c,
1112
+ values: f,
1113
+ numberFormat: l,
1114
+ dates: d,
1115
+ ...u ? { dateIds: u } : {}
1116
+ });
1117
+ }
1118
+ return {
1119
+ columns: o,
1120
+ recordCount: r
1121
+ };
1122
+ }, Ze = (e) => e == null ? "" : typeof e == "boolean" ? e ? "TRUE" : "FALSE" : G.isError(e) ? e.getLabel() : String(e), Qe = (e, t) => {
1123
+ let n = [...e.getRegions("numberFormat")];
1124
+ if (n.length !== 1 || n[0].getRowCount() !== t) return;
1125
+ let r = n[0].getCell().getStyle().getNumberFormat();
1126
+ return r && r !== "General" ? r : void 0;
1127
+ }, $e = (e, t, n, r) => {
1128
+ let i = [];
1129
+ for (let n of e.getRegions("dateFormat")) {
1130
+ let { rowStart: e, rowEnd: r } = n.getCoords();
1131
+ i.push([e - t, r - t]);
1132
+ }
1133
+ if (i.length === 0) return {
1134
+ dates: !1,
1135
+ values: r
1136
+ };
1137
+ i.sort((e, t) => e[0] - t[0]);
1138
+ let a = !1, o = !1;
1139
+ for (let e = 0; e < n.length && (!a || !o); e++) typeof r[n[e]] == "number" && (et(i, e) ? a = !0 : o = !0);
1140
+ if (!a || !o) return {
1141
+ dates: a,
1142
+ values: r
1143
+ };
1144
+ let s = r.slice(), c = /* @__PURE__ */ new Map();
1145
+ for (let e = 0; e < n.length; e++) {
1146
+ let t = n[e];
1147
+ if (typeof r[t] != "number" || !et(i, e)) continue;
1148
+ let a = c.get(t);
1149
+ a === void 0 && (a = s.length, s.push(r[t]), c.set(t, a)), n[e] = a;
1150
+ }
1151
+ return {
1152
+ dates: !1,
1153
+ dateIds: new Set(c.values()),
1154
+ values: s
1155
+ };
1156
+ }, et = (e, t) => {
1157
+ let n = 0, r = e.length - 1;
1158
+ for (; n <= r;) {
1159
+ let i = n + r >> 1, [a, o] = e[i];
1160
+ if (t < a) r = i - 1;
1161
+ else {
1162
+ if (!(t > o)) return !0;
1163
+ n = i + 1;
1164
+ }
1165
+ }
1166
+ return !1;
1167
+ }, tt = (e) => e == null ? {
1168
+ t: "z",
1169
+ v: 0
1170
+ } : G.isError(e) ? {
1171
+ t: "e",
1172
+ v: e.getCode()
1173
+ } : e, nt = (e, t) => (t && typeof e == "number" ? "date:" : "") + D(c(e)), rt = (e, t, n, r = !1) => {
1174
+ let a = e.fields ?? [], o = P(e.items, a.length), s = /\smissingItemsLimit="0"/.test(e.rest ?? ""), l = ((e) => {
1175
+ let t = /* @__PURE__ */ new Set();
1176
+ return e.map((e, n) => {
1177
+ let r = e === "" ? `Field${n + 1}` : e, i = r;
1178
+ for (let e = 2; t.has(i.toLocaleLowerCase()); e++) i = `${r}${e}`;
1179
+ return t.add(i.toLocaleLowerCase()), i;
1180
+ });
1181
+ })(t.columns.map((e) => e.header)), u = /* @__PURE__ */ new Map();
1182
+ a.forEach((e, t) => {
1183
+ let n = e.name.toLocaleLowerCase();
1184
+ e.noRecords || u.has(n) || u.set(n, t);
1185
+ });
1186
+ let d = t.recordCount, f = a.map(() => -1), m = a.map((e, t) => o[t].map(() => -1)), h = [], g = [], _ = [], v = [], y = [], b = [], x = [], S = (e, t, n) => {
1187
+ v[t] = n.items, b[t] = n.items.length, x[t] = !0, m[e] = ((e, t) => {
1188
+ let n = /* @__PURE__ */ new Map();
1189
+ return t.forEach((e, t) => {
1190
+ n.set(e, t);
1191
+ }), e.map((r, i) => i === 0 ? 0 : i === e.length - 1 ? t.length - 1 : n.get(r) ?? -1);
1192
+ })(a[e].group.items, n.items);
1193
+ };
1194
+ t.columns.forEach((e, t) => {
1195
+ let n = u.get(l[t].toLocaleLowerCase());
1196
+ n !== void 0 && (u.delete(l[t].toLocaleLowerCase()), f[n] = t);
1197
+ let i = new Int32Array(e.values.length).fill(-1), C = [], w = [], T = Array(d);
1198
+ for (let t = 0; t < d; t++) {
1199
+ let n = e.ids[t], r = i[n];
1200
+ r < 0 && (r = i[n] = C.length, C.push(tt(e.values[n])), w.push(e.dates || !!e.dateIds?.has(n))), T[t] = r;
1201
+ }
1202
+ let E = (e) => n !== void 0 && (!!a[n].dates || p(a[n], e)), D = C.length, O = n === void 0 ? C.every((e) => typeof e == "number" || typeof e == "object" && e?.t === "z") : !0 === a[n].inline, k = [];
1203
+ if (n !== void 0 && O) {
1204
+ let e = /* @__PURE__ */ new Map();
1205
+ for (let t = 0; t < D; t++) e.set(nt(C[t], w[t]), t);
1206
+ o[n].forEach((t, r) => {
1207
+ m[n][r] = e.get(nt(t, E(r))) ?? -1;
1208
+ });
1209
+ } else if (n !== void 0) {
1210
+ let e = /* @__PURE__ */ new Map();
1211
+ for (let t = 0; t < D; t++) e.set(nt(C[t], w[t]), t);
1212
+ let t = new Set(a[n].calculatedItems?.map((e) => e.item));
1213
+ o[n].forEach((r, i) => {
1214
+ if (t.has(i)) return;
1215
+ let a = nt(r, E(i)), o = e.get(a);
1216
+ o !== void 0 || s || E(i) || (o = C.length, C.push(r), w.push(E(i)), k.push(o), e.set(a, o)), m[n][i] = o ?? -1;
1217
+ });
1218
+ }
1219
+ let j = { name: l[t] };
1220
+ O && (j.inline = !0), e.numberFormat !== void 0 && (j.numberFormat = e.numberFormat);
1221
+ let M = [], N = !1;
1222
+ C.forEach((e, t) => {
1223
+ typeof e == "number" && (w[t] ? M.push(t) : N = !0);
1224
+ }), M.length > 0 && !N ? j.dates = !0 : M.length > 0 && (j.dateItems = M), y[t] = j.dateItems ? new Set(j.dateItems) : void 0, k.length > 0 && (j.unused = k);
1225
+ let P = n === void 0 ? void 0 : a[n].rest;
1226
+ P && (j.rest = P);
1227
+ let F = n === void 0 ? void 0 : a[n].calculatedItems;
1228
+ F?.length && (j.calculatedItems = F.map(({ item: e, formula: t }) => {
1229
+ let r = C.length;
1230
+ return C.push(o[n][e]), m[n][e] = r, {
1231
+ item: r,
1232
+ formula: t
1233
+ };
1234
+ })), h.push(j), g.push([t, [[0, C]]]), _.push([t, [[0, T]]]), v.push(C), b.push(D), x.push(!1);
1235
+ let I = n === void 0 ? void 0 : a[n].group;
1236
+ if (I?.range && I.base === n) {
1237
+ let e = se(I, C.slice(0, D).map(c), r);
1238
+ e ? (j.group = {
1239
+ ...e,
1240
+ base: t
1241
+ }, S(n, t, e)) : m[n] = o[n].map(() => -1);
1242
+ } else I && !A(a[n]) && (j.group = I);
1243
+ }), a.forEach((e, t) => {
1244
+ if (!e.noRecords) return;
1245
+ if (i(e)) return f[t] = h.length, h.push(e), v.push([]), b.push(0), void x.push(!1);
1246
+ let n = e.group;
1247
+ if (!n) return;
1248
+ let a = f[n.base];
1249
+ if (a === void 0 || a < 0) return;
1250
+ let o = v[a], s, l = [];
1251
+ if (n.range) s = se(n, o.slice(0, b[a]).map(c), r);
1252
+ else {
1253
+ let e = it(n, m[n.base], o, h[a]);
1254
+ s = e.group, l = e.itemMap;
1255
+ }
1256
+ if (!s) return;
1257
+ let u = h.length;
1258
+ f[t] = u, h.push({
1259
+ ...e,
1260
+ group: {
1261
+ ...s,
1262
+ base: a
1263
+ }
1264
+ }), v.push(s.items), y[u] = s.dateItems ? new Set(s.dateItems) : void 0, b.push(s.items.length), x.push(!1), n.range ? S(t, u, s) : m[t] = l;
1265
+ }), h.forEach((e, t) => {
1266
+ let n = e.group;
1267
+ if (n?.parent === void 0) return;
1268
+ let r = f[n.parent], { parent: i, ...a } = n;
1269
+ r !== void 0 && r >= 0 ? e.group = {
1270
+ ...n,
1271
+ parent: r
1272
+ } : A(e) ? e.group = a : delete e.group, e.group && !A(e) && (e.group = {
1273
+ ...e.group,
1274
+ base: t
1275
+ });
1276
+ });
1277
+ let { cacheId: C, part: w, partFormats: T, fields: E, items: D, records: O, ...k } = e;
1278
+ return {
1279
+ model: {
1280
+ ...k,
1281
+ source: n ?? e.source,
1282
+ fields: h,
1283
+ items: g,
1284
+ records: _,
1285
+ recordCount: d
1286
+ },
1287
+ remap: {
1288
+ fields: f,
1289
+ items: m,
1290
+ newItems: v,
1291
+ usedCounts: b,
1292
+ inItemOrder: x,
1293
+ dateItems: y
1294
+ }
1295
+ };
1296
+ }, it = (e, t, n, r) => {
1297
+ let i = /* @__PURE__ */ new Set(), a = Array(n.length).fill(-1);
1298
+ (e.discrete ?? []).forEach((e, n) => {
1299
+ let r = t?.[n] ?? -1;
1300
+ r < 0 || (a[r] = e, i.add(e));
1301
+ });
1302
+ let o = [], s = [], c = new Set(e.dateItems), l = e.items.map((e, t) => i.has(t) ? (c.has(t) && s.push(o.length), o.push(e), o.length - 1) : -1), u = a.map((e, t) => e >= 0 ? l[e] : ((r.dates || p(r, t)) && s.push(o.length), o.push(n[t]), o.length - 1)), { dateItems: d, ...f } = e;
1303
+ return {
1304
+ group: {
1305
+ ...f,
1306
+ items: o,
1307
+ discrete: u,
1308
+ ...s.length > 0 ? { dateItems: s } : {}
1309
+ },
1310
+ itemMap: l
1311
+ };
1312
+ }, at = (e, t, n = !1, r = !1) => {
1313
+ let i = (e, t) => e === null ? 5 : typeof e == "number" ? t ? 3 : 0 : typeof e == "string" ? 1 : typeof e == "boolean" ? 2 : 4, a = i(e, n), o = i(t, r);
1314
+ return a === o ? a === 0 || a === 3 ? e - t : a === 1 ? e.localeCompare(t, void 0, { sensitivity: "base" }) : a === 2 ? Number(e) - Number(t) : a === 4 ? e.getCode() - t.getCode() : 0 : a - o;
1315
+ }, ot = (e, t) => {
1316
+ let n = e.fields ?? [], r = t.newItems.length, i = (e) => e < 0 ? e : t.fields[e] ?? -1, a = (e) => e < 0 || i(e) >= 0, o = e.dataFields ?? [], s = [], c = [];
1317
+ o.forEach((e) => {
1318
+ if (!a(e.field)) return void s.push(-1);
1319
+ s.push(c.length);
1320
+ let t = {
1321
+ ...e,
1322
+ field: i(e.field)
1323
+ };
1324
+ e.baseField !== void 0 && (a(e.baseField) ? t.baseField = i(e.baseField) : delete t.baseField), c.push(t);
1325
+ });
1326
+ let l = n.map(() => null), u = [];
1327
+ for (let e = 0; e < r; e++) u.push({});
1328
+ n.forEach((e, n) => {
1329
+ let r = i(n);
1330
+ if (r < 0) return;
1331
+ let a = { ...e };
1332
+ if (e.sort?.dataField !== void 0) {
1333
+ let t = s[e.sort.dataField];
1334
+ a.sort = t >= 0 ? {
1335
+ ...e.sort,
1336
+ dataField: t
1337
+ } : { order: e.sort.order };
1338
+ }
1339
+ if (e.items) {
1340
+ let { items: i, positions: o } = st(e, t.items[n], t.newItems[r], t.usedCounts[r], t.inItemOrder[r], t.dateItems[r]);
1341
+ a.items = i, l[n] = o;
1342
+ }
1343
+ u[r] = a;
1344
+ }), n.forEach((e, t) => {
1345
+ let n = e.sort?.scope, r = i(t);
1346
+ if (!n || r < 0 || u[r].sort?.scope === void 0) return;
1347
+ let a = n.items.map((e) => ({
1348
+ field: i(e.field),
1349
+ item: l[e.field]?.[e.item] ?? -1
1350
+ }));
1351
+ a.some((e) => e.field < 0 || e.item < 0) ? delete u[r].sort : u[r].sort = {
1352
+ ...u[r].sort,
1353
+ scope: {
1354
+ ...n,
1355
+ items: a
1356
+ }
1357
+ };
1358
+ });
1359
+ let d = (e) => {
1360
+ if (!e) return;
1361
+ let t = e.filter(a).map(i);
1362
+ return c.length < 2 && (t = t.filter((e) => e !== -2)), t.length > 0 ? t : void 0;
1363
+ }, f = {
1364
+ ...e,
1365
+ fields: u
1366
+ };
1367
+ Q(f, "rowFields", d(e.rowFields)), Q(f, "columnFields", d(e.columnFields)), Q(f, "dataFields", c.length > 0 ? c : void 0), o.forEach((e, t) => {
1368
+ let n = s[t];
1369
+ if (n < 0 || e.baseField === void 0 || typeof e.baseItem != "number") return;
1370
+ let r = l[e.baseField]?.[e.baseItem];
1371
+ r !== void 0 && r >= 0 && (c[n].baseItem = r);
1372
+ });
1373
+ let p = (e.pageFields ?? []).flatMap((e) => {
1374
+ if (!a(e.field)) return [];
1375
+ let t = { field: i(e.field) };
1376
+ if (e.item !== void 0) {
1377
+ let n = lt(u[t.field].items ?? [], l[e.field]?.[e.item] ?? -1);
1378
+ n !== void 0 && (t.item = n);
1379
+ }
1380
+ return [t];
1381
+ });
1382
+ Q(f, "pageFields", p.length > 0 ? p : void 0);
1383
+ let m = (e.filters ?? []).flatMap((e) => {
1384
+ if (!a(e.field)) return [];
1385
+ let t = {
1386
+ ...e,
1387
+ field: i(e.field)
1388
+ };
1389
+ if (e.dataField !== void 0) {
1390
+ let n = s[e.dataField];
1391
+ if (n === void 0 || n < 0) return [];
1392
+ t.dataField = n;
1393
+ }
1394
+ return [t];
1395
+ });
1396
+ Q(f, "filters", m.length > 0 ? m : void 0);
1397
+ let h = (e) => ut(e, i, a, l, s), g = (e.formats ?? []).flatMap((e) => {
1398
+ let t = h(e.area);
1399
+ return t ? [{
1400
+ ...e,
1401
+ area: t
1402
+ }] : [];
1403
+ });
1404
+ Q(f, "formats", g.length > 0 ? g : void 0);
1405
+ let _ = (e.conditionalFormats ?? []).flatMap((e) => {
1406
+ let t = e.areas.flatMap((e) => {
1407
+ let t = h(e);
1408
+ return t ? [t] : [];
1409
+ });
1410
+ return t.length > 0 ? [{
1411
+ ...e,
1412
+ areas: t
1413
+ }] : [];
1414
+ });
1415
+ return Q(f, "conditionalFormats", _.length > 0 ? _ : void 0), f;
1416
+ }, Q = (e, t, n) => {
1417
+ n === void 0 ? delete e[t] : e[t] = n;
1418
+ }, st = (e, t, n, r, i = !1, a) => {
1419
+ let s = e.items ?? [], u = [], d = [], f = /* @__PURE__ */ new Set();
1420
+ for (let e of s) {
1421
+ if (!o(e)) {
1422
+ d.push(u.length), u.push(e);
1423
+ continue;
1424
+ }
1425
+ let n = t[e.item] ?? -1;
1426
+ if (n < 0) {
1427
+ d.push(-1);
1428
+ continue;
1429
+ }
1430
+ f.add(n);
1431
+ let i = {
1432
+ ...e,
1433
+ item: n
1434
+ };
1435
+ n >= r && !e.calculated ? i.missing = !0 : delete i.missing, d.push(u.length), u.push(i);
1436
+ }
1437
+ let p = [];
1438
+ for (let e = 0; e < n.length; e++) f.has(e) || p.push(e);
1439
+ if (i) {
1440
+ let t = e.sort?.dataField === void 0 && e.sort?.order === "descending", n = !e.includeNewItemsInFilter && s.some((e) => e.hidden), r = u.map((e, t) => ({
1441
+ item: e,
1442
+ at: t
1443
+ })), i = r.filter((e) => !o(e.item)), a = [...[...r.filter((e) => o(e.item)), ...p.map((e) => ({
1444
+ item: n ? {
1445
+ item: e,
1446
+ hidden: !0
1447
+ } : { item: e },
1448
+ at: -1
1449
+ }))].sort((e, n) => t ? n.item.item - e.item.item : e.item.item - n.item.item), ...i], c = new Map(a.map((e, t) => [e.at, t]));
1450
+ return {
1451
+ items: a.map((e) => e.item),
1452
+ positions: d.map((e) => e < 0 ? e : c.get(e) ?? -1)
1453
+ };
1454
+ }
1455
+ if (p.length === 0) return {
1456
+ items: u,
1457
+ positions: d
1458
+ };
1459
+ let m = !e.includeNewItemsInFilter && s.some((e) => e.hidden), h = (e) => m ? {
1460
+ item: e,
1461
+ hidden: !0
1462
+ } : { item: e };
1463
+ if (e.sort && e.sort.dataField === void 0) {
1464
+ let t = e.sort.order === "descending", r = (e, t) => at(l(e, n), c(n[t]), e.name === void 0 && a?.has(e.item), a?.has(t));
1465
+ for (let e of p) {
1466
+ let n = h(e), i = u.findIndex((n) => o(n) && (t ? r(n, e) < 0 : r(n, e) > 0));
1467
+ i < 0 && (i = ct(u)), u.splice(i, 0, n);
1468
+ for (let e = 0; e < d.length; e++) d[e] >= i && d[e]++;
1469
+ }
1470
+ } else {
1471
+ let e = ct(u);
1472
+ u.splice(e, 0, ...p.map(h));
1473
+ for (let t = 0; t < d.length; t++) d[t] >= e && (d[t] += p.length);
1474
+ }
1475
+ return {
1476
+ items: u,
1477
+ positions: d
1478
+ };
1479
+ }, ct = (e) => {
1480
+ let t = e.findIndex((e) => !o(e));
1481
+ return t < 0 ? e.length : t;
1482
+ }, lt = (e, t) => {
1483
+ if (!(t < 0)) for (let n = 0; n < e.length; n++) {
1484
+ let r = (t + n) % e.length, i = e[r];
1485
+ if (o(i) && !i.missing) return r;
1486
+ }
1487
+ }, ut = (e, t, n, r, i) => {
1488
+ let a = { ...e };
1489
+ if (e.field !== void 0) {
1490
+ if (!n(e.field)) return null;
1491
+ a.field = t(e.field);
1492
+ }
1493
+ if (e.references) {
1494
+ let o = [];
1495
+ for (let a of e.references) {
1496
+ if (!n(a.field)) return null;
1497
+ let e = {
1498
+ ...a,
1499
+ field: t(a.field)
1500
+ };
1501
+ if (a.items && !a.byPosition && !a.relative) {
1502
+ let t = a.field === -2 ? i : r[a.field];
1503
+ if (t) {
1504
+ let n = a.items.map((e) => t[e] ?? -1);
1505
+ if (n.some((e) => e < 0)) return null;
1506
+ e.items = n;
1507
+ }
1508
+ }
1509
+ o.push(e);
1510
+ }
1511
+ a.references = o;
1512
+ }
1513
+ return a;
1514
+ }, dt = (e, t, n) => {
1515
+ let r = e.fields ?? [], i = r[t]?.items ?? [], a = Array(i.length);
1516
+ n.forEach((e, t) => {
1517
+ a[e] = t;
1518
+ });
1519
+ let o = {
1520
+ ...e,
1521
+ fields: r.map((e, r) => {
1522
+ if (r === t) return {
1523
+ ...e,
1524
+ items: n.map((e) => i[e])
1525
+ };
1526
+ let o = e.sort?.scope;
1527
+ if (!o?.items.some((e) => e.field === t)) return e;
1528
+ let s = o.items.map((e) => e.field === t ? {
1529
+ ...e,
1530
+ item: a[e.item] ?? e.item
1531
+ } : e);
1532
+ return {
1533
+ ...e,
1534
+ sort: {
1535
+ ...e.sort,
1536
+ scope: {
1537
+ ...o,
1538
+ items: s
1539
+ }
1540
+ }
1541
+ };
1542
+ })
1543
+ };
1544
+ e.pageFields?.some((e) => e.field === t && e.item !== void 0) && (o.pageFields = e.pageFields.map((e) => e.field === t && e.item !== void 0 ? {
1545
+ ...e,
1546
+ item: a[e.item]
1547
+ } : e)), e.dataFields?.some((e) => e.baseField === t && typeof e.baseItem == "number") && (o.dataFields = e.dataFields.map((e) => e.baseField === t && typeof e.baseItem == "number" ? {
1548
+ ...e,
1549
+ baseItem: a[e.baseItem] ?? e.baseItem
1550
+ } : e));
1551
+ let s = r.map((e, n) => n === t ? a : null), c = (e.dataFields ?? []).map((e, t) => t), l = (e) => ut(e, (e) => e, () => !0, s, c) ?? e;
1552
+ return e.formats && (o.formats = e.formats.map((e) => ({
1553
+ ...e,
1554
+ area: l(e.area)
1555
+ }))), e.conditionalFormats && (o.conditionalFormats = e.conditionalFormats.map((e) => ({
1556
+ ...e,
1557
+ areas: e.areas.map(l)
1558
+ }))), o;
1559
+ }, ft = (e, t, n, r) => {
1560
+ let i = (e.fields ?? [])[n]?.items ?? [], a = f(t)[n] ?? [], s = t.fields?.[n], c = s?.group?.range !== void 0, u = (e) => e.name === void 0 && p(s, e.item), d = i.map((e, t) => ({
1561
+ item: e,
1562
+ at: t
1563
+ })), m = d.filter((e) => o(e.item));
1564
+ m.sort((e, t) => c ? e.item.item - t.item.item : at(l(e.item, a), l(t.item, a), u(e.item), u(t.item))), r === "descending" && m.reverse();
1565
+ let h = 0, g = dt(e, n, d.map((e) => o(e.item) ? m[h++] : e).map((e) => e.at));
1566
+ return {
1567
+ ...g,
1568
+ fields: g.fields.map((e, t) => t === n ? {
1569
+ ...e,
1570
+ sort: { order: r }
1571
+ } : e)
1572
+ };
1573
+ }, pt = (e, t, n) => {
1574
+ let r = e.fields?.[t]?.items?.[n];
1575
+ if (!r || !o(r)) throw new K(q("error.pivotTable.changePart"));
1576
+ return r;
1577
+ }, mt = (e, t, n, r, i) => {
1578
+ let a = pt(e, n, r), s = e.fields[n].items, l = f(t)[n] ?? [], d = (e) => {
1579
+ let t = c(l[e.item]);
1580
+ return t === null ? O : u(t);
1581
+ };
1582
+ if (s.some((e, t) => t !== r && o(e) && k(e.name ?? d(e), i))) throw new K(q("error.pivotTable.itemNameExists", { name: i }));
1583
+ let { name: p, ...m } = a, h = i === d(a) ? m : {
1584
+ ...a,
1585
+ name: i
1586
+ };
1587
+ if (h.name === a.name) return e;
1588
+ let g = {
1589
+ ...e,
1590
+ fields: e.fields.map((e, t) => t === n ? {
1591
+ ...e,
1592
+ items: s.map((e, t) => t === r ? h : e)
1593
+ } : e)
1594
+ }, _ = e.fields[n].sort;
1595
+ return _ && _.dataField === void 0 ? ft(g, t, n, _.order) : g;
1596
+ }, ht = (e, t, n, r) => {
1597
+ pt(e, t, n);
1598
+ let i = e.fields[t].items.map((e, t) => t).filter((e) => e !== n);
1599
+ i.splice(r, 0, n);
1600
+ let a = e.fields[t].sort;
1601
+ if (!a && i.every((e, t) => e === t)) return e;
1602
+ let o = dt(e, t, i);
1603
+ return a ? {
1604
+ ...o,
1605
+ fields: o.fields.map((e, n) => {
1606
+ if (n !== t) return e;
1607
+ let { sort: r, ...i } = e;
1608
+ return i;
1609
+ })
1610
+ } : o;
1611
+ }, gt = (e, t, n, r) => {
1612
+ let i = u(r), a = e.fields, s = t.fields, l = e.dataFields ?? [], d = f(t), p = (e, t) => {
1613
+ if (t.name !== void 0) return t.name;
1614
+ let n = c(d[e][t.item]);
1615
+ return n === null ? O : u(n);
1616
+ }, m = (n) => {
1617
+ if (n.field !== void 0 && i === (a[n.field].name ?? s[n.field].name)) return;
1618
+ let r = n.field === void 0 ? e : {
1619
+ ...e,
1620
+ fields: a.map((e, t) => t === n.field ? {
1621
+ ...e,
1622
+ name: "\0"
1623
+ } : e)
1624
+ };
1625
+ if (v(r, t, i, n.data) !== i) throw new K(q("error.pivotTable.fieldNameExists"));
1626
+ };
1627
+ switch (n.kind) {
1628
+ case "item": {
1629
+ let { field: r, rank: s } = n;
1630
+ pt(e, r, s);
1631
+ let c = a[r].items.findIndex((e, t) => t !== s && o(e) && k(p(r, e), i));
1632
+ return c >= 0 ? ht(e, r, c, s) : mt(e, t, r, s, i);
1633
+ }
1634
+ case "fieldCaption": {
1635
+ let { field: t } = n;
1636
+ return m({ field: t }), ((t, n) => ({
1637
+ ...e,
1638
+ fields: a.map((e, r) => r === t ? n(e) : e)
1639
+ }))(t, (e) => {
1640
+ let { name: n, ...r } = e;
1641
+ return i === s[t].name ? r : {
1642
+ ...e,
1643
+ name: i
1644
+ };
1645
+ });
1646
+ }
1647
+ case "dataCaption": {
1648
+ let { data: t } = n;
1649
+ return m({ data: t }), {
1650
+ ...e,
1651
+ dataFields: l.map((e, n) => n === t ? {
1652
+ ...e,
1653
+ name: i
1654
+ } : e)
1655
+ };
1656
+ }
1657
+ case "rowHeader": return {
1658
+ ...e,
1659
+ rowHeaderCaption: i
1660
+ };
1661
+ case "columnHeader": return {
1662
+ ...e,
1663
+ columnHeaderCaption: i
1664
+ };
1665
+ case "grandTotal": return {
1666
+ ...e,
1667
+ grandTotalCaption: i
1668
+ };
1669
+ case "pageItem": {
1670
+ let t = e.pageFields, r = t[n.page], s;
1671
+ if (!k(i, "(All)") && (s = (a[r.field].items ?? []).findIndex((e) => o(e) && k(p(r.field, e), i)), s < 0)) throw new K(q("error.pivotTable.notAnItem", { name: i }));
1672
+ let { item: c, ...l } = r, u = s === void 0 ? l : {
1673
+ ...r,
1674
+ item: s
1675
+ };
1676
+ return {
1677
+ ...e,
1678
+ pageFields: t.map((e, t) => t === n.page ? u : e)
1679
+ };
1680
+ }
1681
+ }
1682
+ }, _t = (e, t, n) => rt({
1683
+ cacheId: 0,
1684
+ fields: []
1685
+ }, e, t, n).model, vt = (e, t) => t.some((t) => e.fields?.[t]?.inline) ? {
1686
+ ...e,
1687
+ fields: e.fields.map((e, n) => {
1688
+ if (!e.inline || !t.includes(n)) return e;
1689
+ let { inline: r, ...i } = e;
1690
+ return i;
1691
+ })
1692
+ } : e, yt = (e) => [
1693
+ ...e.rowFields ?? [],
1694
+ ...e.columnFields ?? [],
1695
+ ...(e.pageFields ?? []).map((e) => e.field)
1696
+ ].filter((e) => e >= 0), bt = (e, t) => {
1697
+ let n = e.fields[t], r = f(e)[t], i = r.map((e, t) => t);
1698
+ A(n) || i.sort((e, t) => at(c(r[e]), c(r[t]), p(n, e), p(n, t)));
1699
+ let a = new Set(n.calculatedItems?.map((e) => e.item)), o = new Set(n.unused);
1700
+ return [...i.map((e) => ({
1701
+ item: e,
1702
+ ...a.has(e) ? { calculated: !0 } : {},
1703
+ ...o.has(e) ? { missing: !0 } : {}
1704
+ })), { type: "default" }];
1705
+ }, xt = (e) => {
1706
+ if (!(typeof e == "number" ? B(e) !== void 0 : e !== "" && V.isValidFormat(e))) throw new K(q("error.pivotTable.notANumberFormat", { name: String(e) }));
1707
+ }, St = (e, t, n, r) => {
1708
+ let i = r?.function ?? ((e, t) => C(e, t) === "number" ? "sum" : "count")(t.fields[n], f(t)[n]), a = S[i];
1709
+ if (!a) throw new K(q("error.pivotTable.notAFunction", { name: i }));
1710
+ let o = r?.name;
1711
+ if (o === void 0) o = v(e, t, `${a} of ${g(e, t, n)}`);
1712
+ else if (v(e, t, o) !== o) throw new K(q("error.pivotTable.fieldNameExists"));
1713
+ let s = {
1714
+ name: o,
1715
+ field: n,
1716
+ baseField: 0,
1717
+ baseItem: 0
1718
+ };
1719
+ return i !== "sum" && (s.subtotal = i), r?.numberFormat !== void 0 && (xt(r.numberFormat), s.numberFormat = r.numberFormat), s;
1720
+ }, Ct = (e, t) => {
1721
+ let n = e.fields ?? [], r = (e) => {
1722
+ let t = n.findIndex((t) => k(t.name, e));
1723
+ if (t < 0) throw new K(q("error.pivotTable.notAField", { name: e }));
1724
+ return t;
1725
+ }, i = /* @__PURE__ */ new Map(), a = (e, t) => {
1726
+ for (let n of e ?? []) {
1727
+ let e = r(n);
1728
+ i.delete(e), i.set(e, t);
1729
+ }
1730
+ };
1731
+ a(t?.rows, "row"), a(t?.columns, "column"), a(t?.pages, "page");
1732
+ let o = (e) => [...i].filter(([, t]) => t === e).map(([e]) => e), s = [];
1733
+ for (let n of t?.values ?? []) {
1734
+ let { field: t, ...i } = typeof n == "string" ? { field: n } : n;
1735
+ s.push(St({ dataFields: s }, e, r(t), i));
1736
+ }
1737
+ let c = new Set(s.map((e) => e.field)), l = t?.form && t.form !== "compact" ? t.form : void 0, u = n.map((t, n) => {
1738
+ let r = {}, a = i.get(n);
1739
+ return a && (r.axis = a, r.items = bt(e, n)), c.has(n) && (r.dataField = !0), l && (r.form = l), t.dates && t.numberFormat !== void 0 && (r.numberFormat = t.numberFormat), r;
1740
+ }), d = o("column");
1741
+ s.length > 1 && d.push(-2);
1742
+ let f = {
1743
+ fields: u,
1744
+ style: {
1745
+ name: t?.style ?? "PivotStyleLight16",
1746
+ showRowHeaders: !0,
1747
+ showColumnHeaders: !0,
1748
+ showRowStripes: !1,
1749
+ showColumnStripes: !1,
1750
+ showLastColumn: !0
1751
+ }
1752
+ }, p = o("row");
1753
+ p.length > 0 && (f.rowFields = p), d.length > 0 && (f.columnFields = d);
1754
+ let m = o("page");
1755
+ return m.length > 0 && (f.pageFields = m.map((e) => ({ field: e }))), s.length > 0 && (f.dataFields = s), l && (f.form = l), f;
1756
+ }, wt = (e, t) => t.map((t) => {
1757
+ let n = t.sort?.scope;
1758
+ if (!n) return t;
1759
+ let r = ((t.axis === b.Axis.Row ? e.columnFields : t.axis === b.Axis.Column ? e.rowFields : void 0) ?? []).filter((e) => e !== -2);
1760
+ if (!n.items.every((e, t) => r[t] === e.field)) {
1761
+ let { sort: e, ...n } = t;
1762
+ return n;
1763
+ }
1764
+ let { subtotal: i, ...a } = n;
1765
+ return {
1766
+ ...t,
1767
+ sort: {
1768
+ ...t.sort,
1769
+ scope: n.items.length < r.length ? {
1770
+ ...a,
1771
+ subtotal: !0
1772
+ } : a
1773
+ }
1774
+ };
1775
+ }), Tt = (e, r, i, a, o) => {
1776
+ let s = b.Axis, c = r.fields?.[i], l = e.fields?.[i]?.axis ?? null;
1777
+ if (a === s.Values) throw new K(q("error.pivotTable.valuesNotAnAxis"));
1778
+ if (a === null) {
1779
+ if (l === null) return e;
1780
+ } else if (c?.formula !== void 0 || a === s.Page && (c?.calculatedItems?.length ?? 0) > 0) throw new K(q("error.pivotTable.fieldNotPlaceable"));
1781
+ let u = a ? n(e, a).filter((e) => e !== i) : [];
1782
+ if (o !== void 0 && (!Number.isInteger(o) || o < 1 || o > u.length + 1)) throw new K(q("error.pivotTable.fieldPosition"));
1783
+ let d = (o ?? u.length + 1) - 1;
1784
+ if (a === l && (o === void 0 || n(e, a)[d] === i)) return e;
1785
+ u.splice(d, 0, i);
1786
+ let { rowFields: f, columnFields: p, pageFields: m, ...g } = e, _ = {}, v = (e) => (e ?? []).filter((e) => e !== i), y = a === s.Row ? u : v(e.rowFields), x = a === s.Column ? u : v(e.columnFields), S = a === s.Page ? u.map((t) => e.pageFields?.find((e) => e.field === t) ?? { field: t }) : (e.pageFields ?? []).filter((e) => e.field !== i);
1787
+ y.length > 0 && (_.rowFields = y), x.length > 0 && (_.columnFields = x), S.length > 0 && (_.pageFields = S);
1788
+ let C = {
1789
+ ...g,
1790
+ ..._
1791
+ };
1792
+ a === s.Page && l !== s.Page && (C = h(C, i, () => !0));
1793
+ let w = { ...e.fields?.[i] };
1794
+ a ? w.axis = a : delete w.axis, a && !w.items && c && (w.items = t(bt(r, i), w.subtotals)), a && w.numberFormat === void 0 && c?.dates && c.numberFormat !== void 0 && (w.numberFormat = c.numberFormat), a === s.Page && w.items?.some((e) => e.hidden) && (w.multipleItemSelection = !0);
1795
+ let T = (e.fields ?? []).map((e, t) => t === i ? w : e);
1796
+ if (C = {
1797
+ ...C,
1798
+ fields: wt(C, T)
1799
+ }, a === null && e.formats?.some((e) => e.area.references?.some((e) => e.field === i))) {
1800
+ let t = e.formats.filter((e) => !e.area.references?.some((e) => e.field === i)), { formats: n, ...r } = C;
1801
+ C = t.length > 0 ? {
1802
+ ...r,
1803
+ formats: t
1804
+ } : r;
1805
+ }
1806
+ return C;
1807
+ }, $ = -2, Et = /* @__PURE__ */ new Set([
1808
+ "percentOfTotal",
1809
+ "percentOfRow",
1810
+ "percentOfCol",
1811
+ "percentOfParentRow",
1812
+ "percentOfParentCol",
1813
+ "percentOfParent",
1814
+ "percentOfRunningTotal",
1815
+ "percent",
1816
+ "percentDiff"
1817
+ ]), Dt = /* @__PURE__ */ new Set([
1818
+ "index",
1819
+ "rankAscending",
1820
+ "rankDescending"
1821
+ ]), Ot = /* @__PURE__ */ new Set([
1822
+ ...Et,
1823
+ ...Dt,
1824
+ "runTotal",
1825
+ "difference"
1826
+ ]), kt = (e, t, n) => {
1827
+ if (Dt.has(n)) return Dt.has(t) ? e : void 0;
1828
+ let r = ((e) => F(e).replace(/"[^"]*"|\\./g, "").includes("%"))(e);
1829
+ return Et.has(n) ? Et.has(t) || r ? e : 10 : Et.has(t) && r ? void 0 : e;
1830
+ }, At = (e, t) => {
1831
+ let n = e.references?.length === 1 ? e.references[0] : null;
1832
+ return !1 === e.outline && n?.field === $ && n.items?.length === 1 && n.items[0] === t && n.selected === void 0 && !e.type && !e.labelOnly && e.dataOnly === void 0;
1833
+ }, jt = (e, t) => {
1834
+ if (!e.formats?.some((e) => At(e.area, t))) return e;
1835
+ let n = e.formats.filter((e) => !At(e.area, t)), { formats: r, ...i } = e;
1836
+ return n.length > 0 ? {
1837
+ ...i,
1838
+ formats: n
1839
+ } : i;
1840
+ }, Mt = (e, t, n) => ({
1841
+ ...e,
1842
+ dataFields: e.dataFields.map((e, r) => r === t ? n(e) : e)
1843
+ }), Nt = (e, t) => {
1844
+ let { numberFormat: n, ...r } = e;
1845
+ return t === void 0 ? r : {
1846
+ ...r,
1847
+ numberFormat: t
1848
+ };
1849
+ }, Pt = (e, t, n) => {
1850
+ let r = new Set(t.map((e) => e.field)), i = (e.fields ?? []).map((e, t) => {
1851
+ let i = e;
1852
+ if (e.sort?.dataField !== void 0) {
1853
+ let t = n[e.sort.dataField];
1854
+ if (t < 0) {
1855
+ let { sort: e, ...t } = i;
1856
+ i = t;
1857
+ } else t !== e.sort.dataField && (i = {
1858
+ ...i,
1859
+ sort: {
1860
+ ...e.sort,
1861
+ dataField: t
1862
+ }
1863
+ });
1864
+ }
1865
+ if (!!e.dataField !== r.has(t)) {
1866
+ let { dataField: e, ...n } = i;
1867
+ i = r.has(t) ? {
1868
+ ...n,
1869
+ dataField: !0
1870
+ } : n;
1871
+ }
1872
+ return i;
1873
+ }), { dataFields: a, filters: o, formats: s, conditionalFormats: c, ...l } = e, u = {
1874
+ ...l,
1875
+ fields: i
1876
+ };
1877
+ t.length > 0 && (u.dataFields = t);
1878
+ let d = (e.filters ?? []).flatMap((e) => {
1879
+ if (e.dataField === void 0) return [e];
1880
+ let t = n[e.dataField];
1881
+ return t < 0 ? [] : [{
1882
+ ...e,
1883
+ dataField: t
1884
+ }];
1885
+ });
1886
+ d.length > 0 && (u.filters = d);
1887
+ let f = (e) => ut(e, (e) => e, () => !0, [], n), p = (e.formats ?? []).flatMap((e) => {
1888
+ let t = f(e.area);
1889
+ return t ? [{
1890
+ ...e,
1891
+ area: t
1892
+ }] : [];
1893
+ });
1894
+ p.length > 0 && (u.formats = p);
1895
+ let m = (e.conditionalFormats ?? []).flatMap((e) => {
1896
+ let t = e.areas.flatMap((e) => f(e) ?? []);
1897
+ return t.length > 0 ? [{
1898
+ ...e,
1899
+ areas: t
1900
+ }] : [];
1901
+ });
1902
+ return m.length > 0 && (u.conditionalFormats = m), ((e) => {
1903
+ let t = e.dataFields?.length ?? 0, n = e.rowFields?.includes($), r = e.columnFields?.includes($), { valuesPosition: i, ...a } = e;
1904
+ if (t < 2 && (n || r)) {
1905
+ let t = n ? "rowFields" : "columnFields", r = e[t], i = r.indexOf($), o = r.filter((e) => e !== $), s = {
1906
+ ...a,
1907
+ ...i < o.length ? { valuesPosition: i } : {}
1908
+ };
1909
+ return o.length > 0 ? s[t] = o : delete s[t], s;
1910
+ }
1911
+ if (t >= 2 && !n && !r) {
1912
+ let t = e.valuesOnRows ? "rowFields" : "columnFields", n = [...e[t] ?? []];
1913
+ return n.splice(Math.min(i ?? n.length, n.length), 0, $), {
1914
+ ...a,
1915
+ [t]: n
1916
+ };
1917
+ }
1918
+ return e;
1919
+ })(u);
1920
+ }, Ft = (e, t, n, r) => {
1921
+ let i = Tt(e, t, n, null), a = i.dataFields?.length ?? 0, o = St(i, t, n, r);
1922
+ return Pt(i, [...i.dataFields ?? [], o], Array.from({ length: a }, (e, t) => t));
1923
+ }, It = (e, t) => {
1924
+ let n = e.dataFields ?? [], r = [], i = [];
1925
+ return n.forEach((e, n) => {
1926
+ t !== void 0 && n !== t ? (r.push(i.length), i.push(e)) : r.push(-1);
1927
+ }), Pt(e, i, r);
1928
+ }, Lt = (e, t, n) => {
1929
+ let r = e.dataFields ?? [];
1930
+ if (!Number.isInteger(n) || n < 1 || n > r.length) throw new K(q("error.pivotTable.valuePosition"));
1931
+ if (n - 1 === t) return e;
1932
+ let i = r.map((e, t) => t).filter((e) => e !== t);
1933
+ i.splice(n - 1, 0, t);
1934
+ let a = [];
1935
+ return i.forEach((e, t) => {
1936
+ a[e] = t;
1937
+ }), Pt(e, i.map((e) => r[e]), a);
1938
+ }, Rt = (e, t, n, r) => {
1939
+ let i = R(e, t, n, r);
1940
+ return (e.dataFields[n].subtotal ?? "sum") === r ? e : Mt(e, n, (e) => {
1941
+ let { subtotal: t, ...n } = e, a = {
1942
+ ...n,
1943
+ name: i
1944
+ };
1945
+ return r !== "sum" && (a.subtotal = r), a;
1946
+ });
1947
+ }, zt = (e, t, n, r) => {
1948
+ let i = e.dataFields[n], a = i.showDataAs ?? "normal", o = r?.kind ?? "normal";
1949
+ if (r && !Ot.has(r.kind)) throw new K(q("error.pivotTable.notAShowAs", { name: r.kind }));
1950
+ let { showDataAs: s, baseField: c, baseItem: l, ...u } = i, f = { ...u };
1951
+ o !== "normal" && (f.showDataAs = o);
1952
+ let p = i.baseField, m = i.baseItem;
1953
+ if (r?.baseField !== void 0) {
1954
+ let n = r.baseField, i = (t.fields ?? []).findIndex((r, i) => k(g(e, t, i), n));
1955
+ if (i < 0) throw new K(q("error.pivotTable.notAField", { name: n }));
1956
+ i !== p && (p = i, m = 0);
1957
+ }
1958
+ if (r?.baseItem !== void 0) {
1959
+ let n = p ?? 0;
1960
+ if (k(r.baseItem, "(previous)")) m = "previous";
1961
+ else if (k(r.baseItem, "(next)")) m = "next";
1962
+ else {
1963
+ let i = e.fields?.[n]?.items ? e : { fields: (e.fields ?? []).map((e, r) => r === n ? {
1964
+ ...e,
1965
+ items: bt(t, n)
1966
+ } : e) }, a = d(i, t, n).findIndex((e) => e !== null && k(e, r.baseItem));
1967
+ if (a < 0) throw new K(q("error.pivotTable.notAnItem", { name: r.baseItem }));
1968
+ m = a;
1969
+ }
1970
+ }
1971
+ if (p !== void 0 && (f.baseField = p), m !== void 0 && (f.baseItem = m), o === a) return f.baseField === i.baseField && f.baseItem === i.baseItem ? e : Mt(e, n, () => f);
1972
+ let h = kt(i.numberFormat, a, o);
1973
+ return h === i.numberFormat ? Mt(e, n, () => f) : Mt(jt(e, n), n, () => Nt(f, h));
1974
+ }, Bt = (e, t, n) => {
1975
+ xt(n);
1976
+ let r = F(n), i = e.dataFields[t], a = e.formats?.[e.formats.length - 1];
1977
+ if (F(i.numberFormat) === r && a && At(a.area, t) && a.style.numberFormat === r) return e;
1978
+ let o = Mt(jt(e, t), t, (e) => Nt(e, r === "General" ? void 0 : n));
1979
+ return {
1980
+ ...o,
1981
+ formats: [...o.formats ?? [], {
1982
+ style: { numberFormat: r },
1983
+ area: {
1984
+ outline: !1,
1985
+ references: [{
1986
+ field: $,
1987
+ items: [t]
1988
+ }]
1989
+ }
1990
+ }]
1991
+ };
1992
+ }, Vt = (e, t, r) => {
1993
+ if (t === null) return It(e);
1994
+ let i = b.Axis;
1995
+ if (t !== i.Row && t !== i.Column) throw new K(q("error.pivotTable.fieldNotPlaceable"));
1996
+ let a = e.rowFields?.includes($) ? i.Row : e.columnFields?.includes($) ? i.Column : null;
1997
+ if (!a) throw new K(q("error.pivotTable.fieldPosition"));
1998
+ let o = n(e, t).filter((e) => e !== $);
1999
+ if (r !== void 0 && (!Number.isInteger(r) || r < 1 || r > o.length + 1)) throw new K(q("error.pivotTable.fieldPosition"));
2000
+ let s = (r ?? o.length + 1) - 1;
2001
+ if (t === a && (r === void 0 || n(e, t)[s] === $)) return e;
2002
+ o.splice(s, 0, $);
2003
+ let { rowFields: c, columnFields: l, valuesOnRows: u, ...d } = e, f = n(e, t === i.Row ? i.Column : i.Row).filter((e) => e !== $), p = { ...d }, m = t === i.Row ? o : f, h = t === i.Column ? o : f;
2004
+ return m.length > 0 && (p.rowFields = [...m]), h.length > 0 && (p.columnFields = [...h]), t === i.Row && (p.valuesOnRows = !0), p;
2005
+ }, Ht = (e, t, n) => {
2006
+ if (n === (e.valuesCaption ?? "Values")) return e;
2007
+ let { valuesCaption: r, ...i } = e, a = {
2008
+ ...i,
2009
+ valuesCaption: "\0"
2010
+ };
2011
+ if (v(a, t, n) !== n) throw new K(q("error.pivotTable.fieldNameExists"));
2012
+ return n === "Values" ? i : {
2013
+ ...i,
2014
+ valuesCaption: n
2015
+ };
2016
+ };
2017
+ export { Ft as addPivotDataField, qe as anchorPivotPeriods, xt as assertNumberFormat, yt as axisFieldsOf, Ge as buildPivotView, Ke as evaluatePivotFilters, e as isItemFilter, Fe as layOutPivot, bt as listedItemsOf, Lt as movePivotDataField, Tt as movePivotField, ht as movePivotItem, Vt as movePivotValues, _t as newPivotCache, Ct as newPivotTable, Xe as readPivotSource, rt as refreshPivotCache, ot as remapPivotTable, It as removePivotDataField, mt as renamePivotItem, Ht as renamePivotValues, dt as reorderPivotItems, Rt as setPivotDataFunction, Bt as setPivotDataNumberFormat, zt as setPivotDataShowAs, ft as sortPivotItemsByLabel, gt as typeOverPivot, vt as withListedFields };