@salesmind-ai/design-system 0.5.0 → 0.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 (257) hide show
  1. package/README.md +2 -0
  2. package/dist/Anton-Regular-MLEXVTB2.woff2 +0 -0
  3. package/dist/admin/index.cjs +5 -61
  4. package/dist/admin/index.css +0 -3918
  5. package/dist/admin/index.css.map +1 -1
  6. package/dist/admin/index.d.cts +1 -422
  7. package/dist/admin/index.d.ts +1 -422
  8. package/dist/admin/index.js +1 -5
  9. package/dist/blog/index.cjs +13 -34
  10. package/dist/blog/index.css +0 -579
  11. package/dist/blog/index.css.map +1 -1
  12. package/dist/blog/index.d.cts +1 -54
  13. package/dist/blog/index.d.ts +1 -54
  14. package/dist/blog/index.js +5 -6
  15. package/dist/charts/index.cjs +0 -46
  16. package/dist/charts/index.d.cts +1 -452
  17. package/dist/charts/index.d.ts +1 -452
  18. package/dist/charts/index.js +1 -3
  19. package/dist/{chunk-HDVAMYSG.js → chunk-27Y5ESMM.js} +7 -2
  20. package/dist/chunk-27Y5ESMM.js.map +1 -0
  21. package/dist/{chunk-YTYDQBVY.cjs → chunk-2VVRZBUR.cjs} +4 -4
  22. package/dist/{chunk-GQELL2MF.cjs → chunk-3NS6X2R4.cjs} +20 -203
  23. package/dist/chunk-3NS6X2R4.cjs.map +1 -0
  24. package/dist/{chunk-XEX2AEZK.cjs → chunk-65DTHLVX.cjs} +66 -186
  25. package/dist/chunk-65DTHLVX.cjs.map +1 -0
  26. package/dist/{chunk-QALDZ7WQ.js → chunk-6BUS7RMS.js} +21 -198
  27. package/dist/chunk-6BUS7RMS.js.map +1 -0
  28. package/dist/{chunk-BJZ2DKS5.cjs → chunk-6QIQCUYC.cjs} +11 -10
  29. package/dist/chunk-6QIQCUYC.cjs.map +1 -0
  30. package/dist/{chunk-H2Y6BSTL.cjs → chunk-7EUR3AKV.cjs} +1 -1
  31. package/dist/chunk-7EUR3AKV.cjs.map +1 -0
  32. package/dist/{chunk-VFJZQQZU.js → chunk-AMNY5TS3.js} +11 -10
  33. package/dist/chunk-AMNY5TS3.js.map +1 -0
  34. package/dist/{chunk-YJ6C3EKW.js → chunk-CLXLQCNQ.js} +52 -168
  35. package/dist/chunk-CLXLQCNQ.js.map +1 -0
  36. package/dist/{chunk-H2KQ3WSH.cjs → chunk-CVLD5RQK.cjs} +12 -14
  37. package/dist/chunk-CVLD5RQK.cjs.map +1 -0
  38. package/dist/chunk-EPD4ZEPY.cjs +344 -0
  39. package/dist/chunk-EPD4ZEPY.cjs.map +1 -0
  40. package/dist/chunk-FXYOSA4E.cjs +118 -0
  41. package/dist/chunk-FXYOSA4E.cjs.map +1 -0
  42. package/dist/{chunk-ECXBTUH6.cjs → chunk-GPHQGLR5.cjs} +27 -204
  43. package/dist/chunk-GPHQGLR5.cjs.map +1 -0
  44. package/dist/{chunk-Y26OHHMX.js → chunk-HHQ6J7B6.js} +513 -888
  45. package/dist/chunk-HHQ6J7B6.js.map +1 -0
  46. package/dist/chunk-JPUJWI7F.cjs +73 -0
  47. package/dist/chunk-JPUJWI7F.cjs.map +1 -0
  48. package/dist/{chunk-6UNG76Y2.js → chunk-K526GN7P.js} +2 -2
  49. package/dist/{chunk-SICKWUWB.js → chunk-KJHPOB3J.js} +1 -1
  50. package/dist/chunk-KJHPOB3J.js.map +1 -0
  51. package/dist/chunk-KXVFFEGD.js +60 -0
  52. package/dist/chunk-KXVFFEGD.js.map +1 -0
  53. package/dist/chunk-LQB7QLD3.js +288 -0
  54. package/dist/chunk-LQB7QLD3.js.map +1 -0
  55. package/dist/chunk-LUD52ZJF.cjs +726 -0
  56. package/dist/chunk-LUD52ZJF.cjs.map +1 -0
  57. package/dist/{chunk-7UZ5DETZ.js → chunk-MBAG654R.js} +4 -216
  58. package/dist/chunk-MBAG654R.js.map +1 -0
  59. package/dist/chunk-OMP6FAZ6.cjs +183 -0
  60. package/dist/chunk-OMP6FAZ6.cjs.map +1 -0
  61. package/dist/{chunk-WYH4TKS5.js → chunk-PBYRTNQ5.js} +6 -8
  62. package/dist/chunk-PBYRTNQ5.js.map +1 -0
  63. package/dist/chunk-PYREXCZK.js +679 -0
  64. package/dist/chunk-PYREXCZK.js.map +1 -0
  65. package/dist/{chunk-6D22TFLA.cjs → chunk-R3ZECV5P.cjs} +9 -4
  66. package/dist/chunk-R3ZECV5P.cjs.map +1 -0
  67. package/dist/{chunk-P5BOFE5A.js → chunk-RSLA2FJN.js} +28 -183
  68. package/dist/chunk-RSLA2FJN.js.map +1 -0
  69. package/dist/chunk-S46SKHMD.js +173 -0
  70. package/dist/chunk-S46SKHMD.js.map +1 -0
  71. package/dist/chunk-SFXTB7JL.js +190 -0
  72. package/dist/chunk-SFXTB7JL.js.map +1 -0
  73. package/dist/chunk-SGYXYMKZ.cjs +214 -0
  74. package/dist/chunk-SGYXYMKZ.cjs.map +1 -0
  75. package/dist/chunk-UGKYP6F3.cjs +296 -0
  76. package/dist/chunk-UGKYP6F3.cjs.map +1 -0
  77. package/dist/chunk-WB6XDNU7.js +115 -0
  78. package/dist/chunk-WB6XDNU7.js.map +1 -0
  79. package/dist/{chunk-LTPTW2US.cjs → chunk-WE4QIIVN.cjs} +592 -974
  80. package/dist/chunk-WE4QIIVN.cjs.map +1 -0
  81. package/dist/core/index.cjs +144 -626
  82. package/dist/core/index.css +178 -3567
  83. package/dist/core/index.css.map +1 -1
  84. package/dist/core/index.d.cts +940 -902
  85. package/dist/core/index.d.ts +940 -902
  86. package/dist/core/index.js +6 -12
  87. package/dist/i18n/index.cjs +54 -49
  88. package/dist/i18n/index.d.cts +46 -11
  89. package/dist/i18n/index.d.ts +46 -11
  90. package/dist/i18n/index.js +2 -1
  91. package/dist/index-BJ8rBqrO.d.cts +1100 -0
  92. package/dist/index-BxMqCbqE.d.ts +1100 -0
  93. package/dist/index.cjs +507 -1001
  94. package/dist/index.cjs.map +1 -1
  95. package/dist/index.css +6057 -16713
  96. package/dist/index.css.map +1 -1
  97. package/dist/index.d.cts +306 -21
  98. package/dist/index.d.ts +306 -21
  99. package/dist/index.js +274 -39
  100. package/dist/index.js.map +1 -1
  101. package/dist/marketing/index.cjs +33 -76
  102. package/dist/marketing/index.css +1896 -3234
  103. package/dist/marketing/index.css.map +1 -1
  104. package/dist/marketing/index.d.cts +3 -1351
  105. package/dist/marketing/index.d.ts +3 -1351
  106. package/dist/marketing/index.js +5 -8
  107. package/dist/motion/index.cjs +3 -20
  108. package/dist/motion/index.css +0 -580
  109. package/dist/motion/index.css.map +1 -1
  110. package/dist/motion/index.d.cts +1 -37
  111. package/dist/motion/index.d.ts +1 -37
  112. package/dist/motion/index.js +1 -2
  113. package/dist/nav/index.cjs +10 -35
  114. package/dist/nav/index.css +28 -580
  115. package/dist/nav/index.css.map +1 -1
  116. package/dist/nav/index.d.cts +2 -60
  117. package/dist/nav/index.d.ts +2 -60
  118. package/dist/nav/index.js +1 -2
  119. package/dist/report/index.cjs +1166 -175
  120. package/dist/report/index.cjs.map +1 -1
  121. package/dist/report/index.d.cts +208 -5
  122. package/dist/report/index.d.ts +208 -5
  123. package/dist/report/index.js +1141 -3
  124. package/dist/report/index.js.map +1 -1
  125. package/dist/sections/index.cjs +8 -10
  126. package/dist/sections/index.cjs.map +1 -1
  127. package/dist/sections/index.css +0 -206
  128. package/dist/sections/index.css.map +1 -1
  129. package/dist/sections/index.js +2 -4
  130. package/dist/sections/index.js.map +1 -1
  131. package/dist/social-media/index.cjs +4 -0
  132. package/dist/social-media/index.cjs.map +1 -0
  133. package/dist/social-media/index.d.cts +2 -0
  134. package/dist/social-media/index.d.ts +2 -0
  135. package/dist/social-media/index.js +3 -0
  136. package/dist/social-media/index.js.map +1 -0
  137. package/dist/social-proof/index.cjs +4 -36
  138. package/dist/social-proof/index.css +3 -1106
  139. package/dist/social-proof/index.css.map +1 -1
  140. package/dist/social-proof/index.d.cts +26 -171
  141. package/dist/social-proof/index.d.ts +26 -171
  142. package/dist/social-proof/index.js +1 -5
  143. package/dist/styles/styles.css +657 -2990
  144. package/dist/theme/index.cjs +12 -16
  145. package/dist/theme/index.css +1 -245
  146. package/dist/theme/index.css.map +1 -1
  147. package/dist/theme/index.d.cts +4 -1
  148. package/dist/theme/index.d.ts +4 -1
  149. package/dist/theme/index.js +2 -2
  150. package/dist/web/client/index.cjs +10 -10
  151. package/dist/web/client/index.css +118 -0
  152. package/dist/web/client/index.css.map +1 -1
  153. package/dist/web/client/index.js +2 -2
  154. package/dist/web/index.cjs +10 -10
  155. package/dist/web/index.css +118 -0
  156. package/dist/web/index.css.map +1 -1
  157. package/dist/web/index.js +2 -2
  158. package/package.json +10 -4
  159. package/dist/AppearancePanel-UT57J69V.d.cts +0 -51
  160. package/dist/AppearancePanel-UT57J69V.d.ts +0 -51
  161. package/dist/ExportMenu-A2TLFiVv.d.cts +0 -311
  162. package/dist/ExportMenu-C8qck5AT.d.ts +0 -311
  163. package/dist/Select-BdZmK0Lt.d.cts +0 -66
  164. package/dist/Select-BdZmK0Lt.d.ts +0 -66
  165. package/dist/chart-types-BGVVO-zl.d.cts +0 -208
  166. package/dist/chart-types-BGVVO-zl.d.ts +0 -208
  167. package/dist/charts/index.css +0 -1167
  168. package/dist/charts/index.css.map +0 -1
  169. package/dist/chunk-3BAQDW3V.cjs +0 -1207
  170. package/dist/chunk-3BAQDW3V.cjs.map +0 -1
  171. package/dist/chunk-3NKRFUAR.js +0 -37
  172. package/dist/chunk-3NKRFUAR.js.map +0 -1
  173. package/dist/chunk-3TGSIILM.cjs +0 -201
  174. package/dist/chunk-3TGSIILM.cjs.map +0 -1
  175. package/dist/chunk-4GM5BGBN.cjs +0 -801
  176. package/dist/chunk-4GM5BGBN.cjs.map +0 -1
  177. package/dist/chunk-5LA3T22E.cjs +0 -562
  178. package/dist/chunk-5LA3T22E.cjs.map +0 -1
  179. package/dist/chunk-5SN66B2X.js +0 -2542
  180. package/dist/chunk-5SN66B2X.js.map +0 -1
  181. package/dist/chunk-6D22TFLA.cjs.map +0 -1
  182. package/dist/chunk-6H4DSTXR.js +0 -786
  183. package/dist/chunk-6H4DSTXR.js.map +0 -1
  184. package/dist/chunk-6HKQ5ILL.cjs +0 -1624
  185. package/dist/chunk-6HKQ5ILL.cjs.map +0 -1
  186. package/dist/chunk-7PX2AZ6Y.js +0 -39
  187. package/dist/chunk-7PX2AZ6Y.js.map +0 -1
  188. package/dist/chunk-7UZ5DETZ.js.map +0 -1
  189. package/dist/chunk-B6AVAX4F.js +0 -1415
  190. package/dist/chunk-B6AVAX4F.js.map +0 -1
  191. package/dist/chunk-BJZ2DKS5.cjs.map +0 -1
  192. package/dist/chunk-BUTQSDQH.js +0 -200
  193. package/dist/chunk-BUTQSDQH.js.map +0 -1
  194. package/dist/chunk-C2BCDNAV.js +0 -24
  195. package/dist/chunk-C2BCDNAV.js.map +0 -1
  196. package/dist/chunk-CJ2MKVAF.cjs +0 -46
  197. package/dist/chunk-CJ2MKVAF.cjs.map +0 -1
  198. package/dist/chunk-E7D6EKJ4.cjs +0 -44
  199. package/dist/chunk-E7D6EKJ4.cjs.map +0 -1
  200. package/dist/chunk-ECXBTUH6.cjs.map +0 -1
  201. package/dist/chunk-FAFAP4L5.js +0 -183
  202. package/dist/chunk-FAFAP4L5.js.map +0 -1
  203. package/dist/chunk-G2XGBO5V.cjs +0 -2565
  204. package/dist/chunk-G2XGBO5V.cjs.map +0 -1
  205. package/dist/chunk-GQELL2MF.cjs.map +0 -1
  206. package/dist/chunk-H2KQ3WSH.cjs.map +0 -1
  207. package/dist/chunk-H2Y6BSTL.cjs.map +0 -1
  208. package/dist/chunk-HCZW5AJN.cjs +0 -234
  209. package/dist/chunk-HCZW5AJN.cjs.map +0 -1
  210. package/dist/chunk-HDVAMYSG.js.map +0 -1
  211. package/dist/chunk-HN4PHABT.js +0 -126
  212. package/dist/chunk-HN4PHABT.js.map +0 -1
  213. package/dist/chunk-LTPTW2US.cjs.map +0 -1
  214. package/dist/chunk-MDB2WCRQ.cjs +0 -137
  215. package/dist/chunk-MDB2WCRQ.cjs.map +0 -1
  216. package/dist/chunk-MQRB634A.cjs +0 -34
  217. package/dist/chunk-MQRB634A.cjs.map +0 -1
  218. package/dist/chunk-NN3TUHIH.js +0 -28
  219. package/dist/chunk-NN3TUHIH.js.map +0 -1
  220. package/dist/chunk-OWS2KAXZ.js +0 -701
  221. package/dist/chunk-OWS2KAXZ.js.map +0 -1
  222. package/dist/chunk-P5BOFE5A.js.map +0 -1
  223. package/dist/chunk-PUPSK3DI.cjs +0 -216
  224. package/dist/chunk-PUPSK3DI.cjs.map +0 -1
  225. package/dist/chunk-Q2MFGYTE.cjs +0 -1449
  226. package/dist/chunk-Q2MFGYTE.cjs.map +0 -1
  227. package/dist/chunk-Q75DBVDY.cjs +0 -68
  228. package/dist/chunk-Q75DBVDY.cjs.map +0 -1
  229. package/dist/chunk-QALDZ7WQ.js.map +0 -1
  230. package/dist/chunk-QWE2RNCS.js +0 -1195
  231. package/dist/chunk-QWE2RNCS.js.map +0 -1
  232. package/dist/chunk-RQUFZAZ7.js +0 -1608
  233. package/dist/chunk-RQUFZAZ7.js.map +0 -1
  234. package/dist/chunk-SICKWUWB.js.map +0 -1
  235. package/dist/chunk-TCFC7XTB.js +0 -212
  236. package/dist/chunk-TCFC7XTB.js.map +0 -1
  237. package/dist/chunk-UTVXGAQP.cjs +0 -2437
  238. package/dist/chunk-UTVXGAQP.cjs.map +0 -1
  239. package/dist/chunk-UVEMY3FQ.cjs +0 -717
  240. package/dist/chunk-UVEMY3FQ.cjs.map +0 -1
  241. package/dist/chunk-VFJZQQZU.js.map +0 -1
  242. package/dist/chunk-WH7PYHZY.cjs +0 -35
  243. package/dist/chunk-WH7PYHZY.cjs.map +0 -1
  244. package/dist/chunk-WYH4TKS5.js.map +0 -1
  245. package/dist/chunk-XEX2AEZK.cjs.map +0 -1
  246. package/dist/chunk-XPTVHPCN.js +0 -2320
  247. package/dist/chunk-XPTVHPCN.js.map +0 -1
  248. package/dist/chunk-XWPDRMZG.js +0 -62
  249. package/dist/chunk-XWPDRMZG.js.map +0 -1
  250. package/dist/chunk-Y26OHHMX.js.map +0 -1
  251. package/dist/chunk-YJ6C3EKW.js.map +0 -1
  252. package/dist/motion-C651Ry6d.d.cts +0 -832
  253. package/dist/motion-C651Ry6d.d.ts +0 -832
  254. package/dist/report/index.css +0 -1239
  255. package/dist/report/index.css.map +0 -1
  256. /package/dist/{chunk-6UNG76Y2.js.map → chunk-2VVRZBUR.cjs.map} +0 -0
  257. /package/dist/{chunk-YTYDQBVY.cjs.map → chunk-K526GN7P.js.map} +0 -0
