@epilot/spark-ui 0.10.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 (629) hide show
  1. package/LICENSE +201 -0
  2. package/NOTICE +2 -0
  3. package/README.md +32 -0
  4. package/dist/chunk-DY84GLCh.cjs +29 -0
  5. package/dist/components/accordion.cjs +57 -0
  6. package/dist/components/accordion.cjs.map +1 -0
  7. package/dist/components/accordion.d.cts +44 -0
  8. package/dist/components/accordion.d.ts +44 -0
  9. package/dist/components/accordion.js +51 -0
  10. package/dist/components/accordion.js.map +1 -0
  11. package/dist/components/alert-dialog.cjs +137 -0
  12. package/dist/components/alert-dialog.cjs.map +1 -0
  13. package/dist/components/alert-dialog.d.cts +62 -0
  14. package/dist/components/alert-dialog.d.ts +62 -0
  15. package/dist/components/alert-dialog.js +123 -0
  16. package/dist/components/alert-dialog.js.map +1 -0
  17. package/dist/components/attachment.cjs +119 -0
  18. package/dist/components/attachment.cjs.map +1 -0
  19. package/dist/components/attachment.d.cts +65 -0
  20. package/dist/components/attachment.d.ts +65 -0
  21. package/dist/components/attachment.js +108 -0
  22. package/dist/components/attachment.js.map +1 -0
  23. package/dist/components/avatar.cjs +56 -0
  24. package/dist/components/avatar.cjs.map +1 -0
  25. package/dist/components/avatar.d.cts +26 -0
  26. package/dist/components/avatar.d.ts +26 -0
  27. package/dist/components/avatar.js +52 -0
  28. package/dist/components/avatar.js.map +1 -0
  29. package/dist/components/badge.cjs +25 -0
  30. package/dist/components/badge.cjs.map +1 -0
  31. package/dist/components/badge.d.cts +16 -0
  32. package/dist/components/badge.d.ts +16 -0
  33. package/dist/components/badge.js +22 -0
  34. package/dist/components/badge.js.map +1 -0
  35. package/dist/components/bar-chart.cjs +584 -0
  36. package/dist/components/bar-chart.cjs.map +1 -0
  37. package/dist/components/bar-chart.d.cts +102 -0
  38. package/dist/components/bar-chart.d.ts +102 -0
  39. package/dist/components/bar-chart.js +583 -0
  40. package/dist/components/bar-chart.js.map +1 -0
  41. package/dist/components/battery-progress-row.cjs +133 -0
  42. package/dist/components/battery-progress-row.cjs.map +1 -0
  43. package/dist/components/battery-progress-row.d.cts +77 -0
  44. package/dist/components/battery-progress-row.d.ts +77 -0
  45. package/dist/components/battery-progress-row.js +123 -0
  46. package/dist/components/battery-progress-row.js.map +1 -0
  47. package/dist/components/breadcrumbs.cjs +64 -0
  48. package/dist/components/breadcrumbs.cjs.map +1 -0
  49. package/dist/components/breadcrumbs.d.cts +42 -0
  50. package/dist/components/breadcrumbs.d.ts +42 -0
  51. package/dist/components/breadcrumbs.js +58 -0
  52. package/dist/components/breadcrumbs.js.map +1 -0
  53. package/dist/components/bubble.cjs +84 -0
  54. package/dist/components/bubble.cjs.map +1 -0
  55. package/dist/components/bubble.d.cts +39 -0
  56. package/dist/components/bubble.d.ts +39 -0
  57. package/dist/components/bubble.js +78 -0
  58. package/dist/components/bubble.js.map +1 -0
  59. package/dist/components/button-group.cjs +72 -0
  60. package/dist/components/button-group.cjs.map +1 -0
  61. package/dist/components/button-group.d.cts +29 -0
  62. package/dist/components/button-group.d.ts +29 -0
  63. package/dist/components/button-group.js +64 -0
  64. package/dist/components/button-group.js.map +1 -0
  65. package/dist/components/button.cjs +58 -0
  66. package/dist/components/button.cjs.map +1 -0
  67. package/dist/components/button.d.cts +29 -0
  68. package/dist/components/button.d.ts +29 -0
  69. package/dist/components/button.js +54 -0
  70. package/dist/components/button.js.map +1 -0
  71. package/dist/components/calendar.cjs +59 -0
  72. package/dist/components/calendar.cjs.map +1 -0
  73. package/dist/components/calendar.d.cts +20 -0
  74. package/dist/components/calendar.d.ts +20 -0
  75. package/dist/components/calendar.js +56 -0
  76. package/dist/components/calendar.js.map +1 -0
  77. package/dist/components/callout.cjs +95 -0
  78. package/dist/components/callout.cjs.map +1 -0
  79. package/dist/components/callout.d.cts +42 -0
  80. package/dist/components/callout.d.ts +42 -0
  81. package/dist/components/callout.js +88 -0
  82. package/dist/components/callout.js.map +1 -0
  83. package/dist/components/card.cjs +100 -0
  84. package/dist/components/card.cjs.map +1 -0
  85. package/dist/components/card.d.cts +34 -0
  86. package/dist/components/card.d.ts +34 -0
  87. package/dist/components/card.js +90 -0
  88. package/dist/components/card.js.map +1 -0
  89. package/dist/components/chart.cjs +110 -0
  90. package/dist/components/chart.cjs.map +1 -0
  91. package/dist/components/chart.d.cts +92 -0
  92. package/dist/components/chart.d.ts +92 -0
  93. package/dist/components/chart.js +104 -0
  94. package/dist/components/chart.js.map +1 -0
  95. package/dist/components/checkbox.cjs +44 -0
  96. package/dist/components/checkbox.cjs.map +1 -0
  97. package/dist/components/checkbox.d.cts +26 -0
  98. package/dist/components/checkbox.d.ts +26 -0
  99. package/dist/components/checkbox.js +41 -0
  100. package/dist/components/checkbox.js.map +1 -0
  101. package/dist/components/circular-gauge.cjs +74 -0
  102. package/dist/components/circular-gauge.cjs.map +1 -0
  103. package/dist/components/circular-gauge.d.cts +37 -0
  104. package/dist/components/circular-gauge.d.ts +37 -0
  105. package/dist/components/circular-gauge.js +71 -0
  106. package/dist/components/circular-gauge.js.map +1 -0
  107. package/dist/components/day-of-week-picker.cjs +123 -0
  108. package/dist/components/day-of-week-picker.cjs.map +1 -0
  109. package/dist/components/day-of-week-picker.d.cts +39 -0
  110. package/dist/components/day-of-week-picker.d.ts +39 -0
  111. package/dist/components/day-of-week-picker.js +119 -0
  112. package/dist/components/day-of-week-picker.js.map +1 -0
  113. package/dist/components/device-card.cjs +118 -0
  114. package/dist/components/device-card.cjs.map +1 -0
  115. package/dist/components/device-card.d.cts +70 -0
  116. package/dist/components/device-card.d.ts +70 -0
  117. package/dist/components/device-card.js +104 -0
  118. package/dist/components/device-card.js.map +1 -0
  119. package/dist/components/dialog.cjs +115 -0
  120. package/dist/components/dialog.cjs.map +1 -0
  121. package/dist/components/dialog.d.cts +44 -0
  122. package/dist/components/dialog.d.ts +44 -0
  123. package/dist/components/dialog.js +103 -0
  124. package/dist/components/dialog.js.map +1 -0
  125. package/dist/components/donut-chart.cjs +70 -0
  126. package/dist/components/donut-chart.cjs.map +1 -0
  127. package/dist/components/donut-chart.d.cts +20 -0
  128. package/dist/components/donut-chart.d.ts +20 -0
  129. package/dist/components/donut-chart.js +69 -0
  130. package/dist/components/donut-chart.js.map +1 -0
  131. package/dist/components/drawer.cjs +95 -0
  132. package/dist/components/drawer.cjs.map +1 -0
  133. package/dist/components/drawer.d.cts +45 -0
  134. package/dist/components/drawer.d.ts +45 -0
  135. package/dist/components/drawer.js +83 -0
  136. package/dist/components/drawer.js.map +1 -0
  137. package/dist/components/dropdown-menu.cjs +165 -0
  138. package/dist/components/dropdown-menu.cjs.map +1 -0
  139. package/dist/components/dropdown-menu.d.cts +92 -0
  140. package/dist/components/dropdown-menu.d.ts +92 -0
  141. package/dist/components/dropdown-menu.js +148 -0
  142. package/dist/components/dropdown-menu.js.map +1 -0
  143. package/dist/components/empty-state.cjs +41 -0
  144. package/dist/components/empty-state.cjs.map +1 -0
  145. package/dist/components/empty-state.d.cts +26 -0
  146. package/dist/components/empty-state.d.ts +26 -0
  147. package/dist/components/empty-state.js +41 -0
  148. package/dist/components/empty-state.js.map +1 -0
  149. package/dist/components/energy-bar-chart.cjs +23 -0
  150. package/dist/components/energy-bar-chart.cjs.map +1 -0
  151. package/dist/components/energy-bar-chart.d.cts +43 -0
  152. package/dist/components/energy-bar-chart.d.ts +43 -0
  153. package/dist/components/energy-bar-chart.js +22 -0
  154. package/dist/components/energy-bar-chart.js.map +1 -0
  155. package/dist/components/energy-breakdown.cjs +80 -0
  156. package/dist/components/energy-breakdown.cjs.map +1 -0
  157. package/dist/components/energy-breakdown.d.cts +24 -0
  158. package/dist/components/energy-breakdown.d.ts +24 -0
  159. package/dist/components/energy-breakdown.js +79 -0
  160. package/dist/components/energy-breakdown.js.map +1 -0
  161. package/dist/components/energy-history-chart.cjs +63 -0
  162. package/dist/components/energy-history-chart.cjs.map +1 -0
  163. package/dist/components/energy-history-chart.d.cts +64 -0
  164. package/dist/components/energy-history-chart.d.ts +64 -0
  165. package/dist/components/energy-history-chart.js +62 -0
  166. package/dist/components/energy-history-chart.js.map +1 -0
  167. package/dist/components/feed-in-hero.cjs +55 -0
  168. package/dist/components/feed-in-hero.cjs.map +1 -0
  169. package/dist/components/feed-in-hero.d.cts +32 -0
  170. package/dist/components/feed-in-hero.d.ts +32 -0
  171. package/dist/components/feed-in-hero.js +51 -0
  172. package/dist/components/feed-in-hero.js.map +1 -0
  173. package/dist/components/field.cjs +257 -0
  174. package/dist/components/field.cjs.map +1 -0
  175. package/dist/components/field.d.cts +103 -0
  176. package/dist/components/field.d.ts +103 -0
  177. package/dist/components/field.js +243 -0
  178. package/dist/components/field.js.map +1 -0
  179. package/dist/components/icon.cjs +35 -0
  180. package/dist/components/icon.cjs.map +1 -0
  181. package/dist/components/icon.d.cts +26 -0
  182. package/dist/components/icon.d.ts +26 -0
  183. package/dist/components/icon.js +32 -0
  184. package/dist/components/icon.js.map +1 -0
  185. package/dist/components/info-block.cjs +75 -0
  186. package/dist/components/info-block.cjs.map +1 -0
  187. package/dist/components/info-block.d.cts +19 -0
  188. package/dist/components/info-block.d.ts +19 -0
  189. package/dist/components/info-block.js +65 -0
  190. package/dist/components/info-block.js.map +1 -0
  191. package/dist/components/input-group.cjs +165 -0
  192. package/dist/components/input-group.cjs.map +1 -0
  193. package/dist/components/input-group.d.cts +27 -0
  194. package/dist/components/input-group.d.ts +27 -0
  195. package/dist/components/input-group.js +159 -0
  196. package/dist/components/input-group.js.map +1 -0
  197. package/dist/components/input-otp.cjs +112 -0
  198. package/dist/components/input-otp.cjs.map +1 -0
  199. package/dist/components/input-otp.d.cts +24 -0
  200. package/dist/components/input-otp.d.ts +24 -0
  201. package/dist/components/input-otp.js +111 -0
  202. package/dist/components/input-otp.js.map +1 -0
  203. package/dist/components/input.cjs +113 -0
  204. package/dist/components/input.cjs.map +1 -0
  205. package/dist/components/input.d.cts +14 -0
  206. package/dist/components/input.d.ts +14 -0
  207. package/dist/components/input.js +110 -0
  208. package/dist/components/input.js.map +1 -0
  209. package/dist/components/label.cjs +18 -0
  210. package/dist/components/label.cjs.map +1 -0
  211. package/dist/components/label.d.cts +10 -0
  212. package/dist/components/label.d.ts +10 -0
  213. package/dist/components/label.js +15 -0
  214. package/dist/components/label.js.map +1 -0
  215. package/dist/components/layout.cjs +14 -0
  216. package/dist/components/layout.cjs.map +1 -0
  217. package/dist/components/layout.d.cts +11 -0
  218. package/dist/components/layout.d.ts +12 -0
  219. package/dist/components/layout.js +14 -0
  220. package/dist/components/layout.js.map +1 -0
  221. package/dist/components/line-chart.cjs +538 -0
  222. package/dist/components/line-chart.cjs.map +1 -0
  223. package/dist/components/line-chart.d.cts +90 -0
  224. package/dist/components/line-chart.d.ts +90 -0
  225. package/dist/components/line-chart.js +536 -0
  226. package/dist/components/line-chart.js.map +1 -0
  227. package/dist/components/list.cjs +132 -0
  228. package/dist/components/list.cjs.map +1 -0
  229. package/dist/components/list.d.cts +71 -0
  230. package/dist/components/list.d.ts +71 -0
  231. package/dist/components/list.js +122 -0
  232. package/dist/components/list.js.map +1 -0
  233. package/dist/components/marker.cjs +52 -0
  234. package/dist/components/marker.cjs.map +1 -0
  235. package/dist/components/marker.d.cts +27 -0
  236. package/dist/components/marker.d.ts +27 -0
  237. package/dist/components/marker.js +46 -0
  238. package/dist/components/marker.js.map +1 -0
  239. package/dist/components/message-scroller.cjs +73 -0
  240. package/dist/components/message-scroller.cjs.map +1 -0
  241. package/dist/components/message-scroller.d.cts +38 -0
  242. package/dist/components/message-scroller.d.ts +38 -0
  243. package/dist/components/message-scroller.js +62 -0
  244. package/dist/components/message-scroller.js.map +1 -0
  245. package/dist/components/message.cjs +60 -0
  246. package/dist/components/message.cjs.map +1 -0
  247. package/dist/components/message.d.cts +35 -0
  248. package/dist/components/message.d.ts +35 -0
  249. package/dist/components/message.js +52 -0
  250. package/dist/components/message.js.map +1 -0
  251. package/dist/components/metering-row.cjs +42 -0
  252. package/dist/components/metering-row.cjs.map +1 -0
  253. package/dist/components/metering-row.d.cts +31 -0
  254. package/dist/components/metering-row.d.ts +31 -0
  255. package/dist/components/metering-row.js +38 -0
  256. package/dist/components/metering-row.js.map +1 -0
  257. package/dist/components/money-saved-block.cjs +86 -0
  258. package/dist/components/money-saved-block.cjs.map +1 -0
  259. package/dist/components/money-saved-block.d.cts +55 -0
  260. package/dist/components/money-saved-block.d.ts +55 -0
  261. package/dist/components/money-saved-block.js +79 -0
  262. package/dist/components/money-saved-block.js.map +1 -0
  263. package/dist/components/number-flow.cjs +44 -0
  264. package/dist/components/number-flow.cjs.map +1 -0
  265. package/dist/components/number-flow.d.cts +4 -0
  266. package/dist/components/number-flow.d.ts +4 -0
  267. package/dist/components/number-flow.js +42 -0
  268. package/dist/components/number-flow.js.map +1 -0
  269. package/dist/components/on-off-button.cjs +35 -0
  270. package/dist/components/on-off-button.cjs.map +1 -0
  271. package/dist/components/on-off-button.d.cts +18 -0
  272. package/dist/components/on-off-button.d.ts +18 -0
  273. package/dist/components/on-off-button.js +34 -0
  274. package/dist/components/on-off-button.js.map +1 -0
  275. package/dist/components/onboarding-layout.cjs +67 -0
  276. package/dist/components/onboarding-layout.cjs.map +1 -0
  277. package/dist/components/onboarding-layout.d.cts +44 -0
  278. package/dist/components/onboarding-layout.d.ts +44 -0
  279. package/dist/components/onboarding-layout.js +60 -0
  280. package/dist/components/onboarding-layout.js.map +1 -0
  281. package/dist/components/page-header.cjs +50 -0
  282. package/dist/components/page-header.cjs.map +1 -0
  283. package/dist/components/page-header.d.cts +25 -0
  284. package/dist/components/page-header.d.ts +25 -0
  285. package/dist/components/page-header.js +44 -0
  286. package/dist/components/page-header.js.map +1 -0
  287. package/dist/components/page-spinner.cjs +18 -0
  288. package/dist/components/page-spinner.cjs.map +1 -0
  289. package/dist/components/page-spinner.d.cts +12 -0
  290. package/dist/components/page-spinner.d.ts +12 -0
  291. package/dist/components/page-spinner.js +17 -0
  292. package/dist/components/page-spinner.js.map +1 -0
  293. package/dist/components/period-tabs.cjs +78 -0
  294. package/dist/components/period-tabs.cjs.map +1 -0
  295. package/dist/components/period-tabs.d.cts +50 -0
  296. package/dist/components/period-tabs.d.ts +50 -0
  297. package/dist/components/period-tabs.js +73 -0
  298. package/dist/components/period-tabs.js.map +1 -0
  299. package/dist/components/pill.cjs +62 -0
  300. package/dist/components/pill.cjs.map +1 -0
  301. package/dist/components/pill.d.cts +29 -0
  302. package/dist/components/pill.d.ts +29 -0
  303. package/dist/components/pill.js +59 -0
  304. package/dist/components/pill.js.map +1 -0
  305. package/dist/components/popover.cjs +62 -0
  306. package/dist/components/popover.cjs.map +1 -0
  307. package/dist/components/popover.d.cts +28 -0
  308. package/dist/components/popover.d.ts +28 -0
  309. package/dist/components/popover.js +56 -0
  310. package/dist/components/popover.js.map +1 -0
  311. package/dist/components/power-history-chart.cjs +498 -0
  312. package/dist/components/power-history-chart.cjs.map +1 -0
  313. package/dist/components/power-history-chart.d.cts +71 -0
  314. package/dist/components/power-history-chart.d.ts +71 -0
  315. package/dist/components/power-history-chart.js +496 -0
  316. package/dist/components/power-history-chart.js.map +1 -0
  317. package/dist/components/power-history.cjs +114 -0
  318. package/dist/components/power-history.cjs.map +1 -0
  319. package/dist/components/power-history.d.cts +40 -0
  320. package/dist/components/power-history.d.ts +41 -0
  321. package/dist/components/power-history.js +114 -0
  322. package/dist/components/power-history.js.map +1 -0
  323. package/dist/components/power-network.cjs +562 -0
  324. package/dist/components/power-network.cjs.map +1 -0
  325. package/dist/components/power-network.d.cts +80 -0
  326. package/dist/components/power-network.d.ts +80 -0
  327. package/dist/components/power-network.js +556 -0
  328. package/dist/components/power-network.js.map +1 -0
  329. package/dist/components/progress.cjs +34 -0
  330. package/dist/components/progress.cjs.map +1 -0
  331. package/dist/components/progress.d.cts +17 -0
  332. package/dist/components/progress.d.ts +17 -0
  333. package/dist/components/progress.js +31 -0
  334. package/dist/components/progress.js.map +1 -0
  335. package/dist/components/radio-card-group.cjs +94 -0
  336. package/dist/components/radio-card-group.cjs.map +1 -0
  337. package/dist/components/radio-card-group.d.cts +21 -0
  338. package/dist/components/radio-card-group.d.ts +21 -0
  339. package/dist/components/radio-card-group.js +90 -0
  340. package/dist/components/radio-card-group.js.map +1 -0
  341. package/dist/components/radio.cjs +41 -0
  342. package/dist/components/radio.cjs.map +1 -0
  343. package/dist/components/radio.d.cts +32 -0
  344. package/dist/components/radio.d.ts +32 -0
  345. package/dist/components/radio.js +37 -0
  346. package/dist/components/radio.js.map +1 -0
  347. package/dist/components/reparent.cjs +55 -0
  348. package/dist/components/reparent.cjs.map +1 -0
  349. package/dist/components/reparent.d.cts +28 -0
  350. package/dist/components/reparent.d.ts +28 -0
  351. package/dist/components/reparent.js +49 -0
  352. package/dist/components/reparent.js.map +1 -0
  353. package/dist/components/sankey-chart.cjs +187 -0
  354. package/dist/components/sankey-chart.cjs.map +1 -0
  355. package/dist/components/sankey-chart.d.cts +66 -0
  356. package/dist/components/sankey-chart.d.ts +66 -0
  357. package/dist/components/sankey-chart.js +185 -0
  358. package/dist/components/sankey-chart.js.map +1 -0
  359. package/dist/components/schedule-editor.cjs +82 -0
  360. package/dist/components/schedule-editor.cjs.map +1 -0
  361. package/dist/components/schedule-editor.d.cts +25 -0
  362. package/dist/components/schedule-editor.d.ts +25 -0
  363. package/dist/components/schedule-editor.js +72 -0
  364. package/dist/components/schedule-editor.js.map +1 -0
  365. package/dist/components/schedule-list.cjs +110 -0
  366. package/dist/components/schedule-list.cjs.map +1 -0
  367. package/dist/components/schedule-list.d.cts +29 -0
  368. package/dist/components/schedule-list.d.ts +29 -0
  369. package/dist/components/schedule-list.js +99 -0
  370. package/dist/components/schedule-list.js.map +1 -0
  371. package/dist/components/scroll-area.cjs +53 -0
  372. package/dist/components/scroll-area.cjs.map +1 -0
  373. package/dist/components/scroll-area.d.cts +24 -0
  374. package/dist/components/scroll-area.d.ts +24 -0
  375. package/dist/components/scroll-area.js +44 -0
  376. package/dist/components/scroll-area.js.map +1 -0
  377. package/dist/components/segmented-control.cjs +44 -0
  378. package/dist/components/segmented-control.cjs.map +1 -0
  379. package/dist/components/segmented-control.d.cts +32 -0
  380. package/dist/components/segmented-control.d.ts +32 -0
  381. package/dist/components/segmented-control.js +40 -0
  382. package/dist/components/segmented-control.js.map +1 -0
  383. package/dist/components/select.cjs +136 -0
  384. package/dist/components/select.cjs.map +1 -0
  385. package/dist/components/select.d.cts +62 -0
  386. package/dist/components/select.d.ts +62 -0
  387. package/dist/components/select.js +124 -0
  388. package/dist/components/select.js.map +1 -0
  389. package/dist/components/separator.cjs +38 -0
  390. package/dist/components/separator.cjs.map +1 -0
  391. package/dist/components/separator.d.cts +13 -0
  392. package/dist/components/separator.d.ts +13 -0
  393. package/dist/components/separator.js +35 -0
  394. package/dist/components/separator.js.map +1 -0
  395. package/dist/components/series-legend.cjs +38 -0
  396. package/dist/components/series-legend.cjs.map +1 -0
  397. package/dist/components/series-legend.d.cts +29 -0
  398. package/dist/components/series-legend.d.ts +29 -0
  399. package/dist/components/series-legend.js +37 -0
  400. package/dist/components/series-legend.js.map +1 -0
  401. package/dist/components/sheet.cjs +102 -0
  402. package/dist/components/sheet.cjs.map +1 -0
  403. package/dist/components/sheet.d.cts +45 -0
  404. package/dist/components/sheet.d.ts +45 -0
  405. package/dist/components/sheet.js +90 -0
  406. package/dist/components/sheet.js.map +1 -0
  407. package/dist/components/skeleton.cjs +23 -0
  408. package/dist/components/skeleton.cjs.map +1 -0
  409. package/dist/components/skeleton.d.cts +23 -0
  410. package/dist/components/skeleton.d.ts +23 -0
  411. package/dist/components/skeleton.js +21 -0
  412. package/dist/components/skeleton.js.map +1 -0
  413. package/dist/components/slider.cjs +263 -0
  414. package/dist/components/slider.cjs.map +1 -0
  415. package/dist/components/slider.d.cts +136 -0
  416. package/dist/components/slider.d.ts +136 -0
  417. package/dist/components/slider.js +253 -0
  418. package/dist/components/slider.js.map +1 -0
  419. package/dist/components/smart-toggle-button.cjs +27 -0
  420. package/dist/components/smart-toggle-button.cjs.map +1 -0
  421. package/dist/components/smart-toggle-button.d.cts +16 -0
  422. package/dist/components/smart-toggle-button.d.ts +16 -0
  423. package/dist/components/smart-toggle-button.js +26 -0
  424. package/dist/components/smart-toggle-button.js.map +1 -0
  425. package/dist/components/solar-forecast-chart.cjs +109 -0
  426. package/dist/components/solar-forecast-chart.cjs.map +1 -0
  427. package/dist/components/solar-forecast-chart.d.cts +77 -0
  428. package/dist/components/solar-forecast-chart.d.ts +77 -0
  429. package/dist/components/solar-forecast-chart.js +104 -0
  430. package/dist/components/solar-forecast-chart.js.map +1 -0
  431. package/dist/components/sortable-list.cjs +68 -0
  432. package/dist/components/sortable-list.cjs.map +1 -0
  433. package/dist/components/sortable-list.d.cts +45 -0
  434. package/dist/components/sortable-list.d.ts +45 -0
  435. package/dist/components/sortable-list.js +67 -0
  436. package/dist/components/sortable-list.js.map +1 -0
  437. package/dist/components/spinner.cjs +42 -0
  438. package/dist/components/spinner.cjs.map +1 -0
  439. package/dist/components/spinner.d.cts +15 -0
  440. package/dist/components/spinner.d.ts +15 -0
  441. package/dist/components/spinner.js +39 -0
  442. package/dist/components/spinner.js.map +1 -0
  443. package/dist/components/stat-card.cjs +57 -0
  444. package/dist/components/stat-card.cjs.map +1 -0
  445. package/dist/components/stat-card.d.cts +34 -0
  446. package/dist/components/stat-card.d.ts +34 -0
  447. package/dist/components/stat-card.js +50 -0
  448. package/dist/components/stat-card.js.map +1 -0
  449. package/dist/components/stepper.cjs +79 -0
  450. package/dist/components/stepper.cjs.map +1 -0
  451. package/dist/components/stepper.d.cts +33 -0
  452. package/dist/components/stepper.d.ts +33 -0
  453. package/dist/components/stepper.js +76 -0
  454. package/dist/components/stepper.js.map +1 -0
  455. package/dist/components/switch.cjs +26 -0
  456. package/dist/components/switch.cjs.map +1 -0
  457. package/dist/components/switch.d.cts +32 -0
  458. package/dist/components/switch.d.ts +32 -0
  459. package/dist/components/switch.js +25 -0
  460. package/dist/components/switch.js.map +1 -0
  461. package/dist/components/tabs.cjs +178 -0
  462. package/dist/components/tabs.cjs.map +1 -0
  463. package/dist/components/tabs.d.cts +44 -0
  464. package/dist/components/tabs.d.ts +44 -0
  465. package/dist/components/tabs.js +170 -0
  466. package/dist/components/tabs.js.map +1 -0
  467. package/dist/components/textarea.cjs +128 -0
  468. package/dist/components/textarea.cjs.map +1 -0
  469. package/dist/components/textarea.d.cts +15 -0
  470. package/dist/components/textarea.d.ts +15 -0
  471. package/dist/components/textarea.js +125 -0
  472. package/dist/components/textarea.js.map +1 -0
  473. package/dist/components/theme.cjs +122 -0
  474. package/dist/components/theme.cjs.map +1 -0
  475. package/dist/components/theme.d.cts +36 -0
  476. package/dist/components/theme.d.ts +36 -0
  477. package/dist/components/theme.js +118 -0
  478. package/dist/components/theme.js.map +1 -0
  479. package/dist/components/thumbnail.cjs +54 -0
  480. package/dist/components/thumbnail.cjs.map +1 -0
  481. package/dist/components/thumbnail.d.cts +33 -0
  482. package/dist/components/thumbnail.d.ts +33 -0
  483. package/dist/components/thumbnail.js +51 -0
  484. package/dist/components/thumbnail.js.map +1 -0
  485. package/dist/components/time-picker.cjs +105 -0
  486. package/dist/components/time-picker.cjs.map +1 -0
  487. package/dist/components/time-picker.d.cts +43 -0
  488. package/dist/components/time-picker.d.ts +43 -0
  489. package/dist/components/time-picker.js +101 -0
  490. package/dist/components/time-picker.js.map +1 -0
  491. package/dist/components/toast.cjs +192 -0
  492. package/dist/components/toast.cjs.map +1 -0
  493. package/dist/components/toast.d.cts +59 -0
  494. package/dist/components/toast.d.ts +59 -0
  495. package/dist/components/toast.js +188 -0
  496. package/dist/components/toast.js.map +1 -0
  497. package/dist/components/tooltip.cjs +85 -0
  498. package/dist/components/tooltip.cjs.map +1 -0
  499. package/dist/components/tooltip.d.cts +48 -0
  500. package/dist/components/tooltip.d.ts +48 -0
  501. package/dist/components/tooltip.js +77 -0
  502. package/dist/components/tooltip.js.map +1 -0
  503. package/dist/components/typography.cjs +51 -0
  504. package/dist/components/typography.cjs.map +1 -0
  505. package/dist/components/typography.d.cts +30 -0
  506. package/dist/components/typography.d.ts +30 -0
  507. package/dist/components/typography.js +45 -0
  508. package/dist/components/typography.js.map +1 -0
  509. package/dist/generate-radix-colors-Bw-RYaV4.d.cts +33 -0
  510. package/dist/generate-radix-colors-Bw-RYaV4.d.ts +33 -0
  511. package/dist/hooks/use-chart-zoom.cjs +236 -0
  512. package/dist/hooks/use-chart-zoom.cjs.map +1 -0
  513. package/dist/hooks/use-chart-zoom.d.cts +53 -0
  514. package/dist/hooks/use-chart-zoom.d.ts +53 -0
  515. package/dist/hooks/use-chart-zoom.js +234 -0
  516. package/dist/hooks/use-chart-zoom.js.map +1 -0
  517. package/dist/hooks/use-container-width.cjs +21 -0
  518. package/dist/hooks/use-container-width.cjs.map +1 -0
  519. package/dist/hooks/use-container-width.d.cts +7 -0
  520. package/dist/hooks/use-container-width.d.ts +7 -0
  521. package/dist/hooks/use-container-width.js +20 -0
  522. package/dist/hooks/use-container-width.js.map +1 -0
  523. package/dist/hooks/use-reduced-motion.cjs +21 -0
  524. package/dist/hooks/use-reduced-motion.cjs.map +1 -0
  525. package/dist/hooks/use-reduced-motion.d.cts +7 -0
  526. package/dist/hooks/use-reduced-motion.d.ts +7 -0
  527. package/dist/hooks/use-reduced-motion.js +20 -0
  528. package/dist/hooks/use-reduced-motion.js.map +1 -0
  529. package/dist/icons/index.cjs +7 -0
  530. package/dist/icons/index.d.cts +4 -0
  531. package/dist/icons/index.d.ts +4 -0
  532. package/dist/icons/index.js +3 -0
  533. package/dist/icons/material-symbol.cjs +104 -0
  534. package/dist/icons/material-symbol.cjs.map +1 -0
  535. package/dist/icons/material-symbol.d.cts +21 -0
  536. package/dist/icons/material-symbol.d.ts +21 -0
  537. package/dist/icons/material-symbol.js +100 -0
  538. package/dist/icons/material-symbol.js.map +1 -0
  539. package/dist/lib/accent-colors.cjs +14 -0
  540. package/dist/lib/accent-colors.cjs.map +1 -0
  541. package/dist/lib/accent-colors.d.cts +8 -0
  542. package/dist/lib/accent-colors.d.ts +8 -0
  543. package/dist/lib/accent-colors.js +13 -0
  544. package/dist/lib/accent-colors.js.map +1 -0
  545. package/dist/lib/accent-theme.cjs +130 -0
  546. package/dist/lib/accent-theme.cjs.map +1 -0
  547. package/dist/lib/accent-theme.d.cts +35 -0
  548. package/dist/lib/accent-theme.d.ts +35 -0
  549. package/dist/lib/accent-theme.js +122 -0
  550. package/dist/lib/accent-theme.js.map +1 -0
  551. package/dist/lib/generate-radix-colors.cjs +364 -0
  552. package/dist/lib/generate-radix-colors.cjs.map +1 -0
  553. package/dist/lib/generate-radix-colors.d.cts +4 -0
  554. package/dist/lib/generate-radix-colors.d.ts +4 -0
  555. package/dist/lib/generate-radix-colors.js +357 -0
  556. package/dist/lib/generate-radix-colors.js.map +1 -0
  557. package/dist/lib/input-box-variants.cjs +30 -0
  558. package/dist/lib/input-box-variants.cjs.map +1 -0
  559. package/dist/lib/input-box-variants.d.cts +10 -0
  560. package/dist/lib/input-box-variants.d.ts +10 -0
  561. package/dist/lib/input-box-variants.js +28 -0
  562. package/dist/lib/input-box-variants.js.map +1 -0
  563. package/dist/lib/theme-types.cjs +1 -0
  564. package/dist/lib/theme-types.d.cts +4 -0
  565. package/dist/lib/theme-types.d.ts +4 -0
  566. package/dist/lib/theme-types.js +2 -0
  567. package/dist/lib/tones.cjs +14 -0
  568. package/dist/lib/tones.cjs.map +1 -0
  569. package/dist/lib/tones.d.cts +8 -0
  570. package/dist/lib/tones.d.ts +8 -0
  571. package/dist/lib/tones.js +13 -0
  572. package/dist/lib/tones.js.map +1 -0
  573. package/dist/number-flow-Bch81ixZ.d.cts +14 -0
  574. package/dist/number-flow-Bch81ixZ.d.ts +14 -0
  575. package/dist/styles/index.css +447 -0
  576. package/dist/styles/internal.css +5 -0
  577. package/dist/styles/material-symbol.css +22 -0
  578. package/dist/styles/spark-default.css +980 -0
  579. package/dist/styles/theme.css +623 -0
  580. package/dist/styles/utilities.css +557 -0
  581. package/dist/theme-types-8wjgiNA_.d.cts +29 -0
  582. package/dist/theme-types-8wjgiNA_.d.ts +29 -0
  583. package/dist/utils/build-sankey-nodes.cjs +72 -0
  584. package/dist/utils/build-sankey-nodes.cjs.map +1 -0
  585. package/dist/utils/build-sankey-nodes.d.cts +27 -0
  586. package/dist/utils/build-sankey-nodes.d.ts +27 -0
  587. package/dist/utils/build-sankey-nodes.js +71 -0
  588. package/dist/utils/build-sankey-nodes.js.map +1 -0
  589. package/dist/utils/chars.cjs +18 -0
  590. package/dist/utils/chars.cjs.map +1 -0
  591. package/dist/utils/chars.d.cts +10 -0
  592. package/dist/utils/chars.d.ts +10 -0
  593. package/dist/utils/chars.js +14 -0
  594. package/dist/utils/chars.js.map +1 -0
  595. package/dist/utils/chart-scale.cjs +54 -0
  596. package/dist/utils/chart-scale.cjs.map +1 -0
  597. package/dist/utils/chart-scale.d.cts +29 -0
  598. package/dist/utils/chart-scale.d.ts +29 -0
  599. package/dist/utils/chart-scale.js +51 -0
  600. package/dist/utils/chart-scale.js.map +1 -0
  601. package/dist/utils/chart-time-ticks.cjs +35 -0
  602. package/dist/utils/chart-time-ticks.cjs.map +1 -0
  603. package/dist/utils/chart-time-ticks.d.cts +7 -0
  604. package/dist/utils/chart-time-ticks.d.ts +7 -0
  605. package/dist/utils/chart-time-ticks.js +34 -0
  606. package/dist/utils/chart-time-ticks.js.map +1 -0
  607. package/dist/utils/chart-zoom.cjs +84 -0
  608. package/dist/utils/chart-zoom.cjs.map +1 -0
  609. package/dist/utils/chart-zoom.d.cts +14 -0
  610. package/dist/utils/chart-zoom.d.ts +14 -0
  611. package/dist/utils/chart-zoom.js +77 -0
  612. package/dist/utils/chart-zoom.js.map +1 -0
  613. package/dist/utils/cn.cjs +9 -0
  614. package/dist/utils/cn.d.cts +4 -0
  615. package/dist/utils/cn.d.ts +4 -0
  616. package/dist/utils/cn.js +3 -0
  617. package/dist/utils/date-mask.cjs +45 -0
  618. package/dist/utils/date-mask.cjs.map +1 -0
  619. package/dist/utils/date-mask.d.cts +17 -0
  620. package/dist/utils/date-mask.d.ts +17 -0
  621. package/dist/utils/date-mask.js +41 -0
  622. package/dist/utils/date-mask.js.map +1 -0
  623. package/dist/utils/format.cjs +57 -0
  624. package/dist/utils/format.cjs.map +1 -0
  625. package/dist/utils/format.d.cts +23 -0
  626. package/dist/utils/format.d.ts +23 -0
  627. package/dist/utils/format.js +47 -0
  628. package/dist/utils/format.js.map +1 -0
  629. package/package.json +109 -0
