@svgrid/enterprise 3.0.2 → 3.0.3

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 (364) hide show
  1. package/LICENSE +94 -24
  2. package/README.md +36 -4
  3. package/dist/SvAdvancedFilter.svelte +1 -1
  4. package/dist/SvAlertsManager.svelte +2 -1
  5. package/dist/SvBoard.svelte +2 -1
  6. package/dist/SvExportMenu.svelte +4 -1
  7. package/dist/SvExportMenu.svelte.d.ts +0 -13
  8. package/dist/SvExpressionEditor.svelte +3 -3
  9. package/dist/SvFormulaBar.svelte +94 -20
  10. package/dist/SvFormulaBar.svelte.d.ts +7 -0
  11. package/dist/SvGridAlerts.svelte +49 -9
  12. package/dist/SvGridBoard.svelte +13 -8
  13. package/dist/SvGridBulkEditDrawer.svelte +26 -2
  14. package/dist/SvGridEditPanel.svelte +3 -0
  15. package/dist/SvGridScheduler.svelte +69 -40
  16. package/dist/SvGridSelectionBar.svelte +10 -3
  17. package/dist/SvPivotDesigner.svelte +198 -40
  18. package/dist/SvPivotDesigner.svelte.d.ts +27 -20
  19. package/dist/SvSheet.svelte +4043 -243
  20. package/dist/SvSheet.svelte.d.ts +76 -3
  21. package/dist/SvSheetChartSetup.svelte +151 -0
  22. package/dist/SvSheetChartSetup.svelte.d.ts +18 -0
  23. package/dist/SvSheetComment.svelte +216 -31
  24. package/dist/SvSheetComment.svelte.d.ts +11 -11
  25. package/dist/SvSheetConditionalFormat.svelte +28 -31
  26. package/dist/SvSheetDataValidation.svelte +66 -42
  27. package/dist/SvSheetEditRanges.svelte +217 -0
  28. package/dist/SvSheetEditRanges.svelte.d.ts +15 -0
  29. package/dist/SvSheetErrors.svelte +125 -0
  30. package/dist/SvSheetErrors.svelte.d.ts +20 -0
  31. package/dist/SvSheetEvaluate.svelte +133 -0
  32. package/dist/SvSheetEvaluate.svelte.d.ts +15 -0
  33. package/dist/SvSheetFilterMenu.svelte +137 -34
  34. package/dist/SvSheetFilterMenu.svelte.d.ts +5 -0
  35. package/dist/SvSheetFindReplace.svelte +19 -19
  36. package/dist/SvSheetFormatCells.svelte +125 -81
  37. package/dist/SvSheetGoalSeek.svelte +17 -16
  38. package/dist/SvSheetInsertFunction.svelte +15 -13
  39. package/dist/SvSheetIteration.svelte +81 -0
  40. package/dist/SvSheetIteration.svelte.d.ts +10 -0
  41. package/dist/SvSheetLink.svelte +99 -0
  42. package/dist/SvSheetLink.svelte.d.ts +17 -0
  43. package/dist/SvSheetListPicker.svelte +4 -2
  44. package/dist/SvSheetListPicker.svelte.d.ts +0 -6
  45. package/dist/SvSheetManageRules.svelte +20 -18
  46. package/dist/SvSheetNameManager.svelte +17 -15
  47. package/dist/SvSheetPageSetup.svelte +159 -0
  48. package/dist/SvSheetPageSetup.svelte.d.ts +13 -0
  49. package/dist/SvSheetPasteSpecial.svelte +22 -20
  50. package/dist/SvSheetPivot.svelte +220 -0
  51. package/dist/SvSheetPivot.svelte.d.ts +21 -0
  52. package/dist/SvSheetProtectSheet.svelte +81 -0
  53. package/dist/SvSheetProtectSheet.svelte.d.ts +11 -0
  54. package/dist/SvSheetRemoveDuplicates.svelte +13 -10
  55. package/dist/SvSheetRibbon.svelte +104 -51
  56. package/dist/SvSheetSizeDialog.svelte +4 -2
  57. package/dist/SvSheetSort.svelte +218 -0
  58. package/dist/SvSheetSort.svelte.d.ts +28 -0
  59. package/dist/SvSheetSparklines.svelte +135 -0
  60. package/dist/SvSheetSparklines.svelte.d.ts +14 -0
  61. package/dist/SvSheetTable.svelte +160 -0
  62. package/dist/SvSheetTable.svelte.d.ts +24 -0
  63. package/dist/SvSheetTabs.svelte +161 -31
  64. package/dist/SvSheetTabs.svelte.d.ts +22 -8
  65. package/dist/SvSheetTextToColumns.svelte +20 -20
  66. package/dist/SvSheetValidationAlert.svelte +8 -6
  67. package/dist/advanced-filter-enable.js +1 -1
  68. package/dist/alerts/alert-engine.d.ts +6 -0
  69. package/dist/alerts/alert-engine.js +21 -4
  70. package/dist/alerts/alert-formats.js +2 -0
  71. package/dist/alerts/alert-types.d.ts +1 -1
  72. package/dist/alerts.d.ts +1 -1
  73. package/dist/alerts.js +2 -2
  74. package/dist/board.js +2 -2
  75. package/dist/bulk-edit.d.ts +3 -1
  76. package/dist/bulk-edit.js +1 -1
  77. package/dist/cdn/svgrid-enterprise.svelte-external.js +39827 -16429
  78. package/dist/designer/assets/GridMenus-8gTNssgV.js +8 -0
  79. package/dist/designer/assets/{SvChartMenu-D9hEeHar.js → SvChartMenu-BDoeqGz6.js} +1 -1
  80. package/dist/designer/assets/{SvDateTimePicker-DARvKUL2.js → SvDateTimePicker-DCPg7WGN.js} +1 -1
  81. package/dist/designer/assets/SvGridCellEditor-DMoWJjEI.js +4 -0
  82. package/dist/designer/assets/{SvGridChart-B8j1SSy3.js → SvGridChart-Cy1ATrWh.js} +2 -2
  83. package/dist/designer/assets/SvGridChartBuilder-eQ3mn0L9.js +1 -0
  84. package/dist/designer/assets/{SvGridChartPanel-pT6ITc2P.js → SvGridChartPanel-CATdVc9X.js} +3 -3
  85. package/dist/designer/assets/{SvGridChartView-bg281UA1.js → SvGridChartView-CmsZtCED.js} +1 -1
  86. package/dist/designer/assets/SvGridDropdown-Cjz0H-fI.js +1 -0
  87. package/dist/designer/assets/{SvTabs-UFCMTHXS.js → SvTabs-2mHC6oaz.js} +1 -1
  88. package/dist/designer/assets/cell-formatting-BbubJTVz.js +1 -0
  89. package/dist/designer/assets/{chart-cIPUsbM5.js → chart-Cn7MnNqA.js} +1 -1
  90. package/dist/designer/assets/{chart-panel-messages-DtTxpBUU.js → chart-panel-messages-Dz7PTIqT.js} +1 -1
  91. package/dist/designer/assets/{chart-summary-Czu_5epb.js → chart-summary-BD1qYB2R.js} +1 -1
  92. package/dist/designer/assets/{chart-trend-D5I5VEe8.js → chart-trend-B8xr5LuD.js} +1 -1
  93. package/dist/designer/assets/{dismissable-BO547MH9.js → dismissable-ChWRPkoa.js} +1 -1
  94. package/dist/designer/assets/{export-format-D-eP4b2l.js → export-format-DGckmgKr.js} +1 -1
  95. package/dist/designer/assets/{focus-trap-CAreAhlU.js → focus-trap-V2-6Fy9I.js} +1 -1
  96. package/dist/designer/assets/{index-DwU7CAMm.js → index-D5bVbuzI.js} +317 -315
  97. package/dist/designer/assets/index-_JVFxt02.css +1 -0
  98. package/dist/designer/assets/row-resize-BInFWCpr.js +1 -0
  99. package/dist/designer/assets/server-block-cache-CXJKkJpy.js +1 -0
  100. package/dist/designer/assets/src-DUQ4xE3x.js +58 -0
  101. package/dist/designer/assets/validate-C3B8QKsM.js +1 -0
  102. package/dist/designer/index.html +17 -16
  103. package/dist/export-pdf.d.ts +75 -0
  104. package/dist/export-pdf.js +216 -15
  105. package/dist/export.js +10 -2
  106. package/dist/gantt/SvGridGantt.svelte +2890 -0
  107. package/dist/gantt/SvGridGantt.svelte.d.ts +30 -0
  108. package/dist/gantt/gantt-config.d.ts +73 -0
  109. package/dist/gantt/gantt-config.js +1 -0
  110. package/dist/gantt/gantt-critical-path.d.ts +67 -0
  111. package/dist/gantt/gantt-critical-path.js +207 -0
  112. package/dist/gantt/gantt-model.d.ts +257 -0
  113. package/dist/gantt/gantt-model.js +651 -0
  114. package/dist/gantt/gantt-resources.d.ts +59 -0
  115. package/dist/gantt/gantt-resources.js +71 -0
  116. package/dist/gantt/gantt.d.ts +7 -0
  117. package/dist/gantt/gantt.js +36 -0
  118. package/dist/gantt/index.d.ts +15 -0
  119. package/dist/gantt/index.js +22 -0
  120. package/dist/gantt/timeline-arrows.d.ts +102 -0
  121. package/dist/gantt/timeline-arrows.js +181 -0
  122. package/dist/import.d.ts +2 -2
  123. package/dist/import.js +1 -1
  124. package/dist/index.d.ts +34 -7
  125. package/dist/index.js +44 -7
  126. package/dist/install.js +8 -1
  127. package/dist/license-core.d.ts +17 -1
  128. package/dist/license-core.js +16 -5
  129. package/dist/license.d.ts +18 -2
  130. package/dist/license.js +71 -6
  131. package/dist/node/studio.js +140 -8
  132. package/dist/pivot-enable.js +2 -2
  133. package/dist/scheduler-dependencies.d.ts +35 -0
  134. package/dist/scheduler-dependencies.js +36 -1
  135. package/dist/scheduler.js +2 -2
  136. package/dist/selection-bar.js +2 -2
  137. package/dist/server/SvGroupCell.svelte +213 -0
  138. package/dist/server/SvGroupCell.svelte.d.ts +62 -0
  139. package/dist/server/SvRowGroupPanel.svelte +322 -0
  140. package/dist/server/SvRowGroupPanel.svelte.d.ts +37 -0
  141. package/dist/server/enable.d.ts +17 -0
  142. package/dist/server/enable.js +49 -0
  143. package/dist/server/index.d.ts +22 -0
  144. package/dist/server/index.js +24 -0
  145. package/dist/server/messages.d.ts +45 -0
  146. package/dist/server/messages.js +35 -0
  147. package/dist/server/server-group-model.d.ts +104 -0
  148. package/dist/server/server-group-model.js +272 -0
  149. package/dist/server/server-pivot.d.ts +46 -0
  150. package/dist/server/server-pivot.js +57 -0
  151. package/dist/server/server-row-model.d.ts +547 -0
  152. package/dist/server/server-row-model.js +1551 -0
  153. package/dist/server/server-selection.d.ts +99 -0
  154. package/dist/server/server-selection.js +215 -0
  155. package/dist/server/svgrid-adapter.d.ts +155 -0
  156. package/dist/server/svgrid-adapter.js +202 -0
  157. package/dist/sheet/ast.d.ts +45 -1
  158. package/dist/sheet/ast.js +14 -0
  159. package/dist/sheet/auto-filter.d.ts +58 -4
  160. package/dist/sheet/auto-filter.js +159 -11
  161. package/dist/sheet/autocomplete.d.ts +9 -0
  162. package/dist/sheet/autocomplete.js +90 -4
  163. package/dist/sheet/cell-images.d.ts +39 -0
  164. package/dist/sheet/cell-images.js +90 -0
  165. package/dist/sheet/cell-types.d.ts +58 -0
  166. package/dist/sheet/cell-types.js +96 -0
  167. package/dist/sheet/coerce.d.ts +40 -0
  168. package/dist/sheet/coerce.js +170 -3
  169. package/dist/sheet/comments.d.ts +43 -9
  170. package/dist/sheet/comments.js +85 -27
  171. package/dist/sheet/conditional-formats.d.ts +29 -6
  172. package/dist/sheet/conditional-formats.js +37 -12
  173. package/dist/sheet/csv.d.ts +32 -0
  174. package/dist/sheet/csv.js +158 -0
  175. package/dist/sheet/culture.d.ts +87 -0
  176. package/dist/sheet/culture.js +247 -0
  177. package/dist/sheet/delta.d.ts +102 -0
  178. package/dist/sheet/delta.js +203 -0
  179. package/dist/sheet/deps.d.ts +45 -1
  180. package/dist/sheet/deps.js +77 -2
  181. package/dist/sheet/document.d.ts +106 -4
  182. package/dist/sheet/document.js +204 -3
  183. package/dist/sheet/engine.d.ts +67 -0
  184. package/dist/sheet/engine.js +19 -0
  185. package/dist/sheet/entry.d.ts +8 -4
  186. package/dist/sheet/entry.js +171 -21
  187. package/dist/sheet/error-check.d.ts +49 -0
  188. package/dist/sheet/error-check.js +83 -0
  189. package/dist/sheet/evaluate-steps.d.ts +48 -0
  190. package/dist/sheet/evaluate-steps.js +196 -0
  191. package/dist/sheet/evaluate.d.ts +67 -0
  192. package/dist/sheet/evaluate.js +725 -13
  193. package/dist/sheet/filter-files.d.ts +37 -0
  194. package/dist/sheet/filter-files.js +465 -0
  195. package/dist/sheet/format-store.d.ts +15 -0
  196. package/dist/sheet/format-store.js +11 -1
  197. package/dist/sheet/from-rows.d.ts +14 -0
  198. package/dist/sheet/from-rows.js +50 -0
  199. package/dist/sheet/function-catalog.d.ts +1 -1
  200. package/dist/sheet/function-catalog.js +296 -5
  201. package/dist/sheet/functions.js +363 -91
  202. package/dist/sheet/index.d.ts +35 -8
  203. package/dist/sheet/index.js +35 -8
  204. package/dist/sheet/links.d.ts +57 -0
  205. package/dist/sheet/links.js +174 -0
  206. package/dist/sheet/messages.d.ts +778 -0
  207. package/dist/sheet/messages.js +806 -0
  208. package/dist/sheet/number-format.d.ts +52 -5
  209. package/dist/sheet/number-format.js +465 -68
  210. package/dist/sheet/objects.d.ts +106 -0
  211. package/dist/sheet/objects.js +149 -0
  212. package/dist/sheet/ods-document.d.ts +44 -0
  213. package/dist/sheet/ods-document.js +1275 -0
  214. package/dist/sheet/open-file.d.ts +26 -0
  215. package/dist/sheet/open-file.js +56 -0
  216. package/dist/sheet/outline.d.ts +82 -0
  217. package/dist/sheet/outline.js +228 -0
  218. package/dist/sheet/packs/array.d.ts +16 -0
  219. package/dist/sheet/packs/array.js +172 -0
  220. package/dist/sheet/packs/database.d.ts +42 -0
  221. package/dist/sheet/packs/database.js +142 -0
  222. package/dist/sheet/packs/engineering.d.ts +2 -0
  223. package/dist/sheet/packs/engineering.js +296 -0
  224. package/dist/sheet/packs/financial.d.ts +5 -0
  225. package/dist/sheet/packs/financial.js +220 -0
  226. package/dist/sheet/packs/math-stats.d.ts +2 -0
  227. package/dist/sheet/packs/math-stats.js +372 -0
  228. package/dist/sheet/packs/special.d.ts +44 -0
  229. package/dist/sheet/packs/special.js +187 -0
  230. package/dist/sheet/packs/stats-dist.d.ts +2 -0
  231. package/dist/sheet/packs/stats-dist.js +785 -0
  232. package/dist/sheet/packs/text-date.d.ts +2 -0
  233. package/dist/sheet/packs/text-date.js +332 -0
  234. package/dist/sheet/packs/trig.d.ts +2 -0
  235. package/dist/sheet/packs/trig.js +73 -0
  236. package/dist/sheet/page-setup.d.ts +73 -0
  237. package/dist/sheet/page-setup.js +73 -0
  238. package/dist/sheet/parse.js +42 -10
  239. package/dist/sheet/paste-special.d.ts +22 -0
  240. package/dist/sheet/paste-special.js +14 -5
  241. package/dist/sheet/pivot-range.d.ts +160 -0
  242. package/dist/sheet/pivot-range.js +333 -0
  243. package/dist/sheet/presence.d.ts +73 -0
  244. package/dist/sheet/presence.js +79 -0
  245. package/dist/sheet/print.d.ts +104 -0
  246. package/dist/sheet/print.js +169 -0
  247. package/dist/sheet/protection.d.ts +55 -1
  248. package/dist/sheet/protection.js +55 -2
  249. package/dist/sheet/rects.d.ts +1 -1
  250. package/dist/sheet/refs.d.ts +48 -0
  251. package/dist/sheet/refs.js +155 -8
  252. package/dist/sheet/ribbon-icons.d.ts +1 -1
  253. package/dist/sheet/ribbon-icons.js +186 -0
  254. package/dist/sheet/ribbon.d.ts +1 -1
  255. package/dist/sheet/ribbon.js +324 -23
  256. package/dist/sheet/sheet-kinds.d.ts +74 -0
  257. package/dist/sheet/sheet-kinds.js +91 -0
  258. package/dist/sheet/shortcuts.d.ts +13 -3
  259. package/dist/sheet/shortcuts.js +63 -12
  260. package/dist/sheet/sort.d.ts +51 -0
  261. package/dist/sheet/sort.js +107 -0
  262. package/dist/sheet/sparklines.d.ts +111 -0
  263. package/dist/sheet/sparklines.js +204 -0
  264. package/dist/sheet/table-styles.d.ts +74 -0
  265. package/dist/sheet/table-styles.js +152 -0
  266. package/dist/sheet/tables.d.ts +19 -0
  267. package/dist/sheet/tables.js +31 -0
  268. package/dist/sheet/tokenize.d.ts +18 -1
  269. package/dist/sheet/tokenize.js +60 -9
  270. package/dist/sheet/validation.d.ts +16 -0
  271. package/dist/sheet/validation.js +37 -0
  272. package/dist/sheet/workbook.d.ts +148 -3
  273. package/dist/sheet/workbook.js +742 -31
  274. package/dist/sheet/xls-cfb.d.ts +32 -0
  275. package/dist/sheet/xls-cfb.js +290 -0
  276. package/dist/sheet/xls-document.d.ts +10 -0
  277. package/dist/sheet/xls-document.js +1243 -0
  278. package/dist/sheet/xls-formula.d.ts +40 -0
  279. package/dist/sheet/xls-formula.js +569 -0
  280. package/dist/sheet/xlsx-document.d.ts +108 -0
  281. package/dist/sheet/xlsx-document.js +1849 -0
  282. package/dist/sheet/xlsx-drawing.d.ts +99 -0
  283. package/dist/sheet/xlsx-drawing.js +420 -0
  284. package/dist/sheet-enable.js +6 -7
  285. package/dist/sheet-text.d.ts +7 -0
  286. package/dist/sheet-text.js +29 -0
  287. package/dist/sources/auth-supabase.js +2 -2
  288. package/dist/sources/realtime-supabase.js +2 -2
  289. package/dist/sources/rest.d.ts +6 -2
  290. package/dist/sources/rest.js +42 -7
  291. package/dist/sources/supabase.d.ts +10 -1
  292. package/dist/sources/supabase.js +73 -40
  293. package/dist/studio/emit-project.js +14 -1
  294. package/dist/studio/index.js +1 -1
  295. package/dist/studio/project.d.ts +11 -2
  296. package/dist/studio/project.js +5 -2
  297. package/dist/studio/ui-components.generated.js +107 -2
  298. package/dist/sveltekit/in-memory.d.ts +2 -2
  299. package/dist/sveltekit/in-memory.js +125 -4
  300. package/dist/sveltekit/index.d.ts +1 -1
  301. package/dist/sveltekit/index.js +1 -1
  302. package/dist/sveltekit/query-plan.d.ts +50 -4
  303. package/dist/sveltekit/query-plan.js +25 -3
  304. package/dist/sveltekit/sql-source.d.ts +6 -0
  305. package/dist/sveltekit/sql-source.js +34 -6
  306. package/dist/sveltekit/sql.d.ts +31 -0
  307. package/dist/sveltekit/sql.js +135 -25
  308. package/dist/sveltekit/transport.d.ts +10 -2
  309. package/dist/sveltekit/transport.js +30 -6
  310. package/dist/upgrade-prompt.d.ts +1 -1
  311. package/dist/version.d.ts +1 -1
  312. package/dist/version.js +1 -1
  313. package/dist/watermark.js +35 -2
  314. package/dist/wc/GridMenus-By9vPuq0.js +1088 -0
  315. package/dist/wc/SvChartMenu-CQNrQGT2.js +308 -0
  316. package/dist/wc/SvDateRangeInput-DR6m7bSM.js +199 -0
  317. package/dist/wc/SvDateTimePicker-D-vRnaMo.js +771 -0
  318. package/dist/wc/SvField-B_kurx_P.js +149 -0
  319. package/dist/wc/SvGrid.helpers-BdVDtjUm.js +135 -0
  320. package/dist/wc/SvGridCellEditor-Bnf1Kr5C.js +560 -0
  321. package/dist/wc/SvGridChart-BqUJh2pG.js +3572 -0
  322. package/dist/wc/SvGridChartBuilder-CGycC5cn.js +988 -0
  323. package/dist/wc/SvGridChartPanel-CRnizsHD.js +1746 -0
  324. package/dist/wc/SvGridChartView-D1pa_xMy.js +47 -0
  325. package/dist/wc/SvGridDropdown-45WsObLL.js +259 -0
  326. package/dist/wc/SvModal-DrfOYYyX.js +189 -0
  327. package/dist/wc/cell-formatting-CBfgahv1.js +86 -0
  328. package/dist/wc/chart-6OXlybVT.js +4341 -0
  329. package/dist/wc/chart-export-CeSADGfi.js +135 -0
  330. package/dist/wc/chart-export-pdf-BGko7MER.js +104 -0
  331. package/dist/wc/chart-summary-2m3ia1-n.js +137 -0
  332. package/dist/wc/chart-trend-CQOQtTMl.js +50 -0
  333. package/dist/wc/chart-validate-CD6ptiwg.js +180 -0
  334. package/dist/wc/client-DQIzjDBG.js +3064 -0
  335. package/dist/wc/column-resize-DUPgynvc.js +101 -0
  336. package/dist/wc/date-format-DS-z_h9v.js +1130 -0
  337. package/dist/wc/dismissable-CQ6XFXsk.js +45 -0
  338. package/dist/wc/editor-contract-peBDxir_.js +22 -0
  339. package/dist/wc/editor-registry-DxGKqcvx.js +24 -0
  340. package/dist/wc/focus-trap-Dbb2tJxb.js +65 -0
  341. package/dist/wc/list-option-DrRyivWp.js +82 -0
  342. package/dist/wc/popover-WsGlvtQv.js +69 -0
  343. package/dist/wc/positioning-BiKLfu1E.js +112 -0
  344. package/dist/wc/react.d.ts +41 -0
  345. package/dist/wc/react.js +90 -0
  346. package/dist/wc/rolldown-runtime-Dy4uBu1J.js +11 -0
  347. package/dist/wc/row-drag-touch-CycRR65n.js +93 -0
  348. package/dist/wc/row-resize-limG_N1z.js +111 -0
  349. package/dist/wc/sv-sheet-element.d.ts +97 -0
  350. package/dist/wc/sv-sheet-element.js +44213 -0
  351. package/dist/wc/svelte-virtualizer.svelte-CXtQy2TQ.js +530 -0
  352. package/dist/wc/validate-BqDthkNr.js +88 -0
  353. package/dist/wc/vue.d.ts +31 -0
  354. package/dist/wc/vue.js +75 -0
  355. package/package.json +30 -5
  356. package/dist/designer/assets/GridMenus-BlsvL_aU.js +0 -8
  357. package/dist/designer/assets/SvGridCellEditor-C7uQXYds.js +0 -4
  358. package/dist/designer/assets/SvGridChartBuilder-kvyIU_Rl.js +0 -1
  359. package/dist/designer/assets/SvGridDropdown-Bb3HH2Aj.js +0 -1
  360. package/dist/designer/assets/cell-formatting-wr5wm7US.js +0 -1
  361. package/dist/designer/assets/index-CMFgAoVV.css +0 -1
  362. package/dist/designer/assets/row-resize-DLktcqUK.js +0 -1
  363. package/dist/designer/assets/src-EdI3Xqds.js +0 -58
  364. package/dist/designer/assets/validate-h-aslRV9.js +0 -1