@@ -1,801 +0,0 @@
1
- 'use strict';
2
-
3
- var chunkQ2MFGYTE_cjs = require('./chunk-Q2MFGYTE.cjs');
4
- var chunk3TGSIILM_cjs = require('./chunk-3TGSIILM.cjs');
5
- var React4 = require('react');
6
- var clsx2 = require('clsx');
7
- var jsxRuntime = require('react/jsx-runtime');
8
-
9
- function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
10
-
11
- var React4__default = /*#__PURE__*/_interopDefault(React4);
12
- var clsx2__default = /*#__PURE__*/_interopDefault(clsx2);
13
-
14
- var ReportShell = React4__default.default.forwardRef(
15
- ({
16
- title,
17
- subtitle,
18
- mode = "executive",
19
- brand,
20
- onModeChange,
21
- children,
22
- actions,
23
- className,
24
- ...props
25
- }, ref) => {
26
- return /* @__PURE__ */ jsxRuntime.jsx(chunkQ2MFGYTE_cjs.ReportModeProvider, { mode, onModeChange, children: /* @__PURE__ */ jsxRuntime.jsxs(
27
- "div",
28
- {
29
- ref,
30
- className: clsx2__default.default("ds-report-shell", className),
31
- "data-mode": mode,
32
- "data-brand": brand,
33
- ...props,
34
- children: [
35
- (title || subtitle || actions) && /* @__PURE__ */ jsxRuntime.jsxs("header", { className: "ds-report-shell__header", children: [
36
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "ds-report-shell__header-content", children: [
37
- title && /* @__PURE__ */ jsxRuntime.jsx("h1", { className: "ds-report-shell__title", children: title }),
38
- subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "ds-report-shell__subtitle", children: subtitle })
39
- ] }),
40
- actions && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "ds-report-shell__actions", children: actions })
41
- ] }),
42
- /* @__PURE__ */ jsxRuntime.jsx("main", { className: "ds-report-shell__content", children })
43
- ]
44
- }
45
- ) });
46
- }
47
- );
48
- ReportShell.displayName = "ReportShell";
49
- var ExecutiveThesis = React4__default.default.forwardRef(
50
- ({ thesis, context, metric, aiGenerated, className, ...props }, ref) => {
51
- const { features } = chunkQ2MFGYTE_cjs.useReportMode();
52
- return /* @__PURE__ */ jsxRuntime.jsxs(
53
- "section",
54
- {
55
- ref,
56
- className: clsx2__default.default("ds-executive-thesis", className),
57
- "aria-labelledby": "executive-thesis-title",
58
- ...props,
59
- children: [
60
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "ds-executive-thesis__content", children: [
61
- /* @__PURE__ */ jsxRuntime.jsxs("h2", { id: "executive-thesis-title", className: "ds-executive-thesis__title", children: [
62
- "Key Finding",
63
- aiGenerated && features.showConfidenceScores && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ds-executive-thesis__ai-badge", children: "AI Generated" })
64
- ] }),
65
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "ds-executive-thesis__thesis", children: thesis }),
66
- context && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "ds-executive-thesis__context", children: context })
67
- ] }),
68
- metric && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "ds-executive-thesis__metric", children: [
69
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ds-executive-thesis__metric-label", children: metric.label }),
70
- /* @__PURE__ */ jsxRuntime.jsxs(
71
- "span",
72
- {
73
- className: clsx2__default.default(
74
- "ds-executive-thesis__metric-value",
75
- metric.trend && `ds-executive-thesis__metric-value--${metric.trend}`
76
- ),
77
- children: [
78
- metric.trend === "up" && "\u2191 ",
79
- metric.trend === "down" && "\u2193 ",
80
- metric.value
81
- ]
82
- }
83
- )
84
- ] })
85
- ]
86
- }
87
- );
88
- }
89
- );
90
- ExecutiveThesis.displayName = "ExecutiveThesis";
91
- var InsightBlock = React4__default.default.forwardRef(
92
- ({ type, headline, description, confidence, methodology, children, className, ...props }, ref) => {
93
- const { features } = chunkQ2MFGYTE_cjs.useReportMode();
94
- const contract = chunkQ2MFGYTE_cjs.INSIGHT_TYPE_CONTRACTS[type];
95
- const getConfidenceClass = () => {
96
- if (confidence === void 0) return "";
97
- if (confidence >= 90) return "ds-insight-block--confidence-high";
98
- if (confidence >= 70) return "ds-insight-block--confidence-moderate";
99
- if (confidence >= 50) return "ds-insight-block--confidence-low";
100
- return "ds-insight-block--confidence-insufficient";
101
- };
102
- return /* @__PURE__ */ jsxRuntime.jsxs(
103
- "section",
104
- {
105
- ref,
106
- className: clsx2__default.default("ds-insight-block", getConfidenceClass(), className),
107
- "data-insight-type": type,
108
- "aria-labelledby": `insight-${type}-title`,
109
- ...props,
110
- children: [
111
- /* @__PURE__ */ jsxRuntime.jsxs("header", { className: "ds-insight-block__header", children: [
112
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "ds-insight-block__meta", children: [
113
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ds-insight-block__type", children: type.replace(/-/g, " ") }),
114
- features.showConfidenceScores && confidence !== void 0 && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "ds-insight-block__confidence", children: [
115
- confidence,
116
- "% confidence"
117
- ] })
118
- ] }),
119
- /* @__PURE__ */ jsxRuntime.jsx("h3", { id: `insight-${type}-title`, className: "ds-insight-block__headline", children: headline }),
120
- description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "ds-insight-block__description", children: description })
121
- ] }),
122
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "ds-insight-block__evidence", children }),
123
- features.showMethodology && methodology && /* @__PURE__ */ jsxRuntime.jsxs("footer", { className: "ds-insight-block__methodology", children: [
124
- /* @__PURE__ */ jsxRuntime.jsx("h4", { className: "ds-insight-block__methodology-title", children: "Methodology" }),
125
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "ds-insight-block__methodology-text", children: methodology }),
126
- contract && /* @__PURE__ */ jsxRuntime.jsxs("p", { className: "ds-insight-block__methodology-contract", children: [
127
- "Min sample: ",
128
- contract.minSampleSize,
129
- " | Allowed charts:",
130
- " ",
131
- contract.allowedCharts.join(", ")
132
- ] })
133
- ] })
134
- ]
135
- }
136
- );
137
- }
138
- );
139
- InsightBlock.displayName = "InsightBlock";
140
- var EvidenceGroup = React4__default.default.forwardRef(
141
- ({ title, layout = "row", columns = 2, children, className, ...props }, ref) => {
142
- const childCount = React4__default.default.Children.count(children);
143
- if (childCount > 3) {
144
- console.warn(
145
- `EvidenceGroup: Maximum 3 charts allowed per insight block (received ${childCount}). This violates composition rule R6.`
146
- );
147
- }
148
- return /* @__PURE__ */ jsxRuntime.jsxs(
149
- "div",
150
- {
151
- ref,
152
- className: clsx2__default.default(
153
- "ds-evidence-group",
154
- `ds-evidence-group--${layout}`,
155
- layout === "grid" && `ds-evidence-group--cols-${columns}`,
156
- className
157
- ),
158
- role: "group",
159
- "aria-label": title || "Evidence charts",
160
- ...props,
161
- children: [
162
- title && /* @__PURE__ */ jsxRuntime.jsx("h4", { className: "ds-evidence-group__title", children: title }),
163
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "ds-evidence-group__content", children })
164
- ]
165
- }
166
- );
167
- }
168
- );
169
- EvidenceGroup.displayName = "EvidenceGroup";
170
- var MethodologyNote = React4__default.default.forwardRef(
171
- ({ children, sampleSize, sources, calculation, forceShow = false, className, labels, ...props }, ref) => {
172
- const titleText = labels?.title ?? "Methodology";
173
- const sampleSizeLabel = labels?.sampleSize ?? "Sample Size";
174
- const dataSourcesLabel = labels?.dataSources ?? "Data Sources";
175
- const calculationLabel = labels?.calculation ?? "Calculation";
176
- const { features } = chunkQ2MFGYTE_cjs.useReportMode();
177
- const shouldShow = forceShow || features.showMethodology || sampleSize !== void 0 && sampleSize < 100;
178
- if (!shouldShow) {
179
- return null;
180
- }
181
- return /* @__PURE__ */ jsxRuntime.jsxs(
182
- "aside",
183
- {
184
- ref,
185
- className: clsx2__default.default("ds-methodology-note", className),
186
- "aria-label": titleText,
187
- ...props,
188
- children: [
189
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "ds-methodology-note__header", children: [
190
- /* @__PURE__ */ jsxRuntime.jsxs(
191
- "svg",
192
- {
193
- className: "ds-methodology-note__icon",
194
- width: "16",
195
- height: "16",
196
- viewBox: "0 0 24 24",
197
- fill: "none",
198
- stroke: "currentColor",
199
- strokeWidth: "2",
200
- children: [
201
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "10" }),
202
- /* @__PURE__ */ jsxRuntime.jsx("line", { x1: "12", y1: "16", x2: "12", y2: "12" }),
203
- /* @__PURE__ */ jsxRuntime.jsx("line", { x1: "12", y1: "8", x2: "12.01", y2: "8" })
204
- ]
205
- }
206
- ),
207
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ds-methodology-note__title", children: titleText })
208
- ] }),
209
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "ds-methodology-note__content", children }),
210
- (sources || calculation || sampleSize !== void 0) && /* @__PURE__ */ jsxRuntime.jsxs("dl", { className: "ds-methodology-note__details", children: [
211
- sampleSize !== void 0 && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
212
- /* @__PURE__ */ jsxRuntime.jsx("dt", { children: sampleSizeLabel }),
213
- /* @__PURE__ */ jsxRuntime.jsxs("dd", { children: [
214
- "n=",
215
- sampleSize.toLocaleString()
216
- ] })
217
- ] }),
218
- sources && sources.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
219
- /* @__PURE__ */ jsxRuntime.jsx("dt", { children: dataSourcesLabel }),
220
- /* @__PURE__ */ jsxRuntime.jsx("dd", { children: sources.join(", ") })
221
- ] }),
222
- calculation && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
223
- /* @__PURE__ */ jsxRuntime.jsx("dt", { children: calculationLabel }),
224
- /* @__PURE__ */ jsxRuntime.jsx("dd", { children: calculation })
225
- ] })
226
- ] })
227
- ]
228
- }
229
- );
230
- }
231
- );
232
- MethodologyNote.displayName = "MethodologyNote";
233
- var CaveatBlock = React4__default.default.forwardRef(
234
- ({
235
- title = "Important Caveat",
236
- children,
237
- severity = "warning",
238
- confidence,
239
- forceShow = false,
240
- className,
241
- ...props
242
- }, ref) => {
243
- const { features } = chunkQ2MFGYTE_cjs.useReportMode();
244
- const shouldShow = forceShow || features.showMethodology || confidence !== void 0 && confidence < 70;
245
- if (!shouldShow) {
246
- return null;
247
- }
248
- const renderIcon = () => {
249
- if (severity === "critical") {
250
- return /* @__PURE__ */ jsxRuntime.jsxs(
251
- "svg",
252
- {
253
- width: "18",
254
- height: "18",
255
- viewBox: "0 0 24 24",
256
- fill: "none",
257
- stroke: "currentColor",
258
- strokeWidth: "2",
259
- children: [
260
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "10" }),
261
- /* @__PURE__ */ jsxRuntime.jsx("line", { x1: "15", y1: "9", x2: "9", y2: "15" }),
262
- /* @__PURE__ */ jsxRuntime.jsx("line", { x1: "9", y1: "9", x2: "15", y2: "15" })
263
- ]
264
- }
265
- );
266
- }
267
- if (severity === "info") {
268
- return /* @__PURE__ */ jsxRuntime.jsxs(
269
- "svg",
270
- {
271
- width: "18",
272
- height: "18",
273
- viewBox: "0 0 24 24",
274
- fill: "none",
275
- stroke: "currentColor",
276
- strokeWidth: "2",
277
- children: [
278
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "10" }),
279
- /* @__PURE__ */ jsxRuntime.jsx("line", { x1: "12", y1: "16", x2: "12", y2: "12" }),
280
- /* @__PURE__ */ jsxRuntime.jsx("line", { x1: "12", y1: "8", x2: "12.01", y2: "8" })
281
- ]
282
- }
283
- );
284
- }
285
- return /* @__PURE__ */ jsxRuntime.jsxs(
286
- "svg",
287
- {
288
- width: "18",
289
- height: "18",
290
- viewBox: "0 0 24 24",
291
- fill: "none",
292
- stroke: "currentColor",
293
- strokeWidth: "2",
294
- children: [
295
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z" }),
296
- /* @__PURE__ */ jsxRuntime.jsx("line", { x1: "12", y1: "9", x2: "12", y2: "13" }),
297
- /* @__PURE__ */ jsxRuntime.jsx("line", { x1: "12", y1: "17", x2: "12.01", y2: "17" })
298
- ]
299
- }
300
- );
301
- };
302
- return /* @__PURE__ */ jsxRuntime.jsxs(
303
- "aside",
304
- {
305
- ref,
306
- className: clsx2__default.default("ds-caveat-block", `ds-caveat-block--${severity}`, className),
307
- role: "note",
308
- "aria-label": title,
309
- ...props,
310
- children: [
311
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "ds-caveat-block__header", children: [
312
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ds-caveat-block__icon", children: renderIcon() }),
313
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ds-caveat-block__title", children: title }),
314
- confidence !== void 0 && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "ds-caveat-block__confidence", children: [
315
- confidence,
316
- "% confidence"
317
- ] })
318
- ] }),
319
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "ds-caveat-block__content", children })
320
- ]
321
- }
322
- );
323
- }
324
- );
325
- CaveatBlock.displayName = "CaveatBlock";
326
- var KeyMetric = React4__default.default.forwardRef(
327
- ({
328
- title,
329
- value,
330
- prefix,
331
- suffix,
332
- trend,
333
- secondary,
334
- sampleSize,
335
- confidence,
336
- onClick,
337
- loading,
338
- size = "md",
339
- className,
340
- ...props
341
- }, ref) => {
342
- const { features } = chunkQ2MFGYTE_cjs.useReportMode();
343
- const { isValid } = chunkQ2MFGYTE_cjs.useDataState({
344
- sampleSize: sampleSize ?? 100,
345
- requiredSize: 30
346
- });
347
- const isClickable = onClick && !loading;
348
- const formatValue = (val) => {
349
- if (typeof val === "number") {
350
- return val.toLocaleString();
351
- }
352
- return val;
353
- };
354
- const getTrendIcon = (direction) => {
355
- switch (direction) {
356
- case "up":
357
- return "\u2191";
358
- case "down":
359
- return "\u2193";
360
- default:
361
- return "\u2192";
362
- }
363
- };
364
- const Component = isClickable ? "button" : "div";
365
- return /* @__PURE__ */ jsxRuntime.jsxs(
366
- Component,
367
- {
368
- ref,
369
- className: clsx2__default.default(
370
- "ds-key-metric",
371
- `ds-key-metric--${size}`,
372
- loading && "ds-key-metric--loading",
373
- isClickable && "ds-key-metric--clickable",
374
- !isValid && "ds-key-metric--invalid",
375
- className
376
- ),
377
- onClick: isClickable ? onClick : void 0,
378
- type: isClickable ? "button" : void 0,
379
- ...props,
380
- children: [
381
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "ds-key-metric__header", children: [
382
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ds-key-metric__title", children: title }),
383
- features.showConfidenceScores && confidence !== void 0 && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "ds-key-metric__confidence", children: [
384
- confidence,
385
- "%"
386
- ] })
387
- ] }),
388
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "ds-key-metric__value-row", children: [
389
- /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "ds-key-metric__value", children: [
390
- prefix && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ds-key-metric__prefix", children: prefix }),
391
- loading ? "\u2014" : formatValue(value),
392
- suffix && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ds-key-metric__suffix", children: suffix })
393
- ] }),
394
- trend && /* @__PURE__ */ jsxRuntime.jsxs(
395
- "span",
396
- {
397
- className: clsx2__default.default("ds-key-metric__trend", `ds-key-metric__trend--${trend.direction}`),
398
- children: [
399
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ds-key-metric__trend-icon", children: getTrendIcon(trend.direction) }),
400
- /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "ds-key-metric__trend-value", children: [
401
- Math.abs(trend.value),
402
- "%"
403
- ] }),
404
- trend.label && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ds-key-metric__trend-label", children: trend.label })
405
- ]
406
- }
407
- )
408
- ] }),
409
- secondary && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "ds-key-metric__secondary", children: [
410
- /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "ds-key-metric__secondary-label", children: [
411
- secondary.label,
412
- ":"
413
- ] }),
414
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ds-key-metric__secondary-value", children: formatValue(secondary.value) })
415
- ] }),
416
- features.showMethodology && sampleSize !== void 0 && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "ds-key-metric__sample", children: [
417
- "n=",
418
- sampleSize.toLocaleString()
419
- ] })
420
- ]
421
- }
422
- );
423
- }
424
- );
425
- KeyMetric.displayName = "KeyMetric";
426
- var TrendIndicator = React4__default.default.forwardRef(
427
- ({
428
- value,
429
- direction: directionOverride,
430
- positiveIsGood = true,
431
- showIcon = true,
432
- showPercent = true,
433
- size = "md",
434
- className,
435
- ...props
436
- }, ref) => {
437
- const direction = directionOverride ?? (value > 0 ? "up" : value < 0 ? "down" : "neutral");
438
- const isGood = positiveIsGood ? direction === "up" : direction === "down";
439
- const isBad = positiveIsGood ? direction === "down" : direction === "up";
440
- const getIcon = () => {
441
- switch (direction) {
442
- case "up":
443
- return /* @__PURE__ */ jsxRuntime.jsx(
444
- "svg",
445
- {
446
- width: "12",
447
- height: "12",
448
- viewBox: "0 0 24 24",
449
- fill: "none",
450
- stroke: "currentColor",
451
- strokeWidth: "3",
452
- children: /* @__PURE__ */ jsxRuntime.jsx("polyline", { points: "18,15 12,9 6,15" })
453
- }
454
- );
455
- case "down":
456
- return /* @__PURE__ */ jsxRuntime.jsx(
457
- "svg",
458
- {
459
- width: "12",
460
- height: "12",
461
- viewBox: "0 0 24 24",
462
- fill: "none",
463
- stroke: "currentColor",
464
- strokeWidth: "3",
465
- children: /* @__PURE__ */ jsxRuntime.jsx("polyline", { points: "6,9 12,15 18,9" })
466
- }
467
- );
468
- default:
469
- return /* @__PURE__ */ jsxRuntime.jsx(
470
- "svg",
471
- {
472
- width: "12",
473
- height: "12",
474
- viewBox: "0 0 24 24",
475
- fill: "none",
476
- stroke: "currentColor",
477
- strokeWidth: "3",
478
- children: /* @__PURE__ */ jsxRuntime.jsx("line", { x1: "5", y1: "12", x2: "19", y2: "12" })
479
- }
480
- );
481
- }
482
- };
483
- return /* @__PURE__ */ jsxRuntime.jsxs(
484
- "span",
485
- {
486
- ref,
487
- className: clsx2__default.default(
488
- "ds-trend-indicator",
489
- `ds-trend-indicator--${size}`,
490
- `ds-trend-indicator--${direction}`,
491
- isGood && "ds-trend-indicator--good",
492
- isBad && "ds-trend-indicator--bad",
493
- className
494
- ),
495
- "aria-label": `${direction === "up" ? "Increased" : direction === "down" ? "Decreased" : "No change"} by ${Math.abs(value)}%`,
496
- ...props,
497
- children: [
498
- showIcon && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ds-trend-indicator__icon", children: getIcon() }),
499
- /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "ds-trend-indicator__value", children: [
500
- value > 0 && "+",
501
- value.toFixed(1),
502
- showPercent && "%"
503
- ] })
504
- ]
505
- }
506
- );
507
- }
508
- );
509
- TrendIndicator.displayName = "TrendIndicator";
510
- var DEFAULT_OPTIONS = [
511
- { format: "pdf", label: "PDF Document", description: "Best for sharing reports" },
512
- { format: "pptx", label: "PowerPoint", description: "Editable presentation" },
513
- { format: "xlsx", label: "Excel Spreadsheet", description: "Data with charts" },
514
- { format: "csv", label: "CSV Data", description: "Raw data only" },
515
- { format: "png", label: "PNG Image", description: "Chart screenshot" },
516
- { format: "json", label: "JSON", description: "Developer format" }
517
- ];
518
- var FORMAT_ICONS = {
519
- pdf: /* @__PURE__ */ jsxRuntime.jsx(PdfIcon, {}),
520
- csv: /* @__PURE__ */ jsxRuntime.jsx(CsvIcon, {}),
521
- xlsx: /* @__PURE__ */ jsxRuntime.jsx(ExcelIcon, {}),
522
- pptx: /* @__PURE__ */ jsxRuntime.jsx(PptIcon, {}),
523
- png: /* @__PURE__ */ jsxRuntime.jsx(ImageIcon, {}),
524
- json: /* @__PURE__ */ jsxRuntime.jsx(JsonIcon, {})
525
- };
526
- function ExportMenu({
527
- options = DEFAULT_OPTIONS,
528
- onExport,
529
- isExporting = false,
530
- label = "Export",
531
- size = "md",
532
- variant = "secondary",
533
- className,
534
- disabled
535
- }) {
536
- const documentOptions = options.filter((o) => ["pdf", "pptx"].includes(o.format));
537
- const dataOptions = options.filter((o) => ["xlsx", "csv", "json"].includes(o.format));
538
- const imageOptions = options.filter((o) => ["png"].includes(o.format));
539
- return /* @__PURE__ */ jsxRuntime.jsxs(chunk3TGSIILM_cjs.DropdownMenu, { children: [
540
- /* @__PURE__ */ jsxRuntime.jsx(
541
- chunk3TGSIILM_cjs.DropdownMenuTrigger,
542
- {
543
- className: clsx2__default.default(
544
- "ds-export-menu__trigger",
545
- "ds-button",
546
- `ds-button--${variant}`,
547
- `ds-button--${size}`,
548
- className
549
- ),
550
- disabled: disabled || isExporting,
551
- children: isExporting ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
552
- /* @__PURE__ */ jsxRuntime.jsx(LoadingIcon, {}),
553
- "Exporting..."
554
- ] }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
555
- /* @__PURE__ */ jsxRuntime.jsx(ExportIcon, {}),
556
- label
557
- ] })
558
- }
559
- ),
560
- /* @__PURE__ */ jsxRuntime.jsxs(chunk3TGSIILM_cjs.DropdownMenuContent, { side: "bottom", align: "end", sideOffset: 4, children: [
561
- documentOptions.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
562
- /* @__PURE__ */ jsxRuntime.jsx(chunk3TGSIILM_cjs.DropdownMenuLabel, { children: "Documents" }),
563
- documentOptions.map((option) => /* @__PURE__ */ jsxRuntime.jsxs(
564
- chunk3TGSIILM_cjs.DropdownMenuItem,
565
- {
566
- disabled: option.disabled,
567
- onClick: () => onExport(option.format),
568
- children: [
569
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ds-export-menu__item-icon", children: FORMAT_ICONS[option.format] }),
570
- /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "ds-export-menu__item-content", children: [
571
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ds-export-menu__item-label", children: option.label }),
572
- option.description && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ds-export-menu__item-description", children: option.description })
573
- ] })
574
- ]
575
- },
576
- option.format
577
- ))
578
- ] }),
579
- documentOptions.length > 0 && dataOptions.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(chunk3TGSIILM_cjs.DropdownMenuSeparator, {}),
580
- dataOptions.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
581
- /* @__PURE__ */ jsxRuntime.jsx(chunk3TGSIILM_cjs.DropdownMenuLabel, { children: "Data" }),
582
- dataOptions.map((option) => /* @__PURE__ */ jsxRuntime.jsxs(
583
- chunk3TGSIILM_cjs.DropdownMenuItem,
584
- {
585
- disabled: option.disabled,
586
- onClick: () => onExport(option.format),
587
- children: [
588
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ds-export-menu__item-icon", children: FORMAT_ICONS[option.format] }),
589
- /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "ds-export-menu__item-content", children: [
590
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ds-export-menu__item-label", children: option.label }),
591
- option.description && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ds-export-menu__item-description", children: option.description })
592
- ] })
593
- ]
594
- },
595
- option.format
596
- ))
597
- ] }),
598
- imageOptions.length > 0 && (dataOptions.length > 0 || documentOptions.length > 0) && /* @__PURE__ */ jsxRuntime.jsx(chunk3TGSIILM_cjs.DropdownMenuSeparator, {}),
599
- imageOptions.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
600
- /* @__PURE__ */ jsxRuntime.jsx(chunk3TGSIILM_cjs.DropdownMenuLabel, { children: "Image" }),
601
- imageOptions.map((option) => /* @__PURE__ */ jsxRuntime.jsxs(
602
- chunk3TGSIILM_cjs.DropdownMenuItem,
603
- {
604
- disabled: option.disabled,
605
- onClick: () => onExport(option.format),
606
- children: [
607
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ds-export-menu__item-icon", children: FORMAT_ICONS[option.format] }),
608
- /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "ds-export-menu__item-content", children: [
609
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ds-export-menu__item-label", children: option.label }),
610
- option.description && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ds-export-menu__item-description", children: option.description })
611
- ] })
612
- ]
613
- },
614
- option.format
615
- ))
616
- ] })
617
- ] })
618
- ] });
619
- }
620
- ExportMenu.displayName = "ExportMenu";
621
- function ExportIcon() {
622
- return /* @__PURE__ */ jsxRuntime.jsxs(
623
- "svg",
624
- {
625
- xmlns: "http://www.w3.org/2000/svg",
626
- width: "16",
627
- height: "16",
628
- viewBox: "0 0 24 24",
629
- fill: "none",
630
- stroke: "currentColor",
631
- strokeWidth: "2",
632
- strokeLinecap: "round",
633
- strokeLinejoin: "round",
634
- children: [
635
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" }),
636
- /* @__PURE__ */ jsxRuntime.jsx("polyline", { points: "17 8 12 3 7 8" }),
637
- /* @__PURE__ */ jsxRuntime.jsx("line", { x1: "12", y1: "3", x2: "12", y2: "15" })
638
- ]
639
- }
640
- );
641
- }
642
- function LoadingIcon() {
643
- return /* @__PURE__ */ jsxRuntime.jsx(
644
- "svg",
645
- {
646
- className: "ds-export-menu__loading-icon",
647
- xmlns: "http://www.w3.org/2000/svg",
648
- width: "16",
649
- height: "16",
650
- viewBox: "0 0 24 24",
651
- fill: "none",
652
- stroke: "currentColor",
653
- strokeWidth: "2",
654
- strokeLinecap: "round",
655
- strokeLinejoin: "round",
656
- children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M21 12a9 9 0 1 1-6.219-8.56" })
657
- }
658
- );
659
- }
660
- function PdfIcon() {
661
- return /* @__PURE__ */ jsxRuntime.jsxs(
662
- "svg",
663
- {
664
- xmlns: "http://www.w3.org/2000/svg",
665
- width: "16",
666
- height: "16",
667
- viewBox: "0 0 24 24",
668
- fill: "none",
669
- stroke: "currentColor",
670
- strokeWidth: "2",
671
- strokeLinecap: "round",
672
- strokeLinejoin: "round",
673
- children: [
674
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z" }),
675
- /* @__PURE__ */ jsxRuntime.jsx("polyline", { points: "14 2 14 8 20 8" }),
676
- /* @__PURE__ */ jsxRuntime.jsx("line", { x1: "16", y1: "13", x2: "8", y2: "13" }),
677
- /* @__PURE__ */ jsxRuntime.jsx("line", { x1: "16", y1: "17", x2: "8", y2: "17" }),
678
- /* @__PURE__ */ jsxRuntime.jsx("polyline", { points: "10 9 9 9 8 9" })
679
- ]
680
- }
681
- );
682
- }
683
- function CsvIcon() {
684
- return /* @__PURE__ */ jsxRuntime.jsxs(
685
- "svg",
686
- {
687
- xmlns: "http://www.w3.org/2000/svg",
688
- width: "16",
689
- height: "16",
690
- viewBox: "0 0 24 24",
691
- fill: "none",
692
- stroke: "currentColor",
693
- strokeWidth: "2",
694
- strokeLinecap: "round",
695
- strokeLinejoin: "round",
696
- children: [
697
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z" }),
698
- /* @__PURE__ */ jsxRuntime.jsx("polyline", { points: "14 2 14 8 20 8" }),
699
- /* @__PURE__ */ jsxRuntime.jsx("line", { x1: "8", y1: "13", x2: "16", y2: "13" }),
700
- /* @__PURE__ */ jsxRuntime.jsx("line", { x1: "8", y1: "17", x2: "16", y2: "17" })
701
- ]
702
- }
703
- );
704
- }
705
- function ExcelIcon() {
706
- return /* @__PURE__ */ jsxRuntime.jsxs(
707
- "svg",
708
- {
709
- xmlns: "http://www.w3.org/2000/svg",
710
- width: "16",
711
- height: "16",
712
- viewBox: "0 0 24 24",
713
- fill: "none",
714
- stroke: "currentColor",
715
- strokeWidth: "2",
716
- strokeLinecap: "round",
717
- strokeLinejoin: "round",
718
- children: [
719
- /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "3", y: "3", width: "18", height: "18", rx: "2" }),
720
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M3 9h18" }),
721
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M3 15h18" }),
722
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M9 3v18" }),
723
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M15 3v18" })
724
- ]
725
- }
726
- );
727
- }
728
- function PptIcon() {
729
- return /* @__PURE__ */ jsxRuntime.jsxs(
730
- "svg",
731
- {
732
- xmlns: "http://www.w3.org/2000/svg",
733
- width: "16",
734
- height: "16",
735
- viewBox: "0 0 24 24",
736
- fill: "none",
737
- stroke: "currentColor",
738
- strokeWidth: "2",
739
- strokeLinecap: "round",
740
- strokeLinejoin: "round",
741
- children: [
742
- /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "2", y: "3", width: "20", height: "14", rx: "2" }),
743
- /* @__PURE__ */ jsxRuntime.jsx("line", { x1: "8", y1: "21", x2: "16", y2: "21" }),
744
- /* @__PURE__ */ jsxRuntime.jsx("line", { x1: "12", y1: "17", x2: "12", y2: "21" })
745
- ]
746
- }
747
- );
748
- }
749
- function ImageIcon() {
750
- return /* @__PURE__ */ jsxRuntime.jsxs(
751
- "svg",
752
- {
753
- xmlns: "http://www.w3.org/2000/svg",
754
- width: "16",
755
- height: "16",
756
- viewBox: "0 0 24 24",
757
- fill: "none",
758
- stroke: "currentColor",
759
- strokeWidth: "2",
760
- strokeLinecap: "round",
761
- strokeLinejoin: "round",
762
- children: [
763
- /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "3", y: "3", width: "18", height: "18", rx: "2" }),
764
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "8.5", cy: "8.5", r: "1.5" }),
765
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "m21 15-5-5L5 21" })
766
- ]
767
- }
768
- );
769
- }
770
- function JsonIcon() {
771
- return /* @__PURE__ */ jsxRuntime.jsxs(
772
- "svg",
773
- {
774
- xmlns: "http://www.w3.org/2000/svg",
775
- width: "16",
776
- height: "16",
777
- viewBox: "0 0 24 24",
778
- fill: "none",
779
- stroke: "currentColor",
780
- strokeWidth: "2",
781
- strokeLinecap: "round",
782
- strokeLinejoin: "round",
783
- children: [
784
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M8 3H7a2 2 0 0 0-2 2v5a2 2 0 0 1-2 2 2 2 0 0 1 2 2v5a2 2 0 0 0 2 2h1" }),
785
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M16 21h1a2 2 0 0 0 2-2v-5a2 2 0 0 1 2-2 2 2 0 0 1-2-2V5a2 2 0 0 0-2-2h-1" })
786
- ]
787
- }
788
- );
789
- }
790
-
791
- exports.CaveatBlock = CaveatBlock;
792
- exports.EvidenceGroup = EvidenceGroup;
793
- exports.ExecutiveThesis = ExecutiveThesis;
794
- exports.ExportMenu = ExportMenu;
795
- exports.InsightBlock = InsightBlock;
796
- exports.KeyMetric = KeyMetric;
797
- exports.MethodologyNote = MethodologyNote;
798
- exports.ReportShell = ReportShell;
799
- exports.TrendIndicator = TrendIndicator;
800
- //# sourceMappingURL=out.js.map
801
- //# sourceMappingURL=chunk-4GM5BGBN.cjs.map