@ds-mo/ui 13.6.0 → 13.7.0

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 (259) hide show
  1. package/dist/.package-ready.json +1 -1
  2. package/dist/agent-patterns.json +2 -2
  3. package/dist/agent.json +109 -371
  4. package/dist/angular/ds-card-chart.d.ts +18 -0
  5. package/dist/angular/{ds-card-data-viz.js → ds-card-chart.js} +10 -10
  6. package/dist/angular/ds-chart.d.ts +19 -0
  7. package/dist/angular/{ds-chart-donut.js → ds-chart.js} +15 -15
  8. package/dist/angular/ds-tooltip-chart.d.ts +12 -0
  9. package/dist/angular/{ds-chart-line.js → ds-tooltip-chart.js} +12 -12
  10. package/dist/angular/index.d.ts +1 -1
  11. package/dist/angular/index.js +3 -5
  12. package/dist/angular/proxies.d.ts +3 -5
  13. package/dist/angular/proxies.js +3 -5
  14. package/dist/components/ds-agent-activity.js +1 -1
  15. package/dist/components/ds-agent-response.js +1 -1
  16. package/dist/components/ds-agent-source-list.js +1 -1
  17. package/dist/components/ds-agent-tool-call.js +1 -1
  18. package/dist/components/ds-attachment-list.js +1 -1
  19. package/dist/components/ds-badge.js +1 -1
  20. package/dist/components/ds-banner.js +1 -1
  21. package/dist/components/ds-banner.js.map +1 -1
  22. package/dist/components/ds-bar-nav.js +1 -1
  23. package/dist/components/ds-bar-title.js +1 -1
  24. package/dist/components/ds-bar-workflow.js +1 -1
  25. package/dist/components/ds-breadcrumb.js +1 -1
  26. package/dist/components/ds-button-filled.js +1 -1
  27. package/dist/components/ds-button-unfilled.js +1 -1
  28. package/dist/components/{ds-chart-line.d.ts → ds-card-chart.d.ts} +4 -4
  29. package/dist/components/ds-card-chart.js +2 -0
  30. package/dist/components/ds-card-chart.js.map +1 -0
  31. package/dist/components/ds-card-overview.js +1 -1
  32. package/dist/components/ds-card-setting.js +1 -1
  33. package/dist/components/ds-card-setting.js.map +1 -1
  34. package/dist/components/ds-chart-legend.js +1 -1
  35. package/dist/components/ds-chart-legend.js.map +1 -1
  36. package/dist/components/{ds-chart-bar.d.ts → ds-chart.d.ts} +4 -4
  37. package/dist/components/ds-chart.js +2 -0
  38. package/dist/components/ds-chart.js.map +1 -0
  39. package/dist/components/ds-checkbox.js +1 -1
  40. package/dist/components/ds-chip.js +1 -1
  41. package/dist/components/ds-code-block.js +1 -1
  42. package/dist/components/ds-conversation-list-item.js +1 -1
  43. package/dist/components/ds-conversation-list-section.js +1 -1
  44. package/dist/components/ds-conversation-list.js +1 -1
  45. package/dist/components/ds-divider.js +1 -1
  46. package/dist/components/ds-empty-state.js +1 -1
  47. package/dist/components/ds-field.js +1 -1
  48. package/dist/components/ds-input.js +1 -1
  49. package/dist/components/ds-markdown.js +1 -1
  50. package/dist/components/ds-menu.js +1 -1
  51. package/dist/components/ds-message-actions.js +1 -1
  52. package/dist/components/ds-message-bubble.js +1 -1
  53. package/dist/components/ds-message-composer.js +1 -1
  54. package/dist/components/ds-message-composer.js.map +1 -1
  55. package/dist/components/ds-message-scroller.js +1 -1
  56. package/dist/components/ds-message.js +1 -1
  57. package/dist/components/ds-mobile-bar-nav.js +1 -1
  58. package/dist/components/ds-mobile-header.js +1 -1
  59. package/dist/components/ds-mobile-section-switcher.js +1 -1
  60. package/dist/components/ds-mobile-sheet-nav.js +1 -1
  61. package/dist/components/ds-modal.js +1 -1
  62. package/dist/components/ds-modal.js.map +1 -1
  63. package/dist/components/ds-panel-nav.js +1 -1
  64. package/dist/components/ds-panel-sub-nav.js +1 -1
  65. package/dist/components/ds-panel-tool-header.js +1 -1
  66. package/dist/components/ds-panel-tool-search.js +1 -1
  67. package/dist/components/ds-panel-tools.js +1 -1
  68. package/dist/components/ds-radio.js +1 -1
  69. package/dist/components/ds-scroll-overlay.js +1 -1
  70. package/dist/components/ds-scroll-overlay.js.map +1 -1
  71. package/dist/components/ds-select.js +1 -1
  72. package/dist/components/ds-select.js.map +1 -1
  73. package/dist/components/ds-shell-app.js +1 -1
  74. package/dist/components/ds-shell-page.js +1 -1
  75. package/dist/components/ds-shell-tools.js +1 -1
  76. package/dist/components/ds-skeleton.js +1 -1
  77. package/dist/components/ds-slider.js +1 -1
  78. package/dist/components/ds-swatch-picker.js +1 -1
  79. package/dist/components/ds-switch.js +1 -1
  80. package/dist/components/ds-tab-group.js +1 -1
  81. package/dist/components/ds-tag.js +1 -1
  82. package/dist/components/ds-text.js +1 -1
  83. package/dist/components/ds-toast.js +1 -1
  84. package/dist/components/ds-toast.js.map +1 -1
  85. package/dist/components/{ds-card-data-viz.d.ts → ds-tooltip-chart.d.ts} +4 -4
  86. package/dist/components/ds-tooltip-chart.js +2 -0
  87. package/dist/components/ds-tooltip.js +1 -1
  88. package/dist/components/ds-typing-indicator.js +1 -1
  89. package/dist/components/{p-IYy-jODg.js → p-1Zbh1MRy.js} +2 -2
  90. package/dist/components/{p-wOOAzVMC.js → p-BVsLc3t5.js} +2 -2
  91. package/dist/components/p-BZCUFHYa.js +2 -0
  92. package/dist/components/{p-D0bM3cKj.js.map → p-BZCUFHYa.js.map} +1 -1
  93. package/dist/components/{p-BBtjABBS.js → p-BjiRqLtB.js} +2 -2
  94. package/dist/components/p-Bk1A9jLm.js +2 -0
  95. package/dist/components/p-Bk1A9jLm.js.map +1 -0
  96. package/dist/components/{p-Bsfpxto1.js → p-BsBw-w1q.js} +2 -2
  97. package/dist/components/p-ByfXC1wu.js +2 -0
  98. package/dist/components/{p-1S9AW2MA.js.map → p-ByfXC1wu.js.map} +1 -1
  99. package/dist/components/{p-B6RrZQqw.js → p-C-ENnZzq.js} +2 -2
  100. package/dist/components/{p-BPyymeuR.js → p-C2U48kDH.js} +2 -2
  101. package/dist/components/{p-CKRJX0Y0.js → p-C7mCjS2t.js} +2 -2
  102. package/dist/components/{p-6B411hQA.js → p-CL8XL1eh.js} +2 -2
  103. package/dist/components/{p-DfvDNcoq.js → p-CMZVPEZ_.js} +2 -2
  104. package/dist/components/{p-BtuYufL3.js → p-CWL61nKt.js} +2 -2
  105. package/dist/components/p-CWL61nKt.js.map +1 -0
  106. package/dist/components/p-CWLrXsDQ.js +2 -0
  107. package/dist/components/{p-D2cjoj2r.js.map → p-CWLrXsDQ.js.map} +1 -1
  108. package/dist/components/{p-Di81y9Q2.js → p-CX7QIytv.js} +2 -2
  109. package/dist/components/p-CXduurfd.js +2 -0
  110. package/dist/components/p-CXduurfd.js.map +1 -0
  111. package/dist/components/p-CbAfTqlb.js +2 -0
  112. package/dist/components/{p-CuJ3J6OJ.js.map → p-CbAfTqlb.js.map} +1 -1
  113. package/dist/components/{p-DVuxzrCC.js → p-CfTThRNX.js} +2 -2
  114. package/dist/components/{p-BmNpPyzf.js → p-CkLffZGn.js} +2 -2
  115. package/dist/components/{p-B4_0Ys4w.js → p-CkyXU1YX.js} +2 -2
  116. package/dist/components/{p-iCjUWcp7.js → p-CywKWfgD.js} +2 -2
  117. package/dist/components/{p-BR_oMaas.js → p-D3UKwTEo.js} +2 -2
  118. package/dist/components/{p-Bl6A5AJq.js → p-D7z9bJ6n.js} +2 -2
  119. package/dist/components/{p-DaqFuVKZ.js → p-DAftUxvL.js} +2 -2
  120. package/dist/components/{p-BFfHIu6y.js → p-DQ94PkZA.js} +2 -2
  121. package/dist/components/{p-B-kRByho.js → p-DSpq7xQF.js} +2 -2
  122. package/dist/components/{p-og48Kh2i.js → p-DzM3TcyQ.js} +2 -2
  123. package/dist/components/p-GbTasczF.js +2 -0
  124. package/dist/components/{p-Ca6s5fLR.js → p-Mmr9b1bB.js} +2 -2
  125. package/dist/components/p-UH2AGfR0.js +2 -0
  126. package/dist/components/{p-DX4c3kZ1.js.map → p-UH2AGfR0.js.map} +1 -1
  127. package/dist/components/{p-CxgMUvqg.js → p-Z2zfShlF.js} +2 -2
  128. package/dist/components/{p-Bmo4T96l.js → p-_mClULFL.js} +2 -2
  129. package/dist/components/{p-Bb4f5SuF.js → p-jf1zCsuw.js} +2 -2
  130. package/dist/components/{p-Eep5mxtv.js → p-oiR4IoH1.js} +2 -2
  131. package/dist/components/{p-DHF5cLzr.js → p-u2OZHaLY.js} +2 -2
  132. package/dist/docs/components.json +180 -662
  133. package/dist/lib/utils/chart-grammar.d.ts +359 -0
  134. package/dist/lib/utils/index.d.ts +2 -0
  135. package/dist/lib/utils/index.js +504 -0
  136. package/dist/lib/utils/index.js.map +4 -4
  137. package/dist/lib/utils/token-defaults.d.ts +3 -0
  138. package/dist/mcp-data/registry/banner.json +2 -2
  139. package/dist/mcp-data/registry/card-chart.json +238 -0
  140. package/dist/mcp-data/registry/card-overview.json +2 -2
  141. package/dist/mcp-data/registry/card-setting.json +2 -2
  142. package/dist/mcp-data/registry/chart-legend.json +11 -18
  143. package/dist/mcp-data/registry/chart.json +258 -0
  144. package/dist/mcp-data/registry/mobile-bar-nav.json +3 -3
  145. package/dist/mcp-data/registry/registry.json +108 -376
  146. package/dist/mcp-data/registry/tooltip-chart.json +253 -0
  147. package/dist/mcp-data/registry/tooltip.json +2 -2
  148. package/dist/react/components.d.ts +3 -5
  149. package/dist/react/components.js +3 -5
  150. package/dist/react/ds-card-chart.d.ts +12 -0
  151. package/dist/react/ds-card-chart.js +12 -0
  152. package/dist/react/ds-chart.d.ts +12 -0
  153. package/dist/react/ds-chart.js +12 -0
  154. package/dist/react/{ds-chart-bar.d.ts → ds-tooltip-chart.d.ts} +3 -3
  155. package/dist/react/ds-tooltip-chart.js +12 -0
  156. package/dist/types/components/{CardDataViz/CardDataViz.d.ts → CardChart/CardChart.d.ts} +9 -13
  157. package/dist/types/components/CardChart/index.d.ts +2 -0
  158. package/dist/types/components/Chart/Chart.d.ts +66 -0
  159. package/dist/types/components/Chart/index.d.ts +2 -0
  160. package/dist/types/components/ChartLegend/ChartLegend.d.ts +1 -1
  161. package/dist/types/components/{TooltipDataViz/TooltipDataViz.d.ts → TooltipChart/TooltipChart.d.ts} +15 -6
  162. package/dist/types/components/TooltipChart/index.d.ts +2 -0
  163. package/dist/types/components.d.ts +129 -294
  164. package/dist/types/utils/chart-grammar.d.ts +360 -0
  165. package/dist/types/utils/chart-scene.d.ts +128 -0
  166. package/dist/types/utils/chart-theme.d.ts +27 -0
  167. package/dist/types/utils/chart-types.d.ts +0 -13
  168. package/dist/types/utils/index.d.ts +2 -0
  169. package/dist/types/utils/token-defaults.d.ts +3 -0
  170. package/package.json +1 -1
  171. package/dist/angular/ds-card-data-viz.d.ts +0 -18
  172. package/dist/angular/ds-chart-bar.d.ts +0 -12
  173. package/dist/angular/ds-chart-bar.js +0 -38
  174. package/dist/angular/ds-chart-donut.d.ts +0 -19
  175. package/dist/angular/ds-chart-line.d.ts +0 -12
  176. package/dist/angular/ds-tooltip-data-viz.d.ts +0 -12
  177. package/dist/angular/ds-tooltip-data-viz.js +0 -38
  178. package/dist/components/ds-card-data-viz.js +0 -2
  179. package/dist/components/ds-card-data-viz.js.map +0 -1
  180. package/dist/components/ds-chart-bar.js +0 -2
  181. package/dist/components/ds-chart-bar.js.map +0 -1
  182. package/dist/components/ds-chart-donut.d.ts +0 -11
  183. package/dist/components/ds-chart-donut.js +0 -2
  184. package/dist/components/ds-chart-donut.js.map +0 -1
  185. package/dist/components/ds-chart-line.js +0 -2
  186. package/dist/components/ds-chart-line.js.map +0 -1
  187. package/dist/components/ds-tooltip-data-viz.d.ts +0 -11
  188. package/dist/components/ds-tooltip-data-viz.js +0 -2
  189. package/dist/components/p-1S9AW2MA.js +0 -2
  190. package/dist/components/p-B6Vuayt6.js +0 -2
  191. package/dist/components/p-B6Vuayt6.js.map +0 -1
  192. package/dist/components/p-BBpASejH.js +0 -2
  193. package/dist/components/p-BBpASejH.js.map +0 -1
  194. package/dist/components/p-BtuYufL3.js.map +0 -1
  195. package/dist/components/p-BybqPD8K.js +0 -2
  196. package/dist/components/p-BybqPD8K.js.map +0 -1
  197. package/dist/components/p-C4uYvyq6.js +0 -2
  198. package/dist/components/p-C4uYvyq6.js.map +0 -1
  199. package/dist/components/p-CbjFUpOj.js +0 -2
  200. package/dist/components/p-CbjFUpOj.js.map +0 -1
  201. package/dist/components/p-CrCGIx8s.js +0 -2
  202. package/dist/components/p-CrCGIx8s.js.map +0 -1
  203. package/dist/components/p-CuJ3J6OJ.js +0 -2
  204. package/dist/components/p-D0bM3cKj.js +0 -2
  205. package/dist/components/p-D2cjoj2r.js +0 -2
  206. package/dist/components/p-DX4c3kZ1.js +0 -2
  207. package/dist/components/p-DXewjzkM.js +0 -2
  208. package/dist/components/p-DXewjzkM.js.map +0 -1
  209. package/dist/components/p-yhj1lIPx.js +0 -2
  210. package/dist/mcp-data/registry/card-data-viz.json +0 -241
  211. package/dist/mcp-data/registry/chart-bar.json +0 -245
  212. package/dist/mcp-data/registry/chart-donut.json +0 -344
  213. package/dist/mcp-data/registry/chart-line.json +0 -223
  214. package/dist/mcp-data/registry/tooltip-data-viz.json +0 -224
  215. package/dist/react/ds-card-data-viz.d.ts +0 -12
  216. package/dist/react/ds-card-data-viz.js +0 -12
  217. package/dist/react/ds-chart-bar.js +0 -12
  218. package/dist/react/ds-chart-donut.d.ts +0 -12
  219. package/dist/react/ds-chart-donut.js +0 -12
  220. package/dist/react/ds-chart-line.d.ts +0 -9
  221. package/dist/react/ds-chart-line.js +0 -12
  222. package/dist/react/ds-tooltip-data-viz.d.ts +0 -9
  223. package/dist/react/ds-tooltip-data-viz.js +0 -12
  224. package/dist/types/components/CardDataViz/index.d.ts +0 -2
  225. package/dist/types/components/ChartBar/ChartBar.d.ts +0 -31
  226. package/dist/types/components/ChartBar/index.d.ts +0 -3
  227. package/dist/types/components/ChartDonut/ChartDonut.d.ts +0 -72
  228. package/dist/types/components/ChartDonut/index.d.ts +0 -2
  229. package/dist/types/components/ChartLine/ChartLine.d.ts +0 -23
  230. package/dist/types/components/ChartLine/index.d.ts +0 -2
  231. package/dist/types/components/TooltipDataViz/index.d.ts +0 -2
  232. /package/dist/components/{ds-tooltip-data-viz.js.map → ds-tooltip-chart.js.map} +0 -0
  233. /package/dist/components/{p-IYy-jODg.js.map → p-1Zbh1MRy.js.map} +0 -0
  234. /package/dist/components/{p-wOOAzVMC.js.map → p-BVsLc3t5.js.map} +0 -0
  235. /package/dist/components/{p-BBtjABBS.js.map → p-BjiRqLtB.js.map} +0 -0
  236. /package/dist/components/{p-Bsfpxto1.js.map → p-BsBw-w1q.js.map} +0 -0
  237. /package/dist/components/{p-B6RrZQqw.js.map → p-C-ENnZzq.js.map} +0 -0
  238. /package/dist/components/{p-BPyymeuR.js.map → p-C2U48kDH.js.map} +0 -0
  239. /package/dist/components/{p-CKRJX0Y0.js.map → p-C7mCjS2t.js.map} +0 -0
  240. /package/dist/components/{p-6B411hQA.js.map → p-CL8XL1eh.js.map} +0 -0
  241. /package/dist/components/{p-DfvDNcoq.js.map → p-CMZVPEZ_.js.map} +0 -0
  242. /package/dist/components/{p-Di81y9Q2.js.map → p-CX7QIytv.js.map} +0 -0
  243. /package/dist/components/{p-DVuxzrCC.js.map → p-CfTThRNX.js.map} +0 -0
  244. /package/dist/components/{p-BmNpPyzf.js.map → p-CkLffZGn.js.map} +0 -0
  245. /package/dist/components/{p-B4_0Ys4w.js.map → p-CkyXU1YX.js.map} +0 -0
  246. /package/dist/components/{p-iCjUWcp7.js.map → p-CywKWfgD.js.map} +0 -0
  247. /package/dist/components/{p-BR_oMaas.js.map → p-D3UKwTEo.js.map} +0 -0
  248. /package/dist/components/{p-Bl6A5AJq.js.map → p-D7z9bJ6n.js.map} +0 -0
  249. /package/dist/components/{p-DaqFuVKZ.js.map → p-DAftUxvL.js.map} +0 -0
  250. /package/dist/components/{p-BFfHIu6y.js.map → p-DQ94PkZA.js.map} +0 -0
  251. /package/dist/components/{p-B-kRByho.js.map → p-DSpq7xQF.js.map} +0 -0
  252. /package/dist/components/{p-og48Kh2i.js.map → p-DzM3TcyQ.js.map} +0 -0
  253. /package/dist/components/{p-yhj1lIPx.js.map → p-GbTasczF.js.map} +0 -0
  254. /package/dist/components/{p-Ca6s5fLR.js.map → p-Mmr9b1bB.js.map} +0 -0
  255. /package/dist/components/{p-CxgMUvqg.js.map → p-Z2zfShlF.js.map} +0 -0
  256. /package/dist/components/{p-Bmo4T96l.js.map → p-_mClULFL.js.map} +0 -0
  257. /package/dist/components/{p-Bb4f5SuF.js.map → p-jf1zCsuw.js.map} +0 -0
  258. /package/dist/components/{p-Eep5mxtv.js.map → p-oiR4IoH1.js.map} +0 -0
  259. /package/dist/components/{p-DHF5cLzr.js.map → p-u2OZHaLY.js.map} +0 -0
@@ -288,6 +288,9 @@ import {
288
288
  dimensionSpace200,
289
289
  dimensionSpace300,
290
290
  dimensionSpace400,
291
+ dimensionStrokeWidth012,
292
+ dimensionStrokeWidth025,
293
+ dimensionStrokeWidth037,
291
294
  typographyLineheightLg,
292
295
  typographyLineheightMd,
293
296
  typographyLineheightSm,
@@ -310,6 +313,9 @@ var TOKEN_DEFAULTS = {
310
313
  space300: dimensionSpace300,
311
314
  space400: dimensionSpace400,
312
315
  radius025: dimensionRadius025,
316
+ strokeWidth012: dimensionStrokeWidth012,
317
+ strokeWidth025: dimensionStrokeWidth025,
318
+ strokeWidth037: dimensionStrokeWidth037,
313
319
  size200: dimensionSize200,
314
320
  size300: dimensionSize300,
315
321
  size400: dimensionSize400,
@@ -422,6 +428,479 @@ function controlWidthClass(width) {
422
428
  };
423
429
  }
424
430
 
431
+ // node_modules/d3-array/src/ascending.js
432
+ function ascending(a, b) {
433
+ return a == null || b == null ? NaN : a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;
434
+ }
435
+
436
+ // node_modules/d3-array/src/descending.js
437
+ function descending(a, b) {
438
+ return a == null || b == null ? NaN : b < a ? -1 : b > a ? 1 : b >= a ? 0 : NaN;
439
+ }
440
+
441
+ // node_modules/d3-array/src/bisector.js
442
+ function bisector(f) {
443
+ let compare1, compare2, delta;
444
+ if (f.length !== 2) {
445
+ compare1 = ascending;
446
+ compare2 = (d, x) => ascending(f(d), x);
447
+ delta = (d, x) => f(d) - x;
448
+ } else {
449
+ compare1 = f === ascending || f === descending ? f : zero;
450
+ compare2 = f;
451
+ delta = f;
452
+ }
453
+ function left(a, x, lo = 0, hi = a.length) {
454
+ if (lo < hi) {
455
+ if (compare1(x, x) !== 0) return hi;
456
+ do {
457
+ const mid = lo + hi >>> 1;
458
+ if (compare2(a[mid], x) < 0) lo = mid + 1;
459
+ else hi = mid;
460
+ } while (lo < hi);
461
+ }
462
+ return lo;
463
+ }
464
+ function right(a, x, lo = 0, hi = a.length) {
465
+ if (lo < hi) {
466
+ if (compare1(x, x) !== 0) return hi;
467
+ do {
468
+ const mid = lo + hi >>> 1;
469
+ if (compare2(a[mid], x) <= 0) lo = mid + 1;
470
+ else hi = mid;
471
+ } while (lo < hi);
472
+ }
473
+ return lo;
474
+ }
475
+ function center(a, x, lo = 0, hi = a.length) {
476
+ const i = left(a, x, lo, hi - 1);
477
+ return i > lo && delta(a[i - 1], x) > -delta(a[i], x) ? i - 1 : i;
478
+ }
479
+ return { left, center, right };
480
+ }
481
+ function zero() {
482
+ return 0;
483
+ }
484
+
485
+ // node_modules/d3-array/src/number.js
486
+ function number(x) {
487
+ return x === null ? NaN : +x;
488
+ }
489
+
490
+ // node_modules/d3-array/src/bisect.js
491
+ var ascendingBisect = bisector(ascending);
492
+ var bisectRight = ascendingBisect.right;
493
+ var bisectLeft = ascendingBisect.left;
494
+ var bisectCenter = bisector(number).center;
495
+ var bisect_default = bisectRight;
496
+
497
+ // node_modules/d3-array/src/count.js
498
+ function count(values, valueof) {
499
+ let count2 = 0;
500
+ if (valueof === void 0) {
501
+ for (let value of values) {
502
+ if (value != null && (value = +value) >= value) {
503
+ ++count2;
504
+ }
505
+ }
506
+ } else {
507
+ let index = -1;
508
+ for (let value of values) {
509
+ if ((value = valueof(value, ++index, values)) != null && (value = +value) >= value) {
510
+ ++count2;
511
+ }
512
+ }
513
+ }
514
+ return count2;
515
+ }
516
+
517
+ // node_modules/d3-array/src/variance.js
518
+ function variance(values, valueof) {
519
+ let count2 = 0;
520
+ let delta;
521
+ let mean = 0;
522
+ let sum = 0;
523
+ if (valueof === void 0) {
524
+ for (let value of values) {
525
+ if (value != null && (value = +value) >= value) {
526
+ delta = value - mean;
527
+ mean += delta / ++count2;
528
+ sum += delta * (value - mean);
529
+ }
530
+ }
531
+ } else {
532
+ let index = -1;
533
+ for (let value of values) {
534
+ if ((value = valueof(value, ++index, values)) != null && (value = +value) >= value) {
535
+ delta = value - mean;
536
+ mean += delta / ++count2;
537
+ sum += delta * (value - mean);
538
+ }
539
+ }
540
+ }
541
+ if (count2 > 1) return sum / (count2 - 1);
542
+ }
543
+
544
+ // node_modules/d3-array/src/deviation.js
545
+ function deviation(values, valueof) {
546
+ const v = variance(values, valueof);
547
+ return v ? Math.sqrt(v) : v;
548
+ }
549
+
550
+ // node_modules/d3-array/src/extent.js
551
+ function extent(values, valueof) {
552
+ let min;
553
+ let max;
554
+ if (valueof === void 0) {
555
+ for (const value of values) {
556
+ if (value != null) {
557
+ if (min === void 0) {
558
+ if (value >= value) min = max = value;
559
+ } else {
560
+ if (min > value) min = value;
561
+ if (max < value) max = value;
562
+ }
563
+ }
564
+ }
565
+ } else {
566
+ let index = -1;
567
+ for (let value of values) {
568
+ if ((value = valueof(value, ++index, values)) != null) {
569
+ if (min === void 0) {
570
+ if (value >= value) min = max = value;
571
+ } else {
572
+ if (min > value) min = value;
573
+ if (max < value) max = value;
574
+ }
575
+ }
576
+ }
577
+ }
578
+ return [min, max];
579
+ }
580
+
581
+ // node_modules/d3-array/src/identity.js
582
+ function identity(x) {
583
+ return x;
584
+ }
585
+
586
+ // node_modules/d3-array/src/array.js
587
+ var array = Array.prototype;
588
+ var slice = array.slice;
589
+ var map = array.map;
590
+
591
+ // node_modules/d3-array/src/constant.js
592
+ function constant(x) {
593
+ return () => x;
594
+ }
595
+
596
+ // node_modules/d3-array/src/ticks.js
597
+ var e10 = Math.sqrt(50);
598
+ var e5 = Math.sqrt(10);
599
+ var e2 = Math.sqrt(2);
600
+ function tickSpec(start, stop, count2) {
601
+ const step = (stop - start) / Math.max(0, count2), power = Math.floor(Math.log10(step)), error = step / Math.pow(10, power), factor = error >= e10 ? 10 : error >= e5 ? 5 : error >= e2 ? 2 : 1;
602
+ let i1, i2, inc;
603
+ if (power < 0) {
604
+ inc = Math.pow(10, -power) / factor;
605
+ i1 = Math.round(start * inc);
606
+ i2 = Math.round(stop * inc);
607
+ if (i1 / inc < start) ++i1;
608
+ if (i2 / inc > stop) --i2;
609
+ inc = -inc;
610
+ } else {
611
+ inc = Math.pow(10, power) * factor;
612
+ i1 = Math.round(start / inc);
613
+ i2 = Math.round(stop / inc);
614
+ if (i1 * inc < start) ++i1;
615
+ if (i2 * inc > stop) --i2;
616
+ }
617
+ if (i2 < i1 && 0.5 <= count2 && count2 < 2) return tickSpec(start, stop, count2 * 2);
618
+ return [i1, i2, inc];
619
+ }
620
+ function ticks(start, stop, count2) {
621
+ stop = +stop, start = +start, count2 = +count2;
622
+ if (!(count2 > 0)) return [];
623
+ if (start === stop) return [start];
624
+ const reverse = stop < start, [i1, i2, inc] = reverse ? tickSpec(stop, start, count2) : tickSpec(start, stop, count2);
625
+ if (!(i2 >= i1)) return [];
626
+ const n = i2 - i1 + 1, ticks2 = new Array(n);
627
+ if (reverse) {
628
+ if (inc < 0) for (let i = 0; i < n; ++i) ticks2[i] = (i2 - i) / -inc;
629
+ else for (let i = 0; i < n; ++i) ticks2[i] = (i2 - i) * inc;
630
+ } else {
631
+ if (inc < 0) for (let i = 0; i < n; ++i) ticks2[i] = (i1 + i) / -inc;
632
+ else for (let i = 0; i < n; ++i) ticks2[i] = (i1 + i) * inc;
633
+ }
634
+ return ticks2;
635
+ }
636
+ function tickIncrement(start, stop, count2) {
637
+ stop = +stop, start = +start, count2 = +count2;
638
+ return tickSpec(start, stop, count2)[2];
639
+ }
640
+
641
+ // node_modules/d3-array/src/nice.js
642
+ function nice(start, stop, count2) {
643
+ let prestep;
644
+ while (true) {
645
+ const step = tickIncrement(start, stop, count2);
646
+ if (step === prestep || step === 0 || !isFinite(step)) {
647
+ return [start, stop];
648
+ } else if (step > 0) {
649
+ start = Math.floor(start / step) * step;
650
+ stop = Math.ceil(stop / step) * step;
651
+ } else if (step < 0) {
652
+ start = Math.ceil(start * step) / step;
653
+ stop = Math.floor(stop * step) / step;
654
+ }
655
+ prestep = step;
656
+ }
657
+ }
658
+
659
+ // node_modules/d3-array/src/threshold/sturges.js
660
+ function thresholdSturges(values) {
661
+ return Math.max(1, Math.ceil(Math.log(count(values)) / Math.LN2) + 1);
662
+ }
663
+
664
+ // node_modules/d3-array/src/bin.js
665
+ function bin() {
666
+ var value = identity, domain = extent, threshold = thresholdSturges;
667
+ function histogram(data) {
668
+ if (!Array.isArray(data)) data = Array.from(data);
669
+ var i, n = data.length, x, step, values = new Array(n);
670
+ for (i = 0; i < n; ++i) {
671
+ values[i] = value(data[i], i, data);
672
+ }
673
+ var xz = domain(values), x0 = xz[0], x1 = xz[1], tz = threshold(values, x0, x1);
674
+ if (!Array.isArray(tz)) {
675
+ const max = x1, tn = +tz;
676
+ if (domain === extent) [x0, x1] = nice(x0, x1, tn);
677
+ tz = ticks(x0, x1, tn);
678
+ if (tz[0] <= x0) step = tickIncrement(x0, x1, tn);
679
+ if (tz[tz.length - 1] >= x1) {
680
+ if (max >= x1 && domain === extent) {
681
+ const step2 = tickIncrement(x0, x1, tn);
682
+ if (isFinite(step2)) {
683
+ if (step2 > 0) {
684
+ x1 = (Math.floor(x1 / step2) + 1) * step2;
685
+ } else if (step2 < 0) {
686
+ x1 = (Math.ceil(x1 * -step2) + 1) / -step2;
687
+ }
688
+ }
689
+ } else {
690
+ tz.pop();
691
+ }
692
+ }
693
+ }
694
+ var m = tz.length, a = 0, b = m;
695
+ while (tz[a] <= x0) ++a;
696
+ while (tz[b - 1] > x1) --b;
697
+ if (a || b < m) tz = tz.slice(a, b), m = b - a;
698
+ var bins = new Array(m + 1), bin2;
699
+ for (i = 0; i <= m; ++i) {
700
+ bin2 = bins[i] = [];
701
+ bin2.x0 = i > 0 ? tz[i - 1] : x0;
702
+ bin2.x1 = i < m ? tz[i] : x1;
703
+ }
704
+ if (isFinite(step)) {
705
+ if (step > 0) {
706
+ for (i = 0; i < n; ++i) {
707
+ if ((x = values[i]) != null && x0 <= x && x <= x1) {
708
+ bins[Math.min(m, Math.floor((x - x0) / step))].push(data[i]);
709
+ }
710
+ }
711
+ } else if (step < 0) {
712
+ for (i = 0; i < n; ++i) {
713
+ if ((x = values[i]) != null && x0 <= x && x <= x1) {
714
+ const j = Math.floor((x0 - x) * step);
715
+ bins[Math.min(m, j + (tz[j] <= x))].push(data[i]);
716
+ }
717
+ }
718
+ }
719
+ } else {
720
+ for (i = 0; i < n; ++i) {
721
+ if ((x = values[i]) != null && x0 <= x && x <= x1) {
722
+ bins[bisect_default(tz, x, 0, m)].push(data[i]);
723
+ }
724
+ }
725
+ }
726
+ return bins;
727
+ }
728
+ histogram.value = function(_) {
729
+ return arguments.length ? (value = typeof _ === "function" ? _ : constant(_), histogram) : value;
730
+ };
731
+ histogram.domain = function(_) {
732
+ return arguments.length ? (domain = typeof _ === "function" ? _ : constant([_[0], _[1]]), histogram) : domain;
733
+ };
734
+ histogram.thresholds = function(_) {
735
+ return arguments.length ? (threshold = typeof _ === "function" ? _ : constant(Array.isArray(_) ? slice.call(_) : _), histogram) : threshold;
736
+ };
737
+ return histogram;
738
+ }
739
+
740
+ // node_modules/d3-array/src/quantile.js
741
+ function quantileSorted(values, p, valueof = number) {
742
+ if (!(n = values.length) || isNaN(p = +p)) return;
743
+ if (p <= 0 || n < 2) return +valueof(values[0], 0, values);
744
+ if (p >= 1) return +valueof(values[n - 1], n - 1, values);
745
+ var n, i = (n - 1) * p, i0 = Math.floor(i), value0 = +valueof(values[i0], i0, values), value1 = +valueof(values[i0 + 1], i0 + 1, values);
746
+ return value0 + (value1 - value0) * (i - i0);
747
+ }
748
+
749
+ // src/wc/utils/chart-grammar.ts
750
+ function defineChart(chart) {
751
+ return { chart };
752
+ }
753
+ function createMark(kind, data, options) {
754
+ return { kind, data, options };
755
+ }
756
+ function polar(options) {
757
+ return { kind: "polar", data: [], options };
758
+ }
759
+ var identity2 = (value) => value;
760
+ function lineY(data, options = {}) {
761
+ return createMark("line-y", data, { x: options.x ?? ((_, index) => index), y: options.y ?? identity2, ...options });
762
+ }
763
+ function areaY(data, options = {}) {
764
+ return createMark("area-y", data, { x: options.x ?? ((_, index) => index), y: options.y ?? identity2, ...options });
765
+ }
766
+ function barY(data, options = {}) {
767
+ return createMark("bar-y", data, { x: options.x ?? ((_, index) => index), y: options.y ?? identity2, ...options });
768
+ }
769
+ function barX(data, options = {}) {
770
+ return createMark("bar-x", data, { x: options.x ?? identity2, y: options.y ?? ((_, index) => index), ...options });
771
+ }
772
+ function boxY(data, options = {}) {
773
+ return createMark("box-y", data, { x: options.x ?? (() => "distribution"), y: options.y ?? identity2, ...options });
774
+ }
775
+ function dot(data, options = {}) {
776
+ return createMark("dot", data, { x: options.x ?? ((_, index) => index), y: options.y ?? identity2, ...options });
777
+ }
778
+ function ruleX(data, options = {}) {
779
+ return createMark("rule-x", data, { x: options.x ?? identity2, ...options });
780
+ }
781
+ function ruleY(data, options = {}) {
782
+ return createMark("rule-y", data, { y: options.y ?? identity2, ...options });
783
+ }
784
+ function bandX(data, options) {
785
+ return createMark("band-x", data, options);
786
+ }
787
+ function bandY(data, options) {
788
+ return createMark("band-y", data, options);
789
+ }
790
+ function rect(data, options) {
791
+ return createMark("rect", data, options);
792
+ }
793
+ function cell(data, options) {
794
+ return createMark("cell", data, options);
795
+ }
796
+ function textMark(data, options = {}) {
797
+ return createMark("text", data, { x: options.x ?? ((_, index) => index), y: options.y ?? ((_, index) => index), text: options.text ?? identity2, ...options });
798
+ }
799
+ function arcMark(data, options = {}) {
800
+ return createMark("arc", data, { theta1: options.theta1 ?? "theta1", theta2: options.theta2 ?? "theta2", ...options });
801
+ }
802
+ function radialLine(data, options = {}) {
803
+ return createMark("radial-line", data, { angle: options.angle ?? ((_, index) => index), radius: options.radius ?? identity2, ...options });
804
+ }
805
+ function radialArea(data, options = {}) {
806
+ return createMark("radial-area", data, { angle: options.angle ?? ((_, index) => index), radius: options.radius ?? identity2, ...options });
807
+ }
808
+ function radialDot(data, options = {}) {
809
+ return createMark("radial-dot", data, { angle: options.angle ?? ((_, index) => index), radius: options.radius ?? identity2, ...options });
810
+ }
811
+ function channelValue(datum, index, data, channel) {
812
+ if (channel === void 0) return void 0;
813
+ if (typeof channel === "function") return channel(datum, index, data);
814
+ if (datum == null || typeof datum !== "object") return void 0;
815
+ return datum[channel];
816
+ }
817
+ function normalizeStack(data, options) {
818
+ const rows = data.map((datum, index) => {
819
+ const group = channelValue(datum, index, data, options.group);
820
+ const series = channelValue(datum, index, data, options.series);
821
+ const value = channelValue(datum, index, data, options.value);
822
+ if (group === void 0 || series === void 0) throw new TypeError("normalizeStack requires a group and series key for every row.");
823
+ if (typeof value !== "number" || !Number.isFinite(value) || value < 0) throw new RangeError("normalizeStack values must be finite, non-negative numbers.");
824
+ return { data: datum, group, series, value };
825
+ });
826
+ const totals = /* @__PURE__ */ new Map();
827
+ rows.forEach((row) => totals.set(chartValueKey(row.group), (totals.get(chartValueKey(row.group)) ?? 0) + row.value));
828
+ return rows.map((row) => ({ ...row, proportion: (totals.get(chartValueKey(row.group)) ?? 0) > 0 ? row.value / totals.get(chartValueKey(row.group)) : 0 }));
829
+ }
830
+ function pieLayout(data, options) {
831
+ const ordered = data.map((datum, index) => ({ datum, index }));
832
+ if (options.sort) ordered.sort((a, b) => options.sort?.(a.datum, b.datum) ?? 0);
833
+ const values = ordered.map(({ datum, index }) => {
834
+ const value = channelValue(datum, index, data, options.value);
835
+ return typeof value === "number" && Number.isFinite(value) && value > 0 ? value : 0;
836
+ });
837
+ const total = values.reduce((sum, value) => sum + value, 0);
838
+ let position = 0;
839
+ return ordered.flatMap(({ datum, index }, orderedIndex) => {
840
+ const value = values[orderedIndex] ?? 0;
841
+ if (!(value > 0) || !(total > 0)) return [];
842
+ const theta1 = position;
843
+ position += value / total;
844
+ const key = channelValue(datum, index, data, options.key) ?? index;
845
+ const label = channelValue(datum, index, data, options.label) ?? String(key);
846
+ return [{ data: datum, index, key, label, value, theta1, theta2: position }];
847
+ });
848
+ }
849
+ function binX(data, options) {
850
+ const generator = bin().value((datum, index, rows) => channelValue(datum, index, Array.from(rows), options.value) ?? Number.NaN);
851
+ if (typeof options.thresholds === "number") generator.thresholds(options.thresholds);
852
+ else if (options.thresholds !== void 0) generator.thresholds([...options.thresholds]);
853
+ const bins = generator(data);
854
+ let cumulative = 0;
855
+ return bins.flatMap((bin2) => {
856
+ const x1 = bin2.x0;
857
+ const x2 = bin2.x1;
858
+ if (x1 === void 0 || x2 === void 0) return [];
859
+ cumulative += bin2.length;
860
+ return [{ key: `bin:${x1}:${x2}`, x1, x2, x: (x1 + x2) / 2, count: bin2.length, cumulative, rows: [...bin2] }];
861
+ });
862
+ }
863
+ function cumulativeBins(bins) {
864
+ let cumulative = 0;
865
+ return bins.map((bin2) => ({ ...bin2, cumulative: cumulative += bin2.count }));
866
+ }
867
+ function densityX(data, options) {
868
+ const values = data.map((datum, index) => channelValue(datum, index, data, options.value)).filter((value) => typeof value === "number" && Number.isFinite(value)).sort((a, b) => a - b);
869
+ if (values.length === 0) return [];
870
+ const [minimum = 0, maximum = minimum + 1] = extent(values);
871
+ const span = Math.max(Number.EPSILON, maximum - minimum);
872
+ const sampleCount = Math.max(8, options.samples ?? 48);
873
+ const sampleValues = ticks(minimum, maximum, sampleCount);
874
+ const sigma = deviation(values) ?? span / 6;
875
+ const bandwidth = Math.max(Number.EPSILON, options.bandwidth ?? 1.06 * sigma * Math.pow(values.length, -0.2));
876
+ const normalizer = 1 / (Math.sqrt(2 * Math.PI) * bandwidth * values.length);
877
+ return sampleValues.map((x) => ({
878
+ key: `density:${x}`,
879
+ x,
880
+ density: values.reduce((sum, value) => {
881
+ const u = (x - value) / bandwidth;
882
+ return sum + Math.exp(-0.5 * u * u);
883
+ }, 0) * normalizer
884
+ }));
885
+ }
886
+ function boxStatistics(values, whisker = 1.5) {
887
+ const sorted = values.filter(Number.isFinite).sort((a, b) => a - b);
888
+ if (sorted.length === 0) return void 0;
889
+ const q1 = quantileSorted(sorted, 0.25);
890
+ const median = quantileSorted(sorted, 0.5);
891
+ const q3 = quantileSorted(sorted, 0.75);
892
+ const iqr = q3 - q1;
893
+ const lowerFence = q1 - whisker * iqr;
894
+ const upperFence = q3 + whisker * iqr;
895
+ const lower = sorted.find((value) => value >= lowerFence) ?? sorted[0];
896
+ const upper = [...sorted].reverse().find((value) => value <= upperFence) ?? sorted[sorted.length - 1];
897
+ return { q1, median, q3, lower, upper, outliers: sorted.filter((value) => value < lower || value > upper) };
898
+ }
899
+ function chartValueKey(value) {
900
+ if (value instanceof Date) return `date:${value.getTime()}`;
901
+ return `${typeof value}:${String(value)}`;
902
+ }
903
+
425
904
  // src/wc/utils/control-text.ts
426
905
  var CONTROL_TEXT_VARIANT = {
427
906
  lg: "text-body-large",
@@ -457,15 +936,37 @@ export {
457
936
  SCROLL_EDGE_FADE_SIZE_VAR,
458
937
  TOKEN_CSS_LENGTHS,
459
938
  TOKEN_DEFAULTS,
939
+ arcMark,
940
+ areaY,
941
+ bandX,
942
+ bandY,
943
+ barX,
944
+ barY,
945
+ binX,
946
+ boxStatistics,
947
+ boxY,
948
+ cell,
460
949
  choicePopupMinWidth,
461
950
  clearCssLengthPxCache,
462
951
  computeMetricChange,
463
952
  controlWidthClass,
953
+ cumulativeBins,
954
+ defineChart,
955
+ densityX,
956
+ dot,
464
957
  formatCompactNumber,
465
958
  formatPercentage,
466
959
  isScrollAtEdge,
960
+ lineY,
961
+ normalizeStack,
467
962
  parseCssTimeMs,
963
+ pieLayout,
964
+ polar,
468
965
  prefersReducedMotion,
966
+ radialArea,
967
+ radialDot,
968
+ radialLine,
969
+ rect,
469
970
  registerIcons,
470
971
  resolveChoicePopupAlignOffset,
471
972
  resolveCssLengthPx,
@@ -477,6 +978,8 @@ export {
477
978
  restoreNumberArrayFormState,
478
979
  restoreStringArrayFormState,
479
980
  restoreStringFormState,
981
+ ruleX,
982
+ ruleY,
480
983
  scrollEdgeFadeClassMap,
481
984
  scrollEdgeFadeMaskImage,
482
985
  scrollEdgeFadeMaskStyle,
@@ -484,6 +987,7 @@ export {
484
987
  setFormControlValue,
485
988
  setRepeatedFormControlValue,
486
989
  setRequiredValidity,
990
+ textMark,
487
991
  truncateSvgTextToWidth
488
992
  };
489
993
  //# sourceMappingURL=index.js.map