@carto/ps-react-ui 4.19.0 → 4.20.1

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 (416) hide show
  1. package/dist/actions-DKX98LlI.js +1318 -0
  2. package/dist/actions-DKX98LlI.js.map +1 -0
  3. package/dist/actions-Dy9JVr7F.js +1004 -0
  4. package/dist/actions-Dy9JVr7F.js.map +1 -0
  5. package/dist/category-DHZscHaS.js +826 -0
  6. package/dist/category-DHZscHaS.js.map +1 -0
  7. package/dist/chart-config-BGt7wkK7.js +108 -0
  8. package/dist/chart-config-BGt7wkK7.js.map +1 -0
  9. package/dist/chat.js +1589 -1711
  10. package/dist/chat.js.map +1 -1
  11. package/dist/cjs-CBrZjPCj.js +75 -0
  12. package/dist/cjs-CBrZjPCj.js.map +1 -0
  13. package/dist/components-DDt4mOQn.js +2403 -0
  14. package/dist/components-DDt4mOQn.js.map +1 -0
  15. package/dist/components.js +5 -1841
  16. package/dist/copy-button-DaQqWVu0.js +25 -0
  17. package/dist/copy-button-DaQqWVu0.js.map +1 -0
  18. package/dist/csv-modifiers-D6HGC24b.js +26 -0
  19. package/dist/csv-modifiers-D6HGC24b.js.map +1 -0
  20. package/dist/download-BT6qBamM.js +232 -0
  21. package/dist/download-BT6qBamM.js.map +1 -0
  22. package/dist/echart-BkaV3V5G.js +133 -0
  23. package/dist/echart-BkaV3V5G.js.map +1 -0
  24. package/dist/echart-DSz2Tu0z.js +250 -0
  25. package/dist/echart-DSz2Tu0z.js.map +1 -0
  26. package/dist/formatter-wVO81tYk.js +6 -0
  27. package/dist/formatter-wVO81tYk.js.map +1 -0
  28. package/dist/formula-Bk9CBzm2.js +190 -0
  29. package/dist/formula-Bk9CBzm2.js.map +1 -0
  30. package/dist/formula-Dsru_p-g.js +285 -0
  31. package/dist/formula-Dsru_p-g.js.map +1 -0
  32. package/dist/hooks-zf5gKZYq.js +22 -0
  33. package/dist/hooks-zf5gKZYq.js.map +1 -0
  34. package/dist/legend/stores.js +2 -24
  35. package/dist/legend.js +2274 -2323
  36. package/dist/legend.js.map +1 -1
  37. package/dist/markdown-DnSJMPjQ.js +165 -0
  38. package/dist/markdown-DnSJMPjQ.js.map +1 -0
  39. package/dist/markdown-content-BzKoX3eu.js +8764 -0
  40. package/dist/markdown-content-BzKoX3eu.js.map +1 -0
  41. package/dist/range-BPWVrAsY.js +277 -0
  42. package/dist/range-BPWVrAsY.js.map +1 -0
  43. package/dist/rolldown-runtime-B0aSnxlc.js +20 -0
  44. package/dist/row-CvVGBuy_.js +35 -0
  45. package/dist/row-CvVGBuy_.js.map +1 -0
  46. package/dist/shared-resize-observer-BEiP2rQt.js +157 -0
  47. package/dist/shared-resize-observer-BEiP2rQt.js.map +1 -0
  48. package/dist/smart-tooltip-CwGHCqab.js +34 -0
  49. package/dist/smart-tooltip-CwGHCqab.js.map +1 -0
  50. package/dist/spread-Dy8pshpN.js +149 -0
  51. package/dist/spread-Dy8pshpN.js.map +1 -0
  52. package/dist/stores-B81-IU1G.js +374 -0
  53. package/dist/stores-B81-IU1G.js.map +1 -0
  54. package/dist/stores-BVFMfgyo.js +248 -0
  55. package/dist/stores-BVFMfgyo.js.map +1 -0
  56. package/dist/styles-Y-qGBELO.js +13 -0
  57. package/dist/styles-Y-qGBELO.js.map +1 -0
  58. package/dist/table-BfTG6rrs.js +439 -0
  59. package/dist/table-BfTG6rrs.js.map +1 -0
  60. package/dist/tooltip-DJUGNZxY.js +23 -0
  61. package/dist/tooltip-DJUGNZxY.js.map +1 -0
  62. package/dist/types/chat/bubbles/chat-agent-message-markdown.d.ts +1 -1
  63. package/dist/types/chat/bubbles/chat-error-message.d.ts +1 -1
  64. package/dist/types/chat/bubbles/chat-suggestion-button.d.ts +1 -1
  65. package/dist/types/chat/bubbles/chat-user-message.d.ts +1 -1
  66. package/dist/types/chat/containers/chat-footer.d.ts +1 -1
  67. package/dist/types/chat/containers/chat-header.d.ts +1 -1
  68. package/dist/types/chat/containers/chat-starter.d.ts +1 -1
  69. package/dist/types/chat/feedback/chat-loader.d.ts +1 -1
  70. package/dist/types/chat/feedback/chat-rating-action.d.ts +1 -1
  71. package/dist/types/chat/feedback/chat-thinking.d.ts +1 -1
  72. package/dist/types/chat/feedback/chat-tool-code-area.d.ts +1 -1
  73. package/dist/types/chat/feedback/chat-tool-full-view-dialog.d.ts +1 -1
  74. package/dist/types/chat/feedback/chat-tool-group.d.ts +1 -1
  75. package/dist/types/chat/feedback/chat-tool-trace.d.ts +2 -2
  76. package/dist/types/components/basemaps/group-wrapper.d.ts +1 -1
  77. package/dist/types/components/basemaps/group.d.ts +1 -1
  78. package/dist/types/components/basemaps/header.d.ts +1 -1
  79. package/dist/types/components/copy-button/copy-button.d.ts +1 -1
  80. package/dist/types/components/lasso-tool/chip.d.ts +1 -1
  81. package/dist/types/components/lasso-tool/icons.d.ts +7 -7
  82. package/dist/types/components/lasso-tool/lasso-tool.d.ts +4 -4
  83. package/dist/types/components/lasso-tool/message.d.ts +1 -1
  84. package/dist/types/components/list-data/list-data-skeleton.d.ts +1 -1
  85. package/dist/types/components/measurement-tools/icons.d.ts +3 -3
  86. package/dist/types/components/no-data-alert/no-data-alert.d.ts +1 -1
  87. package/dist/types/components/responsive-drawer/responsive-drawer.d.ts +1 -1
  88. package/dist/types/components/smart-tooltip/smart-tooltip.d.ts +1 -1
  89. package/dist/types/components/tooltip/tooltip.d.ts +1 -1
  90. package/dist/types/hooks/use-widget-ref.d.ts +2 -1
  91. package/dist/types/legend/components/legend-actions/legend-actions.d.ts +1 -1
  92. package/dist/types/legend/components/legend-category/legend-category-ui.d.ts +1 -1
  93. package/dist/types/legend/components/legend-config-select/legend-config-select.d.ts +1 -1
  94. package/dist/types/legend/components/legend-group/legend-group.d.ts +1 -1
  95. package/dist/types/legend/components/legend-group-menu/legend-group-menu-items.d.ts +4 -4
  96. package/dist/types/legend/components/legend-group-menu/legend-group-menu.d.ts +1 -1
  97. package/dist/types/legend/components/legend-icon/legend-icon-ui.d.ts +1 -1
  98. package/dist/types/legend/components/legend-item/legend-item-ui.d.ts +1 -1
  99. package/dist/types/legend/components/legend-item/legend-item.d.ts +1 -1
  100. package/dist/types/legend/components/legend-opacity/legend-opacity.d.ts +2 -2
  101. package/dist/types/legend/components/legend-overflow-menu/legend-overflow-menu.d.ts +1 -1
  102. package/dist/types/legend/components/legend-panel-menu/legend-panel-menu.d.ts +1 -1
  103. package/dist/types/legend/components/legend-proportion/legend-proportion-ui.d.ts +1 -1
  104. package/dist/types/legend/components/legend-ramp/legend-ramp-ui.d.ts +1 -1
  105. package/dist/types/legend/components/legend-row/legend-row.d.ts +1 -1
  106. package/dist/types/legend/components/legend-row-menu/legend-row-menu-items.d.ts +2 -2
  107. package/dist/types/legend/components/legend-row-menu/legend-row-menu.d.ts +1 -1
  108. package/dist/types/legend/components/legend-row-menu/legend-zoom-to.d.ts +1 -1
  109. package/dist/types/legend/components/legend-sortable/legend-sortable.d.ts +1 -1
  110. package/dist/types/legend/components/legend-swatch/legend-swatch.d.ts +1 -1
  111. package/dist/types/legend/components/legend-visibility-toggle/legend-visibility-toggle.d.ts +1 -1
  112. package/dist/types/legend/components/legend-visible-layers/legend-visible-layers.d.ts +1 -1
  113. package/dist/types/legend/index.d.ts +2 -2
  114. package/dist/types/legend/provider/legend-provider.d.ts +1 -1
  115. package/dist/types/widgets/actions/brush-toggle/brush-toggle.d.ts +1 -1
  116. package/dist/types/widgets/actions/change-column/change-column-icon.d.ts +1 -1
  117. package/dist/types/widgets/actions/change-column/change-column.d.ts +1 -1
  118. package/dist/types/widgets/actions/change-column/sortable-column-item.d.ts +1 -1
  119. package/dist/types/widgets/actions/download/download.d.ts +1 -1
  120. package/dist/types/widgets/actions/fullscreen/fullscreen.d.ts +1 -1
  121. package/dist/types/widgets/actions/lock-selection/lock-selection.d.ts +1 -1
  122. package/dist/types/widgets/actions/relative-data/relative-data.d.ts +1 -1
  123. package/dist/types/widgets/actions/searcher/searcher-toggle.d.ts +1 -1
  124. package/dist/types/widgets/actions/searcher/searcher.d.ts +1 -1
  125. package/dist/types/widgets/actions/stack-toggle/grouped-bar-chart-icon.d.ts +1 -1
  126. package/dist/types/widgets/actions/stack-toggle/stack-toggle.d.ts +1 -1
  127. package/dist/types/widgets/actions/zoom-toggle/zoom-toggle.d.ts +1 -1
  128. package/dist/types/widgets/bar/skeleton.d.ts +1 -1
  129. package/dist/types/widgets/category/category-ui.d.ts +1 -1
  130. package/dist/types/widgets/category/components/category-bar.d.ts +1 -1
  131. package/dist/types/widgets/category/components/category-legend.d.ts +1 -1
  132. package/dist/types/widgets/category/components/category-row-multi.d.ts +1 -1
  133. package/dist/types/widgets/category/components/category-row-other.d.ts +1 -1
  134. package/dist/types/widgets/category/components/category-row-single.d.ts +1 -1
  135. package/dist/types/widgets/category/skeleton.d.ts +1 -1
  136. package/dist/types/widgets/echart/echart-ui.d.ts +1 -1
  137. package/dist/types/widgets/echart/echart.d.ts +1 -1
  138. package/dist/types/widgets/error/error.d.ts +1 -1
  139. package/dist/types/widgets/formula/components/item.d.ts +1 -1
  140. package/dist/types/widgets/formula/components/prefix.d.ts +1 -1
  141. package/dist/types/widgets/formula/components/row.d.ts +1 -1
  142. package/dist/types/widgets/formula/components/series.d.ts +1 -1
  143. package/dist/types/widgets/formula/components/suffix.d.ts +1 -1
  144. package/dist/types/widgets/formula/components/value.d.ts +1 -1
  145. package/dist/types/widgets/formula/formula-ui.d.ts +1 -1
  146. package/dist/types/widgets/formula/skeleton.d.ts +1 -1
  147. package/dist/types/widgets/histogram/skeleton.d.ts +1 -1
  148. package/dist/types/widgets/markdown/markdown-ui.d.ts +1 -1
  149. package/dist/types/widgets/markdown/markdown.d.ts +1 -1
  150. package/dist/types/widgets/markdown/skeleton.d.ts +1 -1
  151. package/dist/types/widgets/no-data/no-data.d.ts +1 -1
  152. package/dist/types/widgets/note/note.d.ts +1 -1
  153. package/dist/types/widgets/pie/skeleton.d.ts +1 -1
  154. package/dist/types/widgets/range/components/range-item.d.ts +1 -1
  155. package/dist/types/widgets/range/range-ui.d.ts +1 -1
  156. package/dist/types/widgets/range/skeleton.d.ts +1 -1
  157. package/dist/types/widgets/scatterplot/skeleton.d.ts +1 -1
  158. package/dist/types/widgets/selection-summary/selection-summary.d.ts +1 -1
  159. package/dist/types/widgets/skeleton-loader/skeleton-loader.d.ts +1 -1
  160. package/dist/types/widgets/spread/components/max-value.d.ts +1 -1
  161. package/dist/types/widgets/spread/components/min-value.d.ts +1 -1
  162. package/dist/types/widgets/spread/components/separator.d.ts +1 -1
  163. package/dist/types/widgets/spread/skeleton.d.ts +1 -1
  164. package/dist/types/widgets/spread/spread-ui.d.ts +1 -1
  165. package/dist/types/widgets/subheader/subheader.d.ts +1 -1
  166. package/dist/types/widgets/table/components/cell-header.d.ts +1 -1
  167. package/dist/types/widgets/table/components/cell.d.ts +1 -1
  168. package/dist/types/widgets/table/components/pagination-actions.d.ts +1 -1
  169. package/dist/types/widgets/table/components/pagination.d.ts +1 -1
  170. package/dist/types/widgets/table/components/row.d.ts +1 -1
  171. package/dist/types/widgets/table/skeleton.d.ts +1 -1
  172. package/dist/types/widgets/table/table-ui.d.ts +2 -2
  173. package/dist/types/widgets/timeseries/skeleton.d.ts +1 -1
  174. package/dist/types/widgets/wrapper/components/actions.d.ts +1 -1
  175. package/dist/types/widgets/wrapper/components/options.d.ts +1 -1
  176. package/dist/types/widgets/wrapper/components/title.d.ts +1 -1
  177. package/dist/types/widgets/wrapper/wrapper-ui.d.ts +1 -1
  178. package/dist/types/widgets/wrapper/wrapper.d.ts +1 -1
  179. package/dist/types/widgets-v2/actions/brush-toggle/brush-toggle.d.ts +1 -1
  180. package/dist/types/widgets-v2/actions/change-column/change-column-icon.d.ts +1 -1
  181. package/dist/types/widgets-v2/actions/change-column/change-column.d.ts +1 -1
  182. package/dist/types/widgets-v2/actions/change-column/sortable-column-item.d.ts +1 -1
  183. package/dist/types/widgets-v2/actions/download/download.d.ts +1 -1
  184. package/dist/types/widgets-v2/actions/download/icons.d.ts +3 -3
  185. package/dist/types/widgets-v2/actions/fullscreen/fullscreen.d.ts +2 -2
  186. package/dist/types/widgets-v2/actions/lock-selection/lock-selection.d.ts +1 -1
  187. package/dist/types/widgets-v2/actions/relative-data/relative-data.d.ts +1 -1
  188. package/dist/types/widgets-v2/actions/searcher/searcher-toggle.d.ts +1 -1
  189. package/dist/types/widgets-v2/actions/searcher/searcher.d.ts +1 -1
  190. package/dist/types/widgets-v2/actions/show-all/show-all.d.ts +1 -1
  191. package/dist/types/widgets-v2/actions/stack-toggle/stack-toggle.d.ts +1 -1
  192. package/dist/types/widgets-v2/actions/zoom-toggle/zoom-toggle.d.ts +1 -1
  193. package/dist/types/widgets-v2/bar/skeleton.d.ts +1 -1
  194. package/dist/types/widgets-v2/category/category-ui.d.ts +1 -1
  195. package/dist/types/widgets-v2/category/category.d.ts +1 -1
  196. package/dist/types/widgets-v2/category/components/category-bar-stacked.d.ts +1 -1
  197. package/dist/types/widgets-v2/category/components/category-bar.d.ts +1 -1
  198. package/dist/types/widgets-v2/category/components/category-legend.d.ts +1 -1
  199. package/dist/types/widgets-v2/category/components/category-row-multi.d.ts +1 -1
  200. package/dist/types/widgets-v2/category/components/category-row-other.d.ts +1 -1
  201. package/dist/types/widgets-v2/category/components/category-row-single.d.ts +1 -1
  202. package/dist/types/widgets-v2/category/components/category-row-stacked.d.ts +1 -1
  203. package/dist/types/widgets-v2/category/skeleton.d.ts +1 -1
  204. package/dist/types/widgets-v2/echart/echart-ui.d.ts +1 -1
  205. package/dist/types/widgets-v2/echart/echart.d.ts +1 -1
  206. package/dist/types/widgets-v2/formula/delta.d.ts +1 -1
  207. package/dist/types/widgets-v2/formula/formula-ui.d.ts +1 -1
  208. package/dist/types/widgets-v2/formula/formula.d.ts +1 -1
  209. package/dist/types/widgets-v2/formula/note.d.ts +1 -1
  210. package/dist/types/widgets-v2/formula/prefix.d.ts +1 -1
  211. package/dist/types/widgets-v2/formula/series.d.ts +1 -1
  212. package/dist/types/widgets-v2/formula/skeleton.d.ts +1 -1
  213. package/dist/types/widgets-v2/formula/suffix.d.ts +1 -1
  214. package/dist/types/widgets-v2/formula/value.d.ts +1 -1
  215. package/dist/types/widgets-v2/histogram/skeleton.d.ts +1 -1
  216. package/dist/types/widgets-v2/index.d.ts +5 -5
  217. package/dist/types/widgets-v2/markdown/markdown-content.d.ts +1 -1
  218. package/dist/types/widgets-v2/markdown/markdown-ui.d.ts +1 -1
  219. package/dist/types/widgets-v2/markdown/markdown.d.ts +1 -1
  220. package/dist/types/widgets-v2/markdown/skeleton.d.ts +1 -1
  221. package/dist/types/widgets-v2/note/widget-note.d.ts +2 -2
  222. package/dist/types/widgets-v2/pie/skeleton.d.ts +1 -1
  223. package/dist/types/widgets-v2/provider/widget-provider.d.ts +1 -1
  224. package/dist/types/widgets-v2/range/range-ui.d.ts +1 -1
  225. package/dist/types/widgets-v2/range/range.d.ts +1 -1
  226. package/dist/types/widgets-v2/range/skeleton.d.ts +1 -1
  227. package/dist/types/widgets-v2/scatterplot/skeleton.d.ts +1 -1
  228. package/dist/types/widgets-v2/selection-summary/selection-summary.d.ts +1 -1
  229. package/dist/types/widgets-v2/spread/band.d.ts +37 -0
  230. package/dist/types/widgets-v2/spread/band.test.d.ts +1 -0
  231. package/dist/types/widgets-v2/spread/index.d.ts +1 -0
  232. package/dist/types/widgets-v2/spread/separator.d.ts +1 -1
  233. package/dist/types/widgets-v2/spread/skeleton.d.ts +1 -1
  234. package/dist/types/widgets-v2/spread/spread-ui.d.ts +1 -1
  235. package/dist/types/widgets-v2/spread/spread.d.ts +1 -1
  236. package/dist/types/widgets-v2/state/widget-state.d.ts +1 -1
  237. package/dist/types/widgets-v2/subheader/subheader.d.ts +1 -1
  238. package/dist/types/widgets-v2/table/skeleton.d.ts +1 -1
  239. package/dist/types/widgets-v2/table/table-ui.d.ts +1 -1
  240. package/dist/types/widgets-v2/table/table.d.ts +1 -1
  241. package/dist/types/widgets-v2/timeseries/skeleton.d.ts +1 -1
  242. package/dist/types/widgets-v2/toolbox/toolbox.d.ts +1 -1
  243. package/dist/types/widgets-v2/wrapper/widget-actions.d.ts +2 -2
  244. package/dist/types/widgets-v2/wrapper/widget-content.d.ts +2 -2
  245. package/dist/types/widgets-v2/wrapper/widget-wrapper.d.ts +1 -1
  246. package/dist/use-widget-selector-VSPhfhNm.js +12 -0
  247. package/dist/{use-widget-selector-DFl2hW0R.js.map → use-widget-selector-VSPhfhNm.js.map} +1 -1
  248. package/dist/utils-DtvTjjMq.js +58 -0
  249. package/dist/utils-DtvTjjMq.js.map +1 -0
  250. package/dist/widget-store-BFPKYm4R.js +187 -0
  251. package/dist/widget-store-BFPKYm4R.js.map +1 -0
  252. package/dist/widgets/actions.js +2 -1317
  253. package/dist/widgets/bar.js +183 -175
  254. package/dist/widgets/bar.js.map +1 -1
  255. package/dist/widgets/category.js +429 -434
  256. package/dist/widgets/category.js.map +1 -1
  257. package/dist/widgets/echart.js +3 -120
  258. package/dist/widgets/error.js +28 -38
  259. package/dist/widgets/error.js.map +1 -1
  260. package/dist/widgets/formula.js +3 -123
  261. package/dist/widgets/histogram.js +183 -202
  262. package/dist/widgets/histogram.js.map +1 -1
  263. package/dist/widgets/loader.js +63 -61
  264. package/dist/widgets/loader.js.map +1 -1
  265. package/dist/widgets/markdown.js +141 -123
  266. package/dist/widgets/markdown.js.map +1 -1
  267. package/dist/widgets/no-data.js +52 -58
  268. package/dist/widgets/no-data.js.map +1 -1
  269. package/dist/widgets/note.js +125 -122
  270. package/dist/widgets/note.js.map +1 -1
  271. package/dist/widgets/pie.js +245 -259
  272. package/dist/widgets/pie.js.map +1 -1
  273. package/dist/widgets/range.js +225 -204
  274. package/dist/widgets/range.js.map +1 -1
  275. package/dist/widgets/scatterplot.js +220 -215
  276. package/dist/widgets/scatterplot.js.map +1 -1
  277. package/dist/widgets/selection-summary.js +39 -38
  278. package/dist/widgets/selection-summary.js.map +1 -1
  279. package/dist/widgets/skeleton-loader.js +22 -23
  280. package/dist/widgets/skeleton-loader.js.map +1 -1
  281. package/dist/widgets/spread.js +150 -156
  282. package/dist/widgets/spread.js.map +1 -1
  283. package/dist/widgets/stores.js +3 -8
  284. package/dist/widgets/subheader.js +49 -50
  285. package/dist/widgets/subheader.js.map +1 -1
  286. package/dist/widgets/table.js +576 -644
  287. package/dist/widgets/table.js.map +1 -1
  288. package/dist/widgets/timeseries.js +175 -170
  289. package/dist/widgets/timeseries.js.map +1 -1
  290. package/dist/widgets/toolbar-actions.js +140 -145
  291. package/dist/widgets/toolbar-actions.js.map +1 -1
  292. package/dist/widgets/utils.js +17 -33
  293. package/dist/widgets/utils.js.map +1 -1
  294. package/dist/widgets/wrapper.js +265 -276
  295. package/dist/widgets/wrapper.js.map +1 -1
  296. package/dist/widgets-v2/actions.js +4 -51
  297. package/dist/widgets-v2/bar.js +253 -307
  298. package/dist/widgets-v2/bar.js.map +1 -1
  299. package/dist/widgets-v2/category.js +2 -98
  300. package/dist/widgets-v2/echart.js +2 -57
  301. package/dist/widgets-v2/formula.js +2 -68
  302. package/dist/widgets-v2/histogram.js +285 -350
  303. package/dist/widgets-v2/histogram.js.map +1 -1
  304. package/dist/widgets-v2/markdown.js +3 -69
  305. package/dist/widgets-v2/pie.js +363 -461
  306. package/dist/widgets-v2/pie.js.map +1 -1
  307. package/dist/widgets-v2/range.js +2 -52
  308. package/dist/widgets-v2/scatterplot.js +316 -391
  309. package/dist/widgets-v2/scatterplot.js.map +1 -1
  310. package/dist/widgets-v2/spread.js +2 -66
  311. package/dist/widgets-v2/stores.js +2 -42
  312. package/dist/widgets-v2/table.js +2 -78
  313. package/dist/widgets-v2/timeseries.js +285 -340
  314. package/dist/widgets-v2/timeseries.js.map +1 -1
  315. package/dist/widgets-v2/utils.js +2 -8
  316. package/dist/widgets-v2.js +955 -951
  317. package/dist/widgets-v2.js.map +1 -1
  318. package/dist/zoom-toggle-CA0ifG23.js +164 -0
  319. package/dist/zoom-toggle-CA0ifG23.js.map +1 -0
  320. package/package.json +4 -4
  321. package/src/hooks/use-widget-ref.ts +1 -0
  322. package/src/widgets-v2/index.ts +6 -1
  323. package/src/widgets-v2/spread/band.test.ts +46 -0
  324. package/src/widgets-v2/spread/band.ts +47 -0
  325. package/src/widgets-v2/spread/index.ts +1 -0
  326. package/dist/category-Ct2BzADB.js +0 -753
  327. package/dist/category-Ct2BzADB.js.map +0 -1
  328. package/dist/change-column-Fu1DCYQ3.js +0 -1186
  329. package/dist/change-column-Fu1DCYQ3.js.map +0 -1
  330. package/dist/cjs-D4KH3azB.js +0 -85
  331. package/dist/cjs-D4KH3azB.js.map +0 -1
  332. package/dist/components.js.map +0 -1
  333. package/dist/copy-button-DGL1tyli.js +0 -26
  334. package/dist/copy-button-DGL1tyli.js.map +0 -1
  335. package/dist/csv-item-hH_Gt7ur.js +0 -32
  336. package/dist/csv-item-hH_Gt7ur.js.map +0 -1
  337. package/dist/data-zoom-layout-D_FYdnap.js +0 -28
  338. package/dist/data-zoom-layout-D_FYdnap.js.map +0 -1
  339. package/dist/download-config-OKlLLSW_.js +0 -58
  340. package/dist/download-config-OKlLLSW_.js.map +0 -1
  341. package/dist/echart-B10dhEaM.js +0 -262
  342. package/dist/echart-B10dhEaM.js.map +0 -1
  343. package/dist/exports-Cr43OCul.js +0 -51
  344. package/dist/exports-Cr43OCul.js.map +0 -1
  345. package/dist/exports-Cx-f6m6U.js +0 -63
  346. package/dist/exports-Cx-f6m6U.js.map +0 -1
  347. package/dist/formatter-B9Bxn1k7.js +0 -6
  348. package/dist/formatter-B9Bxn1k7.js.map +0 -1
  349. package/dist/formula-DuC0NQLH.js +0 -79
  350. package/dist/formula-DuC0NQLH.js.map +0 -1
  351. package/dist/lasso-tool-YLFRgb-S.js +0 -582
  352. package/dist/lasso-tool-YLFRgb-S.js.map +0 -1
  353. package/dist/legend/stores.js.map +0 -1
  354. package/dist/legend-store-registry-p1tSwJXH.js +0 -472
  355. package/dist/legend-store-registry-p1tSwJXH.js.map +0 -1
  356. package/dist/markdown-DdqANCiN.js +0 -102
  357. package/dist/markdown-DdqANCiN.js.map +0 -1
  358. package/dist/markdown-content-Dk2DSgbf.js +0 -10287
  359. package/dist/markdown-content-Dk2DSgbf.js.map +0 -1
  360. package/dist/option-builders-DPeoyQaM.js +0 -130
  361. package/dist/option-builders-DPeoyQaM.js.map +0 -1
  362. package/dist/options-CthfUJDz.js +0 -46
  363. package/dist/options-CthfUJDz.js.map +0 -1
  364. package/dist/png-item-9dNbB37T.js +0 -57
  365. package/dist/png-item-9dNbB37T.js.map +0 -1
  366. package/dist/range-l4fNHLEg.js +0 -213
  367. package/dist/range-l4fNHLEg.js.map +0 -1
  368. package/dist/resolve-theme-color-BdojIw0K.js +0 -47
  369. package/dist/resolve-theme-color-BdojIw0K.js.map +0 -1
  370. package/dist/row-DZSP99LW.js +0 -34
  371. package/dist/row-DZSP99LW.js.map +0 -1
  372. package/dist/series-DLNHDWs0.js +0 -90
  373. package/dist/series-DLNHDWs0.js.map +0 -1
  374. package/dist/shared-resize-observer-98b1SK1e.js +0 -17
  375. package/dist/shared-resize-observer-98b1SK1e.js.map +0 -1
  376. package/dist/smart-tooltip-DFV6GD8R.js +0 -40
  377. package/dist/smart-tooltip-DFV6GD8R.js.map +0 -1
  378. package/dist/spread-4MYPOntd.js +0 -66
  379. package/dist/spread-4MYPOntd.js.map +0 -1
  380. package/dist/style-DVnT6HC1.js +0 -131
  381. package/dist/style-DVnT6HC1.js.map +0 -1
  382. package/dist/styles-cohnxh9F.js +0 -23
  383. package/dist/styles-cohnxh9F.js.map +0 -1
  384. package/dist/table-CTcLOycx.js +0 -383
  385. package/dist/table-CTcLOycx.js.map +0 -1
  386. package/dist/tooltip-BDnrRKrp.js +0 -25
  387. package/dist/tooltip-BDnrRKrp.js.map +0 -1
  388. package/dist/transforms-Cdx4fkU5.js +0 -106
  389. package/dist/transforms-Cdx4fkU5.js.map +0 -1
  390. package/dist/use-transform-DXPN3nY7.js +0 -110
  391. package/dist/use-transform-DXPN3nY7.js.map +0 -1
  392. package/dist/use-widget-ref-Ddr_SlJJ.js +0 -22
  393. package/dist/use-widget-ref-Ddr_SlJJ.js.map +0 -1
  394. package/dist/use-widget-selector-DFl2hW0R.js +0 -12
  395. package/dist/utils-BOhInag6.js +0 -170
  396. package/dist/utils-BOhInag6.js.map +0 -1
  397. package/dist/widget-context-DTGO0Yta.js +0 -13
  398. package/dist/widget-context-DTGO0Yta.js.map +0 -1
  399. package/dist/widget-store-Bw5zRUGg.js +0 -261
  400. package/dist/widget-store-Bw5zRUGg.js.map +0 -1
  401. package/dist/widget-store-registry-_W4Z4xp-.js +0 -178
  402. package/dist/widget-store-registry-_W4Z4xp-.js.map +0 -1
  403. package/dist/widgets/actions.js.map +0 -1
  404. package/dist/widgets/echart.js.map +0 -1
  405. package/dist/widgets/formula.js.map +0 -1
  406. package/dist/widgets/stores.js.map +0 -1
  407. package/dist/widgets-v2/actions.js.map +0 -1
  408. package/dist/widgets-v2/category.js.map +0 -1
  409. package/dist/widgets-v2/echart.js.map +0 -1
  410. package/dist/widgets-v2/formula.js.map +0 -1
  411. package/dist/widgets-v2/markdown.js.map +0 -1
  412. package/dist/widgets-v2/range.js.map +0 -1
  413. package/dist/widgets-v2/spread.js.map +0 -1
  414. package/dist/widgets-v2/stores.js.map +0 -1
  415. package/dist/widgets-v2/table.js.map +0 -1
  416. package/dist/widgets-v2/utils.js.map +0 -1
