odj-svelte-ui 0.1.1 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (167) hide show
  1. package/README.md +86 -35
  2. package/dist/_legacy/accordion/Accordion.svelte +2 -2
  3. package/dist/_legacy/accordion/Accordion.svelte.d.ts +1 -1
  4. package/dist/_legacy/avatar/Avatar.svelte +2 -2
  5. package/dist/_legacy/avatar/Placeholder.svelte +1 -1
  6. package/dist/_legacy/badge/Badge.svelte +1 -1
  7. package/dist/_legacy/banner/Banner.svelte +3 -3
  8. package/dist/_legacy/button-group/ButtonGroup.svelte +2 -2
  9. package/dist/_legacy/button-group/ButtonGroup.svelte.d.ts +1 -1
  10. package/dist/_legacy/buttons/Button.svelte +1 -1
  11. package/dist/_legacy/buttons/GradientButton.svelte +20 -20
  12. package/dist/_legacy/cards/Card.svelte +1 -1
  13. package/dist/_legacy/carousel/ControlButton.svelte +2 -2
  14. package/dist/_legacy/carousel/Slide.svelte +1 -1
  15. package/dist/_legacy/darkmode/DarkMode.svelte +2 -2
  16. package/dist/_legacy/darkmode/DarkMode.svelte.d.ts +1 -1
  17. package/dist/_legacy/drawer/Drawer.svelte +0 -2
  18. package/dist/_legacy/drawer/Drawer.svelte.d.ts +0 -2
  19. package/dist/_legacy/footer/Footer.svelte +1 -1
  20. package/dist/_legacy/forms/Fileupload.svelte +2 -2
  21. package/dist/_legacy/forms/Fileupload.svelte.d.ts +1 -1
  22. package/dist/_legacy/forms/FloatingLabelInput.svelte +4 -4
  23. package/dist/_legacy/forms/MultiSelect.svelte +1 -1
  24. package/dist/_legacy/forms/Radio.svelte +1 -1
  25. package/dist/_legacy/forms/Select.svelte +3 -3
  26. package/dist/_legacy/forms/Select.svelte.d.ts +1 -1
  27. package/dist/_legacy/forms/Textarea.svelte +2 -2
  28. package/dist/_legacy/forms/Textarea.svelte.d.ts +1 -1
  29. package/dist/_legacy/indicators/Indicator.svelte +1 -1
  30. package/dist/_legacy/list-group/ListgroupItem.svelte +2 -2
  31. package/dist/_legacy/list-group/ListgroupItem.svelte.d.ts +1 -1
  32. package/dist/_legacy/mega-menu/MegaMenu.svelte +1 -1
  33. package/dist/_legacy/modal/Modal.svelte +2 -2
  34. package/dist/_legacy/modal/Modal.svelte.d.ts +1 -1
  35. package/dist/_legacy/navbar/NavLi.svelte +1 -1
  36. package/dist/_legacy/pagination/PaginationItem.svelte +1 -1
  37. package/dist/_legacy/popover/Popover.svelte +1 -1
  38. package/dist/_legacy/rating/AdvancedRating.svelte +4 -4
  39. package/dist/_legacy/rating/AdvancedRating.svelte.d.ts +2 -2
  40. package/dist/_legacy/rating/Review.svelte +1 -1
  41. package/dist/_legacy/rating/ScoreRating.svelte +6 -6
  42. package/dist/_legacy/rating/ScoreRating.svelte.d.ts +2 -2
  43. package/dist/_legacy/sidebar/SidebarCta.svelte +2 -2
  44. package/dist/_legacy/sidebar/SidebarCta.svelte.d.ts +1 -1
  45. package/dist/_legacy/sidebar/SidebarWrapper.svelte +2 -2
  46. package/dist/_legacy/sidebar/SidebarWrapper.svelte.d.ts +1 -1
  47. package/dist/_legacy/skeleton/CardPlaceholder.svelte +3 -3
  48. package/dist/_legacy/skeleton/CardPlaceholder.svelte.d.ts +1 -1
  49. package/dist/_legacy/skeleton/ImagePlaceholder.svelte +1 -1
  50. package/dist/_legacy/skeleton/ListPlaceholder.svelte +2 -2
  51. package/dist/_legacy/skeleton/ListPlaceholder.svelte.d.ts +1 -1
  52. package/dist/_legacy/skeleton/WidgetPlaceholder.svelte +2 -2
  53. package/dist/_legacy/skeleton/WidgetPlaceholder.svelte.d.ts +1 -1
  54. package/dist/_legacy/speed-dial/SpeedDial.svelte +2 -2
  55. package/dist/_legacy/speed-dial/SpeedDialButton.svelte +2 -2
  56. package/dist/_legacy/speed-dial/SpeedDialButton.svelte.d.ts +1 -1
  57. package/dist/_legacy/steps/StepIndicator.svelte +4 -4
  58. package/dist/_legacy/table/TableBodyRow.svelte +6 -6
  59. package/dist/_legacy/tabs/Tabs.svelte +2 -2
  60. package/dist/_legacy/timeline/ActivityItem.svelte +2 -2
  61. package/dist/_legacy/timeline/ActivityItem.svelte.d.ts +1 -1
  62. package/dist/_legacy/toast/Toast.svelte +3 -3
  63. package/dist/_legacy/toast/Toast.svelte.d.ts +1 -1
  64. package/dist/_legacy/toolbar/ToolbarButton.svelte +3 -3
  65. package/dist/_legacy/toolbar/ToolbarGroup.svelte +2 -2
  66. package/dist/_legacy/toolbar/ToolbarGroup.svelte.d.ts +1 -1
  67. package/dist/_legacy/typography/Mark.svelte +2 -2
  68. package/dist/_legacy/typography/Mark.svelte.d.ts +1 -1
  69. package/dist/_legacy/typography/Span.svelte +2 -2
  70. package/dist/_legacy/typography/Span.svelte.d.ts +1 -1
  71. package/dist/_legacy/utils/backdrop.js +1 -1
  72. package/dist/accordion/theme.js +1 -1
  73. package/dist/alert/Alert.svelte +2 -2
  74. package/dist/alert/Alert.svelte.d.ts +1 -1
  75. package/dist/avatar/Avatar.svelte +44 -6
  76. package/dist/avatar/Avatar.svelte.d.ts +3 -1
  77. package/dist/avatar/index.d.ts +2 -2
  78. package/dist/avatar/index.js +2 -2
  79. package/dist/avatar/theme.d.ts +144 -3
  80. package/dist/avatar/theme.js +35 -5
  81. package/dist/avatar/type.d.ts +2 -0
  82. package/dist/badge/Badge.svelte +2 -2
  83. package/dist/badge/Badge.svelte.d.ts +1 -1
  84. package/dist/badge/theme.js +1 -1
  85. package/dist/banner/theme.js +3 -3
  86. package/dist/bottom-navigation/theme.d.ts +15 -15
  87. package/dist/buttongroup/theme.d.ts +2 -2
  88. package/dist/buttongroup/theme.js +1 -1
  89. package/dist/buttons/theme.js +46 -46
  90. package/dist/cards/theme.js +2 -2
  91. package/dist/darkmode/theme.d.ts +1 -1
  92. package/dist/darkmode/theme.js +1 -1
  93. package/dist/device-mockups/theme.d.ts +230 -230
  94. package/dist/drawer/theme.d.ts +20 -20
  95. package/dist/drawer/theme.js +1 -1
  96. package/dist/dropdown/Dropdown.svelte +12 -1
  97. package/dist/dropdown/DropdownLi.svelte +9 -3
  98. package/dist/dropdown/DropdownLi.svelte.d.ts +1 -0
  99. package/dist/dropdown/theme.d.ts +34 -34
  100. package/dist/dropdown/theme.js +7 -7
  101. package/dist/dropdown/type.d.ts +2 -0
  102. package/dist/footer/theme.d.ts +55 -55
  103. package/dist/footer/theme.js +3 -3
  104. package/dist/forms/checkbox/Checkbox.svelte +34 -5
  105. package/dist/forms/checkbox/theme.js +27 -25
  106. package/dist/forms/checkbox/type.d.ts +1 -0
  107. package/dist/forms/dropzone/Dropzone.svelte.d.ts +9 -7
  108. package/dist/forms/fileupload/theme.js +1 -1
  109. package/dist/forms/floating-label-input/theme.js +22 -22
  110. package/dist/forms/input/theme.js +23 -23
  111. package/dist/forms/input-addon/InputAddon.svelte +1 -1
  112. package/dist/forms/label/Label.svelte +2 -2
  113. package/dist/forms/label/theme.d.ts +28 -7
  114. package/dist/forms/label/theme.js +4 -1
  115. package/dist/forms/label/type.d.ts +2 -1
  116. package/dist/forms/radio/Radio.svelte +4 -5
  117. package/dist/forms/radio/theme.d.ts +0 -56
  118. package/dist/forms/radio/theme.js +23 -27
  119. package/dist/forms/radio/type.d.ts +1 -0
  120. package/dist/forms/select/theme.d.ts +2 -2
  121. package/dist/forms/select/theme.js +4 -4
  122. package/dist/forms/textarea/theme.js +1 -1
  123. package/dist/forms/toggle/theme.js +23 -23
  124. package/dist/gallery/theme.d.ts +15 -15
  125. package/dist/indicator/theme.js +2 -2
  126. package/dist/list-group/theme.js +1 -1
  127. package/dist/mega-menu/theme.js +1 -1
  128. package/dist/modal/theme.js +2 -2
  129. package/dist/nav/Navbar.svelte +13 -11
  130. package/dist/nav/theme.d.ts +21 -21
  131. package/dist/nav/theme.js +24 -24
  132. package/dist/pagination/theme.js +1 -1
  133. package/dist/rating/Review.svelte +1 -1
  134. package/dist/rating/ScoreRating.svelte +2 -2
  135. package/dist/rating/theme.d.ts +125 -125
  136. package/dist/rating/theme.js +5 -5
  137. package/dist/sidebar/Sidebar.svelte +9 -54
  138. package/dist/sidebar/Sidebar.svelte.d.ts +0 -7
  139. package/dist/sidebar/SidebarGroup.svelte +8 -5
  140. package/dist/sidebar/SidebarGroup.svelte.d.ts +1 -2
  141. package/dist/sidebar/SidebarItem.svelte +1 -1
  142. package/dist/sidebar/index.d.ts +3 -4
  143. package/dist/sidebar/index.js +2 -3
  144. package/dist/sidebar/theme.d.ts +293 -178
  145. package/dist/sidebar/theme.js +28 -29
  146. package/dist/sidebar/type.d.ts +4 -15
  147. package/dist/skeleton/theme.d.ts +55 -55
  148. package/dist/skeleton/theme.js +11 -11
  149. package/dist/table/theme.js +21 -21
  150. package/dist/tabs/theme.js +1 -1
  151. package/dist/theme/Theme.svelte +0 -2
  152. package/dist/theme/Theme.svelte.d.ts +3 -2
  153. package/dist/timeline/theme.d.ts +95 -95
  154. package/dist/timeline/theme.js +1 -1
  155. package/dist/toast/theme.js +1 -1
  156. package/dist/toolbar/ToolbarButton.svelte +3 -3
  157. package/dist/toolbar/theme.d.ts +2 -2
  158. package/dist/toolbar/theme.js +3 -3
  159. package/dist/typography/img/theme.js +5 -5
  160. package/dist/typography/mark/theme.d.ts +1 -1
  161. package/dist/typography/mark/theme.js +1 -1
  162. package/dist/typography/span/theme.js +12 -12
  163. package/dist/utils/index.d.ts +2 -2
  164. package/dist/utils/index.js +3 -3
  165. package/package.json +641 -645
  166. package/dist/sidebar/SidebarButton.svelte +0 -21
  167. package/dist/sidebar/SidebarButton.svelte.d.ts +0 -10
