@toclocoinc/lattice-grid 1.89.0 → 1.89.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 (310) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/README.md +1 -1
  3. package/angular/package.json +1 -1
  4. package/docs/API.html +5 -5
  5. package/docs/THEMING.md +27 -0
  6. package/docs/api/adapters.html +1 -1
  7. package/docs/api/ai.html +1 -1
  8. package/docs/api/alarms.html +1 -1
  9. package/docs/api/calendar.html +1 -1
  10. package/docs/api/charts.html +1 -1
  11. package/docs/api/dashboard.html +1 -1
  12. package/docs/api/data-router.html +1 -1
  13. package/docs/api/deckgl.html +1 -1
  14. package/docs/api/designer.html +2 -2
  15. package/docs/api/gantt.html +1 -1
  16. package/docs/api/geometry.html +1 -1
  17. package/docs/api/grid.html +2 -2
  18. package/docs/api/index.html +1 -1
  19. package/docs/api/kanban.html +1 -1
  20. package/docs/api/kpi.html +1 -1
  21. package/docs/api/layout.html +1 -1
  22. package/docs/api/leaflet.html +1 -1
  23. package/docs/api/list.html +1 -1
  24. package/docs/api/mapview.html +1 -1
  25. package/docs/api/mock-socket.html +1 -1
  26. package/docs/api/presets.html +1 -1
  27. package/docs/api/tabs.html +1 -1
  28. package/docs/api/types.html +1 -1
  29. package/docs/api-detail.html +4 -4
  30. package/docs/warnings.json +1 -1
  31. package/lattice-grid.d.ts +1 -1
  32. package/lattice-grid.esm.min.js +3 -3
  33. package/lattice-grid.min.cjs +3 -3
  34. package/lattice-grid.min.css +1 -1
  35. package/lattice-grid.min.js +3 -3
  36. package/modules/ai.d.ts +1 -1
  37. package/modules/ai.esm.min.js +2 -2
  38. package/modules/ai.min.cjs +2 -2
  39. package/modules/ai.min.js +2 -2
  40. package/modules/alarms.d.ts +1 -1
  41. package/modules/alarms.esm.min.js +2 -2
  42. package/modules/alarms.min.cjs +2 -2
  43. package/modules/alarms.min.js +2 -2
  44. package/modules/angular.d.ts +1 -1
  45. package/modules/angular.esm.min.js +2 -2
  46. package/modules/angular.min.cjs +2 -2
  47. package/modules/angular.min.js +2 -2
  48. package/modules/calendar.d.ts +1 -1
  49. package/modules/calendar.esm.min.js +2 -2
  50. package/modules/calendar.min.cjs +2 -2
  51. package/modules/calendar.min.js +2 -2
  52. package/modules/chart-alluvial.d.ts +1 -1
  53. package/modules/chart-alluvial.esm.min.js +1 -1
  54. package/modules/chart-alluvial.min.cjs +1 -1
  55. package/modules/chart-alluvial.min.js +1 -1
  56. package/modules/chart-arc.d.ts +1 -1
  57. package/modules/chart-arc.esm.min.js +1 -1
  58. package/modules/chart-arc.min.cjs +1 -1
  59. package/modules/chart-arc.min.js +1 -1
  60. package/modules/chart-barrace.d.ts +1 -1
  61. package/modules/chart-barrace.esm.min.js +1 -1
  62. package/modules/chart-barrace.min.cjs +1 -1
  63. package/modules/chart-barrace.min.js +1 -1
  64. package/modules/chart-bubblemap.d.ts +1 -1
  65. package/modules/chart-bubblemap.esm.min.js +1 -1
  66. package/modules/chart-bubblemap.min.cjs +1 -1
  67. package/modules/chart-bubblemap.min.js +1 -1
  68. package/modules/chart-bump.d.ts +1 -1
  69. package/modules/chart-bump.esm.min.js +1 -1
  70. package/modules/chart-bump.min.cjs +1 -1
  71. package/modules/chart-bump.min.js +1 -1
  72. package/modules/chart-calendar.d.ts +1 -1
  73. package/modules/chart-calendar.esm.min.js +1 -1
  74. package/modules/chart-calendar.min.cjs +1 -1
  75. package/modules/chart-calendar.min.js +1 -1
  76. package/modules/chart-choropleth.d.ts +1 -1
  77. package/modules/chart-choropleth.esm.min.js +1 -1
  78. package/modules/chart-choropleth.min.cjs +1 -1
  79. package/modules/chart-choropleth.min.js +1 -1
  80. package/modules/chart-decomposition.d.ts +1 -1
  81. package/modules/chart-decomposition.esm.min.js +1 -1
  82. package/modules/chart-decomposition.min.cjs +1 -1
  83. package/modules/chart-decomposition.min.js +1 -1
  84. package/modules/chart-diverging.d.ts +1 -1
  85. package/modules/chart-diverging.esm.min.js +1 -1
  86. package/modules/chart-diverging.min.cjs +1 -1
  87. package/modules/chart-diverging.min.js +1 -1
  88. package/modules/chart-dumbbell.d.ts +1 -1
  89. package/modules/chart-dumbbell.esm.min.js +1 -1
  90. package/modules/chart-dumbbell.min.cjs +1 -1
  91. package/modules/chart-dumbbell.min.js +1 -1
  92. package/modules/chart-fan.d.ts +1 -1
  93. package/modules/chart-fan.esm.min.js +1 -1
  94. package/modules/chart-fan.min.cjs +1 -1
  95. package/modules/chart-fan.min.js +1 -1
  96. package/modules/chart-forcetree.d.ts +1 -1
  97. package/modules/chart-forcetree.esm.min.js +1 -1
  98. package/modules/chart-forcetree.min.cjs +1 -1
  99. package/modules/chart-forcetree.min.js +1 -1
  100. package/modules/chart-hexbin.d.ts +1 -1
  101. package/modules/chart-hexbin.esm.min.js +1 -1
  102. package/modules/chart-hexbin.min.cjs +1 -1
  103. package/modules/chart-hexbin.min.js +1 -1
  104. package/modules/chart-hexmap.d.ts +1 -1
  105. package/modules/chart-hexmap.esm.min.js +1 -1
  106. package/modules/chart-hexmap.min.cjs +1 -1
  107. package/modules/chart-hexmap.min.js +1 -1
  108. package/modules/chart-icicle.d.ts +1 -1
  109. package/modules/chart-icicle.esm.min.js +1 -1
  110. package/modules/chart-icicle.min.cjs +1 -1
  111. package/modules/chart-icicle.min.js +1 -1
  112. package/modules/chart-markermap.d.ts +1 -1
  113. package/modules/chart-markermap.esm.min.js +1 -1
  114. package/modules/chart-markermap.min.cjs +1 -1
  115. package/modules/chart-markermap.min.js +1 -1
  116. package/modules/chart-motion.d.ts +1 -1
  117. package/modules/chart-motion.esm.min.js +1 -1
  118. package/modules/chart-motion.min.cjs +1 -1
  119. package/modules/chart-motion.min.js +1 -1
  120. package/modules/chart-pack.d.ts +1 -1
  121. package/modules/chart-pack.esm.min.js +1 -1
  122. package/modules/chart-pack.min.cjs +1 -1
  123. package/modules/chart-pack.min.js +1 -1
  124. package/modules/chart-parallel.d.ts +1 -1
  125. package/modules/chart-parallel.esm.min.js +1 -1
  126. package/modules/chart-parallel.min.cjs +1 -1
  127. package/modules/chart-parallel.min.js +1 -1
  128. package/modules/chart-pictorial.d.ts +1 -1
  129. package/modules/chart-pictorial.esm.min.js +1 -1
  130. package/modules/chart-pictorial.min.cjs +1 -1
  131. package/modules/chart-pictorial.min.js +1 -1
  132. package/modules/chart-polararea.d.ts +1 -1
  133. package/modules/chart-polararea.esm.min.js +1 -1
  134. package/modules/chart-polararea.min.cjs +1 -1
  135. package/modules/chart-polararea.min.js +1 -1
  136. package/modules/chart-polarscatter.d.ts +1 -1
  137. package/modules/chart-polarscatter.esm.min.js +1 -1
  138. package/modules/chart-polarscatter.min.cjs +1 -1
  139. package/modules/chart-polarscatter.min.js +1 -1
  140. package/modules/chart-pyramid.d.ts +1 -1
  141. package/modules/chart-pyramid.esm.min.js +1 -1
  142. package/modules/chart-pyramid.min.cjs +1 -1
  143. package/modules/chart-pyramid.min.js +1 -1
  144. package/modules/chart-radialbar.d.ts +1 -1
  145. package/modules/chart-radialbar.esm.min.js +1 -1
  146. package/modules/chart-radialbar.min.cjs +1 -1
  147. package/modules/chart-radialbar.min.js +1 -1
  148. package/modules/chart-ridgeline.d.ts +1 -1
  149. package/modules/chart-ridgeline.esm.min.js +1 -1
  150. package/modules/chart-ridgeline.min.cjs +1 -1
  151. package/modules/chart-ridgeline.min.js +1 -1
  152. package/modules/chart-roc.d.ts +1 -1
  153. package/modules/chart-roc.esm.min.js +1 -1
  154. package/modules/chart-roc.min.cjs +1 -1
  155. package/modules/chart-roc.min.js +1 -1
  156. package/modules/chart-serpentine.d.ts +1 -1
  157. package/modules/chart-serpentine.esm.min.js +1 -1
  158. package/modules/chart-serpentine.min.cjs +1 -1
  159. package/modules/chart-serpentine.min.js +1 -1
  160. package/modules/chart-slope.d.ts +1 -1
  161. package/modules/chart-slope.esm.min.js +1 -1
  162. package/modules/chart-slope.min.cjs +1 -1
  163. package/modules/chart-slope.min.js +1 -1
  164. package/modules/chart-spiral.d.ts +1 -1
  165. package/modules/chart-spiral.esm.min.js +1 -1
  166. package/modules/chart-spiral.min.cjs +1 -1
  167. package/modules/chart-spiral.min.js +1 -1
  168. package/modules/chart-splom.d.ts +1 -1
  169. package/modules/chart-splom.esm.min.js +1 -1
  170. package/modules/chart-splom.min.cjs +1 -1
  171. package/modules/chart-splom.min.js +1 -1
  172. package/modules/chart-tree.d.ts +1 -1
  173. package/modules/chart-tree.esm.min.js +1 -1
  174. package/modules/chart-tree.min.cjs +1 -1
  175. package/modules/chart-tree.min.js +1 -1
  176. package/modules/chart-venn.d.ts +1 -1
  177. package/modules/chart-venn.esm.min.js +1 -1
  178. package/modules/chart-venn.min.cjs +1 -1
  179. package/modules/chart-venn.min.js +1 -1
  180. package/modules/chart-voronoi.d.ts +1 -1
  181. package/modules/chart-voronoi.esm.min.js +1 -1
  182. package/modules/chart-voronoi.min.cjs +1 -1
  183. package/modules/chart-voronoi.min.js +1 -1
  184. package/modules/chart-waffle.d.ts +1 -1
  185. package/modules/chart-waffle.esm.min.js +1 -1
  186. package/modules/chart-waffle.min.cjs +1 -1
  187. package/modules/chart-waffle.min.js +1 -1
  188. package/modules/chart-wordcloud.d.ts +1 -1
  189. package/modules/chart-wordcloud.esm.min.js +1 -1
  190. package/modules/chart-wordcloud.min.cjs +1 -1
  191. package/modules/chart-wordcloud.min.js +1 -1
  192. package/modules/charts.d.ts +1 -1
  193. package/modules/charts.esm.min.js +2 -2
  194. package/modules/charts.min.cjs +2 -2
  195. package/modules/charts.min.js +2 -2
  196. package/modules/dashboard.d.ts +1 -1
  197. package/modules/dashboard.esm.min.js +2 -2
  198. package/modules/dashboard.min.cjs +2 -2
  199. package/modules/dashboard.min.js +2 -2
  200. package/modules/data-router.d.ts +1 -1
  201. package/modules/data-router.esm.min.js +2 -2
  202. package/modules/data-router.min.cjs +2 -2
  203. package/modules/data-router.min.js +2 -2
  204. package/modules/deckgl.d.ts +1 -1
  205. package/modules/deckgl.esm.min.js +2 -2
  206. package/modules/deckgl.min.cjs +2 -2
  207. package/modules/deckgl.min.js +2 -2
  208. package/modules/designer.d.ts +1 -1
  209. package/modules/designer.esm.min.js +187 -73
  210. package/modules/designer.esm.min.js.map +2 -2
  211. package/modules/designer.min.cjs +187 -73
  212. package/modules/designer.min.js +187 -73
  213. package/modules/designer.min.js.map +2 -2
  214. package/modules/devtools.d.ts +1 -1
  215. package/modules/devtools.esm.min.js +1 -1
  216. package/modules/devtools.min.cjs +1 -1
  217. package/modules/devtools.min.js +1 -1
  218. package/modules/dhtmlx-compat.d.ts +1 -1
  219. package/modules/dhtmlx-compat.esm.min.js +2 -2
  220. package/modules/dhtmlx-compat.min.cjs +2 -2
  221. package/modules/dhtmlx-compat.min.js +2 -2
  222. package/modules/gantt.d.ts +1 -1
  223. package/modules/gantt.esm.min.js +2 -2
  224. package/modules/gantt.min.cjs +2 -2
  225. package/modules/gantt.min.js +2 -2
  226. package/modules/geo-europe-nuts.d.ts +1 -1
  227. package/modules/geo-europe-nuts.esm.min.js +1 -1
  228. package/modules/geo-europe-nuts.min.cjs +1 -1
  229. package/modules/geo-europe-nuts.min.js +1 -1
  230. package/modules/geo-uk.d.ts +1 -1
  231. package/modules/geo-uk.esm.min.js +1 -1
  232. package/modules/geo-uk.min.cjs +1 -1
  233. package/modules/geo-uk.min.js +1 -1
  234. package/modules/geo-us-states.d.ts +1 -1
  235. package/modules/geo-us-states.esm.min.js +1 -1
  236. package/modules/geo-us-states.min.cjs +1 -1
  237. package/modules/geo-us-states.min.js +1 -1
  238. package/modules/geo-world-110m.d.ts +1 -1
  239. package/modules/geo-world-110m.esm.min.js +1 -1
  240. package/modules/geo-world-110m.min.cjs +1 -1
  241. package/modules/geo-world-110m.min.js +1 -1
  242. package/modules/geo-world-50m.d.ts +1 -1
  243. package/modules/geo-world-50m.esm.min.js +1 -1
  244. package/modules/geo-world-50m.min.cjs +1 -1
  245. package/modules/geo-world-50m.min.js +1 -1
  246. package/modules/geometry.d.ts +1 -1
  247. package/modules/geometry.esm.min.js +2 -2
  248. package/modules/geometry.min.cjs +2 -2
  249. package/modules/geometry.min.js +2 -2
  250. package/modules/htmx.d.ts +1 -1
  251. package/modules/htmx.esm.min.js +3 -3
  252. package/modules/htmx.min.cjs +3 -3
  253. package/modules/htmx.min.js +3 -3
  254. package/modules/kanban.d.ts +1 -1
  255. package/modules/kanban.esm.min.js +2 -2
  256. package/modules/kanban.min.cjs +2 -2
  257. package/modules/kanban.min.js +2 -2
  258. package/modules/kpi.d.ts +1 -1
  259. package/modules/kpi.esm.min.js +2 -2
  260. package/modules/kpi.min.cjs +2 -2
  261. package/modules/kpi.min.js +2 -2
  262. package/modules/layout.d.ts +1 -1
  263. package/modules/layout.esm.min.js +2 -2
  264. package/modules/layout.min.cjs +2 -2
  265. package/modules/layout.min.js +2 -2
  266. package/modules/leaflet.d.ts +1 -1
  267. package/modules/leaflet.esm.min.js +2 -2
  268. package/modules/leaflet.min.cjs +2 -2
  269. package/modules/leaflet.min.js +2 -2
  270. package/modules/list.d.ts +1 -1
  271. package/modules/list.esm.min.js +2 -2
  272. package/modules/list.min.cjs +2 -2
  273. package/modules/list.min.js +2 -2
  274. package/modules/mapview.d.ts +1 -1
  275. package/modules/mapview.esm.min.js +2 -2
  276. package/modules/mapview.min.cjs +2 -2
  277. package/modules/mapview.min.js +2 -2
  278. package/modules/mock-socket.d.ts +1 -1
  279. package/modules/mock-socket.esm.min.js +1 -1
  280. package/modules/mock-socket.min.cjs +1 -1
  281. package/modules/mock-socket.min.js +1 -1
  282. package/modules/presets/antd5.css +9 -0
  283. package/modules/presets/bootstrap5.css +9 -0
  284. package/modules/presets/fluent2.css +9 -0
  285. package/modules/presets/material3.css +9 -0
  286. package/modules/presets.d.ts +1 -1
  287. package/modules/presets.esm.min.js +2 -2
  288. package/modules/presets.min.cjs +2 -2
  289. package/modules/presets.min.js +2 -2
  290. package/modules/react.d.ts +1 -1
  291. package/modules/react.esm.min.js +2 -2
  292. package/modules/react.min.cjs +2 -2
  293. package/modules/react.min.js +2 -2
  294. package/modules/svelte.d.ts +1 -1
  295. package/modules/svelte.esm.min.js +2 -2
  296. package/modules/svelte.min.cjs +2 -2
  297. package/modules/svelte.min.js +2 -2
  298. package/modules/tabs.d.ts +1 -1
  299. package/modules/tabs.esm.min.js +2 -2
  300. package/modules/tabs.min.cjs +2 -2
  301. package/modules/tabs.min.js +2 -2
  302. package/modules/vue.d.ts +1 -1
  303. package/modules/vue.esm.min.js +2 -2
  304. package/modules/vue.min.cjs +2 -2
  305. package/modules/vue.min.js +2 -2
  306. package/modules/webcomponent.d.ts +1 -1
  307. package/modules/webcomponent.esm.min.js +3 -3
  308. package/modules/webcomponent.min.cjs +3 -3
  309. package/modules/webcomponent.min.js +3 -3
  310. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-ridgeline module
