flowbite-svelte 0.44.19 → 0.44.21
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.
- package/README.md +2 -2
- package/dist/accordion/Accordion.svelte.d.ts +0 -2
- package/dist/accordion/Accordion.svelte.d.ts.map +1 -1
- package/dist/accordion/AccordionItem.svelte +4 -4
- package/dist/accordion/AccordionItem.svelte.d.ts +2 -2
- package/dist/alert/Alert.svelte +17 -35
- package/dist/alert/Alert.svelte.d.ts +8 -5
- package/dist/alert/Alert.svelte.d.ts.map +1 -1
- package/dist/avatar/Avatar.svelte +1 -1
- package/dist/badge/Badge.svelte +10 -25
- package/dist/badge/Badge.svelte.d.ts +7 -5
- package/dist/badge/Badge.svelte.d.ts.map +1 -1
- package/dist/banner/Banner.svelte +6 -6
- package/dist/bottom-navigation/BottomNav.svelte +8 -8
- package/dist/bottom-navigation/BottomNavItem.svelte +2 -2
- package/dist/breadcrumb/Breadcrumb.svelte +2 -2
- package/dist/breadcrumb/Breadcrumb.svelte.d.ts +1 -1
- package/dist/breadcrumb/BreadcrumbItem.svelte +6 -6
- package/dist/breadcrumb/BreadcrumbItem.svelte.d.ts +2 -2
- package/dist/buttons/Button.svelte +3 -39
- package/dist/buttons/Button.svelte.d.ts.map +1 -1
- package/dist/buttons/GradientButton.svelte +1 -1
- package/dist/cards/Card.svelte +1 -1
- package/dist/cards/Card.svelte.d.ts +0 -2
- package/dist/cards/Card.svelte.d.ts.map +1 -1
- package/dist/carousel/Carousel.svelte +0 -10
- package/dist/carousel/Carousel.svelte.d.ts.map +1 -1
- package/dist/carousel/ControlButton.svelte +1 -1
- package/dist/carousel/Indicators.svelte +1 -1
- package/dist/darkmode/DarkMode.svelte +6 -3
- package/dist/darkmode/DarkMode.svelte.d.ts.map +1 -1
- package/dist/datepicker/Datepicker.svelte +5 -5
- package/dist/datepicker/Datepicker.svelte.d.ts +1 -1
- package/dist/drawer/Drawer.svelte +5 -5
- package/dist/drawer/Drawer.svelte.d.ts +2 -2
- package/dist/dropdown/Dropdown.svelte.d.ts +0 -2
- package/dist/dropdown/Dropdown.svelte.d.ts.map +1 -1
- package/dist/footer/FooterBrand.svelte +2 -2
- package/dist/footer/FooterBrand.svelte.d.ts +1 -1
- package/dist/footer/FooterCopyright.svelte +1 -1
- package/dist/footer/FooterLink.svelte +2 -2
- package/dist/footer/FooterLink.svelte.d.ts +1 -1
- package/dist/forms/Checkbox.svelte +2 -2
- package/dist/forms/Checkbox.svelte.d.ts +1 -1
- package/dist/forms/FloatingLabelInput.svelte +3 -3
- package/dist/forms/Input.svelte +7 -7
- package/dist/forms/Input.svelte.d.ts +1 -1
- package/dist/forms/InputAddon.svelte +3 -3
- package/dist/forms/Label.svelte +2 -2
- package/dist/forms/Label.svelte.d.ts +1 -1
- package/dist/forms/MultiSelect.svelte +29 -34
- package/dist/forms/MultiSelect.svelte.d.ts +0 -1
- package/dist/forms/MultiSelect.svelte.d.ts.map +1 -1
- package/dist/forms/Radio.svelte +2 -2
- package/dist/forms/Radio.svelte.d.ts +1 -1
- package/dist/forms/Search.svelte +1 -1
- package/dist/forms/Textarea.svelte +1 -1
- package/dist/forms/Toggle.svelte +4 -4
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/indicators/Indicator.svelte +15 -15
- package/dist/list-group/Listgroup.svelte +7 -6
- package/dist/list-group/Listgroup.svelte.d.ts +2 -3
- package/dist/list-group/Listgroup.svelte.d.ts.map +1 -1
- package/dist/list-group/ListgroupItem.svelte +4 -2
- package/dist/list-group/ListgroupItem.svelte.d.ts +2 -0
- package/dist/list-group/ListgroupItem.svelte.d.ts.map +1 -1
- package/dist/marquee/Marquee.svelte +4 -11
- package/dist/mega-menu/MegaMenu.svelte.d.ts +0 -2
- package/dist/mega-menu/MegaMenu.svelte.d.ts.map +1 -1
- package/dist/modal/Modal.svelte +12 -7
- package/dist/modal/Modal.svelte.d.ts +1 -3
- package/dist/modal/Modal.svelte.d.ts.map +1 -1
- package/dist/navbar/NavHamburger.svelte +1 -1
- package/dist/navbar/NavLi.svelte +1 -1
- package/dist/navbar/NavUl.svelte +2 -2
- package/dist/navbar/NavUl.svelte.d.ts +1 -1
- package/dist/navbar/Navbar.svelte.d.ts +0 -2
- package/dist/navbar/Navbar.svelte.d.ts.map +1 -1
- package/dist/pagination/Pagination.svelte +5 -5
- package/dist/pagination/Pagination.svelte.d.ts +1 -1
- package/dist/popover/Popover.svelte.d.ts +0 -2
- package/dist/popover/Popover.svelte.d.ts.map +1 -1
- package/dist/rating/Rating.svelte +1 -1
- package/dist/rating/RatingComment.svelte +5 -5
- package/dist/rating/Review.svelte +3 -3
- package/dist/rating/Review.svelte.d.ts +1 -1
- package/dist/rating/ScoreRating.svelte +6 -6
- package/dist/rating/ScoreRating.svelte.d.ts +2 -2
- package/dist/sidebar/SidebarBrand.svelte +4 -4
- package/dist/sidebar/SidebarBrand.svelte.d.ts +2 -2
- package/dist/sidebar/SidebarCta.svelte +2 -2
- package/dist/sidebar/SidebarCta.svelte.d.ts +1 -1
- package/dist/sidebar/SidebarDropdownItem.svelte +4 -4
- package/dist/sidebar/SidebarDropdownItem.svelte.d.ts +2 -2
- package/dist/sidebar/SidebarDropdownWrapper.svelte +2 -2
- package/dist/sidebar/SidebarDropdownWrapper.svelte.d.ts +1 -1
- package/dist/sidebar/SidebarItem.svelte +2 -2
- package/dist/sidebar/SidebarItem.svelte.d.ts +1 -1
- package/dist/skeleton/CardPlaceholder.svelte +1 -1
- package/dist/skeleton/ImagePlaceholder.svelte +2 -2
- package/dist/skeleton/ImagePlaceholder.svelte.d.ts +1 -1
- package/dist/skeleton/TestimonialPlaceholder.svelte +2 -2
- package/dist/skeleton/TextPlaceholder.svelte +6 -6
- package/dist/skeleton/WidgetPlaceholder.svelte +1 -1
- package/dist/speed-dial/SpeedDial.svelte +2 -2
- package/dist/speed-dial/SpeedDial.svelte.d.ts +1 -1
- package/dist/speed-dial/SpeedDialButton.svelte +2 -2
- package/dist/speed-dial/SpeedDialButton.svelte.d.ts +1 -1
- package/dist/table/TableSearch.svelte +4 -4
- package/dist/table/TableSearch.svelte.d.ts +2 -2
- package/dist/tabs/Tabs.svelte +4 -4
- package/dist/tabs/Tabs.svelte.d.ts +1 -1
- package/dist/timeline/Activity.svelte +2 -2
- package/dist/timeline/Activity.svelte.d.ts +1 -1
- package/dist/timeline/ActivityItem.svelte +4 -4
- package/dist/timeline/ActivityItem.svelte.d.ts +2 -2
- package/dist/timeline/GroupItem.svelte +4 -4
- package/dist/timeline/GroupItem.svelte.d.ts +1 -1
- package/dist/timeline/Timeline.svelte +3 -3
- package/dist/timeline/TimelineItem.svelte +6 -6
- package/dist/toast/Toast.svelte +21 -32
- package/dist/toast/Toast.svelte.d.ts +7 -6
- package/dist/toast/Toast.svelte.d.ts.map +1 -1
- package/dist/toolbar/Toolbar.svelte +1 -1
- package/dist/toolbar/Toolbar.svelte.d.ts +0 -2
- package/dist/toolbar/Toolbar.svelte.d.ts.map +1 -1
- package/dist/toolbar/ToolbarGroup.svelte +2 -2
- package/dist/toolbar/ToolbarGroup.svelte.d.ts +1 -1
- package/dist/tooltip/Tooltip.svelte.d.ts +0 -2
- package/dist/tooltip/Tooltip.svelte.d.ts.map +1 -1
- package/dist/types.d.ts +2 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/typography/Blockquote.svelte +2 -2
- package/dist/typography/Blockquote.svelte.d.ts +1 -1
- package/dist/typography/Hr.svelte +6 -6
- package/dist/typography/Hr.svelte.d.ts +3 -3
- package/dist/typography/P.svelte +2 -2
- package/dist/typography/P.svelte.d.ts +1 -1
- package/dist/utils/CloseButton.svelte +1 -1
- package/dist/utils/Frame.svelte +3 -10
- package/dist/utils/Frame.svelte.d.ts +0 -5
- package/dist/utils/Frame.svelte.d.ts.map +1 -1
- package/dist/utils/Popper.svelte +7 -6
- package/dist/utils/Popper.svelte.d.ts +3 -2
- package/dist/utils/Popper.svelte.d.ts.map +1 -1
- package/dist/utils/TransitionFrame.svelte +37 -0
- package/dist/utils/TransitionFrame.svelte.d.ts +43 -0
- package/dist/utils/TransitionFrame.svelte.d.ts.map +1 -0
- package/package.json +22 -18
- package/dist/utils/createEventDispatcher.d.ts +0 -2
- package/dist/utils/createEventDispatcher.d.ts.map +0 -1
- package/dist/utils/createEventDispatcher.js +0 -22
|
@@ -10,7 +10,7 @@ export let datepickerFormat = 'mm/dd/yyyy';
|
|
|
10
10
|
export let datepickerOrientation = 'bottom';
|
|
11
11
|
export let datepickerTitle = 'Flowbite datepicker';
|
|
12
12
|
export let attribute = '';
|
|
13
|
-
export let inputClass = 'bg-gray-50 border border-gray-300 text-gray-900 sm:text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full
|
|
13
|
+
export let inputClass = 'bg-gray-50 border border-gray-300 text-gray-900 sm:text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full ps-10 p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500';
|
|
14
14
|
$: setAttribute = (node, params) => {
|
|
15
15
|
if (params) {
|
|
16
16
|
node.setAttribute(params, '');
|
|
@@ -26,14 +26,14 @@ $: setAttribute = (node, params) => {
|
|
|
26
26
|
{#if range}
|
|
27
27
|
<div date-rangepicker class="flex items-center">
|
|
28
28
|
<div class="relative">
|
|
29
|
-
<div class="flex absolute inset-y-0
|
|
29
|
+
<div class="flex absolute inset-y-0 start-0 items-center ps-3 pointer-events-none">
|
|
30
30
|
<Calendar />
|
|
31
31
|
</div>
|
|
32
32
|
<input name="start" type="text" class={inputClass} placeholder="Select date start" />
|
|
33
33
|
</div>
|
|
34
34
|
<span class="mx-4 text-gray-500">to</span>
|
|
35
35
|
<div class="relative">
|
|
36
|
-
<div class="flex absolute inset-y-0
|
|
36
|
+
<div class="flex absolute inset-y-0 start-0 items-center ps-3 pointer-events-none">
|
|
37
37
|
<Calendar />
|
|
38
38
|
</div>
|
|
39
39
|
<input name="end" type="text" class={inputClass} placeholder="Select date end" />
|
|
@@ -41,7 +41,7 @@ $: setAttribute = (node, params) => {
|
|
|
41
41
|
</div>
|
|
42
42
|
{:else}
|
|
43
43
|
<div class="relative">
|
|
44
|
-
<div class="flex absolute inset-y-0
|
|
44
|
+
<div class="flex absolute inset-y-0 start-0 items-center ps-3 pointer-events-none">
|
|
45
45
|
<Calendar />
|
|
46
46
|
</div>
|
|
47
47
|
{#if datepickerButtons}
|
|
@@ -64,5 +64,5 @@ $: setAttribute = (node, params) => {
|
|
|
64
64
|
@prop export let datepickerOrientation: string = 'bottom';
|
|
65
65
|
@prop export let datepickerTitle: string = 'Flowbite datepicker';
|
|
66
66
|
@prop export let attribute: string = '';
|
|
67
|
-
@prop export let inputClass: string = 'bg-gray-50 border border-gray-300 text-gray-900 sm:text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full
|
|
67
|
+
@prop export let inputClass: string = 'bg-gray-50 border border-gray-300 text-gray-900 sm:text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full ps-10 p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500';
|
|
68
68
|
-->
|
|
@@ -41,7 +41,7 @@ export type DatepickerSlots = typeof __propDef.slots;
|
|
|
41
41
|
* @prop export let datepickerOrientation: string = 'bottom';
|
|
42
42
|
* @prop export let datepickerTitle: string = 'Flowbite datepicker';
|
|
43
43
|
* @prop export let attribute: string = '';
|
|
44
|
-
* @prop export let inputClass: string = 'bg-gray-50 border border-gray-300 text-gray-900 sm:text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full
|
|
44
|
+
* @prop export let inputClass: string = 'bg-gray-50 border border-gray-300 text-gray-900 sm:text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full ps-10 p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500';
|
|
45
45
|
*/
|
|
46
46
|
export default class Datepicker extends SvelteComponent<DatepickerProps, DatepickerEvents, DatepickerSlots> {
|
|
47
47
|
}
|
|
@@ -4,8 +4,8 @@ import { clickOutside } from '../utils/clickOutside';
|
|
|
4
4
|
export let activateClickOutside = true;
|
|
5
5
|
export let hidden = true;
|
|
6
6
|
export let position = 'fixed';
|
|
7
|
-
export let leftOffset = 'inset-y-0
|
|
8
|
-
export let rightOffset = 'inset-y-0
|
|
7
|
+
export let leftOffset = 'inset-y-0 start-0';
|
|
8
|
+
export let rightOffset = 'inset-y-0 end-0';
|
|
9
9
|
export let topOffset = 'inset-x-0 top-0';
|
|
10
10
|
export let bottomOffset = 'inset-x-0 bottom-0';
|
|
11
11
|
export let width = 'w-80';
|
|
@@ -39,7 +39,7 @@ const handleDrawer = () => {
|
|
|
39
39
|
hidden = !hidden;
|
|
40
40
|
};
|
|
41
41
|
const handleClickOutside = () => activateClickOutside && !hidden && handleDrawer();
|
|
42
|
-
let backdropDivClass = twMerge('fixed top-0
|
|
42
|
+
let backdropDivClass = twMerge('fixed top-0 start-0 z-50 w-full h-full', backdrop && bgColor, backdrop && bgOpacity);
|
|
43
43
|
function clickOutsideWrapper(node, callback) {
|
|
44
44
|
return activateClickOutside ? clickOutside(node, callback) : undefined;
|
|
45
45
|
}
|
|
@@ -64,8 +64,8 @@ function clickOutsideWrapper(node, callback) {
|
|
|
64
64
|
@prop export let activateClickOutside: boolean = true;
|
|
65
65
|
@prop export let hidden: boolean = true;
|
|
66
66
|
@prop export let position: 'fixed' | 'absolute' = 'fixed';
|
|
67
|
-
@prop export let leftOffset: string = 'inset-y-0
|
|
68
|
-
@prop export let rightOffset: string = 'inset-y-0
|
|
67
|
+
@prop export let leftOffset: string = 'inset-y-0 start-0';
|
|
68
|
+
@prop export let rightOffset: string = 'inset-y-0 end-0';
|
|
69
69
|
@prop export let topOffset: string = 'inset-x-0 top-0';
|
|
70
70
|
@prop export let bottomOffset: string = 'inset-x-0 bottom-0';
|
|
71
71
|
@prop export let width: string = 'w-80';
|
|
@@ -38,8 +38,8 @@ export type DrawerSlots = typeof __propDef.slots;
|
|
|
38
38
|
* @prop export let activateClickOutside: boolean = true;
|
|
39
39
|
* @prop export let hidden: boolean = true;
|
|
40
40
|
* @prop export let position: 'fixed' | 'absolute' = 'fixed';
|
|
41
|
-
* @prop export let leftOffset: string = 'inset-y-0
|
|
42
|
-
* @prop export let rightOffset: string = 'inset-y-0
|
|
41
|
+
* @prop export let leftOffset: string = 'inset-y-0 start-0';
|
|
42
|
+
* @prop export let rightOffset: string = 'inset-y-0 end-0';
|
|
43
43
|
* @prop export let topOffset: string = 'inset-x-0 top-0';
|
|
44
44
|
* @prop export let bottomOffset: string = 'inset-x-0 bottom-0';
|
|
45
45
|
* @prop export let width: string = 'w-80';
|
|
@@ -9,8 +9,6 @@ declare const __propDef: {
|
|
|
9
9
|
rounded?: boolean | undefined;
|
|
10
10
|
border?: boolean | undefined;
|
|
11
11
|
shadow?: boolean | undefined;
|
|
12
|
-
transition?: ((node: HTMLElement, params: any) => import("svelte/transition").TransitionConfig) | undefined;
|
|
13
|
-
params?: object | undefined;
|
|
14
12
|
node?: HTMLElement | undefined;
|
|
15
13
|
use?: import("svelte/action").Action<HTMLElement, any, Record<never, any>> | undefined;
|
|
16
14
|
options?: object | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dropdown.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/dropdown/Dropdown.svelte"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAEvC;AACC,MAAM,MAAM,YAAY,GAAG;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AA+EJ,QAAA,MAAM,SAAS
|
|
1
|
+
{"version":3,"file":"Dropdown.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/dropdown/Dropdown.svelte"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAEvC;AACC,MAAM,MAAM,YAAY,GAAG;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AA+EJ,QAAA,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAwC,CAAC;AACxD,MAAM,MAAM,aAAa,GAAG,OAAO,SAAS,CAAC,KAAK,CAAC;AACnD,MAAM,MAAM,cAAc,GAAG,OAAO,SAAS,CAAC,MAAM,CAAC;AACrD,MAAM,MAAM,aAAa,GAAG,OAAO,SAAS,CAAC,KAAK,CAAC;AAEnD;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,eAAe,CAAC,aAAa,EAAE,cAAc,EAAE,aAAa,CAAC;CAClG"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script>import { twMerge } from 'tailwind-merge';
|
|
2
2
|
export let aClass = 'flex items-center';
|
|
3
3
|
export let spanClass = 'self-center text-2xl font-semibold whitespace-nowrap dark:text-white';
|
|
4
|
-
export let imgClass = '
|
|
4
|
+
export let imgClass = 'me-3 h-8';
|
|
5
5
|
export let href = '';
|
|
6
6
|
export let src = '';
|
|
7
7
|
export let alt = '';
|
|
@@ -28,7 +28,7 @@ let imgCls = twMerge(imgClass, $$props.classImg);
|
|
|
28
28
|
## Props
|
|
29
29
|
@prop export let aClass: string = 'flex items-center';
|
|
30
30
|
@prop export let spanClass: string = 'self-center text-2xl font-semibold whitespace-nowrap dark:text-white';
|
|
31
|
-
@prop export let imgClass: string = '
|
|
31
|
+
@prop export let imgClass: string = 'me-3 h-8';
|
|
32
32
|
@prop export let href: string = '';
|
|
33
33
|
@prop export let src: string = '';
|
|
34
34
|
@prop export let alt: string = '';
|
|
@@ -26,7 +26,7 @@ export type FooterBrandSlots = typeof __propDef.slots;
|
|
|
26
26
|
* ## Props
|
|
27
27
|
* @prop export let aClass: string = 'flex items-center';
|
|
28
28
|
* @prop export let spanClass: string = 'self-center text-2xl font-semibold whitespace-nowrap dark:text-white';
|
|
29
|
-
* @prop export let imgClass: string = '
|
|
29
|
+
* @prop export let imgClass: string = 'me-3 h-8';
|
|
30
30
|
* @prop export let href: string = '';
|
|
31
31
|
* @prop export let src: string = '';
|
|
32
32
|
* @prop export let alt: string = '';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<script>import { twMerge } from 'tailwind-merge';
|
|
2
|
-
export let liClass = '
|
|
2
|
+
export let liClass = 'me-4 last:me-0 md:me-6';
|
|
3
3
|
export let aClass = 'hover:underline';
|
|
4
4
|
export let href = '';
|
|
5
5
|
export let target = undefined;
|
|
@@ -17,7 +17,7 @@ let aCls = twMerge(aClass, $$props.classA);
|
|
|
17
17
|
@component
|
|
18
18
|
[Go to docs](https://flowbite-svelte.com/)
|
|
19
19
|
## Props
|
|
20
|
-
@prop export let liClass: string = '
|
|
20
|
+
@prop export let liClass: string = 'me-4 last:me-0 md:me-6';
|
|
21
21
|
@prop export let aClass: string = 'hover:underline';
|
|
22
22
|
@prop export let href: string = '';
|
|
23
23
|
@prop export let target: string | undefined = undefined;
|
|
@@ -20,7 +20,7 @@ export type FooterLinkSlots = typeof __propDef.slots;
|
|
|
20
20
|
/**
|
|
21
21
|
* [Go to docs](https://flowbite-svelte.com/)
|
|
22
22
|
* ## Props
|
|
23
|
-
* @prop export let liClass: string = '
|
|
23
|
+
* @prop export let liClass: string = 'me-4 last:me-0 md:me-6';
|
|
24
24
|
* @prop export let aClass: string = 'hover:underline';
|
|
25
25
|
* @prop export let href: string = '';
|
|
26
26
|
* @prop export let target: string | undefined = undefined;
|
|
@@ -9,7 +9,7 @@ export let inline = false;
|
|
|
9
9
|
export let group = [];
|
|
10
10
|
export let value = 'on';
|
|
11
11
|
export let checked = undefined;
|
|
12
|
-
export let spacing = '
|
|
12
|
+
export let spacing = 'me-2';
|
|
13
13
|
// tinted if put in component having its own background
|
|
14
14
|
let background = getContext('background');
|
|
15
15
|
// react on external group changes
|
|
@@ -60,5 +60,5 @@ function onChange() {
|
|
|
60
60
|
@prop export let group: (string | number)[] = [];
|
|
61
61
|
@prop export let value: string | number = 'on';
|
|
62
62
|
@prop export let checked: boolean | undefined = undefined;
|
|
63
|
-
@prop export let spacing: string = '
|
|
63
|
+
@prop export let spacing: string = 'me-2';
|
|
64
64
|
-->
|
|
@@ -42,7 +42,7 @@ export type CheckboxSlots = typeof __propDef.slots;
|
|
|
42
42
|
* @prop export let group: (string | number)[] = [];
|
|
43
43
|
* @prop export let value: string | number = 'on';
|
|
44
44
|
* @prop export let checked: boolean | undefined = undefined;
|
|
45
|
-
* @prop export let spacing: string = '
|
|
45
|
+
* @prop export let spacing: string = 'me-2';
|
|
46
46
|
*/
|
|
47
47
|
export default class Checkbox extends SvelteComponent<CheckboxProps, CheckboxEvents, CheckboxSlots> {
|
|
48
48
|
}
|
|
@@ -45,9 +45,9 @@ const inputClasses = {
|
|
|
45
45
|
standard: 'block w-full text-sm text-gray-900 bg-transparent border-0 border-b-2 appearance-none dark:text-white focus:outline-none focus:ring-0 peer'
|
|
46
46
|
};
|
|
47
47
|
const labelClasses = {
|
|
48
|
-
filled: 'absolute text-sm duration-300 transform -translate-y-4 scale-75 top-4 z-10 origin-
|
|
49
|
-
outlined: 'absolute text-sm duration-300 transform -translate-y-4 scale-75 top-2 z-10 origin-
|
|
50
|
-
standard: 'absolute text-sm duration-300 transform -translate-y-6 scale-75 top-3 -z-10 origin-
|
|
48
|
+
filled: 'absolute text-sm duration-300 transform -translate-y-4 scale-75 top-4 z-10 origin-left rtl:origin-right start-2.5 peer-placeholder-shown:scale-100 peer-placeholder-shown:translate-y-0 peer-focus:scale-75 peer-focus:-translate-y-4',
|
|
49
|
+
outlined: 'absolute text-sm duration-300 transform -translate-y-4 scale-75 top-2 z-10 origin-left rtl:origin-right bg-white dark:bg-gray-900 px-2 peer-focus:px-2 peer-placeholder-shown:scale-100 peer-placeholder-shown:-translate-y-1/2 peer-placeholder-shown:top-1/2 peer-focus:top-2 peer-focus:scale-75 peer-focus:-translate-y-4 start-1',
|
|
50
|
+
standard: 'absolute text-sm duration-300 transform -translate-y-6 scale-75 top-3 -z-10 origin-left rtl:origin-right peer-focus:start-0 peer-placeholder-shown:scale-100 peer-placeholder-shown:translate-y-0 peer-focus:scale-75 peer-focus:-translate-y-6'
|
|
51
51
|
};
|
|
52
52
|
const inputColorClasses = {
|
|
53
53
|
base: 'border-gray-300 dark:border-gray-600 dark:focus:border-primary-500 focus:border-primary-600',
|
package/dist/forms/Input.svelte
CHANGED
|
@@ -9,7 +9,7 @@ import { getContext } from 'svelte';
|
|
|
9
9
|
export let type = 'text';
|
|
10
10
|
export let value = undefined;
|
|
11
11
|
export let size = undefined;
|
|
12
|
-
export let defaultClass = 'block w-full disabled:cursor-not-allowed disabled:opacity-50';
|
|
12
|
+
export let defaultClass = 'block w-full disabled:cursor-not-allowed disabled:opacity-50 rtl:text-right';
|
|
13
13
|
export let color = 'base';
|
|
14
14
|
export let floatClass = 'flex absolute inset-y-0 items-center text-gray-500 dark:text-gray-400';
|
|
15
15
|
const borderClasses = {
|
|
@@ -33,20 +33,20 @@ const colorClasses = {
|
|
|
33
33
|
let background = getContext('background');
|
|
34
34
|
let group = getContext('group');
|
|
35
35
|
const textSizes = { sm: 'sm:text-xs', md: 'text-sm', lg: 'sm:text-base' };
|
|
36
|
-
const leftPadding = { sm: '
|
|
37
|
-
const rightPadding = { sm: '
|
|
36
|
+
const leftPadding = { sm: 'ps-9', md: 'ps-10', lg: 'ps-11' };
|
|
37
|
+
const rightPadding = { sm: 'pe-9', md: 'pe-10', lg: 'pe-11' };
|
|
38
38
|
const inputPadding = { sm: 'p-2', md: 'p-2.5', lg: 'p-3' };
|
|
39
39
|
$: _size = size || clampSize(group?.size) || 'md';
|
|
40
40
|
let inputClass;
|
|
41
41
|
$: {
|
|
42
42
|
const _color = color === 'base' && background ? 'tinted' : color;
|
|
43
|
-
inputClass = twMerge([defaultClass, ($$slots.left && leftPadding[_size]) || ($$slots.right && rightPadding[_size])
|
|
43
|
+
inputClass = twMerge([defaultClass, inputPadding[_size], ($$slots.left && leftPadding[_size]) || ($$slots.right && rightPadding[_size]), ringClasses[color], colorClasses[_color], borderClasses[_color], textSizes[_size], group || 'rounded-lg', group && 'first:rounded-s-lg last:rounded-e-lg', group && 'border-s-0 first:border-s last:border-e', $$props.class]);
|
|
44
44
|
}
|
|
45
45
|
</script>
|
|
46
46
|
|
|
47
47
|
<Wrapper class="relative w-full" show={$$slots.left || $$slots.right}>
|
|
48
48
|
{#if $$slots.left}
|
|
49
|
-
<div class="{twMerge(floatClass, $$props.classLeft)}
|
|
49
|
+
<div class="{twMerge(floatClass, $$props.classLeft)} start-0 ps-2.5 pointer-events-none">
|
|
50
50
|
<slot name="left" />
|
|
51
51
|
</div>
|
|
52
52
|
{/if}
|
|
@@ -54,7 +54,7 @@ $: {
|
|
|
54
54
|
<input {...$$restProps} bind:value on:blur on:change on:click on:contextmenu on:focus on:keydown on:keypress on:keyup on:mouseover on:mouseenter on:mouseleave on:paste on:input {...{ type }} class={inputClass} />
|
|
55
55
|
</slot>
|
|
56
56
|
{#if $$slots.right}
|
|
57
|
-
<div class="{twMerge(floatClass, $$props.classRight)}
|
|
57
|
+
<div class="{twMerge(floatClass, $$props.classRight)} end-0 pe-2.5"><slot name="right" /></div>
|
|
58
58
|
{/if}
|
|
59
59
|
</Wrapper>
|
|
60
60
|
|
|
@@ -65,7 +65,7 @@ $: {
|
|
|
65
65
|
@prop export let type: InputType = 'text';
|
|
66
66
|
@prop export let value: any = undefined;
|
|
67
67
|
@prop export let size: FormSizeType | undefined = undefined;
|
|
68
|
-
@prop export let defaultClass: string = 'block w-full disabled:cursor-not-allowed disabled:opacity-50';
|
|
68
|
+
@prop export let defaultClass: string = 'block w-full disabled:cursor-not-allowed disabled:opacity-50 rtl:text-right';
|
|
69
69
|
@prop export let color: 'base' | 'green' | 'red' = 'base';
|
|
70
70
|
@prop export let floatClass: string = 'flex absolute inset-y-0 items-center text-gray-500 dark:text-gray-400';
|
|
71
71
|
-->
|
|
@@ -48,7 +48,7 @@ export type InputSlots = typeof __propDef.slots;
|
|
|
48
48
|
* @prop export let type: InputType = 'text';
|
|
49
49
|
* @prop export let value: any = undefined;
|
|
50
50
|
* @prop export let size: FormSizeType | undefined = undefined;
|
|
51
|
-
* @prop export let defaultClass: string = 'block w-full disabled:cursor-not-allowed disabled:opacity-50';
|
|
51
|
+
* @prop export let defaultClass: string = 'block w-full disabled:cursor-not-allowed disabled:opacity-50 rtl:text-right';
|
|
52
52
|
* @prop export let color: 'base' | 'green' | 'red' = 'base';
|
|
53
53
|
* @prop export let floatClass: string = 'flex absolute inset-y-0 items-center text-gray-500 dark:text-gray-400';
|
|
54
54
|
*/
|
|
@@ -14,14 +14,14 @@ const darkBgClasses = {
|
|
|
14
14
|
tinted: 'dark:bg-gray-500 dark:text-gray-300'
|
|
15
15
|
};
|
|
16
16
|
const divider = {
|
|
17
|
-
base: 'dark:border-
|
|
18
|
-
tinted: 'dark:border-
|
|
17
|
+
base: 'dark:border-e-gray-700 dark:last:border-e-gray-600',
|
|
18
|
+
tinted: 'dark:border-e-gray-600 dark:last:border-e-gray-500'
|
|
19
19
|
};
|
|
20
20
|
const textSizes = { sm: 'sm:text-xs', md: 'text-sm', lg: 'sm:text-base' };
|
|
21
21
|
const prefixPadding = { sm: 'px-2', md: 'px-3', lg: 'px-4' };
|
|
22
22
|
// size: explicit, inherited, default
|
|
23
23
|
$: _size = size || clampSize(group?.size) || 'md';
|
|
24
|
-
$: divClass = twMerge(textSizes[_size], prefixPadding[_size], background ? borderClasses['tinted'] : borderClasses['base'], 'text-gray-500 bg-gray-200', background ? darkBgClasses.tinted : darkBgClasses.base, background ? divider.tinted : divider.base, 'inline-flex items-center border-t border-b first:border-
|
|
24
|
+
$: divClass = twMerge(textSizes[_size], prefixPadding[_size], background ? borderClasses['tinted'] : borderClasses['base'], 'text-gray-500 bg-gray-200', background ? darkBgClasses.tinted : darkBgClasses.base, background ? divider.tinted : divider.base, 'inline-flex items-center border-t border-b first:border-s border-e', 'first:rounded-s-lg last:rounded-e-lg', $$props.class);
|
|
25
25
|
</script>
|
|
26
26
|
|
|
27
27
|
<div {...$$restProps} class={divClass}>
|
package/dist/forms/Label.svelte
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<script>import { twMerge } from 'tailwind-merge';
|
|
2
2
|
export let color = 'gray';
|
|
3
|
-
export let defaultClass = 'text-sm font-medium block';
|
|
3
|
+
export let defaultClass = 'text-sm rtl:text-right font-medium block';
|
|
4
4
|
export let show = true;
|
|
5
5
|
let node;
|
|
6
6
|
const colorClasses = {
|
|
@@ -29,6 +29,6 @@ $: labelClass = twMerge(defaultClass, colorClasses[color], $$props.class);
|
|
|
29
29
|
[Go to docs](https://flowbite-svelte.com/)
|
|
30
30
|
## Props
|
|
31
31
|
@prop export let color: 'gray' | 'green' | 'red' | 'disabled' = 'gray';
|
|
32
|
-
@prop export let defaultClass: string = 'text-sm font-medium block';
|
|
32
|
+
@prop export let defaultClass: string = 'text-sm rtl:text-right font-medium block';
|
|
33
33
|
@prop export let show: boolean = true;
|
|
34
34
|
-->
|
|
@@ -20,7 +20,7 @@ export type LabelSlots = typeof __propDef.slots;
|
|
|
20
20
|
* [Go to docs](https://flowbite-svelte.com/)
|
|
21
21
|
* ## Props
|
|
22
22
|
* @prop export let color: 'gray' | 'green' | 'red' | 'disabled' = 'gray';
|
|
23
|
-
* @prop export let defaultClass: string = 'text-sm font-medium block';
|
|
23
|
+
* @prop export let defaultClass: string = 'text-sm rtl:text-right font-medium block';
|
|
24
24
|
* @prop export let show: boolean = true;
|
|
25
25
|
*/
|
|
26
26
|
export default class Label extends SvelteComponent<LabelProps, LabelEvents, LabelSlots> {
|
|
@@ -1,69 +1,64 @@
|
|
|
1
1
|
<script>import Badge from '../badge/Badge.svelte';
|
|
2
|
-
import { twMerge } from 'tailwind-merge';
|
|
3
2
|
import CloseButton from '../utils/CloseButton.svelte';
|
|
4
|
-
import {
|
|
5
|
-
import { onMount } from 'svelte';
|
|
6
|
-
const dispatch = createEventDispatcher();
|
|
3
|
+
import { twMerge } from 'tailwind-merge';
|
|
7
4
|
export let items = [];
|
|
8
5
|
export let value = [];
|
|
9
6
|
export let size = 'md';
|
|
10
7
|
export let dropdownClass = '';
|
|
11
|
-
let selectItems =
|
|
8
|
+
let selectItems = items.filter((x) => value.includes(x.value));
|
|
12
9
|
let show = false;
|
|
13
10
|
const sizes = {
|
|
14
|
-
sm: 'px-2 py-1',
|
|
15
|
-
md: 'px-3 py-2',
|
|
16
|
-
lg: 'px-4 py-3'
|
|
11
|
+
sm: 'px-2 py-1 min-h-[2.4rem]',
|
|
12
|
+
md: 'px-3 py-1 min-h-[2.7rem]',
|
|
13
|
+
lg: 'px-4 py-2 min-h-[3.2rem]'
|
|
17
14
|
};
|
|
18
15
|
// Container
|
|
19
16
|
const multiSelectClass = 'relative border border-gray-300 flex items-center rounded-lg gap-2 dark:border-gray-600 focus-within:ring-1 focus-within:border-primary-500 ring-primary-500 dark:focus-within:border-primary-500 dark:ring-primary-500';
|
|
20
17
|
// Dropdown
|
|
21
18
|
let multiSelectDropdown;
|
|
22
|
-
$: multiSelectDropdown = twMerge('absolute z-50 p-3 flex flex-col gap-1 max-h-64 bg-white border border-gray-300 dark:bg-gray-700 dark:border-gray-600
|
|
19
|
+
$: multiSelectDropdown = twMerge('absolute z-50 p-3 flex flex-col gap-1 max-h-64 bg-white border border-gray-300 dark:bg-gray-700 dark:border-gray-600 start-0 top-[calc(100%+1rem)] rounded-lg cursor-pointer overflow-y-scroll w-full', dropdownClass);
|
|
23
20
|
// Items
|
|
24
21
|
const itemsClass = 'py-2 px-3 rounded-lg text-gray-600 hover:text-gray-600 dark:text-gray-400 hover:bg-gray-100 dark:hover:text-gray-300 dark:hover:bg-gray-600';
|
|
25
22
|
// Selected items
|
|
26
23
|
const itemsSelectClass = 'bg-gray-100 text-black hover:text-black dark:text-white dark:bg-gray-600 dark:hover:text-white';
|
|
27
|
-
onMount(() => {
|
|
28
|
-
if (value.length) {
|
|
29
|
-
items.map((item) => {
|
|
30
|
-
if (value.includes(item.value)) {
|
|
31
|
-
selectItems.push(item);
|
|
32
|
-
}
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
});
|
|
36
24
|
const selectOption = (select) => {
|
|
37
|
-
if (
|
|
25
|
+
if (value.includes(select.value)) {
|
|
38
26
|
clearThisOption(select);
|
|
39
27
|
}
|
|
40
28
|
else {
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
selectItems = selectItems;
|
|
44
|
-
value = value;
|
|
45
|
-
dispatch('selected', selectItems);
|
|
29
|
+
if (!value.includes(select.value))
|
|
30
|
+
value = [...value, select.value];
|
|
46
31
|
}
|
|
47
32
|
};
|
|
48
33
|
const clearAll = (e) => {
|
|
49
34
|
e.stopPropagation();
|
|
50
|
-
selectItems = [];
|
|
51
35
|
value = [];
|
|
52
|
-
dispatch('selected', selectItems);
|
|
53
36
|
};
|
|
54
37
|
const clearThisOption = (select) => {
|
|
55
|
-
if (selectItems.includes(select)) {
|
|
56
|
-
selectItems = selectItems.filter((o) => o !== select);
|
|
57
|
-
dispatch('selected', selectItems);
|
|
58
|
-
}
|
|
59
38
|
if (value.includes(select.value)) {
|
|
60
39
|
value = value.filter((o) => o !== select.value);
|
|
61
40
|
}
|
|
62
41
|
};
|
|
42
|
+
function create_custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
|
|
43
|
+
return new CustomEvent(type, { detail, bubbles, cancelable });
|
|
44
|
+
}
|
|
45
|
+
function init(node, value) {
|
|
46
|
+
const inital = value; // hack for below
|
|
47
|
+
return {
|
|
48
|
+
update: (value) => {
|
|
49
|
+
selectItems = items.filter((x) => value.includes(x.value));
|
|
50
|
+
// avoid initial event emitting
|
|
51
|
+
if (value !== inital) {
|
|
52
|
+
node.dispatchEvent(create_custom_event('input', selectItems));
|
|
53
|
+
node.dispatchEvent(create_custom_event('change', selectItems));
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
}
|
|
63
58
|
</script>
|
|
64
59
|
|
|
65
60
|
<!-- Hidden select for form submission -->
|
|
66
|
-
<select {...$$restProps}
|
|
61
|
+
<select use:init={value} {...$$restProps} {value} hidden multiple on:change on:input>
|
|
67
62
|
{#each items as { value, name }}
|
|
68
63
|
<option {value}>{name}</option>
|
|
69
64
|
{/each}
|
|
@@ -81,12 +76,12 @@ const clearThisOption = (select) => {
|
|
|
81
76
|
{/each}
|
|
82
77
|
{/if}
|
|
83
78
|
</span>
|
|
84
|
-
<div class="flex
|
|
79
|
+
<div class="flex ms-auto gap-2 items-center">
|
|
85
80
|
{#if selectItems.length}
|
|
86
|
-
<CloseButton on:click={clearAll} color="none" class="p-0 focus:ring-gray-400" />
|
|
81
|
+
<CloseButton {size} on:click={clearAll} color="none" class="p-0 focus:ring-gray-400" />
|
|
87
82
|
{/if}
|
|
88
83
|
<div class="w-[1px] bg-gray-300 dark:bg-gray-600" />
|
|
89
|
-
<svg class="cursor-pointer h-3 w-3
|
|
84
|
+
<svg class="cursor-pointer h-3 w-3 ms-1 text-gray-800 dark:text-white" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 10 6">
|
|
90
85
|
<path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d={show ? 'm1 5 4-4 4 4' : 'm9 1-4 4-4-4'} />
|
|
91
86
|
</svg>
|
|
92
87
|
</div>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MultiSelect.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/forms/MultiSelect.svelte"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAEvC;
|
|
1
|
+
{"version":3,"file":"MultiSelect.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/forms/MultiSelect.svelte"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAEvC;AAID,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAqH/D,QAAA,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;CAA+D,CAAC;AAC/E,MAAM,MAAM,gBAAgB,GAAG,OAAO,SAAS,CAAC,KAAK,CAAC;AACtD,MAAM,MAAM,iBAAiB,GAAG,OAAO,SAAS,CAAC,MAAM,CAAC;AACxD,MAAM,MAAM,gBAAgB,GAAG,OAAO,SAAS,CAAC,KAAK,CAAC;AAEtD;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,eAAe,CAAC,gBAAgB,EAAE,iBAAiB,EAAE,gBAAgB,CAAC;CAC9G"}
|
package/dist/forms/Radio.svelte
CHANGED
|
@@ -12,7 +12,7 @@ const colorClasses = {
|
|
|
12
12
|
blue: 'text-blue-600 focus:ring-blue-500 dark:focus:ring-blue-600'
|
|
13
13
|
};
|
|
14
14
|
export const labelClass = (inline, extraClass) => twMerge(inline ? 'inline-flex' : 'flex', 'items-center', extraClass);
|
|
15
|
-
export let spacing = '
|
|
15
|
+
export let spacing = 'me-2';
|
|
16
16
|
export const inputClass = (custom, color, rounded, tinted, extraClass) => twMerge('w-4 h-4 bg-gray-100 border-gray-300 dark:ring-offset-gray-800 focus:ring-2', spacing, tinted ? 'dark:bg-gray-600 dark:border-gray-500' : 'dark:bg-gray-700 dark:border-gray-600', custom && 'sr-only peer', rounded && 'rounded', colorClasses[color], extraClass);
|
|
17
17
|
</script>
|
|
18
18
|
|
|
@@ -36,7 +36,7 @@ let background = getContext('background');
|
|
|
36
36
|
@component
|
|
37
37
|
[Go to docs](https://flowbite-svelte.com/)
|
|
38
38
|
## Props
|
|
39
|
-
@prop export let spacing: string = '
|
|
39
|
+
@prop export let spacing: string = 'me-2';
|
|
40
40
|
@prop export let color: FormColorType = 'primary';
|
|
41
41
|
@prop export let custom: boolean = false;
|
|
42
42
|
@prop export let inline: boolean = false;
|
|
@@ -37,7 +37,7 @@ export type RadioSlots = typeof __propDef.slots;
|
|
|
37
37
|
/**
|
|
38
38
|
* [Go to docs](https://flowbite-svelte.com/)
|
|
39
39
|
* ## Props
|
|
40
|
-
* @prop export let spacing: string = '
|
|
40
|
+
* @prop export let spacing: string = 'me-2';
|
|
41
41
|
* @prop export let color: FormColorType = 'primary';
|
|
42
42
|
* @prop export let custom: boolean = false;
|
|
43
43
|
* @prop export let inline: boolean = false;
|
package/dist/forms/Search.svelte
CHANGED
|
@@ -24,7 +24,7 @@ const sizes = {
|
|
|
24
24
|
Due to that we need the below slot and Wrapper around
|
|
25
25
|
-->
|
|
26
26
|
{#if $$slots.default}
|
|
27
|
-
<div class="flex absolute inset-y-0
|
|
27
|
+
<div class="flex absolute inset-y-0 end-0 items-center text-gray-500 dark:text-gray-400">
|
|
28
28
|
<slot />
|
|
29
29
|
</div>
|
|
30
30
|
{/if}
|
|
@@ -14,7 +14,7 @@ let textareaClass;
|
|
|
14
14
|
$: textareaClass = wrapped ? wrappedClass : twMerge(wrapperClass, unWrappedClass);
|
|
15
15
|
const headerClass = (header) => twMerge(header ? 'border-b' : 'border-t', 'py-2 px-3 border-gray-200 dark:border-gray-600');
|
|
16
16
|
let innerWrapperClass;
|
|
17
|
-
$: innerWrapperClass = twMerge(innerWrappedClass, $$slots.footer ? 'rounded-b-lg'
|
|
17
|
+
$: innerWrapperClass = twMerge(innerWrappedClass, $$slots.footer ? '' : 'rounded-b-lg', $$slots.header ? '' : 'rounded-t-lg');
|
|
18
18
|
</script>
|
|
19
19
|
|
|
20
20
|
<Wrapper show={wrapped} class={wrapperClass}>
|
package/dist/forms/Toggle.svelte
CHANGED
|
@@ -8,7 +8,7 @@ export let checked = undefined;
|
|
|
8
8
|
export let customSize = '';
|
|
9
9
|
// tinted if put in component having its own background
|
|
10
10
|
let background = getContext('background');
|
|
11
|
-
const common = "
|
|
11
|
+
const common = "me-3 shrink-0 bg-gray-200 rounded-full peer-focus:ring-4 peer-checked:after:translate-x-full rtl:peer-checked:after:-translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:bg-white after:border-gray-300 after:border after:rounded-full after:transition-all";
|
|
12
12
|
const colors = {
|
|
13
13
|
primary: 'peer-focus:ring-primary-300 dark:peer-focus:ring-primary-800 peer-checked:bg-primary-600',
|
|
14
14
|
secondary: 'peer-focus:ring-secondary-300 dark:peer-focus:ring-secondary-800 peer-checked:bg-secondary-600',
|
|
@@ -21,9 +21,9 @@ const colors = {
|
|
|
21
21
|
blue: 'peer-focus:ring-blue-300 dark:peer-focus:ring-blue-800 peer-checked:bg-blue-600'
|
|
22
22
|
};
|
|
23
23
|
const sizes = {
|
|
24
|
-
small: 'w-9 h-5 after:top-[2px] after:
|
|
25
|
-
default: 'w-11 h-6 after:top-0.5 after:
|
|
26
|
-
large: 'w-14 h-7 after:top-0.5 after:
|
|
24
|
+
small: 'w-9 h-5 after:top-[2px] after:start-[2px] after:h-4 after:w-4',
|
|
25
|
+
default: 'w-11 h-6 after:top-0.5 after:start-[2px] after:h-5 after:w-5',
|
|
26
|
+
large: 'w-14 h-7 after:top-0.5 after:start-[4px] after:h-6 after:w-6',
|
|
27
27
|
custom: customSize
|
|
28
28
|
};
|
|
29
29
|
let divClass;
|
package/dist/index.d.ts
CHANGED
|
@@ -133,6 +133,7 @@ export { default as Secondary } from "./typography/Secondary.svelte";
|
|
|
133
133
|
export { default as Span } from "./typography/Span.svelte";
|
|
134
134
|
export { default as CloseButton } from "./utils/CloseButton.svelte";
|
|
135
135
|
export { default as Frame } from "./utils/Frame.svelte";
|
|
136
|
+
export { default as TransitionFrame } from "./utils/TransitionFrame.svelte";
|
|
136
137
|
export { default as Video } from "./video/Video.svelte";
|
|
137
138
|
export * from "./types";
|
|
138
139
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.js
CHANGED
|
@@ -220,6 +220,7 @@ export { default as Span } from './typography/Span.svelte';
|
|
|
220
220
|
// utils
|
|
221
221
|
export { default as CloseButton } from './utils/CloseButton.svelte';
|
|
222
222
|
export { default as Frame } from './utils/Frame.svelte';
|
|
223
|
+
export { default as TransitionFrame } from './utils/TransitionFrame.svelte';
|
|
223
224
|
|
|
224
225
|
// video
|
|
225
226
|
export { default as Video } from './video/Video.svelte';
|
|
@@ -27,31 +27,31 @@ const sizes = {
|
|
|
27
27
|
};
|
|
28
28
|
const placements = {
|
|
29
29
|
// top
|
|
30
|
-
'top-left': 'top-0
|
|
31
|
-
'top-center': 'top-0
|
|
32
|
-
'top-right': 'top-0
|
|
30
|
+
'top-left': 'top-0 start-0',
|
|
31
|
+
'top-center': 'top-0 start-1/2 -translate-x-1/2 rtl:translate-x-1/2 rtl:translate-x-1/2',
|
|
32
|
+
'top-right': 'top-0 end-0',
|
|
33
33
|
// center
|
|
34
|
-
'center-left': 'top-1/2 -translate-y-1/2
|
|
35
|
-
center: 'top-1/2 -translate-y-1/2
|
|
36
|
-
'center-right': 'top-1/2 -translate-y-1/2
|
|
34
|
+
'center-left': 'top-1/2 -translate-y-1/2 start-0',
|
|
35
|
+
center: 'top-1/2 -translate-y-1/2 start-1/2 -translate-x-1/2 rtl:translate-x-1/2 rtl:translate-x-1/2',
|
|
36
|
+
'center-right': 'top-1/2 -translate-y-1/2 end-0',
|
|
37
37
|
// bottom
|
|
38
|
-
'bottom-left': 'bottom-0
|
|
39
|
-
'bottom-center': 'bottom-0
|
|
40
|
-
'bottom-right': 'bottom-0
|
|
38
|
+
'bottom-left': 'bottom-0 start-0',
|
|
39
|
+
'bottom-center': 'bottom-0 start-1/2 -translate-x-1/2 rtl:translate-x-1/2 rtl:translate-x-1/2',
|
|
40
|
+
'bottom-right': 'bottom-0 end-0'
|
|
41
41
|
};
|
|
42
42
|
const offsets = {
|
|
43
43
|
// top
|
|
44
|
-
'top-left': '-translate-x-1/3 -translate-y-1/3',
|
|
44
|
+
'top-left': '-translate-x-1/3 rtl:translate-x-1/3 -translate-y-1/3',
|
|
45
45
|
'top-center': '-translate-y-1/3',
|
|
46
|
-
'top-right': 'translate-x-1/3 -translate-y-1/3',
|
|
46
|
+
'top-right': 'translate-x-1/3 rtl:-translate-x-1/3 -translate-y-1/3',
|
|
47
47
|
// center
|
|
48
|
-
'center-left': '-translate-x-1/3',
|
|
48
|
+
'center-left': '-translate-x-1/3 rtl:translate-x-1/3',
|
|
49
49
|
center: '',
|
|
50
|
-
'center-right': 'translate-x-1/3',
|
|
50
|
+
'center-right': 'translate-x-1/3 rtl:-translate-x-1/3',
|
|
51
51
|
// bottom
|
|
52
|
-
'bottom-left': '-translate-x-1/3 translate-y-1/3',
|
|
52
|
+
'bottom-left': '-translate-x-1/3 rtl:translate-x-1/3 translate-y-1/3',
|
|
53
53
|
'bottom-center': 'translate-y-1/3',
|
|
54
|
-
'bottom-right': 'translate-x-1/3 translate-y-1/3'
|
|
54
|
+
'bottom-right': 'translate-x-1/3 rtl:-translate-x-1/3 translate-y-1/3'
|
|
55
55
|
};
|
|
56
56
|
let dotClass;
|
|
57
57
|
$: dotClass = twMerge('flex-shrink-0', rounded ? 'rounded' : 'rounded-full', border && 'border-2 border-white dark:border-gray-800', sizes[size], colors[color], $$slots.default && 'inline-flex items-center justify-center', placement && 'absolute ' + placements[placement], placement && offset && offsets[placement], $$props.class);
|