@geoffcox/sterling-svelte 0.0.16 → 0.0.18

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 (119) hide show
  1. package/{buttons/Button.svelte → Button.svelte} +27 -27
  2. package/{inputs/Checkbox.svelte → Checkbox.svelte} +26 -21
  3. package/{inputs/Checkbox.svelte.d.ts → Checkbox.svelte.d.ts} +2 -1
  4. package/{surfaces/Dialog.svelte → Dialog.svelte} +34 -21
  5. package/Field.svelte +257 -0
  6. package/Field.svelte.d.ts +63 -0
  7. package/Field.types.d.ts +1 -0
  8. package/Input.svelte +115 -0
  9. package/{inputs/Input.svelte.d.ts → Input.svelte.d.ts} +8 -3
  10. package/Label.svelte +51 -0
  11. package/Label.svelte.d.ts +41 -0
  12. package/List.constants.d.ts +1 -0
  13. package/List.constants.js +1 -0
  14. package/List.svelte +293 -0
  15. package/List.svelte.d.ts +63 -0
  16. package/List.types.d.ts +6 -0
  17. package/ListItem.svelte +89 -0
  18. package/ListItem.svelte.d.ts +51 -0
  19. package/{containers/Menu.svelte → Menu.svelte} +42 -27
  20. package/{containers/MenuBar.svelte → MenuBar.svelte} +13 -13
  21. package/{buttons/MenuButton.svelte → MenuButton.svelte} +17 -17
  22. package/{buttons/MenuButton.svelte.d.ts → MenuButton.svelte.d.ts} +1 -1
  23. package/{containers/MenuItem.svelte → MenuItem.svelte} +42 -54
  24. package/{containers/MenuItem.svelte.d.ts → MenuItem.svelte.d.ts} +2 -2
  25. package/{containers/MenuSeparator.svelte → MenuSeparator.svelte} +2 -2
  26. package/Menus.types.d.ts +22 -0
  27. package/{containers/Menus.utils.d.ts → Menus.utils.d.ts} +2 -2
  28. package/{containers/Menus.utils.js → Menus.utils.js} +6 -6
  29. package/{display/Progress.svelte → Progress.svelte} +28 -52
  30. package/{display/Progress.svelte.d.ts → Progress.svelte.d.ts} +1 -3
  31. package/Progress.types.d.ts +1 -0
  32. package/{inputs/Radio.svelte → Radio.svelte} +34 -29
  33. package/{inputs/Radio.svelte.d.ts → Radio.svelte.d.ts} +7 -2
  34. package/{inputs/Select.svelte → Select.svelte} +112 -130
  35. package/Select.svelte.d.ts +53 -0
  36. package/{inputs/Slider.svelte → Slider.svelte} +90 -86
  37. package/Slider.svelte.d.ts +51 -0
  38. package/{inputs/Switch.svelte → Switch.svelte} +43 -41
  39. package/Tab.svelte +181 -0
  40. package/{containers/Tab.svelte.d.ts → Tab.svelte.d.ts} +12 -15
  41. package/TabList.svelte +247 -0
  42. package/{containers/TabList.svelte.d.ts → TabList.svelte.d.ts} +21 -21
  43. package/TabList.types.d.ts +7 -0
  44. package/TextArea.svelte +113 -0
  45. package/{inputs/TextArea.svelte.d.ts → TextArea.svelte.d.ts} +3 -6
  46. package/TextArea.types.js +1 -0
  47. package/Tooltip.svelte +182 -0
  48. package/Tooltip.svelte.d.ts +24 -0
  49. package/Tooltip.types.d.ts +3 -0
  50. package/Tooltip.types.js +1 -0
  51. package/Tree.constants.d.ts +2 -0
  52. package/Tree.constants.js +2 -0
  53. package/Tree.svelte +114 -0
  54. package/Tree.svelte.d.ts +24 -0
  55. package/Tree.types.d.ts +28 -0
  56. package/Tree.types.js +1 -0
  57. package/{containers/TreeChevron.svelte → TreeChevron.svelte} +3 -3
  58. package/TreeItem.svelte +276 -0
  59. package/TreeItem.svelte.d.ts +65 -0
  60. package/{containers/TreeItem.svelte → TreeItemDisplay.svelte} +18 -18
  61. package/{containers/TreeItem.svelte.d.ts → TreeItemDisplay.svelte.d.ts} +11 -14
  62. package/{forwardEvents.js → actions/forwardEvents.js} +0 -2
  63. package/index.d.ts +44 -31
  64. package/index.js +40 -25
  65. package/package.json +45 -41
  66. package/theme/darkTheme.js +73 -74
  67. package/theme/lightTheme.js +76 -77
  68. package/containers/List.svelte +0 -249
  69. package/containers/List.svelte.d.ts +0 -68
  70. package/containers/ListItem.svelte +0 -48
  71. package/containers/ListItem.svelte.d.ts +0 -26
  72. package/containers/Menus.types.d.ts +0 -22
  73. package/containers/Tab.svelte +0 -327
  74. package/containers/TabList.svelte +0 -126
  75. package/containers/Tabs.types.d.ts +0 -12
  76. package/containers/Tree.constants.d.ts +0 -2
  77. package/containers/Tree.constants.js +0 -2
  78. package/containers/Tree.svelte +0 -222
  79. package/containers/Tree.svelte.d.ts +0 -50
  80. package/containers/Tree.types.d.ts +0 -47
  81. package/containers/TreeNode.svelte +0 -266
  82. package/containers/TreeNode.svelte.d.ts +0 -43
  83. package/display/Label.svelte +0 -27
  84. package/display/Label.svelte.d.ts +0 -20
  85. package/display/Progress.types.d.ts +0 -1
  86. package/inputs/Input.svelte +0 -129
  87. package/inputs/Select.svelte.d.ts +0 -62
  88. package/inputs/Slider.svelte.d.ts +0 -28
  89. package/inputs/TextArea.svelte +0 -154
  90. package/surfaces/CloseX.svelte +0 -5
  91. package/surfaces/CloseX.svelte.d.ts +0 -23
  92. package/surfaces/Portal.svelte +0 -14
  93. package/surfaces/Portal.svelte.d.ts +0 -21
  94. /package/{buttons/Button.svelte.d.ts → Button.svelte.d.ts} +0 -0
  95. /package/{buttons/Button.types.d.ts → Button.types.d.ts} +0 -0
  96. /package/{buttons/Button.types.js → Button.types.js} +0 -0
  97. /package/{surfaces/Dialog.svelte.d.ts → Dialog.svelte.d.ts} +0 -0
  98. /package/{containers/Menus.types.js → Field.types.js} +0 -0
  99. /package/{containers/Tabs.types.js → List.types.js} +0 -0
  100. /package/{containers/Menu.svelte.d.ts → Menu.svelte.d.ts} +0 -0
  101. /package/{containers/MenuBar.svelte.d.ts → MenuBar.svelte.d.ts} +0 -0
  102. /package/{containers/MenuItemDisplay.svelte → MenuItemDisplay.svelte} +0 -0
  103. /package/{containers/MenuItemDisplay.svelte.d.ts → MenuItemDisplay.svelte.d.ts} +0 -0
  104. /package/{containers/MenuSeparator.svelte.d.ts → MenuSeparator.svelte.d.ts} +0 -0
  105. /package/{containers/Menus.constants.d.ts → Menus.constants.d.ts} +0 -0
  106. /package/{containers/Menus.constants.js → Menus.constants.js} +0 -0
  107. /package/{containers/Tree.types.js → Menus.types.js} +0 -0
  108. /package/{display/Progress.types.js → Progress.types.js} +0 -0
  109. /package/{inputs/Switch.svelte.d.ts → Switch.svelte.d.ts} +0 -0
  110. /package/{containers/Tabs.constants.d.ts → TabList.constants.d.ts} +0 -0
  111. /package/{containers/Tabs.constants.js → TabList.constants.js} +0 -0
  112. /package/{inputs/TextArea.types.js → TabList.types.js} +0 -0
  113. /package/{inputs/TextArea.types.d.ts → TextArea.types.d.ts} +0 -0
  114. /package/{containers/TreeChevron.svelte.d.ts → TreeChevron.svelte.d.ts} +0 -0
  115. /package/{clickOutside.d.ts → actions/clickOutside.d.ts} +0 -0
  116. /package/{clickOutside.js → actions/clickOutside.js} +0 -0
  117. /package/{forwardEvents.d.ts → actions/forwardEvents.d.ts} +0 -0
  118. /package/{portal.d.ts → actions/portal.d.ts} +0 -0
  119. /package/{portal.js → actions/portal.js} +0 -0
@@ -1,48 +0,0 @@
1
- <script>export let disabled = false;
2
- export let selected = false;
3
- export let index = -1;
4
- export let item = void 0;
5
- </script>
6
-
7
- <div
8
- aria-selected={disabled ? undefined : selected}
9
- class="sterling-list-item"
10
- class:disabled
11
- class:selected
12
- >
13
- <slot {disabled} {selected} {index} {item} />
14
- </div>
15
-
16
- <style>
17
- .sterling-list-item {
18
- background-color: transparent;
19
- box-sizing: border-box;
20
- color: var(--Input__color);
21
- margin: 0;
22
- padding: 0.5em;
23
- outline: none;
24
- text-overflow: ellipsis;
25
- transition: background-color 250ms, color 250ms, border-color 250ms;
26
- white-space: nowrap;
27
- }
28
-
29
- .sterling-list-item:hover {
30
- background-color: var(--Button__background-color--hover);
31
- color: var(--Button__color--hover);
32
- }
33
-
34
- .sterling-list-item.selected {
35
- background-color: var(--Input__background-color--selected);
36
- color: var(--Input__color--selected);
37
- }
38
-
39
- .sterling-list-item.disabled {
40
- color: var(--Input__color--disabled);
41
- }
42
-
43
- @media (prefers-reduced-motion) {
44
- .sterling-list-item {
45
- transition: none;
46
- }
47
- }
48
- </style>
@@ -1,26 +0,0 @@
1
- import { SvelteComponentTyped } from "svelte";
2
- declare class __sveltets_Render<T> {
3
- props(): {
4
- disabled?: boolean | undefined;
5
- selected?: boolean | undefined;
6
- index?: number | undefined;
7
- item?: T | undefined;
8
- };
9
- events(): {} & {
10
- [evt: string]: CustomEvent<any>;
11
- };
12
- slots(): {
13
- default: {
14
- disabled: boolean;
15
- selected: boolean;
16
- index: number;
17
- item: T | undefined;
18
- };
19
- };
20
- }
21
- export type ListItemProps<T> = ReturnType<__sveltets_Render<T>['props']>;
22
- export type ListItemEvents<T> = ReturnType<__sveltets_Render<T>['events']>;
23
- export type ListItemSlots<T> = ReturnType<__sveltets_Render<T>['slots']>;
24
- export default class ListItem<T> extends SvelteComponentTyped<ListItemProps<T>, ListItemEvents<T>, ListItemSlots<T>> {
25
- }
26
- export {};
@@ -1,22 +0,0 @@
1
- export type MenuItemRegistration = {
2
- id: string;
3
- open: () => void;
4
- close: () => void;
5
- focus: () => void;
6
- };
7
- export type MenuBarContext = {
8
- openPreviousMenu?: (fromMenuItemId: string) => void;
9
- openNextMenu?: (fromMenuItemId: string) => void;
10
- };
11
- export type MenuItemContext = {
12
- rootMenuItemId?: string;
13
- depth?: number;
14
- register?: (menuItem: MenuItemRegistration) => void;
15
- unregister?: (menuItem: MenuItemRegistration) => void;
16
- focusPrevious?: (fromMenuItemId: string) => void;
17
- focusNext?: (fromMenuItemId: string) => void;
18
- closeMenu?: (recursive?: boolean) => void;
19
- onOpen?: (menuItemId: string) => void;
20
- onClose?: (menuItemId: string) => void;
21
- onSelect?: (menuItemId: string) => void;
22
- };
@@ -1,327 +0,0 @@
1
- <script>import { getContext } from "svelte";
2
- import { tabListContextKey } from "./Tabs.constants";
3
- export let data = void 0;
4
- export let disabled = false;
5
- export let tabId = void 0;
6
- export let text = void 0;
7
- export let selected = false;
8
- let tabRef;
9
- const {
10
- disabled: tabListDisabled,
11
- selectedTabId,
12
- selectionFollowsFocus,
13
- vertical
14
- } = getContext(tabListContextKey);
15
- $:
16
- _tabId = tabId || data?.tabId;
17
- $:
18
- _text = text || data?.text || _tabId;
19
- $:
20
- _disabled = $tabListDisabled || disabled || data?.disabled === true;
21
- $: {
22
- if (!_tabId) {
23
- throw new Error("Both tabId and data.tabId are missing");
24
- }
25
- }
26
- $: {
27
- selected = $selectedTabId === _tabId;
28
- }
29
- $: {
30
- if (selected) {
31
- selectedTabId.set(_tabId);
32
- tabRef?.focus();
33
- }
34
- }
35
- const getFirstActiveTab = () => {
36
- let foundTab = tabRef.parentElement?.firstElementChild;
37
- while (foundTab) {
38
- if (!foundTab.disabled && foundTab.getAttribute("data-tab-id")) {
39
- break;
40
- }
41
- foundTab = foundTab.nextElementSibling;
42
- }
43
- return foundTab;
44
- };
45
- const getLastActiveTab = () => {
46
- let foundTab = tabRef.parentElement?.lastElementChild;
47
- while (foundTab) {
48
- if (!foundTab.disabled && foundTab.getAttribute("data-tab-id")) {
49
- break;
50
- }
51
- foundTab = foundTab.previousElementSibling;
52
- }
53
- return foundTab;
54
- };
55
- const getPreviousActiveTab = () => {
56
- let foundTab = tabRef?.previousElementSibling;
57
- while (foundTab) {
58
- if (!foundTab.disabled && foundTab.getAttribute("data-tab-id")) {
59
- break;
60
- }
61
- foundTab = foundTab.previousElementSibling;
62
- }
63
- return foundTab;
64
- };
65
- const getNextActiveTab = () => {
66
- let foundTab = tabRef?.nextElementSibling;
67
- while (foundTab) {
68
- if (!foundTab.disabled && foundTab.getAttribute("data-tab-id")) {
69
- break;
70
- }
71
- foundTab = foundTab.nextElementSibling;
72
- }
73
- return foundTab;
74
- };
75
- const focusFirstTab = () => {
76
- if (!_disabled) {
77
- let foundTab = getFirstActiveTab();
78
- if (foundTab) {
79
- foundTab.focus();
80
- return true;
81
- }
82
- }
83
- return false;
84
- };
85
- const focusLastTab = () => {
86
- if (!_disabled) {
87
- let foundTab = getLastActiveTab();
88
- if (foundTab) {
89
- foundTab.focus();
90
- return true;
91
- }
92
- }
93
- return false;
94
- };
95
- const focusPreviousTab = () => {
96
- if (!_disabled) {
97
- let foundTab = getPreviousActiveTab();
98
- if (foundTab) {
99
- foundTab.focus();
100
- return true;
101
- }
102
- }
103
- return false;
104
- };
105
- const focusNextTab = () => {
106
- if (!_disabled) {
107
- let foundTab = getNextActiveTab();
108
- if (foundTab) {
109
- foundTab.focus();
110
- return true;
111
- }
112
- }
113
- return false;
114
- };
115
- const onClick = (event) => {
116
- if (!_disabled) {
117
- selectedTabId.set(_tabId);
118
- }
119
- };
120
- const onFocus = (event) => {
121
- if (!_disabled && $selectionFollowsFocus) {
122
- selectedTabId.set(_tabId);
123
- }
124
- };
125
- const onKeydown = (event) => {
126
- if (!_disabled && !event.ctrlKey && !event.shiftKey && !event.altKey && !event.metaKey) {
127
- switch (event.key) {
128
- case "Home":
129
- if (focusFirstTab()) {
130
- event.preventDefault();
131
- return false;
132
- }
133
- break;
134
- case "End":
135
- if (focusLastTab()) {
136
- event.preventDefault();
137
- return false;
138
- }
139
- break;
140
- case "ArrowLeft":
141
- if (!$vertical && focusPreviousTab()) {
142
- event.preventDefault();
143
- return false;
144
- }
145
- break;
146
- case "ArrowRight":
147
- if (!$vertical && focusNextTab()) {
148
- event.preventDefault();
149
- return false;
150
- }
151
- break;
152
- case "ArrowUp":
153
- if ($vertical && focusPreviousTab()) {
154
- event.preventDefault();
155
- return false;
156
- }
157
- break;
158
- case "ArrowDown":
159
- if ($vertical && focusNextTab()) {
160
- event.preventDefault();
161
- return false;
162
- }
163
- break;
164
- default:
165
- break;
166
- }
167
- }
168
- };
169
- </script>
170
-
171
- <button
172
- bind:this={tabRef}
173
- class="sterling-tab"
174
- disabled={_disabled}
175
- class:selected
176
- class:vertical={$vertical}
177
- data-tab-id={_tabId}
178
- role="tab"
179
- tabindex={selected ? 0 : -1}
180
- type="button"
181
- on:blur
182
- on:click
183
- on:dblclick
184
- on:focus
185
- on:focusin
186
- on:focusout
187
- on:keydown
188
- on:keypress
189
- on:keyup
190
- on:mousedown
191
- on:mouseenter
192
- on:mouseleave
193
- on:mousemove
194
- on:mouseover
195
- on:mouseout
196
- on:mouseup
197
- on:pointercancel
198
- on:pointerdown
199
- on:pointerenter
200
- on:pointerleave
201
- on:pointermove
202
- on:pointerover
203
- on:pointerout
204
- on:pointerup
205
- on:wheel
206
- on:click={onClick}
207
- on:focus={onFocus}
208
- on:keydown={onKeydown}
209
- >
210
- <div class="content">
211
- <slot {data} disabled={_disabled} {selected} tabId={_tabId} text={_text}>
212
- <div class="text">
213
- {_text || _tabId}
214
- </div>
215
- </slot>
216
- </div>
217
- <div class="indicator" />
218
- </button>
219
-
220
- <style>
221
- .sterling-tab {
222
- align-content: center;
223
- align-items: center;
224
- background-color: var(--Common__background-color);
225
- border-color: transparent;
226
- border-radius: var(--Button__border-radius);
227
- border-style: var(--Common__border-style);
228
- border-width: 0;
229
- box-sizing: border-box;
230
- color: var(--Common__color);
231
- cursor: pointer;
232
- display: grid;
233
- font: inherit;
234
- overflow: hidden;
235
- padding: 0.5em 1em 0.25em 1em;
236
- text-decoration: none;
237
- text-overflow: ellipsis;
238
- transition: background-color 250ms, color 250ms, border-color 250ms;
239
- white-space: nowrap;
240
- }
241
-
242
- .sterling-tab:not(.vertical) {
243
- grid-template-columns: 1fr;
244
- grid-template-rows: 1fr 1em;
245
- justify-content: center;
246
- justify-items: center;
247
- row-gap: 0.15em;
248
- }
249
-
250
- .sterling-tab.vertical {
251
- grid-template-columns: auto 1em;
252
- grid-template-rows: 1fr;
253
- align-content: center;
254
- align-items: center;
255
- justify-content: flex-end;
256
- justify-items: flex-end;
257
- column-gap: 0.15em;
258
- }
259
-
260
- .sterling-tab:hover {
261
- background-color: var(--Common__background-color--hover);
262
- color: var(--Common__color--hover);
263
- }
264
-
265
- .sterling-tab:active {
266
- background-color: var(--Common__background-color--active);
267
- color: var(--Common__color--active);
268
- }
269
-
270
- .sterling-tab:focus-visible {
271
- outline-color: var(--Common__outline-color);
272
- outline-offset: var(--Common__outline-offset);
273
- outline-style: var(--Common__outline-style);
274
- outline-width: var(--Common__outline-width);
275
- }
276
-
277
- .sterling-tab:disabled {
278
- color: var(--Common__color--disabled);
279
- cursor: not-allowed;
280
- }
281
-
282
- .content {
283
- padding: 0 0.2em;
284
- }
285
-
286
- .sterling-tab.vertical .content .text {
287
- padding-top: 0.25em;
288
- }
289
-
290
- .indicator {
291
- background-color: transparent;
292
- border-radius: 10000px;
293
- transition: background-color 250ms;
294
- }
295
-
296
- .sterling-tab:not(.vertical) .indicator {
297
- justify-self: stretch;
298
- height: 0.4em;
299
- }
300
-
301
- .sterling-tab.vertical .indicator {
302
- align-self: stretch;
303
- width: 0.4em;
304
- }
305
-
306
- .sterling-tab:hover .indicator {
307
- background-color: var(--Display__color--faint);
308
- }
309
-
310
- .sterling-tab:active .indicator {
311
- background-color: var(--Button__border-color--hover);
312
- }
313
-
314
- .sterling-tab:disabled .indicator,
315
- .sterling-tab:disabled:hover .indicator,
316
- .sterling-tab:disabled:active .indicator {
317
- background-color: transparent;
318
- }
319
-
320
- .sterling-tab.selected .indicator {
321
- background-color: var(--Input__color);
322
- }
323
-
324
- .sterling-tab.selected:disabled .indicator {
325
- background-color: var(--Input__color--disabled);
326
- }
327
- </style>
@@ -1,126 +0,0 @@
1
- <script>import { createEventDispatcher, setContext } from "svelte";
2
- import Tab from "./Tab.svelte";
3
- import { writable } from "svelte/store";
4
- import { tabListContextKey } from "./Tabs.constants";
5
- export let disabled = false;
6
- export let tabs = [];
7
- export let vertical = false;
8
- export let selectedTabId = void 0;
9
- export let selectionFollowsFocus = false;
10
- export let selectedTab = void 0;
11
- const selectedTabIdStore = writable(selectedTabId);
12
- const selectionFollowsFocusStore = writable(selectionFollowsFocus);
13
- const verticalStore = writable(vertical);
14
- const disabledStore = writable(disabled);
15
- setContext(tabListContextKey, {
16
- disabled: disabledStore,
17
- selectedTabId: selectedTabIdStore,
18
- selectionFollowsFocus: selectionFollowsFocusStore,
19
- vertical: verticalStore
20
- });
21
- const dispatch = createEventDispatcher();
22
- const raiseSelected = (tabId, tab) => {
23
- dispatch("select", { tabId, tab });
24
- };
25
- $:
26
- disabledStore.set(disabled);
27
- $:
28
- selectedTabIdStore.set(selectedTabId);
29
- $: {
30
- selectedTabId = $selectedTabIdStore;
31
- selectedTab = tabs.find((tab) => tab.tabId === selectedTabId);
32
- raiseSelected(selectedTabId, selectedTab);
33
- }
34
- $:
35
- selectionFollowsFocusStore.set(selectionFollowsFocus);
36
- $:
37
- verticalStore.set(vertical);
38
- </script>
39
-
40
- <!--
41
- @component
42
- A list of items where a single item can be selected.
43
- -->
44
- <!-- svelte-ignore a11y-no-noninteractive-tabindex -->
45
- <div
46
- class="sterling-tab-list"
47
- role="tablist"
48
- class:vertical
49
- class:disabled
50
- on:blur
51
- on:click
52
- on:copy
53
- on:cut
54
- on:dblclick
55
- on:focus
56
- on:focusin
57
- on:focusout
58
- on:keydown
59
- on:keypress
60
- on:keyup
61
- on:mousedown
62
- on:mouseenter
63
- on:mouseleave
64
- on:mousemove
65
- on:mouseover
66
- on:mouseout
67
- on:mouseup
68
- on:scroll
69
- on:wheel
70
- on:paste
71
- {...$$restProps}
72
- >
73
- {#each tabs as tab (tab.tabId)}
74
- <Tab data={tab}>
75
- <svelte:fragment let:data let:disabled let:selected let:tabId let:text>
76
- <slot name="tabContent" {data} {disabled} {selected} {tabId} {text}>
77
- <div class="text">
78
- {text}
79
- </div>
80
- </slot>
81
- </svelte:fragment>
82
- </Tab>
83
- {/each}
84
- <slot />
85
- </div>
86
-
87
- <style>
88
- .sterling-tab-list {
89
- box-sizing: border-box;
90
- display: grid;
91
- margin: 0;
92
- padding: calc(2 * var(--Common__outline-width));
93
- }
94
-
95
- .sterling-tab-list:not(.vertical) {
96
- column-gap: 0.5em;
97
- grid-auto-flow: column;
98
- grid-template-columns: repeat(auto-fill, auto);
99
- grid-template-rows: 1fr;
100
- overflow-x: scroll;
101
- overflow-y: hidden;
102
- }
103
-
104
- .sterling-tab-list.vertical {
105
- grid-auto-flow: row;
106
- grid-template-rows: auto;
107
- grid-template-columns: 1fr;
108
- overflow-x: hidden;
109
- overflow-y: scroll;
110
- row-gap: 0.5em;
111
- }
112
-
113
- .sterling-tab-list:hover {
114
- color: var(--Common__color--hover);
115
- }
116
-
117
- .sterling-tab-list.vertical .text {
118
- padding-top: 0.25em;
119
- }
120
-
121
- @media (prefers-reduced-motion) {
122
- .sterling-tab-list {
123
- transition: none;
124
- }
125
- }
126
- </style>
@@ -1,12 +0,0 @@
1
- import type { Readable, Writable } from 'svelte/store';
2
- export type TabData<T> = T & {
3
- tabId: string;
4
- text?: string;
5
- disabled?: boolean;
6
- };
7
- export type TabListContext<T> = {
8
- disabled: Readable<boolean>;
9
- selectedTabId: Writable<string | undefined>;
10
- selectionFollowsFocus: Readable<boolean>;
11
- vertical: Readable<boolean>;
12
- };
@@ -1,2 +0,0 @@
1
- export declare const treeContextKey = "sterlingTree";
2
- export declare const treeNodeContextKey = "sterlingTreeNode";
@@ -1,2 +0,0 @@
1
- export const treeContextKey = 'sterlingTree';
2
- export const treeNodeContextKey = 'sterlingTreeNode';