@getmicdrop/svelte-components 2.4.0 → 2.6.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 (132) hide show
  1. package/dist/__LIB_STORES__.js +2 -30
  2. package/dist/components/Badges/Badge.svelte +3 -129
  3. package/dist/components/Badges/Badge.svelte.d.ts +2 -8
  4. package/dist/components/Badges/Badge.svelte.d.ts.map +1 -1
  5. package/dist/components/Breadcrumb/Breadcrumb.svelte +36 -65
  6. package/dist/components/Breadcrumb/Breadcrumb.svelte.d.ts +2 -16
  7. package/dist/components/Breadcrumb/Breadcrumb.svelte.d.ts.map +1 -1
  8. package/dist/components/Button/Button.svelte +0 -1
  9. package/dist/components/Calendar/Calendar.spec.d.ts +2 -0
  10. package/dist/components/Calendar/Calendar.spec.d.ts.map +1 -0
  11. package/dist/components/Calendar/Calendar.spec.js +131 -0
  12. package/dist/components/Calendar/Calendar.svelte +1115 -0
  13. package/dist/components/Calendar/{MiniMonthCalendar.svelte.d.ts → Calendar.svelte.d.ts} +21 -20
  14. package/dist/components/{Checkbox/Checkbox.svelte.d.ts.map → Calendar/Calendar.svelte.d.ts.map} +1 -1
  15. package/dist/components/Calendar/QuarterView.spec.d.ts +2 -0
  16. package/dist/components/Calendar/QuarterView.spec.d.ts.map +1 -0
  17. package/dist/components/Calendar/QuarterView.spec.js +394 -0
  18. package/dist/components/Calendar/QuarterView.stories.svelte +134 -0
  19. package/dist/components/{PublicCard/PublicCard.svelte.d.ts → Calendar/QuarterView.stories.svelte.d.ts} +21 -15
  20. package/dist/components/Calendar/QuarterView.stories.svelte.d.ts.map +1 -0
  21. package/dist/components/Calendar/QuarterView.svelte +736 -0
  22. package/dist/components/{FAQs/FAQs.svelte.d.ts → Calendar/QuarterView.svelte.d.ts} +10 -10
  23. package/dist/components/{Skeleton/Skeleton.svelte.d.ts.map → Calendar/QuarterView.svelte.d.ts.map} +1 -1
  24. package/dist/components/DarkModeToggle.svelte +0 -2
  25. package/dist/components/DarkModeToggle.svelte.d.ts.map +1 -1
  26. package/dist/components/Input/Input.svelte +12 -100
  27. package/dist/components/Input/Input.svelte.d.ts +6 -18
  28. package/dist/components/Input/Input.svelte.d.ts.map +1 -1
  29. package/dist/components/Input/MultiSelect.svelte +5 -4
  30. package/dist/components/Input/MultiSelect.svelte.d.ts +6 -6
  31. package/dist/components/Input/MultiSelect.svelte.d.ts.map +1 -1
  32. package/dist/components/Input/OTPInput.svelte +1 -1
  33. package/dist/components/Input/Select.svelte +5 -4
  34. package/dist/components/Input/Select.svelte.d.ts +6 -6
  35. package/dist/components/Input/Select.svelte.d.ts.map +1 -1
  36. package/dist/components/Layout/Header.svelte +4 -14
  37. package/dist/components/Modal/ConfirmationModal.svelte +17 -69
  38. package/dist/components/Modal/ConfirmationModal.svelte.d.ts +0 -22
  39. package/dist/components/Modal/ConfirmationModal.svelte.d.ts.map +1 -1
  40. package/dist/components/Modal/Modal.svelte +8 -34
  41. package/dist/components/Modal/Modal.svelte.d.ts +0 -2
  42. package/dist/components/Modal/Modal.svelte.d.ts.map +1 -1
  43. package/dist/components/PasswordStrengthIndicator/PasswordStrengthIndicator.svelte.d.ts +2 -2
  44. package/dist/components/Spinner/Spinner.svelte +17 -73
  45. package/dist/components/Spinner/Spinner.svelte.d.ts +3 -5
  46. package/dist/components/Spinner/Spinner.svelte.d.ts.map +1 -1
  47. package/dist/components/pages/performers/AvailabilityCalendarModal.svelte +632 -0
  48. package/dist/components/{ShowTimeCard/ShowTimeCard.svelte.d.ts → pages/performers/AvailabilityCalendarModal.svelte.d.ts} +14 -14
  49. package/dist/components/pages/performers/AvailabilityCalendarModal.svelte.d.ts.map +1 -0
  50. package/dist/components/pages/performers/ShowDetails.svelte.d.ts +2 -2
  51. package/dist/components/pages/performers/ShowItemCard.svelte.d.ts +8 -8
  52. package/dist/components/pages/performers/SwitchOption.svelte.d.ts +2 -2
  53. package/dist/components/pages/performers/VenueInfo.svelte.d.ts +2 -2
  54. package/dist/components/pages/performers/VenueItemCard.svelte +2 -2
  55. package/dist/components/pages/performers/VenueItemCard.svelte.d.ts +4 -4
  56. package/dist/components/pages/profile/profile-form.svelte +1 -1
  57. package/dist/components/pages/shows/TabNavigation.svelte +8 -7
  58. package/dist/constants/formOptions.d.ts +2 -5
  59. package/dist/constants/formOptions.d.ts.map +1 -1
  60. package/dist/constants/formOptions.js +1 -2
  61. package/dist/index.d.ts +4 -24
  62. package/dist/index.js +4 -30
  63. package/dist/services/EventService.js +75 -75
  64. package/dist/services/EventService.spec.js +217 -217
  65. package/dist/services/ShowService.spec.js +342 -342
  66. package/package.json +160 -160
  67. package/dist/components/AboutShow/AboutShow.svelte +0 -278
  68. package/dist/components/AboutShow/AboutShow.svelte.d.ts +0 -43
  69. package/dist/components/AboutShow/AboutShow.svelte.d.ts.map +0 -1
  70. package/dist/components/Accordion/Accordion.svelte +0 -44
  71. package/dist/components/Accordion/Accordion.svelte.d.ts +0 -42
  72. package/dist/components/Accordion/Accordion.svelte.d.ts.map +0 -1
  73. package/dist/components/Accordion/AccordionItem.svelte +0 -141
  74. package/dist/components/Accordion/AccordionItem.svelte.d.ts +0 -50
  75. package/dist/components/Accordion/AccordionItem.svelte.d.ts.map +0 -1
  76. package/dist/components/Calendar/MiniMonthCalendar.svelte +0 -1446
  77. package/dist/components/Calendar/MiniMonthCalendar.svelte.d.ts.map +0 -1
  78. package/dist/components/Checkbox/Checkbox.svelte +0 -116
  79. package/dist/components/Checkbox/Checkbox.svelte.d.ts +0 -52
  80. package/dist/components/Drawer/Drawer.svelte +0 -207
  81. package/dist/components/Drawer/Drawer.svelte.d.ts +0 -74
  82. package/dist/components/Drawer/Drawer.svelte.d.ts.map +0 -1
  83. package/dist/components/Dropdown/Dropdown.svelte +0 -129
  84. package/dist/components/Dropdown/Dropdown.svelte.d.ts +0 -48
  85. package/dist/components/Dropdown/Dropdown.svelte.d.ts.map +0 -1
  86. package/dist/components/Dropdown/DropdownItem.svelte +0 -111
  87. package/dist/components/Dropdown/DropdownItem.svelte.d.ts +0 -48
  88. package/dist/components/Dropdown/DropdownItem.svelte.d.ts.map +0 -1
  89. package/dist/components/FAQs/FAQs.svelte +0 -49
  90. package/dist/components/FAQs/FAQs.svelte.d.ts.map +0 -1
  91. package/dist/components/Input/Search.svelte +0 -173
  92. package/dist/components/Input/Search.svelte.d.ts +0 -68
  93. package/dist/components/Input/Search.svelte.d.ts.map +0 -1
  94. package/dist/components/Input/Textarea.svelte +0 -160
  95. package/dist/components/Input/Textarea.svelte.d.ts +0 -69
  96. package/dist/components/Input/Textarea.svelte.d.ts.map +0 -1
  97. package/dist/components/Label/Label.svelte +0 -60
  98. package/dist/components/Label/Label.svelte.d.ts +0 -48
  99. package/dist/components/Label/Label.svelte.d.ts.map +0 -1
  100. package/dist/components/Modal/InputModal.svelte +0 -180
  101. package/dist/components/Modal/InputModal.svelte.d.ts +0 -77
  102. package/dist/components/Modal/InputModal.svelte.d.ts.map +0 -1
  103. package/dist/components/Modal/StatusModal.svelte +0 -221
  104. package/dist/components/Modal/StatusModal.svelte.d.ts +0 -59
  105. package/dist/components/Modal/StatusModal.svelte.d.ts.map +0 -1
  106. package/dist/components/MonthSwitcher/MonthSwitcher.svelte +0 -206
  107. package/dist/components/MonthSwitcher/MonthSwitcher.svelte.d.ts +0 -37
  108. package/dist/components/MonthSwitcher/MonthSwitcher.svelte.d.ts.map +0 -1
  109. package/dist/components/OrderSummary/OrderSummary.svelte +0 -553
  110. package/dist/components/OrderSummary/OrderSummary.svelte.d.ts +0 -65
  111. package/dist/components/OrderSummary/OrderSummary.svelte.d.ts.map +0 -1
  112. package/dist/components/Pagination/Pagination.svelte +0 -197
  113. package/dist/components/Pagination/Pagination.svelte.d.ts +0 -53
  114. package/dist/components/Pagination/Pagination.svelte.d.ts.map +0 -1
  115. package/dist/components/PublicCard/PublicCard.svelte +0 -267
  116. package/dist/components/PublicCard/PublicCard.svelte.d.ts.map +0 -1
  117. package/dist/components/Radio/Radio.svelte +0 -119
  118. package/dist/components/Radio/Radio.svelte.d.ts +0 -54
  119. package/dist/components/Radio/Radio.svelte.d.ts.map +0 -1
  120. package/dist/components/ShowCard/ShowCard.svelte +0 -240
  121. package/dist/components/ShowCard/ShowCard.svelte.d.ts +0 -39
  122. package/dist/components/ShowCard/ShowCard.svelte.d.ts.map +0 -1
  123. package/dist/components/ShowTimeCard/ShowTimeCard.svelte +0 -92
  124. package/dist/components/ShowTimeCard/ShowTimeCard.svelte.d.ts.map +0 -1
  125. package/dist/components/Skeleton/Skeleton.svelte +0 -68
  126. package/dist/components/Skeleton/Skeleton.svelte.d.ts +0 -37
  127. package/dist/components/Tabs/TabItem.svelte +0 -39
  128. package/dist/components/Tabs/TabItem.svelte.d.ts +0 -52
  129. package/dist/components/Tabs/TabItem.svelte.d.ts.map +0 -1
  130. package/dist/components/Tabs/Tabs.svelte +0 -181
  131. package/dist/components/Tabs/Tabs.svelte.d.ts +0 -46
  132. package/dist/components/Tabs/Tabs.svelte.d.ts.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"MiniMonthCalendar.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/components/Calendar/MiniMonthCalendar.svelte.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAwxBA;;;;;;;;;;;;;;;;;mBAAwR;6CAT3O,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,OAAO,OAAO,QAAQ;IAC3L,cAAc,OAAO,QAAQ,EAAE,2BAA2B,CAAC,KAAK,CAAC,GAAG,OAAO,QAAQ,EAAE,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,GAAG;QAAE,UAAU,CAAC,EAAE,QAAQ,CAAA;KAAE,GAAG,OAAO,CAAC;IACjK,WAAW,OAAO,SAAS,KAAK,GAAG;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,KAAK,CAAA;KAAC,GAAG,OAAO,GAAG;QAAE,IAAI,CAAC,EAAE,GAAG,CAAC;QAAC,GAAG,CAAC,EAAE,GAAG,CAAA;KAAE,CAAC;IAC9G,eAAe,QAAQ,CAAC"}
