@geoffcox/sterling-svelte 1.0.12 → 2.0.1

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 (219) hide show
  1. package/dist/Button.svelte +8 -46
  2. package/dist/Button.svelte.d.ts +9 -65
  3. package/dist/Callout.svelte +47 -72
  4. package/dist/Callout.svelte.d.ts +14 -55
  5. package/dist/Callout.types.d.ts +11 -0
  6. package/dist/Checkbox.svelte +12 -48
  7. package/dist/Checkbox.svelte.d.ts +9 -62
  8. package/dist/Dialog.svelte +30 -38
  9. package/dist/Dialog.svelte.d.ts +13 -36
  10. package/dist/Dropdown.svelte +39 -71
  11. package/dist/Dropdown.svelte.d.ts +17 -76
  12. package/dist/Input.svelte +16 -50
  13. package/dist/Input.svelte.d.ts +12 -74
  14. package/dist/Label.svelte +55 -161
  15. package/dist/Label.svelte.d.ts +16 -81
  16. package/dist/Link.svelte +9 -41
  17. package/dist/Link.svelte.d.ts +11 -64
  18. package/dist/List.svelte +35 -85
  19. package/dist/List.svelte.d.ts +19 -74
  20. package/dist/List.types.d.ts +3 -11
  21. package/dist/ListItem.svelte +27 -56
  22. package/dist/ListItem.svelte.d.ts +12 -66
  23. package/dist/Menu.svelte +18 -45
  24. package/dist/Menu.svelte.d.ts +13 -63
  25. package/dist/MenuBar.svelte +36 -78
  26. package/dist/MenuBar.svelte.d.ts +12 -57
  27. package/dist/MenuButton.svelte +56 -85
  28. package/dist/MenuButton.svelte.d.ts +19 -70
  29. package/dist/MenuItem.svelte +107 -151
  30. package/dist/MenuItem.svelte.d.ts +21 -82
  31. package/dist/MenuItem.types.d.ts +1 -9
  32. package/dist/MenuSeparator.svelte +9 -7
  33. package/dist/MenuSeparator.svelte.d.ts +6 -20
  34. package/dist/Popover.svelte +45 -64
  35. package/dist/Popover.svelte.d.ts +14 -58
  36. package/dist/Progress.constants.d.ts +1 -1
  37. package/dist/Progress.constants.js +1 -1
  38. package/dist/Progress.svelte +24 -71
  39. package/dist/Progress.svelte.d.ts +11 -60
  40. package/dist/Progress.types.d.ts +3 -3
  41. package/dist/Radio.svelte +19 -92
  42. package/dist/Radio.svelte.d.ts +11 -63
  43. package/dist/Select.svelte +55 -94
  44. package/dist/Select.svelte.d.ts +19 -82
  45. package/dist/Slider.svelte +41 -98
  46. package/dist/Slider.svelte.d.ts +18 -65
  47. package/dist/Switch.svelte +29 -78
  48. package/dist/Switch.svelte.d.ts +20 -73
  49. package/dist/Tab.svelte +23 -66
  50. package/dist/Tab.svelte.d.ts +11 -70
  51. package/dist/TabList.svelte +50 -76
  52. package/dist/TabList.svelte.d.ts +17 -69
  53. package/dist/TabList.types.d.ts +3 -11
  54. package/dist/TextArea.svelte +17 -59
  55. package/dist/TextArea.svelte.d.ts +18 -68
  56. package/dist/Tooltip.svelte +23 -66
  57. package/dist/Tooltip.svelte.d.ts +9 -69
  58. package/dist/Tree.svelte +32 -83
  59. package/dist/Tree.svelte.d.ts +14 -66
  60. package/dist/Tree.types.d.ts +3 -11
  61. package/dist/TreeChevron.svelte +10 -49
  62. package/dist/TreeChevron.svelte.d.ts +8 -52
  63. package/dist/TreeItem.svelte +105 -159
  64. package/dist/TreeItem.svelte.d.ts +21 -100
  65. package/dist/TreeItem.types.d.ts +2 -12
  66. package/dist/actions/clickOutside.d.ts +1 -0
  67. package/dist/actions/clickOutside.js +1 -0
  68. package/dist/actions/extraClass.d.ts +8 -0
  69. package/dist/actions/extraClass.js +14 -0
  70. package/dist/index.d.ts +4 -12
  71. package/dist/index.js +3 -9
  72. package/package.json +20 -22
  73. package/dist/Button.constants.d.ts +0 -2
  74. package/dist/Button.constants.js +0 -2
  75. package/dist/Button.types.d.ts +0 -6
  76. package/dist/ColorPicker.constants.d.ts +0 -1
  77. package/dist/ColorPicker.constants.js +0 -1
  78. package/dist/ColorPicker.svelte +0 -287
  79. package/dist/ColorPicker.svelte.d.ts +0 -52
  80. package/dist/ColorPicker.types.d.ts +0 -4
  81. package/dist/ColorPicker.types.js +0 -1
  82. package/dist/HexColorSliders.svelte +0 -103
  83. package/dist/HexColorSliders.svelte.d.ts +0 -51
  84. package/dist/HslColorSliders.svelte +0 -128
  85. package/dist/HslColorSliders.svelte.d.ts +0 -51
  86. package/dist/Label.types.d.ts +0 -6
  87. package/dist/Label.types.js +0 -1
  88. package/dist/MenuItemDisplay.svelte +0 -32
  89. package/dist/MenuItemDisplay.svelte.d.ts +0 -39
  90. package/dist/RgbColorSliders.svelte +0 -93
  91. package/dist/RgbColorSliders.svelte.d.ts +0 -24
  92. package/dist/TreeItemDisplay.svelte +0 -74
  93. package/dist/TreeItemDisplay.svelte.d.ts +0 -73
  94. package/dist/css/Button.base.css +0 -54
  95. package/dist/css/Button.colorful.css +0 -17
  96. package/dist/css/Button.css +0 -8
  97. package/dist/css/Button.disabled.css +0 -22
  98. package/dist/css/Button.secondary.colorful.css +0 -15
  99. package/dist/css/Button.secondary.css +0 -11
  100. package/dist/css/Button.shapes.css +0 -14
  101. package/dist/css/Button.tool.colorful.css +0 -13
  102. package/dist/css/Button.tool.css +0 -18
  103. package/dist/css/Callout.base.css +0 -55
  104. package/dist/css/Callout.colorful.css +0 -5
  105. package/dist/css/Callout.css +0 -2
  106. package/dist/css/Checkbox.base.css +0 -121
  107. package/dist/css/Checkbox.colorful.css +0 -17
  108. package/dist/css/Checkbox.css +0 -3
  109. package/dist/css/Checkbox.disabled.css +0 -28
  110. package/dist/css/ColorPicker.base.css +0 -23
  111. package/dist/css/ColorPicker.css +0 -1
  112. package/dist/css/Dialog.base.css +0 -114
  113. package/dist/css/Dialog.css +0 -1
  114. package/dist/css/Dropdown.base.css +0 -105
  115. package/dist/css/Dropdown.colorful.css +0 -23
  116. package/dist/css/Dropdown.composed.css +0 -11
  117. package/dist/css/Dropdown.css +0 -4
  118. package/dist/css/Dropdown.disabled.css +0 -32
  119. package/dist/css/HexColorSliders.base.css +0 -87
  120. package/dist/css/HexColorSliders.css +0 -1
  121. package/dist/css/HslColorSliders.base.css +0 -105
  122. package/dist/css/HslColorSliders.css +0 -1
  123. package/dist/css/Input.base.css +0 -72
  124. package/dist/css/Input.colorful.css +0 -22
  125. package/dist/css/Input.composed.css +0 -12
  126. package/dist/css/Input.css +0 -4
  127. package/dist/css/Input.disabled.css +0 -24
  128. package/dist/css/Label.base.css +0 -114
  129. package/dist/css/Label.boxed.colorful.css +0 -21
  130. package/dist/css/Label.boxed.css +0 -31
  131. package/dist/css/Label.colorful.css +0 -3
  132. package/dist/css/Label.css +0 -5
  133. package/dist/css/Label.disabled.css +0 -9
  134. package/dist/css/Link.base.css +0 -43
  135. package/dist/css/Link.colorful.css +0 -15
  136. package/dist/css/Link.css +0 -11
  137. package/dist/css/Link.disabled.css +0 -10
  138. package/dist/css/Link.ghost.colorful.css +0 -7
  139. package/dist/css/Link.ghost.css +0 -11
  140. package/dist/css/Link.text-underline.css +0 -8
  141. package/dist/css/Link.text-underline.ghost.css +0 -13
  142. package/dist/css/Link.undecorated.colorful.css +0 -8
  143. package/dist/css/Link.undecorated.css +0 -8
  144. package/dist/css/Link.undecorated.ghost.css +0 -8
  145. package/dist/css/Link.undecorated.underline.css +0 -8
  146. package/dist/css/List.base.css +0 -84
  147. package/dist/css/List.composed.css +0 -8
  148. package/dist/css/List.css +0 -3
  149. package/dist/css/List.disabled.css +0 -7
  150. package/dist/css/ListItem.base.css +0 -33
  151. package/dist/css/ListItem.css +0 -2
  152. package/dist/css/ListItem.disabled.css +0 -28
  153. package/dist/css/Menu.base.css +0 -21
  154. package/dist/css/Menu.css +0 -1
  155. package/dist/css/MenuBar.base.css +0 -9
  156. package/dist/css/MenuBar.css +0 -1
  157. package/dist/css/MenuButton.base.css +0 -13
  158. package/dist/css/MenuButton.css +0 -1
  159. package/dist/css/MenuItem.base.css +0 -48
  160. package/dist/css/MenuItem.css +0 -1
  161. package/dist/css/MenuItemDisplay.base.css +0 -79
  162. package/dist/css/MenuItemDisplay.css +0 -2
  163. package/dist/css/MenuItemDisplay.disabled.css +0 -28
  164. package/dist/css/MenuSeparator.base.css +0 -5
  165. package/dist/css/MenuSeparator.css +0 -1
  166. package/dist/css/Popover.css +0 -21
  167. package/dist/css/Progress.base.css +0 -85
  168. package/dist/css/Progress.css +0 -2
  169. package/dist/css/Progress.disabled.css +0 -17
  170. package/dist/css/Radio.base.css +0 -109
  171. package/dist/css/Radio.colorful.css +0 -18
  172. package/dist/css/Radio.css +0 -3
  173. package/dist/css/Radio.disabled.css +0 -28
  174. package/dist/css/RgbColorSliders.base.css +0 -94
  175. package/dist/css/RgbColorSliders.css +0 -1
  176. package/dist/css/Select.base.css +0 -101
  177. package/dist/css/Select.colorful.css +0 -24
  178. package/dist/css/Select.composed.css +0 -12
  179. package/dist/css/Select.css +0 -4
  180. package/dist/css/Select.disabled.css +0 -28
  181. package/dist/css/Slider.base.css +0 -152
  182. package/dist/css/Slider.colorful.css +0 -11
  183. package/dist/css/Slider.composed.css +0 -8
  184. package/dist/css/Slider.css +0 -4
  185. package/dist/css/Slider.disabled.css +0 -30
  186. package/dist/css/Switch.base.css +0 -175
  187. package/dist/css/Switch.colorful.css +0 -45
  188. package/dist/css/Switch.css +0 -3
  189. package/dist/css/Switch.disabled.css +0 -30
  190. package/dist/css/Tab.base.css +0 -96
  191. package/dist/css/Tab.colorful.css +0 -13
  192. package/dist/css/Tab.css +0 -3
  193. package/dist/css/Tab.disabled.css +0 -36
  194. package/dist/css/TabList.base.css +0 -34
  195. package/dist/css/TabList.css +0 -1
  196. package/dist/css/TextArea.base.css +0 -62
  197. package/dist/css/TextArea.colorful.css +0 -17
  198. package/dist/css/TextArea.composed.css +0 -8
  199. package/dist/css/TextArea.css +0 -4
  200. package/dist/css/TextArea.disabled.css +0 -28
  201. package/dist/css/Tooltip.base.css +0 -6
  202. package/dist/css/Tooltip.css +0 -1
  203. package/dist/css/Tree.base.css +0 -49
  204. package/dist/css/Tree.composed.css +0 -8
  205. package/dist/css/Tree.css +0 -3
  206. package/dist/css/Tree.disabled.css +0 -27
  207. package/dist/css/TreeChevron.base.css +0 -86
  208. package/dist/css/TreeChevron.css +0 -1
  209. package/dist/css/TreeItem.base.css +0 -3
  210. package/dist/css/TreeItem.css +0 -1
  211. package/dist/css/TreeItemDisplay.base.css +0 -48
  212. package/dist/css/TreeItemDisplay.colorful.css +0 -9
  213. package/dist/css/TreeItemDisplay.css +0 -3
  214. package/dist/css/TreeItemDisplay.disabled.css +0 -28
  215. package/dist/css/dark-mode.css +0 -134
  216. package/dist/css/light-mode.css +0 -134
  217. package/dist/css/sterling.css +0 -37
  218. package/dist/package.json +0 -108
  219. /package/dist/{Button.types.js → Callout.types.js} +0 -0
