flowbite-svelte 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/README.md +33 -0
  2. package/accordions/AccordionDefault.svelte +26 -0
  3. package/accordions/AccordionDefault.svelte.d.ts +35 -0
  4. package/accordions/AccordionItem.svelte +44 -0
  5. package/accordions/AccordionItem.svelte.d.ts +29 -0
  6. package/alerts/Alert.svelte +111 -0
  7. package/alerts/Alert.svelte.d.ts +31 -0
  8. package/alerts/BorderAlert.svelte +118 -0
  9. package/alerts/BorderAlert.svelte.d.ts +31 -0
  10. package/alerts/InfoAlert.svelte +125 -0
  11. package/alerts/InfoAlert.svelte.d.ts +35 -0
  12. package/badges/Badge.svelte +28 -0
  13. package/badges/Badge.svelte.d.ts +27 -0
  14. package/badges/BadgeIcon.svelte +31 -0
  15. package/badges/BadgeIcon.svelte.d.ts +31 -0
  16. package/badges/BadgeLink.svelte +29 -0
  17. package/badges/BadgeLink.svelte.d.ts +29 -0
  18. package/buttongroups/ButtonGroup.svelte +68 -0
  19. package/buttongroups/ButtonGroup.svelte.d.ts +33 -0
  20. package/buttongroups/ButtonGroupOutline.svelte +70 -0
  21. package/buttongroups/ButtonGroupOutline.svelte.d.ts +33 -0
  22. package/buttons/Button.svelte +60 -0
  23. package/buttons/Button.svelte.d.ts +33 -0
  24. package/buttons/ColorShadowButton.svelte +35 -0
  25. package/buttons/ColorShadowButton.svelte.d.ts +31 -0
  26. package/buttons/GradientDuotoneButton.svelte +33 -0
  27. package/buttons/GradientDuotoneButton.svelte.d.ts +31 -0
  28. package/buttons/GradientMonochromeButton.svelte +35 -0
  29. package/buttons/GradientMonochromeButton.svelte.d.ts +31 -0
  30. package/buttons/GradientOutlineButton.svelte +52 -0
  31. package/buttons/GradientOutlineButton.svelte.d.ts +31 -0
  32. package/cards/Card.svelte +86 -0
  33. package/cards/Card.svelte.d.ts +39 -0
  34. package/cards/CtaCard.svelte +63 -0
  35. package/cards/CtaCard.svelte.d.ts +45 -0
  36. package/cards/EcommerceCard.svelte +98 -0
  37. package/cards/EcommerceCard.svelte.d.ts +41 -0
  38. package/cards/HorizontalCard.svelte +29 -0
  39. package/cards/HorizontalCard.svelte.d.ts +35 -0
  40. package/cards/InteractiveCard.svelte +127 -0
  41. package/cards/InteractiveCard.svelte.d.ts +63 -0
  42. package/cards/ListCard.svelte +82 -0
  43. package/cards/ListCard.svelte.d.ts +51 -0
  44. package/cards/SignInCard.svelte +125 -0
  45. package/cards/SignInCard.svelte.d.ts +45 -0
  46. package/darkmode/DarkMode.svelte +78 -0
  47. package/darkmode/DarkMode.svelte.d.ts +23 -0
  48. package/dropdowns/DropdownDefault.svelte +117 -0
  49. package/dropdowns/DropdownDefault.svelte.d.ts +51 -0
  50. package/footer/SimpleFooter.svelte +32 -0
  51. package/footer/SimpleFooter.svelte.d.ts +45 -0
  52. package/index.d.ts +39 -0
  53. package/index.js +116 -0
  54. package/list-group/List.svelte +79 -0
  55. package/list-group/List.svelte.d.ts +33 -0
  56. package/modals/ExtraLargeModal.svelte +236 -0
  57. package/modals/ExtraLargeModal.svelte.d.ts +45 -0
  58. package/modals/LargeModal.svelte +236 -0
  59. package/modals/LargeModal.svelte.d.ts +45 -0
  60. package/modals/MediumModal.svelte +242 -0
  61. package/modals/MediumModal.svelte.d.ts +45 -0
  62. package/modals/ModalButton.svelte +48 -0
  63. package/modals/ModalButton.svelte.d.ts +29 -0
  64. package/modals/SignInModal.svelte +174 -0
  65. package/modals/SignInModal.svelte.d.ts +37 -0
  66. package/modals/SmallModal.svelte +236 -0
  67. package/modals/SmallModal.svelte.d.ts +45 -0
  68. package/modals/modalStores.d.ts +1 -0
  69. package/modals/modalStores.js +3 -0
  70. package/navbar/DropdownNavbar.svelte +210 -0
  71. package/navbar/DropdownNavbar.svelte.d.ts +65 -0
  72. package/navbar/Navbar.svelte +96 -0
  73. package/navbar/Navbar.svelte.d.ts +39 -0
  74. package/package.json +92 -0
  75. package/tabs/DefaultTabs.svelte +43 -0
  76. package/tabs/DefaultTabs.svelte.d.ts +33 -0
  77. package/tabs/InteractiveTabs.svelte +68 -0
  78. package/tabs/InteractiveTabs.svelte.d.ts +47 -0
  79. package/tabs/PillTabs.svelte +38 -0
  80. package/tabs/PillTabs.svelte.d.ts +31 -0