2
+ * Lattice Grid 1.89.1, chart-ridgeline module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-ridgeline module
2
+ * Lattice Grid 1.89.1, chart-ridgeline module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-roc module type declarations
2
+ * Lattice Grid 1.89.1, chart-roc module type declarations
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-roc module
2
+ * Lattice Grid 1.89.1, chart-roc module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-roc module
2
+ * Lattice Grid 1.89.1, chart-roc module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-roc module
2
+ * Lattice Grid 1.89.1, chart-roc module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-serpentine module type declarations
2
+ * Lattice Grid 1.89.1, chart-serpentine module type declarations
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-serpentine module
2
+ * Lattice Grid 1.89.1, chart-serpentine module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-serpentine module
2
+ * Lattice Grid 1.89.1, chart-serpentine module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-serpentine module
2
+ * Lattice Grid 1.89.1, chart-serpentine module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-slope module type declarations
2
+ * Lattice Grid 1.89.1, chart-slope module type declarations
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-slope module
2
+ * Lattice Grid 1.89.1, chart-slope module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-slope module
2
+ * Lattice Grid 1.89.1, chart-slope module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-slope module
2
+ * Lattice Grid 1.89.1, chart-slope module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-spiral module type declarations
2
+ * Lattice Grid 1.89.1, chart-spiral module type declarations
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-spiral module
2
+ * Lattice Grid 1.89.1, chart-spiral module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-spiral module
2
+ * Lattice Grid 1.89.1, chart-spiral module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-spiral module
2
+ * Lattice Grid 1.89.1, chart-spiral module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-splom module type declarations
2
+ * Lattice Grid 1.89.1, chart-splom module type declarations
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-splom module
2
+ * Lattice Grid 1.89.1, chart-splom module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-splom module
2
+ * Lattice Grid 1.89.1, chart-splom module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-splom module
2
+ * Lattice Grid 1.89.1, chart-splom module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-tree module type declarations
2
+ * Lattice Grid 1.89.1, chart-tree module type declarations
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-tree module
2
+ * Lattice Grid 1.89.1, chart-tree module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-tree module
2
+ * Lattice Grid 1.89.1, chart-tree module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-tree module
2
+ * Lattice Grid 1.89.1, chart-tree module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-venn module type declarations
2
+ * Lattice Grid 1.89.1, chart-venn module type declarations
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-venn module
2
+ * Lattice Grid 1.89.1, chart-venn module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-venn module
2
+ * Lattice Grid 1.89.1, chart-venn module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-venn module
2
+ * Lattice Grid 1.89.1, chart-venn module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-voronoi module type declarations
2
+ * Lattice Grid 1.89.1, chart-voronoi module type declarations
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-voronoi module
2
+ * Lattice Grid 1.89.1, chart-voronoi module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-voronoi module
2
+ * Lattice Grid 1.89.1, chart-voronoi module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-voronoi module
2
+ * Lattice Grid 1.89.1, chart-voronoi module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-waffle module type declarations
2
+ * Lattice Grid 1.89.1, chart-waffle module type declarations
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-waffle module
2
+ * Lattice Grid 1.89.1, chart-waffle module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-waffle module
2
+ * Lattice Grid 1.89.1, chart-waffle module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-waffle module
2
+ * Lattice Grid 1.89.1, chart-waffle module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-wordcloud module type declarations
2
+ * Lattice Grid 1.89.1, chart-wordcloud module type declarations
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-wordcloud module
2
+ * Lattice Grid 1.89.1, chart-wordcloud module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-wordcloud module
2
+ * Lattice Grid 1.89.1, chart-wordcloud module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, chart-wordcloud module
2
+ * Lattice Grid 1.89.1, chart-wordcloud module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, charts module type declarations
2
+ * Lattice Grid 1.89.1, charts module type declarations
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
@@ -1,9 +1,9 @@
1
1
  /*!
2
- * Lattice Grid 1.89.0, charts module
2
+ * Lattice Grid 1.89.1, charts module
3
3
  * Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
4
4
  * https://latticegrid.dev
5
5
  */
