rune-lab 0.3.1 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (397) hide show
  1. package/.gitignore +12 -0
  2. package/README.md +4 -4
  3. package/deno.json +50 -0
  4. package/justfile +5 -0
  5. package/package.json +3 -80
  6. package/scripts/build_pkg.ts +51 -0
  7. package/scripts/ci.just +26 -0
  8. package/scripts/deploy.just +21 -0
  9. package/scripts/dev.just +4 -0
  10. package/scripts/inject.just +72 -0
  11. package/src/RuneProvider.svelte +105 -0
  12. package/src/i18n/message-resolver.test.ts +103 -0
  13. package/src/i18n/message-resolver.ts +89 -0
  14. package/src/i18n/project.inlang/settings.json +26 -0
  15. package/src/i18n/translations/ar.json +89 -0
  16. package/src/i18n/translations/de.json +89 -0
  17. package/src/i18n/translations/en.json +89 -0
  18. package/src/i18n/translations/es.json +89 -0
  19. package/src/i18n/translations/fr.json +89 -0
  20. package/src/i18n/translations/hi.json +89 -0
  21. package/src/i18n/translations/it.json +89 -0
  22. package/src/i18n/translations/ja.json +89 -0
  23. package/src/i18n/translations/ko.json +89 -0
  24. package/src/i18n/translations/pt.json +89 -0
  25. package/src/i18n/translations/ru.json +89 -0
  26. package/src/i18n/translations/vi.json +89 -0
  27. package/src/i18n/translations/zh.json +89 -0
  28. package/src/kernel/deno.json +5 -0
  29. package/src/kernel/src/actions/portal.ts +41 -0
  30. package/src/kernel/src/actions/shortcut-listener.ts +50 -0
  31. package/src/kernel/src/context/app.svelte.ts +98 -0
  32. package/src/kernel/src/context/context.ts +31 -0
  33. package/src/kernel/src/context/stores.svelte.ts +96 -0
  34. package/src/kernel/src/context/types.ts +110 -0
  35. package/src/kernel/src/context/useRuneLab.ts +38 -0
  36. package/src/kernel/src/mod.ts +13 -0
  37. package/src/kernel/src/persistence/createConfigStore.svelte.ts +120 -0
  38. package/src/kernel/src/persistence/drivers.test.ts +95 -0
  39. package/src/kernel/src/persistence/drivers.ts +77 -0
  40. package/src/kernel/src/persistence/provider.test.ts +58 -0
  41. package/src/kernel/src/persistence/provider.ts +58 -0
  42. package/src/kernel/src/persistence/types.ts +19 -0
  43. package/src/kernel/src/persistence/usePersistence.ts +9 -0
  44. package/src/kernel/src/registry/mod.ts +221 -0
  45. package/src/kernel/src/registry/registry.test.ts +162 -0
  46. package/src/kernel/src/tokens/props.ts +94 -0
  47. package/src/mod.ts +10 -0
  48. package/src/runes/layout/deno.json +5 -0
  49. package/src/runes/layout/src/APP_CONFIGURATIONS.ts +56 -0
  50. package/{dist/ui/features/config → src/runes/layout/src}/AppSettingSelector.svelte +1 -1
  51. package/{dist/ui/layout → src/runes/layout/src}/ConnectedNavigationPanel.svelte +7 -8
  52. package/{dist/ui/layout → src/runes/layout/src}/ConnectedWorkspaceStrip.svelte +5 -3
  53. package/src/runes/layout/src/Icon.svelte +7 -0
  54. package/src/runes/layout/src/LanguageSelector.svelte +45 -0
  55. package/{dist/ui/layout → src/runes/layout/src}/NavigationPanel.svelte +1 -4
  56. package/src/runes/layout/src/ResourceSelector.svelte +90 -0
  57. package/src/runes/layout/src/ThemeSelector.svelte +50 -0
  58. package/{dist/ui/layout → src/runes/layout/src}/WorkspaceLayout.svelte +13 -3
  59. package/{dist/ui/layout → src/runes/layout/src}/WorkspaceStrip.svelte +1 -1
  60. package/src/runes/layout/src/connection-factory.ts +95 -0
  61. package/src/runes/layout/src/language.svelte.ts +44 -0
  62. package/src/runes/layout/src/mod.ts +71 -0
  63. package/src/runes/layout/src/store.svelte.ts +142 -0
  64. package/src/runes/layout/src/theme.svelte.ts +73 -0
  65. package/src/runes/layout/src/types.ts +11 -0
  66. package/src/runes/palettes/deno.json +8 -0
  67. package/{dist/ui/features/command-palette → src/runes/palettes/src/commands}/CommandPalette.svelte +4 -4
  68. package/src/runes/palettes/src/commands/mod.ts +2 -0
  69. package/src/runes/palettes/src/commands/store.svelte.ts +80 -0
  70. package/src/runes/palettes/src/mod.ts +51 -0
  71. package/{dist/ui/components → src/runes/palettes/src/notifications}/Toaster.svelte +1 -2
  72. package/src/runes/palettes/src/notifications/bridge.ts +56 -0
  73. package/src/runes/palettes/src/notifications/mod.ts +4 -0
  74. package/src/runes/palettes/src/notifications/store.svelte.ts +58 -0
  75. package/{dist/ui/features → src/runes/palettes/src}/shortcuts/ShortcutPalette.svelte +4 -4
  76. package/src/runes/palettes/src/shortcuts/mod.ts +4 -0
  77. package/src/runes/palettes/src/shortcuts/store.svelte.ts +85 -0
  78. package/src/runes/palettes/src/shortcuts/types.ts +4 -0
  79. package/src/runes/palettes/src/shortcuts/useShortcuts.ts +85 -0
  80. package/src/runes/plugins/money/deno.json +8 -0
  81. package/src/runes/plugins/money/src/CurrencySelector.svelte +41 -0
  82. package/src/runes/plugins/money/src/MoneyDisplay.svelte +142 -0
  83. package/src/runes/plugins/money/src/MoneyInput.svelte +208 -0
  84. package/src/runes/plugins/money/src/currency.svelte.ts +95 -0
  85. package/src/runes/plugins/money/src/currency.test.ts +40 -0
  86. package/src/runes/plugins/money/src/exchange-rate.svelte.ts +176 -0
  87. package/src/runes/plugins/money/src/exchange-rate.test.ts +95 -0
  88. package/src/runes/plugins/money/src/mod.ts +79 -0
  89. package/src/runes/plugins/money/src/money-primitive.test.ts +217 -0
  90. package/src/runes/plugins/money/src/money-primitive.ts +220 -0
  91. package/src/runes/plugins/money/src/money.test.ts +183 -0
  92. package/src/runes/plugins/money/src/money.ts +382 -0
  93. package/src/runes/plugins/money/src/strategies.test.ts +143 -0
  94. package/src/runes/plugins/money/src/strategies.ts +95 -0
  95. package/src/runes/plugins/money/src/types.ts +27 -0
  96. package/src/runes/plugins/money/src/useMoney.ts +261 -0
  97. package/src/runes/plugins/money/src/useMoneyFilter.ts +132 -0
  98. package/tsconfig.json +41 -0
  99. package/vite.config.ts +44 -0
  100. package/dist/core/index.d.ts +0 -4
  101. package/dist/core/index.d.ts.map +0 -1
  102. package/dist/core/index.js +0 -3
  103. package/dist/core/internal/message-resolver.d.ts +0 -42
  104. package/dist/core/internal/message-resolver.d.ts.map +0 -1
  105. package/dist/core/internal/message-resolver.js +0 -47
  106. package/dist/core/money/index.d.ts +0 -2
  107. package/dist/core/money/index.d.ts.map +0 -1
  108. package/dist/core/money/index.js +0 -2
  109. package/dist/core/money/money.d.ts +0 -57
  110. package/dist/core/money/money.d.ts.map +0 -1
  111. package/dist/core/money/money.js +0 -132
  112. package/dist/core/persistence/types.d.ts +0 -18
  113. package/dist/core/persistence/types.d.ts.map +0 -1
  114. package/dist/core/persistence/types.js +0 -2
  115. package/dist/index.d.ts +0 -5
  116. package/dist/index.js +0 -5
  117. package/dist/state/api.svelte.d.ts +0 -26
  118. package/dist/state/api.svelte.js +0 -65
  119. package/dist/state/app.svelte.d.ts +0 -48
  120. package/dist/state/app.svelte.js +0 -82
  121. package/dist/state/auth/index.d.ts +0 -2
  122. package/dist/state/auth/index.js +0 -2
  123. package/dist/state/auth/session.svelte.d.ts +0 -40
  124. package/dist/state/auth/session.svelte.js +0 -57
  125. package/dist/state/auth/types.d.ts +0 -30
  126. package/dist/state/auth/types.js +0 -3
  127. package/dist/state/cart.svelte.d.ts +0 -64
  128. package/dist/state/cart.svelte.js +0 -122
  129. package/dist/state/commands.svelte.d.ts +0 -46
  130. package/dist/state/commands.svelte.js +0 -62
  131. package/dist/state/composables/useMoney.d.ts +0 -15
  132. package/dist/state/composables/useMoney.js +0 -62
  133. package/dist/state/composables/usePersistence.d.ts +0 -2
  134. package/dist/state/composables/usePersistence.js +0 -5
  135. package/dist/state/composables/useRuneLab.d.ts +0 -19
  136. package/dist/state/composables/useRuneLab.js +0 -30
  137. package/dist/state/context.d.ts +0 -14
  138. package/dist/state/context.js +0 -15
  139. package/dist/state/createConfigStore.svelte.d.ts +0 -55
  140. package/dist/state/createConfigStore.svelte.js +0 -61
  141. package/dist/state/currency.svelte.d.ts +0 -28
  142. package/dist/state/currency.svelte.js +0 -80
  143. package/dist/state/daisyui.d.ts +0 -4
  144. package/dist/state/index.d.ts +0 -19
  145. package/dist/state/index.js +0 -25
  146. package/dist/state/language.svelte.d.ts +0 -64
  147. package/dist/state/language.svelte.js +0 -44
  148. package/dist/state/layout.svelte.d.ts +0 -49
  149. package/dist/state/layout.svelte.js +0 -108
  150. package/dist/state/persistence/drivers.d.ts +0 -12
  151. package/dist/state/persistence/drivers.js +0 -73
  152. package/dist/state/shortcuts.svelte.d.ts +0 -121
  153. package/dist/state/shortcuts.svelte.js +0 -222
  154. package/dist/state/theme.svelte.d.ts +0 -22
  155. package/dist/state/theme.svelte.js +0 -92
  156. package/dist/state/toast-bridge.d.ts +0 -29
  157. package/dist/state/toast-bridge.js +0 -43
  158. package/dist/state/toast.svelte.d.ts +0 -27
  159. package/dist/state/toast.svelte.js +0 -43
  160. package/dist/ui/actions/portal.d.ts +0 -7
  161. package/dist/ui/actions/portal.js +0 -32
  162. package/dist/ui/components/ApiMonitor.svelte +0 -162
  163. package/dist/ui/components/ApiMonitor.svelte.d.ts +0 -3
  164. package/dist/ui/components/Icon.svelte +0 -108
  165. package/dist/ui/components/Icon.svelte.d.ts +0 -14
  166. package/dist/ui/components/Kyntharil.svelte +0 -48
  167. package/dist/ui/components/Kyntharil.svelte.d.ts +0 -6
  168. package/dist/ui/components/RuneProvider.svelte +0 -198
  169. package/dist/ui/components/RuneProvider.svelte.d.ts +0 -42
  170. package/dist/ui/components/Toaster.svelte.d.ts +0 -18
  171. package/dist/ui/components/money/MoneyDisplay.svelte +0 -69
  172. package/dist/ui/components/money/MoneyDisplay.svelte.d.ts +0 -21
  173. package/dist/ui/components/money/MoneyDisplay.svelte.test.d.ts +0 -1
  174. package/dist/ui/components/money/MoneyDisplay.svelte.test.js +0 -74
  175. package/dist/ui/components/money/MoneyInput.svelte +0 -131
  176. package/dist/ui/components/money/MoneyInput.svelte.d.ts +0 -25
  177. package/dist/ui/components/money/index.d.ts +0 -2
  178. package/dist/ui/components/money/index.js +0 -3
  179. package/dist/ui/components/user/UserAvatar.svelte +0 -66
  180. package/dist/ui/components/user/UserAvatar.svelte.d.ts +0 -13
  181. package/dist/ui/components/user/UserProfile.svelte +0 -79
  182. package/dist/ui/components/user/UserProfile.svelte.d.ts +0 -17
  183. package/dist/ui/components/user/index.d.ts +0 -2
  184. package/dist/ui/components/user/index.js +0 -3
  185. package/dist/ui/features/command-palette/CommandPalette.svelte.d.ts +0 -6
  186. package/dist/ui/features/config/AppSettingSelector.svelte.d.ts +0 -13
  187. package/dist/ui/features/config/CurrencySelector.svelte +0 -67
  188. package/dist/ui/features/config/CurrencySelector.svelte.d.ts +0 -8
  189. package/dist/ui/features/config/LanguageSelector.svelte +0 -66
  190. package/dist/ui/features/config/LanguageSelector.svelte.d.ts +0 -8
  191. package/dist/ui/features/config/ThemeSelector.svelte +0 -73
  192. package/dist/ui/features/config/ThemeSelector.svelte.d.ts +0 -8
  193. package/dist/ui/features/notifications/NotificationBell.svelte.d.ts +0 -11
  194. package/dist/ui/features/notifications/index.d.ts +0 -1
  195. package/dist/ui/features/notifications/index.js +0 -2
  196. package/dist/ui/features/shortcuts/ShortcutPalette.svelte.d.ts +0 -6
  197. package/dist/ui/index.d.ts +0 -26
  198. package/dist/ui/index.js +0 -41
  199. package/dist/ui/layout/ConnectedNavigationPanel.svelte.d.ts +0 -10
  200. package/dist/ui/layout/ConnectedWorkspaceStrip.svelte.d.ts +0 -9
  201. package/dist/ui/layout/ContentArea.svelte.d.ts +0 -8
  202. package/dist/ui/layout/DetailPanel.svelte.d.ts +0 -7
  203. package/dist/ui/layout/NavigationPanel.svelte.d.ts +0 -14
  204. package/dist/ui/layout/WorkspaceLayout.svelte.d.ts +0 -25
  205. package/dist/ui/layout/WorkspaceStrip.svelte.d.ts +0 -11
  206. package/dist/ui/layout/index.d.ts +0 -7
  207. package/dist/ui/layout/index.js +0 -7
  208. package/dist/ui/paraglide/README.md +0 -94
  209. package/dist/ui/paraglide/messages/_index.d.ts +0 -87
  210. package/dist/ui/paraglide/messages/_index.js +0 -88
  211. package/dist/ui/paraglide/messages/abyss.d.ts +0 -16
  212. package/dist/ui/paraglide/messages/abyss.js +0 -84
  213. package/dist/ui/paraglide/messages/acid.d.ts +0 -16
  214. package/dist/ui/paraglide/messages/acid.js +0 -84
  215. package/dist/ui/paraglide/messages/active_toasts.d.ts +0 -16
  216. package/dist/ui/paraglide/messages/active_toasts.js +0 -84
  217. package/dist/ui/paraglide/messages/aed3.d.ts +0 -17
  218. package/dist/ui/paraglide/messages/aed3.js +0 -85
  219. package/dist/ui/paraglide/messages/all_currencies.d.ts +0 -16
  220. package/dist/ui/paraglide/messages/all_currencies.js +0 -84
  221. package/dist/ui/paraglide/messages/all_languages.d.ts +0 -16
  222. package/dist/ui/paraglide/messages/all_languages.js +0 -84
  223. package/dist/ui/paraglide/messages/all_themes.d.ts +0 -16
  224. package/dist/ui/paraglide/messages/all_themes.js +0 -84
  225. package/dist/ui/paraglide/messages/api_status.d.ts +0 -16
  226. package/dist/ui/paraglide/messages/api_status.js +0 -84
  227. package/dist/ui/paraglide/messages/app_info.d.ts +0 -16
  228. package/dist/ui/paraglide/messages/app_info.js +0 -84
  229. package/dist/ui/paraglide/messages/appearance.d.ts +0 -16
  230. package/dist/ui/paraglide/messages/appearance.js +0 -84
  231. package/dist/ui/paraglide/messages/aqua.d.ts +0 -16
  232. package/dist/ui/paraglide/messages/aqua.js +0 -84
  233. package/dist/ui/paraglide/messages/ar.d.ts +0 -16
  234. package/dist/ui/paraglide/messages/ar.js +0 -84
  235. package/dist/ui/paraglide/messages/autumn.d.ts +0 -16
  236. package/dist/ui/paraglide/messages/autumn.js +0 -84
  237. package/dist/ui/paraglide/messages/black.d.ts +0 -16
  238. package/dist/ui/paraglide/messages/black.js +0 -84
  239. package/dist/ui/paraglide/messages/brl3.d.ts +0 -17
  240. package/dist/ui/paraglide/messages/brl3.js +0 -85
  241. package/dist/ui/paraglide/messages/bumblebee.d.ts +0 -16
  242. package/dist/ui/paraglide/messages/bumblebee.js +0 -84
  243. package/dist/ui/paraglide/messages/business.d.ts +0 -16
  244. package/dist/ui/paraglide/messages/business.js +0 -84
  245. package/dist/ui/paraglide/messages/cad3.d.ts +0 -17
  246. package/dist/ui/paraglide/messages/cad3.js +0 -85
  247. package/dist/ui/paraglide/messages/caramellatte.d.ts +0 -16
  248. package/dist/ui/paraglide/messages/caramellatte.js +0 -84
  249. package/dist/ui/paraglide/messages/cmyk.d.ts +0 -16
  250. package/dist/ui/paraglide/messages/cmyk.js +0 -84
  251. package/dist/ui/paraglide/messages/cny3.d.ts +0 -17
  252. package/dist/ui/paraglide/messages/cny3.js +0 -85
  253. package/dist/ui/paraglide/messages/coffee.d.ts +0 -16
  254. package/dist/ui/paraglide/messages/coffee.js +0 -84
  255. package/dist/ui/paraglide/messages/commands_label.d.ts +0 -16
  256. package/dist/ui/paraglide/messages/commands_label.js +0 -84
  257. package/dist/ui/paraglide/messages/corporate.d.ts +0 -16
  258. package/dist/ui/paraglide/messages/corporate.js +0 -84
  259. package/dist/ui/paraglide/messages/cupcake.d.ts +0 -16
  260. package/dist/ui/paraglide/messages/cupcake.js +0 -84
  261. package/dist/ui/paraglide/messages/currency.d.ts +0 -16
  262. package/dist/ui/paraglide/messages/currency.js +0 -84
  263. package/dist/ui/paraglide/messages/current_currency.d.ts +0 -16
  264. package/dist/ui/paraglide/messages/current_currency.js +0 -84
  265. package/dist/ui/paraglide/messages/current_language.d.ts +0 -16
  266. package/dist/ui/paraglide/messages/current_language.js +0 -84
  267. package/dist/ui/paraglide/messages/current_theme.d.ts +0 -16
  268. package/dist/ui/paraglide/messages/current_theme.js +0 -84
  269. package/dist/ui/paraglide/messages/currently_in_queue.d.ts +0 -16
  270. package/dist/ui/paraglide/messages/currently_in_queue.js +0 -84
  271. package/dist/ui/paraglide/messages/cyberpunk.d.ts +0 -16
  272. package/dist/ui/paraglide/messages/cyberpunk.js +0 -84
  273. package/dist/ui/paraglide/messages/dark.d.ts +0 -16
  274. package/dist/ui/paraglide/messages/dark.js +0 -84
  275. package/dist/ui/paraglide/messages/de.d.ts +0 -16
  276. package/dist/ui/paraglide/messages/de.js +0 -84
  277. package/dist/ui/paraglide/messages/dim.d.ts +0 -16
  278. package/dist/ui/paraglide/messages/dim.js +0 -84
  279. package/dist/ui/paraglide/messages/dracula.d.ts +0 -16
  280. package/dist/ui/paraglide/messages/dracula.js +0 -84
  281. package/dist/ui/paraglide/messages/emerald.d.ts +0 -16
  282. package/dist/ui/paraglide/messages/emerald.js +0 -84
  283. package/dist/ui/paraglide/messages/en.d.ts +0 -16
  284. package/dist/ui/paraglide/messages/en.js +0 -84
  285. package/dist/ui/paraglide/messages/es.d.ts +0 -16
  286. package/dist/ui/paraglide/messages/es.js +0 -84
  287. package/dist/ui/paraglide/messages/eur3.d.ts +0 -17
  288. package/dist/ui/paraglide/messages/eur3.js +0 -85
  289. package/dist/ui/paraglide/messages/extended_controls.d.ts +0 -16
  290. package/dist/ui/paraglide/messages/extended_controls.js +0 -84
  291. package/dist/ui/paraglide/messages/fantasy.d.ts +0 -16
  292. package/dist/ui/paraglide/messages/fantasy.js +0 -84
  293. package/dist/ui/paraglide/messages/forest.d.ts +0 -16
  294. package/dist/ui/paraglide/messages/forest.js +0 -84
  295. package/dist/ui/paraglide/messages/fr.d.ts +0 -16
  296. package/dist/ui/paraglide/messages/fr.js +0 -84
  297. package/dist/ui/paraglide/messages/garden.d.ts +0 -16
  298. package/dist/ui/paraglide/messages/garden.js +0 -84
  299. package/dist/ui/paraglide/messages/gbp3.d.ts +0 -17
  300. package/dist/ui/paraglide/messages/gbp3.js +0 -85
  301. package/dist/ui/paraglide/messages/halloween.d.ts +0 -16
  302. package/dist/ui/paraglide/messages/halloween.js +0 -84
  303. package/dist/ui/paraglide/messages/hello_world.d.ts +0 -18
  304. package/dist/ui/paraglide/messages/hello_world.js +0 -84
  305. package/dist/ui/paraglide/messages/hi.d.ts +0 -16
  306. package/dist/ui/paraglide/messages/hi.js +0 -84
  307. package/dist/ui/paraglide/messages/inr3.d.ts +0 -17
  308. package/dist/ui/paraglide/messages/inr3.js +0 -85
  309. package/dist/ui/paraglide/messages/it.d.ts +0 -16
  310. package/dist/ui/paraglide/messages/it.js +0 -84
  311. package/dist/ui/paraglide/messages/ja.d.ts +0 -16
  312. package/dist/ui/paraglide/messages/ja.js +0 -84
  313. package/dist/ui/paraglide/messages/jpy3.d.ts +0 -17
  314. package/dist/ui/paraglide/messages/jpy3.js +0 -85
  315. package/dist/ui/paraglide/messages/ko.d.ts +0 -16
  316. package/dist/ui/paraglide/messages/ko.js +0 -84
  317. package/dist/ui/paraglide/messages/krw3.d.ts +0 -17
  318. package/dist/ui/paraglide/messages/krw3.js +0 -85
  319. package/dist/ui/paraglide/messages/languages.d.ts +0 -16
  320. package/dist/ui/paraglide/messages/languages.js +0 -84
  321. package/dist/ui/paraglide/messages/lemonade.d.ts +0 -16
  322. package/dist/ui/paraglide/messages/lemonade.js +0 -84
  323. package/dist/ui/paraglide/messages/light.d.ts +0 -16
  324. package/dist/ui/paraglide/messages/light.js +0 -84
  325. package/dist/ui/paraglide/messages/live_store_dashboard.d.ts +0 -16
  326. package/dist/ui/paraglide/messages/live_store_dashboard.js +0 -84
  327. package/dist/ui/paraglide/messages/localization.d.ts +0 -16
  328. package/dist/ui/paraglide/messages/localization.js +0 -84
  329. package/dist/ui/paraglide/messages/lofi.d.ts +0 -16
  330. package/dist/ui/paraglide/messages/lofi.js +0 -84
  331. package/dist/ui/paraglide/messages/luxury.d.ts +0 -16
  332. package/dist/ui/paraglide/messages/luxury.js +0 -84
  333. package/dist/ui/paraglide/messages/mxn3.d.ts +0 -17
  334. package/dist/ui/paraglide/messages/mxn3.js +0 -85
  335. package/dist/ui/paraglide/messages/name_label.d.ts +0 -16
  336. package/dist/ui/paraglide/messages/name_label.js +0 -84
  337. package/dist/ui/paraglide/messages/night.d.ts +0 -16
  338. package/dist/ui/paraglide/messages/night.js +0 -84
  339. package/dist/ui/paraglide/messages/nord.d.ts +0 -16
  340. package/dist/ui/paraglide/messages/nord.js +0 -84
  341. package/dist/ui/paraglide/messages/pastel.d.ts +0 -16
  342. package/dist/ui/paraglide/messages/pastel.js +0 -84
  343. package/dist/ui/paraglide/messages/pt.d.ts +0 -16
  344. package/dist/ui/paraglide/messages/pt.js +0 -84
  345. package/dist/ui/paraglide/messages/real_time_monitor_desc.d.ts +0 -16
  346. package/dist/ui/paraglide/messages/real_time_monitor_desc.js +0 -84
  347. package/dist/ui/paraglide/messages/registered_in_registry.d.ts +0 -16
  348. package/dist/ui/paraglide/messages/registered_in_registry.js +0 -84
  349. package/dist/ui/paraglide/messages/retro.d.ts +0 -16
  350. package/dist/ui/paraglide/messages/retro.js +0 -84
  351. package/dist/ui/paraglide/messages/ru.d.ts +0 -16
  352. package/dist/ui/paraglide/messages/ru.js +0 -84
  353. package/dist/ui/paraglide/messages/silk.d.ts +0 -16
  354. package/dist/ui/paraglide/messages/silk.js +0 -84
  355. package/dist/ui/paraglide/messages/state_label.d.ts +0 -16
  356. package/dist/ui/paraglide/messages/state_label.js +0 -84
  357. package/dist/ui/paraglide/messages/sunset.d.ts +0 -16
  358. package/dist/ui/paraglide/messages/sunset.js +0 -84
  359. package/dist/ui/paraglide/messages/synthwave.d.ts +0 -16
  360. package/dist/ui/paraglide/messages/synthwave.js +0 -84
  361. package/dist/ui/paraglide/messages/system.d.ts +0 -16
  362. package/dist/ui/paraglide/messages/system.js +0 -84
  363. package/dist/ui/paraglide/messages/theme.d.ts +0 -16
  364. package/dist/ui/paraglide/messages/theme.js +0 -84
  365. package/dist/ui/paraglide/messages/themes.d.ts +0 -16
  366. package/dist/ui/paraglide/messages/themes.js +0 -84
  367. package/dist/ui/paraglide/messages/url_label.d.ts +0 -16
  368. package/dist/ui/paraglide/messages/url_label.js +0 -84
  369. package/dist/ui/paraglide/messages/usd3.d.ts +0 -17
  370. package/dist/ui/paraglide/messages/usd3.js +0 -85
  371. package/dist/ui/paraglide/messages/valentine.d.ts +0 -16
  372. package/dist/ui/paraglide/messages/valentine.js +0 -84
  373. package/dist/ui/paraglide/messages/version_label.d.ts +0 -16
  374. package/dist/ui/paraglide/messages/version_label.js +0 -84
  375. package/dist/ui/paraglide/messages/vi.d.ts +0 -16
  376. package/dist/ui/paraglide/messages/vi.js +0 -84
  377. package/dist/ui/paraglide/messages/winter.d.ts +0 -16
  378. package/dist/ui/paraglide/messages/winter.js +0 -84
  379. package/dist/ui/paraglide/messages/wireframe.d.ts +0 -16
  380. package/dist/ui/paraglide/messages/wireframe.js +0 -84
  381. package/dist/ui/paraglide/messages/zh.d.ts +0 -16
  382. package/dist/ui/paraglide/messages/zh.js +0 -84
  383. package/dist/ui/paraglide/messages.d.ts +0 -2
  384. package/dist/ui/paraglide/messages.js +0 -4
  385. package/dist/ui/paraglide/registry.d.ts +0 -21
  386. package/dist/ui/paraglide/registry.js +0 -31
  387. package/dist/ui/paraglide/runtime.d.ts +0 -749
  388. package/dist/ui/paraglide/runtime.js +0 -1777
  389. package/dist/ui/paraglide/server.d.ts +0 -103
  390. package/dist/ui/paraglide/server.js +0 -248
  391. package/dist/ui/primitives/DatePicker.svelte +0 -257
  392. package/dist/ui/primitives/DatePicker.svelte.d.ts +0 -17
  393. package/dist/ui/primitives/index.d.ts +0 -1
  394. package/dist/ui/primitives/index.js +0 -3
  395. /package/{dist/ui/layout → src/runes/layout/src}/ContentArea.svelte +0 -0
  396. /package/{dist/ui/layout → src/runes/layout/src}/DetailPanel.svelte +0 -0
  397. /package/{dist/ui/features → src/runes/palettes/src}/notifications/NotificationBell.svelte +0 -0