@@ -1,21 +1,9 @@
1
1
  <script lang="ts">
2
2
  import { setContext } from "svelte";
3
- import { fly } from "svelte/transition";
4
3
  import { writable } from "svelte/store";
5
- import { sineIn } from "svelte/easing";
6
4
  import { type SidebarProps as Props, sidebar, type SidebarCtxType } from ".";
7
5
 
8
- let { children, isOpen = false, closeSidebar, isSingle = true, breakpoint = "md", position = "fixed", activateClickOutside = true, backdrop = true, backdropClass, transition = fly, params, divClass, ariaLabel, nonActiveClass, activeClass, activeUrl = "", class: className, ...restProps }: Props = $props();
9
-
10
- const breakpointValues = {
11
- sm: 640,
12
- md: 768,
13
- lg: 1024,
14
- xl: 1280,
15
- "2xl": 1536
16
- };
17
-
18
- let isLargeScreen = $state(false);
6
+ let { children, isSingle = true, breakpoint = "md", position = "fixed", divClass, ariaLabel, nonActiveClass, activeClass, activeUrl = "", class: className, ...restProps }: Props = $props();
19
7
 
20
8
  const activeUrlStore = writable("");
21
9
  setContext("activeUrl", activeUrlStore);
@@ -23,69 +11,36 @@
23
11
  activeUrlStore.set(activeUrl);