@@ -1,116 +0,0 @@
1
- <script>
2
- import { createEventDispatcher } from "svelte";
3
-
4
- /** @type {boolean} Whether the checkbox is checked */
5
- export let checked = false;
6
- /** @type {string} The value attribute */
7
- export let value = "";
8
- /** @type {string} Name attribute for form submission */
9
- export let name = "";
10
- /** @type {boolean} Whether the checkbox is disabled */
11
- export let disabled = false;
12
- /** @type {string} Additional CSS classes */
13
- let className = "";
14
- export { className as class };
15
-
16
- const dispatch = createEventDispatcher();
17
-
18
- function handleChange(event) {
19
- checked = event.target.checked;
20
- dispatch("change", { checked, value });
21
- }
22
- </script>
23
-
24
- <label class="checkbox {className}" class:checkbox--disabled={disabled}>
25
- <input
26
- type="checkbox"
27
- {name}
28
- {value}
29
- {disabled}
30
- bind:checked
31
- on:change={handleChange}
32
- class="checkbox__input"
33
- />
34
- <span class="checkbox__box">
35
- <svg class="checkbox__check" viewBox="0 0 12 10" fill="none" xmlns="http://www.w3.org/2000/svg">
36
- <path d="M1 5L4.5 8.5L11 1" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
37
- </svg>
38
- </span>
39
- {#if $$slots.default}
40
- <span class="checkbox__label">
41
- <slot />
42
- </span>
43
- {/if}
44
- </label>
45
-
46
- <style>
47
- .checkbox {
48
- display: inline-flex;
49
- align-items: flex-start;
50
- gap: 0.5rem;
51
- cursor: pointer;
52
- -webkit-user-select: none;
53
- -moz-user-select: none;
54
- user-select: none;
55
- }
56
-
57
- .checkbox--disabled {
58
- cursor: not-allowed;
59
- opacity: 0.5;
60
- }
61
-
62
- .checkbox__input {
63
- position: absolute;
64
- opacity: 0;
65
- width: 0;
66
- height: 0;
67
- }
68
-
69
- .checkbox__box {
70
- flex-shrink: 0;
71
- width: 1.125rem;
72
- height: 1.125rem;
73
- border: 2px solid hsl(var(--Stroke-Primary, 220 13% 85%));
74
- border-radius: 0.25rem;
75
- background-color: hsl(var(--BG-Primary, 0 0% 100%));
76
- display: flex;
77
- align-items: center;
78
- justify-content: center;
79
- transition: all 0.15s ease;
80
- margin-top: 0.1875rem; /* Align with text baseline */
81
- }
82
-
83
- .checkbox__check {
84
- width: 0.75rem;
85
- height: 0.75rem;
86
- color: white;
87
- opacity: 0;
88
- transform: scale(0.5);
89
- transition: all 0.15s ease;
90
- }
91
-
92
- .checkbox__input:checked + .checkbox__box {
93
- background-color: hsl(var(--Brand-Primary, 221 83% 53%));
94
- border-color: hsl(var(--Brand-Primary, 221 83% 53%));
95
- }
96
-
97
- .checkbox__input:checked + .checkbox__box .checkbox__check {
98
- opacity: 1;
99
- transform: scale(1);
100
- }
101
-
102
- .checkbox__input:focus-visible + .checkbox__box {
103
- outline: 2px solid hsl(var(--Brand-Primary, 221 83% 53%));
104
- outline-offset: 2px;
105
- }
106
-
107
- .checkbox__input:disabled + .checkbox__box {
108
- background-color: hsl(var(--BG-Secondary, 220 14% 96%));
109
- }
110
-
111
- .checkbox__label {
112
- color: hsl(var(--Text-Primary, 220 13% 13%));
113
- font-size: 0.875rem;
114
- line-height: 1.5;
115
- }
116
- </style>
@@ -1,52 +0,0 @@
1
- export default Checkbox;
2
- type Checkbox = SvelteComponent<$$__sveltets_2_PropsWithChildren<{
3
- class?: string | undefined;
4
- disabled?: boolean | undefined;
5
- checked?: boolean | undefined;
6
- value?: string | undefined;
7
- name?: string | undefined;
8
- }, {
9
- default: {};
10
- }>, {
11
- change: CustomEvent<any>;
12
- } & {
13
- [evt: string]: CustomEvent<any>;
14
- }, {
15
- default: {};
16
- }> & {
17
- $$bindings?: string | undefined;
18
- };
19
- declare const Checkbox: $$__sveltets_2_IsomorphicComponent<$$__sveltets_2_PropsWithChildren<{
20
- class?: string | undefined;
21
- disabled?: boolean | undefined;
22
- checked?: boolean | undefined;
23
- value?: string | undefined;
24
- name?: string | undefined;
25
- }, {
26
- default: {};
27
- }>, {
28
- change: CustomEvent<any>;
29
- } & {
30
- [evt: string]: CustomEvent<any>;
31
- }, {
32
- default: {};
33
- }, {}, string>;
34
- type $$__sveltets_2_PropsWithChildren<Props, Slots> = Props & (Slots extends {
35
- default: any;
36
- } ? Props extends Record<string, never> ? any : {
37
- children?: any;
38
- } : {});
39
- interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
40
- new (options: import("svelte").ComponentConstructorOptions<Props>): import("svelte").SvelteComponent<Props, Events, Slots> & {
41
- $$bindings?: Bindings;
42
- } & Exports;
43
- (internal: unknown, props: Props & {
44
- $$events?: Events;
45
- $$slots?: Slots;
46
- }): Exports & {
47
- $set?: any;
48
- $on?: any;
49
- };
50
- z_$$bindings?: Bindings;
51
- }
52
- //# sourceMappingURL=Checkbox.svelte.d.ts.map
@@ -1,207 +0,0 @@
1
- <script>
2
- import { createEventDispatcher, onDestroy } from "svelte";
3
- import { fly, fade } from "svelte/transition";
4
- import { cubicOut } from "svelte/easing";
5
-
6
- /** @type {boolean} Whether the drawer is visible */
7
- export let show = false;
8
- /** @type {boolean} Flowbite-style hidden prop (inverse of show) */
9
- export let hidden = true;
10
- /** @type {string} Optional title for the drawer header */
11
- export let title = "";
12
- /** @type {'left' | 'right' | 'top' | 'bottom'} Which side the drawer slides from */
13
- export let placement = "left";
14
- /** @type {string} Width of the drawer (for left/right placement) */
15
- export let width = "320px";
16
- /** @type {string} Height of the drawer (for top/bottom placement) */
17
- export let height = "auto";
18
- /** @type {number} Transition duration in ms */
19
- export let duration = 200;
20
- /** @type {boolean} Whether clicking the backdrop closes the drawer */
21
- export let closeOnBackdropClick = true;
22
- /** @type {boolean} Whether pressing Escape closes the drawer */
23
- export let closeOnEscape = true;
24
- /** @type {string} Optional id for the drawer element */
25
- export let id = "";
26
- /** @type {object|undefined} Custom transition params (flowbite API) */
27
- export let transitionParams = undefined;
28
-
29
- const dispatch = createEventDispatcher();
30
-
31
- // Support both show and hidden props (flowbite uses hidden)
32
- $: isVisible = show || !hidden;
33
-
34
- function close() {
35
- hidden = true;
36
- show = false;
37
- dispatch("close");
38
- }
39
-
40
- function handleBackdropClick(e) {
41
- if (closeOnBackdropClick && e.target === e.currentTarget) {
42
- close();
43
- }
44
- }
45
-
46
- function handleKeydown(e) {
47
- if (closeOnEscape && e.key === "Escape" && isVisible) {
48
- close();
49
- }
50
- }
51
-
52
- // Calculate transition params based on placement (use custom if provided)
53
- $: computedTransitionParams = transitionParams || (() => {
54
- switch (placement) {
55
- case "left":
56
- return { x: -320, duration, easing: cubicOut };
57
- case "right":
58
- return { x: 320, duration, easing: cubicOut };
59
- case "top":
60
- return { y: -320, duration, easing: cubicOut };
61
- case "bottom":
62
- return { y: 320, duration, easing: cubicOut };
63
- default:
64
- return { x: -320, duration, easing: cubicOut };
65
- }
66
- })();
67
-
68
- // Lock body scroll when drawer is open
69
- $: if (typeof document !== "undefined") {
70
- if (isVisible) {
71
- document.body.style.overflow = "hidden";
72
- } else {
73
- document.body.style.overflow = "";
74
- }
75
- }
76
-
77
- onDestroy(() => {
78
- if (typeof document !== "undefined") {
79
- document.body.style.overflow = "";
80
- }
81
- });
82
- </script>
83
-
84
- <svelte:window on:keydown={handleKeydown} />
85
-
86
- {#if isVisible}
87
- <!-- svelte-ignore a11y-click-events-have-key-events -->
88
- <!-- svelte-ignore a11y-no-static-element-interactions -->
89
- <div
90
- class="drawer-backdrop"
91
- on:click={handleBackdropClick}
92
- transition:fade={{ duration: 150 }}
93
- >
94
- <div
95
- {id}
96
- class="drawer drawer--{placement}"
97
- style="--drawer-width: {width}; --drawer-height: {height};"
98
- on:click|stopPropagation
99
- transition:fly={computedTransitionParams}
100
- >
101
- <!-- Optional header with title -->
102
- {#if title || $$slots.header}
103
- <div class="drawer__header">
104
- {#if $$slots.header}
105
- <slot name="header" />
106
- {:else}
107
- <h3 class="drawer__title">{title}</h3>
108
- {/if}
109
- </div>
110
- {/if}
111
-
112
- <!-- Content slot -->
113
- <div class="drawer__content">
114
- <slot />
115
- </div>
116
-
117
- <!-- Actions slot (optional) -->
118
- {#if $$slots.actions}
119
- <div class="drawer__actions">
120
- <slot name="actions" />
121
- </div>
122
- {/if}
123
- </div>
124
- </div>
125
- {/if}
126
-
127
- <style>
128
- .drawer-backdrop {
129
- position: fixed;
130
- inset: 0;
131
- background-color: rgba(0, 0, 0, 0.5);
132
- z-index: var(--z-modal, 50);
133
- display: flex;
134
- touch-action: none;
135
- }
136
-
137
- .drawer {
138
- position: absolute;
139
- background-color: hsl(var(--BG-Primary, 0 0% 100%));
140
- box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
141
- display: flex;
142
- flex-direction: column;
143
- overflow: hidden;
144
- }
145
-
146
- /* Placement variants */
147
- .drawer--left {
148
- left: 0;
149
- top: 0;
150
- bottom: 0;
151
- width: var(--drawer-width, 320px);
152
- max-width: 100vw;
153
- }
154
-
155
- .drawer--right {
156
- right: 0;
157
- top: 0;
158
- bottom: 0;
159
- width: var(--drawer-width, 320px);
160
- max-width: 100vw;
161
- }
162
-
163
- .drawer--top {
164
- top: 0;
165
- left: 0;
166
- right: 0;
167
- height: var(--drawer-height, auto);
168
- max-height: 100vh;
169
- }
170
-
171
- .drawer--bottom {
172
- bottom: 0;
173
- left: 0;
174
- right: 0;
175
- height: var(--drawer-height, auto);
176
- max-height: 100vh;
177
- }
178
-
179
- .drawer__header {
180
- padding: 1rem 1.5rem;
181
- border-bottom: 1px solid hsl(var(--Stroke-Primary, 220 13% 85%));
182
- flex-shrink: 0;
183
- }
184
-
185
- .drawer__title {
186
- font-size: 1.125rem;
187
- font-weight: 600;
188
- color: hsl(var(--Text-Primary, 220 13% 13%));
189
- margin: 0;
190
- }
191
-
192
- .drawer__content {
193
- flex: 1;
194
- overflow-y: auto;
195
- overscroll-behavior: contain;
196
- -webkit-overflow-scrolling: touch;
197
- }
198
-
199
- .drawer__actions {
200
- padding: 1rem 1.5rem;
201
- border-top: 1px solid hsl(var(--Stroke-Primary, 220 13% 85%));
202
- flex-shrink: 0;
203
- display: flex;
204
- flex-direction: column;
205
- gap: 0.75rem;
206
- }
207
- </style>
@@ -1,74 +0,0 @@
1
- export default Drawer;
2
- type Drawer = SvelteComponent<$$__sveltets_2_PropsWithChildren<{
3
- duration?: number | undefined;
4
- title?: string | undefined;
5
- show?: boolean | undefined;
6
- hidden?: boolean | undefined;
7
- placement?: "left" | "right" | "top" | "bottom" | undefined;
8
- width?: string | undefined;
9
- height?: string | undefined;
10
- closeOnBackdropClick?: boolean | undefined;
11
- closeOnEscape?: boolean | undefined;
12
- id?: string | undefined;
13
- transitionParams?: object | undefined;
14
- }, {
15
- header: {};
16
- default: {};
17
- actions: {};
18
- }>, {
19
- click: PointerEvent;
20
- close: CustomEvent<any>;
21
- } & {
22
- [evt: string]: CustomEvent<any>;
23
- }, {
24
- header: {};
25
- default: {};
26
- actions: {};
27
- }> & {
28
- $$bindings?: string | undefined;
29
- };
30
- declare const Drawer: $$__sveltets_2_IsomorphicComponent<$$__sveltets_2_PropsWithChildren<{
31
- duration?: number | undefined;
32
- title?: string | undefined;
33
- show?: boolean | undefined;
34
- hidden?: boolean | undefined;
35
- placement?: "left" | "right" | "top" | "bottom" | undefined;
36
- width?: string | undefined;
37
- height?: string | undefined;
38
- closeOnBackdropClick?: boolean | undefined;
39
- closeOnEscape?: boolean | undefined;
40
- id?: string | undefined;
41
- transitionParams?: object | undefined;
42
- }, {
43
- header: {};
44
- default: {};
45
- actions: {};
46
- }>, {
47
- click: PointerEvent;
48
- close: CustomEvent<any>;
49
- } & {
50
- [evt: string]: CustomEvent<any>;
51
- }, {
52
- header: {};
53
- default: {};
54
- actions: {};
55
- }, {}, string>;
56
- type $$__sveltets_2_PropsWithChildren<Props, Slots> = Props & (Slots extends {
57
- default: any;
58
- } ? Props extends Record<string, never> ? any : {
59
- children?: any;
60
- } : {});
61
- interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
62
- new (options: import("svelte").ComponentConstructorOptions<Props>): import("svelte").SvelteComponent<Props, Events, Slots> & {
63
- $$bindings?: Bindings;
64
- } & Exports;
65
- (internal: unknown, props: Props & {
66
- $$events?: Events;
67
- $$slots?: Slots;
68
- }): Exports & {
69
- $set?: any;
70
- $on?: any;
71
- };
72
- z_$$bindings?: Bindings;
73
- }
74
- //# sourceMappingURL=Drawer.svelte.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Drawer.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/components/Drawer/Drawer.svelte.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwJA;;;;;;;;;;;uBAfW,MAAM,GAAC,SAAS;;;;;;;;;;;;;;eAe+N;sCATpN,KAAK,EAAE,KAAK;;;;;6CALL,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,OAAO,OAAO,QAAQ;IAC3L,cAAc,OAAO,QAAQ,EAAE,2BAA2B,CAAC,KAAK,CAAC,GAAG,OAAO,QAAQ,EAAE,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,GAAG;QAAE,UAAU,CAAC,EAAE,QAAQ,CAAA;KAAE,GAAG,OAAO,CAAC;IACjK,WAAW,OAAO,SAAS,KAAK,GAAG;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,KAAK,CAAA;KAAC,GAAG,OAAO,GAAG;QAAE,IAAI,CAAC,EAAE,GAAG,CAAC;QAAC,GAAG,CAAC,EAAE,GAAG,CAAA;KAAE,CAAC;IAC9G,eAAe,QAAQ,CAAC"}
@@ -1,129 +0,0 @@
1
- <script>
2
- import { createEventDispatcher, onMount, onDestroy } from "svelte";
3
-
4
- /** @type {boolean} Whether the dropdown is open */
5
- export let open = false;
6
- /** @type {string} Current active URL for highlighting (flowbite API) */
7
- export let activeUrl = "";
8
- /** @type {'bottom-start' | 'bottom-end' | 'bottom' | 'top-start' | 'top-end' | 'top'} Placement */
9
- export let placement = "bottom-start";
10
- /** @type {string} Additional CSS classes */
11
- let className = "";
12
- export { className as class };
13
-
14
- const dispatch = createEventDispatcher();
15
-
16
- let dropdownRef;
17
-
18
- function handleClickOutside(event) {
19
- if (dropdownRef && !dropdownRef.contains(event.target)) {
20
- // Check if click was on the trigger button (previous sibling)
21
- const parent = dropdownRef.parentElement;
22
- if (parent) {
23
- const siblings = Array.from(parent.children);
24
- const dropdownIndex = siblings.indexOf(dropdownRef);
25
- if (dropdownIndex > 0) {
26
- const trigger = siblings[dropdownIndex - 1];
27
- if (trigger.contains(event.target)) {
28
- return; // Let the trigger handle toggling
29
- }
30
- }
31
- }
32
- open = false;
33
- }
34
- }
35
-
36
- function handleKeydown(event) {
37
- if (event.key === "Escape" && open) {
38
- open = false;
39
- }
40
- }
41
-
42
- onMount(() => {
43
- document.addEventListener("click", handleClickOutside, true);
44
- document.addEventListener("keydown", handleKeydown);
45
- });
46
-
47
- onDestroy(() => {
48
- if (typeof document !== "undefined") {
49
- document.removeEventListener("click", handleClickOutside, true);
50
- document.removeEventListener("keydown", handleKeydown);
51
- }
52
- });
53
-
54
- // Provide context for DropdownItem
55
- import { setContext } from "svelte";
56
- setContext("dropdown", {
57
- activeUrl,
58
- close: () => { open = false; }
59
- });
60
- </script>
61
-
62
- {#if open}
63
- <div
64
- bind:this={dropdownRef}
65
- class="dropdown dropdown--{placement} {className}"
66
- role="menu"
67
- {...$$restProps}
68
- >
69
- <slot />
70
- </div>
71
- {/if}
72
-
73
- <style>
74
- .dropdown {
75
- position: absolute;
76
- z-index: 50;
77
- min-width: 10rem;
78
- background-color: hsl(var(--BG-Primary, 0 0% 100%));
79
- border: 1px solid hsl(var(--Stroke-Primary, 220 13% 85%));
80
- border-radius: 0.5rem;
81
- box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
82
- padding: 0.25rem 0;
83
- margin-top: 0.25rem;
84
- }
85
-
86
- .dropdown--bottom-start {
87
- top: 100%;
88
- left: 0;
89
- }
90
-
91
- .dropdown--bottom-end {
92
- top: 100%;
93
- right: 0;
94
- }
95
-
96
- .dropdown--bottom {
97
- top: 100%;
98
- left: 50%;
99
- transform: translateX(-50%);
100
- }
101
-
102
- .dropdown--top-start {
103
- bottom: 100%;
104
- left: 0;
105
- margin-top: 0;
106
- margin-bottom: 0.25rem;
107
- }
108
-
109
- .dropdown--top-end {
110
- bottom: 100%;
111
- right: 0;
112
- margin-top: 0;
113
- margin-bottom: 0.25rem;
114
- }
115
-
116
- .dropdown--top {
117
- bottom: 100%;
118
- left: 50%;
119
- transform: translateX(-50%);
120
- margin-top: 0;
121
- margin-bottom: 0.25rem;
122
- }
123
-
124
- /* Dark mode */
125
- :global(.dark) .dropdown {
126
- background-color: hsl(var(--BG-Primary, 220 13% 15%));
127
- border-color: hsl(var(--Stroke-Primary, 220 13% 30%));
128
- }
129
- </style>
@@ -1,48 +0,0 @@
1
- export default Dropdown;
2
- type Dropdown = SvelteComponent<$$__sveltets_2_PropsWithChildren<{
3
- [x: string]: any;
4
- class?: string | undefined;
5
- open?: boolean | undefined;
6
- placement?: "top" | "bottom" | "bottom-start" | "bottom-end" | "top-start" | "top-end" | undefined;
7
- activeUrl?: string | undefined;
8
- }, {
9
- default: {};
10
- }>, {
11
- [evt: string]: CustomEvent<any>;
12
- }, {
13
- default: {};
14
- }> & {
15
- $$bindings?: string | undefined;
16
- };
17
- declare const Dropdown: $$__sveltets_2_IsomorphicComponent<$$__sveltets_2_PropsWithChildren<{
18
- [x: string]: any;
19
- class?: string | undefined;
20
- open?: boolean | undefined;
21
- placement?: "top" | "bottom" | "bottom-start" | "bottom-end" | "top-start" | "top-end" | undefined;
22
- activeUrl?: string | undefined;
23
- }, {
24
- default: {};
25
- }>, {
26
- [evt: string]: CustomEvent<any>;
27
- }, {
28
- default: {};
29
- }, {}, string>;
30
- type $$__sveltets_2_PropsWithChildren<Props, Slots> = Props & (Slots extends {
31
- default: any;
32
- } ? Props extends Record<string, never> ? any : {
33
- children?: any;
34
- } : {});
35
- interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
36
- new (options: import("svelte").ComponentConstructorOptions<Props>): import("svelte").SvelteComponent<Props, Events, Slots> & {
37
- $$bindings?: Bindings;
38
- } & Exports;
39
- (internal: unknown, props: Props & {
40
- $$events?: Events;
41
- $$slots?: Slots;
42
- }): Exports & {
43
- $set?: any;
44
- $on?: any;
45
- };
46
- z_$$bindings?: Bindings;
47
- }
48
- //# sourceMappingURL=Dropdown.svelte.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Dropdown.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/components/Dropdown/Dropdown.svelte.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAgGA;;;;;;;;;;;;eAA6K;sCATvI,KAAK,EAAE,KAAK;;;;;6CALL,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,OAAO,OAAO,QAAQ;IAC3L,cAAc,OAAO,QAAQ,EAAE,2BAA2B,CAAC,KAAK,CAAC,GAAG,OAAO,QAAQ,EAAE,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,GAAG;QAAE,UAAU,CAAC,EAAE,QAAQ,CAAA;KAAE,GAAG,OAAO,CAAC;IACjK,WAAW,OAAO,SAAS,KAAK,GAAG;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,KAAK,CAAA;KAAC,GAAG,OAAO,GAAG;QAAE,IAAI,CAAC,EAAE,GAAG,CAAC;QAAC,GAAG,CAAC,EAAE,GAAG,CAAA;KAAE,CAAC;IAC9G,eAAe,QAAQ,CAAC"}