@@ -1,131 +0,0 @@
1
- <!--
2
- MoneyInput — Monetary value input that works in minor units (cents).
3
- No floats cross the boundary — values are always integer minor units.
4
- -->
5
- <script module lang="ts">
6
- import type { ISO4217Code } from "rune-lab/core";
7
-
8
- export interface MoneyInputProps {
9
- /** Current value in minor or major units (see unit prop) */
10
- amount?: number | null | undefined;
11
- /**
12
- * Whether the amount is in 'major' (e.g., pesos) or 'minor' (e.g., centavos) units.
13
- * Defaults to 'minor' for backward compatibility.
14
- */
15
- unit?: 'major' | 'minor';
16
- /** Override currency code (defaults to CurrencyStore.current) */
17
- currency?: ISO4217Code | string;
18
- /** Minimum value in same units as amount */
19
- min?: number;
20
- /** Maximum value in same units as amount */
21
- max?: number;
22
- /** Placeholder text */
23
- placeholder?: string;
24
- /** Fired when the value changes (unit matches the unit prop) */
25
- oninput?: (val: number) => void;
26
- /** Input disabled state */
27
- disabled?: boolean;
28
- }
29
- </script>
30
-
31
- <script lang="ts">
32
- import { getCurrencyStore } from "rune-lab/state";
33
- import { toMinorUnit } from "rune-lab/core";
34
-
35
- let {
36
- amount = $bindable(0),
37
- unit = 'minor',
38
- currency,
39
- min,
40
- max,
41
- placeholder = "0.00",
42
- oninput,
43
- disabled = false,
44
- }: MoneyInputProps = $props();
45
-
46
- const currencyStore = getCurrencyStore();
47
-
48
- const resolvedCurrency = $derived(
49
- currency ?? String(currencyStore.current),
50
- );
51
-
52
- const currencyMeta = $derived(currencyStore.get(resolvedCurrency));
53
- const symbol = $derived(currencyMeta?.symbol ?? "$");
54
- const decimals = $derived(currencyMeta?.decimals ?? 2);
55
-
56
- // Convert to minor units internally for consistent arithmetic if needed,
57
- // but here we just need to display it.
58
- const displayValue = $derived.by(() => {
59
- const val = amount ?? 0;
60
- if (unit === 'major') {
61
- return Number(val).toFixed(decimals);
62
- }
63
- if (decimals === 0) return String(val);
64
- const divisor = Math.pow(10, decimals);
65
- return (Number(val) / divisor).toFixed(decimals);
66
- });
67
-
68
- function handleInput(e: Event) {
69
- const target = e.target as HTMLInputElement;
70
- const raw = target.value.replace(/[^0-9.,-]/g, "");
71
-
72
- if (!raw) return;
73
-
74
- // String-based parsing: split on decimal point
75
- const parts = raw.split(".");
76
- const integerPart = parts[0] || "0";
77
-
78
- // Pad or truncate the fractional part to exactly `decimals` digits
79
- let fractionalPart = (parts[1] || "").slice(0, decimals);
80
- fractionalPart = fractionalPart.padEnd(decimals, "0");
81
-
82
- // Combine as integer minor units — no floats involved
83
- const combined =
84
- decimals === 0 ? integerPart : integerPart + fractionalPart;
85
-
86
- let cents = parseInt(combined, 10);
87
- if (isNaN(cents)) return;
88
-
89
- // Apply constraints in minor units
90
- let finalCents = cents;
91
-
92
- if (unit === 'major') {
93
- // If we are working in major units, we need to convert min/max to cents for comparison
94
- const minCents = min !== undefined ? toMinorUnit(min, resolvedCurrency) : undefined;
95
- const maxCents = max !== undefined ? toMinorUnit(max, resolvedCurrency) : undefined;
96
-
97
- if (minCents !== undefined) finalCents = Math.max(finalCents, minCents);
98
- if (maxCents !== undefined) finalCents = Math.min(finalCents, maxCents);
99
-
100
- const majorValue = finalCents / Math.pow(10, decimals);
101
- amount = majorValue;
102
- oninput?.(majorValue);
103
- } else {
104
- if (min !== undefined) finalCents = Math.max(finalCents, min);
105
- if (max !== undefined) finalCents = Math.min(finalCents, max);
106
-
107
- amount = finalCents;
108
- oninput?.(finalCents);
109
- }
110
- }
111
- </script>
112
-
113
- <label
114
- class="input input-bordered flex items-center gap-1"
115
- class:input-disabled={disabled}
116
- >
117
- <span class="text-base-content/50 font-medium select-none">{symbol}</span>
118
- <input
119
- type="text"
120
- inputmode="decimal"
121
- class="grow bg-transparent outline-none tabular-nums"
122
- value={displayValue}
123
- {placeholder}
124
- {disabled}
125
- oninput={handleInput}
126
- aria-label={`Amount in ${resolvedCurrency}`}
127
- />
128
- <span class="text-base-content/30 text-xs font-mono select-none"
129
- >{resolvedCurrency}</span
130
- >
131
- </label>
@@ -1,25 +0,0 @@
1
- import type { ISO4217Code } from "rune-lab/core";
2
- export interface MoneyInputProps {
3
- /** Current value in minor or major units (see unit prop) */
4
- amount?: number | null | undefined;
5
- /**
6
- * Whether the amount is in 'major' (e.g., pesos) or 'minor' (e.g., centavos) units.
7
- * Defaults to 'minor' for backward compatibility.
8
- */
9
- unit?: 'major' | 'minor';
10
- /** Override currency code (defaults to CurrencyStore.current) */
11
- currency?: ISO4217Code | string;
12
- /** Minimum value in same units as amount */
13
- min?: number;
14
- /** Maximum value in same units as amount */
15
- max?: number;
16
- /** Placeholder text */
17
- placeholder?: string;
18
- /** Fired when the value changes (unit matches the unit prop) */
19
- oninput?: (val: number) => void;
20
- /** Input disabled state */
21
- disabled?: boolean;
22
- }
23
- declare const MoneyInput: import("svelte").Component<MoneyInputProps, {}, "amount">;
24
- type MoneyInput = ReturnType<typeof MoneyInput>;
25
- export default MoneyInput;
@@ -1,2 +0,0 @@
1
- export { default as MoneyDisplay } from "./MoneyDisplay.svelte";
2
- export { default as MoneyInput } from "./MoneyInput.svelte";
@@ -1,3 +0,0 @@
1
- // sdk/ui/src/lib/components/money/index.ts
2
- export { default as MoneyDisplay } from "./MoneyDisplay.svelte";
3
- export { default as MoneyInput } from "./MoneyInput.svelte";
@@ -1,66 +0,0 @@
1
- <!--
2
- UserAvatar — Universal user identity primitive.
3
- Renders avatar image or falls back to generated initials.
4
- Zero domain knowledge.
5
- -->
6
- <script module lang="ts">
7
- export interface UserAvatarProps {
8
- /** User's display name (used for initials fallback) */
9
- name: string;
10
- /** URL to avatar image */
11
- avatar_url?: string;
12
- /** Size variant */
13
- size?: "xs" | "sm" | "md" | "lg";
14
- /** Show online indicator */
15
- online?: boolean;
16
- }
17
- </script>
18
-
19
- <script lang="ts">
20
- let { name, avatar_url, size = "md", online }: UserAvatarProps = $props();
21
-
22
- const sizeClasses: Record<string, string> = {
23
- xs: "w-6 h-6 text-[10px]",
24
- sm: "w-8 h-8 text-xs",
25
- md: "w-10 h-10 text-sm",
26
- lg: "w-14 h-14 text-lg",
27
- };
28
-
29
- const initials = $derived(
30
- name
31
- .split(/\s+/)
32
- .filter(Boolean)
33
- .slice(0, 2)
34
- .map((word) => word[0].toUpperCase())
35
- .join(""),
36
- );
37
-
38
- /**
39
- * Deterministic color from name — generates a consistent hue
40
- * so the same user always gets the same color
41
- */
42
- const bgHue = $derived(
43
- name.split("").reduce((hash, char) => {
44
- return char.charCodeAt(0) + ((hash << 5) - hash);
45
- }, 0) % 360,
46
- );
47
-
48
- const bgColor = $derived(`hsl(${Math.abs(bgHue)}, 60%, 45%)`);
49
- </script>
50
-
51
- <div class="avatar placeholder" class:online>
52
- <div
53
- class="rounded-full {sizeClasses[size]}"
54
- style={avatar_url ? undefined : `background-color: ${bgColor}`}
55
- >
56
- {#if avatar_url}
57
- <img
58
- src={avatar_url}
59
- alt={`${name}'s avatar`}
60
- class="rounded-full object-cover"
61
- />
62
- {:else}
63
- <span class="text-white font-semibold select-none">{initials}</span>
64
- {/if}
65
- </div>
66
- </div>
@@ -1,13 +0,0 @@
1
- export interface UserAvatarProps {
2
- /** User's display name (used for initials fallback) */
3
- name: string;
4
- /** URL to avatar image */
5
- avatar_url?: string;
6
- /** Size variant */
7
- size?: "xs" | "sm" | "md" | "lg";
8
- /** Show online indicator */
9
- online?: boolean;
10
- }
11
- declare const UserAvatar: import("svelte").Component<UserAvatarProps, {}, "">;
12
- type UserAvatar = ReturnType<typeof UserAvatar>;
13
- export default UserAvatar;
@@ -1,79 +0,0 @@
1
- <!--
2
- UserProfile — Richer user identity card.
3
- Composes UserAvatar + name/role/email.
4
- Zero domain knowledge.
5
- -->
6
- <script module lang="ts">
7
- export interface UserProfileProps {
8
- /** User's display name */
9
- name: string;
10
- /** User's email address */
11
- email?: string;
12
- /** User's role or title */
13
- role?: string;
14
- /** URL to avatar image */
15
- avatar_url?: string;
16
- /** Size variant */
17
- size?: "sm" | "md" | "lg";
18
- /** Display variant */
19
- variant?: "card" | "trigger";
20
- }
21
- </script>
22
-
23
- <script lang="ts">
24
- import UserAvatar from "./UserAvatar.svelte";
25
-
26
- let {
27
- name,
28
- email,
29
- role,
30
- avatar_url,
31
- size = "md",
32
- variant = "card",
33
- }: UserProfileProps = $props();
34
-
35
- const avatarSize = $derived(
36
- size === "sm" ? "sm" : size === "lg" ? "lg" : "md",
37
- );
38
-
39
- const textSizes = $derived({
40
- name:
41
- size === "sm" ? "text-sm" : size === "lg" ? "text-lg" : "text-base",
42
- meta: size === "sm" ? "text-xs" : size === "lg" ? "text-sm" : "text-xs",
43
- });
44
- </script>
45
-
46
- {#if variant === "trigger"}
47
- <!-- Compact trigger variant — for navbar dropdowns -->
48
- <div
49
- class="flex items-center gap-2 cursor-pointer hover:opacity-80 transition-opacity"
50
- >
51
- <UserAvatar {name} {avatar_url} size={avatarSize} />
52
- <div class="flex flex-col leading-tight min-w-0">
53
- <span class="{textSizes.name} font-medium truncate">{name}</span>
54
- {#if role}
55
- <span class="{textSizes.meta} text-base-content/60 truncate"
56
- >{role}</span
57
- >
58
- {/if}
59
- </div>
60
- </div>
61
- {:else}
62
- <!-- Card variant — for profile pages / settings -->
63
- <div class="flex items-center gap-3 p-3 rounded-box bg-base-200/50">
64
- <UserAvatar {name} {avatar_url} size={avatarSize} />
65
- <div class="flex flex-col leading-tight min-w-0">
66
- <span class="{textSizes.name} font-semibold truncate">{name}</span>
67
- {#if role}
68
- <span class="{textSizes.meta} text-base-content/60 truncate"
69
- >{role}</span
70
- >
71
- {/if}
72
- {#if email}
73
- <span class="{textSizes.meta} text-base-content/40 truncate"
74
- >{email}</span
75
- >
76
- {/if}
77
- </div>
78
- </div>
79
- {/if}
@@ -1,17 +0,0 @@
1
- export interface UserProfileProps {
2
- /** User's display name */
3
- name: string;
4
- /** User's email address */
5
- email?: string;
6
- /** User's role or title */
7
- role?: string;
8
- /** URL to avatar image */
9
- avatar_url?: string;
10
- /** Size variant */
11
- size?: "sm" | "md" | "lg";
12
- /** Display variant */
13
- variant?: "card" | "trigger";
14
- }
15
- declare const UserProfile: import("svelte").Component<UserProfileProps, {}, "">;
16
- type UserProfile = ReturnType<typeof UserProfile>;
17
- export default UserProfile;
@@ -1,2 +0,0 @@
1
- export { default as UserAvatar } from "./UserAvatar.svelte";
2
- export { default as UserProfile } from "./UserProfile.svelte";
@@ -1,3 +0,0 @@
1
- // sdk/ui/src/lib/components/user/index.ts
2
- export { default as UserAvatar } from "./UserAvatar.svelte";
3
- export { default as UserProfile } from "./UserProfile.svelte";
@@ -1,6 +0,0 @@
1
- type $$ComponentProps = {
2
- shortcutKey?: string;
3
- };
4
- declare const CommandPalette: import("svelte").Component<$$ComponentProps, {}, "">;
5
- type CommandPalette = ReturnType<typeof CommandPalette>;
6
- export default CommandPalette;
@@ -1,13 +0,0 @@
1
- import { type Snippet } from "svelte";
2
- type $$ComponentProps = {
3
- options: any[];
4
- value: any;
5
- item: Snippet<[any]>;
6
- triggerLabel: Snippet<[any]>;
7
- tooltip?: string;
8
- direction?: "top" | "bottom" | "left" | "right" | "end" | "auto";
9
- responsive?: boolean;
10
- };
11
- declare const AppSettingSelector: import("svelte").Component<$$ComponentProps, {}, "">;
12
- type AppSettingSelector = ReturnType<typeof AppSettingSelector>;
13
- export default AppSettingSelector;
@@ -1,67 +0,0 @@
1
- <script lang="ts">
2
- import AppSettingSelector from "./AppSettingSelector.svelte";
3
- import {
4
- getCurrencyStore,
5
- type Currency,
6
- } from "rune-lab/state";
7
- import * as rlMessages from "../../paraglide/messages.js";
8
- import { getContext } from "svelte";
9
-
10
- const currencyStore = getCurrencyStore();
11
-
12
- let {
13
- codes = [],
14
- current = $bindable(String(currencyStore.current)),
15
- onchange,
16
- }: {
17
- codes?: string[];
18
- current?: string;
19
- onchange?: (value: string) => void;
20
- } = $props();
21
-
22
- const userDictionary =
23
- getContext<Record<string, any>>("rl:dictionary") ?? {};
24
-
25
- function getLabel(currency: Currency): string {
26
- const key = String(currency.code);
27
- if (typeof userDictionary[key] === "function")
28
- return userDictionary[key]();
29
- if (typeof (rlMessages as any)[key] === "function")
30
- return (rlMessages as any)[key]();
31
- return String(currency.code);
32
- }
33
-
34
- let active = $derived(
35
- currencyStore.get(currencyStore.current) ?? currencyStore.available[0],
36
- );
37
-
38
- let available = $derived(
39
- codes.length > 0
40
- ? currencyStore.available.filter((c) => codes.includes(c.code))
41
- : currencyStore.available,
42
- );
43
- </script>
44
-
45
- <AppSettingSelector
46
- value={active}
47
- options={available}
48
- tooltip={getLabel(active)}
49
- >
50
- {#snippet triggerLabel()}
51
- <span class="font-bold">{active.symbol}</span>
52
- {/snippet}
53
-
54
- {#snippet item(c)}
55
- <button
56
- class="flex items-center gap-3 w-full"
57
- onclick={() => {
58
- currencyStore.set(c.code);
59
- current = c.code;
60
- onchange?.(c.code);
61
- }}
62
- >
63
- <span class="badge badge-sm badge-ghost w-8">{c.symbol}</span>
64
- <span>{getLabel(c)}</span>
65
- </button>
66
- {/snippet}
67
- </AppSettingSelector>
@@ -1,8 +0,0 @@
1
- type $$ComponentProps = {
2
- codes?: string[];
3
- current?: string;
4
- onchange?: (value: string) => void;
5
- };
6
- declare const CurrencySelector: import("svelte").Component<$$ComponentProps, {}, "current">;
7
- type CurrencySelector = ReturnType<typeof CurrencySelector>;
8
- export default CurrencySelector;
@@ -1,66 +0,0 @@
1
- <script lang="ts">
2
- import AppSettingSelector from "./AppSettingSelector.svelte";
3
- import { getLanguageStore, type Language } from "rune-lab/state";
4
- import * as rlMessages from "../../paraglide/messages.js";
5
- import { getContext } from "svelte";
6
- import { setLocale } from "../../paraglide/runtime";
7
-
8
- const languageStore = getLanguageStore();
9
-
10
- let {
11
- languages: allowedLocales = languageStore.available.map((l) => l.code),
12
- current = $bindable(languageStore.current),
13
- onchange,
14
- }: {
15
- languages?: ReadonlyArray<string>;
16
- current?: string;
17
- onchange?: (value: string) => void;
18
- } = $props();
19
-
20
- const userDictionary =
21
- getContext<Record<string, any>>("rl:dictionary") ?? {};
22
-
23
- function getLabel(lang: Language): string {
24
- const key = lang.code;
25
- if (typeof userDictionary[key] === "function")
26
- return userDictionary[key]();
27
- if (typeof (rlMessages as any)[key] === "function")
28
- return (rlMessages as any)[key]();
29
- return lang.code.toUpperCase();
30
- }
31
-
32
- let active = $derived(
33
- languageStore.get(languageStore.current) ?? languageStore.available[0],
34
- );
35
-
36
- let available = $derived(
37
- languageStore.available.filter((l) =>
38
- allowedLocales.includes(l.code as any),
39
- ),
40
- );
41
- </script>
42
-
43
- <AppSettingSelector
44
- value={active}
45
- options={available}
46
- tooltip={getLabel(active)}
47
- >
48
- {#snippet triggerLabel()}
49
- <span class="text-lg">{active.flag}</span>
50
- {/snippet}
51
-
52
- {#snippet item(l)}
53
- <button
54
- class="flex items-center gap-3 w-full"
55
- onclick={() => {
56
- languageStore.set(l.code);
57
- setLocale(l.code as any);
58
- current = l.code;
59
- onchange?.(l.code);
60
- }}
61
- >
62
- <span class="text-lg">{l.flag}</span>
63
- <span>{getLabel(l)}</span>
64
- </button>
65
- {/snippet}
66
- </AppSettingSelector>
@@ -1,8 +0,0 @@
1
- type $$ComponentProps = {
2
- languages?: ReadonlyArray<string>;
3
- current?: string;
4
- onchange?: (value: string) => void;
5
- };
6
- declare const LanguageSelector: import("svelte").Component<$$ComponentProps, {}, "current">;
7
- type LanguageSelector = ReturnType<typeof LanguageSelector>;
8
- export default LanguageSelector;
@@ -1,73 +0,0 @@
1
- <script lang="ts">
2
- import AppSettingSelector from "./AppSettingSelector.svelte";
3
- import { getThemeStore, type Theme } from "rune-lab/state";
4
- import * as rlMessages from "../../paraglide/messages.js";
5
- import { getContext } from "svelte";
6
-
7
- const themeStore = getThemeStore();
8
-
9
- let {
10
- themes = [],
11
- current = $bindable(themeStore.current),
12
- onchange,
13
- }: {
14
- themes?: string[];
15
- current?: string;
16
- onchange?: (value: string) => void;
17
- } = $props();
18
-
19
- const userDictionary =
20
- getContext<Record<string, any>>("rl:dictionary") ?? {};
21
-
22
- function getThemeLabel(theme: Theme): string {
23
- const key = theme.name;
24
- if (typeof userDictionary[key] === "function")
25
- return userDictionary[key]();
26
- if (typeof (rlMessages as any)[key] === "function")
27
- return (rlMessages as any)[key]();
28
- return theme.name;
29
- }
30
-
31
- let activeTheme = $derived(
32
- themeStore.get(themeStore.current) ?? themeStore.available[0],
33
- );
34
-
35
- let available = $derived(
36
- themes.length > 0
37
- ? themeStore.available.filter((t) => themes.includes(t.name))
38
- : themeStore.available,
39
- );
40
- </script>
41
-
42
- <AppSettingSelector
43
- value={activeTheme}
44
- options={available}
45
- tooltip={getThemeLabel(activeTheme)}
46
- >
47
- {#snippet triggerLabel()}
48
- <span class="text-lg">{activeTheme.icon}</span>
49
- {/snippet}
50
-
51
- {#snippet item(t)}
52
- <button
53
- class="flex items-center gap-3 w-full"
54
- onclick={() => {
55
- themeStore.set(t.name);
56
- current = t.name;
57
- onchange?.(t.name);
58
- }}
59
- >
60
- <input
61
- type="radio"
62
- name="theme-{t.name}"
63
- class="theme-controller radio radio-xs"
64
- value={t.name}
65
- bind:group={themeStore.current}
66
- />
67
- <span class="text-lg">{t.icon}</span>
68
- <span class="capitalize">
69
- {getThemeLabel(t)}
70
- </span>
71
- </button>
72
- {/snippet}
73
- </AppSettingSelector>
@@ -1,8 +0,0 @@
1
- type $$ComponentProps = {
2
- themes?: string[];
3
- current?: string;
4
- onchange?: (value: string) => void;
5
- };
6
- declare const ThemeSelector: import("svelte").Component<$$ComponentProps, {}, "current">;
7
- type ThemeSelector = ReturnType<typeof ThemeSelector>;
8
- export default ThemeSelector;
@@ -1,11 +0,0 @@
1
- export interface NotificationBellProps {
2
- /** Number of unread notifications (badge hides when 0) */
3
- unreadCount?: number;
4
- /** Click handler */
5
- onclick?: () => void;
6
- /** Enable shake animation to draw attention */
7
- animate?: boolean;
8
- }
9
- declare const NotificationBell: import("svelte").Component<NotificationBellProps, {}, "">;
10
- type NotificationBell = ReturnType<typeof NotificationBell>;
11
- export default NotificationBell;
@@ -1 +0,0 @@
1
- export { default as NotificationBell } from "./NotificationBell.svelte";
@@ -1,2 +0,0 @@
1
- // sdk/ui/src/lib/features/notifications/index.ts
2
- export { default as NotificationBell } from "./NotificationBell.svelte";
@@ -1,6 +0,0 @@
1
- declare const ShortcutPalette: import("svelte").Component<Record<string, never>, {
2
- open: () => void;
3
- close: () => void;
4
- }, "">;
5
- type ShortcutPalette = ReturnType<typeof ShortcutPalette>;
6
- export default ShortcutPalette;
@@ -1,26 +0,0 @@
1
- export { portal } from "./actions/portal.js";
2
- export { default as RuneProvider } from "./components/RuneProvider.svelte";
3
- export { default as Icon } from "./components/Icon.svelte";
4
- export { default as Toaster } from "./components/Toaster.svelte";
5
- export { default as ApiMonitor } from "./components/ApiMonitor.svelte";
6
- export { default as Kyntharil } from "./components/Kyntharil.svelte";
7
- export { default as CommandPalette } from "./features/command-palette/CommandPalette.svelte";
8
- export { default as ShortcutPalette } from "./features/shortcuts/ShortcutPalette.svelte";
9
- export { default as AppSettingSelector } from "./features/config/AppSettingSelector.svelte";
10
- export { default as ThemeSelector } from "./features/config/ThemeSelector.svelte";
11
- export { default as LanguageSelector } from "./features/config/LanguageSelector.svelte";
12
- export { default as CurrencySelector } from "./features/config/CurrencySelector.svelte";
13
- export { default as WorkspaceLayout } from "./layout/WorkspaceLayout.svelte";
14
- export { default as WorkspaceStrip } from "./layout/WorkspaceStrip.svelte";
15
- export { default as NavigationPanel } from "./layout/NavigationPanel.svelte";
16
- export { default as ContentArea } from "./layout/ContentArea.svelte";
17
- export { default as DetailPanel } from "./layout/DetailPanel.svelte";
18
- export { default as ConnectedNavigationPanel } from "./layout/ConnectedNavigationPanel.svelte";
19
- export { default as ConnectedWorkspaceStrip } from "./layout/ConnectedWorkspaceStrip.svelte";
20
- export { default as DatePicker } from "./primitives/DatePicker.svelte";
21
- export { default as UserAvatar } from "./components/user/UserAvatar.svelte";
22
- export { default as UserProfile } from "./components/user/UserProfile.svelte";
23
- export { default as NotificationBell } from "./features/notifications/NotificationBell.svelte";
24
- export { default as MoneyDisplay } from "./components/money/MoneyDisplay.svelte";
25
- export { default as MoneyInput } from "./components/money/MoneyInput.svelte";
26
- export * as sdkMessages from "./paraglide/messages.js";