flowbite-svelte 2.0.0-next.0 → 2.0.0-next.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (245) hide show
  1. package/dist/accordion/theme.js +1 -1
  2. package/dist/command-palette/CommandPalette.svelte +1 -1
  3. package/dist/command-palette/CommandPalette.svelte.d.ts +1 -1
  4. package/dist/context.d.ts +3 -1
  5. package/dist/context.js +3 -0
  6. package/dist/datepicker/Datepicker.svelte +6 -2
  7. package/dist/datepicker/theme.js +5 -5
  8. package/dist/footer/theme.js +1 -1
  9. package/dist/forms/floating-label/FloatingLabelInput.svelte +6 -3
  10. package/dist/forms/input-addon/InputAddon.svelte +1 -1
  11. package/dist/forms/input-addon/InputAddon.svelte.d.ts +1 -1
  12. package/dist/forms/input-field/Input.svelte +14 -33
  13. package/dist/forms/label/Label.svelte +1 -1
  14. package/dist/forms/label/Label.svelte.d.ts +1 -1
  15. package/dist/forms/radio/Radio.svelte +4 -15
  16. package/dist/forms/range/Range.svelte +1 -1
  17. package/dist/forms/range/Range.svelte.d.ts +1 -1
  18. package/dist/forms/search/Search.svelte +8 -21
  19. package/dist/forms/search/Search.svelte.d.ts +1 -4
  20. package/dist/forms/select/MultiSelect.svelte +4 -11
  21. package/dist/forms/select/Select.svelte +4 -14
  22. package/dist/forms/tags/Tags.svelte +13 -32
  23. package/dist/forms/tags/Tags.svelte.d.ts +2 -4
  24. package/dist/forms/textarea/Textarea.svelte +12 -46
  25. package/dist/forms/textarea/Textarea.svelte.d.ts +1 -9
  26. package/dist/forms/timepicker/Timepicker.svelte +4 -4
  27. package/dist/forms/timepicker/Timepicker.svelte.d.ts +1 -1
  28. package/dist/forms/toggle/Toggle.svelte +6 -15
  29. package/dist/forms/toggle/Toggle.svelte.d.ts +1 -3
  30. package/dist/gallery/Gallery.svelte +5 -13
  31. package/dist/gallery/Gallery.svelte.d.ts +1 -2
  32. package/dist/gallery/theme.js +1 -1
  33. package/dist/indicator/Indicator.svelte +1 -1
  34. package/dist/indicator/Indicator.svelte.d.ts +1 -1
  35. package/dist/kanban/KanbanCard.svelte +1 -1
  36. package/dist/kanban/KanbanCard.svelte.d.ts +1 -1
  37. package/dist/kbd/Kbd.svelte +1 -1
  38. package/dist/kbd/Kbd.svelte.d.ts +1 -1
  39. package/dist/list-group/Listgroup.svelte +20 -8
  40. package/dist/list-group/Listgroup.svelte.d.ts +2 -3
  41. package/dist/list-group/ListgroupItem.svelte +14 -10
  42. package/dist/list-group/ListgroupItem.svelte.d.ts +4 -2
  43. package/dist/list-group/theme.d.ts +87 -29
  44. package/dist/list-group/theme.js +17 -18
  45. package/dist/mega-menu/MegaMenu.svelte +7 -16
  46. package/dist/mega-menu/MegaMenu.svelte.d.ts +1 -3
  47. package/dist/modal/Modal.svelte +7 -22
  48. package/dist/modal/Modal.svelte.d.ts +1 -5
  49. package/dist/modal/theme.d.ts +1 -0
  50. package/dist/modal/theme.js +2 -1
  51. package/dist/navbar/Menu.svelte +3 -4
  52. package/dist/navbar/Menu.svelte.d.ts +1 -2
  53. package/dist/navbar/NavBrand.svelte +1 -1
  54. package/dist/navbar/NavBrand.svelte.d.ts +1 -1
  55. package/dist/navbar/NavContainer.svelte +1 -1
  56. package/dist/navbar/NavContainer.svelte.d.ts +1 -1
  57. package/dist/navbar/NavHamburger.svelte +10 -16
  58. package/dist/navbar/NavHamburger.svelte.d.ts +1 -3
  59. package/dist/navbar/NavLi.svelte +8 -4
  60. package/dist/navbar/NavLi.svelte.d.ts +1 -1
  61. package/dist/navbar/NavUl.svelte +14 -31
  62. package/dist/navbar/NavUl.svelte.d.ts +1 -4
  63. package/dist/navbar/Navbar.svelte +9 -5
  64. package/dist/navbar/Navbar.svelte.d.ts +2 -2
  65. package/dist/navbar/index.d.ts +1 -0
  66. package/dist/navbar/index.js +1 -0
  67. package/dist/navbar/theme.d.ts +32 -1
  68. package/dist/navbar/theme.js +4 -1
  69. package/dist/pagination/Pagination.svelte +1 -1
  70. package/dist/pagination/Pagination.svelte.d.ts +1 -1
  71. package/dist/pagination/PaginationButton.svelte +1 -1
  72. package/dist/pagination/PaginationButton.svelte.d.ts +1 -1
  73. package/dist/pagination/PaginationItem.svelte +1 -1
  74. package/dist/pagination/PaginationItem.svelte.d.ts +1 -1
  75. package/dist/pagination/PaginationNav.svelte +10 -25
  76. package/dist/pagination/PaginationNav.svelte.d.ts +1 -5
  77. package/dist/popover/Popover.svelte +6 -15
  78. package/dist/popover/Popover.svelte.d.ts +1 -2
  79. package/dist/progress/Progressbar.svelte +1 -1
  80. package/dist/progress/Progressbar.svelte.d.ts +1 -1
  81. package/dist/progress/Progressradial.svelte +1 -1
  82. package/dist/progress/Progressradial.svelte.d.ts +1 -1
  83. package/dist/rating/AdvancedRating.svelte +8 -27
  84. package/dist/rating/AdvancedRating.svelte.d.ts +1 -6
  85. package/dist/rating/CustomIcon.svelte +4 -4
  86. package/dist/rating/CustomIcon.svelte.d.ts +2 -2
  87. package/dist/rating/Heart.svelte +4 -4
  88. package/dist/rating/Heart.svelte.d.ts +2 -2
  89. package/dist/rating/Rating.svelte +5 -13
  90. package/dist/rating/Rating.svelte.d.ts +1 -2
  91. package/dist/rating/RatingComment.svelte +1 -1
  92. package/dist/rating/RatingComment.svelte.d.ts +1 -1
  93. package/dist/rating/Review.svelte +13 -37
  94. package/dist/rating/Review.svelte.d.ts +1 -8
  95. package/dist/rating/ScoreRating.svelte +9 -8
  96. package/dist/rating/ScoreRating.svelte.d.ts +1 -1
  97. package/dist/rating/Star.svelte +4 -4
  98. package/dist/rating/Star.svelte.d.ts +2 -2
  99. package/dist/rating/Thumbup.svelte +4 -4
  100. package/dist/rating/Thumbup.svelte.d.ts +2 -2
  101. package/dist/scroll-spy/ScrollSpy.svelte +1 -1
  102. package/dist/scroll-spy/ScrollSpy.svelte.d.ts +1 -1
  103. package/dist/sidebar/Sidebar.svelte +9 -31
  104. package/dist/sidebar/Sidebar.svelte.d.ts +1 -5
  105. package/dist/sidebar/SidebarBrand.svelte +6 -20
  106. package/dist/sidebar/SidebarBrand.svelte.d.ts +1 -3
  107. package/dist/sidebar/SidebarButton.svelte +3 -2
  108. package/dist/sidebar/SidebarButton.svelte.d.ts +1 -1
  109. package/dist/sidebar/SidebarCta.svelte +6 -20
  110. package/dist/sidebar/SidebarCta.svelte.d.ts +1 -3
  111. package/dist/sidebar/SidebarDropdownWrapper.svelte +9 -44
  112. package/dist/sidebar/SidebarDropdownWrapper.svelte.d.ts +1 -5
  113. package/dist/sidebar/SidebarGroup.svelte +3 -4
  114. package/dist/sidebar/SidebarGroup.svelte.d.ts +1 -2
  115. package/dist/sidebar/SidebarItem.svelte +12 -10
  116. package/dist/sidebar/SidebarItem.svelte.d.ts +2 -5
  117. package/dist/sidebar/index.d.ts +1 -1
  118. package/dist/sidebar/index.js +1 -1
  119. package/dist/sidebar/theme.d.ts +41 -0
  120. package/dist/sidebar/theme.js +23 -3
  121. package/dist/skeleton/CardPlaceholder.svelte +1 -1
  122. package/dist/skeleton/CardPlaceholder.svelte.d.ts +1 -1
  123. package/dist/skeleton/ImagePlaceholder.svelte +1 -1
  124. package/dist/skeleton/ImagePlaceholder.svelte.d.ts +1 -1
  125. package/dist/skeleton/ListPlaceholder.svelte +1 -1
  126. package/dist/skeleton/ListPlaceholder.svelte.d.ts +1 -1
  127. package/dist/skeleton/Skeleton.svelte +1 -1
  128. package/dist/skeleton/Skeleton.svelte.d.ts +1 -1
  129. package/dist/skeleton/TestimonialPlaceholder.svelte +1 -1
  130. package/dist/skeleton/TestimonialPlaceholder.svelte.d.ts +1 -1
  131. package/dist/skeleton/TextPlaceholder.svelte +1 -1
  132. package/dist/skeleton/TextPlaceholder.svelte.d.ts +1 -1
  133. package/dist/skeleton/VideoPlaceholder.svelte +1 -1
  134. package/dist/skeleton/VideoPlaceholder.svelte.d.ts +1 -1
  135. package/dist/skeleton/WidgetPlaceholder.svelte +1 -1
  136. package/dist/skeleton/WidgetPlaceholder.svelte.d.ts +1 -1
  137. package/dist/speed-dial/SpeedDial.svelte +7 -19
  138. package/dist/speed-dial/SpeedDial.svelte.d.ts +1 -2
  139. package/dist/speed-dial/SpeedDialButton.svelte +12 -24
  140. package/dist/speed-dial/SpeedDialButton.svelte.d.ts +3 -4
  141. package/dist/speed-dial/SpeedDialTrigger.svelte +1 -1
  142. package/dist/speed-dial/SpeedDialTrigger.svelte.d.ts +1 -1
  143. package/dist/spinner/Spinner.svelte +1 -1
  144. package/dist/spinner/Spinner.svelte.d.ts +1 -1
  145. package/dist/split-pane/Divider.svelte +1 -1
  146. package/dist/split-pane/Divider.svelte.d.ts +1 -1
  147. package/dist/split-pane/Pane.svelte +1 -1
  148. package/dist/split-pane/Pane.svelte.d.ts +1 -1
  149. package/dist/split-pane/SplitPane.svelte +1 -1
  150. package/dist/split-pane/SplitPane.svelte.d.ts +1 -1
  151. package/dist/step-indicator/StepIndicator.svelte +1 -1
  152. package/dist/step-indicator/StepIndicator.svelte.d.ts +1 -1
  153. package/dist/stepper/BreadcrumbStepper.svelte +1 -1
  154. package/dist/stepper/BreadcrumbStepper.svelte.d.ts +1 -1
  155. package/dist/stepper/DetailedStepper.svelte +1 -1
  156. package/dist/stepper/DetailedStepper.svelte.d.ts +1 -1
  157. package/dist/stepper/ProgressStepper.svelte +1 -1
  158. package/dist/stepper/ProgressStepper.svelte.d.ts +1 -1
  159. package/dist/stepper/Stepper.svelte +1 -1
  160. package/dist/stepper/Stepper.svelte.d.ts +1 -1
  161. package/dist/stepper/TimelineStepper.svelte +1 -1
  162. package/dist/stepper/TimelineStepper.svelte.d.ts +1 -1
  163. package/dist/stepper/VerticalStepper.svelte +1 -1
  164. package/dist/stepper/VerticalStepper.svelte.d.ts +1 -1
  165. package/dist/table/Table.svelte +6 -17
  166. package/dist/table/Table.svelte.d.ts +1 -2
  167. package/dist/table/TableBody.svelte +1 -1
  168. package/dist/table/TableBody.svelte.d.ts +1 -1
  169. package/dist/table/TableBodyCell.svelte +1 -1
  170. package/dist/table/TableBodyCell.svelte.d.ts +1 -1
  171. package/dist/table/TableBodyRow.svelte +1 -1
  172. package/dist/table/TableBodyRow.svelte.d.ts +1 -1
  173. package/dist/table/TableHead.svelte +1 -1
  174. package/dist/table/TableHead.svelte.d.ts +1 -1
  175. package/dist/table/TableHeadCell.svelte +1 -1
  176. package/dist/table/TableHeadCell.svelte.d.ts +1 -1
  177. package/dist/table/TableSearch.svelte +10 -41
  178. package/dist/table/TableSearch.svelte.d.ts +1 -8
  179. package/dist/tabs/TabItem.svelte +1 -1
  180. package/dist/tabs/TabItem.svelte.d.ts +1 -1
  181. package/dist/tabs/Tabs.svelte +8 -15
  182. package/dist/tabs/Tabs.svelte.d.ts +1 -3
  183. package/dist/theme/themeUtils.d.ts +0 -10
  184. package/dist/theme/themeUtils.js +0 -67
  185. package/dist/theme/themes.d.ts +1 -1
  186. package/dist/theme/themes.js +1 -1
  187. package/dist/timeline/Activity.svelte +1 -1
  188. package/dist/timeline/Activity.svelte.d.ts +1 -1
  189. package/dist/timeline/ActivityItem.svelte +12 -46
  190. package/dist/timeline/ActivityItem.svelte.d.ts +1 -9
  191. package/dist/timeline/Group.svelte +7 -24
  192. package/dist/timeline/Group.svelte.d.ts +1 -4
  193. package/dist/timeline/GroupItem.svelte +11 -36
  194. package/dist/timeline/GroupItem.svelte.d.ts +1 -6
  195. package/dist/timeline/Timeline.svelte +1 -1
  196. package/dist/timeline/Timeline.svelte.d.ts +1 -1
  197. package/dist/timeline/TimelineItem.svelte +13 -60
  198. package/dist/timeline/TimelineItem.svelte.d.ts +1 -8
  199. package/dist/toast/Toast.svelte +6 -25
  200. package/dist/toast/Toast.svelte.d.ts +1 -3
  201. package/dist/toast/ToastContainer.svelte +1 -1
  202. package/dist/toast/ToastContainer.svelte.d.ts +1 -1
  203. package/dist/toolbar/Toolbar.svelte +1 -1
  204. package/dist/toolbar/Toolbar.svelte.d.ts +1 -1
  205. package/dist/toolbar/ToolbarButton.svelte +5 -4
  206. package/dist/toolbar/ToolbarButton.svelte.d.ts +2 -1
  207. package/dist/toolbar/ToolbarGroup.svelte +1 -1
  208. package/dist/toolbar/ToolbarGroup.svelte.d.ts +1 -1
  209. package/dist/toolbar/theme.js +1 -1
  210. package/dist/tooltip/Tooltip.svelte +1 -1
  211. package/dist/tooltip/Tooltip.svelte.d.ts +1 -1
  212. package/dist/types.d.ts +9 -144
  213. package/dist/typography/a/A.svelte +1 -1
  214. package/dist/typography/a/A.svelte.d.ts +1 -1
  215. package/dist/typography/blockquote/Blockquote.svelte +1 -1
  216. package/dist/typography/blockquote/Blockquote.svelte.d.ts +1 -1
  217. package/dist/typography/descriptionlist/DescriptionList.svelte +1 -1
  218. package/dist/typography/descriptionlist/DescriptionList.svelte.d.ts +1 -1
  219. package/dist/typography/heading/Heading.svelte +1 -1
  220. package/dist/typography/heading/Heading.svelte.d.ts +1 -1
  221. package/dist/typography/hr/Hr.svelte +11 -29
  222. package/dist/typography/hr/Hr.svelte.d.ts +2 -3
  223. package/dist/typography/img/Img.svelte +6 -21
  224. package/dist/typography/img/Img.svelte.d.ts +1 -3
  225. package/dist/typography/layout/Layout.svelte +1 -1
  226. package/dist/typography/layout/Layout.svelte.d.ts +1 -1
  227. package/dist/typography/list/Li.svelte +1 -1
  228. package/dist/typography/list/Li.svelte.d.ts +1 -1
  229. package/dist/typography/list/List.svelte +1 -1
  230. package/dist/typography/list/List.svelte.d.ts +1 -1
  231. package/dist/typography/mark/Mark.svelte +1 -1
  232. package/dist/typography/mark/Mark.svelte.d.ts +1 -1
  233. package/dist/typography/paragraph/P.svelte +1 -1
  234. package/dist/typography/paragraph/P.svelte.d.ts +1 -1
  235. package/dist/typography/secondary/Secondary.svelte +1 -1
  236. package/dist/typography/secondary/Secondary.svelte.d.ts +1 -1
  237. package/dist/typography/span/Span.svelte +1 -1
  238. package/dist/typography/span/Span.svelte.d.ts +1 -1
  239. package/dist/utils/Arrow.svelte +1 -1
  240. package/dist/utils/Arrow.svelte.d.ts +1 -1
  241. package/dist/utils/Popper.svelte +33 -4
  242. package/dist/utils/Popper.svelte.d.ts +1 -1
  243. package/dist/video/Video.svelte +1 -1
  244. package/dist/video/Video.svelte.d.ts +1 -1
  245. package/package.json +9 -7