@@ -0,0 +1,86 @@
1
+ "use client";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const require_icons_material_symbol = require("../icons/material-symbol.cjs");
4
+ const require_components_typography = require("./typography.cjs");
5
+ let react_jsx_runtime = require("react/jsx-runtime");
6
+ //#region src/components/money-saved-block.tsx
7
+ const MoneySavedContainer = ({ children, ariaLabel = "Money saved today" }) => {
8
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
9
+ "aria-label": ariaLabel,
10
+ className: "flex items-center justify-between gap-4",
11
+ children
12
+ });
13
+ };
14
+ const MoneySavedContent = ({ children }) => {
15
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
16
+ className: "flex flex-col gap-1",
17
+ children
18
+ });
19
+ };
20
+ const MoneySavedTitle = ({ children }) => {
21
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_components_typography.SectionTitle, { children });
22
+ };
23
+ const MoneySavedValue = ({ children }) => {
24
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_components_typography.StateValue, { children });
25
+ };
26
+ const MoneySavedDelta = ({ children }) => {
27
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("span", {
28
+ className: "flex items-end gap-1 text-sm text-base-success-solid",
29
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_icons_material_symbol.MaterialSymbol, {
30
+ className: "rotate-180 text-[14px]",
31
+ name: "swap_vert"
32
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
33
+ className: "tabular-nums",
34
+ children
35
+ })]
36
+ });
37
+ };
38
+ const MoneySavedGaugeContainer = ({ children }) => {
39
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
40
+ className: "relative top-2 flex flex-col items-end gap-1",
41
+ children
42
+ });
43
+ };
44
+ const MoneySavedGaugeContent = ({ autarkyProgress, autarkyLabel, autarkyCaption = "Autarky", gaugeWidth, gaugeHeight, gaugeArcPath, gaugeStrokeWidth }) => {
45
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [
46
+ /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("svg", {
47
+ className: "h-[44px] w-[76px]",
48
+ viewBox: `0 0 ${gaugeWidth} ${gaugeHeight}`,
49
+ "aria-hidden": "true",
50
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
51
+ d: gaugeArcPath,
52
+ fill: "none",
53
+ stroke: "var(--neutral-a5)",
54
+ strokeWidth: gaugeStrokeWidth,
55
+ strokeLinecap: "round",
56
+ pathLength: 1
57
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
58
+ d: gaugeArcPath,
59
+ fill: "none",
60
+ stroke: "var(--green-a9)",
61
+ strokeWidth: gaugeStrokeWidth,
62
+ strokeLinecap: "round",
63
+ pathLength: 1,
64
+ strokeDasharray: `${autarkyProgress} 1`
65
+ })]
66
+ }),
67
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
68
+ className: "absolute inset-0 flex items-center justify-center text-sm font-semibold text-gray",
69
+ children: autarkyLabel
70
+ }),
71
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
72
+ className: "mx-auto text-xs text-gray-light",
73
+ children: autarkyCaption
74
+ })
75
+ ] });
76
+ };
77
+ //#endregion
78
+ exports.MoneySavedContainer = MoneySavedContainer;
79
+ exports.MoneySavedContent = MoneySavedContent;
80
+ exports.MoneySavedDelta = MoneySavedDelta;
81
+ exports.MoneySavedGaugeContainer = MoneySavedGaugeContainer;
82
+ exports.MoneySavedGaugeContent = MoneySavedGaugeContent;
83
+ exports.MoneySavedTitle = MoneySavedTitle;
84
+ exports.MoneySavedValue = MoneySavedValue;
85
+
86
+ //# sourceMappingURL=money-saved-block.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"money-saved-block.cjs","names":["SectionTitle","StateValue","MaterialSymbol"],"sources":["../../src/components/money-saved-block.tsx"],"sourcesContent":["import { MaterialSymbol } from '../icons/material-symbol'\nimport { SectionTitle, StateValue } from './typography'\n\nconst MoneySavedContainer = ({\n children,\n ariaLabel = 'Money saved today',\n}: {\n children: React.ReactNode\n /** Override the accessible label for the container. Defaults to `\"Money saved today\"`. */\n ariaLabel?: string\n}) => {\n return (\n <div\n aria-label={ariaLabel}\n className=\"flex items-center justify-between gap-4\"\n >\n {children}\n </div>\n )\n}\n\nconst MoneySavedContent = ({ children }: { children: React.ReactNode }) => {\n return <div className=\"flex flex-col gap-1\">{children}</div>\n}\n\nconst MoneySavedTitle = ({ children }: { children: React.ReactNode }) => {\n return <SectionTitle>{children}</SectionTitle>\n}\n\nconst MoneySavedValue = ({ children }: { children: React.ReactNode }) => {\n return <StateValue>{children}</StateValue>\n}\n\nconst MoneySavedDelta = ({ children }: { children: React.ReactNode }) => {\n return (\n <span className=\"flex items-end gap-1 text-sm text-base-success-solid\">\n <MaterialSymbol className=\"rotate-180 text-[14px]\" name=\"swap_vert\" />\n <span className=\"tabular-nums\">{children}</span>\n </span>\n )\n}\n\nconst MoneySavedGaugeContainer = ({\n children,\n}: {\n children: React.ReactNode\n}) => {\n return (\n <div className=\"relative top-2 flex flex-col items-end gap-1\">\n {children}\n </div>\n )\n}\n\nconst MoneySavedGaugeContent = ({\n autarkyProgress,\n autarkyLabel,\n autarkyCaption = 'Autarky',\n gaugeWidth,\n gaugeHeight,\n gaugeArcPath,\n gaugeStrokeWidth,\n}: {\n autarkyProgress: number\n autarkyLabel: string\n /** Override the caption shown beneath the gauge. Defaults to `\"Autarky\"`. */\n autarkyCaption?: React.ReactNode\n gaugeWidth: number\n gaugeHeight: number\n gaugeArcPath: string\n gaugeStrokeWidth: number\n}) => {\n return (\n <>\n <svg\n className=\"h-[44px] w-[76px]\"\n viewBox={`0 0 ${gaugeWidth} ${gaugeHeight}`}\n aria-hidden=\"true\"\n >\n <path\n d={gaugeArcPath}\n fill=\"none\"\n stroke=\"var(--neutral-a5)\"\n strokeWidth={gaugeStrokeWidth}\n strokeLinecap=\"round\"\n pathLength={1}\n />\n <path\n d={gaugeArcPath}\n fill=\"none\"\n stroke=\"var(--green-a9)\"\n strokeWidth={gaugeStrokeWidth}\n strokeLinecap=\"round\"\n pathLength={1}\n strokeDasharray={`${autarkyProgress} 1`}\n />\n </svg>\n <span className=\"absolute inset-0 flex items-center justify-center text-sm font-semibold text-gray\">\n {autarkyLabel}\n </span>\n <span className=\"mx-auto text-xs text-gray-light\">{autarkyCaption}</span>\n </>\n )\n}\n\nexport {\n MoneySavedContainer,\n MoneySavedContent,\n MoneySavedTitle,\n MoneySavedValue,\n MoneySavedDelta,\n MoneySavedGaugeContainer,\n MoneySavedGaugeContent,\n}\n"],"mappings":";;;;;;AAGA,MAAM,uBAAuB,EAC3B,UACA,YAAY,0BAKR;CACJ,OACE,iBAAA,GAAA,kBAAA,KAAC,OAAD;EACE,cAAY;EACZ,WAAU;EAET;CACE,CAAA;AAET;AAEA,MAAM,qBAAqB,EAAE,eAA8C;CACzE,OAAO,iBAAA,GAAA,kBAAA,KAAC,OAAD;EAAK,WAAU;EAAuB;CAAc,CAAA;AAC7D;AAEA,MAAM,mBAAmB,EAAE,eAA8C;CACvE,OAAO,iBAAA,GAAA,kBAAA,KAACA,8BAAAA,cAAD,EAAe,SAAuB,CAAA;AAC/C;AAEA,MAAM,mBAAmB,EAAE,eAA8C;CACvE,OAAO,iBAAA,GAAA,kBAAA,KAACC,8BAAAA,YAAD,EAAa,SAAqB,CAAA;AAC3C;AAEA,MAAM,mBAAmB,EAAE,eAA8C;CACvE,OACE,iBAAA,GAAA,kBAAA,MAAC,QAAD;EAAM,WAAU;YAAhB,CACE,iBAAA,GAAA,kBAAA,KAACC,8BAAAA,gBAAD;GAAgB,WAAU;GAAyB,MAAK;EAAa,CAAA,GACrE,iBAAA,GAAA,kBAAA,KAAC,QAAD;GAAM,WAAU;GAAgB;EAAe,CAAA,CAC3C;;AAEV;AAEA,MAAM,4BAA4B,EAChC,eAGI;CACJ,OACE,iBAAA,GAAA,kBAAA,KAAC,OAAD;EAAK,WAAU;EACZ;CACE,CAAA;AAET;AAEA,MAAM,0BAA0B,EAC9B,iBACA,cACA,iBAAiB,WACjB,YACA,aACA,cACA,uBAUI;CACJ,OACE,iBAAA,GAAA,kBAAA,MAAA,kBAAA,UAAA,EAAA,UAAA;EACE,iBAAA,GAAA,kBAAA,MAAC,OAAD;GACE,WAAU;GACV,SAAS,OAAO,WAAW,GAAG;GAC9B,eAAY;aAHd,CAKE,iBAAA,GAAA,kBAAA,KAAC,QAAD;IACE,GAAG;IACH,MAAK;IACL,QAAO;IACP,aAAa;IACb,eAAc;IACd,YAAY;GACb,CAAA,GACD,iBAAA,GAAA,kBAAA,KAAC,QAAD;IACE,GAAG;IACH,MAAK;IACL,QAAO;IACP,aAAa;IACb,eAAc;IACd,YAAY;IACZ,iBAAiB,GAAG,gBAAgB;GACrC,CAAA,CACE;;EACL,iBAAA,GAAA,kBAAA,KAAC,QAAD;GAAM,WAAU;aACb;EACG,CAAA;EACN,iBAAA,GAAA,kBAAA,KAAC,QAAD;GAAM,WAAU;aAAmC;EAAqB,CAAA;CACxE,EAAA,CAAA;AAEN"}
@@ -0,0 +1,55 @@
1
+ "use client";
2
+
3
+ //#region src/components/money-saved-block.d.ts
4
+ declare const MoneySavedContainer: ({
5
+ children,
6
+ ariaLabel
7
+ }: {
8
+ children: React.ReactNode; /** Override the accessible label for the container. Defaults to `"Money saved today"`. */
9
+ ariaLabel?: string;
10
+ }) => import("react/jsx-runtime").JSX.Element;
11
+ declare const MoneySavedContent: ({
12
+ children
13
+ }: {
14
+ children: React.ReactNode;
15
+ }) => import("react/jsx-runtime").JSX.Element;
16
+ declare const MoneySavedTitle: ({
17
+ children
18
+ }: {
19
+ children: React.ReactNode;
20
+ }) => import("react/jsx-runtime").JSX.Element;
21
+ declare const MoneySavedValue: ({
22
+ children
23
+ }: {
24
+ children: React.ReactNode;
25
+ }) => import("react/jsx-runtime").JSX.Element;
26
+ declare const MoneySavedDelta: ({
27
+ children
28
+ }: {
29
+ children: React.ReactNode;
30
+ }) => import("react/jsx-runtime").JSX.Element;
31
+ declare const MoneySavedGaugeContainer: ({
32
+ children
33
+ }: {
34
+ children: React.ReactNode;
35
+ }) => import("react/jsx-runtime").JSX.Element;
36
+ declare const MoneySavedGaugeContent: ({
37
+ autarkyProgress,
38
+ autarkyLabel,
39
+ autarkyCaption,
40
+ gaugeWidth,
41
+ gaugeHeight,
42
+ gaugeArcPath,
43
+ gaugeStrokeWidth
44
+ }: {
45
+ autarkyProgress: number;
46
+ autarkyLabel: string; /** Override the caption shown beneath the gauge. Defaults to `"Autarky"`. */
47
+ autarkyCaption?: React.ReactNode;
48
+ gaugeWidth: number;
49
+ gaugeHeight: number;
50
+ gaugeArcPath: string;
51
+ gaugeStrokeWidth: number;
52
+ }) => import("react/jsx-runtime").JSX.Element;
53
+ //#endregion
54
+ export { MoneySavedContainer, MoneySavedContent, MoneySavedDelta, MoneySavedGaugeContainer, MoneySavedGaugeContent, MoneySavedTitle, MoneySavedValue };
55
+ //# sourceMappingURL=money-saved-block.d.cts.map
@@ -0,0 +1,55 @@
1
+ "use client";
2
+
3
+ //#region src/components/money-saved-block.d.ts
4
+ declare const MoneySavedContainer: ({
5
+ children,
6
+ ariaLabel
7
+ }: {
8
+ children: React.ReactNode; /** Override the accessible label for the container. Defaults to `"Money saved today"`. */
9
+ ariaLabel?: string;
10
+ }) => import("react/jsx-runtime").JSX.Element;
11
+ declare const MoneySavedContent: ({
12
+ children
13
+ }: {
14
+ children: React.ReactNode;
15
+ }) => import("react/jsx-runtime").JSX.Element;
16
+ declare const MoneySavedTitle: ({
17
+ children
18
+ }: {
19
+ children: React.ReactNode;
20
+ }) => import("react/jsx-runtime").JSX.Element;
21
+ declare const MoneySavedValue: ({
22
+ children
23
+ }: {
24
+ children: React.ReactNode;
25
+ }) => import("react/jsx-runtime").JSX.Element;
26
+ declare const MoneySavedDelta: ({
27
+ children
28
+ }: {
29
+ children: React.ReactNode;
30
+ }) => import("react/jsx-runtime").JSX.Element;
31
+ declare const MoneySavedGaugeContainer: ({
32
+ children
33
+ }: {
34
+ children: React.ReactNode;
35
+ }) => import("react/jsx-runtime").JSX.Element;
36
+ declare const MoneySavedGaugeContent: ({
37
+ autarkyProgress,
38
+ autarkyLabel,
39
+ autarkyCaption,
40
+ gaugeWidth,
41
+ gaugeHeight,
42
+ gaugeArcPath,
43
+ gaugeStrokeWidth
44
+ }: {
45
+ autarkyProgress: number;
46
+ autarkyLabel: string; /** Override the caption shown beneath the gauge. Defaults to `"Autarky"`. */
47
+ autarkyCaption?: React.ReactNode;
48
+ gaugeWidth: number;
49
+ gaugeHeight: number;
50
+ gaugeArcPath: string;
51
+ gaugeStrokeWidth: number;
52
+ }) => import("react/jsx-runtime").JSX.Element;
53
+ //#endregion
54
+ export { MoneySavedContainer, MoneySavedContent, MoneySavedDelta, MoneySavedGaugeContainer, MoneySavedGaugeContent, MoneySavedTitle, MoneySavedValue };
55
+ //# sourceMappingURL=money-saved-block.d.ts.map
@@ -0,0 +1,79 @@
1
+ "use client";
2
+ import { MaterialSymbol } from "../icons/material-symbol.js";
3
+ import { SectionTitle, StateValue } from "./typography.js";
4
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
5
+ //#region src/components/money-saved-block.tsx
6
+ const MoneySavedContainer = ({ children, ariaLabel = "Money saved today" }) => {
7
+ return /* @__PURE__ */ jsx("div", {
8
+ "aria-label": ariaLabel,
9
+ className: "flex items-center justify-between gap-4",
10
+ children
11
+ });
12
+ };
13
+ const MoneySavedContent = ({ children }) => {
14
+ return /* @__PURE__ */ jsx("div", {
15
+ className: "flex flex-col gap-1",
16
+ children
17
+ });
18
+ };
19
+ const MoneySavedTitle = ({ children }) => {
20
+ return /* @__PURE__ */ jsx(SectionTitle, { children });
21
+ };
22
+ const MoneySavedValue = ({ children }) => {
23
+ return /* @__PURE__ */ jsx(StateValue, { children });
24
+ };
25
+ const MoneySavedDelta = ({ children }) => {
26
+ return /* @__PURE__ */ jsxs("span", {
27
+ className: "flex items-end gap-1 text-sm text-base-success-solid",
28
+ children: [/* @__PURE__ */ jsx(MaterialSymbol, {
29
+ className: "rotate-180 text-[14px]",
30
+ name: "swap_vert"
31
+ }), /* @__PURE__ */ jsx("span", {
32
+ className: "tabular-nums",
33
+ children
34
+ })]
35
+ });
36
+ };
37
+ const MoneySavedGaugeContainer = ({ children }) => {
38
+ return /* @__PURE__ */ jsx("div", {
39
+ className: "relative top-2 flex flex-col items-end gap-1",
40
+ children
41
+ });
42
+ };
43
+ const MoneySavedGaugeContent = ({ autarkyProgress, autarkyLabel, autarkyCaption = "Autarky", gaugeWidth, gaugeHeight, gaugeArcPath, gaugeStrokeWidth }) => {
44
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
45
+ /* @__PURE__ */ jsxs("svg", {
46
+ className: "h-[44px] w-[76px]",
47
+ viewBox: `0 0 ${gaugeWidth} ${gaugeHeight}`,
48
+ "aria-hidden": "true",
49
+ children: [/* @__PURE__ */ jsx("path", {
50
+ d: gaugeArcPath,
51
+ fill: "none",
52
+ stroke: "var(--neutral-a5)",
53
+ strokeWidth: gaugeStrokeWidth,
54
+ strokeLinecap: "round",
55
+ pathLength: 1
56
+ }), /* @__PURE__ */ jsx("path", {
57
+ d: gaugeArcPath,
58
+ fill: "none",
59
+ stroke: "var(--green-a9)",
60
+ strokeWidth: gaugeStrokeWidth,
61
+ strokeLinecap: "round",
62
+ pathLength: 1,
63
+ strokeDasharray: `${autarkyProgress} 1`
64
+ })]
65
+ }),
66
+ /* @__PURE__ */ jsx("span", {
67
+ className: "absolute inset-0 flex items-center justify-center text-sm font-semibold text-gray",
68
+ children: autarkyLabel
69
+ }),
70
+ /* @__PURE__ */ jsx("span", {
71
+ className: "mx-auto text-xs text-gray-light",
72
+ children: autarkyCaption
73
+ })
74
+ ] });
75
+ };
76
+ //#endregion
77
+ export { MoneySavedContainer, MoneySavedContent, MoneySavedDelta, MoneySavedGaugeContainer, MoneySavedGaugeContent, MoneySavedTitle, MoneySavedValue };
78
+
79
+ //# sourceMappingURL=money-saved-block.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"money-saved-block.js","names":[],"sources":["../../src/components/money-saved-block.tsx"],"sourcesContent":["import { MaterialSymbol } from '../icons/material-symbol'\nimport { SectionTitle, StateValue } from './typography'\n\nconst MoneySavedContainer = ({\n children,\n ariaLabel = 'Money saved today',\n}: {\n children: React.ReactNode\n /** Override the accessible label for the container. Defaults to `\"Money saved today\"`. */\n ariaLabel?: string\n}) => {\n return (\n <div\n aria-label={ariaLabel}\n className=\"flex items-center justify-between gap-4\"\n >\n {children}\n </div>\n )\n}\n\nconst MoneySavedContent = ({ children }: { children: React.ReactNode }) => {\n return <div className=\"flex flex-col gap-1\">{children}</div>\n}\n\nconst MoneySavedTitle = ({ children }: { children: React.ReactNode }) => {\n return <SectionTitle>{children}</SectionTitle>\n}\n\nconst MoneySavedValue = ({ children }: { children: React.ReactNode }) => {\n return <StateValue>{children}</StateValue>\n}\n\nconst MoneySavedDelta = ({ children }: { children: React.ReactNode }) => {\n return (\n <span className=\"flex items-end gap-1 text-sm text-base-success-solid\">\n <MaterialSymbol className=\"rotate-180 text-[14px]\" name=\"swap_vert\" />\n <span className=\"tabular-nums\">{children}</span>\n </span>\n )\n}\n\nconst MoneySavedGaugeContainer = ({\n children,\n}: {\n children: React.ReactNode\n}) => {\n return (\n <div className=\"relative top-2 flex flex-col items-end gap-1\">\n {children}\n </div>\n )\n}\n\nconst MoneySavedGaugeContent = ({\n autarkyProgress,\n autarkyLabel,\n autarkyCaption = 'Autarky',\n gaugeWidth,\n gaugeHeight,\n gaugeArcPath,\n gaugeStrokeWidth,\n}: {\n autarkyProgress: number\n autarkyLabel: string\n /** Override the caption shown beneath the gauge. Defaults to `\"Autarky\"`. */\n autarkyCaption?: React.ReactNode\n gaugeWidth: number\n gaugeHeight: number\n gaugeArcPath: string\n gaugeStrokeWidth: number\n}) => {\n return (\n <>\n <svg\n className=\"h-[44px] w-[76px]\"\n viewBox={`0 0 ${gaugeWidth} ${gaugeHeight}`}\n aria-hidden=\"true\"\n >\n <path\n d={gaugeArcPath}\n fill=\"none\"\n stroke=\"var(--neutral-a5)\"\n strokeWidth={gaugeStrokeWidth}\n strokeLinecap=\"round\"\n pathLength={1}\n />\n <path\n d={gaugeArcPath}\n fill=\"none\"\n stroke=\"var(--green-a9)\"\n strokeWidth={gaugeStrokeWidth}\n strokeLinecap=\"round\"\n pathLength={1}\n strokeDasharray={`${autarkyProgress} 1`}\n />\n </svg>\n <span className=\"absolute inset-0 flex items-center justify-center text-sm font-semibold text-gray\">\n {autarkyLabel}\n </span>\n <span className=\"mx-auto text-xs text-gray-light\">{autarkyCaption}</span>\n </>\n )\n}\n\nexport {\n MoneySavedContainer,\n MoneySavedContent,\n MoneySavedTitle,\n MoneySavedValue,\n MoneySavedDelta,\n MoneySavedGaugeContainer,\n MoneySavedGaugeContent,\n}\n"],"mappings":";;;;;AAGA,MAAM,uBAAuB,EAC3B,UACA,YAAY,0BAKR;CACJ,OACE,oBAAC,OAAD;EACE,cAAY;EACZ,WAAU;EAET;CACE,CAAA;AAET;AAEA,MAAM,qBAAqB,EAAE,eAA8C;CACzE,OAAO,oBAAC,OAAD;EAAK,WAAU;EAAuB;CAAc,CAAA;AAC7D;AAEA,MAAM,mBAAmB,EAAE,eAA8C;CACvE,OAAO,oBAAC,cAAD,EAAe,SAAuB,CAAA;AAC/C;AAEA,MAAM,mBAAmB,EAAE,eAA8C;CACvE,OAAO,oBAAC,YAAD,EAAa,SAAqB,CAAA;AAC3C;AAEA,MAAM,mBAAmB,EAAE,eAA8C;CACvE,OACE,qBAAC,QAAD;EAAM,WAAU;YAAhB,CACE,oBAAC,gBAAD;GAAgB,WAAU;GAAyB,MAAK;EAAa,CAAA,GACrE,oBAAC,QAAD;GAAM,WAAU;GAAgB;EAAe,CAAA,CAC3C;;AAEV;AAEA,MAAM,4BAA4B,EAChC,eAGI;CACJ,OACE,oBAAC,OAAD;EAAK,WAAU;EACZ;CACE,CAAA;AAET;AAEA,MAAM,0BAA0B,EAC9B,iBACA,cACA,iBAAiB,WACjB,YACA,aACA,cACA,uBAUI;CACJ,OACE,qBAAA,UAAA,EAAA,UAAA;EACE,qBAAC,OAAD;GACE,WAAU;GACV,SAAS,OAAO,WAAW,GAAG;GAC9B,eAAY;aAHd,CAKE,oBAAC,QAAD;IACE,GAAG;IACH,MAAK;IACL,QAAO;IACP,aAAa;IACb,eAAc;IACd,YAAY;GACb,CAAA,GACD,oBAAC,QAAD;IACE,GAAG;IACH,MAAK;IACL,QAAO;IACP,aAAa;IACb,eAAc;IACd,YAAY;IACZ,iBAAiB,GAAG,gBAAgB;GACrC,CAAA,CACE;;EACL,oBAAC,QAAD;GAAM,WAAU;aACb;EACG,CAAA;EACN,oBAAC,QAAD;GAAM,WAAU;aAAmC;EAAqB,CAAA;CACxE,EAAA,CAAA;AAEN"}
@@ -0,0 +1,44 @@
1
+ "use client";
2
+ const require_chunk = require("../chunk-DY84GLCh.cjs");
3
+ require("../utils/chars.cjs");
4
+ let react = require("react");
5
+ let react_jsx_runtime = require("react/jsx-runtime");
6
+ let _number_flow_react = require("@number-flow/react");
7
+ _number_flow_react = require_chunk.__toESM(_number_flow_react);
8
+ //#region src/components/number-flow.tsx
9
+ function subscribeToDocumentLang(onChange) {
10
+ if (typeof document === "undefined") return () => {};
11
+ const observer = new MutationObserver(onChange);
12
+ observer.observe(document.documentElement, {
13
+ attributes: true,
14
+ attributeFilter: ["lang"]
15
+ });
16
+ return () => observer.disconnect();
17
+ }
18
+ function getDocumentLang() {
19
+ return typeof document === "undefined" ? void 0 : document.documentElement.lang || void 0;
20
+ }
21
+ function useDocumentLang() {
22
+ return (0, react.useSyncExternalStore)(subscribeToDocumentLang, getDocumentLang, () => void 0);
23
+ }
24
+ function withTrailingSeparator(suffix) {
25
+ if (!suffix || /^\s/.test(suffix)) return suffix;
26
+ return ` ${suffix}`;
27
+ }
28
+ function withLeadingSeparator(prefix) {
29
+ if (!prefix || /\s$/.test(prefix)) return prefix;
30
+ return `${prefix} `;
31
+ }
32
+ function NumberFlow({ locales, prefix, suffix, ...props }) {
33
+ const documentLang = useDocumentLang();
34
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_number_flow_react.default, {
35
+ locales: locales ?? documentLang,
36
+ prefix: withLeadingSeparator(prefix),
37
+ suffix: withTrailingSeparator(suffix),
38
+ ...props
39
+ });
40
+ }
41
+ //#endregion
42
+ module.exports = NumberFlow;
43
+
44
+ //# sourceMappingURL=number-flow.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"number-flow.cjs","names":["BaseNumberFlow"],"sources":["../../src/components/number-flow.tsx"],"sourcesContent":["import BaseNumberFlow, { type NumberFlowProps } from '@number-flow/react'\nimport { useSyncExternalStore } from 'react'\nimport { NARROW_NBSP } from '../utils/chars'\n\nfunction subscribeToDocumentLang(onChange: () => void) {\n if (typeof document === 'undefined') return () => {}\n const observer = new MutationObserver(onChange)\n observer.observe(document.documentElement, {\n attributes: true,\n attributeFilter: ['lang'],\n })\n return () => observer.disconnect()\n}\n\nfunction getDocumentLang() {\n return typeof document === 'undefined'\n ? undefined\n : document.documentElement.lang || undefined\n}\n\nfunction useDocumentLang() {\n return useSyncExternalStore(\n subscribeToDocumentLang,\n getDocumentLang,\n () => undefined,\n )\n}\n\nfunction withTrailingSeparator(suffix?: string) {\n if (!suffix || /^\\s/.test(suffix)) return suffix\n return `${NARROW_NBSP}${suffix}`\n}\n\nfunction withLeadingSeparator(prefix?: string) {\n if (!prefix || /\\s$/.test(prefix)) return prefix\n return `${prefix}${NARROW_NBSP}`\n}\n\nexport default function NumberFlow({\n locales,\n prefix,\n suffix,\n ...props\n}: NumberFlowProps) {\n const documentLang = useDocumentLang()\n return (\n <BaseNumberFlow\n locales={locales ?? documentLang}\n prefix={withLeadingSeparator(prefix)}\n suffix={withTrailingSeparator(suffix)}\n {...props}\n />\n )\n}\n\nexport type { Format, NumberFlowProps } from '@number-flow/react'\n"],"mappings":";;;;;;;;AAIA,SAAS,wBAAwB,UAAsB;CACrD,IAAI,OAAO,aAAa,aAAa,aAAa,CAAC;CACnD,MAAM,WAAW,IAAI,iBAAiB,QAAQ;CAC9C,SAAS,QAAQ,SAAS,iBAAiB;EACzC,YAAY;EACZ,iBAAiB,CAAC,MAAM;CAC1B,CAAC;CACD,aAAa,SAAS,WAAW;AACnC;AAEA,SAAS,kBAAkB;CACzB,OAAO,OAAO,aAAa,cACvB,KAAA,IACA,SAAS,gBAAgB,QAAQ,KAAA;AACvC;AAEA,SAAS,kBAAkB;CACzB,QAAA,GAAA,MAAA,sBACE,yBACA,uBACM,KAAA,CACR;AACF;AAEA,SAAS,sBAAsB,QAAiB;CAC9C,IAAI,CAAC,UAAU,MAAM,KAAK,MAAM,GAAG,OAAO;CAC1C,OAAO,IAAiB;AAC1B;AAEA,SAAS,qBAAqB,QAAiB;CAC7C,IAAI,CAAC,UAAU,MAAM,KAAK,MAAM,GAAG,OAAO;CAC1C,OAAO,GAAG;AACZ;AAEA,SAAwB,WAAW,EACjC,SACA,QACA,QACA,GAAG,SACe;CAClB,MAAM,eAAe,gBAAgB;CACrC,OACE,iBAAA,GAAA,kBAAA,KAACA,mBAAAA,SAAD;EACE,SAAS,WAAW;EACpB,QAAQ,qBAAqB,MAAM;EACnC,QAAQ,sBAAsB,MAAM;EACpC,GAAI;CACL,CAAA;AAEL"}
@@ -0,0 +1,4 @@
1
+ "use client";
2
+
3
+ import { n as NumberFlow, r as NumberFlowProps, t as Format } from "../number-flow-Bch81ixZ.cjs";
4
+ export { type Format, type NumberFlowProps, NumberFlow as default };
@@ -0,0 +1,4 @@
1
+ "use client";
2
+
3
+ import { n as NumberFlow, r as NumberFlowProps, t as Format } from "../number-flow-Bch81ixZ.js";
4
+ export { type Format, type NumberFlowProps, NumberFlow as default };
@@ -0,0 +1,42 @@
1
+ "use client";
2
+ import "../utils/chars.js";
3
+ import { useSyncExternalStore } from "react";
4
+ import { jsx } from "react/jsx-runtime";
5
+ import BaseNumberFlow from "@number-flow/react";
6
+ //#region src/components/number-flow.tsx
7
+ function subscribeToDocumentLang(onChange) {
8
+ if (typeof document === "undefined") return () => {};
9
+ const observer = new MutationObserver(onChange);
10
+ observer.observe(document.documentElement, {
11
+ attributes: true,
12
+ attributeFilter: ["lang"]
13
+ });
14
+ return () => observer.disconnect();
15
+ }
16
+ function getDocumentLang() {
17
+ return typeof document === "undefined" ? void 0 : document.documentElement.lang || void 0;
18
+ }
19
+ function useDocumentLang() {
20
+ return useSyncExternalStore(subscribeToDocumentLang, getDocumentLang, () => void 0);
21
+ }
22
+ function withTrailingSeparator(suffix) {
23
+ if (!suffix || /^\s/.test(suffix)) return suffix;
24
+ return ` ${suffix}`;
25
+ }
26
+ function withLeadingSeparator(prefix) {
27
+ if (!prefix || /\s$/.test(prefix)) return prefix;
28
+ return `${prefix} `;
29
+ }
30
+ function NumberFlow({ locales, prefix, suffix, ...props }) {
31
+ const documentLang = useDocumentLang();
32
+ return /* @__PURE__ */ jsx(BaseNumberFlow, {
33
+ locales: locales ?? documentLang,
34
+ prefix: withLeadingSeparator(prefix),
35
+ suffix: withTrailingSeparator(suffix),
36
+ ...props
37
+ });
38
+ }
39
+ //#endregion
40
+ export { NumberFlow as default };
41
+
42
+ //# sourceMappingURL=number-flow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"number-flow.js","names":[],"sources":["../../src/components/number-flow.tsx"],"sourcesContent":["import BaseNumberFlow, { type NumberFlowProps } from '@number-flow/react'\nimport { useSyncExternalStore } from 'react'\nimport { NARROW_NBSP } from '../utils/chars'\n\nfunction subscribeToDocumentLang(onChange: () => void) {\n if (typeof document === 'undefined') return () => {}\n const observer = new MutationObserver(onChange)\n observer.observe(document.documentElement, {\n attributes: true,\n attributeFilter: ['lang'],\n })\n return () => observer.disconnect()\n}\n\nfunction getDocumentLang() {\n return typeof document === 'undefined'\n ? undefined\n : document.documentElement.lang || undefined\n}\n\nfunction useDocumentLang() {\n return useSyncExternalStore(\n subscribeToDocumentLang,\n getDocumentLang,\n () => undefined,\n )\n}\n\nfunction withTrailingSeparator(suffix?: string) {\n if (!suffix || /^\\s/.test(suffix)) return suffix\n return `${NARROW_NBSP}${suffix}`\n}\n\nfunction withLeadingSeparator(prefix?: string) {\n if (!prefix || /\\s$/.test(prefix)) return prefix\n return `${prefix}${NARROW_NBSP}`\n}\n\nexport default function NumberFlow({\n locales,\n prefix,\n suffix,\n ...props\n}: NumberFlowProps) {\n const documentLang = useDocumentLang()\n return (\n <BaseNumberFlow\n locales={locales ?? documentLang}\n prefix={withLeadingSeparator(prefix)}\n suffix={withTrailingSeparator(suffix)}\n {...props}\n />\n )\n}\n\nexport type { Format, NumberFlowProps } from '@number-flow/react'\n"],"mappings":";;;;;;AAIA,SAAS,wBAAwB,UAAsB;CACrD,IAAI,OAAO,aAAa,aAAa,aAAa,CAAC;CACnD,MAAM,WAAW,IAAI,iBAAiB,QAAQ;CAC9C,SAAS,QAAQ,SAAS,iBAAiB;EACzC,YAAY;EACZ,iBAAiB,CAAC,MAAM;CAC1B,CAAC;CACD,aAAa,SAAS,WAAW;AACnC;AAEA,SAAS,kBAAkB;CACzB,OAAO,OAAO,aAAa,cACvB,KAAA,IACA,SAAS,gBAAgB,QAAQ,KAAA;AACvC;AAEA,SAAS,kBAAkB;CACzB,OAAO,qBACL,yBACA,uBACM,KAAA,CACR;AACF;AAEA,SAAS,sBAAsB,QAAiB;CAC9C,IAAI,CAAC,UAAU,MAAM,KAAK,MAAM,GAAG,OAAO;CAC1C,OAAO,IAAiB;AAC1B;AAEA,SAAS,qBAAqB,QAAiB;CAC7C,IAAI,CAAC,UAAU,MAAM,KAAK,MAAM,GAAG,OAAO;CAC1C,OAAO,GAAG;AACZ;AAEA,SAAwB,WAAW,EACjC,SACA,QACA,QACA,GAAG,SACe;CAClB,MAAM,eAAe,gBAAgB;CACrC,OACE,oBAAC,gBAAD;EACE,SAAS,WAAW;EACpB,QAAQ,qBAAqB,MAAM;EACnC,QAAQ,sBAAsB,MAAM;EACpC,GAAI;CACL,CAAA;AAEL"}
@@ -0,0 +1,35 @@
1
+ "use client";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const require_icons_material_symbol = require("../icons/material-symbol.cjs");
4
+ let react_jsx_runtime = require("react/jsx-runtime");
5
+ let class_variance_authority = require("class-variance-authority");
6
+ //#region src/components/on-off-button.tsx
7
+ function OnOffButton({ disabled, isOn, onClick, className }) {
8
+ const handleClick = (event) => {
9
+ event.stopPropagation();
10
+ onClick();
11
+ };
12
+ const onOfButtonClassName = (0, class_variance_authority.cva)("focus-visible:ring-primary inline-flex size-9 min-w-9 cursor-pointer items-center justify-center justify-self-end rounded-[max(var(--spark-rounded-md),var(--spark-rounded-full))] transition-colors focus-visible:ring-2 focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-60", { variants: { isOn: {
13
+ true: "bg-base-success-soft text-success hover:bg-base-success-soft/80",
14
+ false: "border border-gray text-gray-light hover:bg-base-gray-soft"
15
+ } } });
16
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
17
+ "aria-label": isOn ? "Turn off" : "Turn on",
18
+ "aria-pressed": isOn,
19
+ className: onOfButtonClassName({
20
+ isOn,
21
+ className
22
+ }),
23
+ disabled,
24
+ onClick: handleClick,
25
+ type: "button",
26
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_icons_material_symbol.MaterialSymbol, {
27
+ className: "block text-[16px]! leading-none",
28
+ name: "power_settings_new"
29
+ })
30
+ });
31
+ }
32
+ //#endregion
33
+ exports.OnOffButton = OnOffButton;
34
+
35
+ //# sourceMappingURL=on-off-button.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"on-off-button.cjs","names":["MaterialSymbol"],"sources":["../../src/components/on-off-button.tsx"],"sourcesContent":["import { cva } from 'class-variance-authority'\nimport type { MouseEvent } from 'react'\nimport { MaterialSymbol } from '../icons/material-symbol'\n\ninterface OnOffButtonProps {\n isOn: boolean\n disabled?: boolean\n onClick: () => void\n className?: string\n}\n\nexport function OnOffButton({\n disabled,\n isOn,\n onClick,\n className,\n}: OnOffButtonProps) {\n const handleClick = (event: MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation()\n onClick()\n }\n\n const onOfButtonClassName = cva(\n 'focus-visible:ring-primary inline-flex size-9 min-w-9 cursor-pointer items-center justify-center justify-self-end rounded-[max(var(--spark-rounded-md),var(--spark-rounded-full))] transition-colors focus-visible:ring-2 focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-60',\n {\n variants: {\n isOn: {\n true: 'bg-base-success-soft text-success hover:bg-base-success-soft/80',\n false: 'border border-gray text-gray-light hover:bg-base-gray-soft',\n },\n },\n },\n )\n\n return (\n <button\n aria-label={isOn ? 'Turn off' : 'Turn on'}\n aria-pressed={isOn}\n className={onOfButtonClassName({ isOn, className })}\n disabled={disabled}\n onClick={handleClick}\n type=\"button\"\n >\n <MaterialSymbol\n className=\"block text-[16px]! leading-none\"\n name=\"power_settings_new\"\n />\n </button>\n )\n}\n"],"mappings":";;;;;;AAWA,SAAgB,YAAY,EAC1B,UACA,MACA,SACA,aACmB;CACnB,MAAM,eAAe,UAAyC;EAC5D,MAAM,gBAAgB;EACtB,QAAQ;CACV;CAEA,MAAM,uBAAA,GAAA,yBAAA,KACJ,wSACA,EACE,UAAU,EACR,MAAM;EACJ,MAAM;EACN,OAAO;CACT,EACF,EACF,CACF;CAEA,OACE,iBAAA,GAAA,kBAAA,KAAC,UAAD;EACE,cAAY,OAAO,aAAa;EAChC,gBAAc;EACd,WAAW,oBAAoB;GAAE;GAAM;EAAU,CAAC;EACxC;EACV,SAAS;EACT,MAAK;YAEL,iBAAA,GAAA,kBAAA,KAACA,8BAAAA,gBAAD;GACE,WAAU;GACV,MAAK;EACN,CAAA;CACK,CAAA;AAEZ"}
@@ -0,0 +1,18 @@
1
+ "use client";
2
+
3
+ //#region src/components/on-off-button.d.ts
4
+ interface OnOffButtonProps {
5
+ isOn: boolean;
6
+ disabled?: boolean;
7
+ onClick: () => void;
8
+ className?: string;
9
+ }
10
+ declare function OnOffButton({
11
+ disabled,
12
+ isOn,
13
+ onClick,
14
+ className
15
+ }: OnOffButtonProps): import("react/jsx-runtime").JSX.Element;
16
+ //#endregion
17
+ export { OnOffButton };
18
+ //# sourceMappingURL=on-off-button.d.cts.map
@@ -0,0 +1,18 @@
1
+ "use client";
2
+
3
+ //#region src/components/on-off-button.d.ts
4
+ interface OnOffButtonProps {
5
+ isOn: boolean;
6
+ disabled?: boolean;
7
+ onClick: () => void;
8
+ className?: string;
9
+ }
10
+ declare function OnOffButton({
11
+ disabled,
12
+ isOn,
13
+ onClick,
14
+ className
15
+ }: OnOffButtonProps): import("react/jsx-runtime").JSX.Element;
16
+ //#endregion
17
+ export { OnOffButton };
18
+ //# sourceMappingURL=on-off-button.d.ts.map
@@ -0,0 +1,34 @@
1
+ "use client";
2
+ import { MaterialSymbol } from "../icons/material-symbol.js";
3
+ import { jsx } from "react/jsx-runtime";
4
+ import { cva } from "class-variance-authority";
5
+ //#region src/components/on-off-button.tsx
6
+ function OnOffButton({ disabled, isOn, onClick, className }) {
7
+ const handleClick = (event) => {
8
+ event.stopPropagation();
9
+ onClick();
10
+ };
11
+ const onOfButtonClassName = cva("focus-visible:ring-primary inline-flex size-9 min-w-9 cursor-pointer items-center justify-center justify-self-end rounded-[max(var(--spark-rounded-md),var(--spark-rounded-full))] transition-colors focus-visible:ring-2 focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-60", { variants: { isOn: {
12
+ true: "bg-base-success-soft text-success hover:bg-base-success-soft/80",
13
+ false: "border border-gray text-gray-light hover:bg-base-gray-soft"
14
+ } } });
15
+ return /* @__PURE__ */ jsx("button", {
16
+ "aria-label": isOn ? "Turn off" : "Turn on",
17
+ "aria-pressed": isOn,
18
+ className: onOfButtonClassName({
19
+ isOn,
20
+ className
21
+ }),
22
+ disabled,
23
+ onClick: handleClick,
24
+ type: "button",
25
+ children: /* @__PURE__ */ jsx(MaterialSymbol, {
26
+ className: "block text-[16px]! leading-none",
27
+ name: "power_settings_new"
28
+ })
29
+ });
30
+ }
31
+ //#endregion
32
+ export { OnOffButton };
33
+
34
+ //# sourceMappingURL=on-off-button.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"on-off-button.js","names":[],"sources":["../../src/components/on-off-button.tsx"],"sourcesContent":["import { cva } from 'class-variance-authority'\nimport type { MouseEvent } from 'react'\nimport { MaterialSymbol } from '../icons/material-symbol'\n\ninterface OnOffButtonProps {\n isOn: boolean\n disabled?: boolean\n onClick: () => void\n className?: string\n}\n\nexport function OnOffButton({\n disabled,\n isOn,\n onClick,\n className,\n}: OnOffButtonProps) {\n const handleClick = (event: MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation()\n onClick()\n }\n\n const onOfButtonClassName = cva(\n 'focus-visible:ring-primary inline-flex size-9 min-w-9 cursor-pointer items-center justify-center justify-self-end rounded-[max(var(--spark-rounded-md),var(--spark-rounded-full))] transition-colors focus-visible:ring-2 focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-60',\n {\n variants: {\n isOn: {\n true: 'bg-base-success-soft text-success hover:bg-base-success-soft/80',\n false: 'border border-gray text-gray-light hover:bg-base-gray-soft',\n },\n },\n },\n )\n\n return (\n <button\n aria-label={isOn ? 'Turn off' : 'Turn on'}\n aria-pressed={isOn}\n className={onOfButtonClassName({ isOn, className })}\n disabled={disabled}\n onClick={handleClick}\n type=\"button\"\n >\n <MaterialSymbol\n className=\"block text-[16px]! leading-none\"\n name=\"power_settings_new\"\n />\n </button>\n )\n}\n"],"mappings":";;;;;AAWA,SAAgB,YAAY,EAC1B,UACA,MACA,SACA,aACmB;CACnB,MAAM,eAAe,UAAyC;EAC5D,MAAM,gBAAgB;EACtB,QAAQ;CACV;CAEA,MAAM,sBAAsB,IAC1B,wSACA,EACE,UAAU,EACR,MAAM;EACJ,MAAM;EACN,OAAO;CACT,EACF,EACF,CACF;CAEA,OACE,oBAAC,UAAD;EACE,cAAY,OAAO,aAAa;EAChC,gBAAc;EACd,WAAW,oBAAoB;GAAE;GAAM;EAAU,CAAC;EACxC;EACV,SAAS;EACT,MAAK;YAEL,oBAAC,gBAAD;GACE,WAAU;GACV,MAAK;EACN,CAAA;CACK,CAAA;AAEZ"}
@@ -0,0 +1,67 @@
1
+ "use client";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ let react_jsx_runtime = require("react/jsx-runtime");
4
+ let cnfast = require("cnfast");
5
+ //#region src/components/onboarding-layout.tsx
6
+ const OnboardingLayout = ({ className, ...rest }) => {
7
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
8
+ className: (0, cnfast.cn)("flex flex-col gap-[calc(var(--spark-layout-gap)*6)]", className),
9
+ ...rest
10
+ });
11
+ };
12
+ /**
13
+ * Top section: typically wraps the title row, optional description, and a
14
+ * progress bar.
15
+ */
16
+ const OnboardingLayoutHeader = ({ className, ...rest }) => {
17
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
18
+ className: (0, cnfast.cn)("flex flex-col gap-[calc(var(--spark-layout-gap)*3)] pt-4", className),
19
+ ...rest
20
+ });
21
+ };
22
+ /** Text-only group inside the header (title row + description). */
23
+ const OnboardingLayoutHeading = ({ className, ...rest }) => {
24
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
25
+ className: (0, cnfast.cn)("flex flex-col gap-[calc(var(--spark-layout-gap)*1)]", className),
26
+ ...rest
27
+ });
28
+ };
29
+ /** Row that holds the title on the left and (optionally) a step badge on the right. */
30
+ const OnboardingLayoutTitleRow = ({ className, ...rest }) => {
31
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
32
+ className: (0, cnfast.cn)("flex items-center justify-between", className),
33
+ ...rest
34
+ });
35
+ };
36
+ const OnboardingLayoutTitle = ({ className, ...rest }) => {
37
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("h2", {
38
+ className: (0, cnfast.cn)("text-lg font-bold text-gray", className),
39
+ ...rest
40
+ });
41
+ };
42
+ const OnboardingLayoutDescription = ({ className, ...rest }) => {
43
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
44
+ className: (0, cnfast.cn)("text-sm text-gray-light", className),
45
+ ...rest
46
+ });
47
+ };
48
+ /**
49
+ * Bottom action row. Use with `justify-between`-aware children — typically a
50
+ * back action on the left and a cancel/primary action on the right.
51
+ */
52
+ const OnboardingLayoutFooter = ({ className, ...rest }) => {
53
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
54
+ className: (0, cnfast.cn)("flex items-center justify-between", className),
55
+ ...rest
56
+ });
57
+ };
58
+ //#endregion
59
+ exports.OnboardingLayout = OnboardingLayout;
60
+ exports.OnboardingLayoutDescription = OnboardingLayoutDescription;
61
+ exports.OnboardingLayoutFooter = OnboardingLayoutFooter;
62
+ exports.OnboardingLayoutHeader = OnboardingLayoutHeader;
63
+ exports.OnboardingLayoutHeading = OnboardingLayoutHeading;
64
+ exports.OnboardingLayoutTitle = OnboardingLayoutTitle;
65
+ exports.OnboardingLayoutTitleRow = OnboardingLayoutTitleRow;
66
+
67
+ //# sourceMappingURL=onboarding-layout.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"onboarding-layout.cjs","names":[],"sources":["../../src/components/onboarding-layout.tsx"],"sourcesContent":["import { cn } from '../utils/cn'\n\nconst OnboardingLayout = ({\n className,\n ...rest\n}: React.ComponentProps<'div'>) => {\n return (\n <div\n className={cn(\n 'flex flex-col gap-[calc(var(--spark-layout-gap)*6)]',\n className,\n )}\n {...rest}\n />\n )\n}\n\n/**\n * Top section: typically wraps the title row, optional description, and a\n * progress bar.\n */\nconst OnboardingLayoutHeader = ({\n className,\n ...rest\n}: React.ComponentProps<'div'>) => {\n return (\n <div\n className={cn(\n 'flex flex-col gap-[calc(var(--spark-layout-gap)*3)] pt-4',\n className,\n )}\n {...rest}\n />\n )\n}\n\n/** Text-only group inside the header (title row + description). */\nconst OnboardingLayoutHeading = ({\n className,\n ...rest\n}: React.ComponentProps<'div'>) => {\n return (\n <div\n className={cn(\n 'flex flex-col gap-[calc(var(--spark-layout-gap)*1)]',\n className,\n )}\n {...rest}\n />\n )\n}\n\n/** Row that holds the title on the left and (optionally) a step badge on the right. */\nconst OnboardingLayoutTitleRow = ({\n className,\n ...rest\n}: React.ComponentProps<'div'>) => {\n return (\n <div\n className={cn('flex items-center justify-between', className)}\n {...rest}\n />\n )\n}\n\nconst OnboardingLayoutTitle = ({\n className,\n ...rest\n}: React.ComponentProps<'h2'>) => {\n return (\n <h2 className={cn('text-lg font-bold text-gray', className)} {...rest} />\n )\n}\n\nconst OnboardingLayoutDescription = ({\n className,\n ...rest\n}: React.ComponentProps<'p'>) => {\n return <p className={cn('text-sm text-gray-light', className)} {...rest} />\n}\n\n/**\n * Bottom action row. Use with `justify-between`-aware children — typically a\n * back action on the left and a cancel/primary action on the right.\n */\nconst OnboardingLayoutFooter = ({\n className,\n ...rest\n}: React.ComponentProps<'div'>) => {\n return (\n <div\n className={cn('flex items-center justify-between', className)}\n {...rest}\n />\n )\n}\n\nexport {\n OnboardingLayout,\n OnboardingLayoutHeader,\n OnboardingLayoutHeading,\n OnboardingLayoutTitleRow,\n OnboardingLayoutTitle,\n OnboardingLayoutDescription,\n OnboardingLayoutFooter,\n}\n"],"mappings":";;;;;AAEA,MAAM,oBAAoB,EACxB,WACA,GAAG,WAC8B;CACjC,OACE,iBAAA,GAAA,kBAAA,KAAC,OAAD;EACE,YAAA,GAAA,OAAA,IACE,uDACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;;;;AAMA,MAAM,0BAA0B,EAC9B,WACA,GAAG,WAC8B;CACjC,OACE,iBAAA,GAAA,kBAAA,KAAC,OAAD;EACE,YAAA,GAAA,OAAA,IACE,4DACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAGA,MAAM,2BAA2B,EAC/B,WACA,GAAG,WAC8B;CACjC,OACE,iBAAA,GAAA,kBAAA,KAAC,OAAD;EACE,YAAA,GAAA,OAAA,IACE,uDACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAGA,MAAM,4BAA4B,EAChC,WACA,GAAG,WAC8B;CACjC,OACE,iBAAA,GAAA,kBAAA,KAAC,OAAD;EACE,YAAA,GAAA,OAAA,IAAc,qCAAqC,SAAS;EAC5D,GAAI;CACL,CAAA;AAEL;AAEA,MAAM,yBAAyB,EAC7B,WACA,GAAG,WAC6B;CAChC,OACE,iBAAA,GAAA,kBAAA,KAAC,MAAD;EAAI,YAAA,GAAA,OAAA,IAAc,+BAA+B,SAAS;EAAG,GAAI;CAAO,CAAA;AAE5E;AAEA,MAAM,+BAA+B,EACnC,WACA,GAAG,WAC4B;CAC/B,OAAO,iBAAA,GAAA,kBAAA,KAAC,KAAD;EAAG,YAAA,GAAA,OAAA,IAAc,2BAA2B,SAAS;EAAG,GAAI;CAAO,CAAA;AAC5E;;;;;AAMA,MAAM,0BAA0B,EAC9B,WACA,GAAG,WAC8B;CACjC,OACE,iBAAA,GAAA,kBAAA,KAAC,OAAD;EACE,YAAA,GAAA,OAAA,IAAc,qCAAqC,SAAS;EAC5D,GAAI;CACL,CAAA;AAEL"}