@@ -1,58 +1,13 @@
1
- import { SvelteComponent } from "svelte";
2
- declare const __propDef: {
3
- props: {
4
- [x: string]: any;
5
- variant?: string | undefined;
6
- blur?: (() => void) | undefined;
7
- focus?: ((options?: FocusOptions) => void) | undefined;
8
- };
9
- events: {
10
- blur: FocusEvent;
11
- click: MouseEvent;
12
- copy: ClipboardEvent;
13
- cut: ClipboardEvent;
14
- dblclick: MouseEvent;
15
- dragend: DragEvent;
16
- dragenter: DragEvent;
17
- dragleave: DragEvent;
18
- dragover: DragEvent;
19
- dragstart: DragEvent;
20
- drop: DragEvent;
21
- focus: FocusEvent;
22
- focusin: FocusEvent;
23
- focusout: FocusEvent;
24
- keydown: KeyboardEvent;
25
- keypress: KeyboardEvent;
26
- keyup: KeyboardEvent;
27
- mousedown: MouseEvent;
28
- mouseenter: MouseEvent;
29
- mouseleave: MouseEvent;
30
- mousemove: MouseEvent;
31
- mouseover: MouseEvent;
32
- mouseout: MouseEvent;
33
- mouseup: MouseEvent;
34
- scroll: Event;
35
- wheel: WheelEvent;
36
- paste: ClipboardEvent;
37
- close: CustomEvent<any>;
38
- open: CustomEvent<any>;
39
- select: CustomEvent<any>;
40
- } & {
41
- [evt: string]: CustomEvent<any>;
42
- };
43
- slots: {
44
- default: {
45
- variant: string;
46
- };
47
- };
48
- exports?: undefined;
49
- bindings?: undefined;
1
+ /// <reference types="svelte" />
2
+ import type { HTMLAttributes } from 'svelte/elements';
3
+ type Props = HTMLAttributes<HTMLDivElement> & {
4
+ onClose?: (value: string) => void;
5
+ onOpen?: (value: string) => void;
6
+ onSelect?: (value: string) => void;
50
7
  };
51
- export type MenuBarProps = typeof __propDef.props;
52
- export type MenuBarEvents = typeof __propDef.events;
53
- export type MenuBarSlots = typeof __propDef.slots;
54
- export default class MenuBar extends SvelteComponent<MenuBarProps, MenuBarEvents, MenuBarSlots> {
55
- get blur(): () => void;
56
- get focus(): (options?: FocusOptions | undefined) => void;
57
- }
58
- export {};
8
+ declare const MenuBar: import("svelte").Component<Props, {
9
+ blur: () => void;
10
+ focus: (options?: FocusOptions) => void;
11
+ }, "">;
12
+ type MenuBar = ReturnType<typeof MenuBar>;
13
+ export default MenuBar;
@@ -1,41 +1,20 @@
1
- <script>import { createEventDispatcher, setContext, tick } from 'svelte';
2
- import { writable } from 'svelte/store';
1
+ <svelte:options runes={true} />
2
+
3
+ <script lang="ts">import { setContext, tick } from 'svelte';
3
4
  import Button from './Button.svelte';
4
5
  import Menu from './Menu.svelte';
5
6
  import { MENU_ITEM_CONTEXT_KEY } from './MenuItem.constants';
6
7
  import { idGenerator } from './idGenerator';
7
8
  import Popover from './Popover.svelte';
8
9
  import { clickOutside } from './actions/clickOutside';
9
- // ----- Props ----- //
10
- export let open = false;
11
- export let menuVariant = '';
12
- export let popoverPlacement = 'bottom-start';
13
- export let value;
14
- export let variant = '';
15
- // ----- State ----- //
10
+ let { children, class: _class, items, menuClass, open = $bindable(false), onClose, onOpen, onSelect, popoverPlacement = 'bottom-start', value, ...rest } = $props();
16
11
  const instanceId = idGenerator.nextId('MenuButton');
17
12
  let buttonRef;
18
- let reference;
13
+ let openValues = $state([]);
19
14
  let menuRef;
20
- let prevOpen = open;
21
- $: menuId = `${value}-menu-${instanceId}`;
22
- $: hasChildren = $$slots.items;
23
- const openValues = writable([]);
24
- $: {
25
- open = $openValues.length > 0;
26
- }
27
- // ----- Events ----- //
28
- const dispatch = createEventDispatcher();
29
- const raiseClose = (value) => {
30
- dispatch('close', { value });
31
- };
32
- const raiseOpen = (value) => {
33
- dispatch('open', { value });
34
- };
35
- const raiseSelect = (value) => {
36
- dispatch('select', { value });
37
- };
38
- // ----- Methods ----- //
15
+ let menuId = $derived(`${value}-menu-${instanceId}`);
16
+ let prevOpen = $state(open);
17
+ let reference = $state();
39
18
  export const click = () => {
40
19
  buttonRef?.click();
41
20
  };
@@ -45,30 +24,44 @@ export const blur = () => {
45
24
  export const focus = (options) => {
46
25
  buttonRef?.focus(options);
47
26
  };
48
- // ----- Event Handlers ----- //
27
+ // update open based on openValues
28
+ $effect(() => {
29
+ open = openValues.length > 0;
30
+ });
31
+ // update openValues based on open
32
+ $effect(() => {
33
+ if (open) {
34
+ openValues = openValues.length > 0 ? openValues : ['menu-button'];
35
+ }
36
+ else {
37
+ openValues = openValues.length === 0 ? openValues : [];
38
+ }
39
+ });
40
+ // focus when closing
41
+ $effect(() => {
42
+ if (!open && open !== prevOpen) {
43
+ focus();
44
+ }
45
+ prevOpen = open;
46
+ });
49
47
  const onClick = async () => {
50
48
  if (!open) {
51
- openValues.set(['menu-button']);
49
+ openValues = ['menu-button'];
50
+ open = true;
52
51
  await tick();
53
52
  menuRef?.focusFirstMenuItem();
54
53
  }
55
54
  else {
56
55
  open = false;
57
- openValues.set([]);
56
+ openValues = [];
58
57
  }
59
58
  };
60
- $: {
61
- if (!open && open !== prevOpen) {
62
- focus();
63
- }
64
- prevOpen = open;
65
- }
66
59
  const closeAllMenus = () => {
67
- openValues.set([]);
60
+ openValues = [];
61
+ open = false;
68
62
  };
69
63
  const onClickOutside = (event) => {
70
- const { detail: { mouseEvent } } = event;
71
- let element = mouseEvent.target;
64
+ let element = event.target;
72
65
  while (element) {
73
66
  if (element.getAttribute('data-root-value') === value) {
74
67
  return;
@@ -80,66 +73,44 @@ const onClickOutside = (event) => {
80
73
  // ----- Context ----- //
81
74
  setContext(MENU_ITEM_CONTEXT_KEY, {
82
75
  depth: 1,
83
- openValues,
76
+ get openValues() {
77
+ return openValues;
78
+ },
79
+ set openValues(value) {
80
+ openValues = value;
81
+ },
84
82
  rootValue: value,
85
83
  closeContainingMenu: () => {
86
84
  open = false;
87
85
  },
88
- onOpen: raiseOpen,
89
- onClose: raiseClose,
90
- onSelect: raiseSelect
86
+ onOpen,
87
+ onClose,
88
+ onSelect
91
89
  });
92
90
  </script>
93
91
 
94
92
  <Button
95
93
  bind:this={buttonRef}
96
94
  aria-controls={menuId}
97
- aria-expanded={open}
98
- aria-haspopup={hasChildren}
95
+ aria-expanded={!!open}
96
+ aria-haspopup={!!children}
99
97
  aria-owns={menuId}
98
+ class={['sterling-menu-button', _class].filter(Boolean).join(' ')}
100
99
  data-value={value}
101
100
  data-root-value={value}
102
- variant={`sterling-menu-button ${variant}`}
103
- on:blur
104
- on:click
105
- on:click={onClick}
106
- on:dblclick
107
- on:dragend
108
- on:dragenter
109
- on:dragleave
110
- on:dragover
111
- on:dragstart
112
- on:drop
113
- on:focus
114
- on:focusin
115
- on:focusout
116
- on:keydown
117
- on:keypress
118
- on:keyup
119
- on:mousedown
120
- on:mouseenter
121
- on:mouseleave
122
- on:mousemove
123
- on:mouseover
124
- on:mouseout
125
- on:mouseup
126
- on:pointercancel
127
- on:pointerdown
128
- on:pointerenter
129
- on:pointerleave
130
- on:pointermove
131
- on:pointerover
132
- on:pointerout
133
- on:pointerup
134
- on:wheel
135
- {...$$restProps}
101
+ {...rest}
102
+ onclick={onClick}
136
103
  >
137
- <div class="reference" bind:this={reference} use:clickOutside on:click_outside={onClickOutside}>
138
- <slot {open} {value} {variant} />
104
+ <div
105
+ class="reference"
106
+ bind:this={reference}
107
+ use:clickOutside={{ onclickoutside: onClickOutside }}
108
+ >
109
+ {@render children?.()}
139
110
  </div>
140
111
  <Popover {reference} {open} placement={popoverPlacement}>
141
- <Menu bind:this={menuRef} id={menuId} {reference} {open} variant={menuVariant}>
142
- <slot name="items" />
112
+ <Menu bind:this={menuRef} id={menuId} class={menuClass}>
113
+ {@render items?.()}
143
114
  </Menu>
144
115
  </Popover>
145
116
  </Button>
@@ -1,71 +1,20 @@
1
- import { SvelteComponent } from "svelte";
2
- declare const __propDef: {
3
- props: {
4
- [x: string]: any;
5
- open?: boolean | undefined;
6
- menuVariant?: string | undefined;
7
- popoverPlacement?: string | undefined;
8
- value: string;
9
- variant?: string | undefined;
10
- click?: (() => void) | undefined;
11
- blur?: (() => void) | undefined;
12
- focus?: ((options?: FocusOptions) => void) | undefined;
13
- };
14
- events: {
15
- blur: FocusEvent;
16
- click: MouseEvent;
17
- dblclick: MouseEvent;
18
- dragend: DragEvent;
19
- dragenter: DragEvent;
20
- dragleave: DragEvent;
21
- dragover: DragEvent;
22
- dragstart: DragEvent;
23
- drop: DragEvent;
24
- focus: FocusEvent;
25
- focusin: FocusEvent;
26
- focusout: FocusEvent;
27
- keydown: KeyboardEvent;
28
- keypress: KeyboardEvent;
29
- keyup: KeyboardEvent;
30
- mousedown: MouseEvent;
31
- mouseenter: MouseEvent;
32
- mouseleave: MouseEvent;
33
- mousemove: MouseEvent;
34
- mouseover: MouseEvent;
35
- mouseout: MouseEvent;
36
- mouseup: MouseEvent;
37
- pointercancel: PointerEvent;
38
- pointerdown: PointerEvent;
39
- pointerenter: PointerEvent;
40
- pointerleave: PointerEvent;
41
- pointermove: PointerEvent;
42
- pointerover: PointerEvent;
43
- pointerout: PointerEvent;
44
- pointerup: PointerEvent;
45
- wheel: WheelEvent;
46
- close: CustomEvent<any>;
47
- open: CustomEvent<any>;
48
- select: CustomEvent<any>;
49
- } & {
50
- [evt: string]: CustomEvent<any>;
51
- };
52
- slots: {
53
- default: {
54
- open: boolean;
55
- value: string;
56
- variant: string;
57
- };
58
- items: {};
59
- };
60
- exports?: undefined;
61
- bindings?: undefined;
1
+ import type { HTMLButtonAttributes } from 'svelte/elements';
2
+ import { type Snippet } from 'svelte';
3
+ import type { PopoverPlacement } from './Popover.types';
4
+ type Props = HTMLButtonAttributes & {
5
+ items: Snippet;
6
+ menuClass?: string;
7
+ onOpen?: (value: string) => void;
8
+ onClose?: (value: string) => void;
9
+ onSelect?: (value: string) => void;
10
+ open?: boolean | null | undefined;
11
+ popoverPlacement?: PopoverPlacement;
12
+ value?: string;
62
13
  };
63
- export type MenuButtonProps = typeof __propDef.props;
64
- export type MenuButtonEvents = typeof __propDef.events;
65
- export type MenuButtonSlots = typeof __propDef.slots;
66
- export default class MenuButton extends SvelteComponent<MenuButtonProps, MenuButtonEvents, MenuButtonSlots> {
67
- get click(): () => void;
68
- get blur(): () => void;
69
- get focus(): (options?: FocusOptions | undefined) => void;
70
- }
71
- export {};
14
+ declare const MenuButton: import("svelte").Component<Props, {
15
+ click: () => void;
16
+ blur: () => void;
17
+ focus: (options?: FocusOptions) => void;
18
+ }, "open">;
19
+ type MenuButton = ReturnType<typeof MenuButton>;
20
+ export default MenuButton;