lithesome 0.9.0 → 0.10.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.
- package/dist/{internal/actions/clickOutside.d.ts → actions/outside.d.ts} +5 -1
- package/dist/{internal/actions/clickOutside.js → actions/outside.js} +8 -5
- package/dist/{internal/actions → actions}/portal.d.ts +2 -2
- package/dist/{internal/actions → actions}/portal.js +4 -3
- package/dist/{internal/actions/focusTrap.d.ts → actions/trap.d.ts} +1 -1
- package/dist/{internal/actions/focusTrap.js → actions/trap.js} +1 -1
- package/dist/components/Accordion/AccordionButton.svelte.d.ts +1 -12
- package/dist/components/Accordion/types.d.ts +6 -6
- package/dist/components/Checkbox/Checkbox.svelte +1 -6
- package/dist/components/Checkbox/Checkbox.svelte.d.ts +5 -448
- package/dist/components/Checkbox/types.d.ts +3 -3
- package/dist/components/Combobox/ComboboxContent.svelte +6 -6
- package/dist/components/Combobox/types.d.ts +6 -6
- package/dist/components/Hovercard/HovercardContent.svelte +6 -13
- package/dist/components/Hovercard/types.d.ts +5 -5
- package/dist/components/Menu/MenuContent.svelte +6 -6
- package/dist/components/Menu/types.d.ts +6 -6
- package/dist/components/Modal/ModalContent.svelte +4 -3
- package/dist/components/Modal/types.d.ts +6 -6
- package/dist/components/Pin/types.d.ts +4 -4
- package/dist/components/Popover/PopoverContent.svelte +8 -16
- package/dist/components/Popover/types.d.ts +5 -5
- package/dist/components/Portal/Portal.svelte +7 -6
- package/dist/components/Portal/index.d.ts +1 -1
- package/dist/components/Portal/index.js +1 -1
- package/dist/components/Portal/types.d.ts +2 -2
- package/dist/components/RadioGroup/types.d.ts +3 -3
- package/dist/components/Select/SelectContent.svelte +6 -6
- package/dist/components/Select/types.d.ts +7 -7
- package/dist/components/Tabs/types.d.ts +5 -5
- package/dist/index.d.ts +3 -0
- package/dist/index.js +3 -0
- package/dist/internal/index.d.ts +1 -4
- package/dist/internal/index.js +1 -4
- package/dist/internal/types.d.ts +3 -2
- package/package.json +1 -1
- /package/dist/internal/{actions → helpers}/action.d.ts +0 -0
- /package/dist/internal/{actions → helpers}/action.js +0 -0
|
@@ -5,10 +5,14 @@ type ExlcudeElement = HTMLElement | null | undefined;
|
|
|
5
5
|
* @param options Object of options.
|
|
6
6
|
* @param options.callback The function called when clicking outside of the element.
|
|
7
7
|
* @param options.exlude The element to be excluded when calling the `options.callback` handler.
|
|
8
|
+
* @param options.event The event to trigger the callback function.
|
|
9
|
+
*
|
|
10
|
+
* Default = `click`
|
|
8
11
|
*/
|
|
9
|
-
export declare const
|
|
12
|
+
export declare const useOutside: (node: HTMLElement, options: {
|
|
10
13
|
callback: () => void;
|
|
11
14
|
exclude?: ExlcudeElement[] | ExlcudeElement;
|
|
15
|
+
on?: keyof DocumentEventMap;
|
|
12
16
|
}) => {
|
|
13
17
|
destroy: () => void;
|
|
14
18
|
};
|
|
@@ -4,19 +4,22 @@
|
|
|
4
4
|
* @param options Object of options.
|
|
5
5
|
* @param options.callback The function called when clicking outside of the element.
|
|
6
6
|
* @param options.exlude The element to be excluded when calling the `options.callback` handler.
|
|
7
|
+
* @param options.event The event to trigger the callback function.
|
|
8
|
+
*
|
|
9
|
+
* Default = `click`
|
|
7
10
|
*/
|
|
8
|
-
export const
|
|
9
|
-
const
|
|
10
|
-
|
|
11
|
+
export const useOutside = (node, options) => {
|
|
12
|
+
const { callback, exclude, on = 'click' } = options;
|
|
13
|
+
const event = (e) => {
|
|
11
14
|
const target = e.target;
|
|
12
15
|
const contains = Array.isArray(exclude) ? exclude.some((el) => el?.contains(target)) : exclude?.contains(target);
|
|
13
16
|
if (node && !node.contains(target) && !e.defaultPrevented && !contains)
|
|
14
17
|
callback();
|
|
15
18
|
};
|
|
16
|
-
document.addEventListener(
|
|
19
|
+
document.addEventListener(on, event, true);
|
|
17
20
|
return {
|
|
18
21
|
destroy() {
|
|
19
|
-
document.removeEventListener(
|
|
22
|
+
document.removeEventListener(on, event, true);
|
|
20
23
|
}
|
|
21
24
|
};
|
|
22
25
|
};
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* @param target The element to be portaled to.\
|
|
4
4
|
* Default = `body`.
|
|
5
5
|
*/
|
|
6
|
-
export declare const
|
|
6
|
+
export declare const usePortal: (node: HTMLElement, target?: HTMLElement | string) => {
|
|
7
7
|
update: (newTarget: HTMLElement | string) => Promise<void>;
|
|
8
|
-
destroy: () => void
|
|
8
|
+
destroy: () => Promise<void>;
|
|
9
9
|
};
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { tick } from 'svelte';
|
|
2
|
-
import { log } from '../helpers/log.js';
|
|
2
|
+
import { log } from '../internal/helpers/log.js';
|
|
3
3
|
/**
|
|
4
4
|
* A svelte action to portal content from one part of the dom to another.
|
|
5
5
|
* @param target The element to be portaled to.\
|
|
6
6
|
* Default = `body`.
|
|
7
7
|
*/
|
|
8
|
-
export const
|
|
8
|
+
export const usePortal = (node, target = '#layers') => {
|
|
9
9
|
const update = async (newTarget) => {
|
|
10
10
|
let el = typeof newTarget === 'string' ? document.querySelector(newTarget) : newTarget;
|
|
11
11
|
await tick();
|
|
@@ -15,7 +15,8 @@ export const portal = (node, target = '#layers') => {
|
|
|
15
15
|
}
|
|
16
16
|
el.appendChild(node);
|
|
17
17
|
};
|
|
18
|
-
const destroy = () => {
|
|
18
|
+
const destroy = async () => {
|
|
19
|
+
await tick();
|
|
19
20
|
if (node)
|
|
20
21
|
node.remove();
|
|
21
22
|
};
|
|
@@ -1,17 +1,6 @@
|
|
|
1
1
|
import { SvelteComponent } from "svelte";
|
|
2
|
-
import { type BaseProps, type Handler } from '../../internal/index.js';
|
|
3
2
|
declare const __propDef: {
|
|
4
|
-
props:
|
|
5
|
-
active: boolean;
|
|
6
|
-
disabled: boolean;
|
|
7
|
-
}> & {
|
|
8
|
-
/**
|
|
9
|
-
* The onclick event.
|
|
10
|
-
*
|
|
11
|
-
* Using the regular `onclick` will overwrite and behaviour the component requires.
|
|
12
|
-
*/
|
|
13
|
-
onClick?: Handler<MouseEvent, HTMLButtonElement> | undefined;
|
|
14
|
-
};
|
|
3
|
+
props: any;
|
|
15
4
|
events: {
|
|
16
5
|
[evt: string]: CustomEvent<any>;
|
|
17
6
|
};
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { Props, Handler, Transition } from '../../internal/index.js';
|
|
2
2
|
interface AccordionState {
|
|
3
3
|
/** True if any item is opened. */
|
|
4
4
|
active: boolean;
|
|
5
5
|
}
|
|
6
|
-
export interface AccordionProps extends
|
|
6
|
+
export interface AccordionProps extends Props<HTMLDivElement, AccordionState> {
|
|
7
7
|
/** Allow only a singluar `AccordionItem` to be opened at once. */
|
|
8
8
|
single?: boolean;
|
|
9
9
|
}
|
|
@@ -11,7 +11,7 @@ interface AccordionContentState {
|
|
|
11
11
|
/** True if any item is opened. */
|
|
12
12
|
active: boolean;
|
|
13
13
|
}
|
|
14
|
-
export interface AccordionContentProps extends
|
|
14
|
+
export interface AccordionContentProps extends Props<HTMLDivElement, AccordionContentState> {
|
|
15
15
|
/**
|
|
16
16
|
* The `svelte/transtion` you wish to use.
|
|
17
17
|
*
|
|
@@ -19,7 +19,7 @@ export interface AccordionContentProps extends BaseProps<HTMLDivElement, Accordi
|
|
|
19
19
|
*/
|
|
20
20
|
transition?: Transition;
|
|
21
21
|
}
|
|
22
|
-
export interface AccordionHeadingProps extends
|
|
22
|
+
export interface AccordionHeadingProps extends Props<HTMLDivElement> {
|
|
23
23
|
/** The `aria-level` to be set. */
|
|
24
24
|
level?: 1 | 2 | 3 | 4 | 5 | 6;
|
|
25
25
|
}
|
|
@@ -29,7 +29,7 @@ interface AccordionButtonState {
|
|
|
29
29
|
/** True if the item is disabled. */
|
|
30
30
|
disabled: boolean;
|
|
31
31
|
}
|
|
32
|
-
export interface AccordionButtonProps extends
|
|
32
|
+
export interface AccordionButtonProps extends Props<HTMLButtonElement, AccordionButtonState> {
|
|
33
33
|
onClick?: Handler<MouseEvent, HTMLButtonElement>;
|
|
34
34
|
}
|
|
35
35
|
interface AccordionItemState {
|
|
@@ -38,7 +38,7 @@ interface AccordionItemState {
|
|
|
38
38
|
/** True if the item is disabled. */
|
|
39
39
|
disabled: boolean;
|
|
40
40
|
}
|
|
41
|
-
export interface AccordionItemProps extends
|
|
41
|
+
export interface AccordionItemProps extends Props<HTMLDivElement, AccordionItemState> {
|
|
42
42
|
/** Disables the items, disallowing clicking and keyboard navigation. */
|
|
43
43
|
disabled?: boolean;
|
|
44
44
|
}
|