@dvcol/neo-svelte 1.1.2 → 1.2.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 (466) hide show
  1. package/CHANGELOG.md +90 -0
  2. package/README.md +15 -7
  3. package/dist/badge/neo-badge.model.d.ts +1 -1
  4. package/dist/buttons/NeoArrowButton.svelte +4 -4
  5. package/dist/buttons/NeoButton.svelte +110 -24
  6. package/dist/buttons/NeoButtonGroup.svelte +18 -9
  7. package/dist/buttons/NeoButtonGroup.svelte.d.ts +1 -1
  8. package/dist/buttons/NeoButtonRow.svelte +137 -0
  9. package/dist/buttons/NeoButtonRow.svelte.d.ts +4 -0
  10. package/dist/buttons/NeoCancelButton.svelte +2 -2
  11. package/dist/buttons/NeoCheckboxButton.svelte +6 -4
  12. package/dist/buttons/NeoCheckboxButton.svelte.d.ts +1 -1
  13. package/dist/buttons/NeoCloseButton.svelte +37 -6
  14. package/dist/buttons/NeoCloseButton.svelte.d.ts +2 -2
  15. package/dist/buttons/NeoRadioButton.svelte +6 -4
  16. package/dist/buttons/NeoSwitchButton.svelte +5 -3
  17. package/dist/buttons/index.d.ts +2 -0
  18. package/dist/buttons/index.js +1 -0
  19. package/dist/buttons/neo-arrow-button.model.d.ts +3 -3
  20. package/dist/buttons/neo-button-group.model.d.ts +12 -3
  21. package/dist/buttons/neo-button-row.model.d.ts +33 -0
  22. package/dist/buttons/neo-button-row.model.js +1 -0
  23. package/dist/buttons/neo-button.model.d.ts +11 -4
  24. package/dist/buttons/neo-close-button.model.d.ts +13 -0
  25. package/dist/buttons/neo-close-button.model.js +5 -0
  26. package/dist/buttons/neo-icon-button.model.d.ts +2 -2
  27. package/dist/cards/NeoCard.svelte +22 -20
  28. package/dist/cards/neo-card.model.d.ts +3 -2
  29. package/dist/collapse/NeoAccordion.svelte +3 -1
  30. package/dist/collapse/NeoCollapse.svelte +2 -2
  31. package/dist/collapse/NeoCollapse.svelte.d.ts +3 -1
  32. package/dist/collapse/neo-accordion.model.d.ts +2 -1
  33. package/dist/containers/NeoTransitionContainer.svelte +10 -0
  34. package/dist/containers/neo-transition-container.model.d.ts +9 -0
  35. package/dist/cursor/NeoCursor.svelte.d.ts +1 -1
  36. package/dist/divider/NeoDivider.svelte +4 -2
  37. package/dist/divider/neo-divider.model.d.ts +2 -1
  38. package/dist/floating/common/NeoConfirm.svelte +5 -5
  39. package/dist/floating/common/NeoConfirm.svelte.d.ts +1 -1
  40. package/dist/floating/common/NeoFloatingStepper.svelte +1 -1
  41. package/dist/floating/common/NeoFloatingStepper.svelte.d.ts +1 -1
  42. package/dist/floating/common/NeoHandle.svelte +2 -1
  43. package/dist/floating/common/neo-confirm.model.d.ts +2 -1
  44. package/dist/floating/common/neo-floating-stepper.model.d.ts +1 -1
  45. package/dist/floating/common/neo-placement.model.d.ts +56 -4
  46. package/dist/floating/common/neo-placement.model.js +22 -0
  47. package/dist/floating/dialog/NeoDialog.svelte +23 -21
  48. package/dist/floating/dialog/NeoDialog.svelte.d.ts +1 -1
  49. package/dist/floating/dialog/NeoDialogConfirm.svelte.d.ts +1 -1
  50. package/dist/floating/dialog/NeoDialogStepper.svelte.d.ts +1 -1
  51. package/dist/floating/dialog/neo-dialog-confirm.model.d.ts +5 -5
  52. package/dist/floating/dialog/neo-dialog-stepper.model.d.ts +4 -4
  53. package/dist/floating/dialog/neo-dialog.model.d.ts +2 -1
  54. package/dist/floating/dialog/use-movable.svelte.js +2 -1
  55. package/dist/floating/drawer/NeoDrawer.svelte +9 -9
  56. package/dist/floating/drawer/NeoDrawer.svelte.d.ts +2 -2
  57. package/dist/floating/drawer/NeoDrawerConfirm.svelte +2 -4
  58. package/dist/floating/drawer/NeoDrawerConfirm.svelte.d.ts +2 -2
  59. package/dist/floating/drawer/NeoDrawerStepper.svelte +2 -4
  60. package/dist/floating/drawer/NeoDrawerStepper.svelte.d.ts +2 -2
  61. package/dist/floating/drawer/neo-drawer.model.d.ts +6 -0
  62. package/dist/floating/drawer/neo-drawer.model.js +1 -0
  63. package/dist/floating/index.d.ts +1 -0
  64. package/dist/floating/index.js +1 -0
  65. package/dist/floating/menu/NeoMenu.svelte +55 -17
  66. package/dist/floating/menu/NeoMenu.svelte.d.ts +1 -1
  67. package/dist/floating/menu/NeoMenuList.svelte +60 -67
  68. package/dist/floating/menu/NeoMenuListItem.svelte +157 -24
  69. package/dist/floating/menu/NeoMenuListItem.svelte.d.ts +1 -0
  70. package/dist/floating/menu/index.d.ts +1 -0
  71. package/dist/floating/menu/neo-menu-list-item.model.d.ts +48 -11
  72. package/dist/floating/menu/neo-menu-list.model.d.ts +24 -4
  73. package/dist/floating/menu/neo-menu.model.d.ts +3 -3
  74. package/dist/floating/notification/NeoNotificationItem.svelte +459 -0
  75. package/dist/floating/notification/NeoNotificationItem.svelte.d.ts +4 -0
  76. package/dist/floating/notification/NeoNotificationProvider.svelte +49 -0
  77. package/dist/floating/notification/NeoNotificationProvider.svelte.d.ts +4 -0
  78. package/dist/floating/notification/NeoNotificationStack.svelte +345 -0
  79. package/dist/floating/notification/NeoNotificationStack.svelte.d.ts +16 -0
  80. package/dist/floating/notification/NeoSimpleNotification.svelte +304 -0
  81. package/dist/floating/notification/NeoSimpleNotification.svelte.d.ts +4 -0
  82. package/dist/floating/notification/index.d.ts +8 -0
  83. package/dist/floating/notification/index.js +7 -0
  84. package/dist/floating/notification/neo-notification-item.model.d.ts +54 -0
  85. package/dist/floating/notification/neo-notification-item.model.js +1 -0
  86. package/dist/floating/notification/neo-notification-provider.model.d.ts +78 -0
  87. package/dist/floating/notification/neo-notification-provider.model.js +18 -0
  88. package/dist/floating/notification/neo-notification-stack.model.d.ts +48 -0
  89. package/dist/floating/notification/neo-notification-stack.model.js +1 -0
  90. package/dist/floating/notification/neo-notification.model.d.ts +271 -0
  91. package/dist/floating/notification/neo-notification.model.js +70 -0
  92. package/dist/floating/notification/neo-simple-notification.model.d.ts +14 -0
  93. package/dist/floating/notification/neo-simple-notification.model.js +1 -0
  94. package/dist/floating/portal/NeoPortal.svelte +11 -8
  95. package/dist/floating/portal/NeoPortalTarget.svelte +7 -0
  96. package/dist/floating/portal/NeoPortalTarget.svelte.d.ts +7 -0
  97. package/dist/floating/portal/neo-portal-context.svelte.d.ts +1 -1
  98. package/dist/floating/portal/neo-portal.model.d.ts +4 -5
  99. package/dist/floating/tooltips/NeoPopConfirm.svelte +2 -0
  100. package/dist/floating/tooltips/NeoPopConfirm.svelte.d.ts +1 -1
  101. package/dist/floating/tooltips/NeoPopSelect.svelte +5 -3
  102. package/dist/floating/tooltips/NeoPopSelect.svelte.d.ts +1 -1
  103. package/dist/floating/tooltips/NeoPopStepper.svelte +2 -0
  104. package/dist/floating/tooltips/NeoPopStepper.svelte.d.ts +1 -1
  105. package/dist/floating/tooltips/NeoTooltip.svelte +43 -23
  106. package/dist/floating/tooltips/NeoTooltip.svelte.d.ts +5 -1
  107. package/dist/floating/tooltips/neo-pop-confirm.model.d.ts +1 -1
  108. package/dist/floating/tooltips/neo-pop-select.model.d.ts +1 -3
  109. package/dist/floating/tooltips/neo-pop-stepper.model.d.ts +2 -2
  110. package/dist/floating/tooltips/neo-tooltip.model.d.ts +7 -2
  111. package/dist/form/NeoForm.svelte +1 -1
  112. package/dist/form/NeoForm.svelte.d.ts +3 -1
  113. package/dist/form/neo-form-context.svelte.d.ts +2 -0
  114. package/dist/icons/{IconAccount.svelte → NeoIconAccount.svelte} +2 -2
  115. package/dist/icons/NeoIconAccount.svelte.d.ts +4 -0
  116. package/dist/icons/{IconAdd.svelte → NeoIconAdd.svelte} +11 -6
  117. package/dist/icons/NeoIconAdd.svelte.d.ts +4 -0
  118. package/dist/icons/{IconAddress.svelte → NeoIconAddress.svelte} +2 -2
  119. package/dist/icons/NeoIconAddress.svelte.d.ts +4 -0
  120. package/dist/icons/{IconAlert.svelte → NeoIconAlert.svelte} +11 -6
  121. package/dist/icons/NeoIconAlert.svelte.d.ts +4 -0
  122. package/dist/icons/{IconAlignBottom.svelte → NeoIconAlignBottom.svelte} +11 -6
  123. package/dist/icons/NeoIconAlignBottom.svelte.d.ts +4 -0
  124. package/dist/icons/{IconAlignMiddle.svelte → NeoIconAlignMiddle.svelte} +11 -6
  125. package/dist/icons/NeoIconAlignMiddle.svelte.d.ts +4 -0
  126. package/dist/icons/{IconAlignTop.svelte → NeoIconAlignTop.svelte} +11 -6
  127. package/dist/icons/NeoIconAlignTop.svelte.d.ts +4 -0
  128. package/dist/icons/{IconArrow.svelte → NeoIconArrow.svelte} +9 -9
  129. package/dist/icons/NeoIconArrow.svelte.d.ts +4 -0
  130. package/dist/icons/NeoIconAudio.svelte +83 -0
  131. package/dist/icons/NeoIconAudio.svelte.d.ts +4 -0
  132. package/dist/icons/NeoIconBouncingDots.svelte +82 -0
  133. package/dist/icons/NeoIconBouncingDots.svelte.d.ts +4 -0
  134. package/dist/icons/{IconCalendar.svelte → NeoIconCalendar.svelte} +11 -6
  135. package/dist/icons/NeoIconCalendar.svelte.d.ts +4 -0
  136. package/dist/icons/{IconCancel.svelte → NeoIconCancel.svelte} +2 -2
  137. package/dist/icons/NeoIconCancel.svelte.d.ts +4 -0
  138. package/dist/icons/{IconCheckbox.svelte → NeoIconCheckbox.svelte} +2 -2
  139. package/dist/icons/NeoIconCheckbox.svelte.d.ts +4 -0
  140. package/dist/icons/NeoIconCircle.svelte +18 -0
  141. package/dist/icons/NeoIconCircle.svelte.d.ts +4 -0
  142. package/dist/icons/{IconCircleLoading.svelte → NeoIconCircleLoading.svelte} +2 -2
  143. package/dist/icons/{IconCircleLoading.svelte.d.ts → NeoIconCircleLoading.svelte.d.ts} +55 -39
  144. package/dist/icons/{IconClear.svelte → NeoIconClear.svelte} +11 -6
  145. package/dist/icons/NeoIconClear.svelte.d.ts +4 -0
  146. package/dist/icons/{IconClose.svelte → NeoIconClose.svelte} +2 -2
  147. package/dist/icons/NeoIconClose.svelte.d.ts +4 -0
  148. package/dist/icons/NeoIconCog.svelte +36 -0
  149. package/dist/icons/NeoIconCog.svelte.d.ts +4 -0
  150. package/dist/icons/{IconConfirm.svelte → NeoIconConfirm.svelte} +11 -6
  151. package/dist/icons/NeoIconConfirm.svelte.d.ts +4 -0
  152. package/dist/icons/NeoIconCube.svelte +31 -0
  153. package/dist/icons/NeoIconCube.svelte.d.ts +4 -0
  154. package/dist/icons/{IconDoubleChevron.svelte → NeoIconDoubleChevron.svelte} +11 -5
  155. package/dist/icons/NeoIconDoubleChevron.svelte.d.ts +4 -0
  156. package/dist/icons/{IconDoubleChevronLeft.svelte → NeoIconDoubleChevronLeft.svelte} +11 -6
  157. package/dist/icons/NeoIconDoubleChevronLeft.svelte.d.ts +4 -0
  158. package/dist/icons/{IconDoubleChevronRight.svelte → NeoIconDoubleChevronRight.svelte} +11 -6
  159. package/dist/icons/NeoIconDoubleChevronRight.svelte.d.ts +4 -0
  160. package/dist/icons/{IconDownload.svelte → NeoIconDownload.svelte} +11 -6
  161. package/dist/icons/NeoIconDownload.svelte.d.ts +4 -0
  162. package/dist/icons/NeoIconEmpty.svelte +26 -0
  163. package/dist/icons/NeoIconEmpty.svelte.d.ts +4 -0
  164. package/dist/icons/NeoIconError.svelte +30 -0
  165. package/dist/icons/NeoIconError.svelte.d.ts +4 -0
  166. package/dist/icons/{IconFileUpload.svelte → NeoIconFileUpload.svelte} +11 -6
  167. package/dist/icons/NeoIconFileUpload.svelte.d.ts +4 -0
  168. package/dist/icons/NeoIconFire.svelte +33 -0
  169. package/dist/icons/NeoIconFire.svelte.d.ts +4 -0
  170. package/dist/icons/{IconGithub.svelte → NeoIconGithub.svelte} +11 -6
  171. package/dist/icons/NeoIconGithub.svelte.d.ts +4 -0
  172. package/dist/icons/NeoIconImage.svelte +39 -0
  173. package/dist/icons/NeoIconImage.svelte.d.ts +4 -0
  174. package/dist/icons/NeoIconInfo.svelte +30 -0
  175. package/dist/icons/NeoIconInfo.svelte.d.ts +4 -0
  176. package/dist/icons/{IconList.svelte → NeoIconList.svelte} +11 -6
  177. package/dist/icons/NeoIconList.svelte.d.ts +4 -0
  178. package/dist/icons/{IconListSmall.svelte → NeoIconListSmall.svelte} +2 -2
  179. package/dist/icons/NeoIconListSmall.svelte.d.ts +4 -0
  180. package/dist/icons/{IconLoadingMatrix.svelte → NeoIconLoadingMatrix.svelte} +2 -2
  181. package/dist/icons/NeoIconLoadingMatrix.svelte.d.ts +4 -0
  182. package/dist/icons/{IconMail.svelte → NeoIconMail.svelte} +11 -6
  183. package/dist/icons/NeoIconMail.svelte.d.ts +4 -0
  184. package/dist/icons/{IconMinus.svelte → NeoIconMinus.svelte} +11 -6
  185. package/dist/icons/NeoIconMinus.svelte.d.ts +4 -0
  186. package/dist/icons/{IconPaint.svelte → NeoIconPaint.svelte} +11 -6
  187. package/dist/icons/NeoIconPaint.svelte.d.ts +4 -0
  188. package/dist/icons/{IconPencil.svelte → NeoIconPencil.svelte} +11 -6
  189. package/dist/icons/NeoIconPencil.svelte.d.ts +4 -0
  190. package/dist/icons/{IconPlayPause.svelte → NeoIconPlayPause.svelte} +2 -2
  191. package/dist/icons/NeoIconPlayPause.svelte.d.ts +4 -0
  192. package/dist/icons/{IconQuestionMark.svelte → NeoIconQuestionMark.svelte} +11 -6
  193. package/dist/icons/NeoIconQuestionMark.svelte.d.ts +4 -0
  194. package/dist/icons/{IconRadio.svelte → NeoIconRadio.svelte} +2 -2
  195. package/dist/icons/NeoIconRadio.svelte.d.ts +4 -0
  196. package/dist/icons/NeoIconRefresh.svelte +38 -0
  197. package/dist/icons/NeoIconRefresh.svelte.d.ts +4 -0
  198. package/dist/icons/NeoIconRestore.svelte +20 -0
  199. package/dist/icons/NeoIconRestore.svelte.d.ts +4 -0
  200. package/dist/icons/NeoIconSave.svelte +35 -0
  201. package/dist/icons/NeoIconSave.svelte.d.ts +4 -0
  202. package/dist/icons/NeoIconSaveOff.svelte +42 -0
  203. package/dist/icons/NeoIconSaveOff.svelte.d.ts +4 -0
  204. package/dist/icons/{IconSearch.svelte → NeoIconSearch.svelte} +11 -6
  205. package/dist/icons/NeoIconSearch.svelte.d.ts +4 -0
  206. package/dist/icons/NeoIconSuccess.svelte +26 -0
  207. package/dist/icons/NeoIconSuccess.svelte.d.ts +4 -0
  208. package/dist/icons/{IconSun.svelte → NeoIconSun.svelte} +11 -6
  209. package/dist/icons/NeoIconSun.svelte.d.ts +4 -0
  210. package/dist/icons/{IconSunMoon.svelte → NeoIconSunMoon.svelte} +11 -64
  211. package/dist/icons/NeoIconSunMoon.svelte.d.ts +4 -0
  212. package/dist/icons/{IconTextHighlight.svelte → NeoIconTextHighlight.svelte} +11 -6
  213. package/dist/icons/NeoIconTextHighlight.svelte.d.ts +4 -0
  214. package/dist/icons/NeoIconTheme.svelte +14 -0
  215. package/dist/icons/NeoIconTheme.svelte.d.ts +3 -0
  216. package/dist/icons/NeoIconTrend.svelte +39 -0
  217. package/dist/icons/NeoIconTrend.svelte.d.ts +4 -0
  218. package/dist/icons/NeoIconUnplug.svelte +63 -0
  219. package/dist/icons/NeoIconUnplug.svelte.d.ts +4 -0
  220. package/dist/icons/{IconVideo.svelte → NeoIconVideo.svelte} +11 -6
  221. package/dist/icons/NeoIconVideo.svelte.d.ts +4 -0
  222. package/dist/icons/NeoIconWarning.svelte +30 -0
  223. package/dist/icons/NeoIconWarning.svelte.d.ts +4 -0
  224. package/dist/icons/NeoIconWatch.svelte +41 -0
  225. package/dist/icons/NeoIconWatch.svelte.d.ts +4 -0
  226. package/dist/icons/NeoIconWatchOff.svelte +50 -0
  227. package/dist/icons/NeoIconWatchOff.svelte.d.ts +4 -0
  228. package/dist/icons/NeoIconWave.svelte +31 -0
  229. package/dist/icons/NeoIconWave.svelte.d.ts +4 -0
  230. package/dist/icons/index.d.ts +54 -0
  231. package/dist/icons/index.js +54 -0
  232. package/dist/icons/{icon.model.d.ts → neo-icon.model.d.ts} +41 -13
  233. package/dist/icons/{icon.model.js → neo-icon.model.js} +1 -1
  234. package/dist/index.d.ts +2 -0
  235. package/dist/index.js +2 -0
  236. package/dist/inputs/NeoCheckbox.svelte +6 -4
  237. package/dist/inputs/NeoCheckbox.svelte.d.ts +1 -1
  238. package/dist/inputs/NeoColorPicker.svelte +6 -3
  239. package/dist/inputs/NeoColorPicker.svelte.d.ts +1 -1
  240. package/dist/inputs/NeoColorPickerSelector.svelte +2 -2
  241. package/dist/inputs/NeoColorPickerSelector.svelte.d.ts +1 -1
  242. package/dist/inputs/NeoDateTime.svelte +6 -3
  243. package/dist/inputs/NeoDateTime.svelte.d.ts +1 -1
  244. package/dist/inputs/NeoFilePicker.svelte +11 -6
  245. package/dist/inputs/NeoFilePicker.svelte.d.ts +1 -1
  246. package/dist/inputs/NeoFilePickerCard.svelte +20 -14
  247. package/dist/inputs/NeoNativeSelect.svelte +6 -3
  248. package/dist/inputs/NeoNativeSelect.svelte.d.ts +1 -1
  249. package/dist/inputs/NeoNumberStep.svelte +13 -8
  250. package/dist/inputs/NeoNumberStep.svelte.d.ts +1 -1
  251. package/dist/inputs/NeoPassword.svelte +4 -4
  252. package/dist/inputs/NeoPassword.svelte.d.ts +1 -1
  253. package/dist/inputs/NeoPin.svelte +10 -10
  254. package/dist/inputs/NeoPin.svelte.d.ts +10 -1
  255. package/dist/inputs/NeoRadio.svelte +3 -3
  256. package/dist/inputs/NeoRadio.svelte.d.ts +1 -1
  257. package/dist/inputs/NeoRange.svelte +29 -27
  258. package/dist/inputs/NeoRange.svelte.d.ts +5 -2
  259. package/dist/inputs/NeoSelect.svelte +17 -8
  260. package/dist/inputs/NeoSelect.svelte.d.ts +1 -1
  261. package/dist/inputs/NeoSwitch.svelte +2 -2
  262. package/dist/inputs/NeoSwitch.svelte.d.ts +1 -1
  263. package/dist/inputs/common/NeoAffix.svelte +10 -10
  264. package/dist/inputs/common/NeoBaseInput.svelte +16 -2
  265. package/dist/inputs/common/NeoBaseInput.svelte.d.ts +1 -1
  266. package/dist/inputs/common/NeoInput.svelte +12 -4
  267. package/dist/inputs/common/NeoInput.svelte.d.ts +1 -1
  268. package/dist/inputs/common/NeoTextarea.svelte +18 -6
  269. package/dist/inputs/common/NeoTextarea.svelte.d.ts +2 -1
  270. package/dist/inputs/common/NeoValidation.svelte +6 -4
  271. package/dist/inputs/common/neo-input.model.d.ts +8 -1
  272. package/dist/inputs/common/neo-validation.model.d.ts +2 -1
  273. package/dist/inputs/neo-range.model.d.ts +2 -1
  274. package/dist/inputs/neo-select.model.d.ts +8 -4
  275. package/dist/list/NeoList.svelte +100 -62
  276. package/dist/list/NeoList.svelte.d.ts +5 -2
  277. package/dist/list/NeoListBaseItem.svelte +222 -92
  278. package/dist/list/NeoListBaseItem.svelte.d.ts +1 -1
  279. package/dist/list/NeoListBaseLoader.svelte +28 -4
  280. package/dist/list/NeoListBaseSection.svelte +18 -15
  281. package/dist/list/NeoListSearch.svelte +36 -20
  282. package/dist/list/NeoListSearch.svelte.d.ts +1 -1
  283. package/dist/list/NeoSimpleList.svelte +391 -0
  284. package/dist/list/NeoSimpleList.svelte.d.ts +8 -0
  285. package/dist/list/NeoVirtualList.svelte +388 -0
  286. package/dist/list/NeoVirtualList.svelte.d.ts +22 -0
  287. package/dist/list/index.d.ts +4 -0
  288. package/dist/list/index.js +2 -0
  289. package/dist/list/neo-list-base-item.model.d.ts +36 -7
  290. package/dist/list/neo-list-base-item.model.js +1 -0
  291. package/dist/list/neo-list-base-loader.model.d.ts +18 -1
  292. package/dist/list/neo-list-base-section.model.d.ts +8 -5
  293. package/dist/list/neo-list-search.model.d.ts +2 -2
  294. package/dist/list/neo-list.model.d.ts +120 -51
  295. package/dist/list/neo-list.model.js +18 -0
  296. package/dist/list/neo-simple-list.model.d.ts +124 -0
  297. package/dist/list/neo-simple-list.model.js +1 -0
  298. package/dist/list/neo-virtual-list.model.d.ts +69 -0
  299. package/dist/list/neo-virtual-list.model.js +6 -0
  300. package/dist/loading/NeoLoadingMatrix.svelte +2 -2
  301. package/dist/loading/neo-lazy.model.d.ts +2 -2
  302. package/dist/loading/neo-suspense.model.d.ts +1 -1
  303. package/dist/media/NeoImage.svelte +204 -0
  304. package/dist/media/NeoImage.svelte.d.ts +4 -0
  305. package/dist/media/NeoMedia.svelte +204 -0
  306. package/dist/media/NeoMedia.svelte.d.ts +4 -0
  307. package/dist/media/index.d.ts +2 -0
  308. package/dist/media/index.js +1 -0
  309. package/dist/media/neo-image.model.d.ts +67 -0
  310. package/dist/media/neo-image.model.js +1 -0
  311. package/dist/media/neo-media.model.d.ts +120 -0
  312. package/dist/media/neo-media.model.js +5 -0
  313. package/dist/nav/NeoTab.svelte +20 -15
  314. package/dist/nav/NeoTab.svelte.d.ts +17 -2
  315. package/dist/nav/NeoTabPanel.svelte +7 -5
  316. package/dist/nav/NeoTabPanel.svelte.d.ts +17 -2
  317. package/dist/nav/NeoTabs.svelte +21 -17
  318. package/dist/nav/NeoTabs.svelte.d.ts +19 -3
  319. package/dist/nav/NeoTabsCard.svelte +5 -3
  320. package/dist/nav/NeoTabsCard.svelte.d.ts +17 -2
  321. package/dist/nav/NeoTabsRow.svelte +225 -0
  322. package/dist/nav/NeoTabsRow.svelte.d.ts +19 -0
  323. package/dist/nav/index.d.ts +2 -0
  324. package/dist/nav/index.js +1 -0
  325. package/dist/nav/neo-tab-panel.model.d.ts +3 -3
  326. package/dist/nav/neo-tab.model.d.ts +15 -5
  327. package/dist/nav/neo-tabs-card.model.d.ts +3 -2
  328. package/dist/nav/neo-tabs-context.svelte.d.ts +35 -29
  329. package/dist/nav/neo-tabs-context.svelte.js +17 -3
  330. package/dist/nav/neo-tabs-row.model.d.ts +85 -0
  331. package/dist/nav/neo-tabs-row.model.js +1 -0
  332. package/dist/nav/neo-tabs.model.d.ts +12 -11
  333. package/dist/pill/NeoPill.svelte +73 -14
  334. package/dist/pill/neo-pill.model.d.ts +25 -1
  335. package/dist/progress/NeoProgress.svelte +203 -42
  336. package/dist/progress/NeoProgress.svelte.d.ts +8 -8
  337. package/dist/progress/NeoProgressBar.svelte +37 -6
  338. package/dist/progress/NeoProgressBar.svelte.d.ts +9 -1
  339. package/dist/progress/index.d.ts +1 -0
  340. package/dist/progress/index.js +1 -0
  341. package/dist/progress/neo-progress-bar.model.d.ts +11 -6
  342. package/dist/progress/neo-progress-service.svelte.d.ts +47 -0
  343. package/dist/progress/neo-progress-service.svelte.js +157 -0
  344. package/dist/progress/neo-progress.model.d.ts +98 -41
  345. package/dist/progress/neo-progress.model.js +6 -1
  346. package/dist/providers/NeoRememberSelector.svelte +43 -0
  347. package/dist/providers/NeoRememberSelector.svelte.d.ts +4 -0
  348. package/dist/providers/NeoResetSelector.svelte +40 -0
  349. package/dist/providers/NeoResetSelector.svelte.d.ts +4 -0
  350. package/dist/providers/NeoSourceSelector.svelte +63 -0
  351. package/dist/providers/NeoSourceSelector.svelte.d.ts +4 -0
  352. package/dist/providers/NeoThemeProvider.svelte +25 -10
  353. package/dist/providers/NeoThemeProvider.svelte.d.ts +1 -2
  354. package/dist/providers/NeoThemeSelector.svelte +26 -108
  355. package/dist/providers/NeoThemeSelector.svelte.d.ts +1 -1
  356. package/dist/providers/NeoThemeSelectors.svelte +57 -0
  357. package/dist/providers/NeoThemeSelectors.svelte.d.ts +4 -0
  358. package/dist/providers/NeoTransitionSelector.svelte +57 -0
  359. package/dist/providers/NeoTransitionSelector.svelte.d.ts +4 -0
  360. package/dist/providers/index.d.ts +10 -0
  361. package/dist/providers/index.js +5 -0
  362. package/dist/providers/neo-remember-selector.model.d.ts +9 -0
  363. package/dist/providers/neo-remember-selector.model.js +2 -0
  364. package/dist/providers/neo-reset-selector.model.d.ts +9 -0
  365. package/dist/providers/neo-reset-selector.model.js +1 -0
  366. package/dist/providers/neo-source-selector.model.d.ts +9 -0
  367. package/dist/providers/neo-source-selector.model.js +2 -0
  368. package/dist/providers/neo-theme-provider-context.svelte.d.ts +14 -3
  369. package/dist/providers/neo-theme-provider-context.svelte.js +94 -11
  370. package/dist/providers/neo-theme-provider.model.d.ts +31 -3
  371. package/dist/providers/neo-theme-provider.model.js +9 -0
  372. package/dist/providers/neo-theme-selector.model.d.ts +3 -48
  373. package/dist/providers/neo-theme-selector.model.js +1 -0
  374. package/dist/providers/neo-theme-selectors.model.d.ts +84 -0
  375. package/dist/providers/neo-theme-selectors.model.js +1 -0
  376. package/dist/providers/neo-transition-selector.model.d.ts +9 -0
  377. package/dist/providers/neo-transition-selector.model.js +2 -0
  378. package/dist/skeletons/NeoSkeletonContainer.svelte +3 -1
  379. package/dist/skeletons/NeoSkeletonMedia.svelte +26 -18
  380. package/dist/skeletons/NeoSkeletonText.svelte +5 -3
  381. package/dist/skeletons/neo-skeleton-container.model.d.ts +9 -0
  382. package/dist/skeletons/neo-skeleton-media.model.d.ts +20 -10
  383. package/dist/skeletons/neo-skeleton-media.model.js +7 -1
  384. package/dist/skeletons/neo-skeleton-text.model.d.ts +5 -0
  385. package/dist/stepper/NeoStepper.svelte +20 -20
  386. package/dist/stepper/NeoStepper.svelte.d.ts +9 -2
  387. package/dist/stepper/neo-stepper.model.d.ts +5 -5
  388. package/dist/styles/animation.scss +76 -0
  389. package/dist/styles/common/colors.scss +15 -9
  390. package/dist/styles/common/properties.css +18 -0
  391. package/dist/styles/common/spacing.scss +8 -4
  392. package/dist/styles/common/typography.scss +13 -3
  393. package/dist/styles/common/utils.scss +2 -2
  394. package/dist/styles/mixin.scss +125 -11
  395. package/dist/styles/theme.scss +20 -0
  396. package/dist/styles/transition.scss +101 -0
  397. package/dist/text/NeoEllipsis.svelte +1 -0
  398. package/dist/text/NeoHtml.svelte +26 -0
  399. package/dist/text/NeoHtml.svelte.d.ts +7 -0
  400. package/dist/text/NeoMark.svelte +18 -5
  401. package/dist/text/NeoTypewriter.svelte +5 -4
  402. package/dist/text/NeoTypewriter.svelte.d.ts +5 -1
  403. package/dist/text/index.d.ts +2 -0
  404. package/dist/text/index.js +1 -0
  405. package/dist/text/neo-html.model.d.ts +4 -0
  406. package/dist/text/neo-html.model.js +1 -0
  407. package/dist/text/neo-mark.model.d.ts +8 -0
  408. package/dist/text/typewriter.utils.d.ts +2 -2
  409. package/dist/text/typewriter.utils.js +8 -9
  410. package/dist/utils/action.utils.d.ts +1 -21
  411. package/dist/utils/border.utils.d.ts +13 -0
  412. package/dist/utils/border.utils.js +18 -0
  413. package/dist/utils/colors.utils.d.ts +1 -1
  414. package/dist/utils/error.utils.d.ts +22 -0
  415. package/dist/utils/error.utils.js +36 -0
  416. package/dist/utils/style.utils.d.ts +1 -1
  417. package/package.json +55 -39
  418. package/dist/icons/IconAccount.svelte.d.ts +0 -4
  419. package/dist/icons/IconAdd.svelte.d.ts +0 -26
  420. package/dist/icons/IconAddress.svelte.d.ts +0 -4
  421. package/dist/icons/IconAlert.svelte.d.ts +0 -26
  422. package/dist/icons/IconAlignBottom.svelte.d.ts +0 -26
  423. package/dist/icons/IconAlignMiddle.svelte.d.ts +0 -26
  424. package/dist/icons/IconAlignTop.svelte.d.ts +0 -26
  425. package/dist/icons/IconArrow.svelte.d.ts +0 -4
  426. package/dist/icons/IconBouncingDots.svelte +0 -63
  427. package/dist/icons/IconBouncingDots.svelte.d.ts +0 -4
  428. package/dist/icons/IconCalendar.svelte.d.ts +0 -26
  429. package/dist/icons/IconCancel.svelte.d.ts +0 -4
  430. package/dist/icons/IconCheckbox.svelte.d.ts +0 -4
  431. package/dist/icons/IconClear.svelte.d.ts +0 -26
  432. package/dist/icons/IconClose.svelte.d.ts +0 -4
  433. package/dist/icons/IconConfirm.svelte.d.ts +0 -26
  434. package/dist/icons/IconDoubleChevron.svelte.d.ts +0 -26
  435. package/dist/icons/IconDoubleChevronLeft.svelte.d.ts +0 -26
  436. package/dist/icons/IconDoubleChevronRight.svelte.d.ts +0 -26
  437. package/dist/icons/IconDownload.svelte.d.ts +0 -26
  438. package/dist/icons/IconEmpty.svelte +0 -18
  439. package/dist/icons/IconEmpty.svelte.d.ts +0 -26
  440. package/dist/icons/IconFileUpload.svelte.d.ts +0 -26
  441. package/dist/icons/IconGithub.svelte.d.ts +0 -26
  442. package/dist/icons/IconImage.svelte +0 -26
  443. package/dist/icons/IconImage.svelte.d.ts +0 -26
  444. package/dist/icons/IconList.svelte.d.ts +0 -26
  445. package/dist/icons/IconListSmall.svelte.d.ts +0 -4
  446. package/dist/icons/IconLoadingMatrix.svelte.d.ts +0 -4
  447. package/dist/icons/IconMail.svelte.d.ts +0 -26
  448. package/dist/icons/IconMinus.svelte.d.ts +0 -26
  449. package/dist/icons/IconPaint.svelte.d.ts +0 -26
  450. package/dist/icons/IconPencil.svelte.d.ts +0 -26
  451. package/dist/icons/IconPlayPause.svelte.d.ts +0 -4
  452. package/dist/icons/IconQuestionMark.svelte.d.ts +0 -26
  453. package/dist/icons/IconRadio.svelte.d.ts +0 -4
  454. package/dist/icons/IconSave.svelte +0 -25
  455. package/dist/icons/IconSave.svelte.d.ts +0 -26
  456. package/dist/icons/IconSaveOff.svelte +0 -32
  457. package/dist/icons/IconSaveOff.svelte.d.ts +0 -26
  458. package/dist/icons/IconSearch.svelte.d.ts +0 -26
  459. package/dist/icons/IconSun.svelte.d.ts +0 -26
  460. package/dist/icons/IconSunMoon.svelte.d.ts +0 -4
  461. package/dist/icons/IconTextHighlight.svelte.d.ts +0 -26
  462. package/dist/icons/IconVideo.svelte.d.ts +0 -26
  463. package/dist/icons/IconWatch.svelte +0 -29
  464. package/dist/icons/IconWatch.svelte.d.ts +0 -26
  465. package/dist/icons/IconWatchOff.svelte +0 -34
  466. package/dist/icons/IconWatchOff.svelte.d.ts +0 -26