@@ -1 +1 @@
1
- import{H as e,I as t,K as n,M as r,P as i,R as a,U as o,X as s,at as c,dt as l,f as u,g as d,it as f,k as p,m,mt as h,p as g,pt as _,r as v,rt as y,v as b,vt as x,x as ee,y as S}from"./disclose-version-CIm4S9xS.js";import{a as C}from"./editor-contract-Bpoa7A5g.js";import{h as te}from"./chart-cIPUsbM5.js";var w=[{value:`bar`,label:`chartTypeBar`,group:`chartGroupCompare`},{value:`line`,label:`chartTypeLine`,group:`chartGroupCompare`},{value:`area`,label:`chartTypeArea`,group:`chartGroupCompare`},{value:`lollipop`,label:`chartTypeLollipop`,group:`chartGroupCompare`},{value:`pareto`,label:`chartTypePareto`,group:`chartGroupCompare`},{value:`range-bar`,label:`chartTypeRangeBar`,group:`chartGroupCompare`,needs:e=>e.measures.length>=2},{value:`range-area`,label:`chartTypeRangeArea`,group:`chartGroupCompare`,needs:e=>e.measures.length>=2},{value:`dumbbell`,label:`chartTypeDumbbell`,group:`chartGroupCompare`,needs:e=>e.measures.length>=2},{value:`radial-column`,label:`chartTypeRadialColumn`,group:`chartGroupCompare`},{value:`radial-bar`,label:`chartTypeRadialBar`,group:`chartGroupCompare`},{value:`nightingale`,label:`chartTypeNightingale`,group:`chartGroupCompare`},{value:`pie`,label:`chartTypePie`,group:`chartGroupPartOfWhole`},{value:`treemap`,label:`chartTypeTreemap`,group:`chartGroupPartOfWhole`},{value:`sunburst`,label:`chartTypeSunburst`,group:`chartGroupPartOfWhole`},{value:`funnel`,label:`chartTypeFunnel`,group:`chartGroupFlow`},{value:`waterfall`,label:`chartTypeWaterfall`,group:`chartGroupFlow`},{value:`sankey`,label:`chartTypeSankey`,group:`chartGroupFlow`,needs:e=>e.dims.length>=2},{value:`chord`,label:`chartTypeChord`,group:`chartGroupFlow`,needs:e=>e.dims.length>=2},{value:`radar`,label:`chartTypeRadar`,group:`chartGroupDistribution`},{value:`heatmap`,label:`chartTypeHeatmap`,group:`chartGroupDistribution`,needs:e=>e.dims.length>=2},{value:`scatter`,label:`chartTypeScatter`,group:`chartGroupDistribution`,needs:e=>e.measures.length>=2},{value:`boxplot`,label:`chartTypeBoxplot`,group:`chartGroupDistribution`},{value:`histogram`,label:`chartTypeHistogram`,group:`chartGroupDistribution`},{value:`gauge`,label:`chartTypeGauge`,group:`chartGroupSingleValue`},{value:`bullet`,label:`chartTypeBullet`,group:`chartGroupSingleValue`},{value:`calendar`,label:`chartTypeCalendar`,group:`chartGroupOverTime`,needs:e=>e.dates.length>=1},{value:`stream`,label:`chartTypeStream`,group:`chartGroupOverTime`,needs:e=>e.dims.length>=2},{value:`candlestick`,label:`chartTypeCandlestick`,group:`chartGroupOverTime`,needs:e=>e.dates.length>=1&&e.measures.length>=4},{value:`ohlc`,label:`chartTypeOhlc`,group:`chartGroupOverTime`,needs:e=>e.dates.length>=1&&e.measures.length>=4}];function T(e,t){return w.filter(t=>!t.needs||t.needs(e)).map(e=>({value:e.value,label:t[e.label],group:t[e.group]}))}function ne(e){return[{value:`sum`,label:e.chartReduceSum},{value:`avg`,label:e.chartReduceAvg},{value:`count`,label:e.chartReduceCount},{value:`min`,label:e.chartReduceMin},{value:`max`,label:e.chartReduceMax},{value:`median`,label:e.chartReduceMedian},{value:`p90`,label:e.chartReduceP90},{value:`first`,label:e.chartReduceFirst},{value:`last`,label:e.chartReduceLast},{value:`countDistinct`,label:e.chartReduceCountDistinct}]}var E=[{key:`theme`,label:`chartPaletteTheme`,colors:null},{key:`ocean`,label:`chartPaletteOcean`,colors:[`#0ea5e9`,`#14b8a6`,`#6366f1`,`#8b5cf6`,`#06b6d4`]},{key:`sunset`,label:`chartPaletteSunset`,colors:[`#f59e0b`,`#ef4444`,`#ec4899`,`#8b5cf6`,`#f97316`]},{key:`forest`,label:`chartPaletteForest`,colors:[`#16a34a`,`#65a30d`,`#0d9488`,`#4d7c0f`,`#0891b2`]},{key:`slate`,label:`chartPaletteSlate`,colors:[`#475569`,`#0ea5e9`,`#64748b`,`#38bdf8`,`#94a3b8`]}],re=[{value:`volume`,label:`chartIndVolume`,title:`chartIndVolumeTitle`},{value:`rsi`,label:`chartIndRsi`,title:`chartIndRsiTitle`},{value:`macd`,label:`chartIndMacd`,title:`chartIndMacdTitle`},{value:`stochastic`,label:`chartIndStochastic`,title:`chartIndStochasticTitle`},{value:`atr`,label:`chartIndAtr`,title:`chartIndAtrTitle`},{value:`obv`,label:`chartIndObv`,title:`chartIndObvTitle`},{value:`sma`,label:`chartIndSma`,title:`chartIndSmaTitle`},{value:`ema`,label:`chartIndEma`,title:`chartIndEmaTitle`},{value:`bb`,label:`chartIndBb`,title:`chartIndBbTitle`},{value:`vwap`,label:`chartIndVwap`,title:`chartIndVwapTitle`}],D=[`sma`,`ema`,`bb`,`vwap`],ie=[{key:`open`,label:`chartOpen`},{key:`high`,label:`chartHigh`},{key:`low`,label:`chartLow`},{key:`close`,label:`chartClosePrice`},{key:`volume`,label:`chartVolume`}],ae=[`bar`,`line`,`area`,`lollipop`,`pareto`,`range-bar`,`range-area`,`dumbbell`,`stream`],O=[`range-bar`,`range-area`,`dumbbell`],oe=[{value:``,label:`chartBucketExact`},{value:`day`,label:`chartBucketDay`},{value:`week`,label:`chartBucketWeek`},{value:`month`,label:`chartBucketMonth`},{value:`quarter`,label:`chartBucketQuarter`},{value:`year`,label:`chartBucketYear`}],se=a(`<option> </option>`),ce=a(`<optgroup></optgroup>`),le=a(`<label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <select></select></label>`),ue=a(`<option> </option>`),de=a(`<option> </option>`),fe=a(`<option> </option>`),pe=a(`<label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <select><!><!></select></label>`),me=a(`<label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <select></select></label> <!>`,1),he=a(`<option> </option>`),ge=a(`<label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <select></select></label>`),_e=a(`<option> </option>`),ve=a(`<label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <select><option> </option><!></select></label>`),ye=a(`<option> </option>`),be=a(`<label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <select></select></label>`),xe=a(`<option> </option>`),Se=a(`<label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <select></select></label>`),Ce=a(`<option> </option>`),we=a(`<label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <select></select></label>`),Te=a(`<label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <input class="sv-grid-chart-num" type="number" min="1" max="200"/></label>`),Ee=a(`<label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <select><option> </option><option> </option><option> </option></select></label>`),De=a(`<label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <select><option> </option><option> </option><option> </option></select></label>`),Oe=a(`<button type="button"> </button>`),ke=a(`<span class="sv-grid-chart-ctl sv-grid-chart-indicators" role="group"><span class="sv-grid-chart-ctl-lbl"> </span> <span class="sv-grid-chart-chips"></span></span>`),Ae=a(`<label class="sv-grid-chart-toggle"><input type="checkbox"/> </label> <label class="sv-grid-chart-toggle"><input type="checkbox"/> </label>`,1),je=a(`<label class="sv-grid-chart-toggle"><input type="checkbox"/> </label>`),Me=a(`<label class="sv-grid-chart-toggle"><input type="checkbox"/> </label>`),Ne=a(`<option> </option>`),Pe=a(`<label class="sv-grid-chart-toggle"><input type="checkbox"/> </label>`),Fe=a(`<label class="sv-grid-chart-toggle"><input type="checkbox"/> </label>`),Ie=a(`<option> </option>`),Le=a(`<label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <select></select></label>`),Re=a(`<label class="sv-grid-chart-toggle"><input type="checkbox"/> </label>`),ze=a(`<p class="sv-grid-chart-hint sv-grid-chart-pivot-hint" role="note"> </p>`),Be=a(`<p class="sv-grid-chart-hint" role="note"> </p>`),Ve=a(`<div><!> <!> <!> <!> <!> <!> <!> <!> <!> <!> <label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <select><option> </option><option> </option><option> </option></select></label> <!> <!> <!> <label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <select></select></label> <!> <!> <!> <!> <!></div>`);function k(e,a){h(a,!0);let C=v(a,`ctrl`,7),w=v(a,`scope`,3,`panel`),k=l(()=>C().chartableColumns),A=l(()=>C().pivotResult!=null),j=l(()=>T(n(k),a.messages).filter(e=>!n(A)||te(e.value)===e.value)),M=l(()=>[...new Set(n(j).map(e=>e.group))]),He=l(()=>ne(a.messages));function Ue(e){let t=C().chartIndicators.includes(e),n=D.includes(e)?C().chartIndicators.filter(e=>!D.includes(e)):C().chartIndicators;C().chartIndicators=t?n.filter(t=>t!==e):[...n,e]}let N=l(()=>E.find(e=>e.colors&&C().chartPalette&&e.colors.join()===C().chartPalette.join())?.key??`theme`),We=l(()=>C().chartType===`bar`),Ge=l(()=>C().chartType===`pie`||C().chartType===`sunburst`),P=l(()=>!n(A)&&C().chartType!==`gauge`&&C().chartType!==`histogram`),Ke=l(()=>!n(A)&&n(k).dims.length>1&&![`pie`,`gauge`,`waterfall`,`funnel`,`calendar`,`bullet`,`pareto`,`radial-bar`].includes(C().chartType)),qe=l(()=>[`bar`,`line`,`area`,`radial-column`].includes(C().chartType)),Je=l(()=>ae.includes(C().chartType)||C().chartType===`scatter`||C().chartType===`boxplot`||C().chartType===`histogram`),Ye=l(()=>![`gauge`,`sankey`,`calendar`,`treemap`,`scatter`,`boxplot`,`chord`,`sunburst`,`stream`].includes(C().chartType)),Xe=l(()=>!n(A)&&(C().chartType===`scatter`||O.includes(C().chartType)||C().chartType===`bullet`)),Ze=l(()=>C().chartType===`scatter`?a.messages.chartY:C().chartType===`bullet`?a.messages.chartTarget:a.messages.chartHigh),Qe=l(()=>C().chartType===`funnel`),$e=l(()=>C().chartType===`candlestick`),F=l(()=>!n(A)&&C().chartIsOhlc),et=l(()=>!n(A)&&C().chartType===`histogram`),tt=l(()=>!n(A)&&!C().chartIsOhlc),nt=l(()=>!n(A)&&C().chartType!==`scatter`&&C().chartType!==`boxplot`&&C().chartType!==`histogram`&&!C().chartIsOhlc),I=l(()=>{let e=C().chartType,t=C().chartSpec?.categories.length??0;if(e===`heatmap`&&!C().chartSeriesId&&n(k).dims.length>1)return a.messages.chartIssueHeatmap;if(e===`sankey`&&!C().chartSeriesId)return a.messages.chartIssueSankey;if(e===`radar`&&t>0&&t<3)return a.messages.chartIssueRadar;if(e===`funnel`&&t===1)return a.messages.chartIssueFunnel;if(e===`chord`&&!C().chartSeriesId)return a.messages.chartIssueChord;if(e===`stream`&&!C().chartSeriesId)return a.messages.chartIssueStream;if(O.includes(e)&&!C().effectiveChartMeasure2Id)return a.messages.chartIssueSecondMeasure;if(C().chartIsOhlc){let e=C().chartOhlc;if(!C().chartOhlcDateId)return a.messages.chartIssueOhlcDate;if(!e.open||!e.high||!e.low||!e.close)return a.messages.chartIssueOhlcColumns}return null});var L=Ve();let R;var z=y(L),rt=e=>{var r=le(),l=y(r),u=y(l,!0);x(l);var d=c(l,2);p(d,20,()=>n(M),e=>e,(e,r)=>{var a=ce();p(a,21,()=>n(j).filter(e=>e.group===r),e=>e.value,(e,r)=>{var a=se(),o=y(a,!0);x(a);var c={};s(()=>{i(o,n(r).label),c!==(c=n(r).value)&&(a.value=(a.__value=n(r).value)??``)}),t(e,a)}),x(a),s(()=>g(a,`label`,r)),t(e,a)}),x(d);var f;b(d),x(r),s(()=>{i(u,a.messages.chartType),f!==(f=C().chartType)&&(d.value=(d.__value=C().chartType)??``,S(d,C().chartType))}),o(`change`,d,e=>C().chartType=e.currentTarget.value),t(e,r)};r(z,e=>{w()===`panel`&&e(rt)});var B=c(z,2),it=e=>{var l=me(),u=f(l),d=y(u),m=y(d,!0);x(d);var h=c(d,2);p(h,21,()=>n(k).dates,e=>e.id,(e,r)=>{var a=ue(),o=y(a,!0);x(a);var c={};s(()=>{i(o,n(r).label),c!==(c=n(r).id)&&(a.value=(a.__value=n(r).id)??``)}),t(e,a)}),x(h);var g;b(h),x(u);var _=c(u,2);p(_,17,()=>ie,e=>e.key,(e,l)=>{var u=pe(),d=y(u),f=y(d,!0);x(d);var m=c(d,2),h=y(m),g=e=>{var n=de(),r=y(n,!0);x(n),n.value=n.__value=``,s(()=>i(r,a.messages.chartNone)),t(e,n)};r(h,e=>{n(l).key===`volume`&&e(g)});var _=c(h);p(_,17,()=>n(k).measures,e=>e.id,(e,r)=>{var a=fe(),o=y(a,!0);x(a);var c={};s(()=>{i(o,n(r).label),c!==(c=n(r).id)&&(a.value=(a.__value=n(r).id)??``)}),t(e,a)}),x(m);var v;b(m),x(u),s(()=>{i(f,a.messages[n(l).label]),v!==(v=C().chartOhlc[n(l).key]??``)&&(m.value=(m.__value=C().chartOhlc[n(l).key]??``)??``,S(m,C().chartOhlc[n(l).key]??``))}),o(`change`,m,e=>C().chartOhlc={...C().chartOhlc,[n(l).key]:e.currentTarget.value||null}),t(e,u)}),s(()=>{i(m,a.messages.chartDate),g!==(g=C().chartOhlcDateId??``)&&(h.value=(h.__value=C().chartOhlcDateId??``)??``,S(h,C().chartOhlcDateId??``))}),o(`change`,h,e=>C().chartDimensionId=e.currentTarget.value||null),t(e,l)},at=e=>{var r=ge(),l=y(r),u=y(l,!0);x(l);var d=c(l,2);p(d,21,()=>n(k).dims,e=>e.id,(e,r)=>{var a=he(),o=y(a,!0);x(a);var c={};s(()=>{i(o,n(r).label),c!==(c=n(r).id)&&(a.value=(a.__value=n(r).id)??``)}),t(e,a)}),x(d);var f;b(d),x(r),s(()=>{i(u,C().chartType===`sankey`?a.messages.chartFrom:C().chartType===`heatmap`?a.messages.chartColumns:a.messages.chartGroupBy),f!==(f=C().chartDimensionId??``)&&(d.value=(d.__value=C().chartDimensionId??``)??``,S(d,C().chartDimensionId??``))}),o(`change`,d,e=>C().chartDimensionId=e.currentTarget.value||null),t(e,r)};r(B,e=>{n(F)?e(it):n(P)&&e(at,1)});var V=c(B,2),ot=e=>{var r=ve(),l=y(r),u=y(l,!0);x(l);var d=c(l,2),f=y(d),m=y(f,!0);x(f),f.value=f.__value=``;var h=c(f);p(h,17,()=>n(k).dims,e=>e.id,(e,r)=>{var a=_e(),o=y(a,!0);x(a);var c={};s(()=>{i(o,n(r).label),c!==(c=n(r).id)&&(a.value=(a.__value=n(r).id)??``)}),t(e,a)}),x(d);var g;b(d),x(r),s(()=>{i(u,C().chartType===`sankey`?a.messages.chartTo:C().chartType===`heatmap`?a.messages.chartRows:a.messages.chartSplitBy),i(m,a.messages.chartNone),g!==(g=C().chartSeriesId??``)&&(d.value=(d.__value=C().chartSeriesId??``)??``,S(d,C().chartSeriesId??``))}),o(`change`,d,e=>C().chartSeriesId=e.currentTarget.value||null),t(e,r)};r(V,e=>{n(Ke)&&e(ot)});var H=c(V,2),st=e=>{var r=be(),l=y(r),u=y(l,!0);x(l);var d=c(l,2);p(d,21,()=>n(k).measures,e=>e.id,(e,r)=>{var a=ye(),o=y(a,!0);x(a);var c={};s(()=>{i(o,n(r).label),c!==(c=n(r).id)&&(a.value=(a.__value=n(r).id)??``)}),t(e,a)}),x(d);var f;b(d),x(r),s(e=>{i(u,e),f!==(f=C().chartMeasureId??``)&&(d.value=(d.__value=C().chartMeasureId??``)??``,S(d,C().chartMeasureId??``))},[()=>C().chartType===`scatter`?a.messages.chartX:O.includes(C().chartType)?a.messages.chartLow:C().chartType===`gauge`?a.messages.chartMetric:a.messages.chartValue]),o(`change`,d,e=>C().chartMeasureId=e.currentTarget.value||null),t(e,r)};r(H,e=>{n(tt)&&e(st)});var U=c(H,2),ct=e=>{var r=Se(),a=y(r),l=y(a,!0);x(a);var u=c(a,2);p(u,21,()=>n(k).measures,e=>e.id,(e,r)=>{var a=xe(),o=y(a,!0);x(a);var c={};s(()=>{i(o,n(r).label),c!==(c=n(r).id)&&(a.value=(a.__value=n(r).id)??``)}),t(e,a)}),x(u);var d;b(u),x(r),s(()=>{i(l,n(Ze)),d!==(d=C().effectiveChartMeasure2Id??``)&&(u.value=(u.__value=C().effectiveChartMeasure2Id??``)??``,S(u,C().effectiveChartMeasure2Id??``))}),o(`change`,u,e=>C().chartMeasure2Id=e.currentTarget.value||null),t(e,r)};r(U,e=>{n(Xe)&&e(ct)});var lt=c(U,2),ut=e=>{var r=we(),l=y(r),u=y(l,!0);x(l);var d=c(l,2);p(d,21,()=>n(He),e=>e.value,(e,r)=>{var a=Ce(),o=y(a,!0);x(a);var c={};s(()=>{i(o,n(r).label),c!==(c=n(r).value)&&(a.value=(a.__value=n(r).value)??``)}),t(e,a)}),x(d);var f;b(d),x(r),s(()=>{i(u,a.messages.chartAggregate),f!==(f=C().chartReduce)&&(d.value=(d.__value=C().chartReduce)??``,S(d,C().chartReduce))}),o(`change`,d,e=>C().chartReduce=e.currentTarget.value),t(e,r)};r(lt,e=>{n(nt)&&e(ut)});var dt=c(lt,2),ft=e=>{var n=Te(),r=y(n),l=y(r,!0);x(r);var f=c(r,2);u(f),x(n),s(()=>{g(n,`title`,a.messages.chartBinsTitle),i(l,a.messages.chartBins),d(f,C().chartBins??``),g(f,`placeholder`,a.messages.chartBuilderAuto)}),o(`change`,f,e=>C().chartBins=e.currentTarget.value?Number(e.currentTarget.value):null),t(e,n)};r(dt,e=>{n(et)&&e(ft)});var pt=c(dt,2),mt=e=>{var n=Ee(),r=y(n),l=y(r,!0);x(r);var u=c(r,2),d=y(u),f=y(d,!0);x(d),d.value=d.__value=`trapezoid`;var p=c(d),m=y(p,!0);x(p),p.value=p.__value=`pyramid`;var h=c(p),g=y(h,!0);x(h),h.value=h.__value=`cone`,x(u);var _;b(u),x(n),s(()=>{i(l,a.messages.chartShape),i(f,a.messages.chartShapeFunnel),i(m,a.messages.chartShapePyramid),i(g,a.messages.chartShapeCone),_!==(_=C().chartFunnelShape??`trapezoid`)&&(u.value=(u.__value=C().chartFunnelShape??`trapezoid`)??``,S(u,C().chartFunnelShape??`trapezoid`))}),o(`change`,u,e=>C().chartFunnelShape=e.currentTarget.value),t(e,n)};r(pt,e=>{n(Qe)&&e(mt)});var ht=c(pt,2),gt=e=>{var n=De(),r=y(n),l=y(r,!0);x(r);var u=c(r,2),d=y(u),f=y(d,!0);x(d),d.value=d.__value=`classic`;var p=c(d),m=y(p,!0);x(p),p.value=p.__value=`hollow`;var h=c(p),g=y(h,!0);x(h),h.value=h.__value=`heikin-ashi`,x(u);var _;b(u),x(n),s(()=>{i(l,a.messages.chartCandles),i(f,a.messages.chartCandlesClassic),i(m,a.messages.chartCandlesHollow),i(g,a.messages.chartCandlesHeikinAshi),_!==(_=C().chartCandleStyle??`classic`)&&(u.value=(u.__value=C().chartCandleStyle??`classic`)??``,S(u,C().chartCandleStyle??`classic`))}),o(`change`,u,e=>C().chartCandleStyle=e.currentTarget.value),t(e,n)};r(ht,e=>{n($e)&&e(gt)});var _t=c(ht,2),vt=e=>{var r=ke(),l=y(r),u=y(l,!0);x(l);var d=c(l,2);p(d,21,()=>re,e=>e.value,(e,r)=>{var c=Oe();let l;var u=y(c,!0);x(c),s((e,t)=>{l=ee(c,1,`sv-grid-chart-chip`,null,l,e),g(c,`aria-pressed`,t),g(c,`title`,a.messages[n(r).title]),i(u,a.messages[n(r).label])},[()=>({"is-on":C().chartIndicators.includes(n(r).value)}),()=>C().chartIndicators.includes(n(r).value)]),o(`click`,c,()=>Ue(n(r).value)),t(e,c)}),x(d),x(r),s(()=>{g(r,`aria-label`,a.messages.chartIndicators),i(u,a.messages.chartIndicators)}),t(e,r)};r(_t,e=>{n(F)&&e(vt)});var W=c(_t,2),G=y(W),yt=y(G,!0);x(G);var K=c(G,2),q=y(K),bt=y(q,!0);x(q),q.value=q.__value=`number`;var J=c(q),xt=y(J,!0);x(J),J.value=J.__value=`currency`;var Y=c(J),St=y(Y,!0);x(Y),Y.value=Y.__value=`percent`,x(K);var Ct;b(K),x(W);var wt=c(W,2),Tt=e=>{var n=Ae(),r=f(n),l=y(r);u(l);var d=c(l);x(r);var p=c(r,2),h=y(p);u(h);var _=c(h);x(p),s(()=>{m(l,C().chartStacked),i(d,` ${a.messages.chartStacked??``}`),g(p,`title`,a.messages.chartStacked100Title),m(h,C().chartStacked100),i(_,` ${a.messages.chartStacked100??``}`)}),o(`change`,l,e=>C().chartStacked=e.currentTarget.checked),o(`change`,h,e=>C().chartStacked100=e.currentTarget.checked),t(e,n)};r(wt,e=>{n(qe)&&e(Tt)});var Et=c(wt,2),Dt=e=>{var n=je(),r=y(n);u(r);var l=c(r);x(n),s(()=>{g(n,`title`,a.messages.chartHorizontalTitle),m(r,C().chartOrientation===`horizontal`),i(l,` ${a.messages.chartHorizontal??``}`)}),o(`change`,r,e=>C().chartOrientation=e.currentTarget.checked?`horizontal`:`vertical`),t(e,n)};r(Et,e=>{n(We)&&e(Dt)});var Ot=c(Et,2),kt=e=>{var n=Me(),r=y(n);u(r);var l=c(r);x(n),s(()=>{m(r,C().chartDonut),i(l,` ${a.messages.chartDonut??``}`)}),o(`change`,r,e=>C().chartDonut=e.currentTarget.checked),t(e,n)};r(Ot,e=>{n(Ge)&&e(kt)});var X=c(Ot,2),Z=y(X),At=y(Z,!0);x(Z);var Q=c(Z,2);p(Q,21,()=>E,e=>e.key,(e,r)=>{var o=Ne(),c=y(o,!0);x(o);var l={};s(()=>{i(c,a.messages[n(r).label]),l!==(l=n(r).key)&&(o.value=(o.__value=n(r).key)??``)}),t(e,o)}),x(Q);var jt;b(Q),x(X);var Mt=c(X,2),Nt=e=>{var n=Pe(),r=y(n);u(r);var l=c(r);x(n),s(()=>{m(r,C().chartDataLabels),i(l,` ${a.messages.chartLabels??``}`)}),o(`change`,r,e=>C().chartDataLabels=e.currentTarget.checked),t(e,n)};r(Mt,e=>{n(Ye)&&e(Nt)});var Pt=c(Mt,2),Ft=e=>{var n=Fe(),r=y(n);u(r);var l=c(r);x(n),s(()=>{g(n,`title`,a.messages.chartLogScaleTitle),m(r,C().chartLogScale),i(l,` ${a.messages.chartLogScale??``}`)}),o(`change`,r,e=>C().chartLogScale=e.currentTarget.checked),t(e,n)};r(Pt,e=>{n(Je)&&e(Ft)});var It=c(Pt,2),Lt=e=>{var r=Le(),l=y(r),u=y(l,!0);x(l);var d=c(l,2);p(d,21,()=>oe,e=>e.value,(e,r)=>{var o=Ie(),c=y(o,!0);x(o);var l={};s(()=>{i(c,a.messages[n(r).label]),l!==(l=n(r).value)&&(o.value=(o.__value=n(r).value)??``)}),t(e,o)}),x(d);var f;b(d),x(r),s(()=>{g(r,`title`,a.messages.chartBucketTitle),i(u,a.messages.chartBucket),f!==(f=C().chartBucket??``)&&(d.value=(d.__value=C().chartBucket??``)??``,S(d,C().chartBucket??``))}),o(`change`,d,e=>C().chartBucket=e.currentTarget.value||null),t(e,r)};r(It,e=>{C().chartDimensionIsDate&&n(P)&&e(Lt)});var $=c(It,2),Rt=e=>{var n=Re(),r=y(n);u(r);var l=c(r);x(n),s(()=>{g(n,`title`,a.messages.chartDateAxisTitle),m(r,C().chartTimeAxis),i(l,` ${a.messages.chartDateAxis??``}`)}),o(`change`,r,e=>C().chartTimeAxis=e.currentTarget.checked),t(e,n)},zt=l(()=>C().chartDimensionIsDate&&ae.includes(C().chartType));r($,e=>{n(zt)&&e(Rt)});var Bt=c($,2),Vt=e=>{var n=ze(),r=y(n,!0);x(n),s(()=>i(r,a.messages.chartPivotHint)),t(e,n)},Ht=e=>{var r=Be(),a=y(r,!0);x(r),s(()=>i(a,n(I))),t(e,r)};r(Bt,e=>{n(A)?e(Vt):n(I)&&e(Ht,1)}),x(L),s(()=>{R=ee(L,1,`sv-grid-chart-controls`,null,R,{"is-form":w()===`builder`}),g(L,`data-scope`,w()),i(yt,a.messages.chartFormat),i(bt,a.messages.chartFormatNumber),i(xt,a.messages.chartFormatCurrency),i(St,a.messages.chartFormatPercent),Ct!==(Ct=C().chartValueFormat)&&(K.value=(K.__value=C().chartValueFormat)??``,S(K,C().chartValueFormat)),i(At,a.messages.chartColours),jt!==(jt=n(N))&&(Q.value=(Q.__value=n(N))??``,S(Q,n(N)))}),o(`change`,K,e=>C().chartValueFormat=e.currentTarget.value),o(`change`,Q,e=>C().chartPalette=E.find(t=>t.key===e.currentTarget.value)?.colors??null),t(e,L),_()}e([`change`,`click`]);var A={chartPanelTitle:`Chart`,chartClearFilter:`Clear filter`,chartExport:`Export`,chartExportLabel:`Export chart`,chartExportPng:`PNG image`,chartExportSvg:`SVG vector`,chartExportPdf:`PDF document`,chartExportCsv:`CSV data`,chartExportCopy:`Copy to clipboard`,chartExportPrint:`Print`,chartExportDescribe:`Describe chart`,chartAi:`AI`,chartAiLabel:`Chart with AI`,chartAiPlaceholder:`Describe a chart, e.g. revenue by region stacked by product`,chartAiRun:`Chart it`,chartAiThinking:`Thinking...`,chartAiExplain:`Explain`,chartAiExplainTitle:`Explain this chart in plain words`,chartAiNoChart:`Couldn't build a chart from that request.`,chartAiNoExplanation:`Couldn't explain this chart.`,chartAiFailed:`Something went wrong.`,chartBuild:`Build`,chartBuildLabel:`Open the chart builder`,chartBuildTitle:`Chart builder: type gallery, data and format`,chartLinkBack:`Link the chart back to the grid`,chartUnlink:`Unlink the chart from the grid`,chartLinkedTitle:`Linked: the chart follows the grid's rows. Click to freeze it.`,chartUnlinkedTitle:`Unlinked: the chart keeps the data it has. Click to follow the grid again.`,chartAdd:`Add chart`,chartSave:`Save`,chartSaveLabel:`Saved charts`,chartSavedTitle:`Saved charts`,chartSaveName:`Save this chart as`,chartSaveNamePlaceholder:`Name`,chartSaveApply:`Apply`,chartPivotHint:`Charting the pivot: its row groups are the categories and its column groups the series.`,chartSaveRemove:`Remove`,chartSavedEmpty:`No saved charts yet.`,chartMaximize:`Maximize`,chartRestore:`Restore`,chartDock:`Dock`,chartDockLabel:`Dock chart`,chartPopOut:`Pop out`,chartPopOutLabel:`Pop out chart`,chartClose:`Close chart`,chartResize:`Resize chart panel`,chartResizeWindow:`Resize chart window`,chartTabs:`Charts`,chartRemoveTab:`Remove {title}`,chartRemove:`Remove`,chartEmptyColumns:`Charting needs at least one text column (to group by) and one numeric column (to measure).`,chartEmptyData:`No data to chart.`,chartType:`Type`,chartDate:`Date`,chartGroupBy:`Group by`,chartFrom:`From`,chartColumns:`Columns`,chartSplitBy:`Split by`,chartTo:`To`,chartRows:`Rows`,chartNone:`(none)`,chartValue:`Value`,chartX:`X`,chartY:`Y`,chartLow:`Low`,chartHigh:`High`,chartOpen:`Open`,chartClosePrice:`Close`,chartVolume:`Volume`,chartMetric:`Metric`,chartTarget:`Target`,chartAggregate:`Aggregate`,chartReduceSum:`Sum`,chartReduceAvg:`Average`,chartReduceCount:`Count`,chartReduceMin:`Min`,chartReduceMax:`Max`,chartReduceMedian:`Median`,chartReduceP90:`90th percentile`,chartReduceFirst:`First`,chartReduceLast:`Last`,chartReduceCountDistinct:`Distinct count`,chartBins:`Bins`,chartBinsTitle:`How many bins the sample is split into`,chartShape:`Shape`,chartShapeFunnel:`Funnel`,chartShapePyramid:`Pyramid`,chartShapeCone:`Cone`,chartCandles:`Candles`,chartCandlesClassic:`Classic`,chartCandlesHollow:`Hollow`,chartCandlesHeikinAshi:`Heikin-Ashi`,chartIndicators:`Indicators`,chartIndVolume:`Volume`,chartIndVolumeTitle:`Volume bars under the price`,chartIndRsi:`RSI`,chartIndRsiTitle:`Relative strength index, 14 bars`,chartIndMacd:`MACD`,chartIndMacdTitle:`MACD 12 / 26 / 9`,chartIndStochastic:`Stoch`,chartIndStochasticTitle:`Stochastic oscillator 14 / 3`,chartIndAtr:`ATR`,chartIndAtrTitle:`Average true range, 14 bars`,chartIndObv:`OBV`,chartIndObvTitle:`On-balance volume`,chartIndSma:`SMA 20`,chartIndSmaTitle:`20-bar simple moving average on the price`,chartIndEma:`EMA 20`,chartIndEmaTitle:`20-bar exponential moving average on the price`,chartIndBb:`Bollinger`,chartIndBbTitle:`Bollinger bands 20 / 2 on the price`,chartIndVwap:`VWAP`,chartIndVwapTitle:`Volume-weighted average price on the price`,chartFormat:`Format`,chartFormatNumber:`Number`,chartFormatCurrency:`Currency`,chartFormatPercent:`Percent`,chartStacked:`Stacked`,chartStacked100:`100%`,chartStacked100Title:`Normalise each category to 100 percent`,chartHorizontal:`Horizontal`,chartHorizontalTitle:`Bars grow rightwards - suits long category labels`,chartDonut:`Donut`,chartColours:`Colours`,chartPaletteTheme:`Theme`,chartPaletteOcean:`Ocean`,chartPaletteSunset:`Sunset`,chartPaletteForest:`Forest`,chartPaletteSlate:`Slate`,chartLabels:`Labels`,chartLogScale:`Log scale`,chartLogScaleTitle:`Logarithmic value axis - flattens wide-range data`,chartBucket:`Bucket`,chartBucketTitle:`Group the dates by calendar unit: one bar per month instead of one per day`,chartBucketExact:`Exact`,chartBucketDay:`Day`,chartBucketWeek:`Week`,chartBucketMonth:`Month`,chartBucketQuarter:`Quarter`,chartBucketYear:`Year`,chartDateAxis:`Date axis`,chartDateAxisTitle:`Space points by actual date - real time ticks and proportional gaps`,chartGroupCompare:`Compare`,chartGroupPartOfWhole:`Part of a whole`,chartGroupFlow:`Flow`,chartGroupDistribution:`Distribution`,chartGroupSingleValue:`Single value`,chartGroupOverTime:`Over time`,chartTypeBar:`Bar`,chartTypeLine:`Line`,chartTypeArea:`Area`,chartTypeLollipop:`Lollipop`,chartTypePareto:`Pareto`,chartTypeRangeBar:`Range bar`,chartTypeRangeArea:`Range area`,chartTypeDumbbell:`Dumbbell`,chartTypeRadialColumn:`Radial column`,chartTypeRadialBar:`Radial bar`,chartTypeNightingale:`Nightingale`,chartTypePie:`Pie`,chartTypeTreemap:`Tree map`,chartTypeSunburst:`Sunburst`,chartTypeFunnel:`Funnel`,chartTypeWaterfall:`Waterfall`,chartTypeSankey:`Sankey`,chartTypeChord:`Chord`,chartTypeRadar:`Radar`,chartTypeHeatmap:`Heat map`,chartTypeScatter:`Scatter`,chartTypeBoxplot:`Box plot`,chartTypeHistogram:`Histogram`,chartTypeGauge:`Gauge`,chartTypeBullet:`Bullet`,chartTypeCalendar:`Calendar`,chartTypeStream:`Stream`,chartTypeCandlestick:`Candlestick`,chartTypeOhlc:`OHLC bars`,chartIssueHeatmap:`Heat map needs a Split by column for its rows.`,chartIssueSankey:`Sankey needs a Split by column: Group by is the source, Split by the target.`,chartIssueRadar:`Radar needs at least 3 groups.`,chartIssueFunnel:`Funnel needs at least 2 stages.`,chartIssueChord:`Chord needs a Split by column: Group by and Split by are the two ends of each flow.`,chartIssueStream:`Stream needs a Split by column: each split becomes a layer.`,chartIssueSecondMeasure:`Pick a second measure for the high end of the range.`,chartIssueOhlcDate:`Candlesticks need a date column.`,chartIssueOhlcColumns:`Pick the Open, High, Low and Close columns.`,chartBuilderTitle:`Chart builder`,chartBuilderTabType:`Type`,chartBuilderTabData:`Data`,chartBuilderTabFormat:`Format`,chartBuilderLinked:`Linked to the grid`,chartBuilderFrozenAt:`Frozen at {time}; edits, filters and new rows no longer change it.`,chartBuilderFollows:`The chart follows the grid's rows, filters and edits.`,chartBuilderTitleField:`Title`,chartBuilderSubtitle:`Subtitle`,chartBuilderCaption:`Caption`,chartBuilderLegend:`Legend`,chartLegendBottom:`Bottom`,chartLegendTop:`Top`,chartLegendLeft:`Left`,chartLegendRight:`Right`,chartLegendHidden:`Hidden`,chartBuilderDataLabels:`Data labels`,chartBuilderPanelSetting:`Panel setting`,chartLabelsTop:`Top`,chartLabelsOutside:`Outside`,chartLabelsInside:`Inside`,chartLabelsCenter:`Center`,chartLabelsHidden:`Hidden`,chartBuilderSeriesLabels:`Series labels`,chartBuilderCrosshairLabels:`Crosshair labels`,chartBuilderCompactBelow:`Compact under`,chartBuilderCompactBelowTitle:`Below this width in px the chart drops its series and data labels, turns the category labels vertical and hides the legend`,chartBuilderValueAxis:`Value axis`,chartBuilderRightAxis:`Right axis`,chartBuilderCategoryAxis:`Category axis`,chartBuilderMin:`Min`,chartBuilderMax:`Max`,chartBuilderAuto:`auto`,chartBuilderOff:`off`,chartBuilderGridLines:`Grid lines`,chartBuilderAxisLabels:`Labels`,chartBuilderLabelsAuto:`Auto`,chartBuilderLabelsHorizontal:`Horizontal`,chartBuilderLabelsTilted:`Tilted`,chartBuilderLabelsVertical:`Vertical`,chartBuilderSeries:`Series`,chartBuilderColor:`Color`,chartBuilderSeriesType:`Type`,chartBuilderAxis:`Axis`,chartBuilderMarker:`Marker`,chartBuilderWidth:`Width`,chartBuilderStack:`Stack`,chartBuilderStackPlaceholder:`own`,chartBuilderSeriesColorLabel:`{series} colour`,chartBuilderSeriesTypeLabel:`{series} type`,chartBuilderSeriesAxisLabel:`{series} axis`,chartBuilderSeriesMarkerLabel:`{series} marker`,chartBuilderSeriesWidthLabel:`{series} line width`,chartBuilderSeriesStackLabel:`{series} stack group`,chartBuilderChartType:`Chart`,chartBuilderBar:`Bar`,chartBuilderLine:`Line`,chartBuilderArea:`Area`,chartBuilderLeft:`Left`,chartBuilderRight:`Right`,chartBuilderStyle:`Style`,chartBuilderFontSize:`Font size`,chartBuilderFontFamily:`Font`,chartBuilderBackground:`Background`,chartBuilderTextColor:`Text`,chartBuilderResetFormat:`Reset format`};function j(e){return C(A,e)}function M(e,t){return e.replace(/\{(\w+)\}/g,(e,n)=>n in t?String(t[n]):`{${n}}`)}export{T as i,j as n,k as r,M as t};
1
+ import{H as e,I as t,K as n,M as r,P as i,R as a,U as o,X as s,at as c,dt as l,f as u,g as d,it as f,k as p,m,mt as h,p as g,pt as _,r as v,rt as y,v as b,vt as x,x as ee,y as S}from"./disclose-version-CIm4S9xS.js";import{a as C}from"./editor-contract-Bpoa7A5g.js";import{h as te}from"./chart-Cn7MnNqA.js";var w=[{value:`bar`,label:`chartTypeBar`,group:`chartGroupCompare`},{value:`line`,label:`chartTypeLine`,group:`chartGroupCompare`},{value:`area`,label:`chartTypeArea`,group:`chartGroupCompare`},{value:`lollipop`,label:`chartTypeLollipop`,group:`chartGroupCompare`},{value:`pareto`,label:`chartTypePareto`,group:`chartGroupCompare`},{value:`range-bar`,label:`chartTypeRangeBar`,group:`chartGroupCompare`,needs:e=>e.measures.length>=2},{value:`range-area`,label:`chartTypeRangeArea`,group:`chartGroupCompare`,needs:e=>e.measures.length>=2},{value:`dumbbell`,label:`chartTypeDumbbell`,group:`chartGroupCompare`,needs:e=>e.measures.length>=2},{value:`radial-column`,label:`chartTypeRadialColumn`,group:`chartGroupCompare`},{value:`radial-bar`,label:`chartTypeRadialBar`,group:`chartGroupCompare`},{value:`nightingale`,label:`chartTypeNightingale`,group:`chartGroupCompare`},{value:`pie`,label:`chartTypePie`,group:`chartGroupPartOfWhole`},{value:`treemap`,label:`chartTypeTreemap`,group:`chartGroupPartOfWhole`},{value:`sunburst`,label:`chartTypeSunburst`,group:`chartGroupPartOfWhole`},{value:`funnel`,label:`chartTypeFunnel`,group:`chartGroupFlow`},{value:`waterfall`,label:`chartTypeWaterfall`,group:`chartGroupFlow`},{value:`sankey`,label:`chartTypeSankey`,group:`chartGroupFlow`,needs:e=>e.dims.length>=2},{value:`chord`,label:`chartTypeChord`,group:`chartGroupFlow`,needs:e=>e.dims.length>=2},{value:`radar`,label:`chartTypeRadar`,group:`chartGroupDistribution`},{value:`heatmap`,label:`chartTypeHeatmap`,group:`chartGroupDistribution`,needs:e=>e.dims.length>=2},{value:`scatter`,label:`chartTypeScatter`,group:`chartGroupDistribution`,needs:e=>e.measures.length>=2},{value:`boxplot`,label:`chartTypeBoxplot`,group:`chartGroupDistribution`},{value:`histogram`,label:`chartTypeHistogram`,group:`chartGroupDistribution`},{value:`gauge`,label:`chartTypeGauge`,group:`chartGroupSingleValue`},{value:`bullet`,label:`chartTypeBullet`,group:`chartGroupSingleValue`},{value:`calendar`,label:`chartTypeCalendar`,group:`chartGroupOverTime`,needs:e=>e.dates.length>=1},{value:`stream`,label:`chartTypeStream`,group:`chartGroupOverTime`,needs:e=>e.dims.length>=2},{value:`candlestick`,label:`chartTypeCandlestick`,group:`chartGroupOverTime`,needs:e=>e.dates.length>=1&&e.measures.length>=4},{value:`ohlc`,label:`chartTypeOhlc`,group:`chartGroupOverTime`,needs:e=>e.dates.length>=1&&e.measures.length>=4}];function T(e,t){return w.filter(t=>!t.needs||t.needs(e)).map(e=>({value:e.value,label:t[e.label],group:t[e.group]}))}function ne(e){return[{value:`sum`,label:e.chartReduceSum},{value:`avg`,label:e.chartReduceAvg},{value:`count`,label:e.chartReduceCount},{value:`min`,label:e.chartReduceMin},{value:`max`,label:e.chartReduceMax},{value:`median`,label:e.chartReduceMedian},{value:`p90`,label:e.chartReduceP90},{value:`first`,label:e.chartReduceFirst},{value:`last`,label:e.chartReduceLast},{value:`countDistinct`,label:e.chartReduceCountDistinct}]}var E=[{key:`theme`,label:`chartPaletteTheme`,colors:null},{key:`ocean`,label:`chartPaletteOcean`,colors:[`#0ea5e9`,`#14b8a6`,`#6366f1`,`#8b5cf6`,`#06b6d4`]},{key:`sunset`,label:`chartPaletteSunset`,colors:[`#f59e0b`,`#ef4444`,`#ec4899`,`#8b5cf6`,`#f97316`]},{key:`forest`,label:`chartPaletteForest`,colors:[`#16a34a`,`#65a30d`,`#0d9488`,`#4d7c0f`,`#0891b2`]},{key:`slate`,label:`chartPaletteSlate`,colors:[`#475569`,`#0ea5e9`,`#64748b`,`#38bdf8`,`#94a3b8`]}],re=[{value:`volume`,label:`chartIndVolume`,title:`chartIndVolumeTitle`},{value:`rsi`,label:`chartIndRsi`,title:`chartIndRsiTitle`},{value:`macd`,label:`chartIndMacd`,title:`chartIndMacdTitle`},{value:`stochastic`,label:`chartIndStochastic`,title:`chartIndStochasticTitle`},{value:`atr`,label:`chartIndAtr`,title:`chartIndAtrTitle`},{value:`obv`,label:`chartIndObv`,title:`chartIndObvTitle`},{value:`sma`,label:`chartIndSma`,title:`chartIndSmaTitle`},{value:`ema`,label:`chartIndEma`,title:`chartIndEmaTitle`},{value:`bb`,label:`chartIndBb`,title:`chartIndBbTitle`},{value:`vwap`,label:`chartIndVwap`,title:`chartIndVwapTitle`}],D=[`sma`,`ema`,`bb`,`vwap`],ie=[{key:`open`,label:`chartOpen`},{key:`high`,label:`chartHigh`},{key:`low`,label:`chartLow`},{key:`close`,label:`chartClosePrice`},{key:`volume`,label:`chartVolume`}],ae=[`bar`,`line`,`area`,`lollipop`,`pareto`,`range-bar`,`range-area`,`dumbbell`,`stream`],O=[`range-bar`,`range-area`,`dumbbell`],oe=[{value:``,label:`chartBucketExact`},{value:`day`,label:`chartBucketDay`},{value:`week`,label:`chartBucketWeek`},{value:`month`,label:`chartBucketMonth`},{value:`quarter`,label:`chartBucketQuarter`},{value:`year`,label:`chartBucketYear`}],se=a(`<option> </option>`),ce=a(`<optgroup></optgroup>`),le=a(`<label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <select></select></label>`),ue=a(`<option> </option>`),de=a(`<option> </option>`),fe=a(`<option> </option>`),pe=a(`<label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <select><!><!></select></label>`),me=a(`<label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <select></select></label> <!>`,1),he=a(`<option> </option>`),ge=a(`<label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <select></select></label>`),_e=a(`<option> </option>`),ve=a(`<label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <select><option> </option><!></select></label>`),ye=a(`<option> </option>`),be=a(`<label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <select></select></label>`),xe=a(`<option> </option>`),Se=a(`<label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <select></select></label>`),Ce=a(`<option> </option>`),we=a(`<label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <select></select></label>`),Te=a(`<label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <input class="sv-grid-chart-num" type="number" min="1" max="200"/></label>`),Ee=a(`<label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <select><option> </option><option> </option><option> </option></select></label>`),De=a(`<label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <select><option> </option><option> </option><option> </option></select></label>`),Oe=a(`<button type="button"> </button>`),ke=a(`<span class="sv-grid-chart-ctl sv-grid-chart-indicators" role="group"><span class="sv-grid-chart-ctl-lbl"> </span> <span class="sv-grid-chart-chips"></span></span>`),Ae=a(`<label class="sv-grid-chart-toggle"><input type="checkbox"/> </label> <label class="sv-grid-chart-toggle"><input type="checkbox"/> </label>`,1),je=a(`<label class="sv-grid-chart-toggle"><input type="checkbox"/> </label>`),Me=a(`<label class="sv-grid-chart-toggle"><input type="checkbox"/> </label>`),Ne=a(`<option> </option>`),Pe=a(`<label class="sv-grid-chart-toggle"><input type="checkbox"/> </label>`),Fe=a(`<label class="sv-grid-chart-toggle"><input type="checkbox"/> </label>`),Ie=a(`<option> </option>`),Le=a(`<label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <select></select></label>`),Re=a(`<label class="sv-grid-chart-toggle"><input type="checkbox"/> </label>`),ze=a(`<p class="sv-grid-chart-hint sv-grid-chart-pivot-hint" role="note"> </p>`),Be=a(`<p class="sv-grid-chart-hint" role="note"> </p>`),Ve=a(`<div><!> <!> <!> <!> <!> <!> <!> <!> <!> <!> <label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <select><option> </option><option> </option><option> </option></select></label> <!> <!> <!> <label class="sv-grid-chart-ctl"><span class="sv-grid-chart-ctl-lbl"> </span> <select></select></label> <!> <!> <!> <!> <!></div>`);function k(e,a){h(a,!0);let C=v(a,`ctrl`,7),w=v(a,`scope`,3,`panel`),k=l(()=>C().chartableColumns),A=l(()=>C().pivotResult!=null),j=l(()=>T(n(k),a.messages).filter(e=>!n(A)||te(e.value)===e.value)),M=l(()=>[...new Set(n(j).map(e=>e.group))]),He=l(()=>ne(a.messages));function Ue(e){let t=C().chartIndicators.includes(e),n=D.includes(e)?C().chartIndicators.filter(e=>!D.includes(e)):C().chartIndicators;C().chartIndicators=t?n.filter(t=>t!==e):[...n,e]}let N=l(()=>E.find(e=>e.colors&&C().chartPalette&&e.colors.join()===C().chartPalette.join())?.key??`theme`),We=l(()=>C().chartType===`bar`),Ge=l(()=>C().chartType===`pie`||C().chartType===`sunburst`),P=l(()=>!n(A)&&C().chartType!==`gauge`&&C().chartType!==`histogram`),Ke=l(()=>!n(A)&&n(k).dims.length>1&&![`pie`,`gauge`,`waterfall`,`funnel`,`calendar`,`bullet`,`pareto`,`radial-bar`].includes(C().chartType)),qe=l(()=>[`bar`,`line`,`area`,`radial-column`].includes(C().chartType)),Je=l(()=>ae.includes(C().chartType)||C().chartType===`scatter`||C().chartType===`boxplot`||C().chartType===`histogram`),Ye=l(()=>![`gauge`,`sankey`,`calendar`,`treemap`,`scatter`,`boxplot`,`chord`,`sunburst`,`stream`].includes(C().chartType)),Xe=l(()=>!n(A)&&(C().chartType===`scatter`||O.includes(C().chartType)||C().chartType===`bullet`)),Ze=l(()=>C().chartType===`scatter`?a.messages.chartY:C().chartType===`bullet`?a.messages.chartTarget:a.messages.chartHigh),Qe=l(()=>C().chartType===`funnel`),$e=l(()=>C().chartType===`candlestick`),F=l(()=>!n(A)&&C().chartIsOhlc),et=l(()=>!n(A)&&C().chartType===`histogram`),tt=l(()=>!n(A)&&!C().chartIsOhlc),nt=l(()=>!n(A)&&C().chartType!==`scatter`&&C().chartType!==`boxplot`&&C().chartType!==`histogram`&&!C().chartIsOhlc),I=l(()=>{let e=C().chartType,t=C().chartSpec?.categories.length??0;if(e===`heatmap`&&!C().chartSeriesId&&n(k).dims.length>1)return a.messages.chartIssueHeatmap;if(e===`sankey`&&!C().chartSeriesId)return a.messages.chartIssueSankey;if(e===`radar`&&t>0&&t<3)return a.messages.chartIssueRadar;if(e===`funnel`&&t===1)return a.messages.chartIssueFunnel;if(e===`chord`&&!C().chartSeriesId)return a.messages.chartIssueChord;if(e===`stream`&&!C().chartSeriesId)return a.messages.chartIssueStream;if(O.includes(e)&&!C().effectiveChartMeasure2Id)return a.messages.chartIssueSecondMeasure;if(C().chartIsOhlc){let e=C().chartOhlc;if(!C().chartOhlcDateId)return a.messages.chartIssueOhlcDate;if(!e.open||!e.high||!e.low||!e.close)return a.messages.chartIssueOhlcColumns}return null});var L=Ve();let R;var z=y(L),rt=e=>{var r=le(),l=y(r),u=y(l,!0);x(l);var d=c(l,2);p(d,20,()=>n(M),e=>e,(e,r)=>{var a=ce();p(a,21,()=>n(j).filter(e=>e.group===r),e=>e.value,(e,r)=>{var a=se(),o=y(a,!0);x(a);var c={};s(()=>{i(o,n(r).label),c!==(c=n(r).value)&&(a.value=(a.__value=n(r).value)??``)}),t(e,a)}),x(a),s(()=>g(a,`label`,r)),t(e,a)}),x(d);var f;b(d),x(r),s(()=>{i(u,a.messages.chartType),f!==(f=C().chartType)&&(d.value=(d.__value=C().chartType)??``,S(d,C().chartType))}),o(`change`,d,e=>C().chartType=e.currentTarget.value),t(e,r)};r(z,e=>{w()===`panel`&&e(rt)});var B=c(z,2),it=e=>{var l=me(),u=f(l),d=y(u),m=y(d,!0);x(d);var h=c(d,2);p(h,21,()=>n(k).dates,e=>e.id,(e,r)=>{var a=ue(),o=y(a,!0);x(a);var c={};s(()=>{i(o,n(r).label),c!==(c=n(r).id)&&(a.value=(a.__value=n(r).id)??``)}),t(e,a)}),x(h);var g;b(h),x(u);var _=c(u,2);p(_,17,()=>ie,e=>e.key,(e,l)=>{var u=pe(),d=y(u),f=y(d,!0);x(d);var m=c(d,2),h=y(m),g=e=>{var n=de(),r=y(n,!0);x(n),n.value=n.__value=``,s(()=>i(r,a.messages.chartNone)),t(e,n)};r(h,e=>{n(l).key===`volume`&&e(g)});var _=c(h);p(_,17,()=>n(k).measures,e=>e.id,(e,r)=>{var a=fe(),o=y(a,!0);x(a);var c={};s(()=>{i(o,n(r).label),c!==(c=n(r).id)&&(a.value=(a.__value=n(r).id)??``)}),t(e,a)}),x(m);var v;b(m),x(u),s(()=>{i(f,a.messages[n(l).label]),v!==(v=C().chartOhlc[n(l).key]??``)&&(m.value=(m.__value=C().chartOhlc[n(l).key]??``)??``,S(m,C().chartOhlc[n(l).key]??``))}),o(`change`,m,e=>C().chartOhlc={...C().chartOhlc,[n(l).key]:e.currentTarget.value||null}),t(e,u)}),s(()=>{i(m,a.messages.chartDate),g!==(g=C().chartOhlcDateId??``)&&(h.value=(h.__value=C().chartOhlcDateId??``)??``,S(h,C().chartOhlcDateId??``))}),o(`change`,h,e=>C().chartDimensionId=e.currentTarget.value||null),t(e,l)},at=e=>{var r=ge(),l=y(r),u=y(l,!0);x(l);var d=c(l,2);p(d,21,()=>n(k).dims,e=>e.id,(e,r)=>{var a=he(),o=y(a,!0);x(a);var c={};s(()=>{i(o,n(r).label),c!==(c=n(r).id)&&(a.value=(a.__value=n(r).id)??``)}),t(e,a)}),x(d);var f;b(d),x(r),s(()=>{i(u,C().chartType===`sankey`?a.messages.chartFrom:C().chartType===`heatmap`?a.messages.chartColumns:a.messages.chartGroupBy),f!==(f=C().chartDimensionId??``)&&(d.value=(d.__value=C().chartDimensionId??``)??``,S(d,C().chartDimensionId??``))}),o(`change`,d,e=>C().chartDimensionId=e.currentTarget.value||null),t(e,r)};r(B,e=>{n(F)?e(it):n(P)&&e(at,1)});var V=c(B,2),ot=e=>{var r=ve(),l=y(r),u=y(l,!0);x(l);var d=c(l,2),f=y(d),m=y(f,!0);x(f),f.value=f.__value=``;var h=c(f);p(h,17,()=>n(k).dims,e=>e.id,(e,r)=>{var a=_e(),o=y(a,!0);x(a);var c={};s(()=>{i(o,n(r).label),c!==(c=n(r).id)&&(a.value=(a.__value=n(r).id)??``)}),t(e,a)}),x(d);var g;b(d),x(r),s(()=>{i(u,C().chartType===`sankey`?a.messages.chartTo:C().chartType===`heatmap`?a.messages.chartRows:a.messages.chartSplitBy),i(m,a.messages.chartNone),g!==(g=C().chartSeriesId??``)&&(d.value=(d.__value=C().chartSeriesId??``)??``,S(d,C().chartSeriesId??``))}),o(`change`,d,e=>C().chartSeriesId=e.currentTarget.value||null),t(e,r)};r(V,e=>{n(Ke)&&e(ot)});var H=c(V,2),st=e=>{var r=be(),l=y(r),u=y(l,!0);x(l);var d=c(l,2);p(d,21,()=>n(k).measures,e=>e.id,(e,r)=>{var a=ye(),o=y(a,!0);x(a);var c={};s(()=>{i(o,n(r).label),c!==(c=n(r).id)&&(a.value=(a.__value=n(r).id)??``)}),t(e,a)}),x(d);var f;b(d),x(r),s(e=>{i(u,e),f!==(f=C().chartMeasureId??``)&&(d.value=(d.__value=C().chartMeasureId??``)??``,S(d,C().chartMeasureId??``))},[()=>C().chartType===`scatter`?a.messages.chartX:O.includes(C().chartType)?a.messages.chartLow:C().chartType===`gauge`?a.messages.chartMetric:a.messages.chartValue]),o(`change`,d,e=>C().chartMeasureId=e.currentTarget.value||null),t(e,r)};r(H,e=>{n(tt)&&e(st)});var U=c(H,2),ct=e=>{var r=Se(),a=y(r),l=y(a,!0);x(a);var u=c(a,2);p(u,21,()=>n(k).measures,e=>e.id,(e,r)=>{var a=xe(),o=y(a,!0);x(a);var c={};s(()=>{i(o,n(r).label),c!==(c=n(r).id)&&(a.value=(a.__value=n(r).id)??``)}),t(e,a)}),x(u);var d;b(u),x(r),s(()=>{i(l,n(Ze)),d!==(d=C().effectiveChartMeasure2Id??``)&&(u.value=(u.__value=C().effectiveChartMeasure2Id??``)??``,S(u,C().effectiveChartMeasure2Id??``))}),o(`change`,u,e=>C().chartMeasure2Id=e.currentTarget.value||null),t(e,r)};r(U,e=>{n(Xe)&&e(ct)});var lt=c(U,2),ut=e=>{var r=we(),l=y(r),u=y(l,!0);x(l);var d=c(l,2);p(d,21,()=>n(He),e=>e.value,(e,r)=>{var a=Ce(),o=y(a,!0);x(a);var c={};s(()=>{i(o,n(r).label),c!==(c=n(r).value)&&(a.value=(a.__value=n(r).value)??``)}),t(e,a)}),x(d);var f;b(d),x(r),s(()=>{i(u,a.messages.chartAggregate),f!==(f=C().chartReduce)&&(d.value=(d.__value=C().chartReduce)??``,S(d,C().chartReduce))}),o(`change`,d,e=>C().chartReduce=e.currentTarget.value),t(e,r)};r(lt,e=>{n(nt)&&e(ut)});var dt=c(lt,2),ft=e=>{var n=Te(),r=y(n),l=y(r,!0);x(r);var f=c(r,2);u(f),x(n),s(()=>{g(n,`title`,a.messages.chartBinsTitle),i(l,a.messages.chartBins),d(f,C().chartBins??``),g(f,`placeholder`,a.messages.chartBuilderAuto)}),o(`change`,f,e=>C().chartBins=e.currentTarget.value?Number(e.currentTarget.value):null),t(e,n)};r(dt,e=>{n(et)&&e(ft)});var pt=c(dt,2),mt=e=>{var n=Ee(),r=y(n),l=y(r,!0);x(r);var u=c(r,2),d=y(u),f=y(d,!0);x(d),d.value=d.__value=`trapezoid`;var p=c(d),m=y(p,!0);x(p),p.value=p.__value=`pyramid`;var h=c(p),g=y(h,!0);x(h),h.value=h.__value=`cone`,x(u);var _;b(u),x(n),s(()=>{i(l,a.messages.chartShape),i(f,a.messages.chartShapeFunnel),i(m,a.messages.chartShapePyramid),i(g,a.messages.chartShapeCone),_!==(_=C().chartFunnelShape??`trapezoid`)&&(u.value=(u.__value=C().chartFunnelShape??`trapezoid`)??``,S(u,C().chartFunnelShape??`trapezoid`))}),o(`change`,u,e=>C().chartFunnelShape=e.currentTarget.value),t(e,n)};r(pt,e=>{n(Qe)&&e(mt)});var ht=c(pt,2),gt=e=>{var n=De(),r=y(n),l=y(r,!0);x(r);var u=c(r,2),d=y(u),f=y(d,!0);x(d),d.value=d.__value=`classic`;var p=c(d),m=y(p,!0);x(p),p.value=p.__value=`hollow`;var h=c(p),g=y(h,!0);x(h),h.value=h.__value=`heikin-ashi`,x(u);var _;b(u),x(n),s(()=>{i(l,a.messages.chartCandles),i(f,a.messages.chartCandlesClassic),i(m,a.messages.chartCandlesHollow),i(g,a.messages.chartCandlesHeikinAshi),_!==(_=C().chartCandleStyle??`classic`)&&(u.value=(u.__value=C().chartCandleStyle??`classic`)??``,S(u,C().chartCandleStyle??`classic`))}),o(`change`,u,e=>C().chartCandleStyle=e.currentTarget.value),t(e,n)};r(ht,e=>{n($e)&&e(gt)});var _t=c(ht,2),vt=e=>{var r=ke(),l=y(r),u=y(l,!0);x(l);var d=c(l,2);p(d,21,()=>re,e=>e.value,(e,r)=>{var c=Oe();let l;var u=y(c,!0);x(c),s((e,t)=>{l=ee(c,1,`sv-grid-chart-chip`,null,l,e),g(c,`aria-pressed`,t),g(c,`title`,a.messages[n(r).title]),i(u,a.messages[n(r).label])},[()=>({"is-on":C().chartIndicators.includes(n(r).value)}),()=>C().chartIndicators.includes(n(r).value)]),o(`click`,c,()=>Ue(n(r).value)),t(e,c)}),x(d),x(r),s(()=>{g(r,`aria-label`,a.messages.chartIndicators),i(u,a.messages.chartIndicators)}),t(e,r)};r(_t,e=>{n(F)&&e(vt)});var W=c(_t,2),G=y(W),yt=y(G,!0);x(G);var K=c(G,2),q=y(K),bt=y(q,!0);x(q),q.value=q.__value=`number`;var J=c(q),xt=y(J,!0);x(J),J.value=J.__value=`currency`;var Y=c(J),St=y(Y,!0);x(Y),Y.value=Y.__value=`percent`,x(K);var Ct;b(K),x(W);var wt=c(W,2),Tt=e=>{var n=Ae(),r=f(n),l=y(r);u(l);var d=c(l);x(r);var p=c(r,2),h=y(p);u(h);var _=c(h);x(p),s(()=>{m(l,C().chartStacked),i(d,` ${a.messages.chartStacked??``}`),g(p,`title`,a.messages.chartStacked100Title),m(h,C().chartStacked100),i(_,` ${a.messages.chartStacked100??``}`)}),o(`change`,l,e=>C().chartStacked=e.currentTarget.checked),o(`change`,h,e=>C().chartStacked100=e.currentTarget.checked),t(e,n)};r(wt,e=>{n(qe)&&e(Tt)});var Et=c(wt,2),Dt=e=>{var n=je(),r=y(n);u(r);var l=c(r);x(n),s(()=>{g(n,`title`,a.messages.chartHorizontalTitle),m(r,C().chartOrientation===`horizontal`),i(l,` ${a.messages.chartHorizontal??``}`)}),o(`change`,r,e=>C().chartOrientation=e.currentTarget.checked?`horizontal`:`vertical`),t(e,n)};r(Et,e=>{n(We)&&e(Dt)});var Ot=c(Et,2),kt=e=>{var n=Me(),r=y(n);u(r);var l=c(r);x(n),s(()=>{m(r,C().chartDonut),i(l,` ${a.messages.chartDonut??``}`)}),o(`change`,r,e=>C().chartDonut=e.currentTarget.checked),t(e,n)};r(Ot,e=>{n(Ge)&&e(kt)});var X=c(Ot,2),Z=y(X),At=y(Z,!0);x(Z);var Q=c(Z,2);p(Q,21,()=>E,e=>e.key,(e,r)=>{var o=Ne(),c=y(o,!0);x(o);var l={};s(()=>{i(c,a.messages[n(r).label]),l!==(l=n(r).key)&&(o.value=(o.__value=n(r).key)??``)}),t(e,o)}),x(Q);var jt;b(Q),x(X);var Mt=c(X,2),Nt=e=>{var n=Pe(),r=y(n);u(r);var l=c(r);x(n),s(()=>{m(r,C().chartDataLabels),i(l,` ${a.messages.chartLabels??``}`)}),o(`change`,r,e=>C().chartDataLabels=e.currentTarget.checked),t(e,n)};r(Mt,e=>{n(Ye)&&e(Nt)});var Pt=c(Mt,2),Ft=e=>{var n=Fe(),r=y(n);u(r);var l=c(r);x(n),s(()=>{g(n,`title`,a.messages.chartLogScaleTitle),m(r,C().chartLogScale),i(l,` ${a.messages.chartLogScale??``}`)}),o(`change`,r,e=>C().chartLogScale=e.currentTarget.checked),t(e,n)};r(Pt,e=>{n(Je)&&e(Ft)});var It=c(Pt,2),Lt=e=>{var r=Le(),l=y(r),u=y(l,!0);x(l);var d=c(l,2);p(d,21,()=>oe,e=>e.value,(e,r)=>{var o=Ie(),c=y(o,!0);x(o);var l={};s(()=>{i(c,a.messages[n(r).label]),l!==(l=n(r).value)&&(o.value=(o.__value=n(r).value)??``)}),t(e,o)}),x(d);var f;b(d),x(r),s(()=>{g(r,`title`,a.messages.chartBucketTitle),i(u,a.messages.chartBucket),f!==(f=C().chartBucket??``)&&(d.value=(d.__value=C().chartBucket??``)??``,S(d,C().chartBucket??``))}),o(`change`,d,e=>C().chartBucket=e.currentTarget.value||null),t(e,r)};r(It,e=>{C().chartDimensionIsDate&&n(P)&&e(Lt)});var $=c(It,2),Rt=e=>{var n=Re(),r=y(n);u(r);var l=c(r);x(n),s(()=>{g(n,`title`,a.messages.chartDateAxisTitle),m(r,C().chartTimeAxis),i(l,` ${a.messages.chartDateAxis??``}`)}),o(`change`,r,e=>C().chartTimeAxis=e.currentTarget.checked),t(e,n)},zt=l(()=>C().chartDimensionIsDate&&ae.includes(C().chartType));r($,e=>{n(zt)&&e(Rt)});var Bt=c($,2),Vt=e=>{var n=ze(),r=y(n,!0);x(n),s(()=>i(r,a.messages.chartPivotHint)),t(e,n)},Ht=e=>{var r=Be(),a=y(r,!0);x(r),s(()=>i(a,n(I))),t(e,r)};r(Bt,e=>{n(A)?e(Vt):n(I)&&e(Ht,1)}),x(L),s(()=>{R=ee(L,1,`sv-grid-chart-controls`,null,R,{"is-form":w()===`builder`}),g(L,`data-scope`,w()),i(yt,a.messages.chartFormat),i(bt,a.messages.chartFormatNumber),i(xt,a.messages.chartFormatCurrency),i(St,a.messages.chartFormatPercent),Ct!==(Ct=C().chartValueFormat)&&(K.value=(K.__value=C().chartValueFormat)??``,S(K,C().chartValueFormat)),i(At,a.messages.chartColours),jt!==(jt=n(N))&&(Q.value=(Q.__value=n(N))??``,S(Q,n(N)))}),o(`change`,K,e=>C().chartValueFormat=e.currentTarget.value),o(`change`,Q,e=>C().chartPalette=E.find(t=>t.key===e.currentTarget.value)?.colors??null),t(e,L),_()}e([`change`,`click`]);var A={chartPanelTitle:`Chart`,chartClearFilter:`Clear filter`,chartExport:`Export`,chartExportLabel:`Export chart`,chartExportPng:`PNG image`,chartExportSvg:`SVG vector`,chartExportPdf:`PDF document`,chartExportCsv:`CSV data`,chartExportCopy:`Copy to clipboard`,chartExportPrint:`Print`,chartExportDescribe:`Describe chart`,chartAi:`AI`,chartAiLabel:`Chart with AI`,chartAiPlaceholder:`Describe a chart, e.g. revenue by region stacked by product`,chartAiRun:`Chart it`,chartAiThinking:`Thinking...`,chartAiExplain:`Explain`,chartAiExplainTitle:`Explain this chart in plain words`,chartAiNoChart:`Couldn't build a chart from that request.`,chartAiNoExplanation:`Couldn't explain this chart.`,chartAiFailed:`Something went wrong.`,chartBuild:`Build`,chartBuildLabel:`Open the chart builder`,chartBuildTitle:`Chart builder: type gallery, data and format`,chartLinkBack:`Link the chart back to the grid`,chartUnlink:`Unlink the chart from the grid`,chartLinkedTitle:`Linked: the chart follows the grid's rows. Click to freeze it.`,chartUnlinkedTitle:`Unlinked: the chart keeps the data it has. Click to follow the grid again.`,chartAdd:`Add chart`,chartSave:`Save`,chartSaveLabel:`Saved charts`,chartSavedTitle:`Saved charts`,chartSaveName:`Save this chart as`,chartSaveNamePlaceholder:`Name`,chartSaveApply:`Apply`,chartPivotHint:`Charting the pivot: its row groups are the categories and its column groups the series.`,chartSaveRemove:`Remove`,chartSavedEmpty:`No saved charts yet.`,chartMaximize:`Maximize`,chartRestore:`Restore`,chartDock:`Dock`,chartDockLabel:`Dock chart`,chartPopOut:`Pop out`,chartPopOutLabel:`Pop out chart`,chartClose:`Close chart`,chartResize:`Resize chart panel`,chartResizeWindow:`Resize chart window`,chartTabs:`Charts`,chartRemoveTab:`Remove {title}`,chartRemove:`Remove`,chartEmptyColumns:`Charting needs at least one text column (to group by) and one numeric column (to measure).`,chartEmptyData:`No data to chart.`,chartType:`Type`,chartDate:`Date`,chartGroupBy:`Group by`,chartFrom:`From`,chartColumns:`Columns`,chartSplitBy:`Split by`,chartTo:`To`,chartRows:`Rows`,chartNone:`(none)`,chartValue:`Value`,chartX:`X`,chartY:`Y`,chartLow:`Low`,chartHigh:`High`,chartOpen:`Open`,chartClosePrice:`Close`,chartVolume:`Volume`,chartMetric:`Metric`,chartTarget:`Target`,chartAggregate:`Aggregate`,chartReduceSum:`Sum`,chartReduceAvg:`Average`,chartReduceCount:`Count`,chartReduceMin:`Min`,chartReduceMax:`Max`,chartReduceMedian:`Median`,chartReduceP90:`90th percentile`,chartReduceFirst:`First`,chartReduceLast:`Last`,chartReduceCountDistinct:`Distinct count`,chartBins:`Bins`,chartBinsTitle:`How many bins the sample is split into`,chartShape:`Shape`,chartShapeFunnel:`Funnel`,chartShapePyramid:`Pyramid`,chartShapeCone:`Cone`,chartCandles:`Candles`,chartCandlesClassic:`Classic`,chartCandlesHollow:`Hollow`,chartCandlesHeikinAshi:`Heikin-Ashi`,chartIndicators:`Indicators`,chartIndVolume:`Volume`,chartIndVolumeTitle:`Volume bars under the price`,chartIndRsi:`RSI`,chartIndRsiTitle:`Relative strength index, 14 bars`,chartIndMacd:`MACD`,chartIndMacdTitle:`MACD 12 / 26 / 9`,chartIndStochastic:`Stoch`,chartIndStochasticTitle:`Stochastic oscillator 14 / 3`,chartIndAtr:`ATR`,chartIndAtrTitle:`Average true range, 14 bars`,chartIndObv:`OBV`,chartIndObvTitle:`On-balance volume`,chartIndSma:`SMA 20`,chartIndSmaTitle:`20-bar simple moving average on the price`,chartIndEma:`EMA 20`,chartIndEmaTitle:`20-bar exponential moving average on the price`,chartIndBb:`Bollinger`,chartIndBbTitle:`Bollinger bands 20 / 2 on the price`,chartIndVwap:`VWAP`,chartIndVwapTitle:`Volume-weighted average price on the price`,chartFormat:`Format`,chartFormatNumber:`Number`,chartFormatCurrency:`Currency`,chartFormatPercent:`Percent`,chartStacked:`Stacked`,chartStacked100:`100%`,chartStacked100Title:`Normalise each category to 100 percent`,chartHorizontal:`Horizontal`,chartHorizontalTitle:`Bars grow rightwards - suits long category labels`,chartDonut:`Donut`,chartColours:`Colours`,chartPaletteTheme:`Theme`,chartPaletteOcean:`Ocean`,chartPaletteSunset:`Sunset`,chartPaletteForest:`Forest`,chartPaletteSlate:`Slate`,chartLabels:`Labels`,chartLogScale:`Log scale`,chartLogScaleTitle:`Logarithmic value axis - flattens wide-range data`,chartBucket:`Bucket`,chartBucketTitle:`Group the dates by calendar unit: one bar per month instead of one per day`,chartBucketExact:`Exact`,chartBucketDay:`Day`,chartBucketWeek:`Week`,chartBucketMonth:`Month`,chartBucketQuarter:`Quarter`,chartBucketYear:`Year`,chartDateAxis:`Date axis`,chartDateAxisTitle:`Space points by actual date - real time ticks and proportional gaps`,chartGroupCompare:`Compare`,chartGroupPartOfWhole:`Part of a whole`,chartGroupFlow:`Flow`,chartGroupDistribution:`Distribution`,chartGroupSingleValue:`Single value`,chartGroupOverTime:`Over time`,chartTypeBar:`Bar`,chartTypeLine:`Line`,chartTypeArea:`Area`,chartTypeLollipop:`Lollipop`,chartTypePareto:`Pareto`,chartTypeRangeBar:`Range bar`,chartTypeRangeArea:`Range area`,chartTypeDumbbell:`Dumbbell`,chartTypeRadialColumn:`Radial column`,chartTypeRadialBar:`Radial bar`,chartTypeNightingale:`Nightingale`,chartTypePie:`Pie`,chartTypeTreemap:`Tree map`,chartTypeSunburst:`Sunburst`,chartTypeFunnel:`Funnel`,chartTypeWaterfall:`Waterfall`,chartTypeSankey:`Sankey`,chartTypeChord:`Chord`,chartTypeRadar:`Radar`,chartTypeHeatmap:`Heat map`,chartTypeScatter:`Scatter`,chartTypeBoxplot:`Box plot`,chartTypeHistogram:`Histogram`,chartTypeGauge:`Gauge`,chartTypeBullet:`Bullet`,chartTypeCalendar:`Calendar`,chartTypeStream:`Stream`,chartTypeCandlestick:`Candlestick`,chartTypeOhlc:`OHLC bars`,chartIssueHeatmap:`Heat map needs a Split by column for its rows.`,chartIssueSankey:`Sankey needs a Split by column: Group by is the source, Split by the target.`,chartIssueRadar:`Radar needs at least 3 groups.`,chartIssueFunnel:`Funnel needs at least 2 stages.`,chartIssueChord:`Chord needs a Split by column: Group by and Split by are the two ends of each flow.`,chartIssueStream:`Stream needs a Split by column: each split becomes a layer.`,chartIssueSecondMeasure:`Pick a second measure for the high end of the range.`,chartIssueOhlcDate:`Candlesticks need a date column.`,chartIssueOhlcColumns:`Pick the Open, High, Low and Close columns.`,chartBuilderTitle:`Chart builder`,chartBuilderTabType:`Type`,chartBuilderTabData:`Data`,chartBuilderTabFormat:`Format`,chartBuilderLinked:`Linked to the grid`,chartBuilderFrozenAt:`Frozen at {time}; edits, filters and new rows no longer change it.`,chartBuilderFollows:`The chart follows the grid's rows, filters and edits.`,chartBuilderTitleField:`Title`,chartBuilderSubtitle:`Subtitle`,chartBuilderCaption:`Caption`,chartBuilderLegend:`Legend`,chartLegendBottom:`Bottom`,chartLegendTop:`Top`,chartLegendLeft:`Left`,chartLegendRight:`Right`,chartLegendHidden:`Hidden`,chartBuilderDataLabels:`Data labels`,chartBuilderPanelSetting:`Panel setting`,chartLabelsTop:`Top`,chartLabelsOutside:`Outside`,chartLabelsInside:`Inside`,chartLabelsCenter:`Center`,chartLabelsHidden:`Hidden`,chartBuilderSeriesLabels:`Series labels`,chartBuilderCrosshairLabels:`Crosshair labels`,chartBuilderCompactBelow:`Compact under`,chartBuilderCompactBelowTitle:`Below this width in px the chart drops its series and data labels, turns the category labels vertical and hides the legend`,chartBuilderValueAxis:`Value axis`,chartBuilderRightAxis:`Right axis`,chartBuilderCategoryAxis:`Category axis`,chartBuilderMin:`Min`,chartBuilderMax:`Max`,chartBuilderAuto:`auto`,chartBuilderOff:`off`,chartBuilderGridLines:`Grid lines`,chartBuilderAxisLabels:`Labels`,chartBuilderLabelsAuto:`Auto`,chartBuilderLabelsHorizontal:`Horizontal`,chartBuilderLabelsTilted:`Tilted`,chartBuilderLabelsVertical:`Vertical`,chartBuilderSeries:`Series`,chartBuilderColor:`Color`,chartBuilderSeriesType:`Type`,chartBuilderAxis:`Axis`,chartBuilderMarker:`Marker`,chartBuilderWidth:`Width`,chartBuilderStack:`Stack`,chartBuilderStackPlaceholder:`own`,chartBuilderSeriesColorLabel:`{series} colour`,chartBuilderSeriesTypeLabel:`{series} type`,chartBuilderSeriesAxisLabel:`{series} axis`,chartBuilderSeriesMarkerLabel:`{series} marker`,chartBuilderSeriesWidthLabel:`{series} line width`,chartBuilderSeriesStackLabel:`{series} stack group`,chartBuilderChartType:`Chart`,chartBuilderBar:`Bar`,chartBuilderLine:`Line`,chartBuilderArea:`Area`,chartBuilderLeft:`Left`,chartBuilderRight:`Right`,chartBuilderStyle:`Style`,chartBuilderFontSize:`Font size`,chartBuilderFontFamily:`Font`,chartBuilderBackground:`Background`,chartBuilderTextColor:`Text`,chartBuilderResetFormat:`Reset format`};function j(e){return C(A,e)}function M(e,t){return e.replace(/\{(\w+)\}/g,(e,n)=>n in t?String(t[n]):`{${n}}`)}export{T as i,j as n,k as r,M as t};
@@ -1 +1 @@
1
- import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{i as t,n,t as r}from"./chart-trend-D5I5VEe8.js";var i=e({chartSummary:()=>d}),a=e=>typeof e==`number`&&Number.isFinite(e);function o(e){let t=-1,n=-1;for(let r=0;r<e.length;r+=1)a(e[r])&&(t<0&&(t=r),n=r);return t<0?null:{i0:t,v0:e[t],i1:n,v1:e[n]}}function s(e){let t=-1/0,n=1/0,r=-1,i=-1;return e.forEach((e,o)=>{a(e)&&(e>t&&(t=e,r=o),e<n&&(n=e,i=o))}),r<0?null:{max:t,iMax:r,min:n,iMin:i}}var c=(e,t)=>{if(e===0)return``;let n=Math.abs((t-e)/Math.abs(e)*100);return`${n>=10?Math.round(n):Math.round(n*10)/10}%`};function l(e,t,n){let i=e.ohlc?e.ohlc.map(e=>e?e.c:NaN):e.values,a=o(i);if(!a)return`${e.label} has no values.`;let l=e=>t[e]??`#${e+1}`;if(a.i0===a.i1)return`${e.label} is ${n(a.v0)} at ${l(a.i0)}.`;let u=r(i),d=u[u.length-1]-u[0],f=Math.abs(a.v1-a.v0),p=Math.max(Math.abs(a.v0),Math.abs(a.v1),1e-9),m=f/p<.02&&Math.abs(d)/p<.05,h=m?`holds at about`:a.v1>a.v0?`rises`:`falls`,g=c(a.v0,a.v1),_=m?`${e.label} holds at about ${n(a.v1)} from ${l(a.i0)} to ${l(a.i1)}`:`${e.label} ${h}${g?` ${g}`:``} from ${n(a.v0)} at ${l(a.i0)} to ${n(a.v1)} at ${l(a.i1)}`,v=s(i);if(v&&!m){let e=v.iMax!==a.i0&&v.iMax!==a.i1,t=v.iMin!==a.i0&&v.iMin!==a.i1;e&&(_+=`, peaking at ${n(v.max)} at ${l(v.iMax)}`),t&&(_+=`, lowest at ${n(v.min)} at ${l(v.iMin)}`)}return _+`.`}function u(e,t,n,r){let i=t.reduce((e,t)=>e+(a(t)?Math.abs(t):0),0);if(!i)return`No ${r} has a value.`;let o=e.map((e,n)=>({l:e,v:a(t[n])?Math.abs(t[n]):0})).sort((e,t)=>t.v-e.v),s=o.slice(0,3).map(e=>`${e.l} ${Math.round(e.v/i*100)}%`),c=o.length>3?`, ${o.length-3} more share the rest`:``;return`${e.length} ${r}s totalling ${n(i)}: ${s.join(`, `)}${c}.`}function d(e,r={}){let i=r.formatValue??(n=>t(n,e.valueFormat,e)),o=r.maxSeries??4,s=e.categories??[],d=(e.series??[]).filter(e=>e.visible!==!1),f=e.type;try{if(f===`pie`||f===`radial-bar`||f===`nightingale`){let e=d[0];return!e||!e.values.some(a)?`No data.`:u(s,e.values,i,`slice`)}if(f===`treemap`||f===`sunburst`){let t=(e.treemap??e.tree)?.children??[];if(!t.length)return`No data.`;let n=e=>e.value??(e.children??[]).reduce((e,t)=>e+n(t),0);return u(t.map(e=>e.name),t.map(e=>n(e)),i,`node`)}if(f===`gauge`){if(!a(e.gaugeValue))return`No data.`;let t=e.gaugeMin??0,n=e.gaugeMax??100,r=n>t?Math.round((e.gaugeValue-t)/(n-t)*100):0,o=a(e.gaugeTarget)?`, ${e.gaugeValue>=e.gaugeTarget?`above`:`below`} the target of ${i(e.gaugeTarget)}`:``;return`${i(e.gaugeValue)}${e.gaugeUnit?` `+e.gaugeUnit:``}, ${r}% of the way from ${i(t)} to ${i(n)}${o}.`}if(f===`scatter`){let e=d.flatMap(e=>e.points??[]).filter(e=>a(e.x)&&a(e.y));if(!e.length)return`No data.`;let t=n(e.map(e=>e.x),e.map(e=>e.y)),r=Math.abs(t)>=.7?`strong`:Math.abs(t)>=.4?`moderate`:Math.abs(t)>=.2?`weak`:`no`,i=r===`no`?`no clear correlation`:`a ${r} ${t>0?`positive`:`negative`} correlation (r ${t.toFixed(2)})`;return`${e.length} points in ${d.length} series with ${i} between x and y.`}if(f===`candlestick`||f===`ohlc`){let e=d.find(e=>e.ohlc)??d[0],t=(e?.ohlc??[]).filter(e=>!!e);if(!e||!t.length)return`No data.`;let n=t[t.length-1],r=t.length>1?t[t.length-2]:null,a=Math.max(...t.map(e=>e.h)),o=Math.min(...t.map(e=>e.l)),s=r?`, ${n.c>=r.c?`up`:`down`} ${c(r.c,n.c)} on the session`:``;return`${e.label}: last close ${i(n.c)}${s}, ranging ${i(o)} to ${i(a)} over ${t.length} bars.`}if(f===`heatmap`){let e=null;for(let t of d)t.values.forEach((n,r)=>{a(n)&&(!e||n>e.v)&&(e={v:n,row:t.label,col:s[r]??String(r)})});if(!e)return`No data.`;let t=e;return`${d.length} rows by ${s.length} columns; the highest cell is ${i(t.v)} at ${t.row} and ${t.col}.`}if(f===`calendar`){let t=(e.calendarValues??[]).filter(e=>a(e.value));if(!t.length)return`No data.`;let n=t.reduce((e,t)=>t.value>e.value?t:e,t[0]),r=t.reduce((e,t)=>e+t.value,0);return`${t.length} days totalling ${i(r)}; the busiest is ${n.date} at ${i(n.value)}.`}if(f===`funnel`){let e=d[0],t=(e?.values??[]).filter(a);if(!e||t.length<2)return e&&t.length===1?`${s[0]??e.label}: ${i(t[0])}.`:`No data.`;let n=t[0],r=t[t.length-1],o=n?Math.round(r/n*100):0,c=0,l=``;for(let e=1;e<t.length;e+=1){let n=t[e-1]?1-t[e]/t[e-1]:0;n>c&&(c=n,l=s[e]??`step ${e+1}`)}return`${o}% of ${i(n)} at ${s[0]??`the top`} reach ${s[t.length-1]??`the bottom`}${l?`; the biggest drop is into ${l} (${Math.round(c*100)}% lost)`:``}.`}if(f===`boxplot`){let e=null;for(let t of d)for(let n of t.boxes??[]){if(!n)continue;let r=n.q3-n.q1;(!e||r>e.spread)&&(e={label:t.label,spread:r})}return e?`${d.length} distributions over ${s.length} categories; ${e.label} has the widest interquartile range at ${i(e.spread)}.`:`No data.`}if(f===`sankey`||f===`chord`){let t=e.sankeyLinks??[];if(!t.length)return`No data.`;let n=t.reduce((e,t)=>e+(a(t.value)?t.value:0),0),r=[...t].sort((e,t)=>t.value-e.value)[0];return`${t.length} flows totalling ${i(n)}; the largest is ${r.source} to ${r.target} at ${i(r.value)}.`}let t=d.filter(e=>e.values.some(a)||e.ohlc);if(!t.length)return`No data.`;let r=t.slice(0,o),p=r.map(e=>l(e,s,i)),m=t.length>r.length?` And ${t.length-r.length} more series.`:``;return`${p.join(` `)}${m}`}catch{return`No data.`}}export{i as t};
1
+ import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{i as t,n,t as r}from"./chart-trend-B8xr5LuD.js";var i=e({chartSummary:()=>d}),a=e=>typeof e==`number`&&Number.isFinite(e);function o(e){let t=-1,n=-1;for(let r=0;r<e.length;r+=1)a(e[r])&&(t<0&&(t=r),n=r);return t<0?null:{i0:t,v0:e[t],i1:n,v1:e[n]}}function s(e){let t=-1/0,n=1/0,r=-1,i=-1;return e.forEach((e,o)=>{a(e)&&(e>t&&(t=e,r=o),e<n&&(n=e,i=o))}),r<0?null:{max:t,iMax:r,min:n,iMin:i}}var c=(e,t)=>{if(e===0)return``;let n=Math.abs((t-e)/Math.abs(e)*100);return`${n>=10?Math.round(n):Math.round(n*10)/10}%`};function l(e,t,n){let i=e.ohlc?e.ohlc.map(e=>e?e.c:NaN):e.values,a=o(i);if(!a)return`${e.label} has no values.`;let l=e=>t[e]??`#${e+1}`;if(a.i0===a.i1)return`${e.label} is ${n(a.v0)} at ${l(a.i0)}.`;let u=r(i),d=u[u.length-1]-u[0],f=Math.abs(a.v1-a.v0),p=Math.max(Math.abs(a.v0),Math.abs(a.v1),1e-9),m=f/p<.02&&Math.abs(d)/p<.05,h=m?`holds at about`:a.v1>a.v0?`rises`:`falls`,g=c(a.v0,a.v1),_=m?`${e.label} holds at about ${n(a.v1)} from ${l(a.i0)} to ${l(a.i1)}`:`${e.label} ${h}${g?` ${g}`:``} from ${n(a.v0)} at ${l(a.i0)} to ${n(a.v1)} at ${l(a.i1)}`,v=s(i);if(v&&!m){let e=v.iMax!==a.i0&&v.iMax!==a.i1,t=v.iMin!==a.i0&&v.iMin!==a.i1;e&&(_+=`, peaking at ${n(v.max)} at ${l(v.iMax)}`),t&&(_+=`, lowest at ${n(v.min)} at ${l(v.iMin)}`)}return _+`.`}function u(e,t,n,r){let i=t.reduce((e,t)=>e+(a(t)?Math.abs(t):0),0);if(!i)return`No ${r} has a value.`;let o=e.map((e,n)=>({l:e,v:a(t[n])?Math.abs(t[n]):0})).sort((e,t)=>t.v-e.v),s=o.slice(0,3).map(e=>`${e.l} ${Math.round(e.v/i*100)}%`),c=o.length>3?`, ${o.length-3} more share the rest`:``;return`${e.length} ${r}s totalling ${n(i)}: ${s.join(`, `)}${c}.`}function d(e,r={}){let i=r.formatValue??(n=>t(n,e.valueFormat,e)),o=r.maxSeries??4,s=e.categories??[],d=(e.series??[]).filter(e=>e.visible!==!1),f=e.type;try{if(f===`pie`||f===`radial-bar`||f===`nightingale`){let e=d[0];return!e||!e.values.some(a)?`No data.`:u(s,e.values,i,`slice`)}if(f===`treemap`||f===`sunburst`){let t=(e.treemap??e.tree)?.children??[];if(!t.length)return`No data.`;let n=e=>e.value??(e.children??[]).reduce((e,t)=>e+n(t),0);return u(t.map(e=>e.name),t.map(e=>n(e)),i,`node`)}if(f===`gauge`){if(!a(e.gaugeValue))return`No data.`;let t=e.gaugeMin??0,n=e.gaugeMax??100,r=n>t?Math.round((e.gaugeValue-t)/(n-t)*100):0,o=a(e.gaugeTarget)?`, ${e.gaugeValue>=e.gaugeTarget?`above`:`below`} the target of ${i(e.gaugeTarget)}`:``;return`${i(e.gaugeValue)}${e.gaugeUnit?` `+e.gaugeUnit:``}, ${r}% of the way from ${i(t)} to ${i(n)}${o}.`}if(f===`scatter`){let e=d.flatMap(e=>e.points??[]).filter(e=>a(e.x)&&a(e.y));if(!e.length)return`No data.`;let t=n(e.map(e=>e.x),e.map(e=>e.y)),r=Math.abs(t)>=.7?`strong`:Math.abs(t)>=.4?`moderate`:Math.abs(t)>=.2?`weak`:`no`,i=r===`no`?`no clear correlation`:`a ${r} ${t>0?`positive`:`negative`} correlation (r ${t.toFixed(2)})`;return`${e.length} points in ${d.length} series with ${i} between x and y.`}if(f===`candlestick`||f===`ohlc`){let e=d.find(e=>e.ohlc)??d[0],t=(e?.ohlc??[]).filter(e=>!!e);if(!e||!t.length)return`No data.`;let n=t[t.length-1],r=t.length>1?t[t.length-2]:null,a=Math.max(...t.map(e=>e.h)),o=Math.min(...t.map(e=>e.l)),s=r?`, ${n.c>=r.c?`up`:`down`} ${c(r.c,n.c)} on the session`:``;return`${e.label}: last close ${i(n.c)}${s}, ranging ${i(o)} to ${i(a)} over ${t.length} bars.`}if(f===`heatmap`){let e=null;for(let t of d)t.values.forEach((n,r)=>{a(n)&&(!e||n>e.v)&&(e={v:n,row:t.label,col:s[r]??String(r)})});if(!e)return`No data.`;let t=e;return`${d.length} rows by ${s.length} columns; the highest cell is ${i(t.v)} at ${t.row} and ${t.col}.`}if(f===`calendar`){let t=(e.calendarValues??[]).filter(e=>a(e.value));if(!t.length)return`No data.`;let n=t.reduce((e,t)=>t.value>e.value?t:e,t[0]),r=t.reduce((e,t)=>e+t.value,0);return`${t.length} days totalling ${i(r)}; the busiest is ${n.date} at ${i(n.value)}.`}if(f===`funnel`){let e=d[0],t=(e?.values??[]).filter(a);if(!e||t.length<2)return e&&t.length===1?`${s[0]??e.label}: ${i(t[0])}.`:`No data.`;let n=t[0],r=t[t.length-1],o=n?Math.round(r/n*100):0,c=0,l=``;for(let e=1;e<t.length;e+=1){let n=t[e-1]?1-t[e]/t[e-1]:0;n>c&&(c=n,l=s[e]??`step ${e+1}`)}return`${o}% of ${i(n)} at ${s[0]??`the top`} reach ${s[t.length-1]??`the bottom`}${l?`; the biggest drop is into ${l} (${Math.round(c*100)}% lost)`:``}.`}if(f===`boxplot`){let e=null;for(let t of d)for(let n of t.boxes??[]){if(!n)continue;let r=n.q3-n.q1;(!e||r>e.spread)&&(e={label:t.label,spread:r})}return e?`${d.length} distributions over ${s.length} categories; ${e.label} has the widest interquartile range at ${i(e.spread)}.`:`No data.`}if(f===`sankey`||f===`chord`){let t=e.sankeyLinks??[];if(!t.length)return`No data.`;let n=t.reduce((e,t)=>e+(a(t.value)?t.value:0),0),r=[...t].sort((e,t)=>t.value-e.value)[0];return`${t.length} flows totalling ${i(n)}; the largest is ${r.source} to ${r.target} at ${i(r.value)}.`}let t=d.filter(e=>e.values.some(a)||e.ohlc);if(!t.length)return`No data.`;let r=t.slice(0,o),p=r.map(e=>l(e,s,i)),m=t.length>r.length?` And ${t.length-r.length} more series.`:``;return`${p.join(` `)}${m}`}catch{return`No data.`}}export{i as t};
@@ -1 +1 @@
1
- import{r as e}from"./cell-formatting-wr5wm7US.js";function t(e){let t=Math.abs(e);return t>=1e6?`${(e/1e6).toFixed(t%1e6?1:0)}M`:t>=1e3?`${(e/1e3).toFixed(t%1e3?1:0)}k`:String(Math.round(e*100)/100)}function n(n,r,i){if(!Number.isFinite(n))return``;if(i&&(i.locale||i.currency)){let t=r===`currency`?`currency`:r===`percent`?`percent`:`decimal`,a={notation:`compact`,maximumFractionDigits:1};return t===`currency`?(a.style=`currency`,a.currency=i.currency||`USD`):t===`percent`&&(a.style=`percent`),e(i.locale,a).format(n)}if(r===`currency`)return`${n<0?`-`:``}$${t(Math.abs(n))}`;if(r===`percent`){let e=n*100;return`${Math.round(e*10)/10}%`}return t(n)}function r(e){let t=0,n=0,r=0,i=0,a=0;for(let o=0;o<e.length;o+=1){let s=e[o];Number.isFinite(s)&&(t+=1,n+=o,r+=s,i+=o*o,a+=o*s)}if(t<2)return e.map(()=>NaN);let o=t*i-n*n;if(o===0)return e.map(()=>r/t);let s=(t*a-n*r)/o,c=(r-s*n)/t;return e.map((e,t)=>s*t+c)}function i(e,t){let n=0,r=0,i=0,a=Math.min(e.length,t.length);for(let o=0;o<a;o+=1)Number.isFinite(e[o])&&Number.isFinite(t[o])&&(n+=1,r+=e[o],i+=t[o]);if(n<2)return 0;let o=r/n,s=i/n,c=0,l=0,u=0;for(let n=0;n<a;n+=1){if(!Number.isFinite(e[n])||!Number.isFinite(t[n]))continue;let r=e[n]-o,i=t[n]-s;c+=r*i,l+=r*r,u+=i*i}return l===0||u===0?0:c/Math.sqrt(l*u)}export{n as i,i as n,t as r,r as t};
1
+ import{r as e}from"./cell-formatting-BbubJTVz.js";function t(e){let t=Math.abs(e);return t>=1e6?`${(e/1e6).toFixed(t%1e6?1:0)}M`:t>=1e3?`${(e/1e3).toFixed(t%1e3?1:0)}k`:String(Math.round(e*100)/100)}function n(n,r,i){if(!Number.isFinite(n))return``;if(i&&(i.locale||i.currency)){let t=r===`currency`?`currency`:r===`percent`?`percent`:`decimal`,a={notation:`compact`,maximumFractionDigits:1};return t===`currency`?(a.style=`currency`,a.currency=i.currency||`USD`):t===`percent`&&(a.style=`percent`),e(i.locale,a).format(n)}if(r===`currency`)return`${n<0?`-`:``}$${t(Math.abs(n))}`;if(r===`percent`){let e=n*100;return`${Math.round(e*10)/10}%`}return t(n)}function r(e){let t=0,n=0,r=0,i=0,a=0;for(let o=0;o<e.length;o+=1){let s=e[o];Number.isFinite(s)&&(t+=1,n+=o,r+=s,i+=o*o,a+=o*s)}if(t<2)return e.map(()=>NaN);let o=t*i-n*n;if(o===0)return e.map(()=>r/t);let s=(t*a-n*r)/o,c=(r-s*n)/t;return e.map((e,t)=>s*t+c)}function i(e,t){let n=0,r=0,i=0,a=Math.min(e.length,t.length);for(let o=0;o<a;o+=1)Number.isFinite(e[o])&&Number.isFinite(t[o])&&(n+=1,r+=e[o],i+=t[o]);if(n<2)return 0;let o=r/n,s=i/n,c=0,l=0,u=0;for(let n=0;n<a;n+=1){if(!Number.isFinite(e[n])||!Number.isFinite(t[n]))continue;let r=e[n]-o,i=t[n]-s;c+=r*i,l+=r*r,u+=i*i}return l===0||u===0?0:c/Math.sqrt(l*u)}export{n as i,i as n,t as r,r as t};
@@ -1 +1 @@
1
- function e(e,t){return t?(Array.isArray(e)?e:[e]).some(e=>e!=null&&e.contains(t)):!1}var t=[],n=!1;function r(){n||typeof document>`u`||(n=!0,document.addEventListener(`keydown`,e=>{if(e.key!==`Escape`)return;let n=t[t.length-1];n?.closeOnEscape&&(e.stopPropagation(),n.onDismiss(`escape`))},!0),document.addEventListener(`pointerdown`,n=>{let r=t[t.length-1];r?.closeOnOutside&&(e(r.element(),n.target)||r.onDismiss(`outside`))},!0))}function i(e){let n={element:e.element,onDismiss:e.onDismiss,closeOnEscape:e.closeOnEscape??!0,closeOnOutside:e.closeOnOutside??!0};return{activate(){r(),t.includes(n)||t.push(n)},release(){let e=t.indexOf(n);e>=0&&t.splice(e,1)}}}function a(t,n){if(typeof window>`u`)return()=>{};let r=r=>{e(t(),r.target)||n()};return window.addEventListener(`scroll`,r,!0),()=>window.removeEventListener(`scroll`,r,!0)}export{a as n,i as t};
1
+ function e(e,t){return t?(Array.isArray(e)?e:[e]).some(e=>e!=null&&e.contains(t)):!1}var t=[],n=!1;function r(){n||typeof document>`u`||(n=!0,document.addEventListener(`keydown`,e=>{if(e.key!==`Escape`)return;let n=t[t.length-1];n?.closeOnEscape&&(e.stopPropagation(),n.onDismiss(`escape`))},!0),document.addEventListener(`pointerdown`,n=>{let r=t[t.length-1];r?.closeOnOutside&&(e(r.element(),n.target)||r.onDismiss(`outside`))},!0))}function i(e){let n={element:e.element,onDismiss:e.onDismiss,closeOnEscape:e.closeOnEscape??!0,closeOnOutside:e.closeOnOutside??!0};return{activate(){r(),t.includes(n)||t.push(n)},release(){let e=t.indexOf(n);e>=0&&t.splice(e,1)}}}function a(t,n){if(typeof window>`u`)return()=>{};let r=r=>{e(t(),r.target)||n()},i=!1,a=requestAnimationFrame(()=>{a=null,i=!0,window.addEventListener(`scroll`,r,!0)});return()=>{a!==null&&cancelAnimationFrame(a),a=null,i&&window.removeEventListener(`scroll`,r,!0),i=!1}}export{a as n,i as t};
@@ -1,4 +1,4 @@
1
- import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{i as t,n,t as r}from"./cell-formatting-wr5wm7US.js";var i=e({coerceExportDate:()=>a,copyTextToClipboard:()=>O,downloadBlobFile:()=>E,downloadTextFile:()=>D,formatValueForExport:()=>o,projectGridRows:()=>c,serializeDelimited:()=>h,serializeHtml:()=>v,serializeJson:()=>y,serializeMarkdown:()=>x,serializeXml:()=>T,toExcelNumFmt:()=>s,valueForExcel:()=>u});function a(e){if(e instanceof Date)return Number.isNaN(e.getTime())?null:e;if(typeof e==`number`&&Number.isFinite(e)){let t=new Date(e);return Number.isNaN(t.getTime())?null:t}if(typeof e==`string`&&e.trim()!==``){let t=new Date(e);return Number.isNaN(t.getTime())?null:t}return null}function o(e,i){if(e==null)return``;if(!i)return String(e);if(i.type===`number`||i.type===`currency`||i.type===`percent`)return r(e,{type:i.type,locales:i.locales,currency:i.type===`currency`?i.currency??`USD`:void 0,valueIsPercentPoints:i.type===`percent`?i.valueIsPercentPoints:void 0,options:i.options});if(i.type===`date`||i.type===`datetime`){let r=a(e);if(r){let e=t(i.pattern,i.type),a=e||i.options?{...e,...i.options}:i.type===`date`?{year:`numeric`,month:`2-digit`,day:`2-digit`}:{year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`};return n(i.locales,a).format(r)}}return String(e)}function s(e){if(!e)return;let t=()=>{let t=e.options;return t&&typeof t.maximumFractionDigits==`number`?t.maximumFractionDigits:t&&typeof t.minimumFractionDigits==`number`?t.minimumFractionDigits:e.type===`currency`?2:e.type===`number`?0:2},n=e=>e>0?`.`+`0`.repeat(e):``;switch(e.type){case`number`:return`#,##0${n(t())}`;case`currency`:return`"${l(e.currency??`USD`)}"#,##0${n(t())}`;case`percent`:return`0${n(t())}%`;case`date`:return`yyyy-mm-dd`;case`datetime`:return`yyyy-mm-dd hh:mm`;default:return}}function c(e,t,n={}){let r=n.columns&&n.columns.length?n.columns.map(e=>t.find(t=>t.field===e)).filter(e=>!!e):t.filter(e=>e.field),i=r.map(e=>e.field),a={};for(let e of r)e.align&&(a[e.field]=e.align);let s={};for(let e of r)s[e.field]=e.header;let c=[s];for(let t of e){let e={};for(let i of r){let r=t[i.field];e[i.field]=n.rawValues?r:o(r,i.format)}c.push(e)}return{records:c,fields:i,align:a}}function l(e){return{USD:`$`,EUR:`€`,GBP:`£`,JPY:`¥`,CNY:`¥`,INR:`₹`,KRW:`₩`,RUB:`₽`,BRL:`R$`}[e.toUpperCase()]??e.toUpperCase()}function u(e,t){if(e==null||!t)return{ok:!1};if(t.type===`number`||t.type===`currency`){let t=typeof e==`number`?e:Number(e);return Number.isFinite(t)?{ok:!0,value:t}:{ok:!1}}if(t.type===`percent`){let n=typeof e==`number`?e:Number(e);return Number.isFinite(n)?{ok:!0,value:t.valueIsPercentPoints===!0?n/100:n}:{ok:!1}}if(t.type===`date`||t.type===`datetime`){let t=a(e);return t?{ok:!0,value:t}:{ok:!1}}return{ok:!1}}var d=``;function f(e){if(e?.aborted)throw new DOMException(`Export aborted`,`AbortError`)}var p=()=>new Promise(e=>setTimeout(e,0));function m(e,t){let n=e==null?``:e instanceof Date?e.toISOString():String(e);return n===``?n:n.includes(t)||n.includes(`"`)||n.includes(`
1
+ import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{i as t,n,t as r}from"./cell-formatting-BbubJTVz.js";var i=e({coerceExportDate:()=>a,copyTextToClipboard:()=>O,downloadBlobFile:()=>E,downloadTextFile:()=>D,formatValueForExport:()=>o,projectGridRows:()=>c,serializeDelimited:()=>h,serializeHtml:()=>v,serializeJson:()=>y,serializeMarkdown:()=>x,serializeXml:()=>T,toExcelNumFmt:()=>s,valueForExcel:()=>u});function a(e){if(e instanceof Date)return Number.isNaN(e.getTime())?null:e;if(typeof e==`number`&&Number.isFinite(e)){let t=new Date(e);return Number.isNaN(t.getTime())?null:t}if(typeof e==`string`&&e.trim()!==``){let t=new Date(e);return Number.isNaN(t.getTime())?null:t}return null}function o(e,i){if(e==null)return``;if(!i)return String(e);if(i.type===`number`||i.type===`currency`||i.type===`percent`)return r(e,{type:i.type,locales:i.locales,currency:i.type===`currency`?i.currency??`USD`:void 0,valueIsPercentPoints:i.type===`percent`?i.valueIsPercentPoints:void 0,options:i.options});if(i.type===`date`||i.type===`datetime`){let r=a(e);if(r){let e=t(i.pattern,i.type),a=e||i.options?{...e,...i.options}:i.type===`date`?{year:`numeric`,month:`2-digit`,day:`2-digit`}:{year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`};return n(i.locales,a).format(r)}}return String(e)}function s(e){if(!e)return;let t=()=>{let t=e.options;return t&&typeof t.maximumFractionDigits==`number`?t.maximumFractionDigits:t&&typeof t.minimumFractionDigits==`number`?t.minimumFractionDigits:e.type===`currency`?2:e.type===`number`?0:2},n=e=>e>0?`.`+`0`.repeat(e):``;switch(e.type){case`number`:return`#,##0${n(t())}`;case`currency`:return`"${l(e.currency??`USD`)}"#,##0${n(t())}`;case`percent`:return`0${n(t())}%`;case`date`:return`yyyy-mm-dd`;case`datetime`:return`yyyy-mm-dd hh:mm`;default:return}}function c(e,t,n={}){let r=n.columns&&n.columns.length?n.columns.map(e=>t.find(t=>t.field===e)).filter(e=>!!e):t.filter(e=>e.field),i=r.map(e=>e.field),a={};for(let e of r)e.align&&(a[e.field]=e.align);let s={};for(let e of r)s[e.field]=e.header;let c=[s];for(let t of e){let e={};for(let i of r){let r=t[i.field];e[i.field]=n.rawValues?r:o(r,i.format)}c.push(e)}return{records:c,fields:i,align:a}}function l(e){return{USD:`$`,EUR:`€`,GBP:`£`,JPY:`¥`,CNY:`¥`,INR:`₹`,KRW:`₩`,RUB:`₽`,BRL:`R$`}[e.toUpperCase()]??e.toUpperCase()}function u(e,t){if(e==null||!t)return{ok:!1};if(t.type===`number`||t.type===`currency`){let t=typeof e==`number`?e:Number(e);return Number.isFinite(t)?{ok:!0,value:t}:{ok:!1}}if(t.type===`percent`){let n=typeof e==`number`?e:Number(e);return Number.isFinite(n)?{ok:!0,value:t.valueIsPercentPoints===!0?n/100:n}:{ok:!1}}if(t.type===`date`||t.type===`datetime`){let t=a(e);return t?{ok:!0,value:t}:{ok:!1}}return{ok:!1}}var d=``;function f(e){if(e?.aborted)throw new DOMException(`Export aborted`,`AbortError`)}var p=()=>new Promise(e=>setTimeout(e,0));function m(e,t){let n=e==null?``:e instanceof Date?e.toISOString():String(e);return n===``?n:n.includes(t)||n.includes(`"`)||n.includes(`
2
2
  `)||n.includes(`\r`)?`"${n.replace(/"/g,`""`)}"`:n}async function h(e,t,n={}){let r=n.csv?.delimiter??`,`,i=n.csv?.eol??`\r
3
3
  `,a=n.csv?.bom??!0,o=Math.max(1,n.chunkRows??5e3),s=e.length,c=[];for(let i=0;i<e.length;i++){f(n.signal);let a=e[i];c.push(t.map(e=>m(a[e],r)).join(r)),i>0&&i%o===0&&(n.onProgress?.({phase:`serialize`,ratio:i/s,row:i,total:s}),await p())}n.onProgress?.({phase:`serialize`,ratio:1,row:s,total:s});let l=c.join(i);return(a?d:``)+l}var g={"&":`&amp;`,"<":`&lt;`,">":`&gt;`,'"':`&quot;`,"'":`&#39;`};function _(e){return(e==null?``:e instanceof Date?e.toISOString():String(e)).replace(/[&<>"']/g,e=>g[e])}async function v(e,t,n={}){let r=Math.max(1,n.chunkRows??5e3),i=e.length,a=n.align??{},o=n.cellStyle,s=n.cellLink,c=n.title??`Grid export`,l=e[0],u=l?t.map(e=>`<th>${_(l[e])}</th>`).join(``):``,d=[];for(let c=1;c<e.length;c++){f(n.signal);let l=e[c],u=t.map((e,t)=>{let n=a[e],r=[];n&&n!==`left`&&r.push(`text-align:${n}`);let i=o?.(c-1,t);i?.fill&&r.push(`background:${i.fill}`),i?.color&&r.push(`color:${i.color}`),i?.bold&&r.push(`font-weight:700`);let u=r.length?` style="${r.join(`;`)}"`:``,d=i?.icon?`${i.icon} ${_(l[e])}`:_(l[e]),f=s?.(c-1,t);return f&&(d=`<a href="${_(f)}">${d}</a>`),`<td${u}>${d}</td>`}).join(``);d.push(`<tr>${u}</tr>`),c>0&&c%r===0&&(n.onProgress?.({phase:`serialize`,ratio:c/i,row:c,total:i}),await p())}return n.onProgress?.({phase:`serialize`,ratio:1,row:i,total:i}),`<!doctype html><html><head><meta charset="utf-8"><title>${_(c)}</title><style>table{border-collapse:collapse;font-family:system-ui,sans-serif;font-size:13px}th,td{border:1px solid #d0d7de;padding:6px 10px}th{background:#f6f8fa;text-align:left}</style></head><body><table><thead><tr>${u}</tr></thead><tbody>${d.join(``)}</tbody></table></body></html>`}async function y(e,t,n={}){let r=Math.max(1,n.chunkRows??5e3),i=e.length-1,a=[];for(let o=1;o<e.length;o++){f(n.signal);let s=e[o],c={};for(let e of t)c[e]=s[e];a.push(c),o>0&&o%r===0&&(n.onProgress?.({phase:`serialize`,ratio:o/i,row:o,total:i}),await p())}return n.onProgress?.({phase:`serialize`,ratio:1,row:i,total:i}),JSON.stringify(a,null,2)}function b(e){return(e==null?``:e instanceof Date?e.toISOString():String(e)).replace(/\\/g,`\\\\`).replace(/\|/g,`\\|`).replace(/\r?\n/g,`<br>`)}async function x(e,t,n={}){let r=Math.max(1,n.chunkRows??5e3),i=e.length,a=n.align??{},o=e[0],s=`| ${t.map(e=>b(o?.[e])).join(` | `)} |`,c=`| ${t.map(e=>{let t=a[e];return t===`right`?`---:`:t===`center`?`:--:`:`---`}).join(` | `)} |`,l=[];for(let a=1;a<e.length;a++){f(n.signal);let o=e[a];l.push(`| ${t.map(e=>b(o[e])).join(` | `)} |`),a>0&&a%r===0&&(n.onProgress?.({phase:`serialize`,ratio:a/i,row:a,total:i}),await p())}return n.onProgress?.({phase:`serialize`,ratio:1,row:i,total:i}),[s,c,...l].join(`
4
4
  `)+`
@@ -1 +1 @@
1
- var e=[`a[href]`,`area[href]`,`button:not([disabled])`,`input:not([disabled])`,`select:not([disabled])`,`textarea:not([disabled])`,`iframe`,`audio[controls]`,`video[controls]`,`[contenteditable]:not([contenteditable="false"])`,`[tabindex]`].join(`,`);function t(e){if(e.hasAttribute(`disabled`)||e.getAttribute(`aria-hidden`)===`true`||e.hidden||e.closest(`[hidden]`))return!1;let t=e.style;return!(t.display===`none`||t.visibility===`hidden`||typeof e.getClientRects==`function`&&e.getClientRects().length===0&&document.body.getClientRects().length>0)}function n(n){return Array.from(n.querySelectorAll(e)).filter(e=>{let n=e.getAttribute(`tabindex`);return n!==null&&Number(n)<0?!1:t(e)})}function r(e,t={}){let{initialFocus:r=`first`,returnFocus:i=!0}=t,a=null,o=!1;function s(){let t=r;return t===`container`?e:t===`first`?n(e)[0]??e:typeof t==`function`?t():t}function c(r){if(!o)return;if(r.key===`Escape`&&t.onEscape){t.onEscape(r);return}if(r.key!==`Tab`)return;let i=n(e);if(!i.length){r.preventDefault(),e.focus();return}let a=i[0],s=i[i.length-1],c=document.activeElement;if(!e.contains(c)){r.preventDefault(),a.focus();return}r.shiftKey&&c===a?(r.preventDefault(),s.focus()):!r.shiftKey&&c===s&&(r.preventDefault(),a.focus())}function l(){o||(o=!0,a=document.activeElement,e.hasAttribute(`tabindex`)||e.setAttribute(`tabindex`,`-1`),document.addEventListener(`keydown`,c,!0),queueMicrotask(()=>{o&&s()?.focus()}))}function u(){o&&(o=!1,document.removeEventListener(`keydown`,c,!0),i&&a?.focus?.(),a=null)}return{activate:l,release:u}}export{r as t};
1
+ var e=[`a[href]`,`area[href]`,`button:not([disabled])`,`input:not([disabled])`,`select:not([disabled])`,`textarea:not([disabled])`,`iframe`,`audio[controls]`,`video[controls]`,`[contenteditable]:not([contenteditable="false"])`,`[tabindex]`].join(`,`);function t(e){if(e.hasAttribute(`disabled`)||e.getAttribute(`aria-hidden`)===`true`||e.hidden||e.closest(`[hidden]`))return!1;let t=e.style;return!(t.display===`none`||t.visibility===`hidden`||typeof e.getClientRects==`function`&&e.getClientRects().length===0&&document.body.getClientRects().length>0)}function n(n){return Array.from(n.querySelectorAll(e)).filter(e=>{let n=e.getAttribute(`tabindex`);return n!==null&&Number(n)<0?!1:t(e)})}function r(e,t={}){let{initialFocus:r=`first`,returnFocus:i=!0}=t,a=null,o=!1;function s(){let t=r;return t===`container`?e:t===`first`?n(e)[0]??e:typeof t==`function`?t():t}function c(r){if(!o)return;if(r.key===`Escape`&&t.onEscape){t.onEscape(r);return}if(r.key!==`Tab`)return;let i=n(e);if(!i.length){r.preventDefault(),e.focus();return}let a=i[0],s=i[i.length-1],c=document.activeElement;if(!e.contains(c)){r.preventDefault(),a.focus();return}r.shiftKey&&c===a?(r.preventDefault(),s.focus()):!r.shiftKey&&c===s&&(r.preventDefault(),a.focus())}function l(){o||(o=!0,a=document.activeElement,e.hasAttribute(`tabindex`)||e.setAttribute(`tabindex`,`-1`),document.addEventListener(`keydown`,c,!0),queueMicrotask(()=>{o&&s()?.focus()}))}function u(){o&&(o=!1,document.removeEventListener(`keydown`,c,!0),i&&a?.focus?.(),a=null)}return{activate:l,release:u}}export{n,r as t};