@dynamic-labs-sdk/droplet 0.0.0 → 0.27.2

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 (469) hide show
  1. package/README.md +292 -0
  2. package/dist/components/ask-ai-sheet/ask-ai-sheet.d.ts +11 -0
  3. package/dist/components/ask-ai-sheet/ask-ai-sheet.d.ts.map +1 -0
  4. package/dist/components/ask-ai-sheet/index.d.ts +2 -0
  5. package/dist/components/ask-ai-sheet/index.d.ts.map +1 -0
  6. package/dist/components/asset-icon/asset-icon.d.ts +7 -0
  7. package/dist/components/asset-icon/asset-icon.d.ts.map +1 -0
  8. package/dist/components/asset-icon/index.d.ts +2 -0
  9. package/dist/components/asset-icon/index.d.ts.map +1 -0
  10. package/dist/components/code-block/code-block.d.ts +24 -0
  11. package/dist/components/code-block/code-block.d.ts.map +1 -0
  12. package/dist/components/code-block/code-block.stories.d.ts +38 -0
  13. package/dist/components/code-block/code-block.stories.d.ts.map +1 -0
  14. package/dist/components/code-block/index.d.ts +3 -0
  15. package/dist/components/code-block/index.d.ts.map +1 -0
  16. package/dist/components/copy-button/copy-button.d.ts +9 -0
  17. package/dist/components/copy-button/copy-button.d.ts.map +1 -0
  18. package/dist/components/copy-button/copy-button.stories.d.ts +33 -0
  19. package/dist/components/copy-button/copy-button.stories.d.ts.map +1 -0
  20. package/dist/components/copy-button/index.d.ts +2 -0
  21. package/dist/components/copy-button/index.d.ts.map +1 -0
  22. package/dist/components/danger-zone/danger-zone.d.ts +11 -0
  23. package/dist/components/danger-zone/danger-zone.d.ts.map +1 -0
  24. package/dist/components/danger-zone/danger-zone.stories.d.ts +20 -0
  25. package/dist/components/danger-zone/danger-zone.stories.d.ts.map +1 -0
  26. package/dist/components/danger-zone/index.d.ts +2 -0
  27. package/dist/components/danger-zone/index.d.ts.map +1 -0
  28. package/dist/components/domain-list/domain-list.d.ts +10 -0
  29. package/dist/components/domain-list/domain-list.d.ts.map +1 -0
  30. package/dist/components/domain-list/domain-list.stories.d.ts +14 -0
  31. package/dist/components/domain-list/domain-list.stories.d.ts.map +1 -0
  32. package/dist/components/domain-list/index.d.ts +2 -0
  33. package/dist/components/domain-list/index.d.ts.map +1 -0
  34. package/dist/components/empty-state/empty-state.d.ts +13 -0
  35. package/dist/components/empty-state/empty-state.d.ts.map +1 -0
  36. package/dist/components/empty-state/empty-state.stories.d.ts +15 -0
  37. package/dist/components/empty-state/empty-state.stories.d.ts.map +1 -0
  38. package/dist/components/empty-state/index.d.ts +2 -0
  39. package/dist/components/empty-state/index.d.ts.map +1 -0
  40. package/dist/components/icon-config/icon-config.d.ts +11 -0
  41. package/dist/components/icon-config/icon-config.d.ts.map +1 -0
  42. package/dist/components/icon-config/index.d.ts +2 -0
  43. package/dist/components/icon-config/index.d.ts.map +1 -0
  44. package/dist/components/icons/animated-icon/animated-icon.d.ts +26 -0
  45. package/dist/components/icons/animated-icon/animated-icon.d.ts.map +1 -0
  46. package/dist/components/icons/animated-icon/index.d.ts +3 -0
  47. package/dist/components/icons/animated-icon/index.d.ts.map +1 -0
  48. package/dist/components/icons/arrow-up-right/arrow-up-right.d.ts +6 -0
  49. package/dist/components/icons/arrow-up-right/arrow-up-right.d.ts.map +1 -0
  50. package/dist/components/icons/arrow-up-right/index.d.ts +3 -0
  51. package/dist/components/icons/arrow-up-right/index.d.ts.map +1 -0
  52. package/dist/components/icons/chart-bar-increasing/chart-bar-increasing.d.ts +11 -0
  53. package/dist/components/icons/chart-bar-increasing/chart-bar-increasing.d.ts.map +1 -0
  54. package/dist/components/icons/chart-bar-increasing/index.d.ts +3 -0
  55. package/dist/components/icons/chart-bar-increasing/index.d.ts.map +1 -0
  56. package/dist/components/icons/chevron-down/chevron-down.d.ts +6 -0
  57. package/dist/components/icons/chevron-down/chevron-down.d.ts.map +1 -0
  58. package/dist/components/icons/chevron-down/index.d.ts +3 -0
  59. package/dist/components/icons/chevron-down/index.d.ts.map +1 -0
  60. package/dist/components/icons/chevron-right/chevron-right.d.ts +6 -0
  61. package/dist/components/icons/chevron-right/chevron-right.d.ts.map +1 -0
  62. package/dist/components/icons/chevron-right/index.d.ts +3 -0
  63. package/dist/components/icons/chevron-right/index.d.ts.map +1 -0
  64. package/dist/components/icons/copy/copy.d.ts +6 -0
  65. package/dist/components/icons/copy/copy.d.ts.map +1 -0
  66. package/dist/components/icons/copy/index.d.ts +3 -0
  67. package/dist/components/icons/copy/index.d.ts.map +1 -0
  68. package/dist/components/icons/copy-check/copy-check.d.ts +12 -0
  69. package/dist/components/icons/copy-check/copy-check.d.ts.map +1 -0
  70. package/dist/components/icons/copy-check/index.d.ts +3 -0
  71. package/dist/components/icons/copy-check/index.d.ts.map +1 -0
  72. package/dist/components/icons/dollar-sign/dollar-sign.d.ts +6 -0
  73. package/dist/components/icons/dollar-sign/dollar-sign.d.ts.map +1 -0
  74. package/dist/components/icons/dollar-sign/index.d.ts +3 -0
  75. package/dist/components/icons/dollar-sign/index.d.ts.map +1 -0
  76. package/dist/components/icons/download/download.d.ts +6 -0
  77. package/dist/components/icons/download/download.d.ts.map +1 -0
  78. package/dist/components/icons/download/index.d.ts +3 -0
  79. package/dist/components/icons/download/index.d.ts.map +1 -0
  80. package/dist/components/icons/fingerprint/fingerprint.d.ts +6 -0
  81. package/dist/components/icons/fingerprint/fingerprint.d.ts.map +1 -0
  82. package/dist/components/icons/fingerprint/index.d.ts +3 -0
  83. package/dist/components/icons/fingerprint/index.d.ts.map +1 -0
  84. package/dist/components/icons/home/home.d.ts +6 -0
  85. package/dist/components/icons/home/home.d.ts.map +1 -0
  86. package/dist/components/icons/home/index.d.ts +3 -0
  87. package/dist/components/icons/home/index.d.ts.map +1 -0
  88. package/dist/components/icons/key/index.d.ts +3 -0
  89. package/dist/components/icons/key/index.d.ts.map +1 -0
  90. package/dist/components/icons/key/key.d.ts +6 -0
  91. package/dist/components/icons/key/key.d.ts.map +1 -0
  92. package/dist/components/icons/layout-panel-top/index.d.ts +3 -0
  93. package/dist/components/icons/layout-panel-top/index.d.ts.map +1 -0
  94. package/dist/components/icons/layout-panel-top/layout-panel-top.d.ts +6 -0
  95. package/dist/components/icons/layout-panel-top/layout-panel-top.d.ts.map +1 -0
  96. package/dist/components/icons/link/index.d.ts +3 -0
  97. package/dist/components/icons/link/index.d.ts.map +1 -0
  98. package/dist/components/icons/link/link.d.ts +6 -0
  99. package/dist/components/icons/link/link.d.ts.map +1 -0
  100. package/dist/components/icons/mcp-tools/index.d.ts +2 -0
  101. package/dist/components/icons/mcp-tools/index.d.ts.map +1 -0
  102. package/dist/components/icons/mcp-tools/mcp-tools.d.ts +11 -0
  103. package/dist/components/icons/mcp-tools/mcp-tools.d.ts.map +1 -0
  104. package/dist/components/icons/moon/index.d.ts +3 -0
  105. package/dist/components/icons/moon/index.d.ts.map +1 -0
  106. package/dist/components/icons/moon/moon.d.ts +6 -0
  107. package/dist/components/icons/moon/moon.d.ts.map +1 -0
  108. package/dist/components/icons/panel-left-close/index.d.ts +3 -0
  109. package/dist/components/icons/panel-left-close/index.d.ts.map +1 -0
  110. package/dist/components/icons/panel-left-close/panel-left-close.d.ts +6 -0
  111. package/dist/components/icons/panel-left-close/panel-left-close.d.ts.map +1 -0
  112. package/dist/components/icons/panel-left-open/index.d.ts +3 -0
  113. package/dist/components/icons/panel-left-open/index.d.ts.map +1 -0
  114. package/dist/components/icons/panel-left-open/panel-left-open.d.ts +6 -0
  115. package/dist/components/icons/panel-left-open/panel-left-open.d.ts.map +1 -0
  116. package/dist/components/icons/plus/index.d.ts +3 -0
  117. package/dist/components/icons/plus/index.d.ts.map +1 -0
  118. package/dist/components/icons/plus/plus.d.ts +6 -0
  119. package/dist/components/icons/plus/plus.d.ts.map +1 -0
  120. package/dist/components/icons/refresh-cw/index.d.ts +3 -0
  121. package/dist/components/icons/refresh-cw/index.d.ts.map +1 -0
  122. package/dist/components/icons/refresh-cw/refresh-cw.d.ts +6 -0
  123. package/dist/components/icons/refresh-cw/refresh-cw.d.ts.map +1 -0
  124. package/dist/components/icons/search/index.d.ts +3 -0
  125. package/dist/components/icons/search/index.d.ts.map +1 -0
  126. package/dist/components/icons/search/search.d.ts +6 -0
  127. package/dist/components/icons/search/search.d.ts.map +1 -0
  128. package/dist/components/icons/settings/index.d.ts +3 -0
  129. package/dist/components/icons/settings/index.d.ts.map +1 -0
  130. package/dist/components/icons/settings/settings.d.ts +6 -0
  131. package/dist/components/icons/settings/settings.d.ts.map +1 -0
  132. package/dist/components/icons/shield-check/index.d.ts +3 -0
  133. package/dist/components/icons/shield-check/index.d.ts.map +1 -0
  134. package/dist/components/icons/shield-check/shield-check.d.ts +6 -0
  135. package/dist/components/icons/shield-check/shield-check.d.ts.map +1 -0
  136. package/dist/components/icons/sun/index.d.ts +3 -0
  137. package/dist/components/icons/sun/index.d.ts.map +1 -0
  138. package/dist/components/icons/sun/sun.d.ts +6 -0
  139. package/dist/components/icons/sun/sun.d.ts.map +1 -0
  140. package/dist/components/icons/terminal/index.d.ts +3 -0
  141. package/dist/components/icons/terminal/index.d.ts.map +1 -0
  142. package/dist/components/icons/terminal/terminal.d.ts +6 -0
  143. package/dist/components/icons/terminal/terminal.d.ts.map +1 -0
  144. package/dist/components/icons/users/index.d.ts +3 -0
  145. package/dist/components/icons/users/index.d.ts.map +1 -0
  146. package/dist/components/icons/users/users.d.ts +6 -0
  147. package/dist/components/icons/users/users.d.ts.map +1 -0
  148. package/dist/components/info-banner/index.d.ts +2 -0
  149. package/dist/components/info-banner/index.d.ts.map +1 -0
  150. package/dist/components/info-banner/info-banner.d.ts +9 -0
  151. package/dist/components/info-banner/info-banner.d.ts.map +1 -0
  152. package/dist/components/info-banner/info-banner.stories.d.ts +23 -0
  153. package/dist/components/info-banner/info-banner.stories.d.ts.map +1 -0
  154. package/dist/components/loading-skeleton/index.d.ts +2 -0
  155. package/dist/components/loading-skeleton/index.d.ts.map +1 -0
  156. package/dist/components/loading-skeleton/loading-skeleton.d.ts +19 -0
  157. package/dist/components/loading-skeleton/loading-skeleton.d.ts.map +1 -0
  158. package/dist/components/metric-card/index.d.ts +2 -0
  159. package/dist/components/metric-card/index.d.ts.map +1 -0
  160. package/dist/components/metric-card/metric-card.d.ts +31 -0
  161. package/dist/components/metric-card/metric-card.d.ts.map +1 -0
  162. package/dist/components/metric-card/metric-card.stories.d.ts +16 -0
  163. package/dist/components/metric-card/metric-card.stories.d.ts.map +1 -0
  164. package/dist/components/migration/banner/banner.d.ts +24 -0
  165. package/dist/components/migration/banner/banner.d.ts.map +1 -0
  166. package/dist/components/migration/banner/banner.stories.d.ts +39 -0
  167. package/dist/components/migration/banner/banner.stories.d.ts.map +1 -0
  168. package/dist/components/migration/banner/index.d.ts +2 -0
  169. package/dist/components/migration/banner/index.d.ts.map +1 -0
  170. package/dist/components/migration/double-section/double-section.d.ts +29 -0
  171. package/dist/components/migration/double-section/double-section.d.ts.map +1 -0
  172. package/dist/components/migration/double-section/double-section.stories.d.ts +32 -0
  173. package/dist/components/migration/double-section/double-section.stories.d.ts.map +1 -0
  174. package/dist/components/migration/double-section/index.d.ts +2 -0
  175. package/dist/components/migration/double-section/index.d.ts.map +1 -0
  176. package/dist/components/migration/field/field.d.ts +19 -0
  177. package/dist/components/migration/field/field.d.ts.map +1 -0
  178. package/dist/components/migration/field/field.stories.d.ts +43 -0
  179. package/dist/components/migration/field/field.stories.d.ts.map +1 -0
  180. package/dist/components/migration/field/index.d.ts +2 -0
  181. package/dist/components/migration/field/index.d.ts.map +1 -0
  182. package/dist/components/migration/index.d.ts +16 -0
  183. package/dist/components/migration/index.d.ts.map +1 -0
  184. package/dist/components/migration/settings-section-v2/index.d.ts +2 -0
  185. package/dist/components/migration/settings-section-v2/index.d.ts.map +1 -0
  186. package/dist/components/migration/settings-section-v2/settings-section-v2.d.ts +45 -0
  187. package/dist/components/migration/settings-section-v2/settings-section-v2.d.ts.map +1 -0
  188. package/dist/components/migration/settings-section-v2/settings-section-v2.stories.d.ts +40 -0
  189. package/dist/components/migration/settings-section-v2/settings-section-v2.stories.d.ts.map +1 -0
  190. package/dist/components/migration/sub-section/index.d.ts +2 -0
  191. package/dist/components/migration/sub-section/index.d.ts.map +1 -0
  192. package/dist/components/migration/sub-section/sub-section.d.ts +26 -0
  193. package/dist/components/migration/sub-section/sub-section.d.ts.map +1 -0
  194. package/dist/components/migration/sub-section/sub-section.stories.d.ts +33 -0
  195. package/dist/components/migration/sub-section/sub-section.stories.d.ts.map +1 -0
  196. package/dist/components/migration/toggle-group/index.d.ts +2 -0
  197. package/dist/components/migration/toggle-group/index.d.ts.map +1 -0
  198. package/dist/components/migration/toggle-group/toggle-group.d.ts +22 -0
  199. package/dist/components/migration/toggle-group/toggle-group.d.ts.map +1 -0
  200. package/dist/components/migration/toggle-group/toggle-group.stories.d.ts +21 -0
  201. package/dist/components/migration/toggle-group/toggle-group.stories.d.ts.map +1 -0
  202. package/dist/components/page-actions/index.d.ts +2 -0
  203. package/dist/components/page-actions/index.d.ts.map +1 -0
  204. package/dist/components/page-actions/page-actions.d.ts +5 -0
  205. package/dist/components/page-actions/page-actions.d.ts.map +1 -0
  206. package/dist/components/patterns/config-tab-with-pill/config-tab-with-pill.stories.d.ts +17 -0
  207. package/dist/components/patterns/config-tab-with-pill/config-tab-with-pill.stories.d.ts.map +1 -0
  208. package/dist/components/patterns/cors-list/cors-list.stories.d.ts +17 -0
  209. package/dist/components/patterns/cors-list/cors-list.stories.d.ts.map +1 -0
  210. package/dist/components/patterns/rounded-row-list/rounded-row-list.stories.d.ts +17 -0
  211. package/dist/components/patterns/rounded-row-list/rounded-row-list.stories.d.ts.map +1 -0
  212. package/dist/components/patterns/save-in-modal/save-in-modal.stories.d.ts +18 -0
  213. package/dist/components/patterns/save-in-modal/save-in-modal.stories.d.ts.map +1 -0
  214. package/dist/components/patterns/stat-card-grid/stat-card-grid.stories.d.ts +17 -0
  215. package/dist/components/patterns/stat-card-grid/stat-card-grid.stories.d.ts.map +1 -0
  216. package/dist/components/product-page-layout/index.d.ts +2 -0
  217. package/dist/components/product-page-layout/index.d.ts.map +1 -0
  218. package/dist/components/product-page-layout/product-page-layout.d.ts +20 -0
  219. package/dist/components/product-page-layout/product-page-layout.d.ts.map +1 -0
  220. package/dist/components/product-page-layout/product-page-layout.stories.d.ts +14 -0
  221. package/dist/components/product-page-layout/product-page-layout.stories.d.ts.map +1 -0
  222. package/dist/components/settings-section/index.d.ts +2 -0
  223. package/dist/components/settings-section/index.d.ts.map +1 -0
  224. package/dist/components/settings-section/settings-section.d.ts +10 -0
  225. package/dist/components/settings-section/settings-section.d.ts.map +1 -0
  226. package/dist/components/settings-section/settings-section.stories.d.ts +26 -0
  227. package/dist/components/settings-section/settings-section.stories.d.ts.map +1 -0
  228. package/dist/components/status-badge/index.d.ts +2 -0
  229. package/dist/components/status-badge/index.d.ts.map +1 -0
  230. package/dist/components/status-badge/status-badge.d.ts +9 -0
  231. package/dist/components/status-badge/status-badge.d.ts.map +1 -0
  232. package/dist/components/status-badge/status-badge.stories.d.ts +24 -0
  233. package/dist/components/status-badge/status-badge.stories.d.ts.map +1 -0
  234. package/dist/components/toggle-card/index.d.ts +2 -0
  235. package/dist/components/toggle-card/index.d.ts.map +1 -0
  236. package/dist/components/toggle-card/toggle-card.d.ts +113 -0
  237. package/dist/components/toggle-card/toggle-card.d.ts.map +1 -0
  238. package/dist/components/toggle-card/toggle-card.stories.d.ts +45 -0
  239. package/dist/components/toggle-card/toggle-card.stories.d.ts.map +1 -0
  240. package/dist/components/toggle-row/index.d.ts +2 -0
  241. package/dist/components/toggle-row/index.d.ts.map +1 -0
  242. package/dist/components/toggle-row/toggle-row.d.ts +16 -0
  243. package/dist/components/toggle-row/toggle-row.d.ts.map +1 -0
  244. package/dist/components/toggle-row/toggle-row.stories.d.ts +33 -0
  245. package/dist/components/toggle-row/toggle-row.stories.d.ts.map +1 -0
  246. package/dist/components/tokens/colors/colors.stories.d.ts +22 -0
  247. package/dist/components/tokens/colors/colors.stories.d.ts.map +1 -0
  248. package/dist/components/tokens/radius/radius.stories.d.ts +18 -0
  249. package/dist/components/tokens/radius/radius.stories.d.ts.map +1 -0
  250. package/dist/components/tokens/shadows/shadows.stories.d.ts +18 -0
  251. package/dist/components/tokens/shadows/shadows.stories.d.ts.map +1 -0
  252. package/dist/components/tokens/spacing/spacing.stories.d.ts +17 -0
  253. package/dist/components/tokens/spacing/spacing.stories.d.ts.map +1 -0
  254. package/dist/components/tokens/typography/typography.stories.d.ts +17 -0
  255. package/dist/components/tokens/typography/typography.stories.d.ts.map +1 -0
  256. package/dist/components/ui/accordion/accordion.d.ts +8 -0
  257. package/dist/components/ui/accordion/accordion.d.ts.map +1 -0
  258. package/dist/components/ui/accordion/index.d.ts +2 -0
  259. package/dist/components/ui/accordion/index.d.ts.map +1 -0
  260. package/dist/components/ui/alert-dialog/alert-dialog.d.ts +19 -0
  261. package/dist/components/ui/alert-dialog/alert-dialog.d.ts.map +1 -0
  262. package/dist/components/ui/alert-dialog/alert-dialog.stories.d.ts +13 -0
  263. package/dist/components/ui/alert-dialog/alert-dialog.stories.d.ts.map +1 -0
  264. package/dist/components/ui/alert-dialog/index.d.ts +2 -0
  265. package/dist/components/ui/alert-dialog/index.d.ts.map +1 -0
  266. package/dist/components/ui/avatar/avatar.d.ts +12 -0
  267. package/dist/components/ui/avatar/avatar.d.ts.map +1 -0
  268. package/dist/components/ui/avatar/avatar.stories.d.ts +17 -0
  269. package/dist/components/ui/avatar/avatar.stories.d.ts.map +1 -0
  270. package/dist/components/ui/avatar/index.d.ts +2 -0
  271. package/dist/components/ui/avatar/index.d.ts.map +1 -0
  272. package/dist/components/ui/badge/badge.d.ts +10 -0
  273. package/dist/components/ui/badge/badge.d.ts.map +1 -0
  274. package/dist/components/ui/badge/badge.stories.d.ts +29 -0
  275. package/dist/components/ui/badge/badge.stories.d.ts.map +1 -0
  276. package/dist/components/ui/badge/index.d.ts +2 -0
  277. package/dist/components/ui/badge/index.d.ts.map +1 -0
  278. package/dist/components/ui/button/button.d.ts +11 -0
  279. package/dist/components/ui/button/button.d.ts.map +1 -0
  280. package/dist/components/ui/button/button.stories.d.ts +42 -0
  281. package/dist/components/ui/button/button.stories.d.ts.map +1 -0
  282. package/dist/components/ui/button/index.d.ts +2 -0
  283. package/dist/components/ui/button/index.d.ts.map +1 -0
  284. package/dist/components/ui/card/card.d.ts +10 -0
  285. package/dist/components/ui/card/card.d.ts.map +1 -0
  286. package/dist/components/ui/card/card.stories.d.ts +14 -0
  287. package/dist/components/ui/card/card.stories.d.ts.map +1 -0
  288. package/dist/components/ui/card/index.d.ts +2 -0
  289. package/dist/components/ui/card/index.d.ts.map +1 -0
  290. package/dist/components/ui/check-icon/check-icon.d.ts +7 -0
  291. package/dist/components/ui/check-icon/check-icon.d.ts.map +1 -0
  292. package/dist/components/ui/check-icon/index.d.ts +2 -0
  293. package/dist/components/ui/check-icon/index.d.ts.map +1 -0
  294. package/dist/components/ui/checkbox/checkbox.d.ts +5 -0
  295. package/dist/components/ui/checkbox/checkbox.d.ts.map +1 -0
  296. package/dist/components/ui/checkbox/checkbox.stories.d.ts +18 -0
  297. package/dist/components/ui/checkbox/checkbox.stories.d.ts.map +1 -0
  298. package/dist/components/ui/checkbox/index.d.ts +2 -0
  299. package/dist/components/ui/checkbox/index.d.ts.map +1 -0
  300. package/dist/components/ui/collapsible/collapsible.d.ts +7 -0
  301. package/dist/components/ui/collapsible/collapsible.d.ts.map +1 -0
  302. package/dist/components/ui/collapsible/collapsible.stories.d.ts +14 -0
  303. package/dist/components/ui/collapsible/collapsible.stories.d.ts.map +1 -0
  304. package/dist/components/ui/collapsible/index.d.ts +2 -0
  305. package/dist/components/ui/collapsible/index.d.ts.map +1 -0
  306. package/dist/components/ui/command/command.d.ts +18 -0
  307. package/dist/components/ui/command/command.d.ts.map +1 -0
  308. package/dist/components/ui/command/index.d.ts +2 -0
  309. package/dist/components/ui/command/index.d.ts.map +1 -0
  310. package/dist/components/ui/dialog/dialog.d.ts +19 -0
  311. package/dist/components/ui/dialog/dialog.d.ts.map +1 -0
  312. package/dist/components/ui/dialog/dialog.stories.d.ts +15 -0
  313. package/dist/components/ui/dialog/dialog.stories.d.ts.map +1 -0
  314. package/dist/components/ui/dialog/index.d.ts +2 -0
  315. package/dist/components/ui/dialog/index.d.ts.map +1 -0
  316. package/dist/components/ui/dropdown-menu/dropdown-menu.d.ts +26 -0
  317. package/dist/components/ui/dropdown-menu/dropdown-menu.d.ts.map +1 -0
  318. package/dist/components/ui/dropdown-menu/dropdown-menu.stories.d.ts +14 -0
  319. package/dist/components/ui/dropdown-menu/dropdown-menu.stories.d.ts.map +1 -0
  320. package/dist/components/ui/dropdown-menu/index.d.ts +2 -0
  321. package/dist/components/ui/dropdown-menu/index.d.ts.map +1 -0
  322. package/dist/components/ui/flush-card-detach/flush-card-detach.stories.d.ts +17 -0
  323. package/dist/components/ui/flush-card-detach/flush-card-detach.stories.d.ts.map +1 -0
  324. package/dist/components/ui/icon/icon.d.ts +4 -0
  325. package/dist/components/ui/icon/icon.d.ts.map +1 -0
  326. package/dist/components/ui/icon/index.d.ts +2 -0
  327. package/dist/components/ui/icon/index.d.ts.map +1 -0
  328. package/dist/components/ui/input/index.d.ts +2 -0
  329. package/dist/components/ui/input/index.d.ts.map +1 -0
  330. package/dist/components/ui/input/input.d.ts +24 -0
  331. package/dist/components/ui/input/input.d.ts.map +1 -0
  332. package/dist/components/ui/input/input.stories.d.ts +36 -0
  333. package/dist/components/ui/input/input.stories.d.ts.map +1 -0
  334. package/dist/components/ui/kbd/index.d.ts +2 -0
  335. package/dist/components/ui/kbd/index.d.ts.map +1 -0
  336. package/dist/components/ui/kbd/kbd.d.ts +5 -0
  337. package/dist/components/ui/kbd/kbd.d.ts.map +1 -0
  338. package/dist/components/ui/label/index.d.ts +2 -0
  339. package/dist/components/ui/label/index.d.ts.map +1 -0
  340. package/dist/components/ui/label/label.d.ts +4 -0
  341. package/dist/components/ui/label/label.d.ts.map +1 -0
  342. package/dist/components/ui/label/label.stories.d.ts +14 -0
  343. package/dist/components/ui/label/label.stories.d.ts.map +1 -0
  344. package/dist/components/ui/popover/index.d.ts +2 -0
  345. package/dist/components/ui/popover/index.d.ts.map +1 -0
  346. package/dist/components/ui/popover/popover.d.ts +11 -0
  347. package/dist/components/ui/popover/popover.d.ts.map +1 -0
  348. package/dist/components/ui/popover/popover.stories.d.ts +13 -0
  349. package/dist/components/ui/popover/popover.stories.d.ts.map +1 -0
  350. package/dist/components/ui/progress/index.d.ts +2 -0
  351. package/dist/components/ui/progress/index.d.ts.map +1 -0
  352. package/dist/components/ui/progress/progress.d.ts +12 -0
  353. package/dist/components/ui/progress/progress.d.ts.map +1 -0
  354. package/dist/components/ui/progress/progress.stories.d.ts +17 -0
  355. package/dist/components/ui/progress/progress.stories.d.ts.map +1 -0
  356. package/dist/components/ui/radio-group/index.d.ts +2 -0
  357. package/dist/components/ui/radio-group/index.d.ts.map +1 -0
  358. package/dist/components/ui/radio-group/radio-group.d.ts +6 -0
  359. package/dist/components/ui/radio-group/radio-group.d.ts.map +1 -0
  360. package/dist/components/ui/radio-group/radio-group.stories.d.ts +14 -0
  361. package/dist/components/ui/radio-group/radio-group.stories.d.ts.map +1 -0
  362. package/dist/components/ui/scroll-area/index.d.ts +2 -0
  363. package/dist/components/ui/scroll-area/index.d.ts.map +1 -0
  364. package/dist/components/ui/scroll-area/scroll-area.d.ts +6 -0
  365. package/dist/components/ui/scroll-area/scroll-area.d.ts.map +1 -0
  366. package/dist/components/ui/search-input/index.d.ts +2 -0
  367. package/dist/components/ui/search-input/index.d.ts.map +1 -0
  368. package/dist/components/ui/search-input/search-input.d.ts +7 -0
  369. package/dist/components/ui/search-input/search-input.d.ts.map +1 -0
  370. package/dist/components/ui/select/index.d.ts +2 -0
  371. package/dist/components/ui/select/index.d.ts.map +1 -0
  372. package/dist/components/ui/select/select.d.ts +16 -0
  373. package/dist/components/ui/select/select.d.ts.map +1 -0
  374. package/dist/components/ui/select/select.stories.d.ts +16 -0
  375. package/dist/components/ui/select/select.stories.d.ts.map +1 -0
  376. package/dist/components/ui/selectable-card/index.d.ts +2 -0
  377. package/dist/components/ui/selectable-card/index.d.ts.map +1 -0
  378. package/dist/components/ui/selectable-card/selectable-card.d.ts +14 -0
  379. package/dist/components/ui/selectable-card/selectable-card.d.ts.map +1 -0
  380. package/dist/components/ui/selectable-card/selectable-card.stories.d.ts +20 -0
  381. package/dist/components/ui/selectable-card/selectable-card.stories.d.ts.map +1 -0
  382. package/dist/components/ui/separator/index.d.ts +2 -0
  383. package/dist/components/ui/separator/index.d.ts.map +1 -0
  384. package/dist/components/ui/separator/separator.d.ts +3 -0
  385. package/dist/components/ui/separator/separator.d.ts.map +1 -0
  386. package/dist/components/ui/separator/separator.stories.d.ts +14 -0
  387. package/dist/components/ui/separator/separator.stories.d.ts.map +1 -0
  388. package/dist/components/ui/sheet/index.d.ts +2 -0
  389. package/dist/components/ui/sheet/index.d.ts.map +1 -0
  390. package/dist/components/ui/sheet/sheet.d.ts +16 -0
  391. package/dist/components/ui/sheet/sheet.d.ts.map +1 -0
  392. package/dist/components/ui/sheet/sheet.stories.d.ts +14 -0
  393. package/dist/components/ui/sheet/sheet.stories.d.ts.map +1 -0
  394. package/dist/components/ui/skeleton/index.d.ts +2 -0
  395. package/dist/components/ui/skeleton/index.d.ts.map +1 -0
  396. package/dist/components/ui/skeleton/skeleton.d.ts +4 -0
  397. package/dist/components/ui/skeleton/skeleton.d.ts.map +1 -0
  398. package/dist/components/ui/skeleton/skeleton.stories.d.ts +15 -0
  399. package/dist/components/ui/skeleton/skeleton.stories.d.ts.map +1 -0
  400. package/dist/components/ui/sonner/index.d.ts +2 -0
  401. package/dist/components/ui/sonner/index.d.ts.map +1 -0
  402. package/dist/components/ui/sonner/sonner.d.ts +4 -0
  403. package/dist/components/ui/sonner/sonner.d.ts.map +1 -0
  404. package/dist/components/ui/spinner/index.d.ts +2 -0
  405. package/dist/components/ui/spinner/index.d.ts.map +1 -0
  406. package/dist/components/ui/spinner/spinner.d.ts +5 -0
  407. package/dist/components/ui/spinner/spinner.d.ts.map +1 -0
  408. package/dist/components/ui/spinner/spinner.stories.d.ts +17 -0
  409. package/dist/components/ui/spinner/spinner.stories.d.ts.map +1 -0
  410. package/dist/components/ui/switch/index.d.ts +2 -0
  411. package/dist/components/ui/switch/index.d.ts.map +1 -0
  412. package/dist/components/ui/switch/switch.d.ts +5 -0
  413. package/dist/components/ui/switch/switch.d.ts.map +1 -0
  414. package/dist/components/ui/switch/switch.stories.d.ts +29 -0
  415. package/dist/components/ui/switch/switch.stories.d.ts.map +1 -0
  416. package/dist/components/ui/table/index.d.ts +2 -0
  417. package/dist/components/ui/table/index.d.ts.map +1 -0
  418. package/dist/components/ui/table/table.d.ts +11 -0
  419. package/dist/components/ui/table/table.d.ts.map +1 -0
  420. package/dist/components/ui/table/table.stories.d.ts +13 -0
  421. package/dist/components/ui/table/table.stories.d.ts.map +1 -0
  422. package/dist/components/ui/tabs/index.d.ts +2 -0
  423. package/dist/components/ui/tabs/index.d.ts.map +1 -0
  424. package/dist/components/ui/tabs/tabs.d.ts +12 -0
  425. package/dist/components/ui/tabs/tabs.d.ts.map +1 -0
  426. package/dist/components/ui/tabs/tabs.stories.d.ts +13 -0
  427. package/dist/components/ui/tabs/tabs.stories.d.ts.map +1 -0
  428. package/dist/components/ui/textarea/index.d.ts +2 -0
  429. package/dist/components/ui/textarea/index.d.ts.map +1 -0
  430. package/dist/components/ui/textarea/textarea.d.ts +4 -0
  431. package/dist/components/ui/textarea/textarea.d.ts.map +1 -0
  432. package/dist/components/ui/textarea/textarea.stories.d.ts +14 -0
  433. package/dist/components/ui/textarea/textarea.stories.d.ts.map +1 -0
  434. package/dist/components/ui/tooltip/index.d.ts +2 -0
  435. package/dist/components/ui/tooltip/index.d.ts.map +1 -0
  436. package/dist/components/ui/tooltip/tooltip.d.ts +6 -0
  437. package/dist/components/ui/tooltip/tooltip.d.ts.map +1 -0
  438. package/dist/components/ui/tooltip/tooltip.stories.d.ts +14 -0
  439. package/dist/components/ui/tooltip/tooltip.stories.d.ts.map +1 -0
  440. package/dist/components/ui/well/index.d.ts +2 -0
  441. package/dist/components/ui/well/index.d.ts.map +1 -0
  442. package/dist/components/ui/well/well.d.ts +15 -0
  443. package/dist/components/ui/well/well.d.ts.map +1 -0
  444. package/dist/components/ui/well/well.stories.d.ts +39 -0
  445. package/dist/components/ui/well/well.stories.d.ts.map +1 -0
  446. package/dist/components/unsaved-changes-bar/index.d.ts +2 -0
  447. package/dist/components/unsaved-changes-bar/index.d.ts.map +1 -0
  448. package/dist/components/unsaved-changes-bar/unsaved-changes-bar.d.ts +22 -0
  449. package/dist/components/unsaved-changes-bar/unsaved-changes-bar.d.ts.map +1 -0
  450. package/dist/components/unsaved-changes-bar/unsaved-changes-bar.stories.d.ts +15 -0
  451. package/dist/components/unsaved-changes-bar/unsaved-changes-bar.stories.d.ts.map +1 -0
  452. package/dist/index.cjs +4064 -0
  453. package/dist/index.cjs.map +1 -0
  454. package/dist/index.d.ts +80 -0
  455. package/dist/index.d.ts.map +1 -0
  456. package/dist/index.esm.js +3851 -0
  457. package/dist/index.esm.js.map +1 -0
  458. package/dist/lib/utils.d.ts +3 -0
  459. package/dist/lib/utils.d.ts.map +1 -0
  460. package/dist/migration.cjs +328 -0
  461. package/dist/migration.cjs.map +1 -0
  462. package/dist/migration.esm.js +322 -0
  463. package/dist/migration.esm.js.map +1 -0
  464. package/dist/toggle-row-7lfPUutt.cjs +320 -0
  465. package/dist/toggle-row-7lfPUutt.cjs.map +1 -0
  466. package/dist/toggle-row-B5iXNWCJ.esm.js +278 -0
  467. package/dist/toggle-row-B5iXNWCJ.esm.js.map +1 -0
  468. package/package.json +91 -1
  469. package/src/styles/globals.css +615 -0
