@svelte-atoms/core 1.0.0-alpha.29 → 1.0.0-alpha.31
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 +3 -2
- package/dist/attachments/clickout.svelte.d.ts +1 -1
- package/dist/attachments/clickout.svelte.js +2 -2
- package/dist/components/accordion/accordion-root.svelte +65 -61
- package/dist/components/accordion/accordion-root.svelte.d.ts +1 -1
- package/dist/components/accordion/accordion.stories.svelte +70 -134
- package/dist/components/accordion/item/accordion-item-body.svelte +44 -42
- package/dist/components/accordion/item/accordion-item-header.svelte +51 -50
- package/dist/components/accordion/item/accordion-item-indicator.svelte +51 -50
- package/dist/components/accordion/item/accordion-item-root.svelte +66 -65
- package/dist/components/accordion/item/bond.svelte.d.ts +2 -0
- package/dist/components/accordion/item/index.d.ts +3 -0
- package/dist/components/accordion/item/index.js +3 -0
- package/dist/components/accordion/item/motion.svelte.d.ts +15 -0
- package/dist/components/accordion/item/motion.svelte.js +30 -0
- package/dist/components/accordion/item/types.d.ts +7 -24
- package/dist/components/alert/alert-close-button.svelte +66 -70
- package/dist/components/alert/alert-description.svelte +42 -42
- package/dist/components/alert/alert-description.svelte.d.ts +3 -6
- package/dist/components/alert/alert-root.svelte +68 -103
- package/dist/components/alert/alert-root.svelte.d.ts +2 -2
- package/dist/components/alert/alert.stories.svelte +10 -11
- package/dist/components/alert/bond.svelte.d.ts +0 -13
- package/dist/components/alert/bond.svelte.js +0 -32
- package/dist/components/alert/types.d.ts +8 -32
- package/dist/components/atom/html-atom.svelte +261 -207
- package/dist/components/avatar/avatar.stories.svelte +8 -13
- package/dist/components/badge/badge.stories.svelte +1 -6
- package/dist/components/badge/badge.svelte +1 -1
- package/dist/components/breadcrumb/breadcrumb.stories.svelte +16 -21
- package/dist/components/button/button.stories.svelte +1 -34
- package/dist/components/calendar/calendar-day.svelte +9 -4
- package/dist/components/calendar/calendar-header.svelte +29 -29
- package/dist/components/calendar/calendar-root.svelte +206 -206
- package/dist/components/calendar/calendar.stories.svelte +26 -31
- package/dist/components/card/card-body.svelte +1 -1
- package/dist/components/card/card-footer.svelte +1 -1
- package/dist/components/card/card-root.svelte +1 -1
- package/dist/components/card/card.stories.svelte +92 -104
- package/dist/components/checkbox/checkbox.stories.svelte +4 -9
- package/dist/components/checkbox/checkbox.svelte +159 -157
- package/dist/components/collapsible/collapsible.stories.svelte +2 -3
- package/dist/components/combobox/atoms.d.ts +1 -1
- package/dist/components/combobox/atoms.js +1 -1
- package/dist/components/combobox/combobox-root.svelte +1 -1
- package/dist/components/combobox/compobox.stories.svelte +19 -22
- package/dist/components/combobox/index.d.ts +1 -0
- package/dist/components/container/container.stories.svelte +8 -11
- package/dist/components/container/container.svelte.d.ts +1 -1
- package/dist/components/datagrid/datagrid-root.svelte +59 -59
- package/dist/components/datagrid/datagrid.css +5 -5
- package/dist/components/datagrid/datagrid.stories.svelte +47 -50
- package/dist/components/datagrid/tr/bond.svelte.d.ts +4 -2
- package/dist/components/datagrid/tr/bond.svelte.js +9 -7
- package/dist/components/datagrid/tr/datagrid-tr.svelte +90 -88
- package/dist/components/date-picker/date-picker-calendar.svelte +2 -2
- package/dist/components/date-picker/date-picker-header.svelte +100 -100
- package/dist/components/date-picker/date-picker-months.svelte +142 -142
- package/dist/components/date-picker/date-picker-root.svelte +95 -95
- package/dist/components/date-picker/date-picker-years.svelte +205 -205
- package/dist/components/date-picker/date-picker.stories.svelte +35 -42
- package/dist/components/dialog/bond.svelte.d.ts +13 -3
- package/dist/components/dialog/bond.svelte.js +66 -5
- package/dist/components/dialog/dialog-content.svelte +2 -20
- package/dist/components/dialog/dialog-root.svelte +91 -110
- package/dist/components/dialog/dialog.stories.svelte +34 -37
- package/dist/components/dialog/motion.svelte.d.ts +13 -0
- package/dist/components/dialog/motion.svelte.js +44 -0
- package/dist/components/drawer/attachments.svelte.d.ts +1 -1
- package/dist/components/drawer/attachments.svelte.js +7 -10
- package/dist/components/drawer/bond.svelte.d.ts +24 -5
- package/dist/components/drawer/bond.svelte.js +77 -11
- package/dist/components/drawer/drawer-content.svelte +49 -42
- package/dist/components/drawer/drawer.stories.svelte +144 -224
- package/dist/components/drawer/index.d.ts +2 -0
- package/dist/components/drawer/index.js +2 -0
- package/dist/components/drawer/motion.d.ts +15 -0
- package/dist/components/drawer/motion.js +28 -0
- package/dist/components/dropdown/atoms.d.ts +1 -1
- package/dist/components/dropdown/atoms.js +1 -1
- package/dist/components/dropdown/bond.svelte.d.ts +5 -1
- package/dist/components/dropdown/dropdown-root.svelte +1 -1
- package/dist/components/dropdown/dropdown.stories.svelte +38 -41
- package/dist/components/dropdown/index.d.ts +1 -0
- package/dist/components/form/form.stories.svelte +58 -61
- package/dist/components/image/image.stories.svelte +9 -12
- package/dist/components/input/input.stories.svelte +11 -14
- package/dist/components/label/label.stories.svelte +1 -12
- package/dist/components/label/label.stories.svelte.d.ts +24 -4
- package/dist/components/lazy/lazy.stories.svelte +28 -35
- package/dist/components/lazy/lazy.svelte +28 -28
- package/dist/components/link/link.stories.svelte +1 -12
- package/dist/components/link/link.stories.svelte.d.ts +24 -4
- package/dist/components/list/list-item.svelte +20 -20
- package/dist/components/menu/atoms.d.ts +1 -0
- package/dist/components/menu/atoms.js +1 -0
- package/dist/components/menu/index.d.ts +2 -1
- package/dist/components/menu/index.js +1 -1
- package/dist/components/menu/menu-item.svelte +69 -51
- package/dist/components/menu/menu-item.svelte.d.ts +1 -0
- package/dist/components/menu/menu-list.svelte +40 -40
- package/dist/components/menu/menu.stories.svelte +9 -12
- package/dist/components/popover/bond.svelte.d.ts +20 -7
- package/dist/components/popover/bond.svelte.js +104 -45
- package/dist/components/popover/motion.d.ts +6 -0
- package/dist/components/popover/motion.js +56 -0
- package/dist/components/popover/popover-arrow.svelte +4 -4
- package/dist/components/popover/popover-content.svelte +137 -178
- package/dist/components/popover/popover-indicator.svelte +2 -1
- package/dist/components/popover/popover-root.svelte +1 -1
- package/dist/components/popover/popover.stories.svelte +49 -52
- package/dist/components/popover/types.d.ts +9 -7
- package/dist/components/portal/active-portal.svelte +29 -22
- package/dist/components/portal/active-portal.svelte.d.ts +2 -9
- package/dist/components/portal/portal-root.svelte +76 -83
- package/dist/components/portal/portal-root.svelte.d.ts +4 -6
- package/dist/components/portal/teleport.svelte +49 -50
- package/dist/components/portal/teleport.svelte.d.ts +3 -4
- package/dist/components/qr-code/qr-code.stories.svelte +18 -27
- package/dist/components/qr-code/qr-code.svelte +75 -75
- package/dist/components/radio/radio-group.stories.svelte +21 -30
- package/dist/components/radio/radio.stories.svelte +1 -10
- package/dist/components/radio/radio.svelte +109 -109
- package/dist/components/radio/types.d.ts +98 -0
- package/dist/components/radio/types.js +2 -0
- package/dist/components/root/root.svelte +104 -121
- package/dist/components/scrollable/scrollable-root.svelte.d.ts +2 -2
- package/dist/components/scrollable/scrollable.stories.svelte +95 -105
- package/dist/components/sidebar/index.d.ts +2 -0
- package/dist/components/sidebar/index.js +2 -0
- package/dist/components/sidebar/motion.svelte.d.ts +11 -0
- package/dist/components/sidebar/motion.svelte.js +16 -0
- package/dist/components/sidebar/sidebar-content.svelte +3 -2
- package/dist/components/sidebar/sidebar-root.svelte +39 -41
- package/dist/components/sidebar/sidebar.stories.svelte +43 -54
- package/dist/components/sidebar/types.d.ts +3 -12
- package/dist/components/tabs/tab/bond.svelte.d.ts +4 -1
- package/dist/components/tabs/tab/bond.svelte.js +4 -1
- package/dist/components/tabs/tabs.stories.svelte +31 -34
- package/dist/components/textarea/atoms.d.ts +1 -0
- package/dist/components/textarea/atoms.js +1 -0
- package/dist/components/textarea/textarea-input.svelte +9 -6
- package/dist/components/textarea/textarea-root.svelte +9 -9
- package/dist/components/textarea/textarea-root.svelte.d.ts +2 -0
- package/dist/components/tooltip/tooltip-trigger.svelte +39 -37
- package/dist/components/tooltip/tooltip-trigger.svelte.d.ts +1 -0
- package/dist/components/tooltip/tooltip.stories.svelte +7 -10
- package/dist/components/tree/tree.stories.svelte +102 -94
- package/dist/context/preset.svelte.d.ts +3 -3
- package/dist/icons/icon-copy.svelte +6 -0
- package/dist/{components/radio/types.svelte.d.ts → icons/icon-copy.svelte.d.ts} +3 -3
- package/dist/utils/function.d.ts +2 -0
- package/dist/utils/function.js +6 -0
- package/dist/utils/markdown-to-llm.d.ts +28 -0
- package/dist/utils/markdown-to-llm.js +76 -0
- package/package.json +6 -10
- package/dist/actions/animation.svelte.d.ts +0 -6
- package/dist/actions/animation.svelte.js +0 -14
- package/dist/actions/clickout.svelte.d.ts +0 -2
- package/dist/actions/clickout.svelte.js +0 -15
- package/dist/actions/popover.svelte.d.ts +0 -19
- package/dist/actions/popover.svelte.js +0 -81
- package/dist/actions/portal.svelte.d.ts +0 -8
- package/dist/actions/portal.svelte.js +0 -32
- package/dist/attachments/gsap.svelte.d.ts +0 -2
- package/dist/attachments/gsap.svelte.js +0 -26
- package/dist/components/radio/types.svelte +0 -0
- package/llm/composition.md +0 -395
- package/llm/crafting.md +0 -838
- package/llm/motion.md +0 -970
- package/llm/philosophy.md +0 -23
- package/llm/preset-variant-integration.md +0 -516
- package/llm/preset.md +0 -383
- package/llm/styling.md +0 -216
- package/llm/usage.md +0 -46
- package/llm/variants.md +0 -1259
|
@@ -1,50 +1,51 @@
|
|
|
1
|
-
<script lang="ts" generics="E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base">
|
|
2
|
-
import { animate as motion } from 'motion';
|
|
3
|
-
import { Icon } from '../../icon';
|
|
4
|
-
import IconArrowDown from '../../../icons/icon-arrow-down.svelte';
|
|
5
|
-
import { HtmlAtom, type Base } from '../../atom';
|
|
6
|
-
import { AccordionItemBond } from './bond.svelte';
|
|
7
|
-
import type { AccordionItemIndicatorProps } from './types';
|
|
8
|
-
|
|
9
|
-
const bond = AccordionItemBond.get();
|
|
10
|
-
const isOpen = $derived(bond?.state?.isOpen ?? false);
|
|
11
|
-
|
|
12
|
-
let {
|
|
13
|
-
class: klass = '',
|
|
14
|
-
children = undefined,
|
|
15
|
-
onmount = undefined,
|
|
16
|
-
ondestroy = undefined,
|
|
17
|
-
animate = _animate,
|
|
18
|
-
enter = undefined,
|
|
19
|
-
exit = undefined,
|
|
20
|
-
initial = undefined,
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
...
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
{
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
1
|
+
<script lang="ts" generics="E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base">
|
|
2
|
+
import { animate as motion } from 'motion';
|
|
3
|
+
import { Icon } from '../../icon';
|
|
4
|
+
import IconArrowDown from '../../../icons/icon-arrow-down.svelte';
|
|
5
|
+
import { HtmlAtom, type Base } from '../../atom';
|
|
6
|
+
import { AccordionItemBond } from './bond.svelte';
|
|
7
|
+
import type { AccordionItemIndicatorProps } from './types';
|
|
8
|
+
|
|
9
|
+
const bond = AccordionItemBond.get();
|
|
10
|
+
const isOpen = $derived(bond?.state?.isOpen ?? false);
|
|
11
|
+
|
|
12
|
+
let {
|
|
13
|
+
class: klass = '',
|
|
14
|
+
children = undefined,
|
|
15
|
+
onmount = undefined,
|
|
16
|
+
ondestroy = undefined,
|
|
17
|
+
animate = _animate,
|
|
18
|
+
enter = undefined,
|
|
19
|
+
exit = undefined,
|
|
20
|
+
initial = undefined,
|
|
21
|
+
preset = 'accordion.item.indicator',
|
|
22
|
+
...restProps
|
|
23
|
+
}: AccordionItemIndicatorProps<E, B> = $props();
|
|
24
|
+
|
|
25
|
+
const indicatorProps = $derived({
|
|
26
|
+
...bond?.indicator(),
|
|
27
|
+
...restProps
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
function _animate(node: HTMLElement) {
|
|
31
|
+
return motion(node, { rotate: 180 * +isOpen }, { duration: 0.3, ease: 'anticipate' });
|
|
32
|
+
}
|
|
33
|
+
</script>
|
|
34
|
+
|
|
35
|
+
<HtmlAtom
|
|
36
|
+
{preset}
|
|
37
|
+
class={['border-border pointer-events-none flex items-center justify-center', '$preset', klass]}
|
|
38
|
+
onmount={onmount?.bind(bond.state)}
|
|
39
|
+
ondestroy={ondestroy?.bind(bond.state)}
|
|
40
|
+
animate={animate?.bind(bond.state)}
|
|
41
|
+
enter={enter?.bind(bond.state)}
|
|
42
|
+
exit={exit?.bind(bond.state)}
|
|
43
|
+
initial={initial?.bind(bond.state)}
|
|
44
|
+
{...indicatorProps}
|
|
45
|
+
>
|
|
46
|
+
{#if children}
|
|
47
|
+
{@render children({ accordionItem: bond })}
|
|
48
|
+
{:else}
|
|
49
|
+
<Icon src={IconArrowDown} />
|
|
50
|
+
{/if}
|
|
51
|
+
</HtmlAtom>
|
|
@@ -1,65 +1,66 @@
|
|
|
1
|
-
<script lang="ts" generics="E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base">
|
|
2
|
-
import { nanoid } from 'nanoid';
|
|
3
|
-
import { defineProperty, defineState } from '../../../utils';
|
|
4
|
-
import { HtmlAtom, type Base } from '../../atom';
|
|
5
|
-
import {
|
|
6
|
-
AccordionItemBond,
|
|
7
|
-
AccordionItemBondState,
|
|
8
|
-
type AccordionItemBondProps
|
|
9
|
-
} from './bond.svelte';
|
|
10
|
-
import type { AccordionItemRootProps } from './types';
|
|
11
|
-
|
|
12
|
-
let {
|
|
13
|
-
class: klass = '',
|
|
14
|
-
value = nanoid(),
|
|
15
|
-
data = undefined,
|
|
16
|
-
disabled = false,
|
|
17
|
-
factory = _factory,
|
|
18
|
-
children = undefined,
|
|
19
|
-
onmount = undefined,
|
|
20
|
-
ondestroy = undefined,
|
|
21
|
-
animate = undefined,
|
|
22
|
-
enter = undefined,
|
|
23
|
-
exit = undefined,
|
|
24
|
-
initial = undefined,
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
defineProperty('
|
|
31
|
-
defineProperty('
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
...
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
{
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
1
|
+
<script lang="ts" generics="E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base">
|
|
2
|
+
import { nanoid } from 'nanoid';
|
|
3
|
+
import { defineProperty, defineState } from '../../../utils';
|
|
4
|
+
import { HtmlAtom, type Base } from '../../atom';
|
|
5
|
+
import {
|
|
6
|
+
AccordionItemBond,
|
|
7
|
+
AccordionItemBondState,
|
|
8
|
+
type AccordionItemBondProps
|
|
9
|
+
} from './bond.svelte';
|
|
10
|
+
import type { AccordionItemRootProps } from './types';
|
|
11
|
+
|
|
12
|
+
let {
|
|
13
|
+
class: klass = '',
|
|
14
|
+
value = nanoid(),
|
|
15
|
+
data = undefined,
|
|
16
|
+
disabled = false,
|
|
17
|
+
factory = _factory,
|
|
18
|
+
children = undefined,
|
|
19
|
+
onmount = undefined,
|
|
20
|
+
ondestroy = undefined,
|
|
21
|
+
animate = undefined,
|
|
22
|
+
enter = undefined,
|
|
23
|
+
exit = undefined,
|
|
24
|
+
initial = undefined,
|
|
25
|
+
preset = 'accordion.item',
|
|
26
|
+
...restProps
|
|
27
|
+
}: AccordionItemRootProps<E, B> = $props();
|
|
28
|
+
|
|
29
|
+
const accordionItemProps = defineState<AccordionItemBondProps>([
|
|
30
|
+
defineProperty('data', () => data),
|
|
31
|
+
defineProperty('disabled', () => disabled),
|
|
32
|
+
defineProperty('value', () => value)
|
|
33
|
+
]);
|
|
34
|
+
const bond = factory(accordionItemProps).share();
|
|
35
|
+
|
|
36
|
+
bond.state.mount();
|
|
37
|
+
|
|
38
|
+
const rootProps = $derived({
|
|
39
|
+
...bond.root(),
|
|
40
|
+
...restProps
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
function _factory(props: typeof accordionItemProps) {
|
|
44
|
+
const accordionItemState = new AccordionItemBondState(() => props);
|
|
45
|
+
return new AccordionItemBond(accordionItemState);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export function getBond() {
|
|
49
|
+
return bond;
|
|
50
|
+
}
|
|
51
|
+
</script>
|
|
52
|
+
|
|
53
|
+
<HtmlAtom
|
|
54
|
+
{bond}
|
|
55
|
+
{preset}
|
|
56
|
+
class={['border-border', '$preset', klass]}
|
|
57
|
+
onmount={onmount?.bind(bond.state)}
|
|
58
|
+
ondestroy={ondestroy?.bind(bond.state)}
|
|
59
|
+
animate={animate?.bind(bond.state)}
|
|
60
|
+
enter={enter?.bind(bond.state)}
|
|
61
|
+
exit={exit?.bind(bond.state)}
|
|
62
|
+
initial={initial?.bind(bond.state)}
|
|
63
|
+
{...rootProps}
|
|
64
|
+
>
|
|
65
|
+
{@render children?.({ accordionItem: bond })}
|
|
66
|
+
</HtmlAtom>
|
|
@@ -3,6 +3,8 @@ import { Bond, BondState, type BondStateProps } from '../../../shared/bond.svelt
|
|
|
3
3
|
export type AccordionItemBondProps = BondStateProps & {
|
|
4
4
|
value: string;
|
|
5
5
|
disabled: boolean;
|
|
6
|
+
multiple: boolean;
|
|
7
|
+
collapsible: boolean;
|
|
6
8
|
};
|
|
7
9
|
export type AccordionItemBondElements = {
|
|
8
10
|
root: HTMLElement;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { type Easing } from 'motion';
|
|
2
|
+
export type EnterAccordionItemBodyParams = {
|
|
3
|
+
duration?: number;
|
|
4
|
+
delay?: number;
|
|
5
|
+
ease?: Easing | Easing[] | (string & {});
|
|
6
|
+
};
|
|
7
|
+
export declare function enterAccordionItemBody(params?: EnterAccordionItemBodyParams): (node: HTMLElement) => {
|
|
8
|
+
duration: number;
|
|
9
|
+
delay: number;
|
|
10
|
+
};
|
|
11
|
+
export type ExitAccordionItemBodyParams = EnterAccordionItemBodyParams;
|
|
12
|
+
export declare function exitAccordionItemBody(params?: ExitAccordionItemBodyParams): (node: HTMLElement) => {
|
|
13
|
+
duration: number;
|
|
14
|
+
delay: number;
|
|
15
|
+
};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { DURATION } from '../../../shared';
|
|
2
|
+
import { animate } from 'motion';
|
|
3
|
+
export function enterAccordionItemBody(params = {}) {
|
|
4
|
+
return (node) => {
|
|
5
|
+
const { duration = DURATION.normal / 1000, delay = 0, ease = 'linear' } = params;
|
|
6
|
+
animate(node, {
|
|
7
|
+
opacity: [0, 1],
|
|
8
|
+
height: 'auto'
|
|
9
|
+
}, {
|
|
10
|
+
duration,
|
|
11
|
+
delay,
|
|
12
|
+
ease
|
|
13
|
+
});
|
|
14
|
+
return { duration: duration * 1000, delay: delay * 1000 };
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
export function exitAccordionItemBody(params = {}) {
|
|
18
|
+
return (node) => {
|
|
19
|
+
const { duration = DURATION.normal / 1000, delay = 0.1, ease = 'linear' } = params;
|
|
20
|
+
animate(node, {
|
|
21
|
+
opacity: [1, 0],
|
|
22
|
+
height: 0
|
|
23
|
+
}, {
|
|
24
|
+
duration,
|
|
25
|
+
delay,
|
|
26
|
+
ease
|
|
27
|
+
});
|
|
28
|
+
return { duration: duration * 1000, delay: delay * 1000 };
|
|
29
|
+
};
|
|
30
|
+
}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import type { Snippet } from 'svelte';
|
|
2
1
|
import type { HtmlAtomProps, Base } from '../../atom';
|
|
3
|
-
import type { Factory
|
|
2
|
+
import type { Factory } from '../../../types';
|
|
4
3
|
import type { AccordionItemBond } from './bond.svelte';
|
|
5
4
|
/**
|
|
6
5
|
* Extend this interface to add custom accordion item root properties in your application.
|
|
@@ -22,31 +21,15 @@ export interface AccordionItemBodyExtendProps {
|
|
|
22
21
|
*/
|
|
23
22
|
export interface AccordionItemIndicatorExtendProps {
|
|
24
23
|
}
|
|
25
|
-
export interface AccordionItemRootProps<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base> extends
|
|
26
|
-
children?: Snippet<[{
|
|
27
|
-
accordionItem: AccordionItemBond;
|
|
28
|
-
}]>;
|
|
29
|
-
}>, AccordionItemRootExtendProps {
|
|
24
|
+
export interface AccordionItemRootProps<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base> extends HtmlAtomProps<E, B>, AccordionItemRootExtendProps {
|
|
30
25
|
value?: string;
|
|
31
26
|
data?: any;
|
|
32
27
|
disabled?: boolean;
|
|
33
28
|
factory?: Factory<AccordionItemBond>;
|
|
34
29
|
}
|
|
35
|
-
export interface AccordionItemHeaderProps<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base> extends
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
}
|
|
41
|
-
export interface AccordionItemBodyProps<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base> extends Override<HtmlAtomProps<E, B>, {
|
|
42
|
-
children?: Snippet<[{
|
|
43
|
-
accordionItem: AccordionItemBond;
|
|
44
|
-
}]>;
|
|
45
|
-
}>, AccordionItemBodyExtendProps {
|
|
46
|
-
}
|
|
47
|
-
export interface AccordionItemIndicatorProps<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base> extends Override<HtmlAtomProps<E, B>, {
|
|
48
|
-
children?: Snippet<[{
|
|
49
|
-
accordionItem: AccordionItemBond;
|
|
50
|
-
}]>;
|
|
51
|
-
}>, AccordionItemIndicatorExtendProps {
|
|
30
|
+
export interface AccordionItemHeaderProps<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base> extends HtmlAtomProps<E, B>, AccordionItemHeaderExtendProps {
|
|
31
|
+
}
|
|
32
|
+
export interface AccordionItemBodyProps<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base> extends HtmlAtomProps<E, B>, AccordionItemBodyExtendProps {
|
|
33
|
+
}
|
|
34
|
+
export interface AccordionItemIndicatorProps<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base> extends HtmlAtomProps<E, B>, AccordionItemIndicatorExtendProps {
|
|
52
35
|
}
|
|
@@ -1,70 +1,66 @@
|
|
|
1
|
-
<script
|
|
2
|
-
lang="ts"
|
|
3
|
-
generics="E extends keyof HTMLElementTagNameMap = 'button', B extends Base = Base"
|
|
4
|
-
>
|
|
5
|
-
import type { HTMLAttributes } from 'svelte/elements';
|
|
6
|
-
import { HtmlAtom, type Base } from '../atom';
|
|
7
|
-
import { AlertBond } from './bond.svelte';
|
|
8
|
-
import type { AlertCloseButtonProps } from './types';
|
|
9
|
-
import { Icon } from '../icon';
|
|
10
|
-
|
|
11
|
-
type Element = HTMLElementTagNameMap[E];
|
|
12
|
-
|
|
13
|
-
const bond = AlertBond.get();
|
|
14
|
-
|
|
15
|
-
let {
|
|
16
|
-
class: klass = '',
|
|
17
|
-
as = 'button' as E,
|
|
18
|
-
preset = 'alert.close-button',
|
|
19
|
-
children = undefined,
|
|
20
|
-
onmount = undefined,
|
|
21
|
-
ondestroy = undefined,
|
|
22
|
-
animate = undefined,
|
|
23
|
-
enter = undefined,
|
|
24
|
-
exit = undefined,
|
|
25
|
-
initial = undefined,
|
|
26
|
-
...restProps
|
|
27
|
-
}: AlertCloseButtonProps<E, B> & HTMLAttributes<Element> = $props();
|
|
28
|
-
|
|
29
|
-
const
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
{
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
{
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
</Icon>
|
|
68
|
-
{/if}
|
|
69
|
-
</HtmlAtom>
|
|
70
|
-
{/if}
|
|
1
|
+
<script
|
|
2
|
+
lang="ts"
|
|
3
|
+
generics="E extends keyof HTMLElementTagNameMap = 'button', B extends Base = Base"
|
|
4
|
+
>
|
|
5
|
+
import type { HTMLAttributes } from 'svelte/elements';
|
|
6
|
+
import { HtmlAtom, type Base } from '../atom';
|
|
7
|
+
import { AlertBond } from './bond.svelte';
|
|
8
|
+
import type { AlertCloseButtonProps } from './types';
|
|
9
|
+
import { Icon } from '../icon';
|
|
10
|
+
|
|
11
|
+
type Element = HTMLElementTagNameMap[E];
|
|
12
|
+
|
|
13
|
+
const bond = AlertBond.get();
|
|
14
|
+
|
|
15
|
+
let {
|
|
16
|
+
class: klass = '',
|
|
17
|
+
as = 'button' as E,
|
|
18
|
+
preset = 'alert.close-button',
|
|
19
|
+
children = undefined,
|
|
20
|
+
onmount = undefined,
|
|
21
|
+
ondestroy = undefined,
|
|
22
|
+
animate = undefined,
|
|
23
|
+
enter = undefined,
|
|
24
|
+
exit = undefined,
|
|
25
|
+
initial = undefined,
|
|
26
|
+
...restProps
|
|
27
|
+
}: AlertCloseButtonProps<E, B> & HTMLAttributes<Element> = $props();
|
|
28
|
+
|
|
29
|
+
const closeButtonProps = $derived({
|
|
30
|
+
...bond?.closeButton(),
|
|
31
|
+
...restProps
|
|
32
|
+
});
|
|
33
|
+
</script>
|
|
34
|
+
|
|
35
|
+
<HtmlAtom
|
|
36
|
+
{as}
|
|
37
|
+
{bond}
|
|
38
|
+
{preset}
|
|
39
|
+
class={[
|
|
40
|
+
'alert-close-button border-border flex size-6 items-center justify-center rounded p-0.5 transition-colors hover:bg-black/10 dark:hover:bg-white/10',
|
|
41
|
+
'$preset',
|
|
42
|
+
klass
|
|
43
|
+
]}
|
|
44
|
+
onmount={onmount?.bind(bond.state)}
|
|
45
|
+
ondestroy={ondestroy?.bind(bond.state)}
|
|
46
|
+
animate={animate?.bind(bond.state)}
|
|
47
|
+
enter={enter?.bind(bond.state)}
|
|
48
|
+
exit={exit?.bind(bond.state)}
|
|
49
|
+
initial={initial?.bind(bond.state)}
|
|
50
|
+
{...closeButtonProps}
|
|
51
|
+
>
|
|
52
|
+
{#if children}
|
|
53
|
+
{@render children({ alert: bond! })}
|
|
54
|
+
{:else}
|
|
55
|
+
<Icon class="h-full">
|
|
56
|
+
<svg fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
57
|
+
<path
|
|
58
|
+
stroke-linecap="round"
|
|
59
|
+
stroke-linejoin="round"
|
|
60
|
+
stroke-width="2"
|
|
61
|
+
d="M6 18L18 6M6 6l12 12"
|
|
62
|
+
/>
|
|
63
|
+
</svg>
|
|
64
|
+
</Icon>
|
|
65
|
+
{/if}
|
|
66
|
+
</HtmlAtom>
|
|
@@ -1,42 +1,42 @@
|
|
|
1
|
-
<script lang="ts" generics="E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base">
|
|
2
|
-
import { HtmlAtom, type Base } from '../atom';
|
|
3
|
-
import { AlertBond } from './bond.svelte';
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const bond = AlertBond.get();
|
|
7
|
-
|
|
8
|
-
let {
|
|
9
|
-
class: klass = '',
|
|
10
|
-
as = 'p' as E,
|
|
11
|
-
preset = 'alert.description',
|
|
12
|
-
children = undefined,
|
|
13
|
-
onmount = undefined,
|
|
14
|
-
ondestroy = undefined,
|
|
15
|
-
animate = undefined,
|
|
16
|
-
enter = undefined,
|
|
17
|
-
exit = undefined,
|
|
18
|
-
initial = undefined,
|
|
19
|
-
...restProps
|
|
20
|
-
}: AlertDescriptionProps<E, B> = $props();
|
|
21
|
-
|
|
22
|
-
const descriptionProps = $derived({
|
|
23
|
-
...bond?.description(),
|
|
24
|
-
...restProps
|
|
25
|
-
});
|
|
26
|
-
</script>
|
|
27
|
-
|
|
28
|
-
<HtmlAtom
|
|
29
|
-
{bond}
|
|
30
|
-
{preset}
|
|
31
|
-
class={['alert-description border-border mt-1 text-sm leading-relaxed', '$preset', klass]}
|
|
32
|
-
onmount={onmount?.bind(bond.state)}
|
|
33
|
-
ondestroy={ondestroy?.bind(bond.state)}
|
|
34
|
-
animate={animate?.bind(bond.state)}
|
|
35
|
-
enter={enter?.bind(bond.state)}
|
|
36
|
-
exit={exit?.bind(bond.state)}
|
|
37
|
-
initial={initial?.bind(bond.state)}
|
|
38
|
-
{as}
|
|
39
|
-
{...descriptionProps}
|
|
40
|
-
>
|
|
41
|
-
{@render children?.({ alert: bond! })}
|
|
42
|
-
</HtmlAtom>
|
|
1
|
+
<script lang="ts" generics="E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base">
|
|
2
|
+
import { HtmlAtom, type Base } from '../atom';
|
|
3
|
+
import { AlertBond } from './bond.svelte';
|
|
4
|
+
import type { AlertDescriptionProps } from './types';
|
|
5
|
+
|
|
6
|
+
const bond = AlertBond.get();
|
|
7
|
+
|
|
8
|
+
let {
|
|
9
|
+
class: klass = '',
|
|
10
|
+
as = 'p' as E,
|
|
11
|
+
preset = 'alert.description',
|
|
12
|
+
children = undefined,
|
|
13
|
+
onmount = undefined,
|
|
14
|
+
ondestroy = undefined,
|
|
15
|
+
animate = undefined,
|
|
16
|
+
enter = undefined,
|
|
17
|
+
exit = undefined,
|
|
18
|
+
initial = undefined,
|
|
19
|
+
...restProps
|
|
20
|
+
}: AlertDescriptionProps<E, B> = $props();
|
|
21
|
+
|
|
22
|
+
const descriptionProps = $derived({
|
|
23
|
+
...bond?.description(),
|
|
24
|
+
...restProps
|
|
25
|
+
});
|
|
26
|
+
</script>
|
|
27
|
+
|
|
28
|
+
<HtmlAtom
|
|
29
|
+
{bond}
|
|
30
|
+
{preset}
|
|
31
|
+
class={['alert-description border-border mt-1 text-sm leading-relaxed', '$preset', klass]}
|
|
32
|
+
onmount={onmount?.bind(bond.state)}
|
|
33
|
+
ondestroy={ondestroy?.bind(bond.state)}
|
|
34
|
+
animate={animate?.bind(bond.state)}
|
|
35
|
+
enter={enter?.bind(bond.state)}
|
|
36
|
+
exit={exit?.bind(bond.state)}
|
|
37
|
+
initial={initial?.bind(bond.state)}
|
|
38
|
+
{as}
|
|
39
|
+
{...descriptionProps}
|
|
40
|
+
>
|
|
41
|
+
{@render children?.({ alert: bond! })}
|
|
42
|
+
</HtmlAtom>
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { type Base } from '../atom';
|
|
2
|
+
import type { AlertDescriptionProps } from './types';
|
|
2
3
|
declare function $$render<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base>(): {
|
|
3
4
|
props: AlertDescriptionProps<E, B>;
|
|
4
|
-
exports: {
|
|
5
|
-
AlertDescriptionProps: typeof AlertDescriptionProps;
|
|
6
|
-
};
|
|
5
|
+
exports: {};
|
|
7
6
|
bindings: "";
|
|
8
7
|
slots: {};
|
|
9
8
|
events: {};
|
|
@@ -13,9 +12,7 @@ declare class __sveltets_Render<E extends keyof HTMLElementTagNameMap = 'div', B
|
|
|
13
12
|
events(): ReturnType<typeof $$render<E, B>>['events'];
|
|
14
13
|
slots(): ReturnType<typeof $$render<E, B>>['slots'];
|
|
15
14
|
bindings(): "";
|
|
16
|
-
exports(): {
|
|
17
|
-
AlertDescriptionProps: typeof AlertDescriptionProps;
|
|
18
|
-
};
|
|
15
|
+
exports(): {};
|
|
19
16
|
}
|
|
20
17
|
interface $$IsomorphicComponent {
|
|
21
18
|
new <E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<E, B>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<E, B>['props']>, ReturnType<__sveltets_Render<E, B>['events']>, ReturnType<__sveltets_Render<E, B>['slots']>> & {
|