@@ -39,7 +39,7 @@ export const accordionItem = tv({
39
39
  content: "py-5 border-b border-default text-body"
40
40
  },
41
41
  false: {
42
- button: "rounded-t-base hover:text-heading hover:bg-neutral-secondary-medium",
42
+ button: "hover:text-heading hover:bg-neutral-secondary-medium",
43
43
  contentWrapper: "border border-s-0 border-e-0 border-t-0 border-b-default",
44
44
  content: "p-4 md:p-5"
45
45
  }
@@ -194,7 +194,7 @@
194
194
  @component
195
195
  [Go to docs](https://flowbite-svelte.com/)
196
196
  ## Type
197
- [CommandPaletteProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L2253)
197
+ [CommandPaletteProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L2119)
198
198
  ## Props
199
199
  @prop open = $bindable(false)
200
200
  @prop items = []
@@ -2,7 +2,7 @@ import type { CommandPaletteProps } from "../types";
2
2
  /**
3
3
  * [Go to docs](https://flowbite-svelte.com/)
4
4
  * ## Type
5
- * [CommandPaletteProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L2253)
5
+ * [CommandPaletteProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L2119)
6
6
  * ## Props
7
7
  * @prop open = $bindable(false)
8
8
  * @prop items = []
package/dist/context.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { AccordionContextType, BottomNavContextType, CarouselContextType, DrawerContextType, DropdownContextType, PaginationContextType, ButtonToggleContextType, ListContextType, ToolbarContextType, ListGroupContextType, ButtonGroupContextType, NavbarState, NavbarBreakpoint, SidebarContextType, TableContextType, TabsContextType } from "./types";
1
+ import type { AccordionContextType, BottomNavContextType, CarouselContextType, DrawerContextType, DropdownContextType, PaginationContextType, ButtonToggleContextType, ListContextType, ToolbarContextType, ListGroupContextType, ButtonGroupContextType, NavbarState, NavbarBreakpoint, SidebarContextType, TableContextType, TabsContextType, SpeedCtxType } from "./types";
2
2
  import type { SplitPaneContext } from "./types";
3
3
  import type { ThemeConfig } from "./theme";
4
4
  declare const getAccordionContext: () => AccordionContextType | undefined, setAccordionContext: (context: AccordionContextType) => AccordionContextType;
@@ -48,3 +48,5 @@ declare const getSplitPaneContext: () => SplitPaneContext | undefined, setSplitP
48
48
  export { getSplitPaneContext, setSplitPaneContext };
49
49
  declare const getTabsContext: () => TabsContextType | undefined, setTabsContext: (context: TabsContextType) => TabsContextType;
50
50
  export { getTabsContext, setTabsContext };
51
+ declare const getSpeedDialContext: () => SpeedCtxType | undefined, setSpeedDialContext: (context: SpeedCtxType) => SpeedCtxType;
52
+ export { getSpeedDialContext, setSpeedDialContext };
package/dist/context.js CHANGED
@@ -69,3 +69,6 @@ export { getSplitPaneContext, setSplitPaneContext };
69
69
  // Tabs
70
70
  const [getTabsContext, setTabsContext] = createSafeContext();
71
71
  export { getTabsContext, setTabsContext };
72
+ // SpeedDial
73
+ const [getSpeedDialContext, setSpeedDialContext] = createSafeContext();
74
+ export { getSpeedDialContext, setSpeedDialContext };
@@ -438,9 +438,13 @@
438
438
  {disabled}
439
439
  aria-label={isOpen ? "Close date picker" : "Open date picker"}
440
440
  >
441
- <svg class="h-4 w-4 text-gray-500 dark:text-gray-400" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20">
441
+ <svg class="text-body h-4 w-4" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24">
442
442
  <path
443
- d="M20 4a2 2 0 0 0-2-2h-2V1a1 1 0 0 0-2 0v1h-3V1a1 1 0 0 0-2 0v1H6V1a1 1 0 0 0-2 0v1H2a2 2 0 0 0-2 2v2h20V4ZM0 18a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8H0v10Zm5-8h10a1 1 0 0 1 0 2H5a1 1 0 0 1 0-2Z"
443
+ stroke="currentColor"
444
+ stroke-linecap="round"
445
+ stroke-linejoin="round"
446
+ stroke-width="2"
447
+ d="M4 10h16m-8-3V4M7 7V4m10 3V4M5 20h14a1 1 0 0 0 1-1V7a1 1 0 0 0-1-1H5a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1Zm3-7h.01v.01H8V13Zm4 0h.01v.01H12V13Zm4 0h.01v.01H16V13Zm-8 4h.01v.01H8V17Zm4 0h.01v.01H12V17Zm4 0h.01v.01H16V17Z"
444
448
  ></path>
445
449
  </svg>
446
450
  </button>
@@ -1,17 +1,17 @@
1
1
  import { tv } from "tailwind-variants";
2
2
  export const datepicker = tv({
3
3
  slots: {
4
- base: "inline-block rounded-lg bg-white dark:bg-gray-700 shadow-lg p-4",
5
- input: "w-full rounded-md border px-4 py-2 text-sm focus:ring-2 focus:outline-none outline-none dark:border-gray-600 dark:bg-gray-700 dark:text-white disabled:cursor-not-allowed disabled:opacity-50 border-gray-300 bg-gray-50 text-gray-900",
4
+ base: "inline-block rounded-base bg-white dark:bg-gray-700 shadow-lg p-4",
5
+ input: "w-full rounded-base border px-4 py-2 text-sm focus:ring-2 focus:outline-none outline-none dark:border-gray-600 dark:bg-gray-700 dark:text-white disabled:cursor-not-allowed disabled:opacity-50 border-gray-300 bg-gray-50 text-gray-900",
6
6
  titleVariant: "mb-2 text-lg font-semibold text-gray-900 dark:text-white",
7
- polite: "text-sm rounded-lg text-gray-900 dark:text-white bg-white dark:bg-gray-700 font-semibold py-2.5 px-5 hover:bg-gray-100 dark:hover:bg-gray-600 focus:outline-none focus:ring-2 focus:ring-gray-200",
7
+ polite: "text-sm rounded-base text-gray-900 dark:text-white bg-white dark:bg-gray-700 font-semibold py-2.5 px-5 hover:bg-gray-100 dark:hover:bg-gray-600 focus:outline-none focus:ring-2 focus:ring-gray-200",
8
8
  button: "absolute inset-y-0 right-0 flex items-center px-3 text-gray-500 focus:outline-hidden dark:text-gray-400",
9
9
  actionButtons: "mt-4 flex justify-between",
10
10
  columnHeader: "text-center text-sm font-medium text-gray-500 dark:text-gray-400",
11
11
  grid: "grid grid-cols-7 gap-1 w-64",
12
12
  nav: "mb-4 flex items-center justify-between",
13
- dayButton: "h-8 w-full block flex-1 leading-9 border-0 rounded-lg cursor-pointer text-center font-semibold text-sm day p-0",
14
- monthButton: "rounded-lg px-3 py-2 text-sm hover:bg-gray-100 focus:ring-2 focus:ring-blue-500 dark:hover:bg-gray-700",
13
+ dayButton: "h-8 w-full block flex-1 leading-9 border-0 rounded-base cursor-pointer text-center font-semibold text-sm day p-0",
14
+ monthButton: "rounded-base px-3 py-2 text-sm hover:bg-gray-100 focus:ring-2 focus:ring-blue-500 dark:hover:bg-gray-700",
15
15
  actionSlot: "",
16
16
  monthBtnSelected: "bg-brand text-white",
17
17
  monthBtn: "text-gray-700 dark:text-gray-300"
@@ -3,7 +3,7 @@ export const footer = tv({
3
3
  base: "bg-white dark:bg-gray-800",
4
4
  variants: {
5
5
  footerType: {
6
- default: "p-4 rounded-lg shadow md:flex md:items-center md:justify-between md:p-6",
6
+ default: "p-4 rounded-base shadow md:flex md:items-center md:justify-between md:p-6",
7
7
  sitemap: "bg-white dark:bg-gray-900",
8
8
  socialmedia: "p-4 sm:p-6",
9
9
  logo: "p-4 rounded-lg shadow md:px-6 md:py-8",
@@ -35,7 +35,10 @@
35
35
 
36
36
  const { base, input, label, close, combo } = $derived(floatingLabelInput({ variant, size, validation, disabled, withIcon }));
37
37
 
38
- const clearAll = () => {
38
+ // Track if clear button should be shown
39
+ const showClearButton = $derived(clearable && value !== undefined && value !== "");
40
+
41
+ const clearAll = (_event?: MouseEvent) => {
39
42
  if (elementRef) {
40
43
  elementRef.value = "";
41
44
  value = "";
@@ -177,8 +180,8 @@
177
180
  onblur={handleBlur}
178
181
  onkeydown={handleKeydown}
179
182
  />
180
- {#if value !== undefined && value !== "" && clearable}
181
- <CloseButton class={close({ class: clsx(theme?.close, styling?.close) })} color={clearableColor} aria-label="Clear search value" svgClass={clsx(styling?.svg)} />
183
+ {#if showClearButton}
184
+ <CloseButton class={close({ class: clsx(theme?.close, styling?.close) })} color={clearableColor} ariaLabel="Clear search value" svgClass={clsx(styling?.svg)} />
182
185
  {/if}
183
186
  <label for={id} class={label({ class: clsx(theme?.label, styling?.label) })}>
184
187
  {@render children()}
@@ -40,7 +40,7 @@
40
40
  @component
41
41
  [Go to docs](https://flowbite-svelte.com/)
42
42
  ## Type
43
- [InputAddonProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L831)
43
+ [InputAddonProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L815)
44
44
  ## Props
45
45
  @prop children
46
46
  @prop class: className
@@ -2,7 +2,7 @@ import type { InputAddonProps } from "../..";
2
2
  /**
3
3
  * [Go to docs](https://flowbite-svelte.com/)
4
4
  * ## Type
5
- * [InputAddonProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L831)
5
+ * [InputAddonProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L815)
6
6
  * ## Props
7
7
  * @prop children
8
8
  * @prop class: className
@@ -6,9 +6,8 @@
6
6
  import CloseButton from "../../utils/CloseButton.svelte";
7
7
  import { input } from "./theme";
8
8
  import { clampSize } from "./index";
9
- import { getTheme, warnThemeDeprecation } from "../../theme/themeUtils";
9
+ import { getTheme } from "../../theme/themeUtils";
10
10
  import { createDismissableContext } from "../../utils/dismissable";
11
- import { untrack } from "svelte";
12
11
 
13
12
  let {
14
13
  children,
@@ -21,23 +20,11 @@
21
20
  color = "default",
22
21
  class: className,
23
22
  classes,
24
- wrapperClass,
25
- leftClass,
26
- rightClass,
27
- divClass,
28
- clearableSvgClass,
29
23
  clearableColor = "none",
30
- clearableClass,
31
24
  clearableOnClick,
32
25
  data = [],
33
26
  maxSuggestions = 5,
34
27
  onSelect,
35
- comboClass,
36
- comboItemClass,
37
- onInput,
38
- onFocus,
39
- onBlur,
40
- onKeydown,
41
28
  oninput,
42
29
  onfocus,
43
30
  onblur,
@@ -45,22 +32,16 @@
45
32
  ...restProps
46
33
  }: InputProps<InputValue> = $props();
47
34
 
48
- warnThemeDeprecation(
49
- "Input",
50
- untrack(() => ({ wrapperClass, leftClass, rightClass, divClass, clearableSvgClass, clearableClass, comboClass })),
51
- { wrapperClass: "wrapper", leftClass: "left", rightClass: "right", divClass: "div", clearableSvgClass: "svg", clearableClass: "close", comboClass: "comboItem" }
52
- );
53
-
54
- const styling = $derived(classes ?? { left: leftClass, right: rightClass, div: divClass, svg: clearableSvgClass, close: clearableClass, combo: comboClass, comboItem: comboItemClass });
35
+ const styling = $derived(classes);
55
36
 
56
37
  const theme = $derived(getTheme("input"));
57
38
 
58
39
  // onSelect is a custom combobox selection handler that takes a string
59
- // standard DOM events, onInput, onFocus, onBlur, onKeydown will be deprecated in the next minor version
60
- const resolvedOnInput = $derived(oninput || onInput);
61
- const resolvedOnFocus = $derived(onfocus || onFocus);
62
- const resolvedOnBlur = $derived(onblur || onBlur);
63
- const resolvedOnKeydown = $derived(onkeydown || onKeydown);
40
+ // Derive event handler props (using lowercase DOM event names: oninput, onfocus, onblur, onkeydown)
41
+ const resolvedOnInput = $derived(oninput);
42
+ const resolvedOnFocus = $derived(onfocus);
43
+ const resolvedOnBlur = $derived(onblur);
44
+ const resolvedOnKeydown = $derived(onkeydown);
64
45
 
65
46
  // Automatically enable combobox when data is provided
66
47
  const isCombobox = $derived(Array.isArray(data) && data.length > 0);
@@ -256,21 +237,21 @@
256
237
  {/if}
257
238
 
258
239
  {#if isCombobox || right || left || clearable}
259
- <div class={base({ class: clsx(theme?.base, styling.div) })}>
240
+ <div class={base({ class: clsx(theme?.base, styling?.div) })}>
260
241
  {#if left}
261
- <div class={leftCls({ class: clsx(theme?.left, styling.left) })}>
242
+ <div class={leftCls({ class: clsx(theme?.left, styling?.left) })}>
262
243
  {@render left()}
263
244
  </div>
264
245
  {/if}
265
246
  {@render inputContent(true)}
266
247
  {#if right}
267
- <div class={rightCls({ class: clsx(theme?.right, styling.right) })}>
248
+ <div class={rightCls({ class: clsx(theme?.right, styling?.right) })}>
268
249
  {@render right()}
269
250
  </div>
270
251
  {/if}
271
252
 
272
253
  {#if isCombobox && isFocused && filteredSuggestions.length > 0}
273
- <div class={combo({ class: clsx(theme?.combo, styling.combo) })}>
254
+ <div class={combo({ class: clsx(theme?.combo, styling?.combo) })}>
274
255
  {#each filteredSuggestions as item, i (item)}
275
256
  <button
276
257
  type="button"
@@ -278,7 +259,7 @@
278
259
  onclick={() => selectItem(item)}
279
260
  onmouseenter={() => (selectedIndex = i)}
280
261
  >
281
- <p class={comboItem({ class: clsx(theme?.comboItem, styling.comboItem) })}>{item}</p>
262
+ <p class={comboItem({ class: clsx(theme?.comboItem, styling?.comboItem) })}>{item}</p>
282
263
  </button>
283
264
  {/each}
284
265
  </div>
@@ -300,10 +281,10 @@
300
281
  onfocus={handleFocus}
301
282
  onblur={handleBlur}
302
283
  onkeydown={handleKeydown}
303
- class={[wrapped || base(), inputCls({ class: clsx(theme?.input, className) })]}
284
+ class={clsx(!wrapped && base(), inputCls({ class: clsx(theme?.input, className) }))}
304
285
  />
305
286
  {#if value !== undefined && value !== "" && clearable}
306
- <CloseButton class={close({ class: clsx(theme?.close, styling.close) })} color={clearableColor} aria-label="Clear search value" svgClass={clsx(styling.svg)} />
287
+ <CloseButton class={close({ class: clsx(theme?.close, styling?.close) })} color={clearableColor} aria-label="Clear search value" svgClass={clsx(styling?.svg)} />
307
288
  {/if}
308
289
  {/if}
309
290
  {/snippet}
@@ -23,7 +23,7 @@
23
23
  @component
24
24
  [Go to docs](https://flowbite-svelte.com/)
25
25
  ## Type
26
- [LabelProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L846)
26
+ [LabelProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L830)
27
27
  ## Props
28
28
  @prop children
29
29
  @prop color = "gray"
@@ -2,7 +2,7 @@ import type { LabelProps } from "../..";
2
2
  /**
3
3
  * [Go to docs](https://flowbite-svelte.com/)
4
4
  * ## Type
5
- * [LabelProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L846)
5
+ * [LabelProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L830)
6
6
  * ## Props
7
7
  * @prop children
8
8
  * @prop color = "gray"
@@ -4,40 +4,29 @@
4
4
  import clsx from "clsx";
5
5
  import type { RadioProps } from "../..";
6
6
  import Label from "../label/Label.svelte";
7
- import { getTheme, warnThemeDeprecation } from "../../theme/themeUtils";
8
- import { untrack } from "svelte";
7
+ import { getTheme } from "../../theme/themeUtils";
9
8
 
10
- // remove inputClass in next major version
11
9
  let {
12
10
  children,
13
11
  "aria-describedby": ariaDescribedby,
14
12
  inline = false,
15
- labelClass,
16
13
  color = "brand",
17
14
  custom = false,
18
15
  group = $bindable<T>(),
19
16
  value = $bindable<T>(),
20
- class: className,
21
- inputClass,
22
17
  classes,
23
18
  ...restProps
24
19
  }: RadioProps<T> = $props();
25
20
 
26
- warnThemeDeprecation(
27
- "Radio",
28
- untrack(() => ({ inputClass, labelClass })),
29
- { inputClass: "class", labelClass: "label" }
30
- );
31
-
32
- const styling = $derived(classes ?? { label: labelClass });
21
+ const styling = $derived(classes);
33
22
 
34
23
  const theme = $derived(getTheme("radio"));
35
24
 
36
25
  const { input, label } = $derived(radio({ color, tinted: !!getContext("background"), custom, inline }));
37
26
  </script>
38
27
 
39
- <Label class={label({ class: clsx(theme?.label, styling.label) })}>
40
- <input type="radio" bind:group {value} aria-describedby={ariaDescribedby} {...restProps} class={input({ class: clsx(theme?.input, className ?? inputClass) })} />
28
+ <Label class={label({ class: clsx(theme?.label, styling?.label) })}>
29
+ <input type="radio" bind:group {value} aria-describedby={ariaDescribedby} {...restProps} class={input({ class: clsx(theme?.input, styling?.input) })} />
41
30
  {@render children?.()}
42
31
  </Label>
43
32
 
@@ -17,7 +17,7 @@
17
17
  @component
18
18
  [Go to docs](https://flowbite-svelte.com/)
19
19
  ## Type
20
- [RangeProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L874)
20
+ [RangeProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L856)
21
21
  ## Props
22
22
  @prop value = $bindable()
23
23
  @prop appearance = "none"
@@ -2,7 +2,7 @@ import type { RangeProps } from "../..";
2
2
  /**
3
3
  * [Go to docs](https://flowbite-svelte.com/)
4
4
  * ## Type
5
- * [RangeProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L874)
5
+ * [RangeProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L856)
6
6
  * ## Props
7
7
  * @prop value = $bindable()
8
8
  * @prop appearance = "none"
@@ -3,34 +3,24 @@
3
3
  import clsx from "clsx";
4
4
  import type { SearchProps } from "../..";
5
5
  import CloseButton from "../../utils/CloseButton.svelte";
6
- import { getTheme, warnThemeDeprecation } from "../../theme/themeUtils";
6
+ import { getTheme } from "../../theme/themeUtils";
7
7
  import { createDismissableContext } from "../../utils/dismissable";
8
- import { untrack } from "svelte";
9
8
 
10
9
  let {
11
10
  children,
12
- inputClass,
13
11
  size,
14
12
  placeholder = "Search",
15
13
  value = $bindable(),
16
14
  elementRef = $bindable(),
17
15
  clearable = false,
18
- clearableSvgClass,
19
16
  clearableColor = "none",
20
- clearableClass,
21
17
  clearableOnClick,
22
18
  class: className,
23
19
  classes,
24
20
  ...restProps
25
21
  }: SearchProps = $props();
26
22
 
27
- warnThemeDeprecation(
28
- "Search",
29
- untrack(() => ({ inputClass, clearableSvgClass, clearableClass })),
30
- { inputClass: "input", clearableSvgClass: "svg", clearableClass: "close" }
31
- );
32
-
33
- const styling = $derived(classes ?? { input: inputClass, svg: clearableSvgClass, close: clearableClass });
23
+ const styling = $derived(classes);
34
24
 
35
25
  const theme = $derived(getTheme("search"));
36
26
 
@@ -48,19 +38,19 @@
48
38
  </script>
49
39
 
50
40
  <div class={base({ class: clsx(theme?.base, className) })}>
51
- <div class={left({ class: clsx(theme?.left, classes?.left) })}>
52
- <svg class={icon({ class: clsx(theme?.icon, classes?.icon) })} aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 20 20">
41
+ <div class={left({ class: clsx(theme?.left, styling?.left) })}>
42
+ <svg class={icon({ class: clsx(theme?.icon, styling?.icon) })} aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 20 20">
53
43
  <path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="m19 19-4-4m0-7A7 7 0 1 1 1 8a7 7 0 0 1 14 0Z" />
54
44
  </svg>
55
45
  </div>
56
- <input type="search" bind:value bind:this={elementRef} class={inputCls({ class: clsx(theme?.input, styling.input) })} {placeholder} required {...restProps} />
46
+ <input type="search" bind:value bind:this={elementRef} class={inputCls({ class: clsx(theme?.input, styling?.input) })} {placeholder} required {...restProps} />
57
47
  {#if children}
58
- <div class={content({ class: clsx(theme?.content, classes?.content) })}>
48
+ <div class={content({ class: clsx(theme?.content, styling?.content) })}>
59
49
  {@render children()}
60
50
  </div>
61
51
  {/if}
62
52
  {#if value !== undefined && value !== "" && clearable}
63
- <CloseButton class={close({ class: clsx(theme?.close, styling.close) })} color={clearableColor} aria-label="Clear search value" svgClass={clsx(styling.svg)} />
53
+ <CloseButton class={close({ class: clsx(theme?.close, styling?.close) })} color={clearableColor} aria-label="Clear search value" svgClass={clsx(styling?.svg)} />
64
54
  {/if}
65
55
  </div>
66
56
 
@@ -68,18 +58,15 @@
68
58
  @component
69
59
  [Go to docs](https://flowbite-svelte.com/)
70
60
  ## Type
71
- [SearchProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L880)
61
+ [SearchProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L862)
72
62
  ## Props
73
63
  @prop children
74
- @prop inputClass
75
64
  @prop size
76
65
  @prop placeholder = "Search"
77
66
  @prop value = $bindable()
78
67
  @prop elementRef = $bindable()
79
68
  @prop clearable = false
80
- @prop clearableSvgClass
81
69
  @prop clearableColor = "none"
82
- @prop clearableClass
83
70
  @prop clearableOnClick
84
71
  @prop class: className
85
72
  @prop classes
@@ -2,18 +2,15 @@ import type { SearchProps } from "../..";
2
2
  /**
3
3
  * [Go to docs](https://flowbite-svelte.com/)
4
4
  * ## Type
5
- * [SearchProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L880)
5
+ * [SearchProps](https://github.com/themesberg/flowbite-svelte/blob/main/src/lib/types.ts#L862)
6
6
  * ## Props
7
7
  * @prop children
8
- * @prop inputClass
9
8
  * @prop size
10
9
  * @prop placeholder = "Search"
11
10
  * @prop value = $bindable()
12
11
  * @prop elementRef = $bindable()
13
12
  * @prop clearable = false
14
- * @prop clearableSvgClass
15
13
  * @prop clearableColor = "none"
16
- * @prop clearableClass
17
14
  * @prop clearableOnClick
18
15
  * @prop class: className
19
16
  * @prop classes
@@ -4,8 +4,8 @@
4
4
  import Badge from "../../badge/Badge.svelte";
5
5
  import CloseButton from "../../utils/CloseButton.svelte";
6
6
  import { multiSelect } from "./theme";
7
- import { getTheme, warnThemeDeprecation } from "../../theme/themeUtils";
8
- import { onMount, untrack } from "svelte";
7
+ import { getTheme } from "../../theme/themeUtils";
8
+ import { onMount } from "svelte";
9
9
  import { createDismissableContext } from "../../utils/dismissable";
10
10
  import { getButtonGroupContext } from "../../context";
11
11
 
@@ -16,7 +16,6 @@
16
16
  items = [],
17
17
  value = $bindable(),
18
18
  size = "md",
19
- dropdownClass = "",
20
19
  placeholder = "",
21
20
  disabled = false,
22
21
  onchange,
@@ -31,13 +30,7 @@
31
30
  ...restProps
32
31
  }: MultiSelectProps<T> = $props();
33
32
 
34
- warnThemeDeprecation(
35
- "MultiSelect",
36
- untrack(() => ({ dropdownClass })),
37
- { dropdownClass: "dropdown" }
38
- );
39
-
40
- const styling = $derived(classes ?? { dropdown: dropdownClass });
33
+ const styling = $derived(classes);
41
34
 
42
35
  const theme = $derived(getTheme("multiSelect"));
43
36
 
@@ -247,7 +240,7 @@
247
240
  </div>
248
241
 
249
242
  {#if show}
250
- <div role="presentation" class={dropdown({ class: clsx(styling.dropdown) })}>
243
+ <div role="presentation" class={dropdown({ class: clsx(styling?.dropdown) })}>
251
244
  {#each items as item (item.value)}
252
245
  {@const isSelected = selectItems.includes(item)}
253
246
  {@const isActive = activeItem === item}
@@ -3,10 +3,9 @@
3
3
  import clsx from "clsx";
4
4
  import type { SelectProps } from "../..";
5
5
  import CloseButton from "../../utils/CloseButton.svelte";
6
- import { getTheme, warnThemeDeprecation } from "../../theme/themeUtils";
6
+ import { getTheme } from "../../theme/themeUtils";
7
7
  import { createDismissableContext } from "../../utils/dismissable";
8
8
  import { getButtonGroupContext } from "../../context";
9
- import { untrack } from "svelte";
10
9
 
11
10
  let {
12
11
  children,
@@ -21,21 +20,12 @@
21
20
  clearableColor = "none",
22
21
  clearableOnClick,
23
22
  onClear,
24
- clearableSvgClass,
25
- clearableClass,
26
- selectClass,
27
23
  class: className,
28
24
  classes,
29
25
  ...restProps
30
26
  }: SelectProps<T> = $props();
31
27
 
32
- warnThemeDeprecation(
33
- "Select",
34
- untrack(() => ({ selectClass, clearableSvgClass, clearableClass })),
35
- { selectClass: "select", clearableSvgClass: "svg", clearableClass: "close" }
36
- );
37
-
38
- const styling = $derived(classes ?? { select: selectClass, svg: clearableSvgClass, close: clearableClass });
28
+ const styling = $derived(classes);
39
29
 
40
30
  const theme = $derived(getTheme("select"));
41
31
  const group = getButtonGroupContext();
@@ -61,7 +51,7 @@
61
51
  </script>
62
52
 
63
53
  <div class={base({ class: clsx(theme?.base, className) })}>
64
- <select {disabled} {...restProps} bind:value bind:this={elementRef} class={select({ class: clsx(theme?.select, styling.select) })}>
54
+ <select {disabled} {...restProps} bind:value bind:this={elementRef} class={select({ class: clsx(theme?.select, styling?.select) })}>
65
55
  {#if placeholder}
66
56
  <option disabled selected={value === "" || value === undefined} value="">{placeholder}</option>
67
57
  {/if}
@@ -77,6 +67,6 @@
77
67
  {/if}
78
68
  </select>
79
69
  {#if value !== undefined && value !== "" && clearable}
80
- <CloseButton class={close({ class: clsx(theme?.close, styling.close) })} color={clearableColor} aria-label="Clear search value" svgClass={clsx(styling.svg)} {disabled} />
70
+ <CloseButton class={close({ class: clsx(theme?.close, styling?.close) })} color={clearableColor} aria-label="Clear search value" svgClass={clsx(styling?.svg)} {disabled} />
81
71
  {/if}
82
72
  </div>
@@ -4,19 +4,15 @@
4
4
  import P from "../../typography/paragraph/P.svelte";
5
5
  import CloseButton from "../../utils/CloseButton.svelte";
6
6
  import { tags } from "./theme";
7
- import { getTheme, warnThemeDeprecation } from "../../theme/themeUtils";
7
+ import { getTheme } from "../../theme/themeUtils";
8
8
  import { computePosition, offset, flip, shift, autoUpdate } from "@floating-ui/dom";
9
- import { onDestroy, untrack } from "svelte";
9
+ import { onDestroy } from "svelte";
10
10
 
11
11
  let {
12
12
  value = $bindable([]),
13
13
  placeholder = "Enter tags",
14
14
  class: className,
15
15
  classes,
16
- itemClass,
17
- spanClass,
18
- closeClass,
19
- inputClass,
20
16
  closeBtnSize = "xs",
21
17
  unique = false,
22
18
  availableTags = [],
@@ -28,20 +24,7 @@
28
24
  ...restProps
29
25
  }: TagsProps = $props();
30
26
 
31
- warnThemeDeprecation(
32
- "Tags",
33
- untrack(() => ({ itemClass, spanClass, closeClass, inputClass })),
34
- { itemClass: "tag", spanClass: "span", closeClass: "close", inputClass: "input" }
35
- );
36
-
37
- const styling = $derived(
38
- classes ?? {
39
- tag: itemClass,
40
- span: spanClass,
41
- close: closeClass,
42
- input: inputClass
43
- }
44
- );
27
+ const styling = $derived(classes);
45
28
 
46
29
  const theme = $derived(getTheme("tags"));
47
30
 
@@ -153,19 +136,19 @@
153
136
  <svelte:window />
154
137
 
155
138
  {#if showAvailableTags && availableTags.length > 0}
156
- <P class={clsx(info(), classes?.info)}>Available tags: {availableTags.join(", ")}</P>
139
+ <P class={clsx(info(), styling?.info)}>Available tags: {availableTags.join(", ")}</P>
157
140
  {/if}
158
141
 
159
142
  {#if showHelper && contents.trim().length > 0}
160
143
  {#if unique && value.some((tag) => tag.toLowerCase() === contents.trim().toLowerCase())}
161
- <P class={clsx(warning(), classes?.warning)}>"{contents.trim()}" is already added.</P>
144
+ <P class={clsx(warning(), styling?.warning)}>"{contents.trim()}" is already added.</P>
162
145
  {:else if availableTags.length > 0 && !allowNewTags && !availableTags.some((tag) => tag.toLowerCase() === contents.trim().toLowerCase())}
163
- <P class={clsx(error(), classes?.error)}>"{contents.trim()}" is not in the available tags.</P>
146
+ <P class={clsx(error(), styling?.error)}>"{contents.trim()}" is not in the available tags.</P>
164
147
  {/if}
165
148
  {/if}
166
149
 
167
150
  {#if errorMessage}
168
- <P class={clsx(error(), classes?.error)}>{errorMessage}</P>
151
+ <P class={clsx(error(), styling?.error)}>{errorMessage}</P>
169
152
  {/if}
170
153
 
171
154
  <div
@@ -175,11 +158,11 @@
175
158
  })}
176
159
  >
177
160
  {#each value as tag, index (index)}
178
- <div class={tagCls({ class: clsx(theme?.tag, styling.tag) })}>
179
- <span class={spanCls({ class: clsx(theme?.span, styling.span) })}>
161
+ <div class={tagCls({ class: clsx(theme?.tag, styling?.tag) })}>
162
+ <span class={spanCls({ class: clsx(theme?.span, styling?.span) })}>
180
163
  {tag}
181
164
  </span>
182
- <CloseButton {disabled} size={closeBtnSize} class={close({ class: clsx(theme?.close, styling.close) })} onclick={() => deleteField(index)} />
165
+ <CloseButton {disabled} size={closeBtnSize} class={close({ class: clsx(theme?.close, styling?.close) })} onclick={() => deleteField(index)} />
183
166
  </div>
184
167
  {/each}
185
168
  <div class="relative w-full" bind:this={inputContainer}>
@@ -192,7 +175,7 @@
192
175
  placeholder={value.length === 0 ? placeholder : ""}
193
176
  type="text"
194
177
  autocomplete="off"
195
- class={inputCls({ class: clsx(styling.input) })}
178
+ class={inputCls({ class: clsx(styling?.input) })}
196
179
  />
197
180
  {#if availableTags.length > 0 && contents.trim() !== ""}
198
181
  {@const filteredSuggestions = availableTags.filter((tag) => tag.toLowerCase().includes(contents.trim().toLowerCase()) && (!unique || !value.some((t) => t.toLowerCase() === tag.toLowerCase())))}
@@ -231,15 +214,13 @@
231
214
  @prop placeholder = "Enter tags"
232
215
  @prop class: className
233
216
  @prop classes
234
- @prop itemClass
235
- @prop spanClass
236
- @prop closeClass
237
- @prop inputClass
238
217
  @prop closeBtnSize = "xs"
239
218
  @prop unique = false
240
219
  @prop availableTags = []
241
220
  @prop showHelper = false
242
221
  @prop showAvailableTags = false
243
222
  @prop allowNewTags = true
223
+ @prop inputProps = {}
224
+ @prop disabled
244
225
  @prop ...restProps
245
226
  -->