@@ -0,0 +1,45 @@
1
+ /** @typedef {typeof __propDef.props} SimpleFooterProps */
2
+ /** @typedef {typeof __propDef.events} SimpleFooterEvents */
3
+ /** @typedef {typeof __propDef.slots} SimpleFooterSlots */
4
+ export default class SimpleFooter extends SvelteComponentTyped<{
5
+ link?: any;
6
+ siteName?: string;
7
+ links?: {
8
+ name: string;
9
+ link: string;
10
+ rel: any;
11
+ }[];
12
+ footerClass?: string;
13
+ spanClass?: string;
14
+ ulClass?: string;
15
+ aClass?: string;
16
+ spanLinkClass?: string;
17
+ }, {
18
+ [evt: string]: CustomEvent<any>;
19
+ }, {}> {
20
+ }
21
+ export type SimpleFooterProps = typeof __propDef.props;
22
+ export type SimpleFooterEvents = typeof __propDef.events;
23
+ export type SimpleFooterSlots = typeof __propDef.slots;
24
+ import { SvelteComponentTyped } from "svelte";
25
+ declare const __propDef: {
26
+ props: {
27
+ link?: any;
28
+ siteName?: string;
29
+ links?: {
30
+ name: string;
31
+ link: string;
32
+ rel: any;
33
+ }[];
34
+ footerClass?: string;
35
+ spanClass?: string;
36
+ ulClass?: string;
37
+ aClass?: string;
38
+ spanLinkClass?: string;
39
+ };
40
+ events: {
41
+ [evt: string]: CustomEvent<any>;
42
+ };
43
+ slots: {};
44
+ };
45
+ export {};
package/index.d.ts ADDED
@@ -0,0 +1,39 @@
1
+ import Accordion from "./accordions/AccordionDefault.svelte";
2
+ import AccordionItem from "./accordions/AccordionItem.svelte";
3
+ import Alert from "./alerts/Alert.svelte";
4
+ import BorderAlert from "./alerts/BorderAlert.svelte";
5
+ import InfoAlert from "./alerts/InfoAlert.svelte";
6
+ import Badge from "./badges/Badge.svelte";
7
+ import BadgeIcon from "./badges/BadgeIcon.svelte";
8
+ import BadgeLink from "./badges/BadgeLink.svelte";
9
+ import Button from "./buttons/Button.svelte";
10
+ import ColorShadowButton from "./buttons/ColorShadowButton.svelte";
11
+ import GradientDuotoneButton from "./buttons/GradientDuotoneButton.svelte";
12
+ import GradientMonochromeButton from "./buttons/GradientMonochromeButton.svelte";
13
+ import GradientOutlineButton from "./buttons/GradientOutlineButton.svelte";
14
+ import ButtonGroup from "./buttongroups/ButtonGroup.svelte";
15
+ import ButtonGroupOutline from "./buttongroups/ButtonGroupOutline.svelte";
16
+ import Card from "./cards/Card.svelte";
17
+ import HorizontalCard from "./cards/HorizontalCard.svelte";
18
+ import InteractiveCard from "./cards/InteractiveCard.svelte";
19
+ import ListCard from "./cards/ListCard.svelte";
20
+ import CtaCard from "./cards/CtaCard.svelte";
21
+ import EcommerceCard from "./cards/EcommerceCard.svelte";
22
+ import SignInCard from "./cards/SignInCard.svelte";
23
+ import DarkMode from "./darkmode/DarkMode.svelte";
24
+ import Dropdown from "./dropdowns/DropdownDefault.svelte";
25
+ import SimpleFooter from "./footer/SimpleFooter.svelte";
26
+ import List from "./list-group/List.svelte";
27
+ import { modalIdStore } from "./modals/modalStores";
28
+ import ExtraLargeModal from "./modals/ExtraLargeModal.svelte";
29
+ import LargeModal from "./modals/LargeModal.svelte";
30
+ import MediumModal from "./modals/MediumModal.svelte";
31
+ import ModalButton from "./modals/ModalButton.svelte";
32
+ import SignInModal from "./modals/SignInModal.svelte";
33
+ import SmallModal from "./modals/SmallModal.svelte";
34
+ import Navbar from "./navbar/Navbar.svelte";
35
+ import DropdownNavbar from "./navbar/DropdownNavbar.svelte";
36
+ import InteractiveTabs from "./tabs/InteractiveTabs.svelte";
37
+ import DefaultTabs from "./tabs/DefaultTabs.svelte";
38
+ import PillTabs from "./tabs/PillTabs.svelte";
39
+ export { Accordion, AccordionItem, Alert, BorderAlert, InfoAlert, Badge, BadgeIcon, BadgeLink, Button, ColorShadowButton, GradientDuotoneButton, GradientMonochromeButton, GradientOutlineButton, ButtonGroup, ButtonGroupOutline, Card, HorizontalCard, InteractiveCard, ListCard, CtaCard, EcommerceCard, SignInCard, DarkMode, Dropdown, SimpleFooter, List, modalIdStore, ExtraLargeModal, LargeModal, MediumModal, ModalButton, SignInModal, SmallModal, Navbar, DropdownNavbar, InteractiveTabs, DefaultTabs, PillTabs };
package/index.js ADDED
@@ -0,0 +1,116 @@
1
+ import Accordion from './accordions/AccordionDefault.svelte'
2
+ import AccordionItem from './accordions/AccordionItem.svelte'
3
+
4
+ // Alerts
5
+ import Alert from './alerts/Alert.svelte'
6
+ import BorderAlert from './alerts/BorderAlert.svelte'
7
+ import InfoAlert from './alerts/InfoAlert.svelte'
8
+
9
+ // Badges
10
+ import Badge from './badges/Badge.svelte'
11
+ import BadgeIcon from './badges/BadgeIcon.svelte'
12
+ import BadgeLink from './badges/BadgeLink.svelte'
13
+
14
+ // Buttons
15
+ import Button from './buttons/Button.svelte'
16
+ import ColorShadowButton from './buttons/ColorShadowButton.svelte'
17
+ import GradientDuotoneButton from './buttons/GradientDuotoneButton.svelte'
18
+ import GradientMonochromeButton from './buttons/GradientMonochromeButton.svelte'
19
+ import GradientOutlineButton from './buttons/GradientOutlineButton.svelte'
20
+
21
+ // Buttongroups
22
+ import ButtonGroup from './buttongroups/ButtonGroup.svelte'
23
+ import ButtonGroupOutline from './buttongroups/ButtonGroupOutline.svelte'
24
+
25
+ // Cards
26
+ import Card from './cards/Card.svelte'
27
+ import HorizontalCard from './cards/HorizontalCard.svelte'
28
+ import InteractiveCard from './cards/InteractiveCard.svelte'
29
+ import ListCard from './cards/ListCard.svelte'
30
+ import CtaCard from './cards/CtaCard.svelte'
31
+ import EcommerceCard from './cards/EcommerceCard.svelte'
32
+ import SignInCard from './cards/SignInCard.svelte'
33
+
34
+ // Dark mode
35
+ import DarkMode from './darkmode/DarkMode.svelte'
36
+
37
+ // Dropdown
38
+ import Dropdown from './dropdowns/DropdownDefault.svelte'
39
+
40
+ // Footers
41
+ import SimpleFooter from './footer/SimpleFooter.svelte'
42
+
43
+ // List
44
+ import List from './list-group/List.svelte'
45
+
46
+ // Modals
47
+ import { modalIdStore } from './modals/modalStores'
48
+ import ExtraLargeModal from './modals/ExtraLargeModal.svelte'
49
+ import LargeModal from './modals/LargeModal.svelte'
50
+ import MediumModal from './modals/MediumModal.svelte'
51
+ import ModalButton from './modals/ModalButton.svelte'
52
+ import SignInModal from './modals/SignInModal.svelte'
53
+ import SmallModal from './modals/SmallModal.svelte'
54
+
55
+ // Navbar
56
+ import Navbar from './navbar/Navbar.svelte'
57
+ import DropdownNavbar from './navbar/DropdownNavbar.svelte'
58
+
59
+ // Tabs
60
+ import InteractiveTabs from './tabs/InteractiveTabs.svelte'
61
+ import DefaultTabs from './tabs/DefaultTabs.svelte'
62
+ import PillTabs from './tabs/PillTabs.svelte'
63
+
64
+ export {
65
+ // Accordions
66
+ Accordion,
67
+ AccordionItem,
68
+ // alerts
69
+ Alert,
70
+ BorderAlert,
71
+ InfoAlert,
72
+ // Badges
73
+ Badge,
74
+ BadgeIcon,
75
+ BadgeLink,
76
+ // Buttons
77
+ Button,
78
+ ColorShadowButton,
79
+ GradientDuotoneButton,
80
+ GradientMonochromeButton,
81
+ GradientOutlineButton,
82
+ // Buttongroup
83
+ ButtonGroup,
84
+ ButtonGroupOutline,
85
+ // cards
86
+ Card,
87
+ HorizontalCard,
88
+ InteractiveCard,
89
+ ListCard,
90
+ CtaCard,
91
+ EcommerceCard,
92
+ SignInCard,
93
+ // darkmode
94
+ DarkMode,
95
+ // dropdowns
96
+ Dropdown,
97
+ // footers
98
+ SimpleFooter,
99
+ // list
100
+ List,
101
+ // Modals
102
+ modalIdStore,
103
+ ExtraLargeModal,
104
+ LargeModal,
105
+ MediumModal,
106
+ ModalButton,
107
+ SignInModal,
108
+ SmallModal,
109
+ // Navbar
110
+ Navbar,
111
+ DropdownNavbar,
112
+ // Tabs
113
+ InteractiveTabs,
114
+ DefaultTabs,
115
+ PillTabs
116
+ }
@@ -0,0 +1,79 @@
1
+ <script>
2
+ export let lists = [
3
+ {
4
+ title: "Profile",
5
+ icon: "",
6
+ link: "/profile",
7
+ rel: "",
8
+ },
9
+ {
10
+ title: "Settings",
11
+ icon: "",
12
+ link: "/settings",
13
+ rel: "",
14
+ },
15
+ {
16
+ title: "Messages",
17
+ icon: "",
18
+ link: "/message",
19
+ rel: "",
20
+ },
21
+ {
22
+ title: "Download",
23
+ icon: "",
24
+ link: "/download",
25
+ rel: "",
26
+ },
27
+ ];
28
+ // let len = count($lists);
29
+ // top rounded-t-lg border-b border-gray-200
30
+ // middle border-b border-gray-200
31
+ // bottom rounded-b-lg
32
+ const common =
33
+ "inline-flex relative items-center py-2 px-4 w-full text-sm font-medium hover:bg-gray-100 hover:text-blue-700 focus:z-10 focus:ring-2 focus:ring-blue-700 focus:text-blue-700 dark:border-gray-600 dark:hover:bg-gray-600 dark:hover:text-white dark:focus:ring-gray-500 dark:focus:text-white";
34
+ const topClass = `${common} rounded-t-lg border-b border-gray-200`;
35
+ const bottomClass = `${common} rounded-b-lg`;
36
+ const middleClass = `${common} border-b border-gray-200`;
37
+ let listClass;
38
+ </script>
39
+
40
+ <div
41
+ class="w-48 text-gray-900 bg-white rounded-lg border border-gray-200 dark:bg-gray-700 dark:border-gray-600 dark:text-white"
42
+ >
43
+ {#each lists as { title, icon, link, rel }, i}
44
+ {#if i === 0}
45
+ <button type="button" class={topClass}>
46
+ {#if icon}
47
+ <svelte:component this={icon} className="h-4 w-4 mr-2" />
48
+ {/if}
49
+ {#if link}
50
+ <a href={link} {rel}>{title}</a>
51
+ {:else}
52
+ {title} here
53
+ {/if}
54
+ </button>
55
+ {:else if i === lists.length - 1}
56
+ <button type="button" class={bottomClass}>
57
+ {#if icon}
58
+ <svelte:component this={icon} className="h-4 w-4 mr-2" />
59
+ {/if}
60
+ {#if link}
61
+ <a href={link} {rel}>{title}</a>
62
+ {:else}
63
+ {title}
64
+ {/if}
65
+ </button>
66
+ {:else}
67
+ <button type="button" class={middleClass}>
68
+ {#if icon}
69
+ <svelte:component this={icon} className="h-4 w-4 mr-2" />
70
+ {/if}
71
+ {#if link}
72
+ <a href={link} {rel}>{title}</a>
73
+ {:else}
74
+ {title}
75
+ {/if}
76
+ </button>
77
+ {/if}
78
+ {/each}
79
+ </div>
@@ -0,0 +1,33 @@
1
+ /** @typedef {typeof __propDef.props} ListProps */
2
+ /** @typedef {typeof __propDef.events} ListEvents */
3
+ /** @typedef {typeof __propDef.slots} ListSlots */
4
+ export default class List extends SvelteComponentTyped<{
5
+ lists?: {
6
+ title: string;
7
+ icon: string;
8
+ link: string;
9
+ rel: string;
10
+ }[];
11
+ }, {
12
+ [evt: string]: CustomEvent<any>;
13
+ }, {}> {
14
+ }
15
+ export type ListProps = typeof __propDef.props;
16
+ export type ListEvents = typeof __propDef.events;
17
+ export type ListSlots = typeof __propDef.slots;
18
+ import { SvelteComponentTyped } from "svelte";
19
+ declare const __propDef: {
20
+ props: {
21
+ lists?: {
22
+ title: string;
23
+ icon: string;
24
+ link: string;
25
+ rel: string;
26
+ }[];
27
+ };
28
+ events: {
29
+ [evt: string]: CustomEvent<any>;
30
+ };
31
+ slots: {};
32
+ };
33
+ export {};
@@ -0,0 +1,236 @@
1
+ <script>
2
+ import { createEventDispatcher } from "svelte";
3
+ import { modalIdStore } from "./modalStores.js";
4
+ const dispatch = createEventDispatcher();
5
+
6
+ export let id = "extralarge-modal";
7
+ export let btnColor = "blue";
8
+ export let textColor = "gray";
9
+ export let title = "Terms of Service";
10
+ export let btn1;
11
+ export let btn2;
12
+
13
+ const closeModal = () => {
14
+ modalIdStore.update((value) => {
15
+ value = null;
16
+ });
17
+ };
18
+
19
+ export let showModalId;
20
+ modalIdStore.subscribe((value) => {
21
+ showModalId = value;
22
+ });
23
+
24
+ const handlebtn1 = () => {
25
+ dispatch("handlebtn1");
26
+ };
27
+
28
+ const handlebtn2 = () => {
29
+ dispatch("handlebtn2");
30
+ };
31
+
32
+ let divClass;
33
+ let headDivClass;
34
+ let h3Class;
35
+ let buttonClass;
36
+ let pClass;
37
+ let footerClass;
38
+ let btn2Class;
39
+ if (textColor === "blue") {
40
+ divClass = "relative bg-white rounded-lg shadow dark:bg-blue-700";
41
+ headDivClass =
42
+ "flex justify-between items-center p-5 rounded-t border-b dark:border-blue-600";
43
+ h3Class = "text-xl font-medium text-blue-900 dark:text-white";
44
+ buttonClass =
45
+ "text-blue-400 bg-transparent hover:bg-blue-200 hover:text-blue-900 rounded-lg text-sm p-1.5 ml-auto inline-flex items-center dark:hover:bg-blue-600 dark:hover:text-white";
46
+ pClass = "text-base leading-relaxed text-blue-500 dark:text-blue-400";
47
+ footerClass =
48
+ "flex items-center p-6 space-x-2 rounded-b border-t border-blue-200 dark:border-blue-600";
49
+ btn2Class =
50
+ "text-blue-500 bg-white hover:bg-blue-100 focus:ring-4 focus:ring-blue-300 rounded-lg border border-blue-200 text-sm font-medium px-5 py-2.5 hover:text-blue-900 focus:z-10 dark:bg-blue-700 dark:text-blue-300 dark:border-blue-500 dark:hover:text-white dark:hover:bg-blue-600";
51
+ } else if (textColor === "gray") {
52
+ divClass = "relative bg-white rounded-lg shadow dark:bg-gray-700";
53
+ headDivClass =
54
+ "flex justify-between items-center p-5 rounded-t border-b dark:border-gray-600";
55
+ h3Class = "text-xl font-medium text-gray-900 dark:text-white";
56
+ buttonClass =
57
+ "text-gray-400 bg-transparent hover:bg-gray-200 hover:text-gray-900 rounded-lg text-sm p-1.5 ml-auto inline-flex items-center dark:hover:bg-gray-600 dark:hover:text-white";
58
+ pClass = "text-base leading-relaxed text-gray-500 dark:text-gray-400";
59
+ footerClass =
60
+ "flex items-center p-6 space-x-2 rounded-b border-t border-gray-200 dark:border-gray-600";
61
+ btn2Class =
62
+ "text-gray-500 bg-white hover:bg-gray-100 focus:ring-4 focus:ring-gray-300 rounded-lg border border-gray-200 text-sm font-medium px-5 py-2.5 hover:text-gray-900 focus:z-10 dark:bg-gray-700 dark:text-gray-300 dark:border-gray-500 dark:hover:text-white dark:hover:bg-gray-600";
63
+ } else if (textColor === "red") {
64
+ divClass = "relative bg-white rounded-lg shadow dark:bg-red-700";
65
+ headDivClass =
66
+ "flex justify-between items-center p-5 rounded-t border-b dark:border-red-600";
67
+ h3Class = "text-xl font-medium text-red-900 dark:text-white";
68
+ buttonClass =
69
+ "text-red-400 bg-transparent hover:bg-red-200 hover:text-red-900 rounded-lg text-sm p-1.5 ml-auto inline-flex items-center dark:hover:bg-red-600 dark:hover:text-white";
70
+ pClass = "text-base leading-relaxed text-red-500 dark:text-red-400";
71
+ footerClass =
72
+ "flex items-center p-6 space-x-2 rounded-b border-t border-red-200 dark:border-red-600";
73
+ btn2Class =
74
+ "text-red-500 bg-white hover:bg-red-100 focus:ring-4 focus:ring-red-300 rounded-lg border border-red-200 text-sm font-medium px-5 py-2.5 hover:text-red-900 focus:z-10 dark:bg-red-700 dark:text-red-300 dark:border-red-500 dark:hover:text-white dark:hover:bg-red-600";
75
+ } else if (textColor === "yellow") {
76
+ divClass = "relative bg-white rounded-lg shadow dark:bg-yellow-700";
77
+ headDivClass =
78
+ "flex justify-between items-center p-5 rounded-t border-b dark:border-yellow-600";
79
+ h3Class = "text-xl font-medium text-yellow-900 dark:text-white";
80
+ buttonClass =
81
+ "text-yellow-400 bg-transparent hover:bg-yellow-200 hover:text-yellow-900 rounded-lg text-sm p-1.5 ml-auto inline-flex items-center dark:hover:bg-yellow-600 dark:hover:text-white";
82
+ pClass = "text-base leading-relaxed text-yellow-500 dark:text-yellow-400";
83
+ footerClass =
84
+ "flex items-center p-6 space-x-2 rounded-b border-t border-yellow-200 dark:border-yellow-600";
85
+ btn2Class =
86
+ "text-yellow-500 bg-white hover:bg-yellow-100 focus:ring-4 focus:ring-yellow-300 rounded-lg border border-yellow-200 text-sm font-medium px-5 py-2.5 hover:text-yellow-900 focus:z-10 dark:bg-yellow-700 dark:text-yellow-300 dark:border-yellow-500 dark:hover:text-white dark:hover:bg-yellow-600";
87
+ } else if (textColor === "green") {
88
+ divClass = "relative bg-white rounded-lg shadow dark:bg-green-700";
89
+ headDivClass =
90
+ "flex justify-between items-center p-5 rounded-t border-b dark:border-green-600";
91
+ h3Class = "text-xl font-medium text-green-900 dark:text-white";
92
+ buttonClass =
93
+ "text-green-400 bg-transparent hover:bg-green-200 hover:text-green-900 rounded-lg text-sm p-1.5 ml-auto inline-flex items-center dark:hover:bg-green-600 dark:hover:text-white";
94
+ pClass = "text-base leading-relaxed text-green-500 dark:text-green-400";
95
+ footerClass =
96
+ "flex items-center p-6 space-x-2 rounded-b border-t border-green-200 dark:border-green-600";
97
+ btn2Class =
98
+ "text-green-500 bg-white hover:bg-green-100 focus:ring-4 focus:ring-green-300 rounded-lg border border-green-200 text-sm font-medium px-5 py-2.5 hover:text-green-900 focus:z-10 dark:bg-green-700 dark:text-green-300 dark:border-green-500 dark:hover:text-white dark:hover:bg-green-600";
99
+ } else if (textColor === "indigo") {
100
+ divClass = "relative bg-white rounded-lg shadow dark:bg-indigo-700";
101
+ headDivClass =
102
+ "flex justify-between items-center p-5 rounded-t border-b dark:border-indigo-600";
103
+ h3Class = "text-xl font-medium text-indigo-900 dark:text-white";
104
+ buttonClass =
105
+ "text-indigo-400 bg-transparent hover:bg-indigo-200 hover:text-indigo-900 rounded-lg text-sm p-1.5 ml-auto inline-flex items-center dark:hover:bg-indigo-600 dark:hover:text-white";
106
+ pClass = "text-base leading-relaxed text-indigo-500 dark:text-indigo-400";
107
+ footerClass =
108
+ "flex items-center p-6 space-x-2 rounded-b border-t border-indigo-200 dark:border-indigo-600";
109
+ btn2Class =
110
+ "text-indigo-500 bg-white hover:bg-indigo-100 focus:ring-4 focus:ring-indigo-300 rounded-lg border border-indigo-200 text-sm font-medium px-5 py-2.5 hover:text-indigo-900 focus:z-10 dark:bg-indigo-700 dark:text-indigo-300 dark:border-indigo-500 dark:hover:text-white dark:hover:bg-indigo-600";
111
+ } else if (textColor === "purple") {
112
+ divClass = "relative bg-white rounded-lg shadow dark:bg-purple-700";
113
+ headDivClass =
114
+ "flex justify-between items-center p-5 rounded-t border-b dark:border-purple-600";
115
+ h3Class = "text-xl font-medium text-purple-900 dark:text-white";
116
+ buttonClass =
117
+ "text-purple-400 bg-transparent hover:bg-purple-200 hover:text-purple-900 rounded-lg text-sm p-1.5 ml-auto inline-flex items-center dark:hover:bg-purple-600 dark:hover:text-white";
118
+ pClass = "text-base leading-relaxed text-purple-500 dark:text-purple-400";
119
+ footerClass =
120
+ "flex items-center p-6 space-x-2 rounded-b border-t border-purple-200 dark:border-purple-600";
121
+ btn2Class =
122
+ "text-purple-500 bg-white hover:bg-purple-100 focus:ring-4 focus:ring-purple-300 rounded-lg border border-purple-200 text-sm font-medium px-5 py-2.5 hover:text-purple-900 focus:z-10 dark:bg-purple-700 dark:text-purple-300 dark:border-purple-500 dark:hover:text-white dark:hover:bg-purple-600";
123
+ } else if (textColor === "pink") {
124
+ divClass = "relative bg-white rounded-lg shadow dark:bg-pink-700";
125
+ headDivClass =
126
+ "flex justify-between items-center p-5 rounded-t border-b dark:border-pink-600";
127
+ h3Class = "text-xl font-medium text-pink-900 dark:text-white";
128
+ buttonClass =
129
+ "text-pink-400 bg-transparent hover:bg-pink-200 hover:text-pink-900 rounded-lg text-sm p-1.5 ml-auto inline-flex items-center dark:hover:bg-pink-600 dark:hover:text-white";
130
+ pClass = "text-base leading-relaxed text-pink-500 dark:text-pink-400";
131
+ footerClass =
132
+ "flex items-center p-6 space-x-2 rounded-b border-t border-pink-200 dark:border-pink-600";
133
+ btn2Class =
134
+ "text-pink-500 bg-white hover:bg-pink-100 focus:ring-4 focus:ring-pink-300 rounded-lg border border-pink-200 text-sm font-medium px-5 py-2.5 hover:text-pink-900 focus:z-10 dark:bg-pink-700 dark:text-pink-300 dark:border-pink-500 dark:hover:text-white dark:hover:bg-pink-600";
135
+ } else {
136
+ divClass = "relative bg-white rounded-lg shadow dark:bg-blue-700";
137
+ headDivClass =
138
+ "flex justify-between items-center p-5 rounded-t border-b dark:border-blue-600";
139
+ h3Class = "text-xl font-medium text-blue-900 dark:text-white";
140
+ buttonClass =
141
+ "text-blue-400 bg-transparent hover:bg-blue-200 hover:text-blue-900 rounded-lg text-sm p-1.5 ml-auto inline-flex items-center dark:hover:bg-blue-600 dark:hover:text-white";
142
+ pClass = "text-base leading-relaxed text-blue-500 dark:text-blue-400";
143
+ footerClass =
144
+ "flex items-center p-6 space-x-2 rounded-b border-t border-blue-200 dark:border-blue-600";
145
+ btn2Class =
146
+ "text-blue-500 bg-white hover:bg-blue-100 focus:ring-4 focus:ring-blue-300 rounded-lg border border-blue-200 text-sm font-medium px-5 py-2.5 hover:text-blue-900 focus:z-10 dark:bg-blue-700 dark:text-blue-300 dark:border-blue-500 dark:hover:text-white dark:hover:bg-blue-600";
147
+ }
148
+
149
+ let button1Class;
150
+ if (btnColor === "blue") {
151
+ button1Class =
152
+ "text-white bg-blue-700 hover:bg-blue-800 focus:ring-4 focus:ring-blue-300 font-medium rounded-lg text-sm px-5 py-2.5 text-center dark:bg-blue-600 dark:hover:bg-blue-700 dark:focus:ring-blue-800";
153
+ } else if (btnColor === "gray") {
154
+ button1Class =
155
+ "text-white bg-gray-700 hover:bg-gray-800 focus:ring-4 focus:ring-gray-300 font-medium rounded-lg text-sm px-5 py-2.5 text-center dark:bg-gray-600 dark:hover:bg-gray-700 dark:focus:ring-gray-800";
156
+ } else if (btnColor === "red") {
157
+ button1Class =
158
+ "text-white bg-red-700 hover:bg-red-800 focus:ring-4 focus:ring-red-300 font-medium rounded-lg text-sm px-5 py-2.5 text-center dark:bg-red-600 dark:hover:bg-red-700 dark:focus:ring-red-800";
159
+ } else if (btnColor === "yellow") {
160
+ button1Class =
161
+ "text-white bg-yellow-700 hover:bg-yellow-800 focus:ring-4 focus:ring-yellow-300 font-medium rounded-lg text-sm px-5 py-2.5 text-center dark:bg-yellow-600 dark:hover:bg-yellow-700 dark:focus:ring-yellow-800";
162
+ } else if (btnColor === "green") {
163
+ button1Class =
164
+ "text-white bg-green-700 hover:bg-green-800 focus:ring-4 focus:ring-green-300 font-medium rounded-lg text-sm px-5 py-2.5 text-center dark:bg-green-600 dark:hover:bg-green-700 dark:focus:ring-green-800";
165
+ } else if (btnColor === "indigo") {
166
+ button1Class =
167
+ "text-white bg-indigo-700 hover:bg-indigo-800 focus:ring-4 focus:ring-indigo-300 font-medium rounded-lg text-sm px-5 py-2.5 text-center dark:bg-indigo-600 dark:hover:bg-indigo-700 dark:focus:ring-indigo-800";
168
+ } else if (btnColor === "purple") {
169
+ button1Class =
170
+ "text-white bg-purple-700 hover:bg-purple-800 focus:ring-4 focus:ring-purple-300 font-medium rounded-lg text-sm px-5 py-2.5 text-center dark:bg-purple-600 dark:hover:bg-purple-700 dark:focus:ring-purple-800";
171
+ } else if (btnColor === "pink") {
172
+ button1Class =
173
+ "text-white bg-pink-700 hover:bg-pink-800 focus:ring-4 focus:ring-pink-300 font-medium rounded-lg text-sm px-5 py-2.5 text-center dark:bg-pink-600 dark:hover:bg-pink-700 dark:focus:ring-pink-800";
174
+ } else {
175
+ button1Class =
176
+ "text-white bg-blue-700 hover:bg-blue-800 focus:ring-4 focus:ring-blue-300 font-medium rounded-lg text-sm px-5 py-2.5 text-center dark:bg-blue-600 dark:hover:bg-blue-700 dark:focus:ring-blue-800";
177
+ }
178
+ </script>
179
+
180
+ {#if showModalId === id}
181
+ <div
182
+ {id}
183
+ role="dialog"
184
+ aria-modal="true"
185
+ class="flex overflow-y-auto overflow-x-hidden fixed right-0 left-0 top-20 z-50 justify-center items-center"
186
+ >
187
+ <div class="relative px-4 w-full max-w-7xl h-full md:h-auto">
188
+ <!-- Modal content -->
189
+ <div class={divClass}>
190
+ <!-- Modal header -->
191
+ <div class={headDivClass}>
192
+ <h3 class={h3Class}>
193
+ {title}
194
+ </h3>
195
+ <button type="button" class={buttonClass} on:click={closeModal}>
196
+ <svg
197
+ class="w-5 h-5"
198
+ fill="currentColor"
199
+ viewBox="0 0 20 20"
200
+ xmlns="http://www.w3.org/2000/svg"
201
+ ><path
202
+ fill-rule="evenodd"
203
+ d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z"
204
+ clip-rule="evenodd"
205
+ /></svg
206
+ >
207
+ </button>
208
+ </div>
209
+ <!-- Modal body -->
210
+ <div class="p-6 space-y-6">
211
+ <p class={pClass}>
212
+ <slot />
213
+ </p>
214
+ </div>
215
+ <!-- Modal footer -->
216
+ <div class={footerClass}>
217
+ {#if btn1}
218
+ <button type="button" class={button1Class} on:click={handlebtn1}
219
+ >{btn1}</button
220
+ >
221
+ {/if}
222
+ {#if btn2}
223
+ <button type="button" class={btn2Class} on:click={handlebtn2}
224
+ >{btn2}</button
225
+ >
226
+ {/if}
227
+ </div>
228
+ </div>
229
+ </div>
230
+ </div>
231
+
232
+ <div
233
+ on:click={closeModal}
234
+ class="bg-gray-900 bg-opacity-50 dark:bg-opacity-80 fixed inset-0 z-40 w-full h-full"
235
+ />
236
+ {/if}
@@ -0,0 +1,45 @@
1
+ /** @typedef {typeof __propDef.props} ExtraLargeModalProps */
2
+ /** @typedef {typeof __propDef.events} ExtraLargeModalEvents */
3
+ /** @typedef {typeof __propDef.slots} ExtraLargeModalSlots */
4
+ export default class ExtraLargeModal extends SvelteComponentTyped<{
5
+ btn1: any;
6
+ btn2: any;
7
+ showModalId: any;
8
+ id?: string;
9
+ btnColor?: string;
10
+ title?: string;
11
+ textColor?: string;
12
+ }, {
13
+ handlebtn1: CustomEvent<any>;
14
+ handlebtn2: CustomEvent<any>;
15
+ } & {
16
+ [evt: string]: CustomEvent<any>;
17
+ }, {
18
+ default: {};
19
+ }> {
20
+ }
21
+ export type ExtraLargeModalProps = typeof __propDef.props;
22
+ export type ExtraLargeModalEvents = typeof __propDef.events;
23
+ export type ExtraLargeModalSlots = typeof __propDef.slots;
24
+ import { SvelteComponentTyped } from "svelte";
25
+ declare const __propDef: {
26
+ props: {
27
+ btn1: any;
28
+ btn2: any;
29
+ showModalId: any;
30
+ id?: string;
31
+ btnColor?: string;
32
+ title?: string;
33
+ textColor?: string;
34
+ };
35
+ events: {
36
+ handlebtn1: CustomEvent<any>;
37
+ handlebtn2: CustomEvent<any>;
38
+ } & {
39
+ [evt: string]: CustomEvent<any>;
40
+ };
41
+ slots: {
42
+ default: {};
43
+ };
44
+ };
45
+ export {};