24
12
  });
25
13
 
26
- function checkScreenSize() {
27
- isLargeScreen = window.innerWidth >= breakpointValues[breakpoint];
28
- }
29
-
30
- const { base, active, nonactive, div, backdrop: backdropCls } = $derived(sidebar({ isOpen, breakpoint, position, backdrop }));
14
+ const { base, active, nonactive, div } = $derived(sidebar({ breakpoint, position }));
31
15
 
32
16
  let sidebarCtx: SidebarCtxType = {
33
- get closeSidebar() {
34
- return closeSidebar;
35
- },
36
17
  get activeClass() {
37
18
  return active({ class: activeClass });
38
19
  },
39
20
  get nonActiveClass() {
40
21
  return nonactive({ class: nonActiveClass });
41
22
  },
42
- isSingle
23
+ isSingle,
24
+ breakpoint
43
25
  };
44
26
 
45
- let transitionParams = params ? params : { x: -320, duration: 200, easing: sineIn };
46
-
47
27
  setContext("sidebarContext", sidebarCtx);
48
- $effect(() => {
49
- checkScreenSize();
50
- window.addEventListener("resize", checkScreenSize);
51
- return () => window.removeEventListener("resize", checkScreenSize);
52
- });
53
28
  </script>
54
29
 
55
- {#if isOpen || isLargeScreen}
56
- {#if isOpen}
57
- {#if backdrop && activateClickOutside}
58
- <div role="presentation" class={backdropCls({ class: backdropClass })} onclick={closeSidebar}></div>
59
- {:else if backdrop && !activateClickOutside}
60
- <div role="presentation" class={backdropCls({ class: backdropClass })}></div>
61
- {:else if !backdrop && activateClickOutside}
62
- <div role="presentation" class="fixed start-0 top-0 z-50 h-full w-full" onclick={closeSidebar}></div>
63
- {:else if !backdrop && !activateClickOutside}
64
- <div role="presentation" class="fixed start-0 top-0 z-50 h-full w-full"></div>
65
- {/if}
66
- {/if}
67
- <aside transition:transition={transitionParams} {...restProps} class={base({ className })} aria-label={ariaLabel}>
68
- <div class={div({ class: divClass })}>
69
- {@render children()}
70
- </div>
71
- </aside>
72
- {/if}
30
+ <aside {...restProps} class={base({ className })} aria-label={ariaLabel}>
31
+ <div class={div({ class: divClass })}>
32
+ {@render children()}
33
+ </div>
34
+ </aside>
73
35
 
74
36
  <!--
75
37
  @component
76
38
  [Go to docs](https://svelte-5-ui-lib.codewithshin.com/)
77
39
  ## Props
78
40
  @props: children: any;
79
- @props:isOpen: any = false;
80
- @props:closeSidebar: any;
81
41
  @props:isSingle: any = true;
82
42
  @props:breakpoint: any = "md";
83
43
  @props:position: any = "fixed";
84
- @props:activateClickOutside: any = true;
85
- @props:backdrop: any = true;
86
- @props:backdropClass: any;
87
- @props:transition: any = fly;
88
- @props:params: any;
89
44
  @props:divClass: any;
90
45
  @props:ariaLabel: any;
91
46
  @props:nonActiveClass: any;
@@ -3,16 +3,9 @@ import { type SidebarProps as Props } from ".";
3
3
  * [Go to docs](https://svelte-5-ui-lib.codewithshin.com/)
4
4
  * ## Props
5
5
  * @props: children: any;
6
- * @props:isOpen: any = false;
7
- * @props:closeSidebar: any;
8
6
  * @props:isSingle: any = true;
9
7
  * @props:breakpoint: any = "md";
10
8
  * @props:position: any = "fixed";
11
- * @props:activateClickOutside: any = true;
12
- * @props:backdrop: any = true;
13
- * @props:backdropClass: any;
14
- * @props:transition: any = fly;
15
- * @props:params: any;
16
9
  * @props:divClass: any;
17
10
  * @props:ariaLabel: any;
18
11
  * @props:nonActiveClass: any;
@@ -1,10 +1,14 @@
1
1
  <script lang="ts">
2
- import { type SidebarGroupProps as Props } from ".";
2
+ import { type SidebarGroupProps as Props, sidebargroup, type SidebarCtxType } from ".";
3
+ import { getContext } from "svelte";
3
4
 
4
- let { children, class: className = "space-y-2", borderClass = "pt-4 mt-4 border-t border-gray-200 dark:border-gray-700", border = false, ...restProps }: Props = $props();
5
+ const context = getContext<SidebarCtxType>("sidebarContext") ?? {};
6
+
7
+ let { children, class: className, border = false, ...restProps }: Props = $props();
8
+ const { base } = $derived(sidebargroup({ breakpoint: context.breakpoint, border }));
5
9
  </script>
6
10
 
7
- <ul {...restProps} class={border ? borderClass : className}>
11
+ <ul {...restProps} class={base({ className })}>
8
12
  {@render children()}
9
13
  </ul>
10
14
 
@@ -14,6 +18,5 @@
14
18
  ## Props
15
19
  @props: children: any;
16
20
  @props:class: string = "space-y-2";
17
- @props:borderClass: any = "pt-4 mt-4 border-t border-gray-200 dark:border-gray-700";
18
- @props:border: any = false;
21
+ @props:border:boolean = false;
19
22
  -->
@@ -4,8 +4,7 @@ import { type SidebarGroupProps as Props } from ".";
4
4
  * ## Props
5
5
  * @props: children: any;
6
6
  * @props:class: string = "space-y-2";
7
- * @props:borderClass: any = "pt-4 mt-4 border-t border-gray-200 dark:border-gray-700";
8
- * @props:border: any = false;
7
+ * @props:border:boolean = false;
9
8
  */
10
9
  declare const SidebarGroup: import("svelte").Component<Props, {}, "">;
11
10
  type SidebarGroup = ReturnType<typeof SidebarGroup>;
@@ -27,7 +27,7 @@
27
27
  </script>
28
28
 
29
29
  <li class={className}>
30
- <a onclick={context.closeSidebar} {...restProps} {href} aria-current={(activeItem ?? sidebarUrl === href) ? "page" : undefined} class={twMerge(aCls, aClass)}>
30
+ <a {...restProps} {href} aria-current={(activeItem ?? sidebarUrl === href) ? "page" : undefined} class={twMerge(aCls, aClass)}>
31
31
  {#if iconSlot}
32
32
  {@render iconSlot()}
33
33
  {/if}
@@ -1,10 +1,9 @@
1
- import type { SidebarProps, SidebarDropdownWrapperProps, SidebarGroupProps, SidebarItemProps, SidebarButtonProps, SidebarCtaProps, SidebarBrandProps, SidebarCtxType, PosisionType, BreakpointType } from "./type";
1
+ import type { SidebarProps, SidebarDropdownWrapperProps, SidebarGroupProps, SidebarItemProps, SidebarCtaProps, SidebarBrandProps, SidebarCtxType, PosisionType, BreakpointType } from "./type";
2
2
  import Sidebar from "./Sidebar.svelte";
3
3
  import SidebarDropdownWrapper from "./SidebarDropdownWrapper.svelte";
4
4
  import SidebarGroup from "./SidebarGroup.svelte";
5
5
  import SidebarItem from "./SidebarItem.svelte";
6
- import SidebarButton from "./SidebarButton.svelte";
7
6
  import SidebarCta from "./SidebarCta.svelte";
8
7
  import SidebarBrand from "./SidebarBrand.svelte";
9
- import { sidebar, sidebarbutton, sidebarcta, sitebarbrand, sidebardropdownwrapper } from "./theme";
10
- export { Sidebar, sidebar, type SidebarProps, SidebarDropdownWrapper, sidebardropdownwrapper, type SidebarDropdownWrapperProps, SidebarGroup, type SidebarGroupProps, SidebarItem, type SidebarItemProps, type SidebarCtxType, SidebarButton, sidebarbutton, type SidebarButtonProps, SidebarCta, sidebarcta, type SidebarCtaProps, SidebarBrand, sitebarbrand, type SidebarBrandProps, type BreakpointType, type PosisionType };
8
+ import { sidebar, sidebarcta, sitebarbrand, sidebargroup, sidebardropdownwrapper } from "./theme";
9
+ export { Sidebar, sidebar, type SidebarProps, SidebarDropdownWrapper, sidebardropdownwrapper, type SidebarDropdownWrapperProps, SidebarGroup, sidebargroup, type SidebarGroupProps, SidebarItem, type SidebarItemProps, type SidebarCtxType, SidebarCta, sidebarcta, type SidebarCtaProps, SidebarBrand, sitebarbrand, type SidebarBrandProps, type BreakpointType, type PosisionType };
@@ -2,8 +2,7 @@ import Sidebar from "./Sidebar.svelte";
2
2
  import SidebarDropdownWrapper from "./SidebarDropdownWrapper.svelte";
3
3
  import SidebarGroup from "./SidebarGroup.svelte";
4
4
  import SidebarItem from "./SidebarItem.svelte";
5
- import SidebarButton from "./SidebarButton.svelte";
6
5
  import SidebarCta from "./SidebarCta.svelte";
7
6
  import SidebarBrand from "./SidebarBrand.svelte";
8
- import { sidebar, sidebarbutton, sidebarcta, sitebarbrand, sidebardropdownwrapper } from "./theme";
9
- export { Sidebar, sidebar, SidebarDropdownWrapper, sidebardropdownwrapper, SidebarGroup, SidebarItem, SidebarButton, sidebarbutton, SidebarCta, sidebarcta, SidebarBrand, sitebarbrand };
7
+ import { sidebar, sidebarcta, sitebarbrand, sidebargroup, sidebardropdownwrapper } from "./theme";
8
+ export { Sidebar, sidebar, SidebarDropdownWrapper, sidebardropdownwrapper, SidebarGroup, sidebargroup, SidebarItem, SidebarCta, sidebarcta, SidebarBrand, sitebarbrand };