@@ -14,6 +14,12 @@ export const NeoSource = {
14
14
  BottomRight: 'bottom-right',
15
15
  BottomLeft: 'bottom-left',
16
16
  };
17
+ export const NeoTransition = {
18
+ None: 'none',
19
+ Spin: 'neo-spin',
20
+ Wave: 'neo-wave',
21
+ Circle: 'neo-circle',
22
+ };
17
23
  export const NeoThemeRoot = 'neo-theme-root';
18
24
  export const NeoThemeStorageKey = {
19
25
  Reset: 'neo-reset',
@@ -21,6 +27,7 @@ export const NeoThemeStorageKey = {
21
27
  Source: 'neo-source',
22
28
  Remember: 'neo-remember',
23
29
  Transition: 'neo-transition',
30
+ InFlight: 'neo-in-flight',
24
31
  };
25
32
  export const getSavedTheme = () => localStorage?.getItem(NeoThemeStorageKey.Theme);
26
33
  export const getPreferTheme = () => (window.matchMedia('(prefers-color-scheme: dark)').matches ? NeoTheme.Dark : NeoTheme.Light);
@@ -37,3 +44,5 @@ export const getSavedReset = () => localStorage?.getItem(NeoThemeStorageKey.Rese
37
44
  export const getReset = () => getBoolean(getSavedReset(), true);
38
45
  export const getSavedRemember = () => localStorage?.getItem(NeoThemeStorageKey.Remember);
39
46
  export const getRemember = () => getBoolean(getSavedRemember(), true);
47
+ export const getSavedTransition = () => localStorage?.getItem(NeoThemeStorageKey.Transition);
48
+ export const getTransition = () => getSavedTransition() || NeoTransition.None;
@@ -1,54 +1,9 @@
1
- import type { Snippet } from 'svelte';
2
- import type { NeoButtonGroupProps } from '../buttons/neo-button-group.model.js';
3
1
  import type { NeoButtonProps } from '../buttons/neo-button.model.js';
4
- import type { INeoThemeProviderContext } from './neo-theme-provider.model.js';
5
- export type NeoThemeSelectorProps = {
6
- /**
7
- * Any children to display in the theme selector.
8
- */
9
- children?: Snippet<[INeoThemeProviderContext]>;
10
- /**
11
- * Whether to show the reset style button or not.
12
- */
13
- reset?: boolean;
14
- /**
15
- * Whether to show the dark/light theme button or not.
16
- */
17
- theme?: boolean;
2
+ export interface NeoThemeSelectorProps extends NeoButtonProps {
18
3
  /**
19
4
  * The label to show in the theme selector.
20
5
  *
21
6
  * @default Theme
22
7
  */
23
- themeLabel?: string;
24
- /**
25
- * Whether to show the light source button or not.
26
- */
27
- source?: boolean;
28
- /**
29
- * The label to show in the source selector.
30
- *
31
- * @default Source
32
- */
33
- sourceLabel?: string;
34
- /**
35
- * Whether to show the remember button or not.
36
- */
37
- remember?: boolean;
38
- /**
39
- * The props to pass to the reset button.
40
- */
41
- resetProps?: NeoButtonProps;
42
- /**
43
- * The props to pass to the theme button.
44
- */
45
- themeProps?: NeoButtonProps;
46
- /**
47
- * The props to pass to the source button.
48
- */
49
- sourceProps?: NeoButtonProps;
50
- /**
51
- * The props to pass to the remember button.
52
- */
53
- rememberProps?: NeoButtonProps;
54
- } & Omit<NeoButtonGroupProps, 'children'>;
8
+ label?: string;
9
+ }
@@ -1 +1,2 @@
1
+ ;
1
2
  export {};
@@ -0,0 +1,84 @@
1
+ import type { Snippet } from 'svelte';
2
+ import type { NeoButtonGroupProps } from '../buttons/neo-button-group.model.js';
3
+ import type { NeoRememberSelectorProps } from './neo-remember-selector.model.js';
4
+ import type { NeoResetSelectorProps } from './neo-reset-selector.model.js';
5
+ import type { NeoSourceSelectorProps } from './neo-source-selector.model.js';
6
+ import type { INeoThemeProviderContext } from './neo-theme-provider.model.js';
7
+ import type { NeoThemeSelectorProps } from './neo-theme-selector.model.js';
8
+ import type { NeoTransitionSelectorProps } from './neo-transition-selector.model.js';
9
+ export type NeoThemeSelectorsProps = {
10
+ /**
11
+ * Any children to display in the theme selector.
12
+ */
13
+ children?: Snippet<[INeoThemeProviderContext]>;
14
+ /**
15
+ * Whether to show the dark/light theme button or not.
16
+ */
17
+ theme?: boolean;
18
+ /**
19
+ * The label to show in the theme selector.
20
+ *
21
+ * @default Theme
22
+ */
23
+ themeLabel?: NeoThemeSelectorProps['label'];
24
+ /**
25
+ * Whether to show the light source button or not.
26
+ */
27
+ source?: boolean;
28
+ /**
29
+ * The label to show in the source selector.
30
+ *
31
+ * @default Source
32
+ */
33
+ sourceLabel?: NeoSourceSelectorProps['label'];
34
+ /**
35
+ * Whether to show the reset style button or not.
36
+ */
37
+ reset?: boolean;
38
+ /**
39
+ * The label to show in the reset selector.
40
+ *
41
+ * @default Reset
42
+ */
43
+ resetLabel?: NeoResetSelectorProps['label'];
44
+ /**
45
+ * Whether to show the remember button or not.
46
+ */
47
+ remember?: boolean;
48
+ /**
49
+ * The label to show in the remember selector.
50
+ *
51
+ * @default Remember
52
+ */
53
+ rememberLabel?: NeoRememberSelectorProps['label'];
54
+ /**
55
+ * Which transition to use when changing the theme.
56
+ */
57
+ themeTransition?: boolean;
58
+ /**
59
+ * The label to show in the transition selector.
60
+ *
61
+ * @default Transition: <transition>
62
+ */
63
+ themeTransitionLabel?: NeoTransitionSelectorProps['label'];
64
+ /**
65
+ * The props to pass to the reset button.
66
+ */
67
+ resetProps?: NeoResetSelectorProps;
68
+ /**
69
+ * The props to pass to the theme button.
70
+ */
71
+ themeProps?: NeoThemeSelectorProps;
72
+ /**
73
+ * The props to pass to the source button.
74
+ */
75
+ sourceProps?: NeoSourceSelectorProps;
76
+ /**
77
+ * The props to pass to the remember button.
78
+ */
79
+ rememberProps?: NeoRememberSelectorProps;
80
+ /**
81
+ * The props to pass to the transition button.
82
+ */
83
+ themeTransitionProps?: NeoTransitionSelectorProps;
84
+ } & Omit<NeoButtonGroupProps, 'children'>;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,9 @@
1
+ import type { NeoButtonProps } from '../buttons/neo-button.model.js';
2
+ export interface NeoTransitionSelectorProps extends NeoButtonProps {
3
+ /**
4
+ * The label to show in the Transition selector.
5
+ *
6
+ * @default Transition: <transition>
7
+ */
8
+ label?: string;
9
+ }
@@ -0,0 +1,2 @@
1
+ ;
2
+ export {};
@@ -23,8 +23,10 @@
23
23
 
24
24
  // Styles
25
25
  flex,
26
+ ratio,
26
27
  width,
27
28
  height,
29
+ reverse,
28
30
 
29
31
  // Content
30
32
  context = $bindable({}),
@@ -65,7 +67,7 @@
65
67
  {#if disabled}
66
68
  {@render content?.()}
67
69
  {:else if content}
68
- <NeoTransitionContainer {width} {height} {...containerProps}>
70
+ <NeoTransitionContainer {width} {height} {reverse} {ratio} {...containerProps}>
69
71
  {#if loading}
70
72
  <svelte:element
71
73
  this={tag}
@@ -3,11 +3,14 @@
3
3
 
4
4
  import { fade } from 'svelte/transition';
5
5
 
6
- import IconAccount from '../icons/IconAccount.svelte';
7
- import IconImage from '../icons/IconImage.svelte';
8
- import IconVideo from '../icons/IconVideo.svelte';
6
+ import NeoIconAccount from '../icons/NeoIconAccount.svelte';
7
+ import NeoIconAudio from '../icons/NeoIconAudio.svelte';
8
+ import NeoIconImage from '../icons/NeoIconImage.svelte';
9
+ import NeoIconVideo from '../icons/NeoIconVideo.svelte';
10
+ import { NeoSkeletonMediaType } from './neo-skeleton-media.model.js';
9
11
  import NeoSkeletonContainer from './NeoSkeletonContainer.svelte';
10
12
  import { toTransition, toTransitionProps } from '../utils/action.utils.js';
13
+ import { computeBorderRadius } from '../utils/border.utils.js';
11
14
  import { toSize } from '../utils/style.utils.js';
12
15
  import { quickDelayProps, quickDurationProps } from '../utils/transition.utils.js';
13
16
 
@@ -19,21 +22,21 @@
19
22
  // State
20
23
  ref = $bindable(),
21
24
  loading = true,
22
- type = 'empty',
23
- size = type === 'avatar' ? '70%' : '20%',
24
- flex,
25
- align,
25
+ type = NeoSkeletonMediaType.Empty,
26
+ size = type === NeoSkeletonMediaType.Avatar ? '70%' : '20%',
26
27
  glass,
27
28
  disabled,
28
29
 
29
30
  // Styles
30
31
  rounded,
31
32
  circle,
32
- ratio = type === 'video' ? '16 / 9' : '4 / 3',
33
+ ratio = type === NeoSkeletonMediaType.Video ? '16 / 9' : '4 / 3',
33
34
 
34
35
  // Size
35
36
  width: _width,
36
37
  height: _height,
38
+ align,
39
+ flex,
37
40
 
38
41
  // Transition
39
42
  in: inAction = { use: fade, props: quickDelayProps },
@@ -47,12 +50,14 @@
47
50
 
48
51
  const MediaType = $derived.by(() => {
49
52
  switch (type) {
50
- case 'image':
51
- return IconImage;
52
- case 'video':
53
- return IconVideo;
54
- case 'avatar':
55
- return IconAccount;
53
+ case NeoSkeletonMediaType.Image:
54
+ return NeoIconImage;
55
+ case NeoSkeletonMediaType.Video:
56
+ return NeoIconVideo;
57
+ case NeoSkeletonMediaType.Audio:
58
+ return NeoIconAudio;
59
+ case NeoSkeletonMediaType.Avatar:
60
+ return NeoIconAccount;
56
61
  default:
57
62
  return undefined;
58
63
  }
@@ -75,6 +80,7 @@
75
80
  out={outAction}
76
81
  width={width?.absolute}
77
82
  height={height?.absolute}
83
+ {ratio}
78
84
  {content}
79
85
  containerProps={transitionProps}
80
86
  {...containerProps}
@@ -93,6 +99,7 @@
93
99
  style:aspect-ratio={ratio}
94
100
  style:align-self={align}
95
101
  style:flex
102
+ style:--neo-skeleton-border-radius={computeBorderRadius(rounded)}
96
103
  in:inFn={inProps}
97
104
  out:outFn={outProps}
98
105
  {...rest}
@@ -113,7 +120,8 @@
113
120
  flex: 1 1 auto;
114
121
  flex-direction: column;
115
122
  gap: var(--neo-skeleton-gap, var(--neo-gap-xl));
116
- width: 100%;
123
+ width: var(--neo-skeleton-content-width, 100%);
124
+ height: var(--neo-skeleton-content-height);
117
125
  border-radius: var(--neo-skeleton-border-radius, var(--neo-border-radius));
118
126
  --neo-skeleton-start: 1;
119
127
  --neo-skeleton-end: calc(1 + var(--neo-skeleton-step, -0.3));
@@ -122,7 +130,7 @@
122
130
  background-clip: padding-box;
123
131
  border-color: var(--neo-skeleton-color);
124
132
  opacity: 1;
125
- transition: background-color 1s ease, color 0.3333333333s ease, border-color 1s ease, opacity 1s ease;
133
+ transition: border-radius 0.3333333333s ease, background-color 1s ease, color 0.3333333333s ease, border-color 1s ease, opacity 1s ease;
126
134
  animation: skeleton 3s var(--neo-transition-skeleton) infinite;
127
135
  animation-delay: 1s;
128
136
  }
@@ -145,7 +153,7 @@
145
153
  --neo-skeleton-color: var(--neo-glass-skeleton-color);
146
154
  }
147
155
  .neo-skeleton-media.neo-rounded {
148
- border-radius: var(--neo-skeleton-border-radius, var(--neo-border-radius-lg));
156
+ border-radius: var(--neo-skeleton-border-radius, var(--neo-border-radius-xxl));
149
157
  }
150
158
  .neo-skeleton-media.neo-circle {
151
159
  border-radius: 50%;
@@ -157,7 +165,7 @@
157
165
  left: calc(50% - var(--neo-skeleton-media-icon-size) / 2);
158
166
  width: var(--neo-skeleton-media-icon-size);
159
167
  height: var(--neo-skeleton-media-icon-size);
160
- color: oklch(from var(--neo-skeleton-color) calc(l + 0.1) c h);
168
+ color: var(--neo-text-color-inverse);
161
169
  visibility: visible;
162
170
  opacity: 0.75;
163
171
  }
@@ -19,6 +19,7 @@
19
19
  align,
20
20
  glass,
21
21
  flex,
22
+ reverse,
22
23
 
23
24
  // Size
24
25
  width: _width,
@@ -81,6 +82,7 @@
81
82
  width={width?.absolute}
82
83
  height={height?.absolute}
83
84
  {content}
85
+ {reverse}
84
86
  containerProps={transitionProps}
85
87
  {...containerProps}
86
88
  >
@@ -129,7 +131,7 @@
129
131
  width: 100%;
130
132
  height: var(--neo-skeleton-text-font-size, var(--neo-font-size, 1rem));
131
133
  margin: var(--neo-skeleton-text-margin, calc((var(--neo-skeleton-text-line-height, var(--neo-line-height, 1.5rem)) - var(--neo-skeleton-text-font-size, var(--neo-font-size, 1rem))) / 2) 0);
132
- border-radius: var(--neo-skeleton-border-radius, var(--neo-border-radius-lg));
134
+ border-radius: var(--neo-skeleton-border-radius, var(--neo-border-radius-xxl));
133
135
  --neo-skeleton-start: 1;
134
136
  --neo-skeleton-end: calc(1 + var(--neo-skeleton-step, -0.3));
135
137
  color: var(--neo-skeleton-color);
@@ -137,7 +139,7 @@
137
139
  background-clip: padding-box;
138
140
  border-color: var(--neo-skeleton-color);
139
141
  opacity: 1;
140
- transition: background-color 1s ease, color 0.3333333333s ease, border-color 1s ease, opacity 1s ease;
142
+ transition: border-radius 0.3333333333s ease, background-color 1s ease, color 0.3333333333s ease, border-color 1s ease, opacity 1s ease;
141
143
  animation: skeleton 3s var(--neo-transition-skeleton) infinite;
142
144
  animation-delay: 1s;
143
145
  }
@@ -213,7 +215,7 @@
213
215
  }
214
216
  .neo-skeleton-text-paragraph.neo-alt {
215
217
  flex-flow: row wrap;
216
- gap: var(--neo-skeleton-alt-gap, 0 var(--neo-gap-xxxs));
218
+ gap: var(--neo-skeleton-alt-gap, 0 var(--neo-gap-3xs));
217
219
  }
218
220
  .neo-skeleton-text-paragraph.neo-justify .neo-skeleton-text-line {
219
221
  flex: 1 1 auto;
@@ -42,6 +42,10 @@ export type NeoSkeletonContainerProps<Tag extends keyof HTMLElementTagNameMap =
42
42
  * Optional flex strategy for the container
43
43
  */
44
44
  flex?: CSSStyleDeclaration['flex'];
45
+ /**
46
+ * Optional aspect ratio for the container.
47
+ */
48
+ ratio?: CSSStyleDeclaration['aspectRatio'];
45
49
  /**
46
50
  * Width of the container.
47
51
  */
@@ -50,6 +54,11 @@ export type NeoSkeletonContainerProps<Tag extends keyof HTMLElementTagNameMap =
50
54
  * Height of the container.
51
55
  */
52
56
  height?: CSSStyleDeclaration['height'];
57
+ /**
58
+ * Reverse the direction of the container.
59
+ * Flow from right to left by default.
60
+ */
61
+ reverse?: boolean;
53
62
  /**
54
63
  * Props for the transition container.
55
64
  */
@@ -1,8 +1,17 @@
1
1
  import type { Snippet } from 'svelte';
2
2
  import type { NeoSkeletonContainerProps } from './neo-skeleton-container.model.js';
3
3
  import type { HTMLTransitionProps } from '../utils/action.utils.js';
4
+ import type { BorderRadiusInput } from '../utils/border.utils.js';
4
5
  import type { HTMLNeoBaseElement, HTMLRefProps } from '../utils/html-element.utils.js';
5
6
  import type { SizeInput } from '../utils/style.utils.js';
7
+ export declare const NeoSkeletonMediaType: {
8
+ readonly Image: "image";
9
+ readonly Video: "video";
10
+ readonly Audio: "audio";
11
+ readonly Avatar: "avatar";
12
+ readonly Empty: "empty";
13
+ };
14
+ export type NeoSkeletonMediaTypes = (typeof NeoSkeletonMediaType)[keyof typeof NeoSkeletonMediaType];
6
15
  export type NeoSkeletonMediaProps = {
7
16
  /**
8
17
  * Snippet to display as the skeleton content.
@@ -19,19 +28,23 @@ export type NeoSkeletonMediaProps = {
19
28
  /**
20
29
  * Type of media skeleton to display.
21
30
  */
22
- type: 'image' | 'video' | 'avatar' | 'empty';
31
+ type?: NeoSkeletonMediaTypes;
23
32
  /**
24
33
  * Size of the media skeleton icon.
25
34
  */
26
35
  size?: CSSStyleDeclaration['width'];
27
- /**
28
- * Overrides the default flex value.
29
- */
30
- flex?: CSSStyleDeclaration['flex'];
31
36
  /**
32
37
  * Alignment strategy for the skeleton.
33
38
  */
34
39
  align?: CSSStyleDeclaration['alignSelf'];
40
+ /**
41
+ * Optional aspect ratio for the image.
42
+ */
43
+ ratio?: CSSStyleDeclaration['aspectRatio'];
44
+ /**
45
+ * Overrides the default flex value.
46
+ */
47
+ flex?: CSSStyleDeclaration['flex'];
35
48
  /**
36
49
  * Optional width constraints.
37
50
  */
@@ -47,7 +60,7 @@ export type NeoSkeletonMediaProps = {
47
60
  /**
48
61
  * Whether to round the corners of the skeleton.
49
62
  */
50
- rounded?: boolean;
63
+ rounded?: BorderRadiusInput;
51
64
  /**
52
65
  * Whether to round the skeleton as a circle.
53
66
  */
@@ -57,11 +70,8 @@ export type NeoSkeletonMediaProps = {
57
70
  */
58
71
  glass?: boolean;
59
72
  /**
60
- * Aspect ratio of the media.
73
+ * Props to pass to the skeleton container.
61
74
  */
62
- ratio?: CSSStyleDeclaration['aspectRatio'] /**
63
- * Props to pass to the skeleton container.
64
- */;
65
75
  containerProps?: Omit<NeoSkeletonContainerProps, 'children' | 'content' | 'containerProps'>;
66
76
  /**
67
77
  * Props to pass to the transition container.
@@ -1 +1,7 @@
1
- export {};
1
+ export const NeoSkeletonMediaType = {
2
+ Image: 'image',
3
+ Video: 'video',
4
+ Audio: 'audio',
5
+ Avatar: 'avatar',
6
+ Empty: 'empty',
7
+ };
@@ -62,6 +62,11 @@ export type NeoSkeletonTextProps = {
62
62
  * Whether to add glass like transparency to the skeleton.
63
63
  */
64
64
  glass?: boolean;
65
+ /**
66
+ * Reverse the direction of the container.
67
+ * Flow from right to left by default.
68
+ */
69
+ reverse?: boolean;
65
70
  /**
66
71
  * Props for the title div.
67
72
  */
@@ -3,7 +3,13 @@
3
3
  import type { SwipeOptions } from '@dvcol/svelte-utils/swipe';
4
4
 
5
5
  import type { NeoProgressBarMarkContext, NeoProgressBarProps } from '../progress/neo-progress-bar.model.js';
6
- import type { NeoStepperBeforeEvent, NeoStepperContext, NeoStepperEvent, NeoStepperNavigations, NeoStepperProps } from './neo-stepper.model.js';
6
+ import type {
7
+ NeoStepperBeforeEvent,
8
+ NeoStepperContext,
9
+ NeoStepperEvent,
10
+ NeoStepperNavigations,
11
+ NeoStepperProps,
12
+ } from './neo-stepper.model.js';
7
13
  import type { ShadowElevation } from '../utils/shadow.utils.js';
8
14
 
9
15
  import { debounce } from '@dvcol/common-utils/common/debounce';
@@ -17,13 +23,7 @@
17
23
  import { NeoProgressDirection } from '../progress/neo-progress.model.js';
18
24
  import NeoProgressBar from '../progress/NeoProgressBar.svelte';
19
25
  import NeoProgressMark from '../progress/NeoProgressMark.svelte';
20
- import {
21
-
22
- NeoStepperNavigation,
23
-
24
- NeoStepperPlacement,
25
-
26
- } from './neo-stepper.model.js';
26
+ import { NeoStepperNavigation, NeoStepperPlacement } from './neo-stepper.model.js';
27
27
  import { toTransition, toTransitionProps } from '../utils/action.utils.js';
28
28
  import { Logger } from '../utils/logger.utils.js';
29
29
  import { coerce, DefaultShadowShallowElevation, DefaultShallowMinMaxElevation } from '../utils/shadow.utils.js';
@@ -167,7 +167,7 @@
167
167
  * This is imperative navigation, it will not check if next or previous constraints are met.
168
168
  * But, it will check if the target step is disabled.
169
169
  */
170
- const goToStep: NeoStepperContext['goToStep'] = async (
170
+ export const goTo: NeoStepperContext['goToStep'] = async (
171
171
  index: number,
172
172
  reason: NeoStepperNavigations = NeoStepperNavigation.Navigate,
173
173
  target = steps[index],
@@ -185,16 +185,16 @@
185
185
  }
186
186
  };
187
187
 
188
- const goPrevious: NeoStepperContext['goPrevious'] = async () => {
188
+ export const goPrevious: NeoStepperContext['goPrevious'] = async () => {
189
189
  if (isDisabled.previous) return;
190
- if (active > 0) return goToStep(active - 1, NeoStepperNavigation.Previous);
191
- return goToStep(steps.length - 1, NeoStepperNavigation.Previous);
190
+ if (active > 0) return goTo(active - 1, NeoStepperNavigation.Previous);
191
+ return goTo(steps.length - 1, NeoStepperNavigation.Previous);
192
192
  };
193
193
 
194
- const goNext: NeoStepperContext['goNext'] = async () => {
194
+ export const goNext: NeoStepperContext['goNext'] = async () => {
195
195
  if (isDisabled.next) return;
196
- if (active < steps.length - 1) return goToStep(active + 1, NeoStepperNavigation.Next);
197
- return goToStep(0, NeoStepperNavigation.Next);
196
+ if (active < steps.length - 1) return goTo(active + 1, NeoStepperNavigation.Next);
197
+ return goTo(0, NeoStepperNavigation.Next);
198
198
  };
199
199
 
200
200
  const isMarkDisabled = (index: number, target = steps[index]): boolean => {
@@ -238,7 +238,7 @@
238
238
  active,
239
239
  last,
240
240
 
241
- goToStep,
241
+ goToStep: goTo,
242
242
  goPrevious,
243
243
  goNext,
244
244
  });
@@ -250,14 +250,14 @@
250
250
  if (!marksRefs?.length || marksRefs.length < (marks?.length ?? 0)) return;
251
251
  return {
252
252
  start: toPixel((marksRefs[0]?.offsetWidth ?? 0) / 2),
253
- end: toPixel((marksRefs[marksRefs.length - 1]?.offsetWidth ?? 0) / 2),
253
+ end: toPixel((marksRefs.at(-1)?.offsetWidth ?? 0) / 2),
254
254
  };
255
255
  });
256
256
 
257
257
  $effect(() => {
258
258
  if (!ref) return;
259
259
  Object.assign(ref, {
260
- goTo: goToStep,
260
+ goTo,
261
261
  previous: goPrevious,
262
262
  next: goNext,
263
263
  });
@@ -276,7 +276,7 @@
276
276
  disabled={_disabled}
277
277
  readonly={_disabled}
278
278
  glass={progressProps?.glass}
279
- onclick={() => goToStep(ctx.index)}
279
+ onclick={() => goTo(ctx.index)}
280
280
  label={(ctx.index + 1)?.toString()}
281
281
  {...markProps}
282
282
  {...steps[ctx.index]?.markProps}
@@ -318,7 +318,7 @@
318
318
  label="Cancel"
319
319
  aria-label="Cancel stepper"
320
320
  title="Cancel stepper"
321
- onclick={() => goToStep(0, NeoStepperNavigation.Cancel)}
321
+ onclick={() => goTo(0, NeoStepperNavigation.Cancel)}
322
322
  transition={{ use: scale, props: { duration: quickDuration, start: 0.95 } }}
323
323
  {...buttonProps}
324
324
  {...cancelProps}
@@ -1,4 +1,11 @@
1
- import type { NeoStepperProps } from './neo-stepper.model.js';
2
- declare const NeoStepper: import("svelte").Component<NeoStepperProps, {}, "ref" | "active" | "loading">;
1
+ import type { NeoStepperContext, NeoStepperProps } from './neo-stepper.model.js';
2
+ declare const NeoStepper: import("svelte").Component<NeoStepperProps, {
3
+ /**
4
+ * This is imperative navigation, it will not check if next or previous constraints are met.
5
+ * But, it will check if the target step is disabled.
6
+ */ goTo: NeoStepperContext["goToStep"];
7
+ goPrevious: NeoStepperContext["goPrevious"];
8
+ goNext: NeoStepperContext["goNext"];
9
+ }, "loading" | "ref" | "active">;
3
10
  type NeoStepper = ReturnType<typeof NeoStepper>;
4
11
  export default NeoStepper;
@@ -1,12 +1,12 @@
1
1
  import type { SwipeOptions } from '@dvcol/svelte-utils/swipe';
2
2
  import type { TransitionProps } from '@dvcol/svelte-utils/transition';
3
- import type { NeoArrowButtonProps } from '../index.js';
4
3
  import type { Snippet } from 'svelte';
4
+ import type { NeoArrowButtonProps } from '../buttons/neo-arrow-button.model.js';
5
5
  import type { NeoButtonProps } from '../buttons/neo-button.model.js';
6
- import type { NeoIconButtonProps } from '../buttons/neo-icon-button.model.js';
7
6
  import type { NeoProgressBarProps } from '../progress/neo-progress-bar.model.js';
8
7
  import type { NeoProgressMarkProps } from '../progress/neo-progress-mark.model.js';
9
8
  import type { HTMLTransitionProps } from '../utils/action.utils.js';
9
+ import type { BorderRadiusInput } from '../utils/border.utils.js';
10
10
  import type { HTMLNeoBaseElement, HTMLRefProps, HTMLTagProps } from '../utils/html-element.utils.js';
11
11
  import type { ShadowShallowElevation, ShadowShallowElevationString } from '../utils/shadow.utils.js';
12
12
  import type { SizeInput } from '../utils/style.utils.js';
@@ -56,8 +56,8 @@ export interface NeoStepperContext<Value = unknown> {
56
56
  * But, it will check if the target step is disabled.
57
57
  *
58
58
  * @param step - index of the step to navigate to.
59
- * @param target - Optional step instance (extracted from the steps array if not provided).
60
59
  * @param reason - Optional reason for the navigation.
60
+ * @param target - Optional step instance (extracted from the steps array if not provided).
61
61
  */
62
62
  goToStep: (step: number, reason?: NeoStepperNavigations, target?: NeoStepperStep<Value>) => Promise<undefined | NeoStepperEvent<Value>>;
63
63
  /**
@@ -274,7 +274,7 @@ export type NeoStepperProps<Value = unknown, Tag extends keyof HTMLElementTagNam
274
274
  /**
275
275
  * Whether to render the stepper's buttons with rounded borders.
276
276
  */
277
- rounded?: boolean;
277
+ rounded?: BorderRadiusInput;
278
278
  /**
279
279
  * Overrides the default flex value.
280
280
  */
@@ -326,7 +326,7 @@ export type NeoStepperProps<Value = unknown, Tag extends keyof HTMLElementTagNam
326
326
  * Step options will take precedence over these props.
327
327
  * @see NeoStepperStep.cancelProps
328
328
  */
329
- cancelProps?: NeoIconButtonProps;
329
+ cancelProps?: NeoButtonProps;
330
330
  /**
331
331
  * Optional props to pass to the next button.
332
332
  *