6
- var fo=Object.create(null),ho=Object.create(null);function at(r,le){fo[r]=le}function mo(r){var le=ho[r];if(le)return le;var Oe=Object.create(null);ho[r]=Oe;var ue=fo[r];if(!ue)throw new Error("[lattice] missing module: "+r);return ue(Oe,mo),Oe}at("packages/modules/charts/svg.js",function(r,le){"use strict";Object.defineProperty(r,"SVG_NS",{enumerable:!0,get:function(){return Oe}}),Object.defineProperty(r,"el",{enumerable:!0,get:function(){return j}}),Object.defineProperty(r,"svg",{enumerable:!0,get:function(){return Ae}}),Object.defineProperty(r,"attr",{enumerable:!0,get:function(){return Se}}),Object.defineProperty(r,"attrs",{enumerable:!0,get:function(){return fe}}),Object.defineProperty(r,"setText",{enumerable:!0,get:function(){return ae}}),Object.defineProperty(r,"clear",{enumerable:!0,get:function(){return ee}}),Object.defineProperty(r,"append",{enumerable:!0,get:function(){return ce}}),Object.defineProperty(r,"path",{enumerable:!0,get:function(){return F}}),Object.defineProperty(r,"ribbonPath",{enumerable:!0,get:function(){return x}}),Object.defineProperty(r,"round",{enumerable:!0,get:function(){return R}}),Object.defineProperty(r,"pathRings",{enumerable:!0,get:function(){return c}}),Object.defineProperty(r,"insideRings",{enumerable:!0,get:function(){return Z}});const Oe="http://www.w3.org/2000/svg";function ue(X){const M=X.indexOf(")");return M<0?X:X.slice(M+1).trim()||"#0072b2"}function j(X,M,g){const h=X.createElement(M);return g&&h.setAttribute("class",g),h}function Ae(X,M,g){const h=X.createElementNS(Oe,M);if(g)for(const f of Object.keys(g))h.setAttribute(f,String(g[f]));return h}function Se(X,M,g){if(!X)return;if(g==null){X.removeAttribute(M);return}let h=String(g);h.startsWith("url(#")&&(M==="stroke"||M==="fill"&&X.localName==="text")&&(h=ue(h)),X.setAttribute(M,h)}function fe(X,M){if(X)for(const g of Object.keys(M))Se(X,g,M[g])}function ae(X,M){X&&(X.textContent=M==null?"":String(M))}function ee(X){if(X)for(;X.firstChild;)X.removeChild(X.firstChild)}function ce(X,M){for(const g of M)g&&X.appendChild(g);return X}function F(X){return X.join(" ")}function x(X){if(!X||X.length<2)return"";const M=["M",X[0].x,X[0].upper];for(let g=1;g<X.length;g++)M.push("L",X[g].x,X[g].upper);for(let g=X.length-1;g>=0;g--)M.push("L",X[g].x,X[g].lower);return M.push("Z"),F(M)}function R(X){return Math.round(X*100)/100}function c(X){const M=[];let g=[];const h=String(X||"").match(/[A-Za-z]|-?\d*\.?\d+(?:e[-+]?\d+)?/gi)||[];let f="",v=[];const J=()=>{if(!f||!v.length){v=[];return}if(f==="M"||f==="L")for(let p=0;p+1<v.length;p+=2)g.push([v[p],v[p+1]]);else f!=="Z"&&v.length>=2&&g.push([v[v.length-2],v[v.length-1]]);v=[]};for(const p of h){if(/[A-Za-z]/.test(p)){if(J(),p==="Z"||p==="z"){g.length>2&&M.push(g),g=[],f="";continue}p==="M"&&g.length>2&&(M.push(g),g=[]),f=p;continue}v.push(Number(p))}return J(),g.length>2&&M.push(g),M}function Z(X,M,g){let h=!1;for(const f of X)for(let v=0,J=f.length-1;v<f.length;J=v++){const[p,z]=f[v],[d,S]=f[J];z>g!=S>g&&M<(d-p)*(g-z)/(S-z||1e-12)+p&&(h=!h)}return h}}),at("packages/modules/charts/typography.js",function(r,le){"use strict";Object.defineProperty(r,"BASE_SIZE",{enumerable:!0,get:function(){return Oe}}),Object.defineProperty(r,"BASE_FAMILY",{enumerable:!0,get:function(){return ue}}),Object.defineProperty(r,"CHAR_RATIO",{enumerable:!0,get:function(){return j}}),Object.defineProperty(r,"resolveType",{enumerable:!0,get:function(){return Ae}}),Object.defineProperty(r,"textWidth",{enumerable:!0,get:function(){return fe}}),Object.defineProperty(r,"widestLabel",{enumerable:!0,get:function(){return ae}}),Object.defineProperty(r,"truncateTo",{enumerable:!0,get:function(){return ee}}),Object.defineProperty(r,"applySize",{enumerable:!0,get:function(){return ce}});const Oe=12,ue="var(--lattice-font-family, system-ui, -apple-system, sans-serif)",j=.62;function Ae(F){const x=F&&F.font,R=typeof x=="number"?{size:x}:x||{},c=Se(R.size,Oe);return{family:R.family||ue,size:c,small:Se(R.small??R.tickSize,Math.max(9,c-1)),title:Se(R.title,Math.round(c*1.15)),axisTitle:Se(R.axisTitle,Math.max(10,c-1)),weight:R.weight||"inherit"}}function Se(F,x){const R=Number(F);return Number.isFinite(R)&&R>0?R:x}function fe(F,x){return String(F??"").length*x*j}function ae(F,x){let R=0;for(const c of F||[]){const Z=fe(c,x);Z>R&&(R=Z)}return R}function ee(F,x,R){const c=String(F??""),Z=Math.floor(x/(R*j));return Z<=0?"":c.length<=Z?c:Z===1?"…":`${c.slice(0,Z-1)}…`}function ce(F,x){!F||!Number.isFinite(x)||(F.style?F.style.fontSize=`${x}px`:F.setAttribute("style",`font-size:${x}px`))}}),at("packages/modules/charts/frame.js",function(r,le){"use strict";Object.defineProperty(r,"LABEL_GAP",{enumerable:!0,get:function(){return ae}}),Object.defineProperty(r,"LABEL_GUTTER_SHARE",{enumerable:!0,get:function(){return ee}}),Object.defineProperty(r,"resolveMargin",{enumerable:!0,get:function(){return ce}}),Object.defineProperty(r,"plotRect",{enumerable:!0,get:function(){return F}}),Object.defineProperty(r,"shouldRotate",{enumerable:!0,get:function(){return x}}),Object.defineProperty(r,"Pool",{enumerable:!0,get:function(){return R}});const ue=le("packages/modules/charts/svg.js").SVG_NS,j=le("packages/modules/charts/typography.js"),Ae=j.textWidth,Se=j.widestLabel,fe=8,ae=6,ee=.4;function ce(c,Z){const X=typeof c=="number"?c:Z,M=c&&typeof c=="object"?c:{},g=h=>Number.isFinite(h)&&h>=0?Number(h):X;return{base:X,top:g(M.top),right:g(M.right),bottom:g(M.bottom),left:g(M.left)}}function F(c){const Z=ce(c.margin,typeof c.padding=="number"?c.padding:8),X=Z.base,M=c.fontSize||12,g=c.yLabels||[],h=c.xLabels||[],f=c.ySide==="right"?"right":"left",v=f==="right"?"left":"right",J=c.titles||{},p=c.titleSize||M,z=W=>W?p+ae:0,d=Se(g,M),S=g.length?Math.min(c.width*ee,Z[f]+d+ae):Math.max(fe,Z[f]),_=Z[v]+(c.rightGutter||0),w=(f==="left"?S:_)+z(J.left),m=Se(h.map(W=>String(W).slice(0,14)),M),G=(h.length?c.rotated?Math.min(c.height*ee,ae+m):M+ae+Z.bottom:Math.max(fe,Z.bottom))+z(J.bottom),P=(f==="right"?S:_)+z(J.right),B=Z.top+(c.topGutter||0),ie=Math.max(0,c.width-w-P),se=Math.max(0,c.height-B-G);return{left:w,top:B,width:ie,height:se,right:w+ie,bottom:B+se,gutter:{left:w,bottom:G,right:P,top:B}}}function x(c,Z,X,M){if(!c.length||Z<=0)return!1;const g=Number.isFinite(M)&&M>0?Number(M):1;return Se(c,X)>Z*g-4}class R{#r;#n=0;static#i="data-pool-key";constructor(Z,X=0){this.#r=Z,this.#n=X>0?X:0}next(Z,X,M){if(M!=null)return this.#e(Z,X,String(M));const g=this.#r.childNodes[this.#n],h=g&&g.tagName,f=/(^|\s)\S*__axis-title(\s|$)/,v=h&&f.test(String(g.getAttribute("class")||"")),J=!!X&&f.test(String(X));if(h&&(!v||J)&&String(h).toLowerCase()===Z.toLowerCase())return X&&g.setAttribute("class",X),this.#n++,g;const p=this.#r.ownerDocument.createElementNS(ue,Z);return X&&p.setAttribute("class",X),g?this.#r.insertBefore(p,g):this.#r.appendChild(p),this.#n++,p}#e(Z,X,M){const g=Z.toLowerCase();for(let v=this.#n;v<this.#r.childNodes.length;v++){const J=this.#r.childNodes[v],p=J&&J.tagName;if(p&&String(p).toLowerCase()===g&&J.getAttribute(R.#i)===M)return v!==this.#n&&this.#r.insertBefore(J,this.#r.childNodes[this.#n]),X&&J.setAttribute("class",X),this.#n++,J}const h=this.#r.ownerDocument.createElementNS(ue,Z);h.setAttribute(R.#i,M),X&&h.setAttribute("class",X);const f=this.#r.childNodes[this.#n];return f?this.#r.insertBefore(h,f):this.#r.appendChild(h),this.#n++,h}finish(){for(;this.#r.childNodes.length>this.#n;)this.#r.removeChild(this.#r.lastChild);this.#n=0}}}),at("packages/core/src/internal/util.js",function(r,le){"use strict";Object.defineProperty(r,"VERSION",{enumerable:!0,get:function(){return j}}),Object.defineProperty(r,"reportedWarnings",{enumerable:!0,get:function(){return x}}),Object.defineProperty(r,"warnOnce",{enumerable:!0,get:function(){return c}}),Object.defineProperty(r,"infoOnce",{enumerable:!0,get:function(){return Z}}),Object.defineProperty(r,"resetWarnings",{enumerable:!0,get:function(){return X}}),Object.defineProperty(r,"fail",{enumerable:!0,get:function(){return M}}),Object.defineProperty(r,"invariant",{enumerable:!0,get:function(){return g}}),Object.defineProperty(r,"DEV",{enumerable:!0,get:function(){return h}}),Object.defineProperty(r,"isObject",{enumerable:!0,get:function(){return f}}),Object.defineProperty(r,"isFunction",{enumerable:!0,get:function(){return v}}),Object.defineProperty(r,"isNil",{enumerable:!0,get:function(){return J}}),Object.defineProperty(r,"isBlank",{enumerable:!0,get:function(){return p}}),Object.defineProperty(r,"isCtor",{enumerable:!0,get:function(){return z}}),Object.defineProperty(r,"pathGetter",{enumerable:!0,get:function(){return S}}),Object.defineProperty(r,"pathSetter",{enumerable:!0,get:function(){return w}}),Object.defineProperty(r,"getPath",{enumerable:!0,get:function(){return m}}),Object.defineProperty(r,"setPath",{enumerable:!0,get:function(){return G}}),Object.defineProperty(r,"humanise",{enumerable:!0,get:function(){return P}}),Object.defineProperty(r,"escapeHtml",{enumerable:!0,get:function(){return ie}}),Object.defineProperty(r,"titleCase",{enumerable:!0,get:function(){return se}}),Object.defineProperty(r,"expand",{enumerable:!0,get:function(){return W}}),Object.defineProperty(r,"toArray",{enumerable:!0,get:function(){return C}}),Object.defineProperty(r,"merge",{enumerable:!0,get:function(){return i}}),Object.defineProperty(r,"mergeRow",{enumerable:!0,get:function(){return t}}),Object.defineProperty(r,"Lru",{enumerable:!0,get:function(){return e}}),Object.defineProperty(r,"collator",{enumerable:!0,get:function(){return $}}),Object.defineProperty(r,"defaultCompare",{enumerable:!0,get:function(){return O}}),Object.defineProperty(r,"now",{enumerable:!0,get:function(){return L}}),Object.defineProperty(r,"nextFrame",{enumerable:!0,get:function(){return I}}),Object.defineProperty(r,"cancelFrame",{enumerable:!0,get:function(){return b}}),Object.defineProperty(r,"frameBatched",{enumerable:!0,get:function(){return H}}),Object.defineProperty(r,"settleDebounce",{enumerable:!0,get:function(){return oe}}),Object.defineProperty(r,"whenIdle",{enumerable:!0,get:function(){return re}}),Object.defineProperty(r,"uid",{enumerable:!0,get:function(){return te}});const Oe="1.89.0";async function ue(){return Oe}const j="1.89.0",Ae=new Set,Se=2e3;function fe(E){if(Ae.add(E),Ae.size>Se){const Y=Ae.values().next().value;Y!==void 0&&Ae.delete(Y)}}const ae=[],ee=500;function ce(E,Y,ne){ae.push({key:E,level:Y,message:ne.map(a=>typeof a=="string"?a:F(a)).join(" "),at:Date.now()}),ae.length>ee&&ae.shift()}function F(E){if(E instanceof Error)return E.message;try{return JSON.stringify(E)}catch{return String(E)}}function x(){return ae.map(E=>({...E}))}function R(E){if(E.length===0||typeof E[0]!="string")return E;const Y=E[0].replace(/^\[lattice\]\s*/,"");return Y===E[0]?E:[Y,...E.slice(1)]}function c(E,...Y){if(Ae.has(E))return;fe(E);const ne=R(Y);ce(E,"warn",ne),console.warn("[lattice]",...ne)}function Z(E,...Y){if(Ae.has(E))return;fe(E);const ne=R(Y);ce(E,"info",ne),console.info("[lattice]",...ne)}function X(){Ae.clear(),ae.length=0}function M(E,Y){const ne=new Error(`[lattice] ${E}`);throw Y!==void 0&&(ne.cause=Y),ne}function g(E,Y){E||M(Y)}const h=(()=>{try{return!(typeof process<"u"&&process.env&&process.env.NODE_ENV==="production")}catch{return!0}})();function f(E){return E!==null&&typeof E=="object"&&!Array.isArray(E)}function v(E){return typeof E=="function"}function J(E){return E==null}function p(E){return E==null||E===""}function z(E){return typeof E!="function"?!1:/^class[\s{]/.test(Function.prototype.toString.call(E))?!0:!!(E.prototype&&Object.getOwnPropertyNames(E.prototype).length>1)}const d=new Map;function S(E){let Y=d.get(E);if(Y)return Y;if(!E.includes("."))Y=ne=>ne?.[E];else{const ne=E.split("."),a=ne.length;Y=s=>{let n=s;for(let N=0;N<a;N++){if(n==null)return;n=n[ne[N]]}return n}}return d.set(E,Y),Y}const _=new Map;function w(E){let Y=_.get(E);if(Y)return Y;if(!E.includes("."))Y=(ne,a)=>{ne!=null&&(ne[E]=a)};else{const ne=E.split("."),a=ne.length-1;Y=(s,n)=>{let N=s;for(let o=0;o<a;o++){if(N==null)return;const k=ne[o];N[k]==null&&(N[k]={}),N=N[k]}N!=null&&(N[ne[a]]=n)}}return _.set(E,Y),Y}function m(E,Y){return S(Y)(E)}function G(E,Y,ne){w(Y)(E,ne)}function P(E){return E?(E.includes(".")?E.slice(E.lastIndexOf(".")+1):E).replace(/[_-]+/g," ").replace(/([a-z0-9])([A-Z])/g,"$1 $2").replace(/([A-Z]+)([A-Z][a-z])/g,"$1 $2").replace(/\s+/g," ").trim().replace(/^./,ne=>ne.toUpperCase()):""}const B={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"};function ie(E){const Y=E==null?"":String(E);return/[&<>"']/.test(Y)?Y.replace(/[&<>"']/g,ne=>B[ne]):Y}function se(E){return String(E).replace(/\w\S*/g,Y=>Y[0].toUpperCase()+Y.slice(1).toLowerCase())}function W(E,Y,ne){if(E!==void 0)return E===!0?{enabled:!0,...ne}:E===!1?{enabled:!1}:f(E)?E:{[Y]:E,enabled:!0}}function C(E){return E==null?[]:Array.isArray(E)?E:[E]}const T=Object.freeze(new Set(["__proto__","constructor","prototype"]));function i(E,Y){if(!f(E))return f(Y)?{...Y}:Y;if(!f(Y))return Y===void 0?E:Y;const ne={...E};for(const a of Object.keys(Y)){if(T.has(a))continue;const s=Y[a];s!==void 0&&(ne[a]=f(s)&&f(ne[a])?i(ne[a],s):s)}return ne}function t(E,Y){if(!f(E)||!f(Y)||E===Y)return Y;const ne=Object.create(Object.getPrototypeOf(E));return Object.assign(ne,E,Y),ne}class e{#r;#n=new Map;#i;constructor(Y=256,ne=null){this.#r=Y,this.#i=ne}get size(){return this.#n.size}get max(){return this.#r}set max(Y){this.#r=Y,this.#e()}has(Y){return this.#n.has(Y)}get(Y){const ne=this.#n;if(!ne.has(Y))return;const a=ne.get(Y);return ne.delete(Y),ne.set(Y,a),a}peek(Y){return this.#n.get(Y)}set(Y,ne){const a=this.#n;return a.has(Y)&&a.delete(Y),a.set(Y,ne),this.#e(),ne}delete(Y){const ne=this.#n.get(Y);return this.#n.delete(Y)&&this.#i&&this.#i(ne,Y),ne}clear(){if(this.#i)for(const[Y,ne]of this.#n)this.#i(ne,Y);this.#n.clear()}keys(){return this.#n.keys()}values(){return this.#n.values()}#e(){const Y=this.#n;for(;Y.size>this.#r;){const ne=Y.keys().next().value,a=Y.get(ne);Y.delete(ne),this.#i&&this.#i(a,ne)}}}const u=new Map;function $(E,Y){const ne=`${E||""}|${Y?JSON.stringify(Y):""}`;let a=u.get(ne);return a||(a=new Intl.Collator(E||void 0,{numeric:!0,sensitivity:"variant",...Y}),u.set(ne,a)),a}function O(E,Y){if(E===Y)return 0;if(E==null)return 1;if(Y==null)return-1;if(typeof E=="number"&&typeof Y=="number")return Number.isNaN(E)?Number.isNaN(Y)?0:1:Number.isNaN(Y)||E<Y?-1:E>Y?1:0;const ne=String(E),a=String(Y);return ne<a?-1:ne>a?1:0}function L(){return typeof performance<"u"&&performance.now?performance.now():Date.now()}const V=typeof requestAnimationFrame=="function";function I(E){return V?requestAnimationFrame(E):setTimeout(()=>E(L()),16)}function b(E){E!=null&&(V?cancelAnimationFrame(E):clearTimeout(E))}function H(E){let Y=null,ne=null;const a=()=>{Y=null;const n=ne;ne=null,E(...n||[])},s=(...n)=>{ne=n,Y===null&&(Y=I(a))};return s.cancel=()=>{b(Y),Y=null,ne=null},s.flush=()=>{Y!==null&&(b(Y),a())},s}function oe(E,Y){let ne=null,a=null;const s=()=>{if(ne=null,a===null)return;const o=a;a=null,E(...o),n()},n=()=>{ne=setTimeout(s,Y),typeof ne?.unref=="function"&&ne.unref()},N=(...o)=>{ne===null?(E(...o),n()):(a=o,clearTimeout(ne),n())};return N.flush=()=>{if(ne!==null&&clearTimeout(ne),ne=null,a===null)return;const o=a;a=null,E(...o)},N.cancel=()=>{ne!==null&&clearTimeout(ne),ne=null,a=null},N.pending=()=>ne!==null||a!==null,N}function re(E,Y=50){return typeof requestIdleCallback=="function"?requestIdleCallback(E,{timeout:Y}):setTimeout(()=>E({timeRemaining:()=>0,didTimeout:!0}),1)}let pe=0;function te(E="l"){return`${E}${(++pe).toString(36)}`}}),at("packages/modules/charts/fills.js",function(r,le){"use strict";Object.defineProperty(r,"PATTERNS",{enumerable:!0,get:function(){return j}}),Object.defineProperty(r,"GRADIENTS",{enumerable:!0,get:function(){return Ae}}),Object.defineProperty(r,"isFill",{enumerable:!0,get:function(){return ce}}),Object.defineProperty(r,"isPaintRef",{enumerable:!0,get:function(){return F}}),Object.defineProperty(r,"paintFallback",{enumerable:!0,get:function(){return x}}),Object.defineProperty(r,"normaliseFill",{enumerable:!0,get:function(){return c}}),Object.defineProperty(r,"swatchCss",{enumerable:!0,get:function(){return X}}),Object.defineProperty(r,"createFillRegistry",{enumerable:!0,get:function(){return M}}),Object.defineProperty(r,"rowPaint",{enumerable:!0,get:function(){return g}}),Object.defineProperty(r,"patternSeries",{enumerable:!0,get:function(){return h}}),Object.defineProperty(r,"paintSolid",{enumerable:!0,get:function(){return f}}),Object.defineProperty(r,"rowFillSource",{enumerable:!0,get:function(){return v}}),Object.defineProperty(r,"nodePaint",{enumerable:!0,get:function(){return J}});const ue=le("packages/core/src/internal/util.js").warnOnce,j=Object.freeze(["hatch","crosshatch","dots","grid"]),Ae=Object.freeze(["linear","radial"]),Se=8,fe="#0072b2";let ae=0;const ee=new Map;function ce(p){return!!p&&typeof p=="object"&&!Array.isArray(p)&&(typeof p.gradient=="string"||typeof p.pattern=="string")}function F(p){return typeof p=="string"&&p.startsWith("url(#")}function x(p){if(typeof p!="string")return p==null?"":String(p);if(!p.startsWith("url("))return p;const z=p.indexOf(")");return(z<0?"":p.slice(z+1).trim())||fe}function R(p,z){ue(`chart:fill:invalid:${p}`,`a chart fill object was ignored: ${z} The mark was drawn in a solid colour instead. A fill is a gradient object (gradient: "linear" or "radial", with stops of [offset, colour]) or a pattern object (pattern: "hatch", "crosshatch", "dots" or "grid", with a colour).`)}function c(p,z){if(!ce(p))return null;const d=z||fe;if(typeof p.gradient=="string"){if(!Ae.includes(p.gradient))return R("gradient",`the gradient "${p.gradient}" is not one of ${Ae.join(", ")}.`),null;const m=Array.isArray(p.stops)?p.stops:[],G=[];for(const B of m){const ie=Array.isArray(B)?Number(B[0]):Number(B&&B.offset),se=Array.isArray(B)?B[1]:B&&B.colour;!Number.isFinite(ie)||typeof se!="string"||!se||G.push({offset:Math.min(1,Math.max(0,ie)),colour:se})}if(G.length<2)return R("stops","a gradient needs at least two [offset, colour] stops."),null;G.sort((B,ie)=>B.offset-ie.offset);const P=Number.isFinite(Number(p.angle))?Number(p.angle):180;return{kind:p.gradient,angle:P,stops:G,solid:G[0].colour}}if(!j.includes(p.pattern))return R("pattern",`the pattern "${p.pattern}" is not one of ${j.join(", ")}.`),null;const S=Number(p.size),_=Number(p.angle),w=typeof p.colour=="string"&&p.colour?p.colour:d;return{kind:"pattern",pattern:p.pattern,colour:w,background:typeof p.background=="string"&&p.background?p.background:null,size:Number.isFinite(S)&&S>=2?S:Se,angle:Number.isFinite(_)?_:p.pattern==="grid"||p.pattern==="dots"?0:45,solid:w}}function Z(p){if(p.kind==="pattern"){const d=p.colour,S=p.size,_=Math.max(1,S/5),w=p.background||"transparent",m=G=>`repeating-linear-gradient(${G+90}deg,${d} 0 ${_}px,transparent ${_}px ${S}px)`;return p.pattern==="hatch"?`${m(p.angle)},${w}`:p.pattern==="crosshatch"?`${m(p.angle)},${m(p.angle+90)},${w}`:p.pattern==="grid"?`${m(p.angle)},${m(p.angle+90)},${w}`:`radial-gradient(circle at 50% 50%,${d} ${S/6}px,transparent ${S/6+.5}px) 0 0/${S}px ${S}px,${w}`}const z=p.stops.map(d=>`${d.colour} ${Math.round(d.offset*100)}%`).join(",");return p.kind==="radial"?`radial-gradient(circle,${z})`:`linear-gradient(${p.angle}deg,${z})`}function X(p){if(!F(p))return typeof p=="string"?p:"";const z=String(p).indexOf(")"),d=String(p).slice(5,z),S=ee.get(d);return S?Z(S):x(p)}function M(p){const z=`lattice-fill-${++ae}`;let d=new Map,S=0;const _=(m,G)=>{const P=p.ownerDocument.createElementNS("http://www.w3.org/2000/svg",m);for(const B of Object.keys(G))P.setAttribute(B,String(G[B]));return P},w=(m,G)=>{if(G.kind==="pattern"){const B=G.size,ie=Math.max(1,B/5),se=_("pattern",{id:m,width:B,height:B,patternUnits:"userSpaceOnUse"});G.angle&&se.setAttribute("patternTransform",`rotate(${G.angle})`),G.background&&se.appendChild(_("rect",{width:B,height:B,fill:G.background}));const W={stroke:G.colour,"stroke-width":ie};G.pattern==="dots"?se.appendChild(_("circle",{cx:B/2,cy:B/2,r:Math.max(1,B/6),fill:G.colour})):(se.appendChild(_("line",{x1:B/2,y1:0,x2:B/2,y2:B,...W})),G.pattern!=="hatch"&&se.appendChild(_("line",{x1:0,y1:B/2,x2:B,y2:B/2,...W}))),p.appendChild(se);return}let P;if(G.kind==="radial")P=_("radialGradient",{id:m,cx:.5,cy:.5,r:.5});else{const B=G.angle*Math.PI/180,ie=Math.sin(B)/2,se=-Math.cos(B)/2;P=_("linearGradient",{id:m,x1:+(.5-ie).toFixed(4),y1:+(.5-se).toFixed(4),x2:+(.5+ie).toFixed(4),y2:+(.5+se).toFixed(4)})}for(const B of G.stops)P.appendChild(_("stop",{offset:B.offset,"stop-color":B.colour}));p.appendChild(P)};return{prefix:z,paint(m,G){const P=c(m,G);if(!P)return G||fe;if(!p||!p.ownerDocument)return P.solid;const B=JSON.stringify(P);let ie=d.get(B);if(!ie){const se=`${z}-${S++}`;w(se,P),ee.set(se,P),ie=`url(#${se}) ${P.solid}`,d.set(B,ie)}return ie},reset(){for(const m of d.values())ee.delete(m.slice(5,m.indexOf(")")));if(d=new Map,S=0,p)for(;p.firstChild;)p.removeChild(p.firstChild)},ids(){return[...d.values()].map(m=>m.slice(5,m.indexOf(")")))}}}function g(p,z,d){if(p==null||p==="")return null;const S=x(d);if(ce(p))return z?z.paint(p,S):(c(p,S)||{}).solid||null;if(typeof p=="string"){if(j.includes(p)){const _={pattern:p,colour:S};return z?z.paint(_,S):S}return p}return null}function h(p){const z=[{pattern:"hatch",angle:45},{pattern:"dots"},{pattern:"crosshatch",angle:45},{pattern:"hatch",angle:135},{pattern:"grid"},{pattern:"dots",size:5},{pattern:"hatch",angle:0},{pattern:"crosshatch",angle:0,size:6}];return p.map((d,S)=>({...z[S%z.length],colour:d,background:"var(--lattice-background, #fff)"}))}function f(p){return F(p)?String(p).replace(/^url\([^)]*\)\s*/,""):p}function v(p,z){const d=p.fill;if(ce(d))return(_,w)=>g(d,z.fills,f(w));if(typeof d=="function")return(_,w)=>{let m=null;try{m=d({label:_.label,x:_.x,y:_.y,rowKey:_.rowKey})}catch{m=null}return g(m,z.fills,f(w))};const S=typeof d=="string"?d:d&&typeof d=="object"&&typeof d.col=="string"?d.col:null;return S?(_,w)=>_.rowKey===void 0||_.rowKey===null?null:g(p.grid.rows.value(_.rowKey,S),z.fills,f(w)):null}function J(p,z,d){return p&&p({label:z.label,x:z.value,y:z.total,rowKey:z.rowKey},d)||d}}),at("packages/modules/charts/scheme.js",function(r,le){"use strict";Object.defineProperty(r,"PALETTE",{enumerable:!0,get:function(){return ae}}),Object.defineProperty(r,"SCHEMES",{enumerable:!0,get:function(){return ee}}),Object.defineProperty(r,"registerScheme",{enumerable:!0,get:function(){return x}}),Object.defineProperty(r,"setDefaultScheme",{enumerable:!0,get:function(){return R}}),Object.defineProperty(r,"schemeNames",{enumerable:!0,get:function(){return c}}),Object.defineProperty(r,"resolveScheme",{enumerable:!0,get:function(){return g}}),Object.defineProperty(r,"RAMP_SCALES",{enumerable:!0,get:function(){return f}}),Object.defineProperty(r,"toRgb",{enumerable:!0,get:function(){return p}}),Object.defineProperty(r,"rampStops",{enumerable:!0,get:function(){return z}});const ue=le("packages/core/src/internal/util.js").warnOnce,j=le("packages/modules/charts/fills.js"),Ae=j.isFill,Se=j.patternSeries,fe=j.rowPaint,ae=Object.freeze(["#0072b2","#e69f00","#009e73","#cc79a7","#56b4e9","#d55e00","#7a5195","#6b7d8c"]),ee=Object.freeze({default:{series:ae,sequential:["#ecf3f9","#005280"],diverging:["#b04a00","#f7f7f7","#005280"],positive:"#009e73",negative:"#d55e00"},bright:{series:["#1f77d0","#ff7f0e","#2ca02c","#d62728","#9467bd","#17becf","#e377c2","#7f7f7f"],sequential:["#eef4fb","#1f77d0"],diverging:["#d62728","#f7f7f7","#1f77d0"],positive:"#2ca02c",negative:"#d62728"},earth:{series:["#5b7c6f","#c08b52","#7a6a53","#a4553f","#4e6a83","#8f8259","#6d5566","#8c9196"],sequential:["#f2efe9","#4e6a83"],diverging:["#a4553f","#f2efe9","#4e6a83"],positive:"#5b7c6f",negative:"#a4553f"},mono:{series:["#0b2a3d","#17475f","#2c6480","#4a82a0","#6da0bd","#94bcd6","#bcd7e9","#dfecf5"],sequential:["#eef3f7","#0b2a3d"],diverging:["#7a5c00","#f5f5f5","#0b2a3d"],positive:"#17475f",negative:"#7a5c00"},patterns:{series:Se(ae),sequential:["#ecf3f9","#005280"],diverging:["#b04a00","#f7f7f7","#005280"],positive:"#009e73",negative:"#d55e00"}}),ce=new Map;let F="default";function x(d,S){!d||!S||ce.set(String(d),S)}function R(d){if(typeof d=="string"){F=d;return}d&&typeof d=="object"&&(ce.set("__default__",d),F="__default__")}function c(){return[...Object.keys(ee),...ce.keys()].filter(d=>!d.startsWith("__"))}function Z(d){return ce.has(d)?ce.get(d):ee[d]||null}const X=["series","sequential","diverging","positive","negative"];function M(d){return!d||typeof d!="object"||Array.isArray(d)?!1:!X.some(S=>S in d)}function g(d,S){const _=S&&S.fills||null,w=Z(F)||ee.default,m=d&&d.scheme,G=M(m)?m:null,P=Array.isArray(m)&&m.length?m:null,B=typeof m=="string"?Z(m):G||Array.isArray(m)?null:m||null,ie=(d&&Array.isArray(d.palette)&&d.palette.length?d.palette:null)||P;G&&ie&&ue("chart:scheme:array-and-map",'chart "scheme" was given as a name map together with a "palette" array; the two do not combine. Colours came from the map and the array was ignored. Pass one or the other.');const se=G?null:ie,W={...ee.default,...w,...B||{}};se&&(W.series=se);const C=d&&d.ramp&&typeof d.ramp=="object"&&!Array.isArray(d.ramp)?d.ramp:null,T=C?C.colours:d&&d.ramp,i=Array.isArray(T)&&T.length>=2?T:null;i&&(W.sequential=i);const t=C?v(C.scale):null,e=!!(B||se||G),u=W.series&&W.series.length?W.series:ae,$=new Map;let O=0;return{...W,series:(V,I)=>{if(G&&I!==void 0&&I!==null){const b=String(I);return Object.prototype.hasOwnProperty.call(G,b)?h(G[b],_,V):($.has(b)||$.set(b,O++),h(J(u,$.get(b),!0),_,$.get(b)))}return h(J(u,V,e),_,V)},explicit:e,nameMap:!!G,rampScale:t,fills:_}}function h(d,S,_){if(!Ae(d))return d;const w=ae[(_%ae.length+ae.length)%ae.length];return fe(d,S,w)||w}const f=Object.freeze(["linear","log","quantile"]);function v(d){return d==null?null:f.includes(d)?d:(ue(`chart:ramp:scale:${String(d)}`,`chart "ramp.scale" was "${String(d)}", which is not a ramp scale; the chart chose one from its values instead. Use "linear", "log" or "quantile".`),null)}function J(d,S,_){const w=(S%d.length+d.length)%d.length;return _||typeof d[w]!="string"?d[w]:`var(--lattice-chart-${w+1}, ${d[w]})`}function p(d){if(typeof d!="string")return null;const S=d.trim(),_=/^#([0-9a-f]{3}|[0-9a-f]{6})$/i.exec(S);if(_){const G=_[1];return G.length===3?[0,1,2].map(P=>parseInt(G[P]+G[P],16)):[0,2,4].map(P=>parseInt(G.slice(P,P+2),16))}const w=/^rgba?\(([^)]+)\)$/i.exec(S);if(!w)return null;const m=w[1].split(/[\s,/]+/).filter(Boolean).slice(0,3).map(Number);return m.length===3&&m.every(G=>Number.isFinite(G))?m:null}function z(d,S){const _=S?d.diverging:d.sequential,w=S?ee.default.diverging:ee.default.sequential,m=(Array.isArray(_)?_:w).map((G,P)=>p(G)||p(w[P])||[0,0,0]);return m.length>=2?m:w.map(G=>p(G))}}),at("packages/modules/charts/styles.js",function(r,le){"use strict";Object.defineProperty(r,"NS",{enumerable:!0,get:function(){return j}}),Object.defineProperty(r,"seriesColour",{enumerable:!0,get:function(){return Se}}),Object.defineProperty(r,"css",{enumerable:!0,get:function(){return fe}}),Object.defineProperty(r,"injectStyles",{enumerable:!0,get:function(){return ae}});const ue=le("packages/modules/charts/scheme.js").PALETTE,j="lat-chartview",Ae="data-lattice-chartview";function Se(ee){const ce=(ee%ue.length+ue.length)%ue.length;return`var(--lattice-chart-${ce+1}, ${ue[ce]})`}function fe(){return`
6
+ var fo=Object.create(null),ho=Object.create(null);function at(r,le){fo[r]=le}function mo(r){var le=ho[r];if(le)return le;var Oe=Object.create(null);ho[r]=Oe;var ue=fo[r];if(!ue)throw new Error("[lattice] missing module: "+r);return ue(Oe,mo),Oe}at("packages/modules/charts/svg.js",function(r,le){"use strict";Object.defineProperty(r,"SVG_NS",{enumerable:!0,get:function(){return Oe}}),Object.defineProperty(r,"el",{enumerable:!0,get:function(){return j}}),Object.defineProperty(r,"svg",{enumerable:!0,get:function(){return Ae}}),Object.defineProperty(r,"attr",{enumerable:!0,get:function(){return Se}}),Object.defineProperty(r,"attrs",{enumerable:!0,get:function(){return fe}}),Object.defineProperty(r,"setText",{enumerable:!0,get:function(){return ae}}),Object.defineProperty(r,"clear",{enumerable:!0,get:function(){return ee}}),Object.defineProperty(r,"append",{enumerable:!0,get:function(){return ce}}),Object.defineProperty(r,"path",{enumerable:!0,get:function(){return F}}),Object.defineProperty(r,"ribbonPath",{enumerable:!0,get:function(){return x}}),Object.defineProperty(r,"round",{enumerable:!0,get:function(){return R}}),Object.defineProperty(r,"pathRings",{enumerable:!0,get:function(){return c}}),Object.defineProperty(r,"insideRings",{enumerable:!0,get:function(){return Z}});const Oe="http://www.w3.org/2000/svg";function ue(X){const M=X.indexOf(")");return M<0?X:X.slice(M+1).trim()||"#0072b2"}function j(X,M,g){const h=X.createElement(M);return g&&h.setAttribute("class",g),h}function Ae(X,M,g){const h=X.createElementNS(Oe,M);if(g)for(const f of Object.keys(g))h.setAttribute(f,String(g[f]));return h}function Se(X,M,g){if(!X)return;if(g==null){X.removeAttribute(M);return}let h=String(g);h.startsWith("url(#")&&(M==="stroke"||M==="fill"&&X.localName==="text")&&(h=ue(h)),X.setAttribute(M,h)}function fe(X,M){if(X)for(const g of Object.keys(M))Se(X,g,M[g])}function ae(X,M){X&&(X.textContent=M==null?"":String(M))}function ee(X){if(X)for(;X.firstChild;)X.removeChild(X.firstChild)}function ce(X,M){for(const g of M)g&&X.appendChild(g);return X}function F(X){return X.join(" ")}function x(X){if(!X||X.length<2)return"";const M=["M",X[0].x,X[0].upper];for(let g=1;g<X.length;g++)M.push("L",X[g].x,X[g].upper);for(let g=X.length-1;g>=0;g--)M.push("L",X[g].x,X[g].lower);return M.push("Z"),F(M)}function R(X){return Math.round(X*100)/100}function c(X){const M=[];let g=[];const h=String(X||"").match(/[A-Za-z]|-?\d*\.?\d+(?:e[-+]?\d+)?/gi)||[];let f="",v=[];const J=()=>{if(!f||!v.length){v=[];return}if(f==="M"||f==="L")for(let p=0;p+1<v.length;p+=2)g.push([v[p],v[p+1]]);else f!=="Z"&&v.length>=2&&g.push([v[v.length-2],v[v.length-1]]);v=[]};for(const p of h){if(/[A-Za-z]/.test(p)){if(J(),p==="Z"||p==="z"){g.length>2&&M.push(g),g=[],f="";continue}p==="M"&&g.length>2&&(M.push(g),g=[]),f=p;continue}v.push(Number(p))}return J(),g.length>2&&M.push(g),M}function Z(X,M,g){let h=!1;for(const f of X)for(let v=0,J=f.length-1;v<f.length;J=v++){const[p,z]=f[v],[d,S]=f[J];z>g!=S>g&&M<(d-p)*(g-z)/(S-z||1e-12)+p&&(h=!h)}return h}}),at("packages/modules/charts/typography.js",function(r,le){"use strict";Object.defineProperty(r,"BASE_SIZE",{enumerable:!0,get:function(){return Oe}}),Object.defineProperty(r,"BASE_FAMILY",{enumerable:!0,get:function(){return ue}}),Object.defineProperty(r,"CHAR_RATIO",{enumerable:!0,get:function(){return j}}),Object.defineProperty(r,"resolveType",{enumerable:!0,get:function(){return Ae}}),Object.defineProperty(r,"textWidth",{enumerable:!0,get:function(){return fe}}),Object.defineProperty(r,"widestLabel",{enumerable:!0,get:function(){return ae}}),Object.defineProperty(r,"truncateTo",{enumerable:!0,get:function(){return ee}}),Object.defineProperty(r,"applySize",{enumerable:!0,get:function(){return ce}});const Oe=12,ue="var(--lattice-font-family, system-ui, -apple-system, sans-serif)",j=.62;function Ae(F){const x=F&&F.font,R=typeof x=="number"?{size:x}:x||{},c=Se(R.size,Oe);return{family:R.family||ue,size:c,small:Se(R.small??R.tickSize,Math.max(9,c-1)),title:Se(R.title,Math.round(c*1.15)),axisTitle:Se(R.axisTitle,Math.max(10,c-1)),weight:R.weight||"inherit"}}function Se(F,x){const R=Number(F);return Number.isFinite(R)&&R>0?R:x}function fe(F,x){return String(F??"").length*x*j}function ae(F,x){let R=0;for(const c of F||[]){const Z=fe(c,x);Z>R&&(R=Z)}return R}function ee(F,x,R){const c=String(F??""),Z=Math.floor(x/(R*j));return Z<=0?"":c.length<=Z?c:Z===1?"…":`${c.slice(0,Z-1)}…`}function ce(F,x){!F||!Number.isFinite(x)||(F.style?F.style.fontSize=`${x}px`:F.setAttribute("style",`font-size:${x}px`))}}),at("packages/modules/charts/frame.js",function(r,le){"use strict";Object.defineProperty(r,"LABEL_GAP",{enumerable:!0,get:function(){return ae}}),Object.defineProperty(r,"LABEL_GUTTER_SHARE",{enumerable:!0,get:function(){return ee}}),Object.defineProperty(r,"resolveMargin",{enumerable:!0,get:function(){return ce}}),Object.defineProperty(r,"plotRect",{enumerable:!0,get:function(){return F}}),Object.defineProperty(r,"shouldRotate",{enumerable:!0,get:function(){return x}}),Object.defineProperty(r,"Pool",{enumerable:!0,get:function(){return R}});const ue=le("packages/modules/charts/svg.js").SVG_NS,j=le("packages/modules/charts/typography.js"),Ae=j.textWidth,Se=j.widestLabel,fe=8,ae=6,ee=.4;function ce(c,Z){const X=typeof c=="number"?c:Z,M=c&&typeof c=="object"?c:{},g=h=>Number.isFinite(h)&&h>=0?Number(h):X;return{base:X,top:g(M.top),right:g(M.right),bottom:g(M.bottom),left:g(M.left)}}function F(c){const Z=ce(c.margin,typeof c.padding=="number"?c.padding:8),X=Z.base,M=c.fontSize||12,g=c.yLabels||[],h=c.xLabels||[],f=c.ySide==="right"?"right":"left",v=f==="right"?"left":"right",J=c.titles||{},p=c.titleSize||M,z=W=>W?p+ae:0,d=Se(g,M),S=g.length?Math.min(c.width*ee,Z[f]+d+ae):Math.max(fe,Z[f]),_=Z[v]+(c.rightGutter||0),w=(f==="left"?S:_)+z(J.left),m=Se(h.map(W=>String(W).slice(0,14)),M),G=(h.length?c.rotated?Math.min(c.height*ee,ae+m):M+ae+Z.bottom:Math.max(fe,Z.bottom))+z(J.bottom),P=(f==="right"?S:_)+z(J.right),B=Z.top+(c.topGutter||0),ie=Math.max(0,c.width-w-P),se=Math.max(0,c.height-B-G);return{left:w,top:B,width:ie,height:se,right:w+ie,bottom:B+se,gutter:{left:w,bottom:G,right:P,top:B}}}function x(c,Z,X,M){if(!c.length||Z<=0)return!1;const g=Number.isFinite(M)&&M>0?Number(M):1;return Se(c,X)>Z*g-4}class R{#r;#n=0;static#i="data-pool-key";constructor(Z,X=0){this.#r=Z,this.#n=X>0?X:0}next(Z,X,M){if(M!=null)return this.#e(Z,X,String(M));const g=this.#r.childNodes[this.#n],h=g&&g.tagName,f=/(^|\s)\S*__axis-title(\s|$)/,v=h&&f.test(String(g.getAttribute("class")||"")),J=!!X&&f.test(String(X));if(h&&(!v||J)&&String(h).toLowerCase()===Z.toLowerCase())return X&&g.setAttribute("class",X),this.#n++,g;const p=this.#r.ownerDocument.createElementNS(ue,Z);return X&&p.setAttribute("class",X),g?this.#r.insertBefore(p,g):this.#r.appendChild(p),this.#n++,p}#e(Z,X,M){const g=Z.toLowerCase();for(let v=this.#n;v<this.#r.childNodes.length;v++){const J=this.#r.childNodes[v],p=J&&J.tagName;if(p&&String(p).toLowerCase()===g&&J.getAttribute(R.#i)===M)return v!==this.#n&&this.#r.insertBefore(J,this.#r.childNodes[this.#n]),X&&J.setAttribute("class",X),this.#n++,J}const h=this.#r.ownerDocument.createElementNS(ue,Z);h.setAttribute(R.#i,M),X&&h.setAttribute("class",X);const f=this.#r.childNodes[this.#n];return f?this.#r.insertBefore(h,f):this.#r.appendChild(h),this.#n++,h}finish(){for(;this.#r.childNodes.length>this.#n;)this.#r.removeChild(this.#r.lastChild);this.#n=0}}}),at("packages/core/src/internal/util.js",function(r,le){"use strict";Object.defineProperty(r,"VERSION",{enumerable:!0,get:function(){return j}}),Object.defineProperty(r,"reportedWarnings",{enumerable:!0,get:function(){return x}}),Object.defineProperty(r,"warnOnce",{enumerable:!0,get:function(){return c}}),Object.defineProperty(r,"infoOnce",{enumerable:!0,get:function(){return Z}}),Object.defineProperty(r,"resetWarnings",{enumerable:!0,get:function(){return X}}),Object.defineProperty(r,"fail",{enumerable:!0,get:function(){return M}}),Object.defineProperty(r,"invariant",{enumerable:!0,get:function(){return g}}),Object.defineProperty(r,"DEV",{enumerable:!0,get:function(){return h}}),Object.defineProperty(r,"isObject",{enumerable:!0,get:function(){return f}}),Object.defineProperty(r,"isFunction",{enumerable:!0,get:function(){return v}}),Object.defineProperty(r,"isNil",{enumerable:!0,get:function(){return J}}),Object.defineProperty(r,"isBlank",{enumerable:!0,get:function(){return p}}),Object.defineProperty(r,"isCtor",{enumerable:!0,get:function(){return z}}),Object.defineProperty(r,"pathGetter",{enumerable:!0,get:function(){return S}}),Object.defineProperty(r,"pathSetter",{enumerable:!0,get:function(){return w}}),Object.defineProperty(r,"getPath",{enumerable:!0,get:function(){return m}}),Object.defineProperty(r,"setPath",{enumerable:!0,get:function(){return G}}),Object.defineProperty(r,"humanise",{enumerable:!0,get:function(){return P}}),Object.defineProperty(r,"escapeHtml",{enumerable:!0,get:function(){return ie}}),Object.defineProperty(r,"titleCase",{enumerable:!0,get:function(){return se}}),Object.defineProperty(r,"expand",{enumerable:!0,get:function(){return W}}),Object.defineProperty(r,"toArray",{enumerable:!0,get:function(){return C}}),Object.defineProperty(r,"merge",{enumerable:!0,get:function(){return i}}),Object.defineProperty(r,"mergeRow",{enumerable:!0,get:function(){return t}}),Object.defineProperty(r,"Lru",{enumerable:!0,get:function(){return e}}),Object.defineProperty(r,"collator",{enumerable:!0,get:function(){return $}}),Object.defineProperty(r,"defaultCompare",{enumerable:!0,get:function(){return O}}),Object.defineProperty(r,"now",{enumerable:!0,get:function(){return L}}),Object.defineProperty(r,"nextFrame",{enumerable:!0,get:function(){return I}}),Object.defineProperty(r,"cancelFrame",{enumerable:!0,get:function(){return b}}),Object.defineProperty(r,"frameBatched",{enumerable:!0,get:function(){return H}}),Object.defineProperty(r,"settleDebounce",{enumerable:!0,get:function(){return oe}}),Object.defineProperty(r,"whenIdle",{enumerable:!0,get:function(){return re}}),Object.defineProperty(r,"uid",{enumerable:!0,get:function(){return te}});const Oe="1.89.1";async function ue(){return Oe}const j="1.89.1",Ae=new Set,Se=2e3;function fe(E){if(Ae.add(E),Ae.size>Se){const Y=Ae.values().next().value;Y!==void 0&&Ae.delete(Y)}}const ae=[],ee=500;function ce(E,Y,ne){ae.push({key:E,level:Y,message:ne.map(a=>typeof a=="string"?a:F(a)).join(" "),at:Date.now()}),ae.length>ee&&ae.shift()}function F(E){if(E instanceof Error)return E.message;try{return JSON.stringify(E)}catch{return String(E)}}function x(){return ae.map(E=>({...E}))}function R(E){if(E.length===0||typeof E[0]!="string")return E;const Y=E[0].replace(/^\[lattice\]\s*/,"");return Y===E[0]?E:[Y,...E.slice(1)]}function c(E,...Y){if(Ae.has(E))return;fe(E);const ne=R(Y);ce(E,"warn",ne),console.warn("[lattice]",...ne)}function Z(E,...Y){if(Ae.has(E))return;fe(E);const ne=R(Y);ce(E,"info",ne),console.info("[lattice]",...ne)}function X(){Ae.clear(),ae.length=0}function M(E,Y){const ne=new Error(`[lattice] ${E}`);throw Y!==void 0&&(ne.cause=Y),ne}function g(E,Y){E||M(Y)}const h=(()=>{try{return!(typeof process<"u"&&process.env&&process.env.NODE_ENV==="production")}catch{return!0}})();function f(E){return E!==null&&typeof E=="object"&&!Array.isArray(E)}function v(E){return typeof E=="function"}function J(E){return E==null}function p(E){return E==null||E===""}function z(E){return typeof E!="function"?!1:/^class[\s{]/.test(Function.prototype.toString.call(E))?!0:!!(E.prototype&&Object.getOwnPropertyNames(E.prototype).length>1)}const d=new Map;function S(E){let Y=d.get(E);if(Y)return Y;if(!E.includes("."))Y=ne=>ne?.[E];else{const ne=E.split("."),a=ne.length;Y=s=>{let n=s;for(let N=0;N<a;N++){if(n==null)return;n=n[ne[N]]}return n}}return d.set(E,Y),Y}const _=new Map;function w(E){let Y=_.get(E);if(Y)return Y;if(!E.includes("."))Y=(ne,a)=>{ne!=null&&(ne[E]=a)};else{const ne=E.split("."),a=ne.length-1;Y=(s,n)=>{let N=s;for(let o=0;o<a;o++){if(N==null)return;const k=ne[o];N[k]==null&&(N[k]={}),N=N[k]}N!=null&&(N[ne[a]]=n)}}return _.set(E,Y),Y}function m(E,Y){return S(Y)(E)}function G(E,Y,ne){w(Y)(E,ne)}function P(E){return E?(E.includes(".")?E.slice(E.lastIndexOf(".")+1):E).replace(/[_-]+/g," ").replace(/([a-z0-9])([A-Z])/g,"$1 $2").replace(/([A-Z]+)([A-Z][a-z])/g,"$1 $2").replace(/\s+/g," ").trim().replace(/^./,ne=>ne.toUpperCase()):""}const B={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"};function ie(E){const Y=E==null?"":String(E);return/[&<>"']/.test(Y)?Y.replace(/[&<>"']/g,ne=>B[ne]):Y}function se(E){return String(E).replace(/\w\S*/g,Y=>Y[0].toUpperCase()+Y.slice(1).toLowerCase())}function W(E,Y,ne){if(E!==void 0)return E===!0?{enabled:!0,...ne}:E===!1?{enabled:!1}:f(E)?E:{[Y]:E,enabled:!0}}function C(E){return E==null?[]:Array.isArray(E)?E:[E]}const T=Object.freeze(new Set(["__proto__","constructor","prototype"]));function i(E,Y){if(!f(E))return f(Y)?{...Y}:Y;if(!f(Y))return Y===void 0?E:Y;const ne={...E};for(const a of Object.keys(Y)){if(T.has(a))continue;const s=Y[a];s!==void 0&&(ne[a]=f(s)&&f(ne[a])?i(ne[a],s):s)}return ne}function t(E,Y){if(!f(E)||!f(Y)||E===Y)return Y;const ne=Object.create(Object.getPrototypeOf(E));return Object.assign(ne,E,Y),ne}class e{#r;#n=new Map;#i;constructor(Y=256,ne=null){this.#r=Y,this.#i=ne}get size(){return this.#n.size}get max(){return this.#r}set max(Y){this.#r=Y,this.#e()}has(Y){return this.#n.has(Y)}get(Y){const ne=this.#n;if(!ne.has(Y))return;const a=ne.get(Y);return ne.delete(Y),ne.set(Y,a),a}peek(Y){return this.#n.get(Y)}set(Y,ne){const a=this.#n;return a.has(Y)&&a.delete(Y),a.set(Y,ne),this.#e(),ne}delete(Y){const ne=this.#n.get(Y);return this.#n.delete(Y)&&this.#i&&this.#i(ne,Y),ne}clear(){if(this.#i)for(const[Y,ne]of this.#n)this.#i(ne,Y);this.#n.clear()}keys(){return this.#n.keys()}values(){return this.#n.values()}#e(){const Y=this.#n;for(;Y.size>this.#r;){const ne=Y.keys().next().value,a=Y.get(ne);Y.delete(ne),this.#i&&this.#i(a,ne)}}}const u=new Map;function $(E,Y){const ne=`${E||""}|${Y?JSON.stringify(Y):""}`;let a=u.get(ne);return a||(a=new Intl.Collator(E||void 0,{numeric:!0,sensitivity:"variant",...Y}),u.set(ne,a)),a}function O(E,Y){if(E===Y)return 0;if(E==null)return 1;if(Y==null)return-1;if(typeof E=="number"&&typeof Y=="number")return Number.isNaN(E)?Number.isNaN(Y)?0:1:Number.isNaN(Y)||E<Y?-1:E>Y?1:0;const ne=String(E),a=String(Y);return ne<a?-1:ne>a?1:0}function L(){return typeof performance<"u"&&performance.now?performance.now():Date.now()}const V=typeof requestAnimationFrame=="function";function I(E){return V?requestAnimationFrame(E):setTimeout(()=>E(L()),16)}function b(E){E!=null&&(V?cancelAnimationFrame(E):clearTimeout(E))}function H(E){let Y=null,ne=null;const a=()=>{Y=null;const n=ne;ne=null,E(...n||[])},s=(...n)=>{ne=n,Y===null&&(Y=I(a))};return s.cancel=()=>{b(Y),Y=null,ne=null},s.flush=()=>{Y!==null&&(b(Y),a())},s}function oe(E,Y){let ne=null,a=null;const s=()=>{if(ne=null,a===null)return;const o=a;a=null,E(...o),n()},n=()=>{ne=setTimeout(s,Y),typeof ne?.unref=="function"&&ne.unref()},N=(...o)=>{ne===null?(E(...o),n()):(a=o,clearTimeout(ne),n())};return N.flush=()=>{if(ne!==null&&clearTimeout(ne),ne=null,a===null)return;const o=a;a=null,E(...o)},N.cancel=()=>{ne!==null&&clearTimeout(ne),ne=null,a=null},N.pending=()=>ne!==null||a!==null,N}function re(E,Y=50){return typeof requestIdleCallback=="function"?requestIdleCallback(E,{timeout:Y}):setTimeout(()=>E({timeRemaining:()=>0,didTimeout:!0}),1)}let pe=0;function te(E="l"){return`${E}${(++pe).toString(36)}`}}),at("packages/modules/charts/fills.js",function(r,le){"use strict";Object.defineProperty(r,"PATTERNS",{enumerable:!0,get:function(){return j}}),Object.defineProperty(r,"GRADIENTS",{enumerable:!0,get:function(){return Ae}}),Object.defineProperty(r,"isFill",{enumerable:!0,get:function(){return ce}}),Object.defineProperty(r,"isPaintRef",{enumerable:!0,get:function(){return F}}),Object.defineProperty(r,"paintFallback",{enumerable:!0,get:function(){return x}}),Object.defineProperty(r,"normaliseFill",{enumerable:!0,get:function(){return c}}),Object.defineProperty(r,"swatchCss",{enumerable:!0,get:function(){return X}}),Object.defineProperty(r,"createFillRegistry",{enumerable:!0,get:function(){return M}}),Object.defineProperty(r,"rowPaint",{enumerable:!0,get:function(){return g}}),Object.defineProperty(r,"patternSeries",{enumerable:!0,get:function(){return h}}),Object.defineProperty(r,"paintSolid",{enumerable:!0,get:function(){return f}}),Object.defineProperty(r,"rowFillSource",{enumerable:!0,get:function(){return v}}),Object.defineProperty(r,"nodePaint",{enumerable:!0,get:function(){return J}});const ue=le("packages/core/src/internal/util.js").warnOnce,j=Object.freeze(["hatch","crosshatch","dots","grid"]),Ae=Object.freeze(["linear","radial"]),Se=8,fe="#0072b2";let ae=0;const ee=new Map;function ce(p){return!!p&&typeof p=="object"&&!Array.isArray(p)&&(typeof p.gradient=="string"||typeof p.pattern=="string")}function F(p){return typeof p=="string"&&p.startsWith("url(#")}function x(p){if(typeof p!="string")return p==null?"":String(p);if(!p.startsWith("url("))return p;const z=p.indexOf(")");return(z<0?"":p.slice(z+1).trim())||fe}function R(p,z){ue(`chart:fill:invalid:${p}`,`a chart fill object was ignored: ${z} The mark was drawn in a solid colour instead. A fill is a gradient object (gradient: "linear" or "radial", with stops of [offset, colour]) or a pattern object (pattern: "hatch", "crosshatch", "dots" or "grid", with a colour).`)}function c(p,z){if(!ce(p))return null;const d=z||fe;if(typeof p.gradient=="string"){if(!Ae.includes(p.gradient))return R("gradient",`the gradient "${p.gradient}" is not one of ${Ae.join(", ")}.`),null;const m=Array.isArray(p.stops)?p.stops:[],G=[];for(const B of m){const ie=Array.isArray(B)?Number(B[0]):Number(B&&B.offset),se=Array.isArray(B)?B[1]:B&&B.colour;!Number.isFinite(ie)||typeof se!="string"||!se||G.push({offset:Math.min(1,Math.max(0,ie)),colour:se})}if(G.length<2)return R("stops","a gradient needs at least two [offset, colour] stops."),null;G.sort((B,ie)=>B.offset-ie.offset);const P=Number.isFinite(Number(p.angle))?Number(p.angle):180;return{kind:p.gradient,angle:P,stops:G,solid:G[0].colour}}if(!j.includes(p.pattern))return R("pattern",`the pattern "${p.pattern}" is not one of ${j.join(", ")}.`),null;const S=Number(p.size),_=Number(p.angle),w=typeof p.colour=="string"&&p.colour?p.colour:d;return{kind:"pattern",pattern:p.pattern,colour:w,background:typeof p.background=="string"&&p.background?p.background:null,size:Number.isFinite(S)&&S>=2?S:Se,angle:Number.isFinite(_)?_:p.pattern==="grid"||p.pattern==="dots"?0:45,solid:w}}function Z(p){if(p.kind==="pattern"){const d=p.colour,S=p.size,_=Math.max(1,S/5),w=p.background||"transparent",m=G=>`repeating-linear-gradient(${G+90}deg,${d} 0 ${_}px,transparent ${_}px ${S}px)`;return p.pattern==="hatch"?`${m(p.angle)},${w}`:p.pattern==="crosshatch"?`${m(p.angle)},${m(p.angle+90)},${w}`:p.pattern==="grid"?`${m(p.angle)},${m(p.angle+90)},${w}`:`radial-gradient(circle at 50% 50%,${d} ${S/6}px,transparent ${S/6+.5}px) 0 0/${S}px ${S}px,${w}`}const z=p.stops.map(d=>`${d.colour} ${Math.round(d.offset*100)}%`).join(",");return p.kind==="radial"?`radial-gradient(circle,${z})`:`linear-gradient(${p.angle}deg,${z})`}function X(p){if(!F(p))return typeof p=="string"?p:"";const z=String(p).indexOf(")"),d=String(p).slice(5,z),S=ee.get(d);return S?Z(S):x(p)}function M(p){const z=`lattice-fill-${++ae}`;let d=new Map,S=0;const _=(m,G)=>{const P=p.ownerDocument.createElementNS("http://www.w3.org/2000/svg",m);for(const B of Object.keys(G))P.setAttribute(B,String(G[B]));return P},w=(m,G)=>{if(G.kind==="pattern"){const B=G.size,ie=Math.max(1,B/5),se=_("pattern",{id:m,width:B,height:B,patternUnits:"userSpaceOnUse"});G.angle&&se.setAttribute("patternTransform",`rotate(${G.angle})`),G.background&&se.appendChild(_("rect",{width:B,height:B,fill:G.background}));const W={stroke:G.colour,"stroke-width":ie};G.pattern==="dots"?se.appendChild(_("circle",{cx:B/2,cy:B/2,r:Math.max(1,B/6),fill:G.colour})):(se.appendChild(_("line",{x1:B/2,y1:0,x2:B/2,y2:B,...W})),G.pattern!=="hatch"&&se.appendChild(_("line",{x1:0,y1:B/2,x2:B,y2:B/2,...W}))),p.appendChild(se);return}let P;if(G.kind==="radial")P=_("radialGradient",{id:m,cx:.5,cy:.5,r:.5});else{const B=G.angle*Math.PI/180,ie=Math.sin(B)/2,se=-Math.cos(B)/2;P=_("linearGradient",{id:m,x1:+(.5-ie).toFixed(4),y1:+(.5-se).toFixed(4),x2:+(.5+ie).toFixed(4),y2:+(.5+se).toFixed(4)})}for(const B of G.stops)P.appendChild(_("stop",{offset:B.offset,"stop-color":B.colour}));p.appendChild(P)};return{prefix:z,paint(m,G){const P=c(m,G);if(!P)return G||fe;if(!p||!p.ownerDocument)return P.solid;const B=JSON.stringify(P);let ie=d.get(B);if(!ie){const se=`${z}-${S++}`;w(se,P),ee.set(se,P),ie=`url(#${se}) ${P.solid}`,d.set(B,ie)}return ie},reset(){for(const m of d.values())ee.delete(m.slice(5,m.indexOf(")")));if(d=new Map,S=0,p)for(;p.firstChild;)p.removeChild(p.firstChild)},ids(){return[...d.values()].map(m=>m.slice(5,m.indexOf(")")))}}}function g(p,z,d){if(p==null||p==="")return null;const S=x(d);if(ce(p))return z?z.paint(p,S):(c(p,S)||{}).solid||null;if(typeof p=="string"){if(j.includes(p)){const _={pattern:p,colour:S};return z?z.paint(_,S):S}return p}return null}function h(p){const z=[{pattern:"hatch",angle:45},{pattern:"dots"},{pattern:"crosshatch",angle:45},{pattern:"hatch",angle:135},{pattern:"grid"},{pattern:"dots",size:5},{pattern:"hatch",angle:0},{pattern:"crosshatch",angle:0,size:6}];return p.map((d,S)=>({...z[S%z.length],colour:d,background:"var(--lattice-background, #fff)"}))}function f(p){return F(p)?String(p).replace(/^url\([^)]*\)\s*/,""):p}function v(p,z){const d=p.fill;if(ce(d))return(_,w)=>g(d,z.fills,f(w));if(typeof d=="function")return(_,w)=>{let m=null;try{m=d({label:_.label,x:_.x,y:_.y,rowKey:_.rowKey})}catch{m=null}return g(m,z.fills,f(w))};const S=typeof d=="string"?d:d&&typeof d=="object"&&typeof d.col=="string"?d.col:null;return S?(_,w)=>_.rowKey===void 0||_.rowKey===null?null:g(p.grid.rows.value(_.rowKey,S),z.fills,f(w)):null}function J(p,z,d){return p&&p({label:z.label,x:z.value,y:z.total,rowKey:z.rowKey},d)||d}}),at("packages/modules/charts/scheme.js",function(r,le){"use strict";Object.defineProperty(r,"PALETTE",{enumerable:!0,get:function(){return ae}}),Object.defineProperty(r,"SCHEMES",{enumerable:!0,get:function(){return ee}}),Object.defineProperty(r,"registerScheme",{enumerable:!0,get:function(){return x}}),Object.defineProperty(r,"setDefaultScheme",{enumerable:!0,get:function(){return R}}),Object.defineProperty(r,"schemeNames",{enumerable:!0,get:function(){return c}}),Object.defineProperty(r,"resolveScheme",{enumerable:!0,get:function(){return g}}),Object.defineProperty(r,"RAMP_SCALES",{enumerable:!0,get:function(){return f}}),Object.defineProperty(r,"toRgb",{enumerable:!0,get:function(){return p}}),Object.defineProperty(r,"rampStops",{enumerable:!0,get:function(){return z}});const ue=le("packages/core/src/internal/util.js").warnOnce,j=le("packages/modules/charts/fills.js"),Ae=j.isFill,Se=j.patternSeries,fe=j.rowPaint,ae=Object.freeze(["#0072b2","#e69f00","#009e73","#cc79a7","#56b4e9","#d55e00","#7a5195","#6b7d8c"]),ee=Object.freeze({default:{series:ae,sequential:["#ecf3f9","#005280"],diverging:["#b04a00","#f7f7f7","#005280"],positive:"#009e73",negative:"#d55e00"},bright:{series:["#1f77d0","#ff7f0e","#2ca02c","#d62728","#9467bd","#17becf","#e377c2","#7f7f7f"],sequential:["#eef4fb","#1f77d0"],diverging:["#d62728","#f7f7f7","#1f77d0"],positive:"#2ca02c",negative:"#d62728"},earth:{series:["#5b7c6f","#c08b52","#7a6a53","#a4553f","#4e6a83","#8f8259","#6d5566","#8c9196"],sequential:["#f2efe9","#4e6a83"],diverging:["#a4553f","#f2efe9","#4e6a83"],positive:"#5b7c6f",negative:"#a4553f"},mono:{series:["#0b2a3d","#17475f","#2c6480","#4a82a0","#6da0bd","#94bcd6","#bcd7e9","#dfecf5"],sequential:["#eef3f7","#0b2a3d"],diverging:["#7a5c00","#f5f5f5","#0b2a3d"],positive:"#17475f",negative:"#7a5c00"},patterns:{series:Se(ae),sequential:["#ecf3f9","#005280"],diverging:["#b04a00","#f7f7f7","#005280"],positive:"#009e73",negative:"#d55e00"}}),ce=new Map;let F="default";function x(d,S){!d||!S||ce.set(String(d),S)}function R(d){if(typeof d=="string"){F=d;return}d&&typeof d=="object"&&(ce.set("__default__",d),F="__default__")}function c(){return[...Object.keys(ee),...ce.keys()].filter(d=>!d.startsWith("__"))}function Z(d){return ce.has(d)?ce.get(d):ee[d]||null}const X=["series","sequential","diverging","positive","negative"];function M(d){return!d||typeof d!="object"||Array.isArray(d)?!1:!X.some(S=>S in d)}function g(d,S){const _=S&&S.fills||null,w=Z(F)||ee.default,m=d&&d.scheme,G=M(m)?m:null,P=Array.isArray(m)&&m.length?m:null,B=typeof m=="string"?Z(m):G||Array.isArray(m)?null:m||null,ie=(d&&Array.isArray(d.palette)&&d.palette.length?d.palette:null)||P;G&&ie&&ue("chart:scheme:array-and-map",'chart "scheme" was given as a name map together with a "palette" array; the two do not combine. Colours came from the map and the array was ignored. Pass one or the other.');const se=G?null:ie,W={...ee.default,...w,...B||{}};se&&(W.series=se);const C=d&&d.ramp&&typeof d.ramp=="object"&&!Array.isArray(d.ramp)?d.ramp:null,T=C?C.colours:d&&d.ramp,i=Array.isArray(T)&&T.length>=2?T:null;i&&(W.sequential=i);const t=C?v(C.scale):null,e=!!(B||se||G),u=W.series&&W.series.length?W.series:ae,$=new Map;let O=0;return{...W,series:(V,I)=>{if(G&&I!==void 0&&I!==null){const b=String(I);return Object.prototype.hasOwnProperty.call(G,b)?h(G[b],_,V):($.has(b)||$.set(b,O++),h(J(u,$.get(b),!0),_,$.get(b)))}return h(J(u,V,e),_,V)},explicit:e,nameMap:!!G,rampScale:t,fills:_}}function h(d,S,_){if(!Ae(d))return d;const w=ae[(_%ae.length+ae.length)%ae.length];return fe(d,S,w)||w}const f=Object.freeze(["linear","log","quantile"]);function v(d){return d==null?null:f.includes(d)?d:(ue(`chart:ramp:scale:${String(d)}`,`chart "ramp.scale" was "${String(d)}", which is not a ramp scale; the chart chose one from its values instead. Use "linear", "log" or "quantile".`),null)}function J(d,S,_){const w=(S%d.length+d.length)%d.length;return _||typeof d[w]!="string"?d[w]:`var(--lattice-chart-${w+1}, ${d[w]})`}function p(d){if(typeof d!="string")return null;const S=d.trim(),_=/^#([0-9a-f]{3}|[0-9a-f]{6})$/i.exec(S);if(_){const G=_[1];return G.length===3?[0,1,2].map(P=>parseInt(G[P]+G[P],16)):[0,2,4].map(P=>parseInt(G.slice(P,P+2),16))}const w=/^rgba?\(([^)]+)\)$/i.exec(S);if(!w)return null;const m=w[1].split(/[\s,/]+/).filter(Boolean).slice(0,3).map(Number);return m.length===3&&m.every(G=>Number.isFinite(G))?m:null}function z(d,S){const _=S?d.diverging:d.sequential,w=S?ee.default.diverging:ee.default.sequential,m=(Array.isArray(_)?_:w).map((G,P)=>p(G)||p(w[P])||[0,0,0]);return m.length>=2?m:w.map(G=>p(G))}}),at("packages/modules/charts/styles.js",function(r,le){"use strict";Object.defineProperty(r,"NS",{enumerable:!0,get:function(){return j}}),Object.defineProperty(r,"seriesColour",{enumerable:!0,get:function(){return Se}}),Object.defineProperty(r,"css",{enumerable:!0,get:function(){return fe}}),Object.defineProperty(r,"injectStyles",{enumerable:!0,get:function(){return ae}});const ue=le("packages/modules/charts/scheme.js").PALETTE,j="lat-chartview",Ae="data-lattice-chartview";function Se(ee){const ce=(ee%ue.length+ue.length)%ue.length;return`var(--lattice-chart-${ce+1}, ${ue[ce]})`}function fe(){return`
7
7
  .${j}{position:relative;display:flex;flex-direction:column;min-width:0;min-height:0;
8
8
  width:100%;height:100%;box-sizing:border-box;
9
9
  font-family:var(--lattice-font-family,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif);