@streamscloud/kit 0.2.42-1778522742378 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (723) hide show
  1. package/dist/core/files/blob-storage-registry.svelte.d.ts +28 -0
  2. package/dist/core/files/blob-storage-registry.svelte.js +37 -0
  3. package/dist/core/files/file-validation-rules.d.ts +30 -0
  4. package/dist/core/files/file-validation-rules.js +95 -0
  5. package/dist/core/files/file-validation-types.d.ts +18 -0
  6. package/dist/core/files/file-validator.d.ts +5 -0
  7. package/dist/core/files/file-validator.js +17 -0
  8. package/dist/core/files/index.d.ts +8 -0
  9. package/dist/core/files/index.js +5 -0
  10. package/dist/core/files/open-file.d.ts +14 -0
  11. package/dist/core/files/open-file.js +38 -0
  12. package/dist/core/files/upload-media-store.svelte.d.ts +74 -0
  13. package/dist/core/files/upload-media-store.svelte.js +118 -0
  14. package/dist/core/files/upload-types.d.ts +57 -0
  15. package/dist/core/transitions/durations.d.ts +5 -0
  16. package/dist/core/transitions/durations.js +6 -0
  17. package/dist/core/transitions/index.d.ts +1 -0
  18. package/dist/core/transitions/index.js +1 -0
  19. package/dist/core/transitions/slide-horizontally.js +2 -1
  20. package/dist/core/utils/href-validator.d.ts +1 -10
  21. package/dist/core/utils/href-validator.js +8 -19
  22. package/dist/core/validation/form-validation-handler/form-validation-handler.svelte.js +2 -0
  23. package/dist/fonts.d.ts +11 -0
  24. package/dist/fonts.js +19 -0
  25. package/dist/styles/_functions.scss +2 -2
  26. package/dist/styles/_index.scss +1 -2
  27. package/dist/styles/_primitives.scss +68 -0
  28. package/dist/styles/_reset.scss +2 -2
  29. package/dist/styles/_semantic.scss +188 -0
  30. package/dist/styles/_transitions.scss +1 -14
  31. package/dist/styles/reset.css +2 -2
  32. package/dist/ui/_internal/_affordance.scss +58 -0
  33. package/dist/ui/_internal/input-clear-button/cmp.input-clear-button.svelte +87 -0
  34. package/dist/ui/_internal/input-clear-button/cmp.input-clear-button.svelte.d.ts +33 -0
  35. package/dist/ui/_internal/input-clear-button/index.d.ts +1 -0
  36. package/dist/ui/_internal/input-clear-button/index.js +1 -0
  37. package/dist/ui/_internal/input-clear-button/input-clear-button-localization.d.ts +3 -0
  38. package/dist/ui/_internal/input-clear-button/input-clear-button-localization.js +12 -0
  39. package/dist/ui/_internal/input-emoji-picker/cmp.input-emoji-picker.svelte +74 -0
  40. package/dist/ui/_internal/input-emoji-picker/cmp.input-emoji-picker.svelte.d.ts +26 -0
  41. package/dist/ui/{inputs → _internal}/input-emoji-picker/index.d.ts +0 -1
  42. package/dist/ui/{inputs → _internal}/input-emoji-picker/index.js +0 -1
  43. package/dist/ui/_internal/input-password-toggle/cmp.input-password-toggle.svelte +93 -0
  44. package/dist/ui/_internal/input-password-toggle/cmp.input-password-toggle.svelte.d.ts +31 -0
  45. package/dist/ui/_internal/input-password-toggle/index.d.ts +1 -0
  46. package/dist/ui/_internal/input-password-toggle/index.js +1 -0
  47. package/dist/ui/_internal/input-password-toggle/input-password-toggle-localization.d.ts +4 -0
  48. package/dist/ui/_internal/input-password-toggle/input-password-toggle-localization.js +13 -0
  49. package/dist/ui/_internal/spinner/cmp.spinner.svelte +41 -0
  50. package/dist/ui/_internal/spinner/cmp.spinner.svelte.d.ts +37 -0
  51. package/dist/ui/_internal/spinner/index.d.ts +1 -0
  52. package/dist/ui/_internal/spinner/index.js +1 -0
  53. package/dist/ui/avatar/cmp.avatar.svelte +135 -0
  54. package/dist/ui/avatar/cmp.avatar.svelte.d.ts +34 -0
  55. package/dist/ui/avatar/index.d.ts +1 -0
  56. package/dist/ui/avatar/index.js +1 -0
  57. package/dist/ui/badge/cmp.badge.svelte +69 -60
  58. package/dist/ui/badge/cmp.badge.svelte.d.ts +16 -13
  59. package/dist/ui/badge/index.d.ts +1 -1
  60. package/dist/ui/badge/types.d.ts +1 -1
  61. package/dist/ui/banner/banner-localization.d.ts +3 -0
  62. package/dist/ui/banner/banner-localization.js +12 -0
  63. package/dist/ui/banner/cmp.banner.svelte +147 -0
  64. package/dist/ui/banner/cmp.banner.svelte.d.ts +44 -0
  65. package/dist/ui/banner/index.d.ts +1 -0
  66. package/dist/ui/banner/index.js +1 -0
  67. package/dist/ui/breadcrumb/breadcrumb-localization.d.ts +3 -0
  68. package/dist/ui/breadcrumb/breadcrumb-localization.js +12 -0
  69. package/dist/ui/breadcrumb/cmp.breadcrumb.svelte +78 -0
  70. package/dist/ui/breadcrumb/cmp.breadcrumb.svelte.d.ts +28 -0
  71. package/dist/ui/breadcrumb/index.d.ts +2 -0
  72. package/dist/ui/breadcrumb/index.js +1 -0
  73. package/dist/ui/breadcrumb/types.d.ts +14 -0
  74. package/dist/ui/button/cmp.button.svelte +288 -48
  75. package/dist/ui/button/cmp.button.svelte.d.ts +57 -50
  76. package/dist/ui/button/index.d.ts +1 -2
  77. package/dist/ui/button/index.js +0 -1
  78. package/dist/ui/button/types.d.ts +2 -0
  79. package/dist/ui/card/cmp.card.svelte +104 -0
  80. package/dist/ui/card/cmp.card.svelte.d.ts +42 -0
  81. package/dist/ui/card/index.d.ts +1 -0
  82. package/dist/ui/card/index.js +1 -0
  83. package/dist/ui/card-actions/cmp.card-action.svelte +19 -6
  84. package/dist/ui/card-actions/cmp.card-action.svelte.d.ts +4 -2
  85. package/dist/ui/card-actions/cmp.card-actions.svelte +19 -20
  86. package/dist/ui/card-actions/cmp.card-actions.svelte.d.ts +11 -8
  87. package/dist/ui/card-actions/types.d.ts +2 -3
  88. package/dist/ui/checkbox/cmp.checkbox.svelte +99 -76
  89. package/dist/ui/checkbox/cmp.checkbox.svelte.d.ts +21 -18
  90. package/dist/ui/checkbox/index.d.ts +0 -2
  91. package/dist/ui/checkbox/index.js +0 -1
  92. package/dist/ui/chip-group/cmp.chip-group.svelte +170 -0
  93. package/dist/ui/chip-group/cmp.chip-group.svelte.d.ts +84 -0
  94. package/dist/ui/chip-group/index.d.ts +2 -0
  95. package/dist/ui/chip-group/index.js +1 -0
  96. package/dist/ui/chip-group/types.d.ts +5 -0
  97. package/dist/ui/color-picker/cmp.color-picker.svelte +68 -36
  98. package/dist/ui/color-picker/cmp.color-picker.svelte.d.ts +37 -10
  99. package/dist/ui/color-picker/color-picker-localization.d.ts +1 -0
  100. package/dist/ui/color-picker/color-picker-localization.js +7 -0
  101. package/dist/ui/confirmation-dialog/cmp.confirmation-dialog.svelte +16 -13
  102. package/dist/ui/confirmation-dialog/cmp.confirmation-dialog.svelte.d.ts +8 -0
  103. package/dist/ui/cropper/image-editor-dialog/cmp.image-editor-dialog.svelte +1 -1
  104. package/dist/ui/cropper/image-editor-dialog/crop-and-resize.d.ts +36 -0
  105. package/dist/ui/cropper/image-editor-dialog/crop-and-resize.js +47 -0
  106. package/dist/ui/cropper/image-editor-dialog/index.d.ts +4 -2
  107. package/dist/ui/cropper/image-editor-dialog/index.js +3 -2
  108. package/dist/ui/cropper/img-cropper/cmp.img-cropper-controls.svelte +16 -15
  109. package/dist/ui/cropper/img-cropper/cmp.img-cropper-toolbar.svelte +9 -12
  110. package/dist/ui/cropper/img-cropper/cmp.img-cropper-toolbar.svelte.d.ts +1 -1
  111. package/dist/ui/cropper/img-cropper/cmp.img-cropper.svelte +4 -4
  112. package/dist/ui/cropper/img-cropper/cmp.img-cropper.svelte.d.ts +1 -1
  113. package/dist/ui/date-picker/cmp.date-picker-calendar.svelte +294 -0
  114. package/dist/ui/date-picker/cmp.date-picker-calendar.svelte.d.ts +59 -0
  115. package/dist/ui/date-picker/cmp.date-picker.svelte +331 -0
  116. package/dist/ui/date-picker/cmp.date-picker.svelte.d.ts +82 -0
  117. package/dist/ui/date-picker/date-picker-localization.d.ts +6 -0
  118. package/dist/ui/date-picker/date-picker-localization.js +33 -0
  119. package/dist/ui/date-picker/index.d.ts +2 -0
  120. package/dist/ui/date-picker/index.js +1 -0
  121. package/dist/ui/date-picker/types.d.ts +1 -0
  122. package/dist/ui/dialog/cmp.dialog-button.svelte +11 -4
  123. package/dist/ui/dialog/cmp.dialog-button.svelte.d.ts +14 -3
  124. package/dist/ui/dialog/cmp.dialog-cancel-button.svelte +10 -3
  125. package/dist/ui/dialog/cmp.dialog-cancel-button.svelte.d.ts +10 -1
  126. package/dist/ui/dialog/cmp.dialog-close-button.svelte +38 -8
  127. package/dist/ui/dialog/cmp.dialog-close-button.svelte.d.ts +8 -2
  128. package/dist/ui/dialog/cmp.dialog-container.svelte +50 -11
  129. package/dist/ui/dialog/cmp.dialog-container.svelte.d.ts +11 -0
  130. package/dist/ui/dialog/cmp.dialog-host.svelte +25 -0
  131. package/dist/ui/dialog/cmp.dialog-host.svelte.d.ts +15 -0
  132. package/dist/ui/dialog/cmp.dialog.svelte +31 -22
  133. package/dist/ui/dialog/cmp.dialog.svelte.d.ts +10 -8
  134. package/dist/ui/dialog/dialog-controller.d.ts +2 -2
  135. package/dist/ui/dialog/dialog-data.d.ts +4 -5
  136. package/dist/ui/dialog/dialog-host-mount.d.ts +6 -0
  137. package/dist/ui/dialog/dialog-host-mount.js +18 -0
  138. package/dist/ui/dialog/dialog-localization.d.ts +3 -0
  139. package/dist/ui/dialog/dialog-localization.js +12 -0
  140. package/dist/ui/dialog/dialog-store.svelte.d.ts +27 -0
  141. package/dist/ui/dialog/dialog-store.svelte.js +125 -0
  142. package/dist/ui/dialog/index.d.ts +3 -2
  143. package/dist/ui/dialog/index.js +2 -1
  144. package/dist/ui/dialog/types.svelte.d.ts +1 -1
  145. package/dist/ui/divider/cmp.divider.svelte +71 -0
  146. package/dist/ui/divider/cmp.divider.svelte.d.ts +25 -0
  147. package/dist/ui/divider/index.d.ts +1 -0
  148. package/dist/ui/divider/index.js +1 -0
  149. package/dist/ui/drag-and-drop/cmp.drag-source.svelte +30 -0
  150. package/dist/ui/drag-and-drop/cmp.drag-source.svelte.d.ts +39 -0
  151. package/dist/ui/drag-and-drop/cmp.drop-zone.svelte +122 -0
  152. package/dist/ui/drag-and-drop/cmp.drop-zone.svelte.d.ts +72 -0
  153. package/dist/ui/drag-and-drop/drag-and-drop.svelte.d.ts +15 -0
  154. package/dist/ui/drag-and-drop/drag-and-drop.svelte.js +13 -0
  155. package/dist/ui/drag-and-drop/index.d.ts +4 -0
  156. package/dist/ui/drag-and-drop/index.js +3 -0
  157. package/dist/ui/drag-and-drop/types.d.ts +9 -0
  158. package/dist/ui/drawer/cmp.drawer-view.svelte +40 -0
  159. package/dist/ui/drawer/cmp.drawer-view.svelte.d.ts +9 -0
  160. package/dist/ui/drawer/cmp.drawer.svelte +29 -0
  161. package/dist/ui/drawer/cmp.drawer.svelte.d.ts +29 -0
  162. package/dist/ui/drawer/drawer.d.ts +41 -0
  163. package/dist/ui/drawer/drawer.js +28 -0
  164. package/dist/ui/drawer/index.d.ts +3 -0
  165. package/dist/ui/drawer/index.js +2 -0
  166. package/dist/ui/dynamic-component/cmp.dynamic-component.svelte +21 -1
  167. package/dist/ui/dynamic-component/cmp.dynamic-component.svelte.d.ts +23 -1
  168. package/dist/ui/emoji-picker/cmp.emoji-panel.svelte +45 -24
  169. package/dist/ui/emoji-picker/cmp.emoji-panel.svelte.d.ts +7 -6
  170. package/dist/ui/emoji-picker/cmp.emoji-picker.svelte +37 -22
  171. package/dist/ui/emoji-picker/cmp.emoji-picker.svelte.d.ts +16 -5
  172. package/dist/ui/empty-state/cmp.empty-state.svelte +126 -0
  173. package/dist/ui/empty-state/cmp.empty-state.svelte.d.ts +39 -0
  174. package/dist/ui/empty-state/index.d.ts +1 -0
  175. package/dist/ui/empty-state/index.js +1 -0
  176. package/dist/ui/empty-state/zero-content.svg +133 -0
  177. package/dist/ui/file-uploader/cmp.file-row.svelte +145 -0
  178. package/dist/ui/file-uploader/cmp.file-row.svelte.d.ts +31 -0
  179. package/dist/ui/file-uploader/cmp.file-upload-progress.svelte +141 -0
  180. package/dist/ui/file-uploader/cmp.file-upload-progress.svelte.d.ts +25 -0
  181. package/dist/ui/file-uploader/cmp.file-uploader.svelte +210 -0
  182. package/dist/ui/file-uploader/cmp.file-uploader.svelte.d.ts +56 -0
  183. package/dist/ui/file-uploader/file-type-colors.d.ts +3 -0
  184. package/dist/ui/file-uploader/file-type-colors.js +38 -0
  185. package/dist/ui/file-uploader/file-uploader-localization.d.ts +4 -0
  186. package/dist/ui/file-uploader/file-uploader-localization.js +19 -0
  187. package/dist/ui/file-uploader/index.d.ts +6 -0
  188. package/dist/ui/file-uploader/index.js +6 -0
  189. package/dist/ui/file-uploader/to-uploading-file.d.ts +7 -0
  190. package/dist/ui/file-uploader/to-uploading-file.js +12 -0
  191. package/dist/ui/form-field/cmp.form-field-validatable.svelte +42 -0
  192. package/dist/ui/form-field/cmp.form-field-validatable.svelte.d.ts +75 -0
  193. package/dist/ui/form-field/cmp.form-field.svelte +55 -0
  194. package/dist/ui/form-field/cmp.form-field.svelte.d.ts +24 -0
  195. package/dist/ui/form-field/index.d.ts +2 -0
  196. package/dist/ui/form-field/index.js +2 -0
  197. package/dist/ui/grid-card/cmp.grid-card-media.svelte +170 -0
  198. package/dist/ui/grid-card/cmp.grid-card-media.svelte.d.ts +30 -0
  199. package/dist/ui/grid-card/cmp.grid-card.svelte +111 -0
  200. package/dist/ui/grid-card/cmp.grid-card.svelte.d.ts +39 -0
  201. package/dist/ui/grid-card/cmp.video-player.svelte +196 -0
  202. package/dist/ui/grid-card/cmp.video-player.svelte.d.ts +26 -0
  203. package/dist/ui/grid-card/fields/cmp.grid-card-actions-field.svelte +25 -0
  204. package/dist/ui/grid-card/fields/cmp.grid-card-actions-field.svelte.d.ts +21 -0
  205. package/dist/ui/grid-card/fields/cmp.grid-card-badge-field.svelte +28 -0
  206. package/dist/ui/grid-card/fields/cmp.grid-card-badge-field.svelte.d.ts +20 -0
  207. package/dist/ui/grid-card/fields/cmp.grid-card-button.svelte +28 -0
  208. package/dist/ui/grid-card/fields/cmp.grid-card-button.svelte.d.ts +17 -0
  209. package/dist/ui/grid-card/fields/cmp.grid-card-field.svelte +61 -0
  210. package/dist/ui/grid-card/fields/cmp.grid-card-field.svelte.d.ts +23 -0
  211. package/dist/ui/grid-card/fields/cmp.grid-card-fields.svelte +32 -0
  212. package/dist/ui/grid-card/fields/cmp.grid-card-fields.svelte.d.ts +17 -0
  213. package/dist/ui/grid-card/fields/cmp.grid-card-id-field.svelte +39 -0
  214. package/dist/ui/grid-card/fields/cmp.grid-card-id-field.svelte.d.ts +13 -0
  215. package/dist/ui/grid-card/fields/cmp.grid-card-progress-field.svelte +69 -0
  216. package/dist/ui/grid-card/fields/cmp.grid-card-progress-field.svelte.d.ts +30 -0
  217. package/dist/ui/grid-card/fields/cmp.grid-card-text-field.svelte +36 -0
  218. package/dist/ui/grid-card/fields/cmp.grid-card-text-field.svelte.d.ts +14 -0
  219. package/dist/ui/grid-card/fields/index.d.ts +8 -0
  220. package/dist/ui/grid-card/fields/index.js +8 -0
  221. package/dist/ui/grid-card/icon-checkbox-checked.svg +5 -0
  222. package/dist/ui/grid-card/icon-checkbox-unchecked.svg +4 -0
  223. package/dist/ui/grid-card/index.d.ts +4 -0
  224. package/dist/ui/grid-card/index.js +3 -0
  225. package/dist/ui/grid-card/types.d.ts +4 -0
  226. package/dist/ui/grouped-sidebar/cmp.grouped-sidebar-section.svelte +28 -23
  227. package/dist/ui/grouped-sidebar/cmp.grouped-sidebar-section.svelte.d.ts +7 -6
  228. package/dist/ui/grouped-sidebar/cmp.grouped-sidebar.svelte +27 -12
  229. package/dist/ui/grouped-sidebar/cmp.grouped-sidebar.svelte.d.ts +20 -4
  230. package/dist/ui/grouped-sidebar/types.svelte.js +3 -3
  231. package/dist/ui/handle-input/cmp.handle-input.svelte +125 -0
  232. package/dist/ui/handle-input/cmp.handle-input.svelte.d.ts +38 -0
  233. package/dist/ui/handle-input/handle-input-localization.d.ts +6 -0
  234. package/dist/ui/handle-input/handle-input-localization.js +33 -0
  235. package/dist/ui/handle-input/index.d.ts +2 -0
  236. package/dist/ui/handle-input/index.js +2 -0
  237. package/dist/ui/html-block/cmp.html-block.svelte +40 -22
  238. package/dist/ui/html-block/cmp.html-block.svelte.d.ts +13 -0
  239. package/dist/ui/icon/cmp.icon-slot.svelte +19 -0
  240. package/dist/ui/icon/cmp.icon-slot.svelte.d.ts +18 -0
  241. package/dist/ui/icon/cmp.icon.svelte +58 -34
  242. package/dist/ui/icon/cmp.icon.svelte.d.ts +19 -9
  243. package/dist/ui/icon/icon-utils.d.ts +9 -0
  244. package/dist/ui/icon/icon-utils.js +12 -0
  245. package/dist/ui/icon/index.d.ts +3 -1
  246. package/dist/ui/icon/index.js +2 -0
  247. package/dist/ui/icon/types.d.ts +8 -1
  248. package/dist/ui/icon-picker/cmp.icon-picker.svelte +137 -0
  249. package/dist/ui/icon-picker/cmp.icon-picker.svelte.d.ts +34 -0
  250. package/dist/ui/icon-picker/index.d.ts +2 -0
  251. package/dist/ui/icon-picker/index.js +1 -0
  252. package/dist/ui/icon-picker/types.d.ts +16 -0
  253. package/dist/ui/icon-picker/types.js +1 -0
  254. package/dist/ui/icon-text/cmp.icon-text.svelte +37 -34
  255. package/dist/ui/icon-text/cmp.icon-text.svelte.d.ts +18 -19
  256. package/dist/ui/image/cmp.image-rounded.svelte +10 -14
  257. package/dist/ui/image/cmp.image-rounded.svelte.d.ts +6 -4
  258. package/dist/ui/image/cmp.image-stub.svelte +2 -2
  259. package/dist/ui/image/cmp.image-stub.svelte.d.ts +1 -1
  260. package/dist/ui/image/cmp.image.svelte +6 -9
  261. package/dist/ui/image/cmp.image.svelte.d.ts +1 -1
  262. package/dist/ui/image/image-state.d.ts +1 -5
  263. package/dist/ui/image/image-state.js +3 -9
  264. package/dist/ui/image/index.d.ts +2 -1
  265. package/dist/ui/image/index.js +1 -1
  266. package/dist/ui/infinite-scroll/cmp.infinite-scroll.svelte +103 -0
  267. package/dist/ui/infinite-scroll/cmp.infinite-scroll.svelte.d.ts +27 -0
  268. package/dist/ui/infinite-scroll/index.d.ts +1 -0
  269. package/dist/ui/infinite-scroll/index.js +1 -0
  270. package/dist/ui/input/cmp.input.svelte +327 -0
  271. package/dist/ui/input/cmp.input.svelte.d.ts +38 -0
  272. package/dist/ui/input/index.d.ts +2 -0
  273. package/dist/ui/input/index.js +1 -0
  274. package/dist/ui/input/types.d.ts +77 -0
  275. package/dist/ui/input/types.js +1 -0
  276. package/dist/ui/line-clamp/cmp.line-clamp-auto.svelte +12 -1
  277. package/dist/ui/line-clamp/cmp.line-clamp-auto.svelte.d.ts +3 -1
  278. package/dist/ui/line-clamp/cmp.line-clamp.svelte +13 -1
  279. package/dist/ui/line-clamp/cmp.line-clamp.svelte.d.ts +4 -1
  280. package/dist/ui/link/cmp.link.svelte +72 -0
  281. package/dist/ui/link/cmp.link.svelte.d.ts +33 -0
  282. package/dist/ui/link/index.d.ts +1 -0
  283. package/dist/ui/link/index.js +1 -0
  284. package/dist/ui/listing-card/cmp.listing-card.svelte +170 -0
  285. package/dist/ui/listing-card/cmp.listing-card.svelte.d.ts +41 -0
  286. package/dist/ui/listing-card/index.d.ts +1 -0
  287. package/dist/ui/listing-card/index.js +1 -0
  288. package/dist/ui/logo/cmp.logo.svelte +77 -0
  289. package/dist/ui/logo/cmp.logo.svelte.d.ts +35 -0
  290. package/dist/ui/logo/index.d.ts +1 -0
  291. package/dist/ui/logo/index.js +1 -0
  292. package/dist/ui/media-playback/playback-manager.svelte.d.ts +3 -0
  293. package/dist/ui/media-playback/playback-manager.svelte.js +5 -0
  294. package/dist/ui/media-viewer-dialog/cmp.media-viewer-dialog.svelte +6 -5
  295. package/dist/ui/media-viewer-dialog/index.d.ts +2 -2
  296. package/dist/ui/media-viewer-dialog/index.js +3 -3
  297. package/dist/ui/navigation/cmp.nav-menu-account-row.svelte +146 -0
  298. package/dist/ui/navigation/cmp.nav-menu-account-row.svelte.d.ts +28 -0
  299. package/dist/ui/navigation/cmp.nav-menu-divider.svelte +14 -0
  300. package/dist/ui/navigation/cmp.nav-menu-divider.svelte.d.ts +22 -0
  301. package/dist/ui/navigation/cmp.nav-menu-group.svelte +17 -0
  302. package/dist/ui/{form-group/cmp.form-group.svelte.d.ts → navigation/cmp.nav-menu-group.svelte.d.ts} +4 -2
  303. package/dist/ui/navigation/cmp.nav-menu-header.svelte +17 -0
  304. package/dist/ui/navigation/cmp.nav-menu-header.svelte.d.ts +10 -0
  305. package/dist/ui/navigation/cmp.nav-menu-item.svelte +157 -0
  306. package/dist/ui/navigation/cmp.nav-menu-item.svelte.d.ts +43 -0
  307. package/dist/ui/navigation/cmp.nav-menu.svelte +96 -0
  308. package/dist/ui/navigation/cmp.nav-menu.svelte.d.ts +27 -0
  309. package/dist/ui/navigation/cmp.nav-rail-item.svelte +118 -0
  310. package/dist/ui/navigation/cmp.nav-rail-item.svelte.d.ts +38 -0
  311. package/dist/ui/navigation/cmp.nav-rail.svelte +216 -0
  312. package/dist/ui/navigation/cmp.nav-rail.svelte.d.ts +40 -0
  313. package/dist/ui/navigation/index.d.ts +8 -0
  314. package/dist/ui/navigation/index.js +8 -0
  315. package/dist/ui/navigation/nav-rail-localization.d.ts +4 -0
  316. package/dist/ui/navigation/nav-rail-localization.js +19 -0
  317. package/dist/ui/numeral-input/cmp.numeral-input.svelte +331 -0
  318. package/dist/ui/numeral-input/cmp.numeral-input.svelte.d.ts +97 -0
  319. package/dist/ui/numeral-input/index.d.ts +1 -0
  320. package/dist/ui/numeral-input/index.js +1 -0
  321. package/dist/ui/open-file-button/cmp.open-file-button.svelte +42 -0
  322. package/dist/ui/open-file-button/cmp.open-file-button.svelte.d.ts +45 -0
  323. package/dist/ui/open-file-button/index.d.ts +1 -0
  324. package/dist/ui/open-file-button/index.js +1 -0
  325. package/dist/ui/option-pill/cmp.option-pill.svelte +140 -0
  326. package/dist/ui/option-pill/cmp.option-pill.svelte.d.ts +73 -0
  327. package/dist/ui/option-pill/index.d.ts +2 -0
  328. package/dist/ui/option-pill/index.js +1 -0
  329. package/dist/ui/option-pill/types.d.ts +8 -0
  330. package/dist/ui/option-pill/types.js +1 -0
  331. package/dist/ui/page-header/cmp.page-header.svelte +75 -0
  332. package/dist/ui/page-header/cmp.page-header.svelte.d.ts +32 -0
  333. package/dist/ui/page-header/index.d.ts +1 -0
  334. package/dist/ui/page-header/index.js +1 -0
  335. package/dist/ui/page-layout/cmp.page-layout.svelte +171 -0
  336. package/dist/ui/page-layout/cmp.page-layout.svelte.d.ts +33 -0
  337. package/dist/ui/page-layout/cmp.page-panel-sidebars.svelte +164 -0
  338. package/dist/ui/page-layout/cmp.page-panel-sidebars.svelte.d.ts +30 -0
  339. package/dist/ui/page-layout/cmp.page-panel.svelte +377 -0
  340. package/dist/ui/page-layout/cmp.page-panel.svelte.d.ts +60 -0
  341. package/dist/ui/page-layout/cmp.page-panels.svelte +21 -0
  342. package/dist/ui/{form-group/cmp.form-group-label.svelte.d.ts → page-layout/cmp.page-panels.svelte.d.ts} +4 -2
  343. package/dist/ui/page-layout/cmp.panel-collapse-button.svelte +63 -0
  344. package/dist/ui/page-layout/cmp.panel-collapse-button.svelte.d.ts +23 -0
  345. package/dist/ui/page-layout/cmp.panel-content.svelte +21 -0
  346. package/dist/ui/{page-toolbar/cmp.toolbar-button-item.svelte.d.ts → page-layout/cmp.panel-content.svelte.d.ts} +2 -5
  347. package/dist/ui/page-layout/index.d.ts +8 -0
  348. package/dist/ui/page-layout/index.js +7 -0
  349. package/dist/ui/page-layout/page-layout-localization.d.ts +5 -0
  350. package/dist/ui/page-layout/page-layout-localization.js +26 -0
  351. package/dist/ui/page-layout/panel-state.svelte.d.ts +50 -0
  352. package/dist/ui/page-layout/panel-state.svelte.js +61 -0
  353. package/dist/ui/page-layout/types.d.ts +19 -0
  354. package/dist/ui/page-layout/types.js +1 -0
  355. package/dist/ui/page-toolbar/cmp.reorderable-toggle-list.svelte +20 -27
  356. package/dist/ui/page-toolbar/cmp.reorderable-toggle-list.svelte.d.ts +3 -3
  357. package/dist/ui/page-toolbar/cmp.toolbar-checkbox-item.svelte +3 -5
  358. package/dist/ui/page-toolbar/cmp.toolbar-panel-button.svelte +42 -0
  359. package/dist/ui/page-toolbar/cmp.toolbar-panel-button.svelte.d.ts +20 -0
  360. package/dist/ui/page-toolbar/cmp.toolbar-panel.svelte +17 -18
  361. package/dist/ui/page-toolbar/cmp.toolbar-panel.svelte.d.ts +2 -2
  362. package/dist/ui/page-toolbar/cmp.toolbar-popover.svelte +31 -0
  363. package/dist/ui/page-toolbar/cmp.toolbar-popover.svelte.d.ts +23 -0
  364. package/dist/ui/page-toolbar/cmp.toolbar-search-input.svelte +21 -16
  365. package/dist/ui/page-toolbar/cmp.toolbar-search-input.svelte.d.ts +8 -1
  366. package/dist/ui/page-toolbar/cmp.toolbar-segmented-control.svelte +9 -15
  367. package/dist/ui/page-toolbar/cmp.toolbar-segmented-control.svelte.d.ts +10 -16
  368. package/dist/ui/page-toolbar/cmp.toolbar-switch-item.svelte +13 -16
  369. package/dist/ui/page-toolbar/cmp.toolbar-switch-item.svelte.d.ts +10 -12
  370. package/dist/ui/page-toolbar/cmp.toolbar-toggle-item.svelte +4 -33
  371. package/dist/ui/page-toolbar/cmp.toolbar-toggle-item.svelte.d.ts +2 -9
  372. package/dist/ui/page-toolbar/index.d.ts +2 -2
  373. package/dist/ui/page-toolbar/index.js +2 -2
  374. package/dist/ui/pagination/cmp.pagination.svelte +199 -0
  375. package/dist/ui/pagination/cmp.pagination.svelte.d.ts +35 -0
  376. package/dist/ui/pagination/index.d.ts +2 -0
  377. package/dist/ui/pagination/index.js +2 -0
  378. package/dist/ui/pagination/pagination-localization.d.ts +6 -0
  379. package/dist/ui/pagination/pagination-localization.js +33 -0
  380. package/dist/ui/pagination/pagination-state.svelte.d.ts +13 -0
  381. package/dist/ui/pagination/pagination-state.svelte.js +35 -0
  382. package/dist/ui/pin-input/cmp.pin-input.svelte +154 -0
  383. package/dist/ui/pin-input/cmp.pin-input.svelte.d.ts +44 -0
  384. package/dist/ui/player/buttons/cmp.mobile-player-buttons.svelte +4 -4
  385. package/dist/ui/player/buttons/cmp.player-buttons.svelte +11 -11
  386. package/dist/ui/player/buttons/types.d.ts +2 -3
  387. package/dist/ui/player/carousel/cmp.carousel.svelte +6 -4
  388. package/dist/ui/player/carousel/cmp.carousel.svelte.d.ts +2 -1
  389. package/dist/ui/popover/cmp.hover-popover.svelte +64 -0
  390. package/dist/ui/popover/cmp.hover-popover.svelte.d.ts +52 -0
  391. package/dist/ui/popover/cmp.popover-item.svelte +89 -0
  392. package/dist/ui/popover/cmp.popover-item.svelte.d.ts +35 -0
  393. package/dist/ui/popover/cmp.popover.svelte +369 -0
  394. package/dist/ui/popover/cmp.popover.svelte.d.ts +70 -0
  395. package/dist/ui/popover/index.d.ts +10 -0
  396. package/dist/ui/popover/index.js +4 -0
  397. package/dist/ui/{dropdown/dropdown-ignore.d.ts → popover/popover-ignore.d.ts} +1 -1
  398. package/dist/ui/{dropdown/dropdown-ignore.js → popover/popover-ignore.js} +2 -2
  399. package/dist/ui/progress/cmp.progress.svelte +90 -21
  400. package/dist/ui/progress/cmp.progress.svelte.d.ts +26 -6
  401. package/dist/ui/radio/cmp.radio-card.svelte +157 -0
  402. package/dist/ui/radio/cmp.radio-card.svelte.d.ts +43 -0
  403. package/dist/ui/radio/cmp.radio.svelte +115 -0
  404. package/dist/ui/radio/cmp.radio.svelte.d.ts +37 -0
  405. package/dist/ui/radio/index.d.ts +2 -0
  406. package/dist/ui/radio/index.js +2 -0
  407. package/dist/ui/rich-text-input/cmp.rich-text-input.svelte +283 -0
  408. package/dist/ui/rich-text-input/cmp.rich-text-input.svelte.d.ts +69 -0
  409. package/dist/ui/rich-text-input/hugerte.declarations.d.ts +10 -0
  410. package/dist/ui/{inputs/rich-text-input → rich-text-input}/rich-text-input-localization.js +1 -1
  411. package/dist/ui/rich-text-input/types.js +1 -0
  412. package/dist/ui/{inputs/rich-text-input → rich-text-input}/validated-link-button.d.ts +1 -1
  413. package/dist/ui/{inputs/rich-text-input → rich-text-input}/validated-link-button.js +1 -1
  414. package/dist/ui/seek-bar/cmp.seek-bar.svelte +15 -12
  415. package/dist/ui/seek-bar/cmp.seek-bar.svelte.d.ts +6 -5
  416. package/dist/ui/seek-bar/seek-bar-localization.d.ts +3 -0
  417. package/dist/ui/seek-bar/seek-bar-localization.js +12 -0
  418. package/dist/ui/segmented-control/cmp.segmented-control.svelte +137 -85
  419. package/dist/ui/segmented-control/cmp.segmented-control.svelte.d.ts +46 -27
  420. package/dist/ui/segmented-control/index.d.ts +1 -0
  421. package/dist/ui/select/_select-trigger.scss +199 -0
  422. package/dist/ui/select/cmp.multiselect-async.svelte +54 -0
  423. package/dist/ui/select/cmp.multiselect-async.svelte.d.ts +79 -0
  424. package/dist/ui/select/cmp.multiselect-tree.svelte +115 -0
  425. package/dist/ui/select/cmp.multiselect-tree.svelte.d.ts +152 -0
  426. package/dist/ui/select/cmp.multiselect.svelte +70 -0
  427. package/dist/ui/select/cmp.multiselect.svelte.d.ts +78 -0
  428. package/dist/ui/select/cmp.singleselect-async.svelte +343 -0
  429. package/dist/ui/select/cmp.singleselect-async.svelte.d.ts +105 -0
  430. package/dist/ui/select/cmp.singleselect.svelte +136 -0
  431. package/dist/ui/select/cmp.singleselect.svelte.d.ts +96 -0
  432. package/dist/ui/select/index.d.ts +11 -0
  433. package/dist/ui/select/index.js +5 -0
  434. package/dist/ui/select/multiselect-base.svelte +565 -0
  435. package/dist/ui/select/multiselect-base.svelte.d.ts +81 -0
  436. package/dist/ui/select/multiselect-localization.d.ts +11 -0
  437. package/dist/ui/select/multiselect-localization.js +47 -0
  438. package/dist/ui/select/select-chip.svelte +123 -0
  439. package/dist/ui/select/select-chip.svelte.d.ts +48 -0
  440. package/dist/ui/select/select-core.svelte.d.ts +87 -0
  441. package/dist/ui/select/select-core.svelte.js +380 -0
  442. package/dist/ui/select/select-internals.d.ts +33 -0
  443. package/dist/ui/select/select-internals.js +111 -0
  444. package/dist/ui/select/select-listbox-localization.d.ts +4 -0
  445. package/dist/ui/select/select-listbox-localization.js +16 -0
  446. package/dist/ui/select/select-listbox.svelte +366 -0
  447. package/dist/ui/select/select-listbox.svelte.d.ts +93 -0
  448. package/dist/ui/select/singleselect-localization.d.ts +4 -0
  449. package/dist/ui/select/singleselect-localization.js +13 -0
  450. package/dist/ui/select/types.d.ts +211 -0
  451. package/dist/ui/select/types.js +1 -0
  452. package/dist/ui/skeleton/cmp.skeleton.svelte +72 -0
  453. package/dist/ui/skeleton/cmp.skeleton.svelte.d.ts +25 -0
  454. package/dist/ui/skeleton/index.d.ts +1 -0
  455. package/dist/ui/skeleton/index.js +1 -0
  456. package/dist/ui/slider/cmp.slider.svelte +160 -0
  457. package/dist/ui/slider/cmp.slider.svelte.d.ts +40 -0
  458. package/dist/ui/slider/index.d.ts +1 -0
  459. package/dist/ui/slider/index.js +1 -0
  460. package/dist/ui/spinner/cmp.spinner.svelte +156 -0
  461. package/dist/ui/spinner/cmp.spinner.svelte.d.ts +47 -0
  462. package/dist/ui/spinner/index.d.ts +1 -0
  463. package/dist/ui/spinner/index.js +1 -0
  464. package/dist/ui/stack/cmp.stack.svelte +25 -0
  465. package/dist/ui/stack/cmp.stack.svelte.d.ts +22 -0
  466. package/dist/ui/stack/index.d.ts +1 -0
  467. package/dist/ui/stack/index.js +1 -0
  468. package/dist/ui/stat/cmp.stat.svelte +105 -0
  469. package/dist/ui/stat/cmp.stat.svelte.d.ts +34 -0
  470. package/dist/ui/stat/index.d.ts +1 -0
  471. package/dist/ui/stat/index.js +1 -0
  472. package/dist/ui/stepper/cmp.stepper.svelte +286 -0
  473. package/dist/ui/stepper/cmp.stepper.svelte.d.ts +59 -0
  474. package/dist/ui/stepper/index.d.ts +1 -0
  475. package/dist/ui/stepper/index.js +1 -0
  476. package/dist/ui/stepper-dialog/cmp.stepper-dialog.svelte +221 -0
  477. package/dist/ui/stepper-dialog/cmp.stepper-dialog.svelte.d.ts +17 -0
  478. package/dist/ui/stepper-dialog/index.d.ts +2 -0
  479. package/dist/ui/stepper-dialog/index.js +1 -0
  480. package/dist/ui/stepper-dialog/stepper-dialog-localization.d.ts +6 -0
  481. package/dist/ui/stepper-dialog/stepper-dialog-localization.js +33 -0
  482. package/dist/ui/stepper-dialog/stepper-dialog.d.ts +22 -0
  483. package/dist/ui/stepper-dialog/stepper-dialog.js +26 -0
  484. package/dist/ui/stepper-dialog/types.d.ts +34 -0
  485. package/dist/ui/stepper-dialog/types.js +1 -0
  486. package/dist/ui/swipe-indicator/cmp.swipe-indicator.svelte +68 -9
  487. package/dist/ui/swipe-indicator/cmp.swipe-indicator.svelte.d.ts +20 -4
  488. package/dist/ui/table/cmp.table.svelte +115 -59
  489. package/dist/ui/table/cmp.table.svelte.d.ts +24 -15
  490. package/dist/ui/table/table-cells/table-actions-cell.svelte +14 -21
  491. package/dist/ui/table/table-cells/table-actions-cell.svelte.d.ts +5 -5
  492. package/dist/ui/table/table-cells/table-badge-cell.svelte +2 -2
  493. package/dist/ui/table/table-cells/table-button-cell.svelte +3 -3
  494. package/dist/ui/table/table-cells/table-by-cell.svelte +12 -21
  495. package/dist/ui/table/table-cells/table-checkbox-cell.svelte +3 -0
  496. package/dist/ui/table/table-cells/table-icon-cell.svelte +6 -29
  497. package/dist/ui/table/table-cells/table-icon-cell.svelte.d.ts +1 -10
  498. package/dist/ui/table/table-cells/table-move-row-cell.svelte +3 -3
  499. package/dist/ui/table/table-cells/table-select-cell.svelte +18 -12
  500. package/dist/ui/table/table-cells/table-text-cell.svelte +2 -5
  501. package/dist/ui/table/table-cells/table-text-cell.svelte.d.ts +1 -1
  502. package/dist/ui/table/table-cells/table-text-input-cell.svelte +11 -25
  503. package/dist/ui/table/table-columns-manager/cmp.table-columns-manager.svelte +8 -11
  504. package/dist/ui/table/table-columns-manager/cmp.table-columns-manager.svelte.d.ts +2 -2
  505. package/dist/ui/table/table-group-actions/cmp.table-group-actions.svelte +14 -14
  506. package/dist/ui/table/table-group-actions/cmp.table-group-actions.svelte.d.ts +1 -1
  507. package/dist/ui/table/table-group-actions/types.svelte.d.ts +2 -3
  508. package/dist/ui/table/table-headers/table-header-sortable.svelte +5 -5
  509. package/dist/ui/table/table-headers/table-header.svelte +3 -3
  510. package/dist/ui/table/table-model.svelte.d.ts +2 -1
  511. package/dist/ui/table/table-model.svelte.js +4 -1
  512. package/dist/ui/table/types.d.ts +24 -13
  513. package/dist/ui/tabs/cmp.tabs.svelte +154 -0
  514. package/dist/ui/tabs/cmp.tabs.svelte.d.ts +70 -0
  515. package/dist/ui/tabs/index.d.ts +2 -0
  516. package/dist/ui/tabs/index.js +1 -0
  517. package/dist/ui/textarea/cmp.textarea.svelte +254 -0
  518. package/dist/ui/textarea/cmp.textarea.svelte.d.ts +80 -0
  519. package/dist/ui/textarea/index.d.ts +1 -0
  520. package/dist/ui/textarea/index.js +1 -0
  521. package/dist/ui/time-ago/cmp.time-ago.svelte +6 -3
  522. package/dist/ui/time-ago/cmp.time-ago.svelte.d.ts +5 -2
  523. package/dist/ui/toast/cmp.toast-item.svelte +191 -0
  524. package/dist/ui/{form-group/cmp.form-group-note.svelte.d.ts → toast/cmp.toast-item.svelte.d.ts} +5 -2
  525. package/dist/ui/toast/cmp.toaster.svelte +112 -0
  526. package/dist/ui/toast/cmp.toaster.svelte.d.ts +29 -0
  527. package/dist/ui/toast/index.d.ts +3 -0
  528. package/dist/ui/toast/index.js +2 -0
  529. package/dist/ui/toast/toast-localization.d.ts +3 -0
  530. package/dist/ui/toast/toast-localization.js +12 -0
  531. package/dist/ui/toast/toast-store.svelte.d.ts +17 -0
  532. package/dist/ui/toast/toast-store.svelte.js +65 -0
  533. package/dist/ui/toast/toaster-host.svelte.d.ts +6 -0
  534. package/dist/ui/toast/toaster-host.svelte.js +18 -0
  535. package/dist/ui/toast/toastr.d.ts +17 -0
  536. package/dist/ui/toast/toastr.js +30 -0
  537. package/dist/ui/toast/types.d.ts +27 -0
  538. package/dist/ui/toast/types.js +1 -0
  539. package/dist/ui/toggle/cmp.toggle.svelte +169 -77
  540. package/dist/ui/toggle/cmp.toggle.svelte.d.ts +33 -11
  541. package/dist/ui/tooltip/cmp.tooltip.svelte +125 -155
  542. package/dist/ui/tooltip/cmp.tooltip.svelte.d.ts +23 -19
  543. package/dist/ui/tooltip/index.d.ts +0 -1
  544. package/dist/ui/tree/cmp.tree-node-view.svelte +342 -0
  545. package/dist/ui/tree/cmp.tree-node-view.svelte.d.ts +12 -0
  546. package/dist/ui/tree/cmp.tree.svelte +65 -0
  547. package/dist/ui/tree/cmp.tree.svelte.d.ts +32 -0
  548. package/dist/ui/tree/index.d.ts +4 -0
  549. package/dist/ui/tree/index.js +2 -0
  550. package/dist/ui/tree/tree-navigation.svelte.d.ts +14 -0
  551. package/dist/ui/tree/tree-navigation.svelte.js +99 -0
  552. package/dist/ui/tree/tree-node-action.d.ts +8 -0
  553. package/dist/ui/tree/tree-node-action.js +1 -0
  554. package/dist/ui/tree/tree-node-drag-config.svelte.d.ts +16 -0
  555. package/dist/ui/tree/tree-node-drag-config.svelte.js +4 -0
  556. package/dist/ui/tree/tree-node.svelte.d.ts +81 -0
  557. package/dist/ui/tree/tree-node.svelte.js +232 -0
  558. package/dist/ui/typography/cmp.heading.svelte +77 -0
  559. package/dist/ui/typography/cmp.heading.svelte.d.ts +29 -0
  560. package/dist/ui/typography/cmp.text.svelte +68 -0
  561. package/dist/ui/typography/cmp.text.svelte.d.ts +32 -0
  562. package/dist/ui/typography/index.d.ts +2 -0
  563. package/dist/ui/typography/index.js +2 -0
  564. package/dist/ui/usage/cmp.usage-row.svelte +85 -0
  565. package/dist/ui/usage/cmp.usage-row.svelte.d.ts +29 -0
  566. package/dist/ui/usage/cmp.usage.svelte +50 -0
  567. package/dist/ui/usage/cmp.usage.svelte.d.ts +23 -0
  568. package/dist/ui/usage/index.d.ts +2 -0
  569. package/dist/ui/usage/index.js +2 -0
  570. package/dist/ui/validatable/cmp.field-error.svelte +36 -0
  571. package/dist/ui/validatable/cmp.field-error.svelte.d.ts +17 -0
  572. package/dist/ui/validatable/cmp.validatable.svelte +86 -50
  573. package/dist/ui/validatable/cmp.validatable.svelte.d.ts +72 -28
  574. package/dist/ui/validatable/cmp.validation-error.svelte +8 -45
  575. package/dist/ui/validatable/cmp.validation-error.svelte.d.ts +3 -8
  576. package/dist/ui/validatable/index.d.ts +1 -0
  577. package/dist/ui/video/cmp.video.svelte +7 -7
  578. package/dist/ui/visual-select/cmp.visual-select.svelte +154 -0
  579. package/dist/ui/visual-select/cmp.visual-select.svelte.d.ts +78 -0
  580. package/dist/ui/visual-select/index.d.ts +1 -0
  581. package/dist/ui/visual-select/index.js +1 -0
  582. package/dist/ui/website-input/cmp.website-input.svelte +78 -0
  583. package/dist/ui/website-input/cmp.website-input.svelte.d.ts +25 -0
  584. package/dist/ui/website-input/index.d.ts +1 -0
  585. package/dist/ui/website-input/index.js +1 -0
  586. package/dist/ui/website-input/website-input-localization.d.ts +3 -0
  587. package/dist/ui/website-input/website-input-localization.js +12 -0
  588. package/package.json +240 -89
  589. package/dist/core/toastr/index.d.ts +0 -3
  590. package/dist/core/toastr/index.js +0 -2
  591. package/dist/core/toastr/toaster-host.svelte.d.ts +0 -7
  592. package/dist/core/toastr/toaster-host.svelte.js +0 -41
  593. package/dist/core/toastr/toastr.scss +0 -66
  594. package/dist/core/toastr/toastr.svelte.d.ts +0 -8
  595. package/dist/core/toastr/toastr.svelte.js +0 -30
  596. package/dist/core/toastr/types.d.ts +0 -16
  597. package/dist/styles/_colors.scss +0 -126
  598. package/dist/styles/_form-group.scss +0 -37
  599. package/dist/styles/_input.scss +0 -100
  600. package/dist/styles/_row.scss +0 -81
  601. package/dist/styles/_theme.scss +0 -68
  602. package/dist/ui/button/cmp.options-button.svelte +0 -214
  603. package/dist/ui/button/cmp.options-button.svelte.d.ts +0 -38
  604. package/dist/ui/button/resources/button-base.svelte +0 -81
  605. package/dist/ui/button/resources/button-base.svelte.d.ts +0 -13
  606. package/dist/ui/button/resources/button-theme.svelte +0 -335
  607. package/dist/ui/button/resources/button-theme.svelte.d.ts +0 -10
  608. package/dist/ui/button/resources/types.d.ts +0 -2
  609. package/dist/ui/checkbox/cmp.three-state-checkbox.svelte +0 -117
  610. package/dist/ui/checkbox/cmp.three-state-checkbox.svelte.d.ts +0 -37
  611. package/dist/ui/checkbox/types.d.ts +0 -1
  612. package/dist/ui/datetime-picker/cmp.datetime-picker.svelte +0 -292
  613. package/dist/ui/datetime-picker/cmp.datetime-picker.svelte.d.ts +0 -37
  614. package/dist/ui/datetime-picker/datetime-picker-localization.d.ts +0 -5
  615. package/dist/ui/datetime-picker/datetime-picker-localization.js +0 -26
  616. package/dist/ui/datetime-picker/flatpickr-theme.d.ts +0 -1
  617. package/dist/ui/datetime-picker/flatpickr-theme.js +0 -13
  618. package/dist/ui/datetime-picker/index.d.ts +0 -2
  619. package/dist/ui/datetime-picker/index.js +0 -1
  620. package/dist/ui/datetime-picker/types.d.ts +0 -16
  621. package/dist/ui/dialog/dialog-mount.d.ts +0 -3
  622. package/dist/ui/dialog/dialog-mount.js +0 -19
  623. package/dist/ui/dialog/dialogs.svelte.d.ts +0 -16
  624. package/dist/ui/dialog/dialogs.svelte.js +0 -86
  625. package/dist/ui/dropdown/cmp.dropdown-item.svelte +0 -93
  626. package/dist/ui/dropdown/cmp.dropdown-item.svelte.d.ts +0 -32
  627. package/dist/ui/dropdown/cmp.dropdown.svelte +0 -289
  628. package/dist/ui/dropdown/cmp.dropdown.svelte.d.ts +0 -48
  629. package/dist/ui/dropdown/index.d.ts +0 -4
  630. package/dist/ui/dropdown/index.js +0 -3
  631. package/dist/ui/form-group/cmp.form-group-label.svelte +0 -25
  632. package/dist/ui/form-group/cmp.form-group-note.svelte +0 -16
  633. package/dist/ui/form-group/cmp.form-group.svelte +0 -16
  634. package/dist/ui/form-group/index.d.ts +0 -3
  635. package/dist/ui/form-group/index.js +0 -3
  636. package/dist/ui/infinite-scrolling/cmp.infinite-scrolling.svelte +0 -101
  637. package/dist/ui/infinite-scrolling/cmp.infinite-scrolling.svelte.d.ts +0 -25
  638. package/dist/ui/infinite-scrolling/index.d.ts +0 -1
  639. package/dist/ui/infinite-scrolling/index.js +0 -1
  640. package/dist/ui/inputs/index.d.ts +0 -6
  641. package/dist/ui/inputs/index.js +0 -5
  642. package/dist/ui/inputs/input/cmp.input-validatable.svelte +0 -57
  643. package/dist/ui/inputs/input/cmp.input-validatable.svelte.d.ts +0 -57
  644. package/dist/ui/inputs/input/cmp.input.svelte +0 -241
  645. package/dist/ui/inputs/input/cmp.input.svelte.d.ts +0 -61
  646. package/dist/ui/inputs/input/index.d.ts +0 -2
  647. package/dist/ui/inputs/input/index.js +0 -2
  648. package/dist/ui/inputs/input-emoji-picker/cmp.input-emoji-picker.svelte +0 -44
  649. package/dist/ui/inputs/input-emoji-picker/cmp.input-emoji-picker.svelte.d.ts +0 -9
  650. package/dist/ui/inputs/input-emoji-picker/input-emoji-picker-container.d.ts +0 -2
  651. package/dist/ui/inputs/input-emoji-picker/input-emoji-picker-container.js +0 -16
  652. package/dist/ui/inputs/numeral-input/cmp.numeral-input-validatable.svelte +0 -55
  653. package/dist/ui/inputs/numeral-input/cmp.numeral-input-validatable.svelte.d.ts +0 -62
  654. package/dist/ui/inputs/numeral-input/cmp.numeral-input.svelte +0 -254
  655. package/dist/ui/inputs/numeral-input/cmp.numeral-input.svelte.d.ts +0 -66
  656. package/dist/ui/inputs/numeral-input/index.d.ts +0 -2
  657. package/dist/ui/inputs/numeral-input/index.js +0 -2
  658. package/dist/ui/inputs/pin-input/cmp.pin-input.svelte +0 -58
  659. package/dist/ui/inputs/pin-input/cmp.pin-input.svelte.d.ts +0 -23
  660. package/dist/ui/inputs/pin-input/pin-input-generator.d.ts +0 -27
  661. package/dist/ui/inputs/pin-input/pin-input-generator.js +0 -114
  662. package/dist/ui/inputs/rich-text-input/cmp.rich-text-input.svelte +0 -55
  663. package/dist/ui/inputs/rich-text-input/cmp.rich-text-input.svelte.d.ts +0 -43
  664. package/dist/ui/inputs/rich-text-input/tinymce-input.svelte +0 -252
  665. package/dist/ui/inputs/rich-text-input/tinymce-input.svelte.d.ts +0 -25
  666. package/dist/ui/inputs/rich-text-input/tinymce.declarations.d.ts +0 -7
  667. package/dist/ui/inputs/textarea/cmp.textarea-validatable.svelte +0 -35
  668. package/dist/ui/inputs/textarea/cmp.textarea-validatable.svelte.d.ts +0 -54
  669. package/dist/ui/inputs/textarea/cmp.textarea.svelte +0 -249
  670. package/dist/ui/inputs/textarea/cmp.textarea.svelte.d.ts +0 -58
  671. package/dist/ui/inputs/textarea/index.d.ts +0 -2
  672. package/dist/ui/inputs/textarea/index.js +0 -2
  673. package/dist/ui/loading/cmp.loading.svelte +0 -93
  674. package/dist/ui/loading/cmp.loading.svelte.d.ts +0 -22
  675. package/dist/ui/loading/index.d.ts +0 -1
  676. package/dist/ui/loading/index.js +0 -1
  677. package/dist/ui/multiselect-dropdown/cmp.checkbox-node.svelte +0 -76
  678. package/dist/ui/multiselect-dropdown/cmp.checkbox-node.svelte.d.ts +0 -14
  679. package/dist/ui/multiselect-dropdown/cmp.multiselect-dropdown.svelte +0 -276
  680. package/dist/ui/multiselect-dropdown/cmp.multiselect-dropdown.svelte.d.ts +0 -45
  681. package/dist/ui/multiselect-dropdown/index.d.ts +0 -3
  682. package/dist/ui/multiselect-dropdown/index.js +0 -2
  683. package/dist/ui/multiselect-dropdown/mapper.d.ts +0 -3
  684. package/dist/ui/multiselect-dropdown/mapper.js +0 -39
  685. package/dist/ui/multiselect-dropdown/multiselect-dropdown-localization.d.ts +0 -11
  686. package/dist/ui/multiselect-dropdown/multiselect-dropdown-localization.js +0 -41
  687. package/dist/ui/multiselect-dropdown/types.d.ts +0 -10
  688. package/dist/ui/page-toolbar/cmp.toolbar-button-item.svelte +0 -34
  689. package/dist/ui/page-toolbar/cmp.toolbar-dropdown.svelte +0 -29
  690. package/dist/ui/page-toolbar/cmp.toolbar-dropdown.svelte.d.ts +0 -17
  691. package/dist/ui/placeholder/cmp.placeholder.svelte +0 -65
  692. package/dist/ui/placeholder/cmp.placeholder.svelte.d.ts +0 -19
  693. package/dist/ui/placeholder/index.d.ts +0 -1
  694. package/dist/ui/placeholder/index.js +0 -1
  695. package/dist/ui/selects/_multiselect.scss +0 -282
  696. package/dist/ui/selects/_singleselect.scss +0 -176
  697. package/dist/ui/selects/cmp.multiselect.svelte +0 -531
  698. package/dist/ui/selects/cmp.multiselect.svelte.d.ts +0 -87
  699. package/dist/ui/selects/cmp.search-multiselect.svelte +0 -533
  700. package/dist/ui/selects/cmp.search-multiselect.svelte.d.ts +0 -69
  701. package/dist/ui/selects/cmp.singleselect.svelte +0 -386
  702. package/dist/ui/selects/cmp.singleselect.svelte.d.ts +0 -80
  703. package/dist/ui/selects/index.d.ts +0 -5
  704. package/dist/ui/selects/index.js +0 -4
  705. package/dist/ui/selects/select-localization.d.ts +0 -6
  706. package/dist/ui/selects/select-localization.js +0 -27
  707. package/dist/ui/selects/types.d.ts +0 -29
  708. package/dist/ui/tooltip/types.d.ts +0 -2
  709. package/dist/ui/validatable/_validatable.scss +0 -34
  710. /package/dist/core/{toastr/types.js → files/file-validation-types.js} +0 -0
  711. /package/dist/{ui/button/resources/types.js → core/files/upload-types.js} +0 -0
  712. /package/dist/ui/{checkbox → breadcrumb}/types.js +0 -0
  713. /package/dist/ui/{datetime-picker → button}/types.js +0 -0
  714. /package/dist/ui/{inputs/rich-text-input → chip-group}/types.js +0 -0
  715. /package/dist/ui/{multiselect-dropdown → date-picker}/types.js +0 -0
  716. /package/dist/ui/{selects → drag-and-drop}/types.js +0 -0
  717. /package/dist/ui/{tooltip → grid-card}/types.js +0 -0
  718. /package/dist/ui/{inputs/pin-input → pin-input}/index.d.ts +0 -0
  719. /package/dist/ui/{inputs/pin-input → pin-input}/index.js +0 -0
  720. /package/dist/ui/{inputs/rich-text-input → rich-text-input}/index.d.ts +0 -0
  721. /package/dist/ui/{inputs/rich-text-input → rich-text-input}/index.js +0 -0
  722. /package/dist/ui/{inputs/rich-text-input → rich-text-input}/rich-text-input-localization.d.ts +0 -0
  723. /package/dist/ui/{inputs/rich-text-input → rich-text-input}/types.d.ts +0 -0