@@ -0,0 +1,3 @@
1
+ import { type ClassValue } from 'clsx';
2
+ export declare const cn: (...inputs: ClassValue[]) => string;
3
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAQ,MAAM,MAAM,CAAC;AAG7C,eAAO,MAAM,EAAE,cAAe,UAAU,EAAE,WAA0B,CAAC"}
@@ -0,0 +1,328 @@
1
+ const require_toggle_row = require('./toggle-row-7lfPUutt.cjs');
2
+ const require_index = require('./index.cjs');
3
+ let react = require("react");
4
+ let _hugeicons_react = require("@hugeicons/react");
5
+ let _hugeicons_core_free_icons = require("@hugeicons/core-free-icons");
6
+ let react_jsx_runtime = require("react/jsx-runtime");
7
+
8
+ //#region src/components/migration/banner/banner.tsx
9
+ /**
10
+ * MIGRATION-AID — temporary composite added to unblock the redcoast
11
+ * Northstar→droplet dashboard migration. NOT canonical. Will be replaced
12
+ * by the design team's finalized version. Do not adopt for new droplet
13
+ * projects; use the canonical droplet primitives directly instead.
14
+ *
15
+ * Tracking: https://github.com/dynamic-labs/redcoast/blob/main/MIGRATION-PLAN.md
16
+ */
17
+ const variantStyles = {
18
+ advance: {
19
+ bg: "bg-brand-light border-border-focused/20",
20
+ iconColor: "text-brand-default",
21
+ text: "text-brand-accented"
22
+ },
23
+ error: {
24
+ bg: "bg-danger-light border-border-danger/20",
25
+ iconColor: "text-danger-default",
26
+ text: "text-text-danger"
27
+ },
28
+ info: {
29
+ bg: "bg-bg-default border-border-divider",
30
+ iconColor: "text-muted-foreground",
31
+ text: "text-muted-foreground"
32
+ },
33
+ success: {
34
+ bg: "bg-success-light border-border-success/20",
35
+ iconColor: "text-success-default",
36
+ text: "text-text-success"
37
+ },
38
+ warning: {
39
+ bg: "bg-warning-light border-border-warning/20",
40
+ iconColor: "text-warning-default",
41
+ text: "text-text-warning"
42
+ }
43
+ };
44
+ const variantIcons = {
45
+ advance: _hugeicons_core_free_icons.AiMagicIcon,
46
+ error: _hugeicons_core_free_icons.Alert01Icon,
47
+ info: _hugeicons_core_free_icons.InformationCircleIcon,
48
+ success: _hugeicons_core_free_icons.CheckmarkCircle02Icon,
49
+ warning: _hugeicons_core_free_icons.Alert01Icon
50
+ };
51
+ /**
52
+ * 5-variant banner: `info` | `warning` | `error` | `success` | `advance`.
53
+ * Inline icon + text + optional action button + optional close.
54
+ *
55
+ * Distinct from the canonical single-variant `InfoBanner`. The canonical
56
+ * replacement may simply extend `InfoBanner` with semantic variants.
57
+ *
58
+ * @deprecated Migration-aid only. Replace with canonical version when available.
59
+ */
60
+ const Banner = ({ action, children, className, dismissible = false, onDismiss, variant = "info" }) => {
61
+ const [dismissed, setDismissed] = (0, react.useState)(false);
62
+ const handleDismiss = () => {
63
+ setDismissed(true);
64
+ onDismiss?.();
65
+ };
66
+ if (dismissed) return null;
67
+ const styles = variantStyles[variant];
68
+ const icon = variantIcons[variant];
69
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("output", {
70
+ className: require_toggle_row.cn("flex items-center gap-2.5 rounded-lg border px-3 py-2 text-sm", styles.bg, styles.text, className),
71
+ children: [
72
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
73
+ className: require_toggle_row.cn("shrink-0", styles.iconColor),
74
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_hugeicons_react.HugeiconsIcon, {
75
+ icon,
76
+ size: 16
77
+ })
78
+ }),
79
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
80
+ className: "flex-1 min-w-0 text-pretty font-medium",
81
+ children
82
+ }),
83
+ action && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
84
+ type: "button",
85
+ onClick: action.onClick,
86
+ className: require_toggle_row.cn("shrink-0 px-2 py-1 rounded-md text-xs font-medium cursor-pointer touch-manipulation", "hover:bg-overlay-hover transition-colors", styles.text),
87
+ children: action.text
88
+ }),
89
+ dismissible && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
90
+ type: "button",
91
+ onClick: handleDismiss,
92
+ "aria-label": "Dismiss",
93
+ className: require_toggle_row.cn("shrink-0 rounded-sm p-0.5 opacity-70 hover:opacity-100 cursor-pointer transition-opacity", styles.text),
94
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_hugeicons_react.HugeiconsIcon, {
95
+ icon: _hugeicons_core_free_icons.Cancel01Icon,
96
+ size: 14
97
+ })
98
+ })
99
+ ]
100
+ });
101
+ };
102
+
103
+ //#endregion
104
+ //#region src/components/migration/double-section/double-section.tsx
105
+ /**
106
+ * Two `SettingsSection`-like blocks side by side with a divider between them.
107
+ * Common use case: "Live mode | Sandbox mode" pairs.
108
+ *
109
+ * @deprecated Migration-aid only. Replace with canonical version when available.
110
+ */
111
+ const DoubleSection = ({ className, sections }) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)("section", {
112
+ className: require_toggle_row.cn("rounded-xl border border-border bg-card shadow-[var(--shadow-card)] overflow-hidden", "grid grid-cols-1 md:grid-cols-2 md:divide-x md:divide-border-divider", className),
113
+ children: sections.map((section) => /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
114
+ className: "p-6 space-y-4",
115
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
116
+ className: "flex items-center gap-2",
117
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("h3", {
118
+ className: "text-sm font-semibold text-balance",
119
+ children: section.title
120
+ }), section.badge]
121
+ }), section.description && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
122
+ className: "text-sm text-muted-foreground mt-1 text-pretty",
123
+ children: section.description
124
+ })] }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
125
+ className: "space-y-3",
126
+ children: section.children
127
+ })]
128
+ }, section.id))
129
+ });
130
+
131
+ //#endregion
132
+ //#region src/components/migration/field/field.tsx
133
+ /**
134
+ * MIGRATION-AID — temporary composite added to unblock the redcoast
135
+ * Northstar→droplet dashboard migration. NOT canonical. Will be replaced
136
+ * by the design team's finalized version. Do not adopt for new droplet
137
+ * projects; use the canonical droplet primitives directly instead.
138
+ *
139
+ * Tracking: https://github.com/dynamic-labs/redcoast/blob/main/MIGRATION-PLAN.md
140
+ */
141
+ /**
142
+ * `Label` + `Input` + helper/error composite. Wires up `htmlFor`,
143
+ * `aria-describedby`, and `aria-invalid` so call sites don't repeat the layout.
144
+ *
145
+ * The canonical version may differ in form-validation integration (RHF,
146
+ * formik, native form, etc.) — keep this composite focused on layout only.
147
+ *
148
+ * @deprecated Migration-aid only. Replace with canonical version when available.
149
+ */
150
+ const Field = ({ className, error, helper, label, required, id: idProp, ...inputProps }) => {
151
+ const reactId = (0, react.useId)();
152
+ const id = idProp || reactId;
153
+ const helperId = `${id}-helper`;
154
+ const errorId = `${id}-error`;
155
+ const showHelper = Boolean(helper) && !error;
156
+ const showError = Boolean(error);
157
+ let describedBy;
158
+ if (showError) describedBy = errorId;
159
+ else if (showHelper) describedBy = helperId;
160
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
161
+ className: require_toggle_row.cn("space-y-2", className),
162
+ children: [
163
+ /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(require_toggle_row.Label, {
164
+ htmlFor: id,
165
+ children: [label, required && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
166
+ className: "text-text-danger",
167
+ "aria-hidden": true,
168
+ children: "*"
169
+ })]
170
+ }),
171
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_toggle_row.Input, {
172
+ id,
173
+ "aria-describedby": describedBy,
174
+ "aria-invalid": error ? true : void 0,
175
+ required,
176
+ ...inputProps
177
+ }),
178
+ showHelper ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
179
+ id: helperId,
180
+ className: "text-xs text-muted-foreground",
181
+ children: helper
182
+ }) : null,
183
+ showError ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
184
+ id: errorId,
185
+ role: "alert",
186
+ className: "text-xs text-text-danger",
187
+ children: error
188
+ }) : null
189
+ ]
190
+ });
191
+ };
192
+
193
+ //#endregion
194
+ //#region src/components/migration/settings-section-v2/settings-section-v2.tsx
195
+ /**
196
+ * Card-shaped settings section with a header (title + optional description +
197
+ * optional helpLink + optional alert) and a content area.
198
+ *
199
+ * `layout='split'` renders header on the left and content on the right (1fr
200
+ * 2fr grid on `md+`). Default `'stacked'` matches the canonical
201
+ * `SettingsSection`.
202
+ *
203
+ * `variant='danger'` tints the title red and adds a red border.
204
+ *
205
+ * @deprecated Migration-aid only. Replace with canonical `SettingsSection` once
206
+ * the design team's finalized version supports `helpLink` / `alert` / split layout.
207
+ */
208
+ const SettingsSectionV2 = ({ alert, children, className, description, helpLink, layout = "stacked", title, variant = "default" }) => {
209
+ const headerBlock = /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", { children: [
210
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("h3", {
211
+ className: require_toggle_row.cn("text-sm font-semibold text-balance", variant === "danger" && "text-text-danger"),
212
+ children: title
213
+ }),
214
+ description && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
215
+ className: "text-sm text-muted-foreground mt-1 text-pretty",
216
+ children: description
217
+ }),
218
+ helpLink && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("a", {
219
+ href: helpLink.url,
220
+ target: "_blank",
221
+ rel: "noreferrer",
222
+ className: "inline-block text-sm font-medium text-text-link mt-2 hover:underline",
223
+ children: [helpLink.text, " →"]
224
+ }),
225
+ alert && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
226
+ className: "mt-3",
227
+ children: alert
228
+ })
229
+ ] });
230
+ if (layout === "split") return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("section", {
231
+ className: require_toggle_row.cn("rounded-xl border border-border bg-card p-6 shadow-[var(--shadow-card)]", "grid grid-cols-1 md:grid-cols-[1fr_2fr] gap-6", variant === "danger" && "border-border-danger/30", className),
232
+ children: [headerBlock, /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
233
+ className: "space-y-4",
234
+ children
235
+ })]
236
+ });
237
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("section", {
238
+ className: require_toggle_row.cn("rounded-xl border border-border bg-card p-6 shadow-[var(--shadow-card)]", variant === "danger" && "border-border-danger/30", className),
239
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
240
+ className: "mb-4",
241
+ children: headerBlock
242
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
243
+ className: "space-y-4",
244
+ children
245
+ })]
246
+ });
247
+ };
248
+
249
+ //#endregion
250
+ //#region src/components/migration/sub-section/sub-section.tsx
251
+ /**
252
+ * Heading + content stack, used inside an outer SettingsSection to group
253
+ * sub-fields. Two variants:
254
+ * - 'plain' (default): unboxed.
255
+ * - 'boxed': thin-bordered card-within-a-card.
256
+ *
257
+ * @deprecated Migration-aid only. Replace with canonical version when available.
258
+ */
259
+ const SubSection = ({ children, className, description, title, variant = "plain" }) => {
260
+ if (variant === "boxed") return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
261
+ className: require_toggle_row.cn("rounded-lg border border-border-divider bg-bg-bottom p-4", className),
262
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
263
+ className: "mb-3",
264
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("h4", {
265
+ className: "text-sm font-medium text-foreground",
266
+ children: title
267
+ }), description && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
268
+ className: "text-xs text-muted-foreground mt-0.5 text-pretty",
269
+ children: description
270
+ })]
271
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
272
+ className: "space-y-3",
273
+ children
274
+ })]
275
+ });
276
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
277
+ className: require_toggle_row.cn("space-y-3", className),
278
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("h4", {
279
+ className: "text-sm font-medium text-foreground",
280
+ children: title
281
+ }), description && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
282
+ className: "text-xs text-muted-foreground mt-0.5 text-pretty",
283
+ children: description
284
+ })] }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
285
+ className: "space-y-3",
286
+ children
287
+ })]
288
+ });
289
+ };
290
+
291
+ //#endregion
292
+ //#region src/components/migration/toggle-group/toggle-group.tsx
293
+ /**
294
+ * MIGRATION-AID — temporary composite added to unblock the redcoast
295
+ * Northstar→droplet dashboard migration. NOT canonical. Will be replaced
296
+ * by the design team's finalized version. Do not adopt for new droplet
297
+ * projects; use the canonical droplet primitives directly instead.
298
+ *
299
+ * Tracking: https://github.com/dynamic-labs/redcoast/blob/main/MIGRATION-PLAN.md
300
+ */
301
+ /**
302
+ * Master `ToggleRow` on top, with a vertically-indented stack of nested
303
+ * sub-toggles underneath. Sub-toggles auto-hide when the master is off.
304
+ *
305
+ * Used for "social login → which providers" and similar grouped-toggle
306
+ * patterns ported from redcoast.
307
+ *
308
+ * @deprecated Migration-aid only. Replace with canonical version when available.
309
+ */
310
+ const ToggleGroup = ({ children, className, master }) => {
311
+ const showChildren = master.checked && Boolean(children);
312
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
313
+ className: require_toggle_row.cn("space-y-3", className),
314
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_toggle_row.ToggleRow, { ...master }), showChildren ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
315
+ className: "ml-[42px] pl-4 border-l border-border-divider space-y-3",
316
+ children
317
+ }) : null]
318
+ });
319
+ };
320
+
321
+ //#endregion
322
+ exports.Banner = Banner;
323
+ exports.DoubleSection = DoubleSection;
324
+ exports.Field = Field;
325
+ exports.SettingsSectionV2 = SettingsSectionV2;
326
+ exports.SubSection = SubSection;
327
+ exports.ToggleGroup = ToggleGroup;
328
+ //# sourceMappingURL=migration.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migration.cjs","names":["variantStyles: Record<BannerVariant, VariantStyle>","variantIcons: Record<BannerVariant, typeof Alert01Icon>","AiMagicIcon","Alert01Icon","InformationCircleIcon","CheckmarkCircle02Icon","cn","HugeiconsIcon","Cancel01Icon","cn","describedBy: string | undefined","cn","Label","Input","cn","cn","cn","ToggleRow"],"sources":["../src/components/migration/banner/banner.tsx","../src/components/migration/double-section/double-section.tsx","../src/components/migration/field/field.tsx","../src/components/migration/settings-section-v2/settings-section-v2.tsx","../src/components/migration/sub-section/sub-section.tsx","../src/components/migration/toggle-group/toggle-group.tsx"],"sourcesContent":["/**\n * MIGRATION-AID — temporary composite added to unblock the redcoast\n * Northstar→droplet dashboard migration. NOT canonical. Will be replaced\n * by the design team's finalized version. Do not adopt for new droplet\n * projects; use the canonical droplet primitives directly instead.\n *\n * Tracking: https://github.com/dynamic-labs/redcoast/blob/main/MIGRATION-PLAN.md\n */\n'use client';\n\nimport { type ReactNode, useState } from 'react';\nimport {\n AiMagicIcon,\n Alert01Icon,\n Cancel01Icon,\n CheckmarkCircle02Icon,\n InformationCircleIcon,\n} from '@hugeicons/core-free-icons';\nimport { HugeiconsIcon } from '@hugeicons/react';\n\nimport { cn } from '../../../lib/utils';\n\nexport type BannerVariant = 'info' | 'warning' | 'error' | 'success' | 'advance';\n\nexport type BannerProps = {\n action?: { onClick: () => void; text: string };\n children: ReactNode;\n className?: string;\n dismissible?: boolean;\n onDismiss?: () => void;\n variant?: BannerVariant;\n};\n\ntype VariantStyle = { bg: string; iconColor: string; text: string };\n\nconst variantStyles: Record<BannerVariant, VariantStyle> = {\n advance: {\n bg: 'bg-brand-light border-border-focused/20',\n iconColor: 'text-brand-default',\n text: 'text-brand-accented',\n },\n error: {\n bg: 'bg-danger-light border-border-danger/20',\n iconColor: 'text-danger-default',\n text: 'text-text-danger',\n },\n info: {\n bg: 'bg-bg-default border-border-divider',\n iconColor: 'text-muted-foreground',\n text: 'text-muted-foreground',\n },\n success: {\n bg: 'bg-success-light border-border-success/20',\n iconColor: 'text-success-default',\n text: 'text-text-success',\n },\n warning: {\n bg: 'bg-warning-light border-border-warning/20',\n iconColor: 'text-warning-default',\n text: 'text-text-warning',\n },\n};\n\nconst variantIcons: Record<BannerVariant, typeof Alert01Icon> = {\n advance: AiMagicIcon,\n error: Alert01Icon,\n info: InformationCircleIcon,\n success: CheckmarkCircle02Icon,\n warning: Alert01Icon,\n};\n\n/**\n * 5-variant banner: `info` | `warning` | `error` | `success` | `advance`.\n * Inline icon + text + optional action button + optional close.\n *\n * Distinct from the canonical single-variant `InfoBanner`. The canonical\n * replacement may simply extend `InfoBanner` with semantic variants.\n *\n * @deprecated Migration-aid only. Replace with canonical version when available.\n */\nexport const Banner = ({\n action,\n children,\n className,\n dismissible = false,\n onDismiss,\n variant = 'info',\n}: BannerProps) => {\n const [dismissed, setDismissed] = useState(false);\n\n const handleDismiss = () => {\n setDismissed(true);\n onDismiss?.();\n };\n\n if (dismissed) return null;\n\n const styles = variantStyles[variant];\n const icon = variantIcons[variant];\n\n return (\n <output\n className={cn(\n 'flex items-center gap-2.5 rounded-lg border px-3 py-2 text-sm',\n styles.bg,\n styles.text,\n className,\n )}\n >\n <span className={cn('shrink-0', styles.iconColor)}>\n <HugeiconsIcon icon={icon} size={16} />\n </span>\n <div className='flex-1 min-w-0 text-pretty font-medium'>{children}</div>\n {action && (\n <button\n type='button'\n onClick={action.onClick}\n className={cn(\n 'shrink-0 px-2 py-1 rounded-md text-xs font-medium cursor-pointer touch-manipulation',\n 'hover:bg-overlay-hover transition-colors',\n styles.text,\n )}\n >\n {action.text}\n </button>\n )}\n {dismissible && (\n <button\n type='button'\n onClick={handleDismiss}\n aria-label='Dismiss'\n className={cn(\n 'shrink-0 rounded-sm p-0.5 opacity-70 hover:opacity-100 cursor-pointer transition-opacity',\n styles.text,\n )}\n >\n <HugeiconsIcon icon={Cancel01Icon} size={14} />\n </button>\n )}\n </output>\n );\n};\n","/**\n * MIGRATION-AID — temporary composite added to unblock the redcoast\n * Northstar→droplet dashboard migration. NOT canonical. Will be replaced\n * by the design team's finalized version. Do not adopt for new droplet\n * projects; use the canonical droplet primitives directly instead.\n *\n * Tracking: https://github.com/dynamic-labs/redcoast/blob/main/MIGRATION-PLAN.md\n */\nimport { type ReactNode } from 'react';\n\nimport { cn } from '../../../lib/utils';\n\ntype SectionItem = {\n badge?: ReactNode;\n children: ReactNode;\n description?: string;\n id: string;\n title: ReactNode;\n};\n\nexport type DoubleSectionProps = {\n className?: string;\n sections: [SectionItem, SectionItem];\n};\n\n/**\n * Two `SettingsSection`-like blocks side by side with a divider between them.\n * Common use case: \"Live mode | Sandbox mode\" pairs.\n *\n * @deprecated Migration-aid only. Replace with canonical version when available.\n */\nexport const DoubleSection = ({ className, sections }: DoubleSectionProps) => (\n <section\n className={cn(\n 'rounded-xl border border-border bg-card shadow-[var(--shadow-card)] overflow-hidden',\n 'grid grid-cols-1 md:grid-cols-2 md:divide-x md:divide-border-divider',\n className,\n )}\n >\n {sections.map((section) => (\n <div key={section.id} className='p-6 space-y-4'>\n <div>\n <div className='flex items-center gap-2'>\n <h3 className='text-sm font-semibold text-balance'>{section.title}</h3>\n {section.badge}\n </div>\n {section.description && (\n <p className='text-sm text-muted-foreground mt-1 text-pretty'>\n {section.description}\n </p>\n )}\n </div>\n <div className='space-y-3'>{section.children}</div>\n </div>\n ))}\n </section>\n);\n","/**\n * MIGRATION-AID — temporary composite added to unblock the redcoast\n * Northstar→droplet dashboard migration. NOT canonical. Will be replaced\n * by the design team's finalized version. Do not adopt for new droplet\n * projects; use the canonical droplet primitives directly instead.\n *\n * Tracking: https://github.com/dynamic-labs/redcoast/blob/main/MIGRATION-PLAN.md\n */\n'use client';\n\nimport { type ComponentProps, type ReactNode, useId } from 'react';\n\nimport { cn } from '../../../lib/utils';\nimport { Input } from '../../ui/input';\nimport { Label } from '../../ui/label';\n\nexport type FieldProps = Omit<ComponentProps<'input'>, 'children'> & {\n className?: string;\n error?: string;\n helper?: ReactNode;\n label: string;\n required?: boolean;\n};\n\n/**\n * `Label` + `Input` + helper/error composite. Wires up `htmlFor`,\n * `aria-describedby`, and `aria-invalid` so call sites don't repeat the layout.\n *\n * The canonical version may differ in form-validation integration (RHF,\n * formik, native form, etc.) — keep this composite focused on layout only.\n *\n * @deprecated Migration-aid only. Replace with canonical version when available.\n */\nexport const Field = ({\n className,\n error,\n helper,\n label,\n required,\n id: idProp,\n ...inputProps\n}: FieldProps) => {\n const reactId = useId();\n const id = idProp || reactId;\n const helperId = `${id}-helper`;\n const errorId = `${id}-error`;\n\n const showHelper = Boolean(helper) && !error;\n const showError = Boolean(error);\n\n let describedBy: string | undefined;\n if (showError) {\n describedBy = errorId;\n } else if (showHelper) {\n describedBy = helperId;\n }\n\n return (\n <div className={cn('space-y-2', className)}>\n <Label htmlFor={id}>\n {label}\n {required && (\n <span className='text-text-danger' aria-hidden>\n *\n </span>\n )}\n </Label>\n <Input\n id={id}\n aria-describedby={describedBy}\n aria-invalid={error ? true : undefined}\n required={required}\n {...inputProps}\n />\n {showHelper ? (\n <p id={helperId} className='text-xs text-muted-foreground'>\n {helper}\n </p>\n ) : null}\n {showError ? (\n <p id={errorId} role='alert' className='text-xs text-text-danger'>\n {error}\n </p>\n ) : null}\n </div>\n );\n};\n","/**\n * MIGRATION-AID — temporary composite added to unblock the redcoast\n * Northstar→droplet dashboard migration. NOT canonical. Will be replaced\n * by the design team's finalized version. Do not adopt for new droplet\n * projects; use the canonical droplet `SettingsSection` directly instead.\n *\n * This is the redcoast-flavored variant of `SettingsSection` extended with\n * - `helpLink` (deep-link to docs)\n * - `alert` (inline alert slot in the header)\n * - `layout='split'` (opt-in 2-column variant matching Northstar's layout)\n *\n * The canonical `SettingsSection` at `../../settings-section` remains untouched\n * so its consumers don't pick up Northstar-flavored API.\n *\n * Tracking: https://github.com/dynamic-labs/redcoast/blob/main/MIGRATION-PLAN.md\n */\nimport { type ReactNode } from 'react';\n\nimport { cn } from '../../../lib/utils';\n\nexport type SettingsSectionV2Props = {\n alert?: ReactNode;\n children: ReactNode;\n className?: string;\n description?: string;\n helpLink?: { text: string; url: string };\n layout?: 'stacked' | 'split';\n title: string;\n variant?: 'default' | 'danger';\n};\n\n/**\n * Card-shaped settings section with a header (title + optional description +\n * optional helpLink + optional alert) and a content area.\n *\n * `layout='split'` renders header on the left and content on the right (1fr\n * 2fr grid on `md+`). Default `'stacked'` matches the canonical\n * `SettingsSection`.\n *\n * `variant='danger'` tints the title red and adds a red border.\n *\n * @deprecated Migration-aid only. Replace with canonical `SettingsSection` once\n * the design team's finalized version supports `helpLink` / `alert` / split layout.\n */\nexport const SettingsSectionV2 = ({\n alert,\n children,\n className,\n description,\n helpLink,\n layout = 'stacked',\n title,\n variant = 'default',\n}: SettingsSectionV2Props) => {\n const headerBlock = (\n <div>\n <h3\n className={cn(\n 'text-sm font-semibold text-balance',\n variant === 'danger' && 'text-text-danger',\n )}\n >\n {title}\n </h3>\n {description && (\n <p className='text-sm text-muted-foreground mt-1 text-pretty'>\n {description}\n </p>\n )}\n {helpLink && (\n <a\n href={helpLink.url}\n target='_blank'\n rel='noreferrer'\n className='inline-block text-sm font-medium text-text-link mt-2 hover:underline'\n >\n {helpLink.text} →\n </a>\n )}\n {alert && <div className='mt-3'>{alert}</div>}\n </div>\n );\n\n if (layout === 'split') {\n return (\n <section\n className={cn(\n 'rounded-xl border border-border bg-card p-6 shadow-[var(--shadow-card)]',\n 'grid grid-cols-1 md:grid-cols-[1fr_2fr] gap-6',\n variant === 'danger' && 'border-border-danger/30',\n className,\n )}\n >\n {headerBlock}\n <div className='space-y-4'>{children}</div>\n </section>\n );\n }\n\n return (\n <section\n className={cn(\n 'rounded-xl border border-border bg-card p-6 shadow-[var(--shadow-card)]',\n variant === 'danger' && 'border-border-danger/30',\n className,\n )}\n >\n <div className='mb-4'>{headerBlock}</div>\n <div className='space-y-4'>{children}</div>\n </section>\n );\n};\n","/**\n * MIGRATION-AID — temporary composite added to unblock the redcoast\n * Northstar→droplet dashboard migration. NOT canonical. Will be replaced\n * by the design team's finalized version. Do not adopt for new droplet\n * projects; use the canonical droplet primitives directly instead.\n *\n * Tracking: https://github.com/dynamic-labs/redcoast/blob/main/MIGRATION-PLAN.md\n */\nimport { type ReactNode } from 'react';\n\nimport { cn } from '../../../lib/utils';\n\nexport type SubSectionProps = {\n children: ReactNode;\n className?: string;\n description?: string;\n title: string;\n variant?: 'plain' | 'boxed';\n};\n\n/**\n * Heading + content stack, used inside an outer SettingsSection to group\n * sub-fields. Two variants:\n * - 'plain' (default): unboxed.\n * - 'boxed': thin-bordered card-within-a-card.\n *\n * @deprecated Migration-aid only. Replace with canonical version when available.\n */\nexport const SubSection = ({\n children,\n className,\n description,\n title,\n variant = 'plain',\n}: SubSectionProps) => {\n if (variant === 'boxed') {\n return (\n <div\n className={cn(\n 'rounded-lg border border-border-divider bg-bg-bottom p-4',\n className,\n )}\n >\n <div className='mb-3'>\n <h4 className='text-sm font-medium text-foreground'>{title}</h4>\n {description && (\n <p className='text-xs text-muted-foreground mt-0.5 text-pretty'>\n {description}\n </p>\n )}\n </div>\n <div className='space-y-3'>{children}</div>\n </div>\n );\n }\n\n return (\n <div className={cn('space-y-3', className)}>\n <div>\n <h4 className='text-sm font-medium text-foreground'>{title}</h4>\n {description && (\n <p className='text-xs text-muted-foreground mt-0.5 text-pretty'>\n {description}\n </p>\n )}\n </div>\n <div className='space-y-3'>{children}</div>\n </div>\n );\n};\n","/**\n * MIGRATION-AID — temporary composite added to unblock the redcoast\n * Northstar→droplet dashboard migration. NOT canonical. Will be replaced\n * by the design team's finalized version. Do not adopt for new droplet\n * projects; use the canonical droplet primitives directly instead.\n *\n * Tracking: https://github.com/dynamic-labs/redcoast/blob/main/MIGRATION-PLAN.md\n */\n'use client';\n\nimport { type ReactNode } from 'react';\n\nimport { ToggleRow, type ToggleRowProps } from '../../toggle-row';\nimport { cn } from '../../../lib/utils';\n\nexport type ToggleGroupProps = {\n children?: ReactNode;\n className?: string;\n /**\n * All ToggleRow props for the master row. `children` of master is ignored —\n * pass nested rows via `children` of ToggleGroup.\n */\n master: Omit<ToggleRowProps, 'children'>;\n};\n\n/**\n * Master `ToggleRow` on top, with a vertically-indented stack of nested\n * sub-toggles underneath. Sub-toggles auto-hide when the master is off.\n *\n * Used for \"social login → which providers\" and similar grouped-toggle\n * patterns ported from redcoast.\n *\n * @deprecated Migration-aid only. Replace with canonical version when available.\n */\nexport const ToggleGroup = ({ children, className, master }: ToggleGroupProps) => {\n const showChildren = master.checked && Boolean(children);\n\n return (\n <div className={cn('space-y-3', className)}>\n <ToggleRow {...master} />\n {showChildren ? (\n <div className='ml-[42px] pl-4 border-l border-border-divider space-y-3'>\n {children}\n </div>\n ) : null}\n </div>\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;AAmCA,MAAMA,gBAAqD;CACzD,SAAS;EACP,IAAI;EACJ,WAAW;EACX,MAAM;EACP;CACD,OAAO;EACL,IAAI;EACJ,WAAW;EACX,MAAM;EACP;CACD,MAAM;EACJ,IAAI;EACJ,WAAW;EACX,MAAM;EACP;CACD,SAAS;EACP,IAAI;EACJ,WAAW;EACX,MAAM;EACP;CACD,SAAS;EACP,IAAI;EACJ,WAAW;EACX,MAAM;EACP;CACF;AAED,MAAMC,eAA0D;CAC9D,SAASC;CACT,OAAOC;CACP,MAAMC;CACN,SAASC;CACT,SAASF;CACV;;;;;;;;;;AAWD,MAAa,UAAU,EACrB,QACA,UACA,WACA,cAAc,OACd,WACA,UAAU,aACO;CACjB,MAAM,CAAC,WAAW,oCAAyB,MAAM;CAEjD,MAAM,sBAAsB;AAC1B,eAAa,KAAK;AAClB,eAAa;;AAGf,KAAI,UAAW,QAAO;CAEtB,MAAM,SAAS,cAAc;CAC7B,MAAM,OAAO,aAAa;AAE1B,QACE,4CAAC;EACC,WAAWG,sBACT,iEACA,OAAO,IACP,OAAO,MACP,UACD;;GAED,2CAAC;IAAK,WAAWA,sBAAG,YAAY,OAAO,UAAU;cAC/C,2CAACC;KAAoB;KAAM,MAAM;MAAM;KAClC;GACP,2CAAC;IAAI,WAAU;IAA0C;KAAe;GACvE,UACC,2CAAC;IACC,MAAK;IACL,SAAS,OAAO;IAChB,WAAWD,sBACT,uFACA,4CACA,OAAO,KACR;cAEA,OAAO;KACD;GAEV,eACC,2CAAC;IACC,MAAK;IACL,SAAS;IACT,cAAW;IACX,WAAWA,sBACT,4FACA,OAAO,KACR;cAED,2CAACC;KAAc,MAAMC;KAAc,MAAM;MAAM;KACxC;;GAEJ;;;;;;;;;;;AC5Gb,MAAa,iBAAiB,EAAE,WAAW,eACzC,2CAAC;CACC,WAAWC,sBACT,uFACA,wEACA,UACD;WAEA,SAAS,KAAK,YACb,4CAAC;EAAqB,WAAU;aAC9B,4CAAC,oBACC,4CAAC;GAAI,WAAU;cACb,2CAAC;IAAG,WAAU;cAAsC,QAAQ;KAAW,EACtE,QAAQ;IACL,EACL,QAAQ,eACP,2CAAC;GAAE,WAAU;aACV,QAAQ;IACP,IAEF,EACN,2CAAC;GAAI,WAAU;aAAa,QAAQ;IAAe;IAZ3C,QAAQ,GAaZ,CACN;EACM;;;;;;;;;;;;;;;;;;;;;ACtBZ,MAAa,SAAS,EACpB,WACA,OACA,QACA,OACA,UACA,IAAI,QACJ,GAAG,iBACa;CAChB,MAAM,4BAAiB;CACvB,MAAM,KAAK,UAAU;CACrB,MAAM,WAAW,GAAG,GAAG;CACvB,MAAM,UAAU,GAAG,GAAG;CAEtB,MAAM,aAAa,QAAQ,OAAO,IAAI,CAAC;CACvC,MAAM,YAAY,QAAQ,MAAM;CAEhC,IAAIC;AACJ,KAAI,UACF,eAAc;UACL,WACT,eAAc;AAGhB,QACE,4CAAC;EAAI,WAAWC,sBAAG,aAAa,UAAU;;GACxC,4CAACC;IAAM,SAAS;eACb,OACA,YACC,2CAAC;KAAK,WAAU;KAAmB;eAAY;MAExC;KAEH;GACR,2CAACC;IACK;IACJ,oBAAkB;IAClB,gBAAc,QAAQ,OAAO;IACnB;IACV,GAAI;KACJ;GACD,aACC,2CAAC;IAAE,IAAI;IAAU,WAAU;cACxB;KACC,GACF;GACH,YACC,2CAAC;IAAE,IAAI;IAAS,MAAK;IAAQ,WAAU;cACpC;KACC,GACF;;GACA;;;;;;;;;;;;;;;;;;ACxCV,MAAa,qBAAqB,EAChC,OACA,UACA,WACA,aACA,UACA,SAAS,WACT,OACA,UAAU,gBACkB;CAC5B,MAAM,cACJ,4CAAC;EACC,2CAAC;GACC,WAAWC,sBACT,sCACA,YAAY,YAAY,mBACzB;aAEA;IACE;EACJ,eACC,2CAAC;GAAE,WAAU;aACV;IACC;EAEL,YACC,4CAAC;GACC,MAAM,SAAS;GACf,QAAO;GACP,KAAI;GACJ,WAAU;cAET,SAAS,MAAK;IACb;EAEL,SAAS,2CAAC;GAAI,WAAU;aAAQ;IAAY;KACzC;AAGR,KAAI,WAAW,QACb,QACE,4CAAC;EACC,WAAWA,sBACT,2EACA,iDACA,YAAY,YAAY,2BACxB,UACD;aAEA,aACD,2CAAC;GAAI,WAAU;GAAa;IAAe;GACnC;AAId,QACE,4CAAC;EACC,WAAWA,sBACT,2EACA,YAAY,YAAY,2BACxB,UACD;aAED,2CAAC;GAAI,WAAU;aAAQ;IAAkB,EACzC,2CAAC;GAAI,WAAU;GAAa;IAAe;GACnC;;;;;;;;;;;;;ACjFd,MAAa,cAAc,EACzB,UACA,WACA,aACA,OACA,UAAU,cACW;AACrB,KAAI,YAAY,QACd,QACE,4CAAC;EACC,WAAWC,sBACT,4DACA,UACD;aAED,4CAAC;GAAI,WAAU;cACb,2CAAC;IAAG,WAAU;cAAuC;KAAW,EAC/D,eACC,2CAAC;IAAE,WAAU;cACV;KACC;IAEF,EACN,2CAAC;GAAI,WAAU;GAAa;IAAe;GACvC;AAIV,QACE,4CAAC;EAAI,WAAWA,sBAAG,aAAa,UAAU;aACxC,4CAAC,oBACC,2CAAC;GAAG,WAAU;aAAuC;IAAW,EAC/D,eACC,2CAAC;GAAE,WAAU;aACV;IACC,IAEF,EACN,2CAAC;GAAI,WAAU;GAAa;IAAe;GACvC;;;;;;;;;;;;;;;;;;;;;;ACjCV,MAAa,eAAe,EAAE,UAAU,WAAW,aAA+B;CAChF,MAAM,eAAe,OAAO,WAAW,QAAQ,SAAS;AAExD,QACE,4CAAC;EAAI,WAAWC,sBAAG,aAAa,UAAU;aACxC,2CAACC,gCAAU,GAAI,SAAU,EACxB,eACC,2CAAC;GAAI,WAAU;GACZ;IACG,GACJ;GACA"}