@geoffcox/sterling-svelte 1.0.11 → 2.0.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/.DS_Store +0 -0
- package/Button.svelte +25 -0
- package/Button.svelte.d.ts +9 -0
- package/{dist/Callout.svelte → Callout.svelte} +61 -78
- package/Callout.svelte.d.ts +15 -0
- package/Callout.types.d.ts +11 -0
- package/Checkbox.svelte +43 -0
- package/Checkbox.svelte.d.ts +10 -0
- package/{dist/Dialog.svelte → Dialog.svelte} +30 -38
- package/Dialog.svelte.d.ts +14 -0
- package/Dropdown.svelte +109 -0
- package/Dropdown.svelte.d.ts +18 -0
- package/Input.svelte +55 -0
- package/Input.svelte.d.ts +12 -0
- package/Label.svelte +91 -0
- package/Label.svelte.d.ts +17 -0
- package/Link.svelte +25 -0
- package/Link.svelte.d.ts +12 -0
- package/{dist/List.svelte → List.svelte} +35 -85
- package/List.svelte.d.ts +20 -0
- package/List.types.d.ts +5 -0
- package/ListItem.svelte +49 -0
- package/ListItem.svelte.d.ts +13 -0
- package/{dist/Menu.svelte → Menu.svelte} +18 -45
- package/Menu.svelte.d.ts +13 -0
- package/{dist/MenuBar.svelte → MenuBar.svelte} +36 -78
- package/MenuBar.svelte.d.ts +13 -0
- package/MenuButton.svelte +116 -0
- package/MenuButton.svelte.d.ts +20 -0
- package/{dist/MenuItem.svelte → MenuItem.svelte} +107 -151
- package/MenuItem.svelte.d.ts +22 -0
- package/{dist/MenuItem.types.d.ts → MenuItem.types.d.ts} +1 -9
- package/MenuSeparator.svelte +11 -0
- package/MenuSeparator.svelte.d.ts +6 -0
- package/{dist/Popover.svelte → Popover.svelte} +45 -64
- package/Popover.svelte.d.ts +15 -0
- package/Progress.constants.d.ts +1 -0
- package/Progress.constants.js +1 -0
- package/Progress.svelte +36 -0
- package/Progress.svelte.d.ts +12 -0
- package/Progress.types.d.ts +4 -0
- package/Radio.svelte +53 -0
- package/Radio.svelte.d.ts +13 -0
- package/{dist/Select.svelte → Select.svelte} +55 -94
- package/Select.svelte.d.ts +20 -0
- package/Slider.svelte +133 -0
- package/Slider.svelte.d.ts +19 -0
- package/Switch.svelte +61 -0
- package/Switch.svelte.d.ts +21 -0
- package/Tab.svelte +51 -0
- package/Tab.svelte.d.ts +12 -0
- package/{dist/TabList.svelte → TabList.svelte} +50 -76
- package/TabList.svelte.d.ts +18 -0
- package/TabList.types.d.ts +5 -0
- package/{dist/TextArea.svelte → TextArea.svelte} +17 -59
- package/TextArea.svelte.d.ts +19 -0
- package/Tooltip.svelte +63 -0
- package/Tooltip.svelte.d.ts +10 -0
- package/Tree.svelte +53 -0
- package/Tree.svelte.d.ts +15 -0
- package/Tree.types.d.ts +5 -0
- package/TreeChevron.svelte +27 -0
- package/TreeChevron.svelte.d.ts +9 -0
- package/{dist/TreeItem.svelte → TreeItem.svelte} +105 -159
- package/TreeItem.svelte.d.ts +22 -0
- package/TreeItem.types.d.ts +4 -0
- package/{dist/actions → actions}/clickOutside.d.ts +1 -0
- package/{dist/actions → actions}/clickOutside.js +1 -0
- package/actions/extraClass.d.ts +8 -0
- package/actions/extraClass.js +14 -0
- package/{dist/index.d.ts → index.d.ts} +4 -12
- package/{dist/index.js → index.js} +3 -9
- package/package.json +26 -28
- package/README.md +0 -18
- package/dist/Button.constants.d.ts +0 -2
- package/dist/Button.constants.js +0 -2
- package/dist/Button.svelte +0 -63
- package/dist/Button.svelte.d.ts +0 -65
- package/dist/Button.types.d.ts +0 -6
- package/dist/Callout.svelte.d.ts +0 -56
- package/dist/Checkbox.svelte +0 -79
- package/dist/Checkbox.svelte.d.ts +0 -63
- package/dist/ColorPicker.constants.d.ts +0 -1
- package/dist/ColorPicker.constants.js +0 -1
- package/dist/ColorPicker.svelte +0 -287
- package/dist/ColorPicker.svelte.d.ts +0 -52
- package/dist/ColorPicker.types.d.ts +0 -4
- package/dist/ColorPicker.types.js +0 -1
- package/dist/Dialog.svelte.d.ts +0 -37
- package/dist/Dropdown.svelte +0 -138
- package/dist/Dropdown.svelte.d.ts +0 -77
- package/dist/HexColorSliders.svelte +0 -103
- package/dist/HexColorSliders.svelte.d.ts +0 -51
- package/dist/HslColorSliders.svelte +0 -128
- package/dist/HslColorSliders.svelte.d.ts +0 -51
- package/dist/Input.svelte +0 -89
- package/dist/Input.svelte.d.ts +0 -74
- package/dist/Label.svelte +0 -197
- package/dist/Label.svelte.d.ts +0 -82
- package/dist/Label.types.d.ts +0 -6
- package/dist/Label.types.js +0 -1
- package/dist/Link.svelte +0 -57
- package/dist/Link.svelte.d.ts +0 -65
- package/dist/List.svelte.d.ts +0 -75
- package/dist/List.types.d.ts +0 -13
- package/dist/ListItem.svelte +0 -78
- package/dist/ListItem.svelte.d.ts +0 -67
- package/dist/Menu.svelte.d.ts +0 -63
- package/dist/MenuBar.svelte.d.ts +0 -58
- package/dist/MenuButton.svelte +0 -145
- package/dist/MenuButton.svelte.d.ts +0 -71
- package/dist/MenuItem.svelte.d.ts +0 -83
- package/dist/MenuItemDisplay.svelte +0 -32
- package/dist/MenuItemDisplay.svelte.d.ts +0 -39
- package/dist/MenuSeparator.svelte +0 -9
- package/dist/MenuSeparator.svelte.d.ts +0 -20
- package/dist/Popover.svelte.d.ts +0 -59
- package/dist/Progress.constants.d.ts +0 -1
- package/dist/Progress.constants.js +0 -1
- package/dist/Progress.svelte +0 -83
- package/dist/Progress.svelte.d.ts +0 -61
- package/dist/Progress.types.d.ts +0 -4
- package/dist/Radio.svelte +0 -126
- package/dist/Radio.svelte.d.ts +0 -65
- package/dist/RgbColorSliders.svelte +0 -93
- package/dist/RgbColorSliders.svelte.d.ts +0 -24
- package/dist/Select.svelte.d.ts +0 -83
- package/dist/Slider.svelte +0 -190
- package/dist/Slider.svelte.d.ts +0 -66
- package/dist/Switch.svelte +0 -110
- package/dist/Switch.svelte.d.ts +0 -74
- package/dist/Tab.svelte +0 -94
- package/dist/Tab.svelte.d.ts +0 -71
- package/dist/TabList.svelte.d.ts +0 -70
- package/dist/TabList.types.d.ts +0 -13
- package/dist/TextArea.svelte.d.ts +0 -69
- package/dist/Tooltip.svelte +0 -106
- package/dist/Tooltip.svelte.d.ts +0 -70
- package/dist/Tree.svelte +0 -104
- package/dist/Tree.svelte.d.ts +0 -67
- package/dist/Tree.types.d.ts +0 -13
- package/dist/TreeChevron.svelte +0 -66
- package/dist/TreeChevron.svelte.d.ts +0 -53
- package/dist/TreeItem.svelte.d.ts +0 -101
- package/dist/TreeItem.types.d.ts +0 -14
- package/dist/TreeItemDisplay.svelte +0 -74
- package/dist/TreeItemDisplay.svelte.d.ts +0 -73
- package/dist/css/Button.base.css +0 -74
- package/dist/css/Button.colorful.css +0 -17
- package/dist/css/Button.css +0 -7
- package/dist/css/Button.secondary.colorful.css +0 -15
- package/dist/css/Button.secondary.css +0 -11
- package/dist/css/Button.shapes.css +0 -14
- package/dist/css/Button.tool.colorful.css +0 -13
- package/dist/css/Button.tool.css +0 -18
- package/dist/css/Callout.base.css +0 -43
- package/dist/css/Callout.colorful.css +0 -5
- package/dist/css/Callout.css +0 -2
- package/dist/css/Checkbox.base.css +0 -145
- package/dist/css/Checkbox.colorful.css +0 -17
- package/dist/css/Checkbox.css +0 -2
- package/dist/css/ColorPicker.base.css +0 -23
- package/dist/css/ColorPicker.css +0 -1
- package/dist/css/Dialog.base.css +0 -114
- package/dist/css/Dialog.css +0 -1
- package/dist/css/Dropdown.base.css +0 -147
- package/dist/css/Dropdown.colorful.css +0 -23
- package/dist/css/Dropdown.css +0 -2
- package/dist/css/HexColorSliders.base.css +0 -106
- package/dist/css/HexColorSliders.css +0 -1
- package/dist/css/HslColorSliders.base.css +0 -124
- package/dist/css/HslColorSliders.css +0 -1
- package/dist/css/Input.base.css +0 -103
- package/dist/css/Input.colorful.css +0 -22
- package/dist/css/Input.composed.css +0 -8
- package/dist/css/Input.css +0 -3
- package/dist/css/Label.base.css +0 -118
- package/dist/css/Label.boxed.colorful.css +0 -21
- package/dist/css/Label.boxed.css +0 -31
- package/dist/css/Label.colorful.css +0 -3
- package/dist/css/Label.css +0 -4
- package/dist/css/Link.base.css +0 -54
- package/dist/css/Link.colorful.css +0 -15
- package/dist/css/Link.css +0 -10
- package/dist/css/Link.ghost.colorful.css +0 -7
- package/dist/css/Link.ghost.css +0 -11
- package/dist/css/Link.text-underline.css +0 -8
- package/dist/css/Link.text-underline.ghost.css +0 -13
- package/dist/css/Link.undecorated.colorful.css +0 -8
- package/dist/css/Link.undecorated.css +0 -8
- package/dist/css/Link.undecorated.ghost.css +0 -8
- package/dist/css/Link.undecorated.underline.css +0 -8
- package/dist/css/List.base.css +0 -98
- package/dist/css/List.css +0 -1
- package/dist/css/ListItem.base.css +0 -59
- package/dist/css/ListItem.css +0 -1
- package/dist/css/Menu.base.css +0 -21
- package/dist/css/Menu.css +0 -1
- package/dist/css/MenuBar.base.css +0 -9
- package/dist/css/MenuBar.css +0 -1
- package/dist/css/MenuButton.base.css +0 -13
- package/dist/css/MenuButton.css +0 -1
- package/dist/css/MenuItem.base.css +0 -48
- package/dist/css/MenuItem.css +0 -1
- package/dist/css/MenuItemDisplay.base.css +0 -108
- package/dist/css/MenuItemDisplay.css +0 -1
- package/dist/css/MenuSeparator.base.css +0 -5
- package/dist/css/MenuSeparator.css +0 -1
- package/dist/css/Popover.css +0 -21
- package/dist/css/Progress.base.css +0 -99
- package/dist/css/Progress.css +0 -1
- package/dist/css/Radio.base.css +0 -135
- package/dist/css/Radio.colorful.css +0 -18
- package/dist/css/Radio.css +0 -2
- package/dist/css/RgbColorSliders.base.css +0 -94
- package/dist/css/RgbColorSliders.css +0 -1
- package/dist/css/Select.base.css +0 -127
- package/dist/css/Select.colorful.css +0 -24
- package/dist/css/Select.composed.css +0 -12
- package/dist/css/Select.css +0 -3
- package/dist/css/Slider.base.css +0 -192
- package/dist/css/Slider.colorful.css +0 -11
- package/dist/css/Slider.composed.css +0 -8
- package/dist/css/Slider.css +0 -3
- package/dist/css/Switch.base.css +0 -206
- package/dist/css/Switch.colorful.css +0 -45
- package/dist/css/Switch.css +0 -2
- package/dist/css/Tab.base.css +0 -132
- package/dist/css/Tab.colorful.css +0 -13
- package/dist/css/Tab.css +0 -2
- package/dist/css/TabList.base.css +0 -34
- package/dist/css/TabList.css +0 -1
- package/dist/css/TextArea.base.css +0 -85
- package/dist/css/TextArea.colorful.css +0 -17
- package/dist/css/TextArea.composed.css +0 -8
- package/dist/css/TextArea.css +0 -3
- package/dist/css/Tooltip.base.css +0 -6
- package/dist/css/Tooltip.css +0 -1
- package/dist/css/Tree.base.css +0 -74
- package/dist/css/Tree.composed.css +0 -8
- package/dist/css/Tree.css +0 -2
- package/dist/css/TreeChevron.base.css +0 -86
- package/dist/css/TreeChevron.css +0 -1
- package/dist/css/TreeItem.base.css +0 -3
- package/dist/css/TreeItem.css +0 -1
- package/dist/css/TreeItemDisplay.base.css +0 -74
- package/dist/css/TreeItemDisplay.colorful.css +0 -9
- package/dist/css/TreeItemDisplay.css +0 -1
- package/dist/css/dark-mode.css +0 -134
- package/dist/css/light-mode.css +0 -134
- package/dist/css/sterling.css +0 -37
- package/dist/package.json +0 -108
- /package/{dist/@types → @types}/clickOutside.d.ts +0 -0
- /package/{dist/Button.types.js → Callout.types.js} +0 -0
- /package/{dist/Label.constants.d.ts → Label.constants.d.ts} +0 -0
- /package/{dist/Label.constants.js → Label.constants.js} +0 -0
- /package/{dist/List.constants.d.ts → List.constants.d.ts} +0 -0
- /package/{dist/List.constants.js → List.constants.js} +0 -0
- /package/{dist/List.types.js → List.types.js} +0 -0
- /package/{dist/MenuBar.constants.d.ts → MenuBar.constants.d.ts} +0 -0
- /package/{dist/MenuBar.constants.js → MenuBar.constants.js} +0 -0
- /package/{dist/MenuBar.types.d.ts → MenuBar.types.d.ts} +0 -0
- /package/{dist/MenuBar.types.js → MenuBar.types.js} +0 -0
- /package/{dist/MenuItem.constants.d.ts → MenuItem.constants.d.ts} +0 -0
- /package/{dist/MenuItem.constants.js → MenuItem.constants.js} +0 -0
- /package/{dist/MenuItem.types.js → MenuItem.types.js} +0 -0
- /package/{dist/MenuItem.utils.d.ts → MenuItem.utils.d.ts} +0 -0
- /package/{dist/MenuItem.utils.js → MenuItem.utils.js} +0 -0
- /package/{dist/Popover.constants.d.ts → Popover.constants.d.ts} +0 -0
- /package/{dist/Popover.constants.js → Popover.constants.js} +0 -0
- /package/{dist/Popover.types.d.ts → Popover.types.d.ts} +0 -0
- /package/{dist/Popover.types.js → Popover.types.js} +0 -0
- /package/{dist/Portal.constants.d.ts → Portal.constants.d.ts} +0 -0
- /package/{dist/Portal.constants.js → Portal.constants.js} +0 -0
- /package/{dist/Portal.types.d.ts → Portal.types.d.ts} +0 -0
- /package/{dist/Portal.types.js → Portal.types.js} +0 -0
- /package/{dist/Progress.types.js → Progress.types.js} +0 -0
- /package/{dist/TabList.constants.d.ts → TabList.constants.d.ts} +0 -0
- /package/{dist/TabList.constants.js → TabList.constants.js} +0 -0
- /package/{dist/TabList.types.js → TabList.types.js} +0 -0
- /package/{dist/TextArea.constants.d.ts → TextArea.constants.d.ts} +0 -0
- /package/{dist/TextArea.constants.js → TextArea.constants.js} +0 -0
- /package/{dist/TextArea.types.d.ts → TextArea.types.d.ts} +0 -0
- /package/{dist/TextArea.types.js → TextArea.types.js} +0 -0
- /package/{dist/Tree.constants.d.ts → Tree.constants.d.ts} +0 -0
- /package/{dist/Tree.constants.js → Tree.constants.js} +0 -0
- /package/{dist/Tree.types.js → Tree.types.js} +0 -0
- /package/{dist/TreeItem.constants.d.ts → TreeItem.constants.d.ts} +0 -0
- /package/{dist/TreeItem.constants.js → TreeItem.constants.js} +0 -0
- /package/{dist/TreeItem.types.js → TreeItem.types.js} +0 -0
- /package/{dist/actions → actions}/applyLightDarkMode.d.ts +0 -0
- /package/{dist/actions → actions}/applyLightDarkMode.js +0 -0
- /package/{dist/actions → actions}/forwardEvents.d.ts +0 -0
- /package/{dist/actions → actions}/forwardEvents.js +0 -0
- /package/{dist/actions → actions}/portal.d.ts +0 -0
- /package/{dist/actions → actions}/portal.js +0 -0
- /package/{dist/actions → actions}/trapKeyboardFocus.d.ts +0 -0
- /package/{dist/actions → actions}/trapKeyboardFocus.js +0 -0
- /package/{dist/idGenerator.d.ts → idGenerator.d.ts} +0 -0
- /package/{dist/idGenerator.js → idGenerator.js} +0 -0
- /package/{dist/mediaQueries → mediaQueries}/prefersColorSchemeDark.d.ts +0 -0
- /package/{dist/mediaQueries → mediaQueries}/prefersColorSchemeDark.js +0 -0
- /package/{dist/mediaQueries → mediaQueries}/prefersReducedMotion.d.ts +0 -0
- /package/{dist/mediaQueries → mediaQueries}/prefersReducedMotion.js +0 -0
- /package/{dist/mediaQueries → mediaQueries}/usingKeyboard.d.ts +0 -0
- /package/{dist/mediaQueries → mediaQueries}/usingKeyboard.js +0 -0
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
import { SvelteComponent } from "svelte";
|
|
2
|
-
declare const __propDef: {
|
|
3
|
-
props: {
|
|
4
|
-
[x: string]: any;
|
|
5
|
-
checked?: boolean | undefined;
|
|
6
|
-
disabled?: boolean | undefined;
|
|
7
|
-
role?: "menuitem" | "menuitemcheckbox" | "menuitemradio" | undefined;
|
|
8
|
-
text?: string | undefined;
|
|
9
|
-
value: string;
|
|
10
|
-
variant?: string | undefined;
|
|
11
|
-
menuVariant?: string | undefined;
|
|
12
|
-
blur?: (() => void) | undefined;
|
|
13
|
-
click?: (() => void) | undefined;
|
|
14
|
-
focus?: ((options?: FocusOptions) => void) | undefined;
|
|
15
|
-
};
|
|
16
|
-
events: {
|
|
17
|
-
blur: FocusEvent;
|
|
18
|
-
click: MouseEvent;
|
|
19
|
-
dblclick: MouseEvent;
|
|
20
|
-
dragend: DragEvent;
|
|
21
|
-
dragenter: DragEvent;
|
|
22
|
-
dragleave: DragEvent;
|
|
23
|
-
dragover: DragEvent;
|
|
24
|
-
dragstart: DragEvent;
|
|
25
|
-
drop: DragEvent;
|
|
26
|
-
focus: FocusEvent;
|
|
27
|
-
focusin: FocusEvent;
|
|
28
|
-
focusout: FocusEvent;
|
|
29
|
-
keydown: KeyboardEvent;
|
|
30
|
-
keypress: KeyboardEvent;
|
|
31
|
-
keyup: KeyboardEvent;
|
|
32
|
-
mousedown: MouseEvent;
|
|
33
|
-
mouseenter: MouseEvent;
|
|
34
|
-
mouseleave: MouseEvent;
|
|
35
|
-
mousemove: MouseEvent;
|
|
36
|
-
mouseover: MouseEvent;
|
|
37
|
-
mouseout: MouseEvent;
|
|
38
|
-
mouseup: MouseEvent;
|
|
39
|
-
pointercancel: PointerEvent;
|
|
40
|
-
pointerdown: PointerEvent;
|
|
41
|
-
pointerenter: PointerEvent;
|
|
42
|
-
pointerleave: PointerEvent;
|
|
43
|
-
pointermove: PointerEvent;
|
|
44
|
-
pointerover: PointerEvent;
|
|
45
|
-
pointerout: PointerEvent;
|
|
46
|
-
pointerup: PointerEvent;
|
|
47
|
-
wheel: WheelEvent;
|
|
48
|
-
close: CustomEvent<any>;
|
|
49
|
-
open: CustomEvent<any>;
|
|
50
|
-
select: CustomEvent<any>;
|
|
51
|
-
} & {
|
|
52
|
-
[evt: string]: CustomEvent<any>;
|
|
53
|
-
};
|
|
54
|
-
slots: {
|
|
55
|
-
item: {
|
|
56
|
-
checked: boolean;
|
|
57
|
-
depth: number;
|
|
58
|
-
disabled: boolean;
|
|
59
|
-
hasChildren: boolean;
|
|
60
|
-
isMenuBarItem: boolean | undefined;
|
|
61
|
-
open: boolean;
|
|
62
|
-
role: "menuitem" | "menuitemcheckbox" | "menuitemradio";
|
|
63
|
-
text: string | undefined;
|
|
64
|
-
value: string;
|
|
65
|
-
variant: string;
|
|
66
|
-
};
|
|
67
|
-
default: {
|
|
68
|
-
depth: number;
|
|
69
|
-
disabled: boolean;
|
|
70
|
-
};
|
|
71
|
-
};
|
|
72
|
-
exports?: undefined;
|
|
73
|
-
bindings?: undefined;
|
|
74
|
-
};
|
|
75
|
-
export type MenuItemProps = typeof __propDef.props;
|
|
76
|
-
export type MenuItemEvents = typeof __propDef.events;
|
|
77
|
-
export type MenuItemSlots = typeof __propDef.slots;
|
|
78
|
-
export default class MenuItem extends SvelteComponent<MenuItemProps, MenuItemEvents, MenuItemSlots> {
|
|
79
|
-
get blur(): () => void;
|
|
80
|
-
get click(): () => void;
|
|
81
|
-
get focus(): (options?: FocusOptions | undefined) => void;
|
|
82
|
-
}
|
|
83
|
-
export {};
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
<script>/** When true, displays the menu item as checked. */
|
|
2
|
-
export let checked = false;
|
|
3
|
-
/** When true, displays the menu item as disabled. */
|
|
4
|
-
export let disabled = false;
|
|
5
|
-
/** When true, displays the menu item as a parent of children. */
|
|
6
|
-
export let hasChildren = false;
|
|
7
|
-
/** When true, displays the menu as a top level menu bar item. */
|
|
8
|
-
export let isMenuBarItem = false;
|
|
9
|
-
/** The role of the menu item. */
|
|
10
|
-
export let menuItemRole = 'menuitem';
|
|
11
|
-
/** Additional class names to apply. */
|
|
12
|
-
export let variant = '';
|
|
13
|
-
</script>
|
|
14
|
-
|
|
15
|
-
<div class={`sterling-menu-item-display ${variant}`} class:disabled>
|
|
16
|
-
<div
|
|
17
|
-
class="check"
|
|
18
|
-
class:checkmark={menuItemRole === 'menuitemcheckbox'}
|
|
19
|
-
class:bullet={menuItemRole === 'menuitemradio'}
|
|
20
|
-
class:checked
|
|
21
|
-
/>
|
|
22
|
-
<div class="content">
|
|
23
|
-
<slot {checked} {disabled} {hasChildren} {isMenuBarItem} {menuItemRole} {variant} />
|
|
24
|
-
</div>
|
|
25
|
-
{#if $$slots.shortcut}
|
|
26
|
-
<div class="shortcut">
|
|
27
|
-
<slot name="shortcut" {checked} {disabled} {isMenuBarItem} {menuItemRole} {variant} />
|
|
28
|
-
</div>
|
|
29
|
-
{:else}
|
|
30
|
-
<div class="chevron" class:has-children={!isMenuBarItem && hasChildren} />
|
|
31
|
-
{/if}
|
|
32
|
-
</div>
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { SvelteComponent } from "svelte";
|
|
2
|
-
declare const __propDef: {
|
|
3
|
-
props: {
|
|
4
|
-
/** When true, displays the menu item as checked. */ checked?: boolean | undefined;
|
|
5
|
-
/** When true, displays the menu item as disabled. */ disabled?: boolean | undefined;
|
|
6
|
-
/** When true, displays the menu item as a parent of children. */ hasChildren?: boolean | undefined;
|
|
7
|
-
/** When true, displays the menu as a top level menu bar item. */ isMenuBarItem?: boolean | undefined;
|
|
8
|
-
/** The role of the menu item. */ menuItemRole?: "menuitem" | "menuitemcheckbox" | "menuitemradio" | undefined;
|
|
9
|
-
/** Additional class names to apply. */ variant?: string | undefined;
|
|
10
|
-
};
|
|
11
|
-
events: {
|
|
12
|
-
[evt: string]: CustomEvent<any>;
|
|
13
|
-
};
|
|
14
|
-
slots: {
|
|
15
|
-
default: {
|
|
16
|
-
checked: boolean;
|
|
17
|
-
disabled: boolean;
|
|
18
|
-
hasChildren: boolean;
|
|
19
|
-
isMenuBarItem: boolean;
|
|
20
|
-
menuItemRole: "menuitem" | "menuitemcheckbox" | "menuitemradio";
|
|
21
|
-
variant: string;
|
|
22
|
-
};
|
|
23
|
-
shortcut: {
|
|
24
|
-
checked: boolean;
|
|
25
|
-
disabled: boolean;
|
|
26
|
-
isMenuBarItem: boolean;
|
|
27
|
-
menuItemRole: "menuitem" | "menuitemcheckbox" | "menuitemradio";
|
|
28
|
-
variant: string;
|
|
29
|
-
};
|
|
30
|
-
};
|
|
31
|
-
exports?: {} | undefined;
|
|
32
|
-
bindings?: string | undefined;
|
|
33
|
-
};
|
|
34
|
-
export type MenuItemDisplayProps = typeof __propDef.props;
|
|
35
|
-
export type MenuItemDisplayEvents = typeof __propDef.events;
|
|
36
|
-
export type MenuItemDisplaySlots = typeof __propDef.slots;
|
|
37
|
-
export default class MenuItemDisplay extends SvelteComponent<MenuItemDisplayProps, MenuItemDisplayEvents, MenuItemDisplaySlots> {
|
|
38
|
-
}
|
|
39
|
-
export {};
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
<script>/** Additional class names to apply. */
|
|
2
|
-
export let variant = '';
|
|
3
|
-
</script>
|
|
4
|
-
|
|
5
|
-
<!--
|
|
6
|
-
@component
|
|
7
|
-
A styled line to visually separate groups of menu items in a menu.
|
|
8
|
-
-->
|
|
9
|
-
<div class={`sterling-menu-separator ${variant}`} role="separator" {...$$restProps} />
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { SvelteComponent } from "svelte";
|
|
2
|
-
declare const __propDef: {
|
|
3
|
-
props: {
|
|
4
|
-
[x: string]: any;
|
|
5
|
-
variant?: string | undefined;
|
|
6
|
-
};
|
|
7
|
-
events: {
|
|
8
|
-
[evt: string]: CustomEvent<any>;
|
|
9
|
-
};
|
|
10
|
-
slots: {};
|
|
11
|
-
exports?: undefined;
|
|
12
|
-
bindings?: undefined;
|
|
13
|
-
};
|
|
14
|
-
export type MenuSeparatorProps = typeof __propDef.props;
|
|
15
|
-
export type MenuSeparatorEvents = typeof __propDef.events;
|
|
16
|
-
export type MenuSeparatorSlots = typeof __propDef.slots;
|
|
17
|
-
/** A styled line to visually separate groups of menu items in a menu. */
|
|
18
|
-
export default class MenuSeparator extends SvelteComponent<MenuSeparatorProps, MenuSeparatorEvents, MenuSeparatorSlots> {
|
|
19
|
-
}
|
|
20
|
-
export {};
|
package/dist/Popover.svelte.d.ts
DELETED
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { SvelteComponent } from "svelte";
|
|
2
|
-
declare const __propDef: {
|
|
3
|
-
props: {
|
|
4
|
-
[x: string]: any;
|
|
5
|
-
conditionalRender?: boolean | undefined;
|
|
6
|
-
crossAxisOffset?: number | undefined;
|
|
7
|
-
mainAxisOffset?: number | undefined;
|
|
8
|
-
open?: boolean | undefined;
|
|
9
|
-
placement?: string | undefined;
|
|
10
|
-
portalHost?: HTMLElement | undefined;
|
|
11
|
-
reference: HTMLElement | undefined;
|
|
12
|
-
variant?: string | undefined;
|
|
13
|
-
};
|
|
14
|
-
events: {
|
|
15
|
-
blur: FocusEvent;
|
|
16
|
-
click: MouseEvent;
|
|
17
|
-
copy: ClipboardEvent;
|
|
18
|
-
cut: ClipboardEvent;
|
|
19
|
-
dblclick: MouseEvent;
|
|
20
|
-
dragend: DragEvent;
|
|
21
|
-
dragenter: DragEvent;
|
|
22
|
-
dragleave: DragEvent;
|
|
23
|
-
dragover: DragEvent;
|
|
24
|
-
dragstart: DragEvent;
|
|
25
|
-
drop: DragEvent;
|
|
26
|
-
focus: FocusEvent;
|
|
27
|
-
focusin: FocusEvent;
|
|
28
|
-
focusout: FocusEvent;
|
|
29
|
-
keydown: KeyboardEvent;
|
|
30
|
-
keypress: KeyboardEvent;
|
|
31
|
-
keyup: KeyboardEvent;
|
|
32
|
-
mousedown: MouseEvent;
|
|
33
|
-
mouseenter: MouseEvent;
|
|
34
|
-
mouseleave: MouseEvent;
|
|
35
|
-
mousemove: MouseEvent;
|
|
36
|
-
mouseover: MouseEvent;
|
|
37
|
-
mouseout: MouseEvent;
|
|
38
|
-
mouseup: MouseEvent;
|
|
39
|
-
scroll: Event;
|
|
40
|
-
wheel: WheelEvent;
|
|
41
|
-
paste: ClipboardEvent;
|
|
42
|
-
} & {
|
|
43
|
-
[evt: string]: CustomEvent<any>;
|
|
44
|
-
};
|
|
45
|
-
slots: {
|
|
46
|
-
default: {
|
|
47
|
-
open: boolean;
|
|
48
|
-
variant: string;
|
|
49
|
-
};
|
|
50
|
-
};
|
|
51
|
-
exports?: undefined;
|
|
52
|
-
bindings?: undefined;
|
|
53
|
-
};
|
|
54
|
-
export type PopoverProps = typeof __propDef.props;
|
|
55
|
-
export type PopoverEvents = typeof __propDef.events;
|
|
56
|
-
export type PopoverSlots = typeof __propDef.slots;
|
|
57
|
-
export default class Popover extends SvelteComponent<PopoverProps, PopoverEvents, PopoverSlots> {
|
|
58
|
-
}
|
|
59
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const PROGRESS_STATUSES: string[];
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export const PROGRESS_STATUSES = ['none', 'auto', 'info', 'success', 'warning', 'danger'];
|
package/dist/Progress.svelte
DELETED
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
<script>//----- Props ----- //
|
|
2
|
-
/** When true, the progress bar is disabled. */
|
|
3
|
-
export let disabled = false;
|
|
4
|
-
/** The maximum value. */
|
|
5
|
-
export let max = 100;
|
|
6
|
-
/** A read-only percentage between 0 and 100 calculated from value and max. */
|
|
7
|
-
export let percent = 0;
|
|
8
|
-
/** The current status of the progress. */
|
|
9
|
-
export let status = 'none';
|
|
10
|
-
/** The current value. */
|
|
11
|
-
export let value = 0;
|
|
12
|
-
/** Additional class names to apply. */
|
|
13
|
-
export let variant = '';
|
|
14
|
-
/** When true, the progress bar is displayed vertically. */
|
|
15
|
-
export let vertical = false;
|
|
16
|
-
//----- State ----- //
|
|
17
|
-
let clientHeight;
|
|
18
|
-
let clientWidth;
|
|
19
|
-
$: clampMax = Math.max(1, max);
|
|
20
|
-
$: clampValue = Math.max(0, Math.min(value, clampMax));
|
|
21
|
-
$: ratio = clampValue / clampMax;
|
|
22
|
-
$: {
|
|
23
|
-
percent = Math.round(ratio * 100);
|
|
24
|
-
}
|
|
25
|
-
$: percentHeight = clientHeight * ratio;
|
|
26
|
-
$: percentWidth = clientWidth * ratio;
|
|
27
|
-
$: indicatorStyle = vertical ? `height: ${percentHeight}px` : `width: ${percentWidth}px`;
|
|
28
|
-
$: indicatorColor = status === 'auto' ? (percent === 100 ? 'success' : 'info') : status;
|
|
29
|
-
</script>
|
|
30
|
-
|
|
31
|
-
<!--
|
|
32
|
-
@component
|
|
33
|
-
An indicator of a value between 0 and a maximum value.ß
|
|
34
|
-
Does not use the HTML progress element.
|
|
35
|
-
-->
|
|
36
|
-
<!-- svelte-ignore a11y-label-has-associated-control -->
|
|
37
|
-
<!-- svelte-ignore a11y-no-noninteractive-element-interactions -->
|
|
38
|
-
<div
|
|
39
|
-
class={`sterling-progress ${variant}`}
|
|
40
|
-
class:disabled
|
|
41
|
-
class:vertical
|
|
42
|
-
class:info={indicatorColor === 'info'}
|
|
43
|
-
class:success={indicatorColor === 'success'}
|
|
44
|
-
class:warning={indicatorColor === 'warning'}
|
|
45
|
-
class:error={indicatorColor === 'danger'}
|
|
46
|
-
role="progressbar"
|
|
47
|
-
on:blur
|
|
48
|
-
on:click
|
|
49
|
-
on:dblclick
|
|
50
|
-
on:dragend
|
|
51
|
-
on:dragenter
|
|
52
|
-
on:dragleave
|
|
53
|
-
on:dragover
|
|
54
|
-
on:dragstart
|
|
55
|
-
on:drop
|
|
56
|
-
on:focus
|
|
57
|
-
on:focusin
|
|
58
|
-
on:focusout
|
|
59
|
-
on:keydown
|
|
60
|
-
on:keypress
|
|
61
|
-
on:keyup
|
|
62
|
-
on:mousedown
|
|
63
|
-
on:mouseenter
|
|
64
|
-
on:mouseleave
|
|
65
|
-
on:mousemove
|
|
66
|
-
on:mouseover
|
|
67
|
-
on:mouseout
|
|
68
|
-
on:mouseup
|
|
69
|
-
on:pointercancel
|
|
70
|
-
on:pointerdown
|
|
71
|
-
on:pointerenter
|
|
72
|
-
on:pointerleave
|
|
73
|
-
on:pointermove
|
|
74
|
-
on:pointerover
|
|
75
|
-
on:pointerout
|
|
76
|
-
on:pointerup
|
|
77
|
-
on:wheel|passive
|
|
78
|
-
{...$$restProps}
|
|
79
|
-
>
|
|
80
|
-
<div class="container" bind:clientWidth bind:clientHeight>
|
|
81
|
-
<div class="indicator" style={indicatorStyle} />
|
|
82
|
-
</div>
|
|
83
|
-
</div>
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import { SvelteComponent } from "svelte";
|
|
2
|
-
declare const __propDef: {
|
|
3
|
-
props: {
|
|
4
|
-
[x: string]: any;
|
|
5
|
-
disabled?: boolean | undefined;
|
|
6
|
-
max?: number | undefined;
|
|
7
|
-
percent?: number | undefined;
|
|
8
|
-
status?: string | undefined;
|
|
9
|
-
value?: number | undefined;
|
|
10
|
-
variant?: string | undefined;
|
|
11
|
-
vertical?: boolean | undefined;
|
|
12
|
-
};
|
|
13
|
-
events: {
|
|
14
|
-
blur: FocusEvent;
|
|
15
|
-
click: MouseEvent;
|
|
16
|
-
dblclick: MouseEvent;
|
|
17
|
-
dragend: DragEvent;
|
|
18
|
-
dragenter: DragEvent;
|
|
19
|
-
dragleave: DragEvent;
|
|
20
|
-
dragover: DragEvent;
|
|
21
|
-
dragstart: DragEvent;
|
|
22
|
-
drop: DragEvent;
|
|
23
|
-
focus: FocusEvent;
|
|
24
|
-
focusin: FocusEvent;
|
|
25
|
-
focusout: FocusEvent;
|
|
26
|
-
keydown: KeyboardEvent;
|
|
27
|
-
keypress: KeyboardEvent;
|
|
28
|
-
keyup: KeyboardEvent;
|
|
29
|
-
mousedown: MouseEvent;
|
|
30
|
-
mouseenter: MouseEvent;
|
|
31
|
-
mouseleave: MouseEvent;
|
|
32
|
-
mousemove: MouseEvent;
|
|
33
|
-
mouseover: MouseEvent;
|
|
34
|
-
mouseout: MouseEvent;
|
|
35
|
-
mouseup: MouseEvent;
|
|
36
|
-
pointercancel: PointerEvent;
|
|
37
|
-
pointerdown: PointerEvent;
|
|
38
|
-
pointerenter: PointerEvent;
|
|
39
|
-
pointerleave: PointerEvent;
|
|
40
|
-
pointermove: PointerEvent;
|
|
41
|
-
pointerover: PointerEvent;
|
|
42
|
-
pointerout: PointerEvent;
|
|
43
|
-
pointerup: PointerEvent;
|
|
44
|
-
wheel: WheelEvent;
|
|
45
|
-
} & {
|
|
46
|
-
[evt: string]: CustomEvent<any>;
|
|
47
|
-
};
|
|
48
|
-
slots: {};
|
|
49
|
-
exports?: undefined;
|
|
50
|
-
bindings?: undefined;
|
|
51
|
-
};
|
|
52
|
-
export type ProgressProps = typeof __propDef.props;
|
|
53
|
-
export type ProgressEvents = typeof __propDef.events;
|
|
54
|
-
export type ProgressSlots = typeof __propDef.slots;
|
|
55
|
-
/**
|
|
56
|
-
* An indicator of a value between 0 and a maximum value.ß
|
|
57
|
-
* Does not use the HTML progress element.
|
|
58
|
-
*/
|
|
59
|
-
export default class Progress extends SvelteComponent<ProgressProps, ProgressEvents, ProgressSlots> {
|
|
60
|
-
}
|
|
61
|
-
export {};
|
package/dist/Progress.types.d.ts
DELETED
package/dist/Radio.svelte
DELETED
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
<script>import { idGenerator } from './idGenerator';
|
|
2
|
-
import { usingKeyboard } from './mediaQueries/usingKeyboard';
|
|
3
|
-
// ----- Props ----- //
|
|
4
|
-
export let checked = false;
|
|
5
|
-
export let disabled = false;
|
|
6
|
-
// bind:group doesn't seem to work properly (yet) in a nested radio.
|
|
7
|
-
// The workaround is to export `checked` and `group` properties
|
|
8
|
-
// and implement the same behavior.
|
|
9
|
-
export let group = undefined;
|
|
10
|
-
export let id = undefined;
|
|
11
|
-
/** Additional class names to apply. */
|
|
12
|
-
export let variant = '';
|
|
13
|
-
// ensure initial state is consistent
|
|
14
|
-
if (checked && $$restProps.value !== group) {
|
|
15
|
-
group = $$restProps.value;
|
|
16
|
-
}
|
|
17
|
-
else if (!checked && $$restProps.value === group) {
|
|
18
|
-
checked = true;
|
|
19
|
-
}
|
|
20
|
-
// ----- State ----- //
|
|
21
|
-
let inputRef;
|
|
22
|
-
let previousChecked = checked;
|
|
23
|
-
let previousGroup = group;
|
|
24
|
-
const reconcile = () => {
|
|
25
|
-
if (checked !== previousChecked) {
|
|
26
|
-
// when checked, set group to value
|
|
27
|
-
if (checked && $$restProps.value) {
|
|
28
|
-
group = $$restProps.value;
|
|
29
|
-
previousGroup = $$restProps.value;
|
|
30
|
-
}
|
|
31
|
-
previousChecked = checked;
|
|
32
|
-
}
|
|
33
|
-
else if (group !== previousGroup) {
|
|
34
|
-
// when group changes, update checked
|
|
35
|
-
if ($$restProps.value) {
|
|
36
|
-
checked = $$restProps.value === group;
|
|
37
|
-
previousChecked = checked;
|
|
38
|
-
}
|
|
39
|
-
previousGroup = group;
|
|
40
|
-
}
|
|
41
|
-
};
|
|
42
|
-
$: checked, group, $$restProps.value, reconcile();
|
|
43
|
-
$: {
|
|
44
|
-
if (inputRef && checked && !inputRef.checked) {
|
|
45
|
-
// setting checked doesn't cause raise on:change,
|
|
46
|
-
// so we click the radio to cause it to be checked.
|
|
47
|
-
inputRef.click();
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
$: {
|
|
51
|
-
if ($$slots.default && id === undefined) {
|
|
52
|
-
id = idGenerator.nextId('Radio');
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
// ----- Methods ----- //
|
|
56
|
-
export const blur = () => {
|
|
57
|
-
inputRef?.blur();
|
|
58
|
-
};
|
|
59
|
-
export const click = () => {
|
|
60
|
-
inputRef?.click();
|
|
61
|
-
};
|
|
62
|
-
export const focus = (options) => {
|
|
63
|
-
inputRef?.focus(options);
|
|
64
|
-
};
|
|
65
|
-
// ----- Event Handlers ----- //
|
|
66
|
-
const onChange = (e) => {
|
|
67
|
-
if (e.currentTarget.checked) {
|
|
68
|
-
group = $$restProps.value;
|
|
69
|
-
}
|
|
70
|
-
};
|
|
71
|
-
</script>
|
|
72
|
-
|
|
73
|
-
<!--
|
|
74
|
-
@component
|
|
75
|
-
A styled HTML input type=radio element with optional label.
|
|
76
|
-
-->
|
|
77
|
-
<div
|
|
78
|
-
class={`sterling-radio ${variant}`}
|
|
79
|
-
class:checked
|
|
80
|
-
class:disabled
|
|
81
|
-
class:using-keyboard={$usingKeyboard}
|
|
82
|
-
>
|
|
83
|
-
<div class="container">
|
|
84
|
-
<input
|
|
85
|
-
bind:this={inputRef}
|
|
86
|
-
{checked}
|
|
87
|
-
{disabled}
|
|
88
|
-
name={group}
|
|
89
|
-
{id}
|
|
90
|
-
type="radio"
|
|
91
|
-
on:blur
|
|
92
|
-
on:click
|
|
93
|
-
on:change
|
|
94
|
-
on:change={onChange}
|
|
95
|
-
on:dblclick
|
|
96
|
-
on:dragend
|
|
97
|
-
on:dragenter
|
|
98
|
-
on:dragleave
|
|
99
|
-
on:dragover
|
|
100
|
-
on:dragstart
|
|
101
|
-
on:drop
|
|
102
|
-
on:focus
|
|
103
|
-
on:focusin
|
|
104
|
-
on:focusout
|
|
105
|
-
on:keydown
|
|
106
|
-
on:keypress
|
|
107
|
-
on:keyup
|
|
108
|
-
on:input
|
|
109
|
-
on:mousedown
|
|
110
|
-
on:mouseenter
|
|
111
|
-
on:mouseleave
|
|
112
|
-
on:mousemove
|
|
113
|
-
on:mouseover
|
|
114
|
-
on:mouseout
|
|
115
|
-
on:mouseup
|
|
116
|
-
on:wheel|passive
|
|
117
|
-
{...$$restProps}
|
|
118
|
-
/>
|
|
119
|
-
<div class="indicator" />
|
|
120
|
-
</div>
|
|
121
|
-
{#if $$slots.default}
|
|
122
|
-
<label for={id}>
|
|
123
|
-
<slot {checked} {disabled} {group} inputId={id} value={$$restProps.value} {variant} />
|
|
124
|
-
</label>
|
|
125
|
-
{/if}
|
|
126
|
-
</div>
|
package/dist/Radio.svelte.d.ts
DELETED
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import { SvelteComponent } from "svelte";
|
|
2
|
-
declare const __propDef: {
|
|
3
|
-
props: {
|
|
4
|
-
[x: string]: any;
|
|
5
|
-
checked?: boolean | undefined;
|
|
6
|
-
disabled?: boolean | undefined;
|
|
7
|
-
group?: any | undefined | null;
|
|
8
|
-
id?: string | undefined;
|
|
9
|
-
variant?: string | undefined;
|
|
10
|
-
blur?: (() => void) | undefined;
|
|
11
|
-
click?: (() => void) | undefined;
|
|
12
|
-
focus?: ((options?: FocusOptions) => void) | undefined;
|
|
13
|
-
};
|
|
14
|
-
events: {
|
|
15
|
-
blur: FocusEvent;
|
|
16
|
-
click: MouseEvent;
|
|
17
|
-
change: Event;
|
|
18
|
-
dblclick: MouseEvent;
|
|
19
|
-
dragend: DragEvent;
|
|
20
|
-
dragenter: DragEvent;
|
|
21
|
-
dragleave: DragEvent;
|
|
22
|
-
dragover: DragEvent;
|
|
23
|
-
dragstart: DragEvent;
|
|
24
|
-
drop: DragEvent;
|
|
25
|
-
focus: FocusEvent;
|
|
26
|
-
focusin: FocusEvent;
|
|
27
|
-
focusout: FocusEvent;
|
|
28
|
-
keydown: KeyboardEvent;
|
|
29
|
-
keypress: KeyboardEvent;
|
|
30
|
-
keyup: KeyboardEvent;
|
|
31
|
-
input: Event;
|
|
32
|
-
mousedown: MouseEvent;
|
|
33
|
-
mouseenter: MouseEvent;
|
|
34
|
-
mouseleave: MouseEvent;
|
|
35
|
-
mousemove: MouseEvent;
|
|
36
|
-
mouseover: MouseEvent;
|
|
37
|
-
mouseout: MouseEvent;
|
|
38
|
-
mouseup: MouseEvent;
|
|
39
|
-
wheel: WheelEvent;
|
|
40
|
-
} & {
|
|
41
|
-
[evt: string]: CustomEvent<any>;
|
|
42
|
-
};
|
|
43
|
-
slots: {
|
|
44
|
-
default: {
|
|
45
|
-
checked: boolean;
|
|
46
|
-
disabled: boolean;
|
|
47
|
-
group: any;
|
|
48
|
-
inputId: string | undefined;
|
|
49
|
-
value: any;
|
|
50
|
-
variant: string;
|
|
51
|
-
};
|
|
52
|
-
};
|
|
53
|
-
exports?: undefined;
|
|
54
|
-
bindings?: undefined;
|
|
55
|
-
};
|
|
56
|
-
export type RadioProps = typeof __propDef.props;
|
|
57
|
-
export type RadioEvents = typeof __propDef.events;
|
|
58
|
-
export type RadioSlots = typeof __propDef.slots;
|
|
59
|
-
/** A styled HTML input type=radio element with optional label. */
|
|
60
|
-
export default class Radio extends SvelteComponent<RadioProps, RadioEvents, RadioSlots> {
|
|
61
|
-
get blur(): () => void;
|
|
62
|
-
get click(): () => void;
|
|
63
|
-
get focus(): (options?: FocusOptions | undefined) => void;
|
|
64
|
-
}
|
|
65
|
-
export {};
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
<script>import { createEventDispatcher } from 'svelte';
|
|
2
|
-
import Input from './Input.svelte';
|
|
3
|
-
import Slider from './Slider.svelte';
|
|
4
|
-
import { round } from 'lodash-es';
|
|
5
|
-
// ----- Props ----- //
|
|
6
|
-
/** The red value. */
|
|
7
|
-
export let red = 0;
|
|
8
|
-
/** The green value. */
|
|
9
|
-
export let green = 0;
|
|
10
|
-
/** The blue value. */
|
|
11
|
-
export let blue = 0;
|
|
12
|
-
/** The alpha value. */
|
|
13
|
-
export let alpha = 1;
|
|
14
|
-
/** Additional class names to apply. */
|
|
15
|
-
export let variant = '';
|
|
16
|
-
// ----- State ----- //
|
|
17
|
-
let redText = red.toString();
|
|
18
|
-
let greenText = green.toString();
|
|
19
|
-
let blueText = blue.toString();
|
|
20
|
-
let alphaText = alpha.toString();
|
|
21
|
-
$: {
|
|
22
|
-
redText = red.toString();
|
|
23
|
-
}
|
|
24
|
-
$: {
|
|
25
|
-
greenText = green.toString();
|
|
26
|
-
}
|
|
27
|
-
$: {
|
|
28
|
-
blueText = blue.toString();
|
|
29
|
-
}
|
|
30
|
-
$: {
|
|
31
|
-
alphaText = alpha.toString();
|
|
32
|
-
}
|
|
33
|
-
// ----- Events ----- //
|
|
34
|
-
const dispatcher = createEventDispatcher();
|
|
35
|
-
const raiseChange = () => {
|
|
36
|
-
dispatcher('change', { red, green, blue, alpha });
|
|
37
|
-
};
|
|
38
|
-
$: red, green, blue, alpha, raiseChange();
|
|
39
|
-
// ----- Event Handlers ----- //
|
|
40
|
-
const parseRgbValue = (text, defaultValue = 0) => {
|
|
41
|
-
if (!text) {
|
|
42
|
-
return defaultValue;
|
|
43
|
-
}
|
|
44
|
-
const newValue = text ? Number.parseFloat(text) : defaultValue;
|
|
45
|
-
if (newValue && newValue !== Number.NaN) {
|
|
46
|
-
return Math.round(Math.max(0, Math.min(255, newValue)));
|
|
47
|
-
}
|
|
48
|
-
return defaultValue;
|
|
49
|
-
};
|
|
50
|
-
const onRedInputChange = (event) => {
|
|
51
|
-
const inputChangeEvent = event;
|
|
52
|
-
red = parseRgbValue(inputChangeEvent?.currentTarget?.value, red);
|
|
53
|
-
};
|
|
54
|
-
const onGreenInputChange = (event) => {
|
|
55
|
-
const inputChangeEvent = event;
|
|
56
|
-
green = parseRgbValue(inputChangeEvent?.currentTarget?.value, green);
|
|
57
|
-
};
|
|
58
|
-
const onBlueInputChange = (event) => {
|
|
59
|
-
const inputChangeEvent = event;
|
|
60
|
-
blue = parseRgbValue(inputChangeEvent?.currentTarget?.value, blue);
|
|
61
|
-
};
|
|
62
|
-
const onAlphaInputchange = (event) => {
|
|
63
|
-
const inputChangeEvent = event;
|
|
64
|
-
const text = inputChangeEvent?.currentTarget?.value;
|
|
65
|
-
const newValue = text ? Number.parseFloat(text) : alpha;
|
|
66
|
-
if (newValue && newValue !== Number.NaN) {
|
|
67
|
-
alpha = round(Math.max(0, Math.min(1, newValue)), 2);
|
|
68
|
-
}
|
|
69
|
-
};
|
|
70
|
-
</script>
|
|
71
|
-
|
|
72
|
-
<div class={`sterling-rgb-color-sliders ${variant}`}>
|
|
73
|
-
<div class="slider red-slider">
|
|
74
|
-
<Slider min={0} max={255} precision={0} bind:value={red} {variant} />
|
|
75
|
-
</div>
|
|
76
|
-
<Input bind:value={redText} {variant} on:change={(e) => onRedInputChange(e)} />
|
|
77
|
-
<div class="slider green-slider">
|
|
78
|
-
<Slider min={0} max={255} precision={0} bind:value={green} {variant} />
|
|
79
|
-
</div>
|
|
80
|
-
<Input bind:value={greenText} {variant} on:change={(e) => onGreenInputChange(e)} />
|
|
81
|
-
<div class="slider blue-slider">
|
|
82
|
-
<Slider min={0} max={255} precision={0} bind:value={blue} {variant} />
|
|
83
|
-
</div>
|
|
84
|
-
<Input bind:value={blueText} {variant} on:change={(e) => onBlueInputChange(e)} />
|
|
85
|
-
<div class="alpha" style={`--red:${red};--green:${green};--blue:${blue}`}>
|
|
86
|
-
<div class="alpha-hatch" />
|
|
87
|
-
<div class="alpha-gradient" />
|
|
88
|
-
<div class="slider alpha-slider">
|
|
89
|
-
<Slider min={0} max={1} precision={2} bind:value={alpha} {variant} />
|
|
90
|
-
</div>
|
|
91
|
-
</div>
|
|
92
|
-
<Input bind:value={alphaText} {variant} on:change={(e) => onAlphaInputchange(e)} />
|
|
93
|
-
</div>
|