@medyll/idae-slotui-svelte 0.26.0 → 0.28.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/base/alert/Alert.demo.svelte +10 -8
- package/dist/base/alert/Alert.svelte +56 -48
- package/dist/base/alert/types.d.ts +4 -4
- package/dist/base/alert/types.js +11 -11
- package/dist/base/avatar/Avatar.demo.svelte +12 -8
- package/dist/base/avatar/Avatar.preview.svelte +3 -2
- package/dist/base/avatar/Avatar.svelte +24 -19
- package/dist/base/avatar/types.d.ts +5 -5
- package/dist/base/avatar/types.js +9 -9
- package/dist/base/backdrop/Backdrop.demo.svelte +13 -9
- package/dist/base/backdrop/Backdrop.svelte +45 -37
- package/dist/base/backdrop/types.d.ts +7 -7
- package/dist/base/backdrop/types.js +10 -10
- package/dist/base/badge/Badge.svelte +22 -18
- package/dist/base/box/Box.demo.svelte +12 -9
- package/dist/base/box/Box.svelte +44 -36
- package/dist/base/box/types.d.ts +3 -3
- package/dist/base/box/types.js +16 -16
- package/dist/base/breadCrumb/BreadCrumb.svelte +12 -8
- package/dist/base/cartouche/Cartouche.demo.svelte +13 -9
- package/dist/base/cartouche/Cartouche.svelte +50 -43
- package/dist/base/cartouche/types.d.ts +7 -7
- package/dist/base/cartouche/types.js +20 -20
- package/dist/base/chipper/Chipper.demo.svelte +14 -10
- package/dist/base/chipper/Chipper.svelte +19 -14
- package/dist/base/chipper/types.d.ts +5 -5
- package/dist/base/chipper/types.js +10 -10
- package/dist/base/columner/Column.svelte +39 -31
- package/dist/base/columner/Columner.demo.svelte +4 -3
- package/dist/base/columner/Columner.svelte +12 -5
- package/dist/base/contentSwitcher/ContentSwitcher.demo.svelte +11 -8
- package/dist/base/contentSwitcher/ContentSwitcher.svelte +40 -30
- package/dist/base/contentSwitcher/types.d.ts +3 -3
- package/dist/base/contentSwitcher/types.js +6 -6
- package/dist/base/debug/Debug.svelte +14 -11
- package/dist/base/demoer/DemoPage.svelte +18 -12
- package/dist/base/demoer/Demoer.svelte +20 -16
- package/dist/base/demoer/DemoerCode.svelte +28 -6
- package/dist/base/demoer/DemoerComponent.svelte +33 -13
- package/dist/base/demoer/demoer.utils.d.ts +2 -1
- package/dist/base/demoer/demoer.utils.js +4 -1
- package/dist/base/divider/Divider.demo.svelte +12 -6
- package/dist/base/divider/Divider.svelte +58 -41
- package/dist/base/divider/types.d.ts +5 -5
- package/dist/base/divider/types.js +10 -10
- package/dist/base/icon/Icon.demo.svelte +8 -5
- package/dist/base/icon/Icon.svelte +34 -27
- package/dist/base/icon/types.d.ts +4 -4
- package/dist/base/icon/types.js +9 -9
- package/dist/base/paper/Paper.demo.svelte +12 -9
- package/dist/base/paper/Paper.svelte +13 -9
- package/dist/base/paper/type.d.ts +3 -3
- package/dist/base/paper/type.js +4 -4
- package/dist/base/titleBar/TitleBar.demo.svelte +11 -9
- package/dist/base/titleBar/TitleBar.svelte +16 -12
- package/dist/base/titleBar/types.d.ts +4 -4
- package/dist/base/titleBar/types.js +8 -8
- package/dist/controls/autocomplete/AutoComplete.demo.svelte +21 -16
- package/dist/controls/autocomplete/AutoComplete.svelte +81 -62
- package/dist/controls/button/Button.demo.svelte +71 -45
- package/dist/controls/button/Button.svelte +130 -155
- package/dist/controls/button/Button.svelte.d.ts +2 -27
- package/dist/controls/button/ButtonAction.svelte +122 -133
- package/dist/controls/button/ButtonAction.svelte.d.ts +3 -2
- package/dist/controls/button/ButtonMenu.svelte +22 -16
- package/dist/controls/button/IconButton.svelte +40 -14
- package/dist/controls/button/button-action.scss +1 -1
- package/dist/controls/button/button.scss +22 -47
- package/dist/controls/button/types.d.ts +19 -16
- package/dist/controls/button/types.js +26 -24
- package/dist/controls/checkbox/Checkbox.demo.svelte +13 -9
- package/dist/controls/checkbox/Checkbox.svelte +18 -14
- package/dist/controls/confirm/Confirm.demo.svelte +12 -8
- package/dist/controls/confirm/Confirm.preview.svelte +3 -2
- package/dist/controls/confirm/Confirm.svelte +87 -64
- package/dist/controls/inplaceedit/InPlaceEdit.demo.svelte +12 -8
- package/dist/controls/inplaceedit/InPlaceEdit.svelte +74 -55
- package/dist/controls/progress/Progress.demo.svelte +14 -9
- package/dist/controls/progress/Progress.svelte +19 -13
- package/dist/controls/rating/Rating.demo.svelte +11 -8
- package/dist/controls/rating/Rating.svelte +21 -16
- package/dist/controls/select/Select.demo.svelte +46 -37
- package/dist/controls/select/Select.svelte +76 -29
- package/dist/controls/slider/Slider.demo.svelte +14 -7
- package/dist/controls/slider/Slider.svelte +104 -89
- package/dist/controls/stepper/Stepper.demo.svelte +9 -6
- package/dist/controls/stepper/Stepper.svelte +19 -13
- package/dist/controls/switch/Switch.demo.svelte +31 -24
- package/dist/controls/switch/Switch.svelte +20 -15
- package/dist/controls/textfield/TextField.demo.svelte +28 -23
- package/dist/controls/textfield/TextField.svelte +42 -34
- package/dist/data/dataList/DataList.demo.svelte +44 -37
- package/dist/data/dataList/DataList.preview.svelte +8 -6
- package/dist/data/dataList/DataList.svelte +139 -115
- package/dist/data/dataList/DataList.svelte.d.ts +7 -8
- package/dist/data/dataList/DataListCell.svelte +146 -96
- package/dist/data/dataList/DataListHead.svelte +52 -36
- package/dist/data/dataList/DataListRow.svelte +57 -43
- package/dist/data/dataList/types.d.ts +16 -14
- package/dist/data/dataList/types.js +33 -33
- package/dist/data/finder/Finder.demo.svelte +15 -11
- package/dist/data/finder/Finder.svelte +64 -46
- package/dist/data/grouper/Grouper.demo.svelte +14 -8
- package/dist/data/grouper/Grouper.svelte +62 -50
- package/dist/data/jsoner/Jsoner.svelte +14 -10
- package/dist/data/list/List.svelte +6 -2
- package/dist/data/list/ListItem.svelte +5 -2
- package/dist/data/list/ListTitle.svelte +5 -2
- package/dist/data/loader/Loader.demo.svelte +16 -8
- package/dist/data/loader/Loader.preview.svelte +2 -1
- package/dist/data/loader/Loader.svelte +56 -49
- package/dist/data/sorter/Sorter.demo.svelte +20 -17
- package/dist/data/sorter/Sorter.svelte +40 -33
- package/dist/data/sorter/Sorterer.svelte +17 -15
- package/dist/index.d.ts +4 -4
- package/dist/index.js +4 -4
- package/dist/navigation/drawer/Drawer.demo.svelte +11 -7
- package/dist/navigation/drawer/Drawer.svelte +92 -81
- package/dist/navigation/tabs/Tabs.demo.svelte +23 -18
- package/dist/navigation/tabs/Tabs.preview.svelte +17 -14
- package/dist/navigation/tabs/Tabs.svelte +73 -61
- package/dist/slotui-css/button-action.css +1 -0
- package/dist/slotui-css/button-action.min.css +1 -0
- package/dist/slotui-css/button.css +83 -108
- package/dist/slotui-css/button.min.css +83 -108
- package/dist/slotui-css/slotui-combined.css +111 -135
- package/dist/styles/slotuisheet/SlotuiSheet.svelte +14 -11
- package/dist/styles/slotuisheet/SlotyuiSheet.demo.svelte +21 -17
- package/dist/ui/bootstrapp/BootStrApp.svelte +21 -15
- package/dist/ui/chromeFrame/ChromeFrame.svelte +19 -10
- package/dist/ui/chromeFrame/ChromeFrameButtonList.svelte +6 -4
- package/dist/ui/chromeFrame/ChromeFrameList.svelte +97 -58
- package/dist/ui/frame/Frame.demo.svelte +6 -4
- package/dist/ui/frame/Frame.svelte +51 -44
- package/dist/ui/frame/types.d.ts +5 -4
- package/dist/ui/frame/types.js +6 -5
- package/dist/ui/login/Login.demo.svelte +29 -21
- package/dist/ui/login/Login.svelte +49 -41
- package/dist/ui/marquee/Marque.demo.svelte +9 -6
- package/dist/ui/marquee/Marquee.svelte +69 -27
- package/dist/ui/menu/Menu.svelte +6 -2
- package/dist/ui/menu/MenuItem.svelte +6 -2
- package/dist/ui/menu/MenuTitle.svelte +5 -2
- package/dist/ui/menuList/MenuList.demo.svelte +14 -9
- package/dist/ui/menuList/MenuList.svelte +109 -96
- package/dist/ui/menuList/MenuListItem.svelte +85 -70
- package/dist/ui/menuList/MenuListTitle.svelte +5 -2
- package/dist/ui/panel/Panel.demo.svelte +37 -28
- package/dist/ui/panel/Panel.svelte +44 -34
- package/dist/ui/panel/PanelGrid.svelte +18 -14
- package/dist/ui/panel/PanelSlide.svelte +121 -79
- package/dist/ui/panel/Paneler.svelte +51 -24
- package/dist/ui/popper/Popper.demo.svelte +33 -25
- package/dist/ui/popper/Popper.svelte +105 -87
- package/dist/ui/popper/usePopper.d.ts +2 -2
- package/dist/ui/popper/usePopper.js +6 -6
- package/dist/ui/preview/Preview.svelte +18 -14
- package/dist/ui/serviceBox/ServiceBox.svelte +8 -6
- package/dist/ui/startMenu/BootMenu.svelte +32 -24
- package/dist/ui/taskbar/TaskBarContent.svelte +8 -7
- package/dist/ui/taskbar/Taskbar.svelte +15 -10
- package/dist/ui/themeswitcher/ThemeSwitcher.svelte +9 -7
- package/dist/ui/toast/Toast.demo.svelte +15 -10
- package/dist/ui/toast/Toast.svelte +57 -45
- package/dist/ui/toast/Toaster.svelte +4 -2
- package/dist/ui/toggleBar/ToggleBar.demo.svelte +69 -60
- package/dist/ui/toggleBar/ToggleBar.svelte +27 -23
- package/dist/ui/toolBar/ToolBar.demo.svelte +48 -38
- package/dist/ui/toolBar/ToolBar.svelte +16 -11
- package/dist/ui/tree/Tree.demo.svelte +53 -42
- package/dist/ui/tree/Tree.preview.svelte +14 -11
- package/dist/ui/tree/Tree.svelte +120 -67
- package/dist/ui/window/Window.demo.svelte +27 -19
- package/dist/ui/window/Window.svelte +95 -85
- package/dist/utils/content/Content.svelte +49 -43
- package/dist/utils/contextRooter/ContextRooter.demo.svelte +12 -8
- package/dist/utils/contextRooter/ContextRooter.svelte +5 -3
- package/dist/utils/css/Css.demo.svelte +2 -1
- package/dist/utils/css/Css.svelte +2 -1
- package/dist/utils/looper/Looper.demo.svelte +8 -6
- package/dist/utils/looper/Looper.svelte +27 -22
- package/dist/utils/slotted/Slotted.svelte +10 -1
- package/dist/utils/stylesheet/StyleSheet.demo.svelte +21 -17
- package/dist/utils/stylesheet/StyleSheet.svelte +14 -11
- package/package.json +3 -3
- package/dist/base/cartouche/Cartouche.preview.svelte +0 -25
- package/dist/base/cartouche/Cartouche.preview.svelte.d.ts +0 -27
|
@@ -1,22 +1,35 @@
|
|
|
1
|
-
<script lang="ts">
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
let
|
|
19
|
-
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import type { Snippet } from 'svelte';
|
|
3
|
+
import type { PopperProps } from '../../ui/popper/types.js';
|
|
4
|
+
import type { MenuProps } from '../../ui/menu/types.js';
|
|
5
|
+
import Popper from '../../ui/popper/Popper.svelte';
|
|
6
|
+
import Button from './Button.svelte';
|
|
7
|
+
import type { ButtonProps } from './types.js';
|
|
8
|
+
import Icon from '../../base/icon/Icon.svelte';
|
|
9
|
+
import Slotted from '../../utils/slotted/Slotted.svelte';
|
|
10
|
+
import type { ExpandProps } from '../../types/index.js';
|
|
11
|
+
|
|
12
|
+
type ButtonActionProps = ButtonProps & {
|
|
13
|
+
menuProps?: MenuProps;
|
|
14
|
+
popperProps?: PopperProps;
|
|
15
|
+
popperContent?: Snippet;
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
let {
|
|
19
|
+
element,
|
|
20
|
+
class: className = '',
|
|
21
|
+
menuProps = {},
|
|
22
|
+
popperProps = {},
|
|
23
|
+
popperContent = undefined,
|
|
24
|
+
disabled = false,
|
|
25
|
+
variant = 'bordered',
|
|
26
|
+
tall = 'small',
|
|
27
|
+
children,
|
|
28
|
+
...rest
|
|
29
|
+
}: ExpandProps<ButtonActionProps> = $props();
|
|
30
|
+
let holder: HTMLDivElement;
|
|
31
|
+
let isOpen = $state(popperProps?.isOpen);
|
|
32
|
+
let chevron = 'fluent:chevron-down-20-regular';
|
|
20
33
|
</script>
|
|
21
34
|
|
|
22
35
|
<div bind:this={holder} class="button button-action selected {variant} tall-{tall} {className}">
|
|
@@ -29,12 +42,12 @@ let chevron = "fluent:chevron-down-20-regular";
|
|
|
29
42
|
isOpen = true;
|
|
30
43
|
}}
|
|
31
44
|
{tall}
|
|
32
|
-
variant="naked"
|
|
33
|
-
|
|
34
|
-
|
|
45
|
+
variant="naked"
|
|
46
|
+
icon={{icon:chevron,rotation:isOpen ? 180 : 0}}
|
|
47
|
+
class="chevron" />
|
|
35
48
|
</div>
|
|
36
49
|
{#if isOpen && !disabled}
|
|
37
|
-
<Popper bind:isOpen parentNode={holder} stickToHookWidth={true} {...popperProps}>
|
|
50
|
+
<Popper bind:isOpen parentNode={holder} stickToHookWidth={true} autoClose={true} {...popperProps}>
|
|
38
51
|
<Slotted child={popperContent} />
|
|
39
52
|
</Popper>
|
|
40
53
|
{/if}
|
|
@@ -47,7 +60,7 @@ let chevron = "fluent:chevron-down-20-regular";
|
|
|
47
60
|
--sld-button-text-align: center;
|
|
48
61
|
--sld-button-padding: 0;
|
|
49
62
|
--sld-button-background: var(--sld-color-foreground-alpha-high);
|
|
50
|
-
--sld-button-contained-background: var(--sld-color-primary);
|
|
63
|
+
--sld-button-contained-background: var(--sld-color-primary-alpha-high);
|
|
51
64
|
--sld-button-hover-border-color: var(--sld-color-primary);
|
|
52
65
|
--sld-button-active-border-color: var(--sld-color-secondary);
|
|
53
66
|
--sld-button-focus-border-color: var(--sld-color-primary);
|
|
@@ -74,6 +87,7 @@ let chevron = "fluent:chevron-down-20-regular";
|
|
|
74
87
|
--preset-width: var(--sld-width-small);
|
|
75
88
|
width: var(--preset-width-small);
|
|
76
89
|
border: none;
|
|
90
|
+
border-radius: 0;
|
|
77
91
|
margin: 0;
|
|
78
92
|
text-align: var(--sld-button-text-align);
|
|
79
93
|
font-size: var(--sld-button-font-size);
|
|
@@ -81,35 +95,13 @@ let chevron = "fluent:chevron-down-20-regular";
|
|
|
81
95
|
color: var(--sld-color-foreground);
|
|
82
96
|
padding: var(--sld-button-padding);
|
|
83
97
|
position: relative;
|
|
84
|
-
display: inline-
|
|
98
|
+
display: inline-flex;
|
|
85
99
|
transition: all 0.2s ease-in-out;
|
|
86
100
|
overflow: hidden;
|
|
87
101
|
cursor: pointer;
|
|
88
|
-
align-content:
|
|
89
|
-
align-items:
|
|
102
|
+
align-content: stretch;
|
|
103
|
+
align-items: stretch;
|
|
90
104
|
background: var(--sld-button-background);
|
|
91
|
-
/* &:focus {
|
|
92
|
-
outline: 1px solid var(--sld-button-focus-border-color);
|
|
93
|
-
outline-offset: 2px;
|
|
94
|
-
box-shadow: var(--sld-button-focus-shadow);
|
|
95
|
-
}
|
|
96
|
-
&:focus-visible {
|
|
97
|
-
outline: 1px solid var(--sld-button-focus-border-color);
|
|
98
|
-
outline-offset: -2px;
|
|
99
|
-
box-shadow: var(--sld-button-focus-shadow);
|
|
100
|
-
}
|
|
101
|
-
&:focus:not(:focus-visible) {
|
|
102
|
-
box-shadow: var(--sld-button-focus-shadow);
|
|
103
|
-
}
|
|
104
|
-
&:hover {
|
|
105
|
-
background-color: var(--sld-button-hover-background);
|
|
106
|
-
box-shadow: var(--sld-button-hover-shadow);
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
&:active {
|
|
110
|
-
transform: translateY(1px);
|
|
111
|
-
box-shadow: var(--sld-button-active-shadow);
|
|
112
|
-
} */
|
|
113
105
|
--preset-width: var(--sld-width-small);
|
|
114
106
|
width: var(--preset-width-small);
|
|
115
107
|
}
|
|
@@ -442,36 +434,58 @@ let chevron = "fluent:chevron-down-20-regular";
|
|
|
442
434
|
:global(button.button) .button-start,
|
|
443
435
|
:global(input[type="button"]) .button-start,
|
|
444
436
|
:global(input[type="submit"]) .button-start {
|
|
445
|
-
|
|
446
|
-
position: absolute;
|
|
437
|
+
position: relative;
|
|
447
438
|
top: 0;
|
|
448
439
|
left: 0;
|
|
449
|
-
height: 100%;
|
|
450
|
-
display: flex;
|
|
440
|
+
max-height: 100%;
|
|
451
441
|
align-items: center;
|
|
452
|
-
|
|
453
|
-
padding: 0 0.
|
|
442
|
+
align-content: center;
|
|
443
|
+
padding: 0 0.15rem;
|
|
444
|
+
display: block;
|
|
454
445
|
}
|
|
455
446
|
|
|
456
|
-
:global(button) .button-start
|
|
457
|
-
:global(.button) .button-start
|
|
458
|
-
:global(.button) .button-start
|
|
459
|
-
:global(button
|
|
460
|
-
:global(
|
|
461
|
-
:
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
:global(
|
|
447
|
+
:global(button) .button-start:empty,
|
|
448
|
+
:global(.button) .button-start:empty,
|
|
449
|
+
:global(button.button) .button-start:empty,
|
|
450
|
+
:global(input[type="button"]) .button-start:empty,
|
|
451
|
+
:global(input[type="submit"]) .button-start:empty {
|
|
452
|
+
display: none;
|
|
453
|
+
}
|
|
454
|
+
|
|
455
|
+
:global(button) .button-central,
|
|
456
|
+
:global(.button) .button-central,
|
|
457
|
+
:global(button.button) .button-central,
|
|
458
|
+
:global(input[type="button"]) .button-central,
|
|
459
|
+
:global(input[type="submit"]) .button-central {
|
|
460
|
+
--preset-ellipsis-line: 1;
|
|
461
|
+
max-width: 100%;
|
|
462
|
+
max-height: 100%;
|
|
463
|
+
flex: 1;
|
|
464
|
+
align-items: center;
|
|
465
|
+
align-content: center;
|
|
466
|
+
padding-right: calc(var(--content-padding, 0.25rem) / 2);
|
|
467
|
+
text-align: var(--sld-button-text-align, center);
|
|
468
|
+
}
|
|
469
|
+
|
|
470
|
+
:global(button) .button-central[ellipsis], :global(button) .button-central.ellipsis,
|
|
471
|
+
:global(.button) .button-central[ellipsis],
|
|
472
|
+
:global(.button) .button-central.ellipsis,
|
|
473
|
+
:global(button.button) .button-central[ellipsis],
|
|
474
|
+
:global(button.button) .button-central.ellipsis,
|
|
475
|
+
:global(input[type="button"]) .button-central[ellipsis],
|
|
476
|
+
:global(input[type="button"]) .button-central.ellipsis,
|
|
477
|
+
:global(input[type="submit"]) .button-central[ellipsis],
|
|
478
|
+
:global(input[type="submit"]) .button-central.ellipsis {
|
|
465
479
|
white-space: nowrap;
|
|
466
480
|
overflow: hidden;
|
|
467
481
|
text-overflow: ellipsis;
|
|
468
482
|
}
|
|
469
483
|
|
|
470
|
-
:global(button) .button-
|
|
471
|
-
:global(.button) .button-
|
|
472
|
-
:global(button.button) .button-
|
|
473
|
-
:global(input[type="button"]) .button-
|
|
474
|
-
:global(input[type="submit"]) .button-
|
|
484
|
+
:global(button) .button-central.ellipsis-line-1,
|
|
485
|
+
:global(.button) .button-central.ellipsis-line-1,
|
|
486
|
+
:global(button.button) .button-central.ellipsis-line-1,
|
|
487
|
+
:global(input[type="button"]) .button-central.ellipsis-line-1,
|
|
488
|
+
:global(input[type="submit"]) .button-central.ellipsis-line-1 {
|
|
475
489
|
display: -webkit-box;
|
|
476
490
|
-webkit-line-clamp: 1;
|
|
477
491
|
-webkit-box-orient: vertical;
|
|
@@ -481,11 +495,11 @@ let chevron = "fluent:chevron-down-20-regular";
|
|
|
481
495
|
--preset-ellipsis-line: 1;
|
|
482
496
|
}
|
|
483
497
|
|
|
484
|
-
:global(button) .button-
|
|
485
|
-
:global(.button) .button-
|
|
486
|
-
:global(button.button) .button-
|
|
487
|
-
:global(input[type="button"]) .button-
|
|
488
|
-
:global(input[type="submit"]) .button-
|
|
498
|
+
:global(button) .button-central.ellipsis-line-2,
|
|
499
|
+
:global(.button) .button-central.ellipsis-line-2,
|
|
500
|
+
:global(button.button) .button-central.ellipsis-line-2,
|
|
501
|
+
:global(input[type="button"]) .button-central.ellipsis-line-2,
|
|
502
|
+
:global(input[type="submit"]) .button-central.ellipsis-line-2 {
|
|
489
503
|
display: -webkit-box;
|
|
490
504
|
-webkit-line-clamp: 2;
|
|
491
505
|
-webkit-box-orient: vertical;
|
|
@@ -495,11 +509,11 @@ let chevron = "fluent:chevron-down-20-regular";
|
|
|
495
509
|
--preset-ellipsis-line: 2;
|
|
496
510
|
}
|
|
497
511
|
|
|
498
|
-
:global(button) .button-
|
|
499
|
-
:global(.button) .button-
|
|
500
|
-
:global(button.button) .button-
|
|
501
|
-
:global(input[type="button"]) .button-
|
|
502
|
-
:global(input[type="submit"]) .button-
|
|
512
|
+
:global(button) .button-central.ellipsis-line-3,
|
|
513
|
+
:global(.button) .button-central.ellipsis-line-3,
|
|
514
|
+
:global(button.button) .button-central.ellipsis-line-3,
|
|
515
|
+
:global(input[type="button"]) .button-central.ellipsis-line-3,
|
|
516
|
+
:global(input[type="submit"]) .button-central.ellipsis-line-3 {
|
|
503
517
|
display: -webkit-box;
|
|
504
518
|
-webkit-line-clamp: 3;
|
|
505
519
|
-webkit-box-orient: vertical;
|
|
@@ -509,11 +523,11 @@ let chevron = "fluent:chevron-down-20-regular";
|
|
|
509
523
|
--preset-ellipsis-line: 3;
|
|
510
524
|
}
|
|
511
525
|
|
|
512
|
-
:global(button) .button-
|
|
513
|
-
:global(.button) .button-
|
|
514
|
-
:global(button.button) .button-
|
|
515
|
-
:global(input[type="button"]) .button-
|
|
516
|
-
:global(input[type="submit"]) .button-
|
|
526
|
+
:global(button) .button-central.ellipsis-line-4,
|
|
527
|
+
:global(.button) .button-central.ellipsis-line-4,
|
|
528
|
+
:global(button.button) .button-central.ellipsis-line-4,
|
|
529
|
+
:global(input[type="button"]) .button-central.ellipsis-line-4,
|
|
530
|
+
:global(input[type="submit"]) .button-central.ellipsis-line-4 {
|
|
517
531
|
display: -webkit-box;
|
|
518
532
|
-webkit-line-clamp: 4;
|
|
519
533
|
-webkit-box-orient: vertical;
|
|
@@ -523,11 +537,11 @@ let chevron = "fluent:chevron-down-20-regular";
|
|
|
523
537
|
--preset-ellipsis-line: 4;
|
|
524
538
|
}
|
|
525
539
|
|
|
526
|
-
:global(button) .button-
|
|
527
|
-
:global(.button) .button-
|
|
528
|
-
:global(button.button) .button-
|
|
529
|
-
:global(input[type="button"]) .button-
|
|
530
|
-
:global(input[type="submit"]) .button-
|
|
540
|
+
:global(button) .button-central.ellipsis-line-5,
|
|
541
|
+
:global(.button) .button-central.ellipsis-line-5,
|
|
542
|
+
:global(button.button) .button-central.ellipsis-line-5,
|
|
543
|
+
:global(input[type="button"]) .button-central.ellipsis-line-5,
|
|
544
|
+
:global(input[type="submit"]) .button-central.ellipsis-line-5 {
|
|
531
545
|
display: -webkit-box;
|
|
532
546
|
-webkit-line-clamp: 5;
|
|
533
547
|
-webkit-box-orient: vertical;
|
|
@@ -537,28 +551,6 @@ let chevron = "fluent:chevron-down-20-regular";
|
|
|
537
551
|
--preset-ellipsis-line: 5;
|
|
538
552
|
}
|
|
539
553
|
|
|
540
|
-
:global(button) .button-start:empty,
|
|
541
|
-
:global(.button) .button-start:empty,
|
|
542
|
-
:global(button.button) .button-start:empty,
|
|
543
|
-
:global(input[type="button"]) .button-start:empty,
|
|
544
|
-
:global(input[type="submit"]) .button-start:empty {
|
|
545
|
-
display: none;
|
|
546
|
-
}
|
|
547
|
-
|
|
548
|
-
:global(button) .button-central,
|
|
549
|
-
:global(.button) .button-central,
|
|
550
|
-
:global(button.button) .button-central,
|
|
551
|
-
:global(input[type="button"]) .button-central,
|
|
552
|
-
:global(input[type="submit"]) .button-central {
|
|
553
|
-
width: 100%;
|
|
554
|
-
height: 100%;
|
|
555
|
-
display: flex;
|
|
556
|
-
align-items: center;
|
|
557
|
-
justify-content: center;
|
|
558
|
-
padding: 0 0.5rem;
|
|
559
|
-
text-align: var(--sld-button-text-align);
|
|
560
|
-
}
|
|
561
|
-
|
|
562
554
|
:global(button) .button-central:empty,
|
|
563
555
|
:global(.button) .button-central:empty,
|
|
564
556
|
:global(button.button) .button-central:empty,
|
|
@@ -567,36 +559,32 @@ let chevron = "fluent:chevron-down-20-regular";
|
|
|
567
559
|
display: none;
|
|
568
560
|
}
|
|
569
561
|
|
|
570
|
-
:global(button) .button-
|
|
571
|
-
:global(.button) .button-
|
|
572
|
-
:global(button.button) .button-
|
|
573
|
-
:global(input[type="button"]) .button-
|
|
574
|
-
:global(input[type="submit"]) .button-
|
|
575
|
-
position:
|
|
576
|
-
top: 0;
|
|
577
|
-
right: 0;
|
|
578
|
-
height: 100%;
|
|
579
|
-
display: flex;
|
|
562
|
+
:global(button) .button-end,
|
|
563
|
+
:global(.button) .button-end,
|
|
564
|
+
:global(button.button) .button-end,
|
|
565
|
+
:global(input[type="button"]) .button-end,
|
|
566
|
+
:global(input[type="submit"]) .button-end {
|
|
567
|
+
position: relative;
|
|
580
568
|
align-items: center;
|
|
581
|
-
|
|
582
|
-
width: var(--w-tiny);
|
|
569
|
+
align-content: center;
|
|
583
570
|
padding: 0 0.5rem;
|
|
571
|
+
text-align: center;
|
|
584
572
|
cursor: pointer;
|
|
585
573
|
}
|
|
586
574
|
|
|
587
|
-
:global(button) .button-
|
|
588
|
-
:global(.button) .button-
|
|
589
|
-
:global(button.button) .button-
|
|
590
|
-
:global(input[type="button"]) .button-
|
|
591
|
-
:global(input[type="submit"]) .button-
|
|
575
|
+
:global(button) .button-end:empty,
|
|
576
|
+
:global(.button) .button-end:empty,
|
|
577
|
+
:global(button.button) .button-end:empty,
|
|
578
|
+
:global(input[type="button"]) .button-end:empty,
|
|
579
|
+
:global(input[type="submit"]) .button-end:empty {
|
|
592
580
|
display: none;
|
|
593
581
|
}
|
|
594
582
|
|
|
595
|
-
:global(button) .button-
|
|
596
|
-
:global(.button) .button-
|
|
597
|
-
:global(button.button) .button-
|
|
598
|
-
:global(input[type="button"]) .button-
|
|
599
|
-
:global(input[type="submit"]) .button-
|
|
583
|
+
:global(button) .button-end:hover,
|
|
584
|
+
:global(.button) .button-end:hover,
|
|
585
|
+
:global(button.button) .button-end:hover,
|
|
586
|
+
:global(input[type="button"]) .button-end:hover,
|
|
587
|
+
:global(input[type="submit"]) .button-end:hover {
|
|
600
588
|
background-color: var(--sld-button-action-hover-background);
|
|
601
589
|
}
|
|
602
590
|
|
|
@@ -1320,6 +1308,7 @@ let chevron = "fluent:chevron-down-20-regular";
|
|
|
1320
1308
|
.button-action {
|
|
1321
1309
|
display: inline-flex;
|
|
1322
1310
|
position: relative;
|
|
1311
|
+
align-items: center;
|
|
1323
1312
|
}
|
|
1324
1313
|
|
|
1325
1314
|
.button-action .chevron {
|
|
@@ -19,15 +19,16 @@ declare const ButtonAction: $$__sveltets_2_IsomorphicComponent<{
|
|
|
19
19
|
type?: ("button" | "submit" | "reset") | undefined;
|
|
20
20
|
icon?: import("../../types/index.js").ElementProps["icon"] | undefined;
|
|
21
21
|
wrap?: import("../../types/index.js").ElementProps["wrap"] | undefined;
|
|
22
|
+
nowrap?: boolean | undefined;
|
|
23
|
+
ellipsis?: boolean | undefined;
|
|
22
24
|
iconEnd?: import("../../types/index.js").ElementProps["icon"] | undefined;
|
|
23
25
|
bgTheme?: string | undefined;
|
|
24
|
-
|
|
26
|
+
usePopperProps?: import("../..").UsePopperProps | undefined;
|
|
25
27
|
popperOpen?: boolean | undefined;
|
|
26
28
|
loading?: boolean | undefined;
|
|
27
29
|
showChip?: boolean | undefined;
|
|
28
30
|
variant?: import("../../types/index.js").ElementProps["buttonVariant"] | undefined;
|
|
29
31
|
width?: import("../../types/index.js").ElementProps["width"] | undefined;
|
|
30
|
-
nowrap?: boolean | undefined;
|
|
31
32
|
tall?: import("../../types/index.js").ElementProps["tall"] | undefined;
|
|
32
33
|
selected?: boolean | undefined;
|
|
33
34
|
value?: string | undefined;
|
|
@@ -1,19 +1,25 @@
|
|
|
1
|
-
<script lang="ts" generics="T">
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
1
|
+
<script lang="ts" generics="T">
|
|
2
|
+
import Popper from '../../ui/popper/Popper.svelte';
|
|
3
|
+
import MenuList from '../../ui/menuList/MenuList.svelte';
|
|
4
|
+
import Button from './Button.svelte';
|
|
5
|
+
import type { ButtonMenuProps } from './types.js';
|
|
6
|
+
import type { MenuListProps } from '../../ui/menuList/types.js';
|
|
7
|
+
import type { PopperProps } from '../../ui/popper/types.js';
|
|
8
|
+
import MenuListItem from '../../ui/menuList/MenuListItem.svelte';
|
|
9
|
+
|
|
10
|
+
let {
|
|
11
|
+
menuProps = {} as MenuListProps<T>,
|
|
12
|
+
popperProps = {} as PopperProps,
|
|
13
|
+
disabled = false,
|
|
14
|
+
element = $bindable(),
|
|
15
|
+
popperElement,
|
|
16
|
+
menuItem,
|
|
17
|
+
children,
|
|
18
|
+
...rest
|
|
19
|
+
}: ButtonMenuProps<T> = $props();
|
|
20
|
+
|
|
21
|
+
let isOpen = $state(popperProps?.isOpen);
|
|
22
|
+
let chevron = $derived(disabled ? 'fluent:chevron-up-20-regular' : 'fluent:chevron-up-12-down');
|
|
17
23
|
</script>
|
|
18
24
|
|
|
19
25
|
<Button
|
|
@@ -1,17 +1,43 @@
|
|
|
1
|
-
<script lang="ts">
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import Icon from '../../base/icon/Icon.svelte';
|
|
3
|
+
import Button from './Button.svelte';
|
|
4
|
+
import type { ElementProps } from '../../types/index.js';
|
|
5
|
+
import type { Snippet } from 'svelte';
|
|
6
|
+
import type { ButtonProps } from './types.js';
|
|
7
|
+
type IconButtonProps = {
|
|
8
|
+
/** Icon to be displayed */
|
|
9
|
+
icon: ElementProps['icon'];
|
|
10
|
+
showShip?: boolean;
|
|
11
|
+
/** Font size of the icon */
|
|
12
|
+
iconFontSize?: ElementProps['iconSize'];
|
|
13
|
+
element?: HTMLButtonElement | null;
|
|
14
|
+
|
|
15
|
+
/** Aspect ratio of the icon button */
|
|
16
|
+
ratio?: string;
|
|
17
|
+
|
|
18
|
+
/** Whether to show the chip or not */
|
|
19
|
+
showChip?: boolean;
|
|
20
|
+
|
|
21
|
+
/** Rotation of the icon */
|
|
22
|
+
rotation?: number;
|
|
23
|
+
|
|
24
|
+
size?: ElementProps['width'];
|
|
25
|
+
/** Children for the default content */
|
|
26
|
+
children?: Snippet;
|
|
27
|
+
} & Partial<ButtonProps>;
|
|
28
|
+
|
|
29
|
+
let {
|
|
30
|
+
element,
|
|
31
|
+
icon,
|
|
32
|
+
ratio = '1/1',
|
|
33
|
+
iconFontSize = 'full',
|
|
34
|
+
rotation = 0,
|
|
35
|
+
size = 'mini',
|
|
36
|
+
children,
|
|
37
|
+
...rest
|
|
38
|
+
}: IconButtonProps = $props();
|
|
13
39
|
</script>
|
|
14
40
|
|
|
15
|
-
<Button variant="square" bind:element width={size} tall="unset" {ratio} {...rest}>
|
|
41
|
+
<!-- <Button variant="square" bind:element width={size} tall="unset" {ratio} {...rest}>
|
|
16
42
|
<Icon style="display:block; " {rotation} {icon} iconSize={iconFontSize} />
|
|
17
|
-
</Button>
|
|
43
|
+
</Button> -->
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
--sld-button-text-align: center;
|
|
9
9
|
--sld-button-padding: 0;
|
|
10
10
|
--sld-button-background: var(--sld-color-foreground-alpha-high);
|
|
11
|
-
--sld-button-contained-background: var(--sld-color-primary);
|
|
11
|
+
--sld-button-contained-background: var(--sld-color-primary-alpha-high);
|
|
12
12
|
--sld-button-hover-border-color: var(--sld-color-primary);
|
|
13
13
|
--sld-button-active-border-color: var(--sld-color-secondary);
|
|
14
14
|
--sld-button-focus-border-color: var(--sld-color-primary);
|
|
@@ -38,6 +38,7 @@
|
|
|
38
38
|
@include elevation;
|
|
39
39
|
|
|
40
40
|
border: none;
|
|
41
|
+
border-radius: 0;
|
|
41
42
|
margin: 0;
|
|
42
43
|
|
|
43
44
|
text-align: var(--sld-button-text-align);
|
|
@@ -48,14 +49,14 @@
|
|
|
48
49
|
padding: var(--sld-button-padding);
|
|
49
50
|
position: relative;
|
|
50
51
|
|
|
51
|
-
display: inline-
|
|
52
|
+
display: inline-flex;
|
|
52
53
|
|
|
53
54
|
transition: all 0.2s ease-in-out;
|
|
54
55
|
overflow: hidden;
|
|
55
56
|
cursor: pointer;
|
|
56
57
|
|
|
57
|
-
align-content:
|
|
58
|
-
align-items:
|
|
58
|
+
align-content: stretch;
|
|
59
|
+
align-items: stretch;
|
|
59
60
|
|
|
60
61
|
background: var(--sld-button-background);
|
|
61
62
|
|
|
@@ -82,68 +83,42 @@
|
|
|
82
83
|
box-shadow: var(--sld-button-focus-shadow);
|
|
83
84
|
}
|
|
84
85
|
}
|
|
85
|
-
/* &:focus {
|
|
86
|
-
outline: 1px solid var(--sld-button-focus-border-color);
|
|
87
|
-
outline-offset: 2px;
|
|
88
|
-
box-shadow: var(--sld-button-focus-shadow);
|
|
89
|
-
}
|
|
90
|
-
&:focus-visible {
|
|
91
|
-
outline: 1px solid var(--sld-button-focus-border-color);
|
|
92
|
-
outline-offset: -2px;
|
|
93
|
-
box-shadow: var(--sld-button-focus-shadow);
|
|
94
|
-
}
|
|
95
|
-
&:focus:not(:focus-visible) {
|
|
96
|
-
box-shadow: var(--sld-button-focus-shadow);
|
|
97
|
-
}
|
|
98
|
-
&:hover {
|
|
99
|
-
background-color: var(--sld-button-hover-background);
|
|
100
|
-
box-shadow: var(--sld-button-hover-shadow);
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
&:active {
|
|
104
|
-
transform: translateY(1px);
|
|
105
|
-
box-shadow: var(--sld-button-active-shadow);
|
|
106
|
-
} */
|
|
107
86
|
|
|
108
87
|
.button-start {
|
|
109
|
-
|
|
110
|
-
position: absolute;
|
|
88
|
+
position: relative;
|
|
111
89
|
top: 0;
|
|
112
90
|
left: 0;
|
|
113
|
-
height: 100%;
|
|
114
|
-
display: flex;
|
|
91
|
+
max-height: 100%;
|
|
115
92
|
align-items: center;
|
|
116
|
-
|
|
117
|
-
padding: 0 0.
|
|
118
|
-
|
|
93
|
+
align-content: center;
|
|
94
|
+
padding: 0 0.15rem;
|
|
95
|
+
display: block;
|
|
119
96
|
&:empty {
|
|
120
97
|
display: none;
|
|
121
98
|
}
|
|
122
99
|
}
|
|
123
100
|
|
|
124
101
|
.button-central {
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
102
|
+
@include ui-ellipsises-presets;
|
|
103
|
+
max-width: 100%;
|
|
104
|
+
max-height: 100%;
|
|
105
|
+
flex: 1;
|
|
128
106
|
align-items: center;
|
|
129
|
-
|
|
130
|
-
padding:
|
|
131
|
-
text-align: var(--sld-button-text-align);
|
|
107
|
+
align-content: center;
|
|
108
|
+
padding-right: calc(var(--content-padding, 0.25rem) / 2);
|
|
109
|
+
text-align: var(--sld-button-text-align, center);
|
|
132
110
|
&:empty {
|
|
133
111
|
display: none;
|
|
134
112
|
}
|
|
135
113
|
}
|
|
136
114
|
|
|
137
|
-
.button-
|
|
138
|
-
position:
|
|
139
|
-
top: 0;
|
|
140
|
-
right: 0;
|
|
141
|
-
height: 100%;
|
|
142
|
-
display: flex;
|
|
115
|
+
.button-end {
|
|
116
|
+
position: relative;
|
|
143
117
|
align-items: center;
|
|
144
|
-
|
|
145
|
-
width: var(--w-tiny);
|
|
118
|
+
align-content: center;
|
|
119
|
+
//width: var(--w-tiny);
|
|
146
120
|
padding: 0 0.5rem;
|
|
121
|
+
text-align: center;
|
|
147
122
|
cursor: pointer;
|
|
148
123
|
|
|
149
124
|
&:empty {
|
|
@@ -1,21 +1,26 @@
|
|
|
1
|
-
import type { DemoerStoryProps } from
|
|
2
|
-
import { type ElementProps } from
|
|
3
|
-
import type { MenuListProps } from
|
|
4
|
-
import type { PopperProps } from
|
|
5
|
-
import type { UsePopperProps } from
|
|
6
|
-
import type { Snippet } from
|
|
1
|
+
import type { DemoerStoryProps } from "../../base/demoer/types.js";
|
|
2
|
+
import { type ElementProps } from "../../types/index.js";
|
|
3
|
+
import type { MenuListProps } from "../../ui/menuList/types.js";
|
|
4
|
+
import type { PopperProps } from "../../ui/popper/types.js";
|
|
5
|
+
import type { UsePopperProps } from "../../ui/popper/usePopper.js";
|
|
6
|
+
import type { Snippet } from "svelte";
|
|
7
7
|
export type ButtonProps = {
|
|
8
8
|
element?: HTMLButtonElement;
|
|
9
9
|
/** button type */
|
|
10
|
-
type?:
|
|
11
|
-
icon?: ElementProps[
|
|
12
|
-
|
|
10
|
+
type?: "button" | "submit" | "reset";
|
|
11
|
+
icon?: ElementProps["icon"];
|
|
12
|
+
/** add ellipsis on overflowed text */
|
|
13
|
+
wrap?: ElementProps["wrap"];
|
|
14
|
+
/** @deprecated add ellipsis on overflowed text */
|
|
15
|
+
nowrap?: boolean;
|
|
16
|
+
/** add ellipsis on overflowed text */
|
|
17
|
+
ellipsis?: boolean;
|
|
13
18
|
/** endIcon as a parameter */
|
|
14
|
-
iconEnd?: ElementProps[
|
|
19
|
+
iconEnd?: ElementProps["icon"];
|
|
15
20
|
/** background color theme */
|
|
16
21
|
bgTheme?: string;
|
|
17
22
|
/** paramters for usePopper */
|
|
18
|
-
|
|
23
|
+
usePopperProps?: UsePopperProps;
|
|
19
24
|
/** show / hide popper */
|
|
20
25
|
popperOpen?: boolean;
|
|
21
26
|
/** show loading state */
|
|
@@ -23,12 +28,10 @@ export type ButtonProps = {
|
|
|
23
28
|
/** show chip */
|
|
24
29
|
showChip?: boolean;
|
|
25
30
|
/** button style */
|
|
26
|
-
variant?: ElementProps[
|
|
31
|
+
variant?: ElementProps["buttonVariant"];
|
|
27
32
|
/** preset width of the button */
|
|
28
|
-
width?: ElementProps[
|
|
29
|
-
|
|
30
|
-
nowrap?: boolean;
|
|
31
|
-
tall?: ElementProps['tall'];
|
|
33
|
+
width?: ElementProps["width"];
|
|
34
|
+
tall?: ElementProps["tall"];
|
|
32
35
|
/** button selected */
|
|
33
36
|
selected?: boolean;
|
|
34
37
|
/** button value */
|