@@ -1,213 +1,194 @@
1
- import { jsx as m, jsxs as L } from "react/jsx-runtime";
2
- import { c as _ } from "react/compiler-runtime";
3
- import "react";
4
- import "echarts";
5
- import "../widget-store-Bw5zRUGg.js";
6
- import "zustand/shallow";
7
- import { g as k } from "../options-CthfUJDz.js";
8
- import { m as C } from "../utils-BOhInag6.js";
9
- import { j as v, f as $, g as A, n as u, c as M, d as T } from "../option-builders-DPeoyQaM.js";
10
- import { Box as f, Skeleton as y } from "@mui/material";
11
- import "@mui/icons-material";
12
- import { d as h, a as d } from "../exports-Cr43OCul.js";
13
- import "../lasso-tool-YLFRgb-S.js";
14
- import "../cjs-D4KH3azB.js";
15
- import "@carto/ps-utils";
16
- import "@dnd-kit/core";
17
- import "@dnd-kit/sortable";
18
- import "@dnd-kit/utilities";
19
- import "react-dom";
20
- import { b as D } from "../styles-cohnxh9F.js";
21
- function F(e, n, t) {
22
- if (!e?.length || e[0]?.length === 0) return [];
23
- const o = e[0]?.length ?? 0, a = b(o, n, t), r = e.length;
24
- return [r > 1 ? ["Bin", ...Array.from({
25
- length: r
26
- }, (c, s) => `Series ${s + 1}`)] : ["Bin", "Value"], ...a.map((c, s) => [c, ...e.map((i) => String(i[s] ?? 0))])];
1
+ import { _ as e, v as t } from "../actions-DKX98LlI.js";
2
+ import { a as n } from "../shared-resize-observer-BEiP2rQt.js";
3
+ import { a as r, d as i, f as a, o, s, u as c } from "../chart-config-BGt7wkK7.js";
4
+ import { t as l } from "../echart-BkaV3V5G.js";
5
+ import { t as u } from "../styles-Y-qGBELO.js";
6
+ import { c as d } from "react/compiler-runtime";
7
+ import { Box as f, Skeleton as p } from "@mui/material";
8
+ import { jsx as m, jsxs as h } from "react/jsx-runtime";
9
+ //#region src/widgets/histogram/config.ts
10
+ function g(e, t, n) {
11
+ if (!e?.length || e[0]?.length === 0) return [];
12
+ let r = v(e[0]?.length ?? 0, t, n), i = e.length;
13
+ return [i > 1 ? ["Bin", ...Array.from({ length: i }, (e, t) => `Series ${t + 1}`)] : ["Bin", "Value"], ...r.map((t, n) => [t, ...e.map((e) => String(e[n] ?? 0))])];
27
14
  }
28
- function se({
29
- refUI: e,
30
- ticks: n,
31
- labelFormatter: t
32
- }) {
33
- return [{
34
- ...h,
35
- modifier: () => h.modifier(e)
36
- }, {
37
- ...d,
38
- modifier: async (o) => d.modifier(F(o, n, t))
39
- }];
15
+ function _({ refUI: n, ticks: r, labelFormatter: i }) {
16
+ return [{
17
+ ...t,
18
+ modifier: () => t.modifier(n)
19
+ }, {
20
+ ...e,
21
+ modifier: async (t) => e.modifier(g(t, r, i))
22
+ }];
40
23
  }
41
- function b(e, n, t) {
42
- const o = (a) => String(t ? t(a) : a);
43
- return Array.from({
44
- length: e
45
- }, (a, r) => {
46
- const p = n[r] ?? r, l = n[r + 1];
47
- return l !== void 0 && isFinite(l) ? `${o(p)}-${o(l)}` : `${o(p)}+`;
48
- });
24
+ function v(e, t, n) {
25
+ let r = (e) => String(n ? n(e) : e);
26
+ return Array.from({ length: e }, (e, n) => {
27
+ let i = t[n] ?? n, a = t[n + 1];
28
+ return a !== void 0 && isFinite(a) ? `${r(i)}-${r(a)}` : `${r(i)}+`;
29
+ });
49
30
  }
50
- function le(e) {
51
- return {
52
- type: "histogram",
53
- option: C(k(e), I(e)),
54
- formatter: e.formatter,
55
- labelFormatter: e.labelFormatter
56
- };
31
+ function y(e) {
32
+ return {
33
+ type: "histogram",
34
+ option: n(l(e), b(e)),
35
+ formatter: e.formatter,
36
+ labelFormatter: e.labelFormatter
37
+ };
57
38
  }
58
- function I({
59
- data: e = [],
60
- ticks: n,
61
- theme: t,
62
- formatter: o,
63
- labelFormatter: a
64
- }) {
65
- const r = (e?.length ?? 0) > 1, p = e[0]?.length ?? 0, l = b(p, n, a);
66
- let c = 0, s = 1;
67
- return {
68
- legend: T({
69
- hasLegend: r,
70
- labelFormatter: a
71
- }),
72
- grid: M(r, t),
73
- xAxis: {
74
- type: "category",
75
- data: l,
76
- axisLine: {
77
- show: !1
78
- },
79
- axisLabel: {
80
- fontSize: t.typography.overlineDelicate.fontSize,
81
- fontFamily: t.typography.overlineDelicate.fontFamily,
82
- showMinLabel: void 0,
83
- showMaxLabel: void 0,
84
- hideOverlap: !0,
85
- margin: 0,
86
- padding: [parseInt(t.spacing(0.5)), parseInt(t.spacing(0.5)), 0, parseInt(t.spacing(0.5))],
87
- color: t.palette.black[60]
88
- },
89
- axisTick: {
90
- show: !1
91
- },
92
- splitLine: {
93
- show: !0,
94
- lineStyle: {
95
- color: t.palette.black[4]
96
- }
97
- }
98
- },
99
- yAxis: {
100
- type: "value",
101
- min: (i) => (c = i.min < 0 ? u(i.min) : 0, c),
102
- max: (i) => (s = i.max <= 0 ? 1 : u(i.max), s),
103
- splitNumber: 1,
104
- axisLabel: {
105
- fontSize: t.typography.overlineDelicate.fontSize,
106
- fontFamily: t.typography.overlineDelicate.fontFamily,
107
- margin: parseInt(t.spacing(1)),
108
- show: !0,
109
- showMaxLabel: !0,
110
- showMinLabel: !0,
111
- verticalAlign: "bottom",
112
- formatter: (i) => i !== s && i !== c || i === 0 ? "" : o ? o(i) : String(i)
113
- },
114
- axisLine: {
115
- show: !1
116
- },
117
- axisTick: {
118
- show: !1
119
- },
120
- splitLine: {
121
- show: !0,
122
- lineStyle: {
123
- color: t.palette.black[4]
124
- }
125
- }
126
- },
127
- tooltip: {
128
- position: A(t),
129
- formatter: $((i) => {
130
- const g = i.value, x = typeof g == "number" && o ? o(g) : String(g ?? ""), S = typeof i.marker == "string" ? i.marker : "", w = i.seriesName ? `${i.seriesName}: ` : "";
131
- return {
132
- name: i.name,
133
- seriesName: w,
134
- marker: S,
135
- value: x
136
- };
137
- })
138
- },
139
- series: e.map((i) => ({
140
- type: "bar",
141
- data: i,
142
- barGap: "1%",
143
- barCategoryGap: "1%",
144
- emphasis: {
145
- focus: "series"
146
- },
147
- ...v(o)
148
- }))
149
- };
39
+ function b({ data: e = [], ticks: t, theme: n, formatter: l, labelFormatter: u }) {
40
+ let d = (e?.length ?? 0) > 1, f = v(e[0]?.length ?? 0, t, u), p = 0, m = 1;
41
+ return {
42
+ legend: s({
43
+ hasLegend: d,
44
+ labelFormatter: u
45
+ }),
46
+ grid: r(d, n),
47
+ xAxis: {
48
+ type: "category",
49
+ data: f,
50
+ axisLine: { show: !1 },
51
+ axisLabel: {
52
+ fontSize: n.typography.overlineDelicate.fontSize,
53
+ fontFamily: n.typography.overlineDelicate.fontFamily,
54
+ showMinLabel: void 0,
55
+ showMaxLabel: void 0,
56
+ hideOverlap: !0,
57
+ margin: 0,
58
+ padding: [
59
+ parseInt(n.spacing(.5)),
60
+ parseInt(n.spacing(.5)),
61
+ 0,
62
+ parseInt(n.spacing(.5))
63
+ ],
64
+ color: n.palette.black[60]
65
+ },
66
+ axisTick: { show: !1 },
67
+ splitLine: {
68
+ show: !0,
69
+ lineStyle: { color: n.palette.black[4] }
70
+ }
71
+ },
72
+ yAxis: {
73
+ type: "value",
74
+ min: (e) => (p = e.min < 0 ? a(e.min) : 0, p),
75
+ max: (e) => (m = e.max <= 0 ? 1 : a(e.max), m),
76
+ splitNumber: 1,
77
+ axisLabel: {
78
+ fontSize: n.typography.overlineDelicate.fontSize,
79
+ fontFamily: n.typography.overlineDelicate.fontFamily,
80
+ margin: parseInt(n.spacing(1)),
81
+ show: !0,
82
+ showMaxLabel: !0,
83
+ showMinLabel: !0,
84
+ verticalAlign: "bottom",
85
+ formatter: (e) => e !== m && e !== p || e === 0 ? "" : l ? l(e) : String(e)
86
+ },
87
+ axisLine: { show: !1 },
88
+ axisTick: { show: !1 },
89
+ splitLine: {
90
+ show: !0,
91
+ lineStyle: { color: n.palette.black[4] }
92
+ }
93
+ },
94
+ tooltip: {
95
+ position: i(n),
96
+ formatter: c((e) => {
97
+ let t = e.value, n = typeof t == "number" && l ? l(t) : String(t ?? ""), r = typeof e.marker == "string" ? e.marker : "", i = e.seriesName ? `${e.seriesName}: ` : "";
98
+ return {
99
+ name: e.name,
100
+ seriesName: i,
101
+ marker: r,
102
+ value: n
103
+ };
104
+ })
105
+ },
106
+ series: e.map((e) => ({
107
+ type: "bar",
108
+ data: e,
109
+ barGap: "1%",
110
+ barCategoryGap: "1%",
111
+ emphasis: { focus: "series" },
112
+ ...o(l)
113
+ }))
114
+ };
150
115
  }
151
- const N = {
152
- skeleton: {
153
- graph: D.graph
154
- }
155
- };
156
- function ce() {
157
- const e = _(2);
158
- let n;
159
- e[0] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (n = /* @__PURE__ */ m(f, { sx: {
160
- display: "flex",
161
- alignItems: "flex-end",
162
- justifyContent: "space-between",
163
- gap: B,
164
- height: V,
165
- width: "100%"
166
- }, children: Array(8).fill(0).map(G) }), e[0] = n) : n = e[0];
167
- let t;
168
- return e[1] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (t = /* @__PURE__ */ L(f, { sx: N.skeleton.graph.container, children: [
169
- n,
170
- /* @__PURE__ */ m(f, { sx: {
171
- display: "flex",
172
- alignItems: "center",
173
- justifyContent: "space-between",
174
- width: "100%",
175
- mt: z
176
- }, children: Array(4).fill(0).map(j) })
177
- ] }), e[1] = t) : t = e[1], t;
116
+ //#endregion
117
+ //#region src/widgets/histogram/style.ts
118
+ var x = { skeleton: { graph: u.graph } };
119
+ //#endregion
120
+ //#region src/widgets/histogram/skeleton.tsx
121
+ function S() {
122
+ let e = d(2), t;
123
+ e[0] === Symbol.for("react.memo_cache_sentinel") ? (t = /* @__PURE__ */ m(f, {
124
+ sx: {
125
+ display: "flex",
126
+ alignItems: "flex-end",
127
+ justifyContent: "space-between",
128
+ gap: D,
129
+ height: E,
130
+ width: "100%"
131
+ },
132
+ children: Array(8).fill(0).map(T)
133
+ }), e[0] = t) : t = e[0];
134
+ let n;
135
+ return e[1] === Symbol.for("react.memo_cache_sentinel") ? (n = /* @__PURE__ */ h(f, {
136
+ sx: x.skeleton.graph.container,
137
+ children: [t, /* @__PURE__ */ m(f, {
138
+ sx: {
139
+ display: "flex",
140
+ alignItems: "center",
141
+ justifyContent: "space-between",
142
+ width: "100%",
143
+ mt: w
144
+ },
145
+ children: [
146
+ ,
147
+ ,
148
+ ,
149
+ ,
150
+ ].fill(0).map(C)
151
+ })]
152
+ }), e[1] = n) : n = e[1], n;
178
153
  }
179
- function j(e, n) {
180
- return /* @__PURE__ */ m(y, { width: 32, height: 8 }, `skeleton-label-${n}`);
154
+ function C(e, t) {
155
+ return /* @__PURE__ */ m(p, {
156
+ width: 32,
157
+ height: 8
158
+ }, `skeleton-label-${t}`);
181
159
  }
182
- function z(e) {
183
- const {
184
- spacing: n
185
- } = e;
186
- return n(1);
160
+ function w(e) {
161
+ let { spacing: t } = e;
162
+ return t(1);
187
163
  }
188
- function G(e, n) {
189
- const o = `${[60, 80, 95, 85, 70, 55, 40, 30][n]}%`;
190
- return /* @__PURE__ */ m(y, { variant: "rectangular", sx: {
191
- flex: 1,
192
- height: o
193
- } }, `skeleton-bar-${n}`);
164
+ function T(e, t) {
165
+ let n = `${[
166
+ 60,
167
+ 80,
168
+ 95,
169
+ 85,
170
+ 70,
171
+ 55,
172
+ 40,
173
+ 30
174
+ ][t]}%`;
175
+ return /* @__PURE__ */ m(p, {
176
+ variant: "rectangular",
177
+ sx: {
178
+ flex: 1,
179
+ height: n
180
+ }
181
+ }, `skeleton-bar-${t}`);
194
182
  }
195
- function V(e) {
196
- const {
197
- spacing: n
198
- } = e;
199
- return n(30);
183
+ function E(e) {
184
+ let { spacing: t } = e;
185
+ return t(30);
200
186
  }
201
- function B(e) {
202
- const {
203
- spacing: n
204
- } = e;
205
- return n(0.5);
187
+ function D(e) {
188
+ let { spacing: t } = e;
189
+ return t(.5);
206
190
  }
207
- export {
208
- ce as HistogramSkeleton,
209
- le as histogramConfig,
210
- F as histogramDataToCSV,
211
- se as histogramDownloadConfig
212
- };
213
- //# sourceMappingURL=histogram.js.map
191
+ //#endregion
192
+ export { S as HistogramSkeleton, y as histogramConfig, g as histogramDataToCSV, _ as histogramDownloadConfig };
193
+
194
+ //# sourceMappingURL=histogram.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"histogram.js","sources":["../../src/widgets/histogram/config.ts","../../src/widgets/histogram/style.ts","../../src/widgets/histogram/skeleton.tsx"],"sourcesContent":["import {\n getCommonOptions,\n mergeEchartWidgetConfig,\n type EchartOptionsProps,\n} from '../echart'\nimport type { HistogramConfig, HistogramWidgetConfig } from './types'\nimport {\n buildLegendConfig,\n buildGridConfig,\n createTooltipPositioner,\n createTooltipFormatter,\n niceNum,\n buildHistogramSeriesLabelConfig,\n} from '../utils/chart-config'\nimport { downloadToCSV, downloadToPNG, type DownloadItem } from '../actions'\nimport type { ConfigProps } from '../loader/types'\n\nexport interface HistogramDownloadConfigProps extends ConfigProps {\n ticks: number[]\n labelFormatter?: (value: string | number) => string | number\n}\n\nexport function histogramDataToCSV(\n data: number[][],\n ticks: number[],\n labelFormatter?: (value: string | number) => string | number,\n): string[][] {\n if (!data?.length || data[0]?.length === 0) return []\n\n const dataLength = data[0]?.length ?? 0\n const labels = createAxisLabels(dataLength, ticks, labelFormatter)\n const seriesCount = data.length\n const isMulti = seriesCount > 1\n\n const headers = isMulti\n ? [\n 'Bin',\n ...Array.from({ length: seriesCount }, (_, i) => `Series ${i + 1}`),\n ]\n : ['Bin', 'Value']\n\n return [\n headers,\n ...labels.map((label, i) => [\n label,\n ...data.map((series) => String(series[i] ?? 0)),\n ]),\n ]\n}\n\nexport function histogramDownloadConfig({\n refUI,\n ticks,\n labelFormatter,\n}: HistogramDownloadConfigProps): DownloadItem<number[][]>[] {\n return [\n {\n ...downloadToPNG,\n modifier: () => downloadToPNG.modifier(refUI),\n },\n {\n ...downloadToCSV,\n modifier: async (data) =>\n downloadToCSV.modifier(histogramDataToCSV(data, ticks, labelFormatter)),\n },\n ]\n}\n\n/**\n * Creates formatted axis labels from tick boundaries.\n *\n * @param dataLength - Number of data points (determines number of labels).\n * @param ticks - Bin boundaries. If `ticks.length === dataLength + 1`, all\n * bins are ranges. If `ticks.length === dataLength`, the last bin is\n * open-ended (`+`). A last tick of `Infinity` also produces `+`.\n * @param labelFormatter - Optional formatter applied to each individual tick\n * value when building the bin range label.\n */\nfunction createAxisLabels(\n dataLength: number,\n ticks: number[],\n labelFormatter?: (value: string | number) => string | number,\n): string[] {\n const fmt = (v: number) =>\n labelFormatter ? String(labelFormatter(v)) : String(v)\n\n return Array.from({ length: dataLength }, (_, i) => {\n const low = ticks[i] ?? i\n const high = ticks[i + 1]\n return high !== undefined && isFinite(high)\n ? `${fmt(low)}-${fmt(high)}`\n : `${fmt(low)}+`\n })\n}\n\n/**\n * Generates ECharts configuration for distribution histogram widgets with\n * adjacent bars (minimal gap) and axis formatting styled with the CARTO theme.\n *\n * Accepts raw `number[][]` data and `ticks` boundaries. The ticks and\n * `labelFormatter` are used to create the x-axis category labels; the raw\n * numeric data is embedded directly in each series.\n *\n * @param props - Histogram configuration including raw data, ticks, and theme.\n * @returns Widget config with ECharts option object.\n */\nexport function histogramConfig(props: HistogramConfig): HistogramWidgetConfig {\n return {\n type: 'histogram',\n option: mergeEchartWidgetConfig(getCommonOptions(props), getOption(props)),\n formatter: props.formatter,\n labelFormatter: props.labelFormatter,\n }\n}\n\nfunction getOption({\n data = [],\n ticks,\n theme,\n formatter,\n labelFormatter,\n}: HistogramConfig): EchartOptionsProps {\n const hasLegend = (data?.length ?? 0) > 1\n const dataLength = data[0]?.length ?? 0\n const axisLabels = createAxisLabels(dataLength, ticks, labelFormatter)\n\n let niceMin = 0\n let niceMax = 1\n\n return {\n legend: buildLegendConfig({ hasLegend, labelFormatter }),\n grid: buildGridConfig(hasLegend, theme),\n xAxis: {\n type: 'category',\n data: axisLabels,\n axisLine: {\n show: false,\n },\n axisLabel: {\n fontSize: theme.typography.overlineDelicate.fontSize,\n fontFamily: theme.typography.overlineDelicate.fontFamily,\n showMinLabel: undefined,\n showMaxLabel: undefined,\n hideOverlap: true,\n margin: 0,\n padding: [\n parseInt(theme.spacing(0.5)),\n parseInt(theme.spacing(0.5)),\n 0,\n parseInt(theme.spacing(0.5)),\n ],\n color: theme.palette.black[60],\n },\n axisTick: {\n show: false,\n },\n splitLine: {\n show: true,\n lineStyle: {\n color: theme.palette.black[4],\n },\n },\n },\n yAxis: {\n type: 'value' as const,\n min: (extent: { min: number }) => {\n niceMin = extent.min < 0 ? niceNum(extent.min) : 0\n return niceMin\n },\n max: (extent: { min: number; max: number }) => {\n niceMax = extent.max <= 0 ? 1 : niceNum(extent.max)\n return niceMax\n },\n splitNumber: 1,\n axisLabel: {\n fontSize: theme.typography.overlineDelicate.fontSize,\n fontFamily: theme.typography.overlineDelicate.fontFamily,\n margin: parseInt(theme.spacing(1)),\n show: true,\n showMaxLabel: true,\n showMinLabel: true,\n verticalAlign: 'bottom' as const,\n formatter: (value: number) => {\n if (value !== niceMax && value !== niceMin) return ''\n if (value === 0) return ''\n return formatter ? formatter(value) : String(value)\n },\n },\n axisLine: {\n show: false,\n },\n axisTick: {\n show: false,\n },\n splitLine: {\n show: true,\n lineStyle: {\n color: theme.palette.black[4],\n },\n },\n },\n tooltip: {\n position: createTooltipPositioner(theme),\n formatter: createTooltipFormatter((item) => {\n const _value = item.value as number\n\n const formattedValue =\n typeof _value === 'number' && formatter\n ? formatter(_value)\n : String(_value ?? '')\n\n const marker = typeof item.marker === 'string' ? item.marker : ''\n const seriesName = item.seriesName ? `${item.seriesName}: ` : ''\n const name = item.name\n\n return { name, seriesName, marker, value: formattedValue }\n }),\n },\n series: data.map((seriesData: number[]) => ({\n type: 'bar',\n data: seriesData,\n barGap: '1%',\n barCategoryGap: '1%',\n emphasis: {\n focus: 'series',\n },\n ...buildHistogramSeriesLabelConfig(formatter),\n })),\n } as EchartOptionsProps\n}\n","import type { SxProps, Theme } from '@mui/material'\nimport { baseSkeletonStyles } from '../utils/skeleton'\n\nexport const styles = {\n skeleton: {\n graph: baseSkeletonStyles.graph,\n },\n} satisfies Record<string, SxProps<Theme>>\n","import { Box, Skeleton } from '@mui/material'\nimport { styles } from './style'\n\nexport function HistogramSkeleton() {\n return (\n <Box sx={styles.skeleton.graph.container}>\n <Box\n sx={{\n display: 'flex',\n alignItems: 'flex-end',\n justifyContent: 'space-between',\n gap: ({ spacing }) => spacing(0.5),\n height: ({ spacing }) => spacing(30),\n width: '100%',\n }}\n >\n {Array(8)\n .fill(0)\n .map((_, i) => {\n // Create varying heights for histogram bars\n const heights = [60, 80, 95, 85, 70, 55, 40, 30]\n const height = `${heights[i]}%`\n return (\n <Skeleton\n key={`skeleton-bar-${i}`}\n variant='rectangular'\n sx={{\n flex: 1,\n height,\n }}\n />\n )\n })}\n </Box>\n <Box\n sx={{\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n width: '100%',\n mt: ({ spacing }) => spacing(1),\n }}\n >\n {Array(4)\n .fill(0)\n .map((_, i) => (\n <Skeleton key={`skeleton-label-${i}`} width={32} height={8} />\n ))}\n </Box>\n </Box>\n )\n}\n"],"names":["histogramDataToCSV","data","ticks","labelFormatter","length","dataLength","labels","createAxisLabels","seriesCount","Array","from","_","i","map","label","series","String","histogramDownloadConfig","refUI","downloadToPNG","modifier","downloadToCSV","fmt","v","low","high","undefined","isFinite","histogramConfig","props","type","option","mergeEchartWidgetConfig","getCommonOptions","getOption","formatter","theme","hasLegend","axisLabels","niceMin","niceMax","legend","buildLegendConfig","grid","buildGridConfig","xAxis","axisLine","show","axisLabel","fontSize","typography","overlineDelicate","fontFamily","showMinLabel","showMaxLabel","hideOverlap","margin","padding","parseInt","spacing","color","palette","black","axisTick","splitLine","lineStyle","yAxis","min","extent","niceNum","max","splitNumber","verticalAlign","value","tooltip","position","createTooltipPositioner","createTooltipFormatter","item","_value","formattedValue","marker","seriesName","name","seriesData","barGap","barCategoryGap","emphasis","focus","buildHistogramSeriesLabelConfig","styles","skeleton","graph","baseSkeletonStyles","HistogramSkeleton","$","_c","t0","Symbol","for","jsx","Box","display","alignItems","justifyContent","gap","_temp","height","_temp2","width","fill","_temp3","t1","container","mt","_temp4","_temp5","__0","i_0","Skeleton","spacing_1","flex","spacing_0"],"mappings":"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"}
1
+ {"version":3,"file":"histogram.js","names":["getCommonOptions","mergeEchartWidgetConfig","EchartOptionsProps","HistogramConfig","HistogramWidgetConfig","buildLegendConfig","buildGridConfig","createTooltipPositioner","createTooltipFormatter","niceNum","buildHistogramSeriesLabelConfig","downloadToCSV","downloadToPNG","DownloadItem","ConfigProps","HistogramDownloadConfigProps","ticks","labelFormatter","value","histogramDataToCSV","data","length","dataLength","labels","createAxisLabels","seriesCount","isMulti","headers","Array","from","_","i","map","label","series","String","histogramDownloadConfig","refUI","modifier","fmt","v","low","high","undefined","isFinite","histogramConfig","props","type","option","getOption","formatter","theme","hasLegend","axisLabels","niceMin","niceMax","legend","grid","xAxis","axisLine","show","axisLabel","fontSize","typography","overlineDelicate","fontFamily","showMinLabel","showMaxLabel","hideOverlap","margin","padding","parseInt","spacing","color","palette","black","axisTick","splitLine","lineStyle","yAxis","const","min","extent","max","splitNumber","verticalAlign","tooltip","position","item","_value","formattedValue","marker","seriesName","name","seriesData","barGap","barCategoryGap","emphasis","focus","SxProps","Theme","baseSkeletonStyles","styles","skeleton","graph","Record","Box","Skeleton","styles","HistogramSkeleton","$","_c","t0","Symbol","for","display","alignItems","justifyContent","gap","_temp","height","_temp2","width","Array","fill","map","_temp3","t1","skeleton","graph","container","mt","_temp4","_temp5","__0","i_0","i","spacing","spacing_1","_","heights","flex","spacing_0"],"sources":["../../src/widgets/histogram/config.ts","../../src/widgets/histogram/style.ts","../../src/widgets/histogram/skeleton.tsx"],"sourcesContent":["import {\n getCommonOptions,\n mergeEchartWidgetConfig,\n type EchartOptionsProps,\n} from '../echart'\nimport type { HistogramConfig, HistogramWidgetConfig } from './types'\nimport {\n buildLegendConfig,\n buildGridConfig,\n createTooltipPositioner,\n createTooltipFormatter,\n niceNum,\n buildHistogramSeriesLabelConfig,\n} from '../utils/chart-config'\nimport { downloadToCSV, downloadToPNG, type DownloadItem } from '../actions'\nimport type { ConfigProps } from '../loader/types'\n\nexport interface HistogramDownloadConfigProps extends ConfigProps {\n ticks: number[]\n labelFormatter?: (value: string | number) => string | number\n}\n\nexport function histogramDataToCSV(\n data: number[][],\n ticks: number[],\n labelFormatter?: (value: string | number) => string | number,\n): string[][] {\n if (!data?.length || data[0]?.length === 0) return []\n\n const dataLength = data[0]?.length ?? 0\n const labels = createAxisLabels(dataLength, ticks, labelFormatter)\n const seriesCount = data.length\n const isMulti = seriesCount > 1\n\n const headers = isMulti\n ? [\n 'Bin',\n ...Array.from({ length: seriesCount }, (_, i) => `Series ${i + 1}`),\n ]\n : ['Bin', 'Value']\n\n return [\n headers,\n ...labels.map((label, i) => [\n label,\n ...data.map((series) => String(series[i] ?? 0)),\n ]),\n ]\n}\n\nexport function histogramDownloadConfig({\n refUI,\n ticks,\n labelFormatter,\n}: HistogramDownloadConfigProps): DownloadItem<number[][]>[] {\n return [\n {\n ...downloadToPNG,\n modifier: () => downloadToPNG.modifier(refUI),\n },\n {\n ...downloadToCSV,\n modifier: async (data) =>\n downloadToCSV.modifier(histogramDataToCSV(data, ticks, labelFormatter)),\n },\n ]\n}\n\n/**\n * Creates formatted axis labels from tick boundaries.\n *\n * @param dataLength - Number of data points (determines number of labels).\n * @param ticks - Bin boundaries. If `ticks.length === dataLength + 1`, all\n * bins are ranges. If `ticks.length === dataLength`, the last bin is\n * open-ended (`+`). A last tick of `Infinity` also produces `+`.\n * @param labelFormatter - Optional formatter applied to each individual tick\n * value when building the bin range label.\n */\nfunction createAxisLabels(\n dataLength: number,\n ticks: number[],\n labelFormatter?: (value: string | number) => string | number,\n): string[] {\n const fmt = (v: number) =>\n labelFormatter ? String(labelFormatter(v)) : String(v)\n\n return Array.from({ length: dataLength }, (_, i) => {\n const low = ticks[i] ?? i\n const high = ticks[i + 1]\n return high !== undefined && isFinite(high)\n ? `${fmt(low)}-${fmt(high)}`\n : `${fmt(low)}+`\n })\n}\n\n/**\n * Generates ECharts configuration for distribution histogram widgets with\n * adjacent bars (minimal gap) and axis formatting styled with the CARTO theme.\n *\n * Accepts raw `number[][]` data and `ticks` boundaries. The ticks and\n * `labelFormatter` are used to create the x-axis category labels; the raw\n * numeric data is embedded directly in each series.\n *\n * @param props - Histogram configuration including raw data, ticks, and theme.\n * @returns Widget config with ECharts option object.\n */\nexport function histogramConfig(props: HistogramConfig): HistogramWidgetConfig {\n return {\n type: 'histogram',\n option: mergeEchartWidgetConfig(getCommonOptions(props), getOption(props)),\n formatter: props.formatter,\n labelFormatter: props.labelFormatter,\n }\n}\n\nfunction getOption({\n data = [],\n ticks,\n theme,\n formatter,\n labelFormatter,\n}: HistogramConfig): EchartOptionsProps {\n const hasLegend = (data?.length ?? 0) > 1\n const dataLength = data[0]?.length ?? 0\n const axisLabels = createAxisLabels(dataLength, ticks, labelFormatter)\n\n let niceMin = 0\n let niceMax = 1\n\n return {\n legend: buildLegendConfig({ hasLegend, labelFormatter }),\n grid: buildGridConfig(hasLegend, theme),\n xAxis: {\n type: 'category',\n data: axisLabels,\n axisLine: {\n show: false,\n },\n axisLabel: {\n fontSize: theme.typography.overlineDelicate.fontSize,\n fontFamily: theme.typography.overlineDelicate.fontFamily,\n showMinLabel: undefined,\n showMaxLabel: undefined,\n hideOverlap: true,\n margin: 0,\n padding: [\n parseInt(theme.spacing(0.5)),\n parseInt(theme.spacing(0.5)),\n 0,\n parseInt(theme.spacing(0.5)),\n ],\n color: theme.palette.black[60],\n },\n axisTick: {\n show: false,\n },\n splitLine: {\n show: true,\n lineStyle: {\n color: theme.palette.black[4],\n },\n },\n },\n yAxis: {\n type: 'value' as const,\n min: (extent: { min: number }) => {\n niceMin = extent.min < 0 ? niceNum(extent.min) : 0\n return niceMin\n },\n max: (extent: { min: number; max: number }) => {\n niceMax = extent.max <= 0 ? 1 : niceNum(extent.max)\n return niceMax\n },\n splitNumber: 1,\n axisLabel: {\n fontSize: theme.typography.overlineDelicate.fontSize,\n fontFamily: theme.typography.overlineDelicate.fontFamily,\n margin: parseInt(theme.spacing(1)),\n show: true,\n showMaxLabel: true,\n showMinLabel: true,\n verticalAlign: 'bottom' as const,\n formatter: (value: number) => {\n if (value !== niceMax && value !== niceMin) return ''\n if (value === 0) return ''\n return formatter ? formatter(value) : String(value)\n },\n },\n axisLine: {\n show: false,\n },\n axisTick: {\n show: false,\n },\n splitLine: {\n show: true,\n lineStyle: {\n color: theme.palette.black[4],\n },\n },\n },\n tooltip: {\n position: createTooltipPositioner(theme),\n formatter: createTooltipFormatter((item) => {\n const _value = item.value as number\n\n const formattedValue =\n typeof _value === 'number' && formatter\n ? formatter(_value)\n : String(_value ?? '')\n\n const marker = typeof item.marker === 'string' ? item.marker : ''\n const seriesName = item.seriesName ? `${item.seriesName}: ` : ''\n const name = item.name\n\n return { name, seriesName, marker, value: formattedValue }\n }),\n },\n series: data.map((seriesData: number[]) => ({\n type: 'bar',\n data: seriesData,\n barGap: '1%',\n barCategoryGap: '1%',\n emphasis: {\n focus: 'series',\n },\n ...buildHistogramSeriesLabelConfig(formatter),\n })),\n } as EchartOptionsProps\n}\n","import type { SxProps, Theme } from '@mui/material'\nimport { baseSkeletonStyles } from '../utils/skeleton'\n\nexport const styles = {\n skeleton: {\n graph: baseSkeletonStyles.graph,\n },\n} satisfies Record<string, SxProps<Theme>>\n","import { Box, Skeleton } from '@mui/material'\nimport { styles } from './style'\n\nexport function HistogramSkeleton() {\n return (\n <Box sx={styles.skeleton.graph.container}>\n <Box\n sx={{\n display: 'flex',\n alignItems: 'flex-end',\n justifyContent: 'space-between',\n gap: ({ spacing }) => spacing(0.5),\n height: ({ spacing }) => spacing(30),\n width: '100%',\n }}\n >\n {Array(8)\n .fill(0)\n .map((_, i) => {\n // Create varying heights for histogram bars\n const heights = [60, 80, 95, 85, 70, 55, 40, 30]\n const height = `${heights[i]}%`\n return (\n <Skeleton\n key={`skeleton-bar-${i}`}\n variant='rectangular'\n sx={{\n flex: 1,\n height,\n }}\n />\n )\n })}\n </Box>\n <Box\n sx={{\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n width: '100%',\n mt: ({ spacing }) => spacing(1),\n }}\n >\n {Array(4)\n .fill(0)\n .map((_, i) => (\n <Skeleton key={`skeleton-label-${i}`} width={32} height={8} />\n ))}\n </Box>\n </Box>\n )\n}\n"],"mappings":"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"}
@@ -1,64 +1,66 @@
1
- import { c as W } from "react/compiler-runtime";
2
- import { useRef as x, useEffect as n } from "react";
3
- import { u as w, w as y } from "../widget-store-Bw5zRUGg.js";
4
- import { d as A } from "../cjs-D4KH3azB.js";
5
- function v(e) {
6
- const i = W(25);
7
- let t;
8
- i[0] !== e.id ? (t = (L) => L.widgets[e.id]?.registeredTools, i[0] = e.id, i[1] = t) : t = i[1];
9
- const F = w(t), C = x(e.data), h = x(e.config), P = x(!1);
10
- let d;
11
- i[2] !== e.config || i[3] !== e.data ? (d = () => {
12
- C.current = e.data, h.current = e.config;
13
- }, i[2] = e.config, i[3] = e.data, i[4] = d) : d = i[4], n(d);
14
- let f, c;
15
- i[5] !== e.error || i[6] !== e.id || i[7] !== e.isFetching || i[8] !== e.isLoading || i[9] !== e.type ? (f = () => {
16
- y.setWidget(e.id, {
17
- type: e.type,
18
- isLoading: e.isLoading ?? !1,
19
- isFetching: e.isFetching ?? !1,
20
- error: e.error
21
- });
22
- }, c = [e.id, e.type, e.isLoading, e.isFetching, e.error], i[5] = e.error, i[6] = e.id, i[7] = e.isFetching, i[8] = e.isLoading, i[9] = e.type, i[10] = f, i[11] = c) : (f = i[10], c = i[11]), n(f, c);
23
- let a, g;
24
- i[12] !== e.config || i[13] !== e.id ? (a = () => {
25
- e.config && y.executeConfigPipeline(e.id, e.config);
26
- }, g = [e.id, e.config], i[12] = e.config, i[13] = e.id, i[14] = a, i[15] = g) : (a = i[14], g = i[15]), n(a, g);
27
- let l, u;
28
- i[16] !== e.data || i[17] !== e.id ? (l = () => {
29
- y.executeToolPipeline(e.id, e.data);
30
- }, u = [e.id, e.data], i[16] = e.data, i[17] = e.id, i[18] = l, i[19] = u) : (l = i[18], u = i[19]), n(l, u);
31
- let r;
32
- i[20] !== e.id ? (r = () => {
33
- if (!P.current) {
34
- P.current = !0;
35
- return;
36
- }
37
- const L = requestAnimationFrame(() => {
38
- const {
39
- executeToolPipeline: R,
40
- executeConfigPipeline: T
41
- } = y;
42
- R(e.id, C.current), h.current && T(e.id, h.current);
43
- });
44
- return () => cancelAnimationFrame(L);
45
- }, i[20] = e.id, i[21] = r) : r = i[21];
46
- let m;
47
- return i[22] !== e.id || i[23] !== F ? (m = [F, e.id], i[22] = e.id, i[23] = F, i[24] = m) : m = i[24], n(r, m), e.children;
1
+ import { r as e } from "../rolldown-runtime-B0aSnxlc.js";
2
+ import { t } from "../cjs-CBrZjPCj.js";
3
+ import { n, t as r } from "../widget-store-BFPKYm4R.js";
4
+ import { c as i } from "react/compiler-runtime";
5
+ import { useEffect as a, useRef as o } from "react";
6
+ //#region src/widgets/loader/loader.tsx
7
+ function s(e) {
8
+ let t = i(25), s;
9
+ t[0] === e.id ? s = t[1] : (s = (t) => t.widgets[e.id]?.registeredTools, t[0] = e.id, t[1] = s);
10
+ let c = r(s), l = o(e.data), u = o(e.config), d = o(!1), f;
11
+ t[2] !== e.config || t[3] !== e.data ? (f = () => {
12
+ l.current = e.data, u.current = e.config;
13
+ }, t[2] = e.config, t[3] = e.data, t[4] = f) : f = t[4], a(f);
14
+ let p, m;
15
+ t[5] !== e.error || t[6] !== e.id || t[7] !== e.isFetching || t[8] !== e.isLoading || t[9] !== e.type ? (p = () => {
16
+ n.setWidget(e.id, {
17
+ type: e.type,
18
+ isLoading: e.isLoading ?? !1,
19
+ isFetching: e.isFetching ?? !1,
20
+ error: e.error
21
+ });
22
+ }, m = [
23
+ e.id,
24
+ e.type,
25
+ e.isLoading,
26
+ e.isFetching,
27
+ e.error
28
+ ], t[5] = e.error, t[6] = e.id, t[7] = e.isFetching, t[8] = e.isLoading, t[9] = e.type, t[10] = p, t[11] = m) : (p = t[10], m = t[11]), a(p, m);
29
+ let h, g;
30
+ t[12] !== e.config || t[13] !== e.id ? (h = () => {
31
+ e.config && n.executeConfigPipeline(e.id, e.config);
32
+ }, g = [e.id, e.config], t[12] = e.config, t[13] = e.id, t[14] = h, t[15] = g) : (h = t[14], g = t[15]), a(h, g);
33
+ let _, v;
34
+ t[16] !== e.data || t[17] !== e.id ? (_ = () => {
35
+ n.executeToolPipeline(e.id, e.data);
36
+ }, v = [e.id, e.data], t[16] = e.data, t[17] = e.id, t[18] = _, t[19] = v) : (_ = t[18], v = t[19]), a(_, v);
37
+ let y;
38
+ t[20] === e.id ? y = t[21] : (y = () => {
39
+ if (!d.current) {
40
+ d.current = !0;
41
+ return;
42
+ }
43
+ let t = requestAnimationFrame(() => {
44
+ let { executeToolPipeline: t, executeConfigPipeline: r } = n;
45
+ t(e.id, l.current), u.current && r(e.id, u.current);
46
+ });
47
+ return () => cancelAnimationFrame(t);
48
+ }, t[20] = e.id, t[21] = y);
49
+ let b;
50
+ return t[22] !== e.id || t[23] !== c ? (b = [c, e.id], t[22] = e.id, t[23] = c, t[24] = b) : b = t[24], a(y, b), e.children;
48
51
  }
49
- function E(e, i, t) {
50
- return typeof e == "function" ? e(i, t) : e;
52
+ //#endregion
53
+ //#region src/widgets/loader/utils.ts
54
+ var c = /* @__PURE__ */ e(t(), 1);
55
+ function l(e, t, n) {
56
+ return typeof e == "function" ? e(t, n) : e;
51
57
  }
52
- function I(...e) {
53
- return A(e[0] ?? {}, e[1] ?? {}, {
54
- arrayMerge(i, t) {
55
- return t;
56
- }
57
- });
58
+ function u(...e) {
59
+ return (0, c.default)(e[0] ?? {}, e[1] ?? {}, { arrayMerge(e, t) {
60
+ return t;
61
+ } });
58
62
  }
59
- export {
60
- v as WidgetLoader,
61
- I as mergeWidgetConfig,
62
- E as resolveConfig
63
- };
64
- //# sourceMappingURL=loader.js.map
63
+ //#endregion
64
+ export { s as WidgetLoader, u as mergeWidgetConfig, l as resolveConfig };
65
+
66
+ //# sourceMappingURL=loader.js.map