@@ -0,0 +1,145 @@
1
+ <script lang="ts">import { StringHelper } from '../../core/utils';
2
+ import { Icon } from '../icon';
3
+ import { FileUploaderLocalization } from './file-uploader-localization';
4
+ import IconDismiss from '@fluentui/svg-icons/icons/dismiss_12_regular.svg?raw';
5
+ import IconDocument from '@fluentui/svg-icons/icons/document_20_regular.svg?raw';
6
+ const { file, removable = true, on } = $props();
7
+ const localization = new FileUploaderLocalization();
8
+ const isUploading = $derived(file.status === 'uploading' || file.status === 'queued');
9
+ const isError = $derived(file.status === 'error');
10
+ const percent = $derived(Math.max(0, Math.min(100, Math.round(file.progress * 100))));
11
+ const sizeText = $derived(StringHelper.toFileSizeString(file.file.size));
12
+ </script>
13
+
14
+ <div class="file-row" class:file-row--uploading={isUploading} class:file-row--error={isError}>
15
+ <span class="file-row__icon" aria-hidden="true">
16
+ <Icon src={IconDocument} />
17
+ </span>
18
+
19
+ <div class="file-row__meta">
20
+ <div class="file-row__name">{file.file.name}</div>
21
+ {#if isUploading}
22
+ <div class="file-row__sub">{percent}% · {localization.uploadingHint}</div>
23
+ {:else if isError}
24
+ <div class="file-row__sub file-row__sub--error">{file.error ?? ''}</div>
25
+ {:else}
26
+ <div class="file-row__sub">{sizeText}</div>
27
+ {/if}
28
+ </div>
29
+
30
+ {#if isUploading}
31
+ <div class="file-row__bar" aria-hidden="true">
32
+ <span style:width="{percent}%"></span>
33
+ </div>
34
+ {:else if removable}
35
+ <button type="button" class="file-row__remove" aria-label={localization.removeAria(file.file.name)} onclick={() => on?.remove?.()}>
36
+ <Icon src={IconDismiss} />
37
+ </button>
38
+ {/if}
39
+ </div>
40
+
41
+ <!--
42
+ @component
43
+ Compact row representation of an `UploadingFile`. Three states driven by `file.status`:
44
+ - **`queued` / `uploading`** — filename + percent subtitle + thin progress bar.
45
+ - **`success`** — filename + size + optional × remove button.
46
+ - **`error`** — filename + red error subtitle + optional × remove button.
47
+
48
+ Use directly with `UploadMediaStore.files`, or wrap a plain `File` via `toUploadingFile()` from
49
+ `@streamscloud/kit/core/files` for ad-hoc lists.
50
+
51
+ ### CSS Custom Properties
52
+ | Property | Description | Default |
53
+ |---|---|---|
54
+ | `--sc-kit--file-row--background` | Row background | `var(--sc-kit--color--bg--field-alt)` |
55
+ | `--sc-kit--file-row--border-color` | Row border | `var(--sc-kit--color--border)` |
56
+ | `--sc-kit--file-row--border-radius` | Row radius | `var(--sc-kit--radius--md)` |
57
+ | `--sc-kit--file-row--bar--background` | Progress-bar track | `var(--sc-kit--color--bg--active)` |
58
+ | `--sc-kit--file-row--bar--fill` | Progress-bar fill | `var(--sc-kit--color--accent)` |
59
+ -->
60
+
61
+ <style>.file-row {
62
+ --_fr--background: var(--sc-kit--file-row--background, var(--sc-kit--color--bg--field-alt));
63
+ --_fr--border-color: var(--sc-kit--file-row--border-color, var(--sc-kit--color--border));
64
+ --_fr--border-radius: var(--sc-kit--file-row--border-radius, var(--sc-kit--radius--md));
65
+ --_fr--bar-background: var(--sc-kit--file-row--bar--background, var(--sc-kit--color--bg--active));
66
+ --_fr--bar-fill: var(--sc-kit--file-row--bar--fill, var(--sc-kit--color--accent));
67
+ display: grid;
68
+ grid-template-columns: auto 1fr auto;
69
+ align-items: center;
70
+ gap: var(--sc-kit--space--3);
71
+ padding: var(--sc-kit--space--2) var(--sc-kit--space--3);
72
+ background: var(--_fr--background);
73
+ border: 1px solid var(--_fr--border-color);
74
+ border-radius: var(--_fr--border-radius);
75
+ }
76
+ .file-row--uploading {
77
+ grid-template-rows: auto auto;
78
+ grid-template-columns: auto 1fr;
79
+ row-gap: var(--sc-kit--space--1);
80
+ column-gap: var(--sc-kit--space--3);
81
+ }
82
+ .file-row--error {
83
+ border-color: var(--sc-kit--color--danger);
84
+ }
85
+ .file-row__icon {
86
+ --sc-kit--icon--color: var(--sc-kit--color--text--muted);
87
+ display: inline-flex;
88
+ align-items: center;
89
+ justify-content: center;
90
+ grid-row: 1;
91
+ }
92
+ .file-row__meta {
93
+ min-width: 0;
94
+ grid-row: 1;
95
+ }
96
+ .file-row__name {
97
+ font-size: var(--sc-kit--font-size--md);
98
+ font-weight: var(--sc-kit--font-weight--medium);
99
+ color: var(--sc-kit--color--text--primary);
100
+ overflow: hidden;
101
+ text-overflow: ellipsis;
102
+ white-space: nowrap;
103
+ }
104
+ .file-row__sub {
105
+ font-size: var(--sc-kit--font-size--sm);
106
+ color: var(--sc-kit--color--text--muted);
107
+ margin-top: 2px;
108
+ }
109
+ .file-row__sub--error {
110
+ color: var(--sc-kit--color--danger);
111
+ }
112
+ .file-row__remove {
113
+ --sc-kit--icon--color: var(--sc-kit--color--text--muted);
114
+ flex-shrink: 0;
115
+ width: var(--sc-kit--space--6);
116
+ height: var(--sc-kit--space--6);
117
+ border-radius: var(--sc-kit--radius--sm);
118
+ display: inline-flex;
119
+ align-items: center;
120
+ justify-content: center;
121
+ cursor: pointer;
122
+ background: transparent;
123
+ border: none;
124
+ grid-row: 1;
125
+ transition: background-color var(--sc-kit--duration--base) var(--sc-kit--ease--default), color var(--sc-kit--duration--base) var(--sc-kit--ease--default);
126
+ }
127
+ .file-row__remove:hover {
128
+ background: var(--sc-kit--color--bg--hover);
129
+ --sc-kit--icon--color: var(--sc-kit--color--text--primary);
130
+ }
131
+ .file-row__bar {
132
+ height: 4px;
133
+ background: var(--_fr--bar-background);
134
+ border-radius: var(--sc-kit--radius--pill);
135
+ overflow: hidden;
136
+ grid-row: 2;
137
+ grid-column: 1/-1;
138
+ }
139
+ .file-row__bar > span {
140
+ display: block;
141
+ height: 100%;
142
+ background: var(--_fr--bar-fill);
143
+ border-radius: var(--sc-kit--radius--pill);
144
+ transition: width var(--sc-kit--duration--base) var(--sc-kit--ease--default);
145
+ }</style>
@@ -0,0 +1,31 @@
1
+ import type { UploadingFile } from '../../core/files';
2
+ type Props = {
3
+ /** Canonical file shape produced by `UploadMediaStore` (or via `toUploadingFile()` for ad-hoc usage). */
4
+ file: UploadingFile;
5
+ /** Show the trailing × remove button. Auto-hidden while uploading. @default true */
6
+ removable?: boolean;
7
+ on?: {
8
+ remove?: () => void;
9
+ };
10
+ };
11
+ /**
12
+ * Compact row representation of an `UploadingFile`. Three states driven by `file.status`:
13
+ * - **`queued` / `uploading`** — filename + percent subtitle + thin progress bar.
14
+ * - **`success`** — filename + size + optional × remove button.
15
+ * - **`error`** — filename + red error subtitle + optional × remove button.
16
+ *
17
+ * Use directly with `UploadMediaStore.files`, or wrap a plain `File` via `toUploadingFile()` from
18
+ * `@streamscloud/kit/core/files` for ad-hoc lists.
19
+ *
20
+ * ### CSS Custom Properties
21
+ * | Property | Description | Default |
22
+ * |---|---|---|
23
+ * | `--sc-kit--file-row--background` | Row background | `var(--sc-kit--color--bg--field-alt)` |
24
+ * | `--sc-kit--file-row--border-color` | Row border | `var(--sc-kit--color--border)` |
25
+ * | `--sc-kit--file-row--border-radius` | Row radius | `var(--sc-kit--radius--md)` |
26
+ * | `--sc-kit--file-row--bar--background` | Progress-bar track | `var(--sc-kit--color--bg--active)` |
27
+ * | `--sc-kit--file-row--bar--fill` | Progress-bar fill | `var(--sc-kit--color--accent)` |
28
+ */
29
+ declare const Cmp: import("svelte").Component<Props, {}, "">;
30
+ type Cmp = ReturnType<typeof Cmp>;
31
+ export default Cmp;
@@ -0,0 +1,141 @@
1
+ <script lang="ts">import { StringHelper } from '../../core/utils';
2
+ import { fileTypeColor, fileTypeFromName } from './file-type-colors';
3
+ const { file } = $props();
4
+ const ext = $derived(fileTypeFromName(file.file.name).toUpperCase());
5
+ const accent = $derived(fileTypeColor(fileTypeFromName(file.file.name)));
6
+ const percent = $derived(Math.max(0, Math.min(100, Math.round(file.progress * 100))));
7
+ const sizeText = $derived(file.status === 'success'
8
+ ? StringHelper.toFileSizeString(file.file.size)
9
+ : `${StringHelper.toFileSizeString(file.file.size * file.progress)} of ${StringHelper.toFileSizeString(file.file.size)}`);
10
+ const isError = $derived(file.status === 'error');
11
+ </script>
12
+
13
+ <div class="file-upload-progress" class:file-upload-progress--error={isError} style:--_fup--accent-default={accent}>
14
+ <span class="file-upload-progress__stamp" aria-hidden="true">
15
+ <span class="file-upload-progress__ext">{ext}</span>
16
+ </span>
17
+ <div class="file-upload-progress__body">
18
+ <div class="file-upload-progress__head">
19
+ <div class="file-upload-progress__name">{file.file.name}</div>
20
+ <div class="file-upload-progress__pct">{percent}%</div>
21
+ </div>
22
+ <div class="file-upload-progress__bar" aria-hidden="true">
23
+ <span style:width="{percent}%"></span>
24
+ </div>
25
+ {#if isError}
26
+ <div class="file-upload-progress__sub file-upload-progress__sub--error">{file.error ?? ''}</div>
27
+ {:else}
28
+ <div class="file-upload-progress__sub">{sizeText}</div>
29
+ {/if}
30
+ </div>
31
+ </div>
32
+
33
+ <!--
34
+ @component
35
+ Rich progress card for a single file currently being uploaded. Shows a colored extension stamp
36
+ (auto-colored from the filename's extension via the `file-type-colors` palette), filename,
37
+ percent, thick progress bar, and a `'X of Y'` size sub-line.
38
+
39
+ Override the auto-derived accent via the `--sc-kit--file-upload-progress--accent` CSS variable
40
+ on the host (e.g. to force a brand color regardless of extension).
41
+
42
+ ### CSS Custom Properties
43
+ | Property | Description | Default |
44
+ |---|---|---|
45
+ | `--sc-kit--file-upload-progress--accent` | Stamp + bar-fill color (override auto-derived) | per file extension |
46
+ | `--sc-kit--file-upload-progress--background` | Card background | `var(--sc-kit--color--bg--panel)` |
47
+ | `--sc-kit--file-upload-progress--border-color` | Card border | `var(--sc-kit--color--border)` |
48
+ | `--sc-kit--file-upload-progress--border-radius` | Card radius | `var(--sc-kit--radius--md)` |
49
+ | `--sc-kit--file-upload-progress--bar--background` | Progress-bar track | `var(--sc-kit--color--bg--active)` |
50
+ -->
51
+
52
+ <style>.file-upload-progress {
53
+ --_fup--background: var(--sc-kit--file-upload-progress--background, var(--sc-kit--color--bg--panel));
54
+ --_fup--border-color: var(--sc-kit--file-upload-progress--border-color, var(--sc-kit--color--border));
55
+ --_fup--border-radius: var(--sc-kit--file-upload-progress--border-radius, var(--sc-kit--radius--md));
56
+ --_fup--bar-background: var(--sc-kit--file-upload-progress--bar--background, var(--sc-kit--color--bg--active));
57
+ --_fup--accent: var(--sc-kit--file-upload-progress--accent, var(--_fup--accent-default, var(--sc-kit--color--accent)));
58
+ display: flex;
59
+ align-items: flex-start;
60
+ gap: var(--sc-kit--space--3);
61
+ padding: var(--sc-kit--space--3) var(--sc-kit--space--4);
62
+ background: var(--_fup--background);
63
+ border: 1px solid var(--_fup--border-color);
64
+ border-radius: var(--_fup--border-radius);
65
+ }
66
+ .file-upload-progress--error {
67
+ border-color: var(--sc-kit--color--danger);
68
+ }
69
+ .file-upload-progress__stamp {
70
+ flex-shrink: 0;
71
+ width: 2.25rem;
72
+ height: 2.75rem;
73
+ border-radius: var(--sc-kit--radius--md);
74
+ display: flex;
75
+ align-items: flex-end;
76
+ justify-content: center;
77
+ padding-bottom: 0.25rem;
78
+ background: var(--_fup--accent);
79
+ color: #fff;
80
+ font-size: 0.5313rem;
81
+ font-weight: var(--sc-kit--font-weight--bold);
82
+ letter-spacing: var(--sc-kit--letter-spacing--wide);
83
+ position: relative;
84
+ }
85
+ .file-upload-progress__stamp::before {
86
+ content: "";
87
+ position: absolute;
88
+ top: 0;
89
+ right: 0;
90
+ width: 0.75rem;
91
+ height: 0.75rem;
92
+ background: rgba(255, 255, 255, 0.35);
93
+ clip-path: polygon(100% 0, 0 0, 100% 100%);
94
+ border-top-right-radius: var(--sc-kit--radius--md);
95
+ }
96
+ .file-upload-progress__body {
97
+ flex: 1;
98
+ min-width: 0;
99
+ }
100
+ .file-upload-progress__head {
101
+ display: flex;
102
+ align-items: center;
103
+ gap: var(--sc-kit--space--2);
104
+ }
105
+ .file-upload-progress__name {
106
+ flex: 1;
107
+ font-size: var(--sc-kit--font-size--md);
108
+ font-weight: var(--sc-kit--font-weight--semibold);
109
+ color: var(--sc-kit--color--text--primary);
110
+ overflow: hidden;
111
+ text-overflow: ellipsis;
112
+ white-space: nowrap;
113
+ }
114
+ .file-upload-progress__pct {
115
+ font-family: var(--sc-kit--font--mono);
116
+ font-size: var(--sc-kit--font-size--sm);
117
+ color: var(--sc-kit--color--text--muted);
118
+ font-variant-numeric: tabular-nums;
119
+ }
120
+ .file-upload-progress__bar {
121
+ height: 0.375rem;
122
+ background: var(--_fup--bar-background);
123
+ border-radius: var(--sc-kit--radius--pill);
124
+ overflow: hidden;
125
+ margin-top: var(--sc-kit--space--2);
126
+ }
127
+ .file-upload-progress__bar > span {
128
+ display: block;
129
+ height: 100%;
130
+ background: var(--_fup--accent);
131
+ border-radius: var(--sc-kit--radius--pill);
132
+ transition: width var(--sc-kit--duration--base) var(--sc-kit--ease--default);
133
+ }
134
+ .file-upload-progress__sub {
135
+ font-size: var(--sc-kit--font-size--sm);
136
+ color: var(--sc-kit--color--text--muted);
137
+ margin-top: var(--sc-kit--space--1);
138
+ }
139
+ .file-upload-progress__sub--error {
140
+ color: var(--sc-kit--color--danger);
141
+ }</style>
@@ -0,0 +1,25 @@
1
+ import type { UploadingFile } from '../../core/files';
2
+ type Props = {
3
+ /** Canonical file shape produced by `UploadMediaStore` (or via `toUploadingFile()` for ad-hoc usage). */
4
+ file: UploadingFile;
5
+ };
6
+ /**
7
+ * Rich progress card for a single file currently being uploaded. Shows a colored extension stamp
8
+ * (auto-colored from the filename's extension via the `file-type-colors` palette), filename,
9
+ * percent, thick progress bar, and a `'X of Y'` size sub-line.
10
+ *
11
+ * Override the auto-derived accent via the `--sc-kit--file-upload-progress--accent` CSS variable
12
+ * on the host (e.g. to force a brand color regardless of extension).
13
+ *
14
+ * ### CSS Custom Properties
15
+ * | Property | Description | Default |
16
+ * |---|---|---|
17
+ * | `--sc-kit--file-upload-progress--accent` | Stamp + bar-fill color (override auto-derived) | per file extension |
18
+ * | `--sc-kit--file-upload-progress--background` | Card background | `var(--sc-kit--color--bg--panel)` |
19
+ * | `--sc-kit--file-upload-progress--border-color` | Card border | `var(--sc-kit--color--border)` |
20
+ * | `--sc-kit--file-upload-progress--border-radius` | Card radius | `var(--sc-kit--radius--md)` |
21
+ * | `--sc-kit--file-upload-progress--bar--background` | Progress-bar track | `var(--sc-kit--color--bg--active)` |
22
+ */
23
+ declare const Cmp: import("svelte").Component<Props, {}, "">;
24
+ type Cmp = ReturnType<typeof Cmp>;
25
+ export default Cmp;
@@ -0,0 +1,210 @@
1
+ <script lang="ts">import { FileValidator } from '../../core/files';
2
+ import { Icon } from '../icon';
3
+ import IconArrowUpload from '@fluentui/svg-icons/icons/arrow_upload_24_regular.svg?raw';
4
+ const { multiple = false, validationRules, disabled = false, title = '', description = '', on } = $props();
5
+ // Auto-derive the native picker `accept` from any Mime-style rule that exposes its accept
6
+ // string. Single source of truth — consumer writes the MIME pattern once on the rule.
7
+ const accept = $derived(validationRules
8
+ ?.map((r) => r.accept)
9
+ .filter((a) => !!a)
10
+ .join(',') ?? '');
11
+ let inputRef = $state.raw(undefined);
12
+ let dragOver = $state(false);
13
+ // Snapshot of MIME types captured at dragenter — DataTransfer.files is empty during drag
14
+ // (browser security), but DataTransfer.items exposes `{kind, type}` per item so we can
15
+ // soft-validate against `accept` before drop and tint the zone red on mismatch.
16
+ let dragItems = $state.raw([]);
17
+ // Soft-validation during drag: we only have MIME types (not filenames), so accept-tokens
18
+ // starting with `.` (extensions) can't be checked here — defer them to drop. We also defer
19
+ // when item.type is empty (some sources don't set MIME).
20
+ const dragInvalid = $derived.by(() => {
21
+ if (!dragOver || !accept || dragItems.length === 0) {
22
+ return false;
23
+ }
24
+ const mimeTokens = accept
25
+ .split(',')
26
+ .map((s) => s.trim().toLowerCase())
27
+ .filter((t) => t && !t.startsWith('.'));
28
+ if (mimeTokens.length === 0) {
29
+ return false;
30
+ }
31
+ return dragItems.some((item) => {
32
+ if (item.kind !== 'file' || !item.type) {
33
+ return false;
34
+ }
35
+ const fileType = item.type.toLowerCase();
36
+ return !mimeTokens.some((t) => (t.endsWith('/*') ? fileType.startsWith(t.slice(0, -1)) : fileType === t));
37
+ });
38
+ });
39
+ const ingest = async (incoming) => {
40
+ let arr = Array.from(incoming);
41
+ // multiple=false → silently take only the first file (no rejection event).
42
+ if (!multiple && arr.length > 1) {
43
+ arr = [arr[0]];
44
+ }
45
+ const results = validationRules && validationRules.length > 0
46
+ ? await FileValidator.validateMany(arr, validationRules)
47
+ : arr.map((file) => ({ file, isValid: true, errors: [] }));
48
+ on?.select?.(results);
49
+ };
50
+ const handleInput = (e) => {
51
+ const t = e.target;
52
+ if (!t.files) {
53
+ return;
54
+ }
55
+ ingest(t.files);
56
+ t.value = '';
57
+ };
58
+ const handleDragEnter = (e) => {
59
+ e.preventDefault();
60
+ if (disabled) {
61
+ return;
62
+ }
63
+ dragOver = true;
64
+ if (e.dataTransfer?.items && e.dataTransfer.items.length > 0) {
65
+ dragItems = Array.from(e.dataTransfer.items).map((i) => ({ kind: i.kind, type: i.type }));
66
+ }
67
+ };
68
+ const handleDragLeave = (e) => {
69
+ e.preventDefault();
70
+ dragOver = false;
71
+ // Keep `dragItems` until drop — clearing here can race with browser-fired phantom
72
+ // dragleave/dragenter sequences and cause the invalid-state class to flicker off.
73
+ };
74
+ const handleDragOver = (e) => {
75
+ e.preventDefault();
76
+ if (e.dataTransfer) {
77
+ e.dataTransfer.dropEffect = 'copy';
78
+ }
79
+ };
80
+ const handleDrop = (e) => {
81
+ e.preventDefault();
82
+ dragOver = false;
83
+ dragItems = [];
84
+ if (disabled || !e.dataTransfer?.files) {
85
+ return;
86
+ }
87
+ ingest(e.dataTransfer.files);
88
+ };
89
+ </script>
90
+
91
+ <div class="file-uploader" class:file-uploader--disabled={disabled}>
92
+ <button
93
+ type="button"
94
+ class="file-uploader__zone"
95
+ class:file-uploader__zone--drag={dragOver && !dragInvalid}
96
+ class:file-uploader__zone--drag-invalid={dragOver && dragInvalid}
97
+ disabled={disabled}
98
+ onclick={() => inputRef?.click()}
99
+ ondragenter={handleDragEnter}
100
+ ondragleave={handleDragLeave}
101
+ ondragover={handleDragOver}
102
+ ondrop={handleDrop}>
103
+ <span class="file-uploader__icon" aria-hidden="true">
104
+ <Icon src={IconArrowUpload} />
105
+ </span>
106
+ {#if title}<span class="file-uploader__title">{title}</span>{/if}
107
+ {#if description}<span class="file-uploader__desc">{description}</span>{/if}
108
+ <input bind:this={inputRef} class="file-uploader__input" type="file" multiple={multiple} accept={accept} disabled={disabled} onchange={handleInput} />
109
+ </button>
110
+ </div>
111
+
112
+ <!--
113
+ @component
114
+ Drag-and-drop or click-to-select file zone. **Pure selector** — picks files, runs optional
115
+ `validationRules`, and emits `on.select(FileValidationResult[])`. The consumer reads
116
+ `isValid` / `errors` per result and decides what to do (toast, queue into an
117
+ `UploadMediaStore`, etc.). The cmp renders neither error UI nor progress visuals — compose
118
+ those externally next to the dropzone (e.g. `<FileRow>` / `<FileUploadProgress>` driven by
119
+ `store.files`).
120
+
121
+ The native picker filter + drag-over visual hint are derived from any `FileRules.Mime(...)`
122
+ rule's `accept` — pass it once via the rule, the cmp wires both. During drag-over, files
123
+ whose MIME does not match paint the zone with the danger color before drop (soft-validation
124
+ via `DataTransfer.items` — extension-only accept tokens defer to drop).
125
+
126
+ ### CSS Custom Properties
127
+ | Property | Description | Default |
128
+ |---|---|---|
129
+ | `--sc-kit--file-uploader--background` | Drop-zone background | `var(--sc-kit--color--bg--field-alt)` |
130
+ | `--sc-kit--file-uploader--background--drag` | Background during valid drag-over / hover | `var(--sc-kit--color--accent--softer)` |
131
+ | `--sc-kit--file-uploader--background--drag-invalid` | Background when a dragged file's MIME does not match the Mime rule | `var(--sc-kit--color--danger--soft)` |
132
+ | `--sc-kit--file-uploader--border-color` | Dashed border color (idle) | `var(--sc-kit--color--border--strong)` |
133
+ | `--sc-kit--file-uploader--border-color--drag` | Dashed border color during valid drag-over / hover | `var(--sc-kit--color--accent)` |
134
+ | `--sc-kit--file-uploader--border-color--drag-invalid` | Dashed border color when dragged file's MIME does not match the Mime rule | `var(--sc-kit--color--danger)` |
135
+ | `--sc-kit--file-uploader--border-radius` | Drop-zone radius | `var(--sc-kit--radius--lg)` |
136
+ | `--sc-kit--file-uploader--padding` | Inner padding | `var(--sc-kit--space--6)` |
137
+ | `--sc-kit--file-uploader--icon--color` | Icon color | `var(--sc-kit--color--text--muted)` |
138
+ | `--sc-kit--file-uploader--title--color` | Title color | `var(--sc-kit--color--text--primary)` |
139
+ | `--sc-kit--file-uploader--description--color` | Description color | `var(--sc-kit--color--text--muted)` |
140
+ -->
141
+
142
+ <style>.file-uploader {
143
+ display: block;
144
+ width: 100%;
145
+ }
146
+ .file-uploader__zone {
147
+ --_fu--background: var(--sc-kit--file-uploader--background, var(--sc-kit--color--bg--field-alt));
148
+ --_fu--background-drag: var(--sc-kit--file-uploader--background--drag, var(--sc-kit--color--accent--softer));
149
+ --_fu--background-drag-invalid: var(--sc-kit--file-uploader--background--drag-invalid, var(--sc-kit--color--danger--soft));
150
+ --_fu--border-color: var(--sc-kit--file-uploader--border-color, var(--sc-kit--color--border--strong));
151
+ --_fu--border-color-drag: var(--sc-kit--file-uploader--border-color--drag, var(--sc-kit--color--accent));
152
+ --_fu--border-color-drag-invalid: var(--sc-kit--file-uploader--border-color--drag-invalid, var(--sc-kit--color--danger));
153
+ --_fu--border-radius: var(--sc-kit--file-uploader--border-radius, var(--sc-kit--radius--lg));
154
+ --_fu--padding: var(--sc-kit--file-uploader--padding, var(--sc-kit--space--6));
155
+ display: flex;
156
+ flex-direction: column;
157
+ align-items: center;
158
+ justify-content: center;
159
+ gap: var(--sc-kit--space--1);
160
+ text-align: center;
161
+ width: 100%;
162
+ padding: var(--_fu--padding);
163
+ background: var(--_fu--background);
164
+ border: 1.5px dashed var(--_fu--border-color);
165
+ border-radius: var(--_fu--border-radius);
166
+ color: var(--sc-kit--color--text--primary);
167
+ font-family: inherit;
168
+ cursor: pointer;
169
+ transition: background-color var(--sc-kit--duration--base) var(--sc-kit--ease--default), border-color var(--sc-kit--duration--base) var(--sc-kit--ease--default);
170
+ }
171
+ .file-uploader__zone:hover:not(:disabled), .file-uploader__zone--drag {
172
+ background: var(--_fu--background-drag);
173
+ border-color: var(--_fu--border-color-drag);
174
+ }
175
+ .file-uploader__zone--drag-invalid {
176
+ background: var(--_fu--background-drag-invalid);
177
+ border-color: var(--_fu--border-color-drag-invalid);
178
+ cursor: not-allowed;
179
+ }
180
+ .file-uploader__zone:disabled {
181
+ cursor: default;
182
+ opacity: 0.6;
183
+ }
184
+ .file-uploader__zone:focus-visible {
185
+ outline: 2px solid var(--sc-kit--color--border--focus);
186
+ outline-offset: 2px;
187
+ }
188
+ .file-uploader__icon, .file-uploader__title, .file-uploader__desc {
189
+ pointer-events: none;
190
+ }
191
+ .file-uploader__icon {
192
+ --sc-kit--icon--color: var(--sc-kit--file-uploader--icon--color, var(--sc-kit--color--text--muted));
193
+ --sc-kit--icon--size: var(--sc-kit--font-size--2xl);
194
+ display: inline-flex;
195
+ align-items: center;
196
+ justify-content: center;
197
+ margin-bottom: var(--sc-kit--space--2);
198
+ }
199
+ .file-uploader__title {
200
+ font-size: var(--sc-kit--font-size--md);
201
+ font-weight: var(--sc-kit--font-weight--medium);
202
+ color: var(--sc-kit--file-uploader--title--color, var(--sc-kit--color--text--primary));
203
+ }
204
+ .file-uploader__desc {
205
+ font-size: var(--sc-kit--font-size--sm);
206
+ color: var(--sc-kit--file-uploader--description--color, var(--sc-kit--color--text--muted));
207
+ }
208
+ .file-uploader__input {
209
+ display: none;
210
+ }</style>
@@ -0,0 +1,56 @@
1
+ import type { FileValidationResult, FileValidationRule } from '../../core/files';
2
+ type Props = {
3
+ /** Allow multi-file selection. @default false */
4
+ multiple?: boolean;
5
+ /**
6
+ * Validation rules applied to each picked / dropped file. The native picker filter and
7
+ * drag-over visual hint are auto-derived from any `FileRules.Mime(...)` rule's `accept`
8
+ * — pass it once via the rule, the cmp wires the rest.
9
+ */
10
+ validationRules?: FileValidationRule[];
11
+ disabled?: boolean;
12
+ /** Headline shown inside the drop zone. */
13
+ title?: string;
14
+ /** Supporting text shown below the headline. */
15
+ description?: string;
16
+ on?: {
17
+ /**
18
+ * Fires after picker / drop with one `FileValidationResult` per file. Consumer reads
19
+ * `isValid` / `errors` per result and decides what to do (toast errors, queue valid
20
+ * files into an `UploadMediaStore`, etc.). The cmp does NOT render any error UI or
21
+ * progress visuals — those are composed externally next to the dropzone.
22
+ */
23
+ select?: (results: FileValidationResult[]) => void;
24
+ };
25
+ };
26
+ /**
27
+ * Drag-and-drop or click-to-select file zone. **Pure selector** — picks files, runs optional
28
+ * `validationRules`, and emits `on.select(FileValidationResult[])`. The consumer reads
29
+ * `isValid` / `errors` per result and decides what to do (toast, queue into an
30
+ * `UploadMediaStore`, etc.). The cmp renders neither error UI nor progress visuals — compose
31
+ * those externally next to the dropzone (e.g. `<FileRow>` / `<FileUploadProgress>` driven by
32
+ * `store.files`).
33
+ *
34
+ * The native picker filter + drag-over visual hint are derived from any `FileRules.Mime(...)`
35
+ * rule's `accept` — pass it once via the rule, the cmp wires both. During drag-over, files
36
+ * whose MIME does not match paint the zone with the danger color before drop (soft-validation
37
+ * via `DataTransfer.items` — extension-only accept tokens defer to drop).
38
+ *
39
+ * ### CSS Custom Properties
40
+ * | Property | Description | Default |
41
+ * |---|---|---|
42
+ * | `--sc-kit--file-uploader--background` | Drop-zone background | `var(--sc-kit--color--bg--field-alt)` |
43
+ * | `--sc-kit--file-uploader--background--drag` | Background during valid drag-over / hover | `var(--sc-kit--color--accent--softer)` |
44
+ * | `--sc-kit--file-uploader--background--drag-invalid` | Background when a dragged file's MIME does not match the Mime rule | `var(--sc-kit--color--danger--soft)` |
45
+ * | `--sc-kit--file-uploader--border-color` | Dashed border color (idle) | `var(--sc-kit--color--border--strong)` |
46
+ * | `--sc-kit--file-uploader--border-color--drag` | Dashed border color during valid drag-over / hover | `var(--sc-kit--color--accent)` |
47
+ * | `--sc-kit--file-uploader--border-color--drag-invalid` | Dashed border color when dragged file's MIME does not match the Mime rule | `var(--sc-kit--color--danger)` |
48
+ * | `--sc-kit--file-uploader--border-radius` | Drop-zone radius | `var(--sc-kit--radius--lg)` |
49
+ * | `--sc-kit--file-uploader--padding` | Inner padding | `var(--sc-kit--space--6)` |
50
+ * | `--sc-kit--file-uploader--icon--color` | Icon color | `var(--sc-kit--color--text--muted)` |
51
+ * | `--sc-kit--file-uploader--title--color` | Title color | `var(--sc-kit--color--text--primary)` |
52
+ * | `--sc-kit--file-uploader--description--color` | Description color | `var(--sc-kit--color--text--muted)` |
53
+ */
54
+ declare const Cmp: import("svelte").Component<Props, {}, "">;
55
+ type Cmp = ReturnType<typeof Cmp>;
56
+ export default Cmp;
@@ -0,0 +1,3 @@
1
+ export declare const fileTypeColors: Record<string, string>;
2
+ export declare const fileTypeFromName: (name: string) => string;
3
+ export declare const fileTypeColor: (type: string) => string;
@@ -0,0 +1,38 @@
1
+ // Stamp colors for file-type extensions (used by FileUploadProgress). Distinct from the
2
+ // project-wide semantic palette — these are per-extension brand-ish tints that map filename
3
+ // extensions to a stable color. Override per-instance via the `--sc-kit--file-upload-progress--accent`
4
+ // CSS variable.
5
+ export const fileTypeColors = {
6
+ pdf: '#e15554',
7
+ doc: '#144ab0',
8
+ docx: '#144ab0',
9
+ xls: '#10b981',
10
+ xlsx: '#10b981',
11
+ csv: '#10b981',
12
+ ppt: '#e0772e',
13
+ pptx: '#e0772e',
14
+ zip: '#f5a623',
15
+ rar: '#f5a623',
16
+ fig: '#1abc9c',
17
+ sketch: '#fdb022',
18
+ png: '#8b5cf6',
19
+ jpg: '#8b5cf6',
20
+ jpeg: '#8b5cf6',
21
+ gif: '#8b5cf6',
22
+ svg: '#7c3aed',
23
+ mp4: '#ec4899',
24
+ mov: '#ec4899',
25
+ mp3: '#f97066',
26
+ wav: '#f97066',
27
+ txt: '#6b7280',
28
+ md: '#6b7280',
29
+ json: '#7c3aed',
30
+ html: '#e0772e',
31
+ js: '#eab308',
32
+ ts: '#3178c6'
33
+ };
34
+ export const fileTypeFromName = (name) => {
35
+ const dot = name.lastIndexOf('.');
36
+ return dot >= 0 ? name.slice(dot + 1).toLowerCase() : '';
37
+ };
38
+ export const fileTypeColor = (type) => fileTypeColors[type.toLowerCase()] ?? '#6b7280';
@@ -0,0 +1,4 @@
1
+ export declare class FileUploaderLocalization {
2
+ get uploadingHint(): string;
3
+ removeAria(name: string): string;
4
+ }
@@ -0,0 +1,19 @@
1
+ import { AppLocale } from '../../core/locale';
2
+ const loc = {
3
+ uploadingHint: {
4
+ en: 'uploading…',
5
+ no: 'laster opp…'
6
+ },
7
+ removeAria: {
8
+ en: 'Remove {name}',
9
+ no: 'Fjern {name}'
10
+ }
11
+ };
12
+ export class FileUploaderLocalization {
13
+ get uploadingHint() {
14
+ return loc.uploadingHint[AppLocale.current];
15
+ }
16
+ removeAria(name) {
17
+ return loc.removeAria[AppLocale.current].replace('{name}', name);
18
+ }
19
+ }