@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
@@ -7,6 +7,7 @@
7
7
  import NeoCloseButton from '../buttons/NeoCloseButton.svelte';
8
8
  import NeoDivider from '../divider/NeoDivider.svelte';
9
9
  import { toAction, toActionProps, toTransition, toTransitionProps } from '../utils/action.utils.js';
10
+ import { computeBorderRadius } from '../utils/border.utils.js';
10
11
  import { getColorVariable } from '../utils/colors.utils.js';
11
12
  import {
12
13
  coerce,
@@ -192,6 +193,7 @@
192
193
  style:--neo-card-box-shadow={boxShadow}
193
194
  style:--neo-card-glass-blur={filter}
194
195
  style:--neo-card-spacing={spacing}
196
+ style:--neo-card-border-radius={computeBorderRadius(rounded)}
195
197
  style:justify-content={justify}
196
198
  style:align-items={align}
197
199
  style:flex
@@ -288,6 +290,16 @@
288
290
  box-shadow: var(--neo-card-box-shadow, var(--neo-box-shadow-flat));
289
291
  transition: margin 0.3s ease, background-color 0.3s ease, border-color 0.3s ease, border-radius 0.3s ease, backdrop-filter 0.3s ease, box-shadow 0.3s ease-out;
290
292
  }
293
+ .neo-card .neo-card-close {
294
+ display: flex;
295
+ flex: 0 0 auto;
296
+ align-self: flex-start;
297
+ justify-content: flex-end;
298
+ margin-left: auto;
299
+ opacity: 0;
300
+ transition: opacity 0.3s ease-out 0.15s;
301
+ --neo-btn-margin: 0.25rem;
302
+ }
291
303
  .neo-card-content {
292
304
  flex: 1 1 auto;
293
305
  overflow: auto;
@@ -364,16 +376,6 @@
364
376
  display: flex;
365
377
  align-items: center;
366
378
  }
367
- .neo-card .neo-card-close {
368
- display: flex;
369
- flex: 0 0 auto;
370
- align-self: flex-start;
371
- justify-content: flex-end;
372
- margin-left: auto;
373
- opacity: 0;
374
- transition: opacity 0.3s ease-out 0.15s;
375
- --neo-btn-margin: 0.25rem;
376
- }
377
379
  .neo-card:focus-within .neo-card-close, .neo-card:focus .neo-card-close, .neo-card:hover .neo-card-close {
378
380
  opacity: 1;
379
381
  transition: opacity 0.3s ease;
@@ -460,31 +462,31 @@
460
462
  border-radius: 0 var(--neo-card-border-radius, var(--neo-border-radius)) var(--neo-card-border-radius, var(--neo-border-radius)) 0;
461
463
  }
462
464
  .neo-card.neo-rounded {
463
- border-radius: var(--neo-card-border-radius, var(--neo-border-radius-lg));
465
+ border-radius: var(--neo-card-border-radius, var(--neo-border-radius-xxl));
464
466
  }
465
467
  .neo-card.neo-rounded .neo-card-media {
466
- border-radius: var(--neo-card-border-radius, var(--neo-border-radius-md));
468
+ border-radius: var(--neo-card-border-radius, var(--neo-border-radius-lg));
467
469
  }
468
470
  .neo-card.neo-rounded .neo-card-media.neo-cover:not(.neo-inset) {
469
- border-radius: var(--neo-card-border-radius, var(--neo-border-radius-lg));
471
+ border-radius: var(--neo-card-border-radius, var(--neo-border-radius-xxl));
470
472
  }
471
473
  .neo-card.neo-rounded .neo-card-media.neo-cover:not(.neo-inset):not(:only-child) {
472
- border-radius: var(--neo-card-border-radius, var(--neo-border-radius-lg)) var(--neo-card-border-radius, var(--neo-border-radius-lg)) 0 0;
474
+ border-radius: var(--neo-card-border-radius, var(--neo-border-radius-xxl)) var(--neo-card-border-radius, var(--neo-border-radius-xxl)) 0 0;
473
475
  }
474
476
  .neo-card.neo-rounded .neo-card-segment:not(.neo-card-media, :only-child):first-child {
475
- border-radius: var(--neo-card-border-radius, var(--neo-border-radius-lg)) var(--neo-card-border-radius, var(--neo-border-radius-lg)) 0 0;
477
+ border-radius: var(--neo-card-border-radius, var(--neo-border-radius-xxl)) var(--neo-card-border-radius, var(--neo-border-radius-xxl)) 0 0;
476
478
  }
477
479
  .neo-card.neo-rounded .neo-card-segment:not(.neo-card-media, :only-child):last-child {
478
- border-radius: 0 0 var(--neo-card-border-radius, var(--neo-border-radius-lg)) var(--neo-card-border-radius, var(--neo-border-radius-lg));
480
+ border-radius: 0 0 var(--neo-card-border-radius, var(--neo-border-radius-xxl)) var(--neo-card-border-radius, var(--neo-border-radius-xxl));
479
481
  }
480
482
  .neo-card.neo-rounded.neo-horizontal .neo-card-segment:not(.neo-card-media, :only-child):first-child {
481
- border-radius: var(--neo-card-border-radius, var(--neo-border-radius-lg)) 0 0 var(--neo-card-border-radius, var(--neo-border-radius-lg));
483
+ border-radius: var(--neo-card-border-radius, var(--neo-border-radius-xxl)) 0 0 var(--neo-card-border-radius, var(--neo-border-radius-xxl));
482
484
  }
483
485
  .neo-card.neo-rounded.neo-horizontal .neo-card-segment:not(.neo-card-media, :only-child):last-child {
484
- border-radius: 0 var(--neo-card-border-radius, var(--neo-border-radius-lg)) var(--neo-card-border-radius, var(--neo-border-radius-lg)) 0;
486
+ border-radius: 0 var(--neo-card-border-radius, var(--neo-border-radius-xxl)) var(--neo-card-border-radius, var(--neo-border-radius-xxl)) 0;
485
487
  }
486
488
  .neo-card.neo-rounded.neo-horizontal .neo-card-media.neo-cover:not(.neo-inset, :only-child) {
487
- border-radius: var(--neo-card-border-radius, var(--neo-border-radius-lg)) 0 0 var(--neo-card-border-radius, var(--neo-border-radius-lg));
489
+ border-radius: var(--neo-card-border-radius, var(--neo-border-radius-xxl)) 0 0 var(--neo-card-border-radius, var(--neo-border-radius-xxl));
488
490
  }
489
491
  .neo-card.neo-skeleton {
490
492
  box-shadow: var(--neo-box-shadow-flat);
@@ -496,7 +498,7 @@
496
498
  background-clip: padding-box;
497
499
  border-color: var(--neo-skeleton-color);
498
500
  opacity: 1;
499
- transition: background-color 1s ease, color 0.3333333333s ease, border-color 1s ease, opacity 1s ease;
501
+ transition: border-radius 0.3333333333s ease, background-color 1s ease, color 0.3333333333s ease, border-color 1s ease, opacity 1s ease;
500
502
  animation: skeleton 3s var(--neo-transition-skeleton) infinite;
501
503
  animation-delay: 1s;
502
504
  }
@@ -1,8 +1,9 @@
1
- import type { NeoDividerProps } from '../index.js';
2
1
  import type { Snippet } from 'svelte';
3
2
  import type { NeoButtonProps } from '../buttons/neo-button.model.js';
4
3
  import type { NeoIconButtonProps } from '../buttons/neo-icon-button.model.js';
4
+ import type { NeoDividerProps } from '../divider/neo-divider.model.js';
5
5
  import type { HTMLActionProps } from '../utils/action.utils.js';
6
+ import type { BorderRadiusInput } from '../utils/border.utils.js';
6
7
  import type { Color } from '../utils/colors.utils.js';
7
8
  import type { HTMLFlexProps, HTMLNeoBaseElement, HTMLRefProps, HTMLTagProps } from '../utils/html-element.utils.js';
8
9
  import type { BlurElevation, BlurElevationString, ShadowElevation, ShadowElevationString, ShadowHoverElevation, ShadowHoverElevationsString } from '../utils/shadow.utils.js';
@@ -62,7 +63,7 @@ export interface NeoCardContext {
62
63
  /**
63
64
  * If true, the card will have a rounded border.
64
65
  */
65
- rounded?: boolean;
66
+ rounded?: BorderRadiusInput;
66
67
  /**
67
68
  * If true, the card will be displayed with a glass effect.
68
69
  */
@@ -2,6 +2,7 @@
2
2
  import type { NeoAccordionProps } from './neo-accordion.model.js';
3
3
 
4
4
  import NeoCollapseGroup from './NeoCollapseGroup.svelte';
5
+ import { computeBorderRadius } from '../utils/border.utils.js';
5
6
  import { getColorVariable } from '../utils/colors.utils.js';
6
7
  import { coerce, computeGlassFilter, computeHoverShadowElevation, computeShadowElevation, isShadowFlat, parseBlur } from '../utils/shadow.utils.js';
7
8
  import { toSize } from '../utils/style.utils.js';
@@ -84,6 +85,7 @@
84
85
  style:--neo-accordion-box-shadow={boxShadow}
85
86
  style:--neo-accordion-glass-blur={filter}
86
87
  style:--neo-accordion-color={getColorVariable(color)}
88
+ style:--neo-accordion-border-radius={computeBorderRadius(rounded)}
87
89
  {...rest}
88
90
  >
89
91
  {#if group}
@@ -122,7 +124,7 @@
122
124
  box-shadow: var(--neo-accordion-box-shadow-hover, var(--neo-accordion-box-shadow));
123
125
  }
124
126
  .neo-accordion.neo-rounded {
125
- border-radius: var(--neo-accordion-border-radius, var(--neo-border-radius-lg));
127
+ border-radius: var(--neo-accordion-border-radius, var(--neo-border-radius-xxl));
126
128
  }
127
129
  .neo-accordion.neo-flat-hover:hover:not(.neo-borderless), .neo-accordion.neo-flat-hover:focus-within:not(.neo-borderless), .neo-accordion.neo-flat:not(.neo-borderless, .neo-hover-flat:hover, .neo-hover-flat:focus-within) {
128
130
  border-color: var(--neo-accordion-border-color, var(--neo-border-color));
@@ -59,12 +59,12 @@
59
59
 
60
60
  const context = $derived<NeoCollapseContext>({ id, open, trigger, triggerId, horizontal, disabled, readonly, standalone, divider });
61
61
 
62
- const toggle = (state = !open) => {
62
+ export function toggle(state = !open) {
63
63
  if (disabled || readonly) return;
64
64
  open = state;
65
65
  if (standalone) return;
66
66
  group?.update(id);
67
- };
67
+ }
68
68
 
69
69
  $effect(() => {
70
70
  if (!ref) return;
@@ -1,4 +1,6 @@
1
1
  import type { NeoCollapseProps } from './neo-collapse.model.js';
2
- declare const NeoCollapse: import("svelte").Component<NeoCollapseProps, {}, "ref" | "open" | "triggerRef">;
2
+ declare const NeoCollapse: import("svelte").Component<NeoCollapseProps, {
3
+ toggle: (state?: boolean) => void;
4
+ }, "ref" | "open" | "triggerRef">;
3
5
  type NeoCollapse = ReturnType<typeof NeoCollapse>;
4
6
  export default NeoCollapse;
@@ -1,5 +1,6 @@
1
1
  import type { Snippet } from 'svelte';
2
2
  import type { NeoCollapseGroupProps } from './neo-collapse-group.model.js';
3
+ import type { BorderRadiusInput } from '../utils/border.utils.js';
3
4
  import type { Color } from '../utils/colors.utils.js';
4
5
  import type { HTMLNeoBaseElement } from '../utils/html-element.utils.js';
5
6
  import type { BlurElevation, BlurElevationString, ShadowElevation, ShadowElevationString, ShadowHoverElevation, ShadowHoverElevationsString } from '../utils/shadow.utils.js';
@@ -60,7 +61,7 @@ export type NeoAccordionProps<Tag extends keyof HTMLElementTagNameMap = 'div'> =
60
61
  /**
61
62
  * If true, the accordion will have a rounded border.
62
63
  */
63
- rounded?: boolean;
64
+ rounded?: BorderRadiusInput;
64
65
  /**
65
66
  * If true, negative elevation (< 0) will be displayed as pressed instead of inset.
66
67
  */
@@ -15,8 +15,12 @@
15
15
  overflow,
16
16
  overflowX,
17
17
  overflowY,
18
+
19
+ // Size
20
+ ratio,
18
21
  width,
19
22
  height,
23
+ reverse,
20
24
 
21
25
  // Transition
22
26
  in: inAction,
@@ -36,11 +40,13 @@
36
40
  <svelte:element
37
41
  this={tag}
38
42
  class:neo-transition-container={true}
43
+ class:neo-reverse={reverse}
39
44
  style:overflow
40
45
  style:overflow-x={overflowX}
41
46
  style:overflow-y={overflowY}
42
47
  style:width
43
48
  style:height
49
+ style:aspect-ratio={ratio}
44
50
  out:outFn={outProps}
45
51
  in:inFn={inProps}
46
52
  {...rest}
@@ -62,4 +68,8 @@
62
68
  }
63
69
  .neo-transition-container :global(> *) {
64
70
  grid-area: transition;
71
+ }
72
+ .neo-transition-container.neo-reverse {
73
+ justify-content: flex-end;
74
+ text-align: end;
65
75
  }</style>
@@ -27,6 +27,10 @@ export type NeoTransitionContainerProps<Tag extends keyof HTMLElementTagNameMap
27
27
  * Vertical overflow style (overflow-x).
28
28
  */
29
29
  overflowY?: CSSStyleDeclaration['overflowY'];
30
+ /**
31
+ * Optional aspect ratio for the container.
32
+ */
33
+ ratio?: CSSStyleDeclaration['aspectRatio'];
30
34
  /**
31
35
  * Width of the container.
32
36
  */
@@ -35,4 +39,9 @@ export type NeoTransitionContainerProps<Tag extends keyof HTMLElementTagNameMap
35
39
  * Height of the container.
36
40
  */
37
41
  height?: CSSStyleDeclaration['height'];
42
+ /**
43
+ * Reverse the direction of the container.
44
+ * Flow from right to left by default.
45
+ */
46
+ reverse?: boolean;
38
47
  } & HTMLTransitionProps & HTMLNeoBaseElement<HTMLElementTagNameMap[Tag]>;
@@ -1,4 +1,4 @@
1
1
  import type { NeoCursorProps } from './neo-cursor.model.js';
2
- declare const NeoCursor: import("svelte").Component<NeoCursorProps, {}, "ref" | "cursor" | "pointer" | "contact" | "position" | "snapping" | "touching" | "snapTarget">;
2
+ declare const NeoCursor: import("svelte").Component<NeoCursorProps, {}, "ref" | "cursor" | "position" | "pointer" | "contact" | "snapping" | "touching" | "snapTarget">;
3
3
  type NeoCursor = ReturnType<typeof NeoCursor>;
4
4
  export default NeoCursor;
@@ -1,6 +1,7 @@
1
1
  <script lang="ts">
2
2
  import type { NeoDividerProps } from './neo-divider.model.js';
3
3
 
4
+ import { computeBorderRadius } from '../utils/border.utils.js';
4
5
  import { coerce, computeShadowElevation } from '../utils/shadow.utils.js';
5
6
 
6
7
  const {
@@ -56,6 +57,7 @@
56
57
  style:--neo-divider-margin={margin}
57
58
  style:--neo-divider-minimum={minimum}
58
59
  style:--neo-divider-box-shadow={boxShadow}
60
+ style:--neo-divider-border-radius={computeBorderRadius(rounded)}
59
61
  {...rest}
60
62
  >
61
63
  &nbsp;
@@ -75,7 +77,7 @@
75
77
  user-select: none;
76
78
  }
77
79
  .neo-divider.neo-rounded {
78
- border-radius: var(--neo-divider-border-radius, var(--neo-border-radius-lg));
80
+ border-radius: var(--neo-divider-border-radius, var(--neo-border-radius-xxl));
79
81
  }
80
82
  .neo-divider.neo-vertical {
81
83
  width: max(var(--neo-divider-minimum), var(--neo-divider-width, 1px) - var(--neo-divider-margin-inline, var(--neo-divider-margin, 0px)) * 2);
@@ -95,7 +97,7 @@
95
97
  background-clip: padding-box;
96
98
  border-color: var(--neo-skeleton-color);
97
99
  opacity: 1;
98
- transition: background-color 1s ease, color 0.3333333333s ease, border-color 1s ease, opacity 1s ease;
100
+ transition: border-radius 0.3333333333s ease, background-color 1s ease, color 0.3333333333s ease, border-color 1s ease, opacity 1s ease;
99
101
  animation: skeleton 3s var(--neo-transition-skeleton) infinite;
100
102
  animation-delay: 1s;
101
103
  }
@@ -1,3 +1,4 @@
1
+ import type { BorderRadiusInput } from '../utils/border.utils.js';
1
2
  import type { HTMLNeoBaseElement } from '../utils/html-element.utils.js';
2
3
  import type { ShadowElevation, ShadowElevationString } from '../utils/shadow.utils.js';
3
4
  export type NeoDividerElevation = ShadowElevation | ShadowElevationString;
@@ -39,5 +40,5 @@ export type NeoDividerProps = {
39
40
  /**
40
41
  * If true, the divider will have a rounded borders.
41
42
  */
42
- rounded?: boolean;
43
+ rounded?: BorderRadiusInput;
43
44
  } & HTMLNeoBaseElement;
@@ -158,7 +158,7 @@
158
158
  .neo-confirm-content:has(> .neo-confirm-content-close) {
159
159
  margin-top: 0.75rem;
160
160
  }
161
- .neo-confirm-content-close {
161
+ .neo-confirm-content-close :global(> .neo-confirm-close .neo-confirm-control-close-button) {
162
162
  float: right;
163
163
  margin-top: -0.75rem;
164
164
  }
@@ -169,11 +169,11 @@
169
169
  }
170
170
  .neo-confirm-header .neo-confirm-title {
171
171
  flex: 1 1 auto;
172
- margin-top: var(--neo-gap-xxxs);
172
+ margin-top: var(--neo-gap-3xs);
173
173
  margin-bottom: 1rem;
174
174
  }
175
175
  .neo-confirm-close {
176
- --neo-btn-padding-empty: var(--neo-gap-xxxs);
176
+ --neo-btn-padding-empty: var(--neo-gap-3xs);
177
177
  --neo-btn-margin: 0;
178
178
  align-self: flex-start;
179
179
  opacity: 0.8;
@@ -187,10 +187,10 @@
187
187
  gap: var(--neo-gap-sm);
188
188
  justify-content: flex-end;
189
189
  margin-top: var(--neo-gap-sm);
190
- margin-bottom: var(--neo-gap-tiny);
190
+ margin-bottom: var(--neo-gap-4xs);
191
191
  opacity: 0.8;
192
192
  transition: opacity 0.3s ease;
193
- padding-inline: var(--neo-gap-xxxs);
193
+ padding-inline: var(--neo-gap-3xs);
194
194
  --neo-btn-margin: 0;
195
195
  }
196
196
  .neo-confirm:focus-within .neo-confirm-control,
@@ -1,4 +1,4 @@
1
1
  import type { NeoConfirmProps } from './neo-confirm.model.js';
2
- declare const NeoConfirm: import("svelte").Component<NeoConfirmProps, {}, "disabled" | "loading">;
2
+ declare const NeoConfirm: import("svelte").Component<NeoConfirmProps, {}, "loading" | "disabled">;
3
3
  type NeoConfirm = ReturnType<typeof NeoConfirm>;
4
4
  export default NeoConfirm;
@@ -127,7 +127,7 @@
127
127
  --neo-stepper-mark-bg-color: var(--neo-background-color-backdrop-filled);
128
128
  }
129
129
  .neo-floating-stepper-close {
130
- --neo-btn-padding-empty: var(--neo-gap-xxxs);
130
+ --neo-btn-padding-empty: var(--neo-gap-3xs);
131
131
  --neo-btn-margin: 0;
132
132
  opacity: 0.8;
133
133
  transition: opacity 0.3s ease;
@@ -1,4 +1,4 @@
1
1
  import type { NeoFloatingStepperProps } from './neo-floating-stepper.model.js';
2
- declare const NeoFloatingStepper: import("svelte").Component<NeoFloatingStepperProps, {}, "ref" | "active" | "loading">;
2
+ declare const NeoFloatingStepper: import("svelte").Component<NeoFloatingStepperProps, {}, "loading" | "ref" | "active">;
3
3
  type NeoFloatingStepper = ReturnType<typeof NeoFloatingStepper>;
4
4
  export default NeoFloatingStepper;
@@ -124,6 +124,7 @@
124
124
  cursor: grab;
125
125
  transition: opacity 0.3s ease-in;
126
126
  appearance: none;
127
+ touch-action: none;
127
128
  }
128
129
  .neo-handle:active {
129
130
  cursor: grabbing;
@@ -137,8 +138,8 @@
137
138
  .neo-handle-group {
138
139
  position: relative;
139
140
  display: flex;
141
+ flex: 1 1 auto;
140
142
  width: 100%;
141
- height: 100%;
142
143
  padding: var(--neo-handle-group-margin-top, var(--neo-handle-group-computed-padding-top, 0)) var(--neo-handle-group-margin-right, var(--neo-handle-group-computed-padding-right, 0)) var(--neo-handle-group-margin-bottom, var(--neo-handle-group-computed-padding-bottom, 0)) var(--neo-handle-group-margin-left, var(--neo-handle-group-computed-padding-left, 0));
143
144
  }
144
145
  .neo-handle :global(> .neo-divider) {
@@ -3,6 +3,7 @@ import type { MouseEventHandler } from 'svelte/elements';
3
3
  import type { NeoArrowButtonProps } from '../../buttons/neo-arrow-button.model.js';
4
4
  import type { NeoButtonProps } from '../../buttons/neo-button.model.js';
5
5
  import type { NeoIconButtonProps } from '../../buttons/neo-icon-button.model.js';
6
+ import type { BorderRadiusInput } from '../../utils/border.utils.js';
6
7
  import type { HTMLNeoBaseElement, HTMLTagProps } from '../../utils/html-element.utils.js';
7
8
  export type NeoConfirmProps = {
8
9
  /**
@@ -41,7 +42,7 @@ export type NeoConfirmProps = {
41
42
  /**
42
43
  * Whether to style the buttons as rounded.
43
44
  */
44
- rounded?: boolean;
45
+ rounded?: BorderRadiusInput;
45
46
  /**
46
47
  * Event Handlers that fires on close.
47
48
  */
@@ -7,7 +7,7 @@ export type NeoFloatingStepperProps = {
7
7
  /**
8
8
  * Element(s) to render inside the header once open.
9
9
  */
10
- header?: Snippet<[NeoStepperContext]>;
10
+ header?: string | Snippet<[NeoStepperContext]>;
11
11
  /**
12
12
  * Whether the stepper show a close button shown.
13
13
  *
@@ -1,7 +1,59 @@
1
1
  import type { UseFloatingOptions } from '@skeletonlabs/floating-ui-svelte';
2
- export type NeoPlacement = UseFloatingOptions['placement'];
2
+ export type NeoPlacement = NonNullable<UseFloatingOptions['placement']>;
3
3
  export type NeoTooltipPlacement = NeoPlacement | 'auto';
4
4
  export type NeoDialogPlacement = NeoPlacement | 'center';
5
- export declare const NeoPlacements: Record<string, NeoPlacement>;
6
- export declare const NeoTooltipPlacements: Record<string, NeoTooltipPlacement>;
7
- export declare const NeoDialogPlacements: Record<string, NeoDialogPlacement>;
5
+ export declare const NeoPlacements: {
6
+ readonly Top: "top";
7
+ readonly TopStart: "top-start";
8
+ readonly TopEnd: "top-end";
9
+ readonly Bottom: "bottom";
10
+ readonly BottomStart: "bottom-start";
11
+ readonly BottomEnd: "bottom-end";
12
+ readonly Left: "left";
13
+ readonly LeftStart: "left-start";
14
+ readonly LeftEnd: "left-end";
15
+ readonly Right: "right";
16
+ readonly RightStart: "right-start";
17
+ readonly RightEnd: "right-end";
18
+ };
19
+ export declare const NeoTooltipPlacements: {
20
+ readonly Auto: "auto";
21
+ readonly Top: "top";
22
+ readonly TopStart: "top-start";
23
+ readonly TopEnd: "top-end";
24
+ readonly Bottom: "bottom";
25
+ readonly BottomStart: "bottom-start";
26
+ readonly BottomEnd: "bottom-end";
27
+ readonly Left: "left";
28
+ readonly LeftStart: "left-start";
29
+ readonly LeftEnd: "left-end";
30
+ readonly Right: "right";
31
+ readonly RightStart: "right-start";
32
+ readonly RightEnd: "right-end";
33
+ };
34
+ export declare const NeoDialogPlacements: {
35
+ readonly Center: "center";
36
+ readonly Top: "top";
37
+ readonly TopStart: "top-start";
38
+ readonly TopEnd: "top-end";
39
+ readonly Bottom: "bottom";
40
+ readonly BottomStart: "bottom-start";
41
+ readonly BottomEnd: "bottom-end";
42
+ readonly Left: "left";
43
+ readonly LeftStart: "left-start";
44
+ readonly LeftEnd: "left-end";
45
+ readonly Right: "right";
46
+ readonly RightStart: "right-start";
47
+ readonly RightEnd: "right-end";
48
+ };
49
+ export declare const NeoNotificationPlacements: {
50
+ readonly Top: "top";
51
+ readonly TopStart: "top-start";
52
+ readonly TopEnd: "top-end";
53
+ readonly Bottom: "bottom";
54
+ readonly BottomStart: "bottom-start";
55
+ readonly BottomEnd: "bottom-end";
56
+ };
57
+ export type NeoNotificationPlacement = (typeof NeoNotificationPlacements)[keyof typeof NeoNotificationPlacements];
58
+ export declare function reversePlacement(placement?: NeoTooltipPlacement): NeoTooltipPlacement | undefined;
59
+ export declare function invertPlacement(placement?: NeoTooltipPlacement): NeoTooltipPlacement | undefined;
@@ -20,3 +20,25 @@ export const NeoDialogPlacements = {
20
20
  ...NeoPlacements,
21
21
  Center: 'center',
22
22
  };
23
+ export const NeoNotificationPlacements = {
24
+ Top: 'top',
25
+ TopStart: 'top-start',
26
+ TopEnd: 'top-end',
27
+ Bottom: 'bottom',
28
+ BottomStart: 'bottom-start',
29
+ BottomEnd: 'bottom-end',
30
+ };
31
+ export function reversePlacement(placement) {
32
+ if (placement?.startsWith('right'))
33
+ return placement?.replace('right', 'left');
34
+ if (placement?.startsWith('left'))
35
+ return placement?.replace('left', 'right');
36
+ return placement;
37
+ }
38
+ export function invertPlacement(placement) {
39
+ if (placement?.startsWith('top'))
40
+ return placement?.replace('top', 'bottom');
41
+ if (placement?.startsWith('bottom'))
42
+ return placement?.replace('bottom', 'top');
43
+ return placement;
44
+ }
@@ -24,6 +24,7 @@
24
24
  import { getNeoPortalContext } from '../portal/neo-portal-context.svelte.js';
25
25
  import NeoPortal from '../portal/NeoPortal.svelte';
26
26
  import { toAction, toActionProps, toTransition, toTransitionProps } from '../../utils/action.utils.js';
27
+ import { computeBorderRadius } from '../../utils/border.utils.js';
27
28
  import { getColorVariable } from '../../utils/colors.utils.js';
28
29
  import { coerce, computeGlassFilter, computeShadowElevation, PositiveMinMaxElevation } from '../../utils/shadow.utils.js';
29
30
  import { toSize } from '../../utils/style.utils.js';
@@ -430,6 +431,7 @@
430
431
  style:--neo-dialog-padding={padding}
431
432
  style:--neo-dialog-elevation={elevation}
432
433
  style:--neo-dialog-safe-margin="{movable.margin ?? 0}px"
434
+ style:--neo-dialog-border-radius={computeBorderRadius(rounded)}
433
435
  {...dialogHandler}
434
436
  >
435
437
  <NeoHandle
@@ -449,7 +451,6 @@
449
451
  </NeoPortal>
450
452
 
451
453
  <style>.neo-dialog {
452
- z-index: var(--neo-dialog-z-index, calc(var(--neo-z-index-layer-ui, 1000) + var(--neo-dialog-elevation, 1)));
453
454
  color: var(--neo-dialog-color, inherit);
454
455
  background-color: var(--neo-dialog-bg-color, var(--neo-glass-background-color));
455
456
  border: var(--neo-border-width, 1px) solid var(--neo-dialog-border-color, var(--neo-glass-background-color));
@@ -459,16 +460,7 @@
459
460
  box-shadow: var(--neo-dialog-box-shadow, var(--neo-glass-box-shadow-raised-1));
460
461
  backdrop-filter: var(--neo-dialog-content-filter, var(--neo-blur-3));
461
462
  transition: box-shadow 0.3s ease-out, backdrop-filter 0.3s ease, border-radius 0.3s ease, border-color 0.3s ease, padding 0.3s ease;
462
- display: flex;
463
- box-sizing: border-box;
464
- width: fit-content;
465
- max-width: 100%;
466
- height: fit-content;
467
- max-height: 100%;
468
- margin: var(--neo-dialog-margin, 0);
469
- padding: var(--neo-dialog-padding, var(--neo-gap-xs) var(--neo-gap));
470
- overflow: auto;
471
- outline: none;
463
+ z-index: var(--neo-dialog-z-index, calc(var(--neo-z-index-layer-ui, 1000) + var(--neo-dialog-elevation, 1)));
472
464
  }
473
465
  .neo-dialog.neo-tinted {
474
466
  background-color: var(--neo-dialog-bg-color, var(--neo-glass-background-color-tinted));
@@ -484,13 +476,26 @@
484
476
  border-color: transparent;
485
477
  }
486
478
  .neo-dialog.neo-rounded {
487
- border-radius: var(--neo-dialog-border-radius, var(--neo-border-radius-lg));
479
+ border-radius: var(--neo-dialog-border-radius, var(--neo-dialog-border-radius-rounded, var(--neo-border-radius-xxl)));
480
+ }
481
+ .neo-dialog {
482
+ display: flex;
483
+ box-sizing: border-box;
484
+ width: fit-content;
485
+ max-width: 100%;
486
+ height: fit-content;
487
+ max-height: 100%;
488
+ margin: var(--neo-dialog-margin, 0);
489
+ padding: var(--neo-dialog-padding, var(--neo-gap-xs) var(--neo-gap));
490
+ overflow: auto;
491
+ outline: none;
488
492
  }
489
493
  .neo-dialog.neo-movable {
490
494
  will-change: translate;
491
495
  }
492
496
  .neo-dialog.neo-movable.neo-handle {
493
497
  cursor: grab;
498
+ touch-action: none;
494
499
  }
495
500
  .neo-dialog.neo-movable.neo-handle:active, .neo-dialog.neo-movable.neo-handle[data-moving=true] {
496
501
  cursor: grabbing;
@@ -550,6 +555,7 @@
550
555
  }
551
556
  .neo-dialog[data-modal=true] {
552
557
  position: fixed;
558
+ margin: var(--neo-dialog-margin, var(--neo-gap));
553
559
  }
554
560
  .neo-dialog[data-modal=true][data-placement=center] {
555
561
  inset: 0;
@@ -558,22 +564,18 @@
558
564
  .neo-dialog[data-modal=true][data-placement^=top], .neo-dialog[data-modal=true][data-placement=right-start], .neo-dialog[data-modal=true][data-placement=left-start] {
559
565
  top: 0;
560
566
  bottom: auto;
561
- margin-top: var(--neo-dialog-safe-margin, var(--neo-gap));
562
567
  }
563
568
  .neo-dialog[data-modal=true][data-placement^=bottom], .neo-dialog[data-modal=true][data-placement=right-end], .neo-dialog[data-modal=true][data-placement=left-end] {
564
569
  top: auto;
565
570
  bottom: 0;
566
- margin-bottom: var(--neo-dialog-safe-margin, var(--neo-gap));
567
571
  }
568
572
  .neo-dialog[data-modal=true][data-placement^=left], .neo-dialog[data-modal=true][data-placement=bottom-start], .neo-dialog[data-modal=true][data-placement=top-start] {
569
573
  right: auto;
570
574
  left: 0;
571
- margin-left: var(--neo-dialog-safe-margin, var(--neo-gap));
572
575
  }
573
576
  .neo-dialog[data-modal=true][data-placement^=right], .neo-dialog[data-modal=true][data-placement=bottom-end], .neo-dialog[data-modal=true][data-placement=top-end] {
574
577
  right: 0;
575
578
  left: auto;
576
- margin-right: var(--neo-dialog-safe-margin, var(--neo-gap));
577
579
  }
578
580
  .neo-dialog[data-modal=true][data-placement=right], .neo-dialog[data-modal=true][data-placement=left] {
579
581
  top: 0;
@@ -584,8 +586,8 @@
584
586
  .neo-dialog[data-modal=true][data-placement=top], .neo-dialog[data-modal=true][data-placement=bottom] {
585
587
  right: 0;
586
588
  left: 0;
587
- margin-right: var(--neo-dialog-margin-bottom, auto);
588
- margin-left: var(--neo-dialog-margin-top, auto);
589
+ margin-right: var(--neo-dialog-margin-right, auto);
590
+ margin-left: var(--neo-dialog-margin-left, auto);
589
591
  }
590
592
  .neo-dialog[data-modal=true].neo-slide {
591
593
  opacity: var(--neo-slide-opacity-start, 0);
@@ -707,13 +709,13 @@
707
709
  }
708
710
  }
709
711
 
710
- :global(html:has(.neo-dialog.neo-body-scroll-disabled[data-open="true"])),
711
- :global(body:has(.neo-dialog.neo-body-scroll-disabled[data-open="true"])) {
712
+ :global(html:has(.neo-dialog.neo-body-scroll-disabled[data-open='true'])),
713
+ :global(body:has(.neo-dialog.neo-body-scroll-disabled[data-open='true'])) {
712
714
  overflow: hidden !important;
713
715
  overscroll-behavior: contain;
714
716
  }
715
717
 
716
- :global(body.neo-scroll-lock:has(.neo-dialog.neo-body-scroll-disabled[data-open="true"])) {
718
+ :global(body.neo-scroll-lock:has(.neo-dialog.neo-body-scroll-disabled[data-open='true'])) {
717
719
  position: fixed;
718
720
  top: var(--neo-dialog-scroll-offset-y, 0);
719
721
  left: var(--neo-dialog-scroll-offset-x, 0);
@@ -1,4 +1,4 @@
1
1
  import type { NeoDialogProps } from './neo-dialog.model.js';
2
- declare const NeoDialog: import("svelte").Component<NeoDialogProps, {}, "ref" | "placement" | "open" | "outside" | "modal" | "moved" | "returnValue">;
2
+ declare const NeoDialog: import("svelte").Component<NeoDialogProps, {}, "ref" | "placement" | "open" | "returnValue" | "outside" | "modal" | "moved">;
3
3
  type NeoDialog = ReturnType<typeof NeoDialog>;
4
4
  export default NeoDialog;
@@ -1,4 +1,4 @@
1
1
  import type { NeoDialogConfirmProps } from './neo-dialog-confirm.model.js';
2
- declare const NeoDialogConfirm: import("svelte").Component<NeoDialogConfirmProps, {}, "ref" | "disabled" | "loading" | "placement" | "open" | "outside" | "modal" | "moved" | "returnValue">;
2
+ declare const NeoDialogConfirm: import("svelte").Component<NeoDialogConfirmProps, {}, "loading" | "ref" | "disabled" | "placement" | "open" | "returnValue" | "outside" | "modal" | "moved">;
3
3
  type NeoDialogConfirm = ReturnType<typeof NeoDialogConfirm>;
4
4
  export default NeoDialogConfirm;
@@ -1,4 +1,4 @@
1
1
  import type { NeoDialogStepperProps } from './neo-dialog-stepper.model.js';
2
- declare const NeoDialogStepper: import("svelte").Component<NeoDialogStepperProps, {}, "ref" | "active" | "loading" | "placement" | "open" | "outside" | "modal" | "moved" | "returnValue" | "dialogRef">;
2
+ declare const NeoDialogStepper: import("svelte").Component<NeoDialogStepperProps, {}, "loading" | "ref" | "active" | "placement" | "open" | "returnValue" | "outside" | "modal" | "moved" | "dialogRef">;
3
3
  type NeoDialogStepper = ReturnType<typeof NeoDialogStepper>;
4
4
  export default NeoDialogStepper;