@medyll/idae-slotui-svelte 0.120.0 → 0.122.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/README.md +47 -47
- package/dist/base/alert/Alert.demo.svelte +62 -62
- package/dist/base/alert/Alert.svelte +121 -121
- package/dist/base/alert/alert.scss +93 -93
- package/dist/base/avatar/Avatar.demo.svelte +41 -41
- package/dist/base/avatar/Avatar.preview.svelte +6 -6
- package/dist/base/avatar/Avatar.svelte +65 -65
- package/dist/base/avatar/avatar.scss +17 -17
- package/dist/base/backdrop/Backdrop.demo.svelte +49 -49
- package/dist/base/backdrop/Backdrop.svelte +78 -78
- package/dist/base/backdrop/backdrop.scss +34 -34
- package/dist/base/badge/Badge.svelte +31 -31
- package/dist/base/badge/badge.scss +19 -19
- package/dist/base/box/Box.demo.svelte +54 -54
- package/dist/base/box/Box.svelte +72 -72
- package/dist/base/box/box.scss +33 -33
- package/dist/base/breadCrumb/BreadCrumb.svelte +23 -23
- package/dist/base/breadCrumb/breadcrumb.scss +11 -11
- package/dist/base/cartouche/Cartouche.demo.svelte +108 -108
- package/dist/base/cartouche/Cartouche.svelte +114 -114
- package/dist/base/cartouche/cartouche.scss +114 -114
- package/dist/base/chipper/Chipper.demo.svelte +45 -45
- package/dist/base/chipper/Chipper.svelte +36 -36
- package/dist/base/chipper/chipper.scss +65 -65
- package/dist/base/columner/Column.svelte +62 -62
- package/dist/base/columner/Columner.demo.svelte +15 -15
- package/dist/base/columner/Columner.svelte +21 -21
- package/dist/base/contentSwitcher/ContentSwitcher.demo.svelte +45 -45
- package/dist/base/contentSwitcher/ContentSwitcher.svelte +63 -63
- package/dist/base/contentSwitcher/content-switcher.scss +22 -22
- package/dist/base/debug/Debug.svelte +21 -21
- package/dist/base/demoer/DemoPage.svelte +40 -40
- package/dist/base/demoer/Demoer.svelte +170 -170
- package/dist/base/demoer/DemoerCode.svelte +45 -45
- package/dist/base/demoer/DemoerComponent.svelte +50 -50
- package/dist/base/divider/Divider.demo.svelte +34 -34
- package/dist/base/divider/Divider.svelte +68 -68
- package/dist/base/divider/divider.scss +19 -19
- package/dist/base/icon/Icon.demo.svelte +24 -24
- package/dist/base/icon/Icon.svelte +117 -117
- package/dist/base/icon/Icon.svelte.d.ts +1 -1
- package/dist/base/icon/icon.scss +17 -17
- package/dist/base/paper/Paper.demo.svelte +31 -31
- package/dist/base/paper/Paper.svelte +20 -20
- package/dist/base/paper/paper.scss +15 -15
- package/dist/base/titleBar/TitleBar.demo.svelte +30 -30
- package/dist/base/titleBar/TitleBar.svelte +40 -40
- package/dist/base/titleBar/title-bar.scss +29 -29
- package/dist/controls/autocomplete/AutoComplete.demo.svelte +88 -88
- package/dist/controls/autocomplete/AutoComplete.svelte +152 -152
- package/dist/controls/autocomplete/auto-complete.scss +15 -15
- package/dist/controls/button/Button.demo.svelte +165 -165
- package/dist/controls/button/Button.svelte +95 -95
- package/dist/controls/button/Button.svelte.d.ts +1 -1
- package/dist/controls/button/ButtonAction.svelte +55 -55
- package/dist/controls/button/ButtonMenu.svelte +55 -55
- package/dist/controls/button/IconButton.svelte +45 -45
- package/dist/controls/button/button-action.scss +8 -8
- package/dist/controls/button/button-menu.scss +36 -36
- package/dist/controls/button/button.scss +293 -293
- package/dist/controls/checkbox/Checkbox.demo.svelte +29 -29
- package/dist/controls/checkbox/Checkbox.svelte +59 -59
- package/dist/controls/checkbox/checkbox.scss +115 -115
- package/dist/controls/confirm/Confirm.demo.svelte +60 -60
- package/dist/controls/confirm/Confirm.preview.svelte +14 -14
- package/dist/controls/confirm/Confirm.svelte +156 -156
- package/dist/controls/confirm/confirm.scss +12 -12
- package/dist/controls/inplaceedit/InPlaceEdit.demo.svelte +41 -41
- package/dist/controls/inplaceedit/InPlaceEdit.svelte +109 -109
- package/dist/controls/progress/Progress.demo.svelte +30 -30
- package/dist/controls/progress/Progress.svelte +26 -26
- package/dist/controls/progress/progress.scss +23 -23
- package/dist/controls/rating/Rating.demo.svelte +45 -45
- package/dist/controls/rating/Rating.svelte +44 -44
- package/dist/controls/rating/Rating.svelte.d.ts +1 -1
- package/dist/controls/rating/rating.scss +9 -9
- package/dist/controls/select/Select.demo.svelte +101 -101
- package/dist/controls/select/Select.svelte +125 -125
- package/dist/controls/select/select.scss +13 -13
- package/dist/controls/slider/Slider.demo.svelte +34 -34
- package/dist/controls/slider/Slider.svelte +153 -153
- package/dist/controls/slider/slider.scss +51 -51
- package/dist/controls/stepper/Stepper.demo.svelte +32 -32
- package/dist/controls/stepper/Stepper.svelte +30 -30
- package/dist/controls/stepper/stepper.scss +23 -23
- package/dist/controls/switch/Switch.demo.svelte +61 -61
- package/dist/controls/switch/Switch.svelte +45 -45
- package/dist/controls/switch/switch.scss +73 -73
- package/dist/controls/textfield/TextField.demo.svelte +79 -79
- package/dist/controls/textfield/TextField.svelte +86 -86
- package/dist/controls/textfield/TextField.svelte.d.ts +1 -1
- package/dist/controls/textfield/textfield.scss +68 -68
- package/dist/csss/csss.scss +10 -10
- package/dist/data/dataList/DataList.demo.svelte +151 -151
- package/dist/data/dataList/DataList.preview.svelte +23 -23
- package/dist/data/dataList/DataList.svelte +233 -233
- package/dist/data/dataList/DataListCell.svelte +212 -212
- package/dist/data/dataList/DataListHead.svelte +75 -75
- package/dist/data/dataList/DataListRow.svelte +93 -93
- package/dist/data/dataList/datalist.scss +157 -157
- package/dist/data/finder/Finder.demo.svelte +55 -55
- package/dist/data/finder/Finder.svelte +166 -166
- package/dist/data/finder/finder.scss +14 -14
- package/dist/data/grouper/Grouper.demo.svelte +36 -36
- package/dist/data/grouper/Grouper.svelte +85 -85
- package/dist/data/jsoner/Jsoner.svelte +40 -40
- package/dist/data/list/List.svelte +16 -16
- package/dist/data/list/ListItem.svelte +10 -10
- package/dist/data/list/ListTitle.svelte +8 -8
- package/dist/data/loader/Loader.demo.svelte +95 -95
- package/dist/data/loader/Loader.preview.svelte +7 -7
- package/dist/data/loader/Loader.svelte +99 -99
- package/dist/data/loader/loader.scss +50 -50
- package/dist/data/sorter/Sorter.demo.svelte +62 -62
- package/dist/data/sorter/Sorter.svelte +80 -80
- package/dist/data/sorter/Sorterer.svelte +27 -27
- package/dist/data/sorter/sorterer.scss +11 -11
- package/dist/index.d.ts +46 -47
- package/dist/index.js +46 -47
- package/dist/navigation/drawer/Drawer.demo.svelte +52 -52
- package/dist/navigation/drawer/Drawer.svelte +163 -163
- package/dist/navigation/drawer/drawer.scss +69 -69
- package/dist/navigation/tabs/Tabs.demo.svelte +83 -83
- package/dist/navigation/tabs/Tabs.preview.svelte +22 -22
- package/dist/navigation/tabs/Tabs.svelte +158 -158
- package/dist/navigation/tabs/tabs.scss +92 -92
- package/dist/slotui-css/slotui-css.css +288 -288
- package/dist/slotui-css/slotui-min-css.css +288 -288
- package/dist/styles/slotui-mixins.scss +168 -168
- package/dist/styles/slotui-presets.scss +56 -56
- package/dist/styles/slotuisheet/SlotuiSheet.svelte +36 -36
- package/dist/styles/slotuisheet/SlotyuiSheet.demo.svelte +28 -28
- package/dist/styles/slotuisheet/sheetConfig.scss +7 -7
- package/dist/styles/slotuisheet/slotui-sheet.scss +192 -192
- package/dist/styles/slotuisheet/stylesheet-container.scss +147 -147
- package/dist/styles/slotuisheet/stylesheet.scss +156 -156
- package/dist/types/slotui-ambient.d.ts +27 -27
- package/dist/ui/bootstrapp/BootStrApp.svelte +92 -92
- package/dist/ui/chromeFrame/ChromeFrame.svelte +43 -43
- package/dist/ui/chromeFrame/ChromeFrameButtonList.svelte +33 -33
- package/dist/ui/chromeFrame/ChromeFrameList.svelte +106 -106
- package/dist/ui/chromeFrame/chrome-frame.scss +34 -34
- package/dist/ui/frame/Frame.demo.svelte +48 -48
- package/dist/ui/frame/Frame.svelte +90 -90
- package/dist/ui/frame/frame.scss +46 -46
- package/dist/ui/login/Login.demo.svelte +62 -62
- package/dist/ui/login/Login.svelte +102 -102
- package/dist/ui/marquee/Marquee.demo.svelte +33 -33
- package/dist/ui/marquee/Marquee.svelte +97 -97
- package/dist/ui/marquee/marquee.scss +34 -34
- package/dist/ui/menu/Menu.svelte +9 -9
- package/dist/ui/menu/MenuItem.svelte +9 -9
- package/dist/ui/menu/MenuTitle.svelte +10 -10
- package/dist/ui/menu/menu.scss +61 -61
- package/dist/ui/menuList/MenuList.demo.svelte +73 -73
- package/dist/ui/menuList/MenuList.svelte +143 -143
- package/dist/ui/menuList/MenuListItem.svelte +134 -134
- package/dist/ui/menuList/MenuListTitle.svelte +10 -10
- package/dist/ui/menuList/menu-list.scss +120 -120
- package/dist/ui/panel/Panel.demo.svelte +169 -169
- package/dist/ui/panel/Panel.svelte +96 -96
- package/dist/ui/panel/PanelGrid.svelte +62 -62
- package/dist/ui/panel/PanelSlide.svelte +156 -156
- package/dist/ui/panel/Paneler.svelte +63 -63
- package/dist/ui/panel/panel.scss +32 -32
- package/dist/ui/popper/Popper.demo.svelte +92 -92
- package/dist/ui/popper/Popper.svelte +160 -160
- package/dist/ui/popper/popper.scss +108 -108
- package/dist/ui/preview/Preview.svelte +41 -41
- package/dist/ui/serviceBox/ServiceBox.svelte +24 -24
- package/dist/ui/startMenu/BootMenu.svelte +102 -102
- package/dist/ui/startMenu/boot-menu.scss +86 -86
- package/dist/ui/taskbar/TaskBarContent.svelte +20 -20
- package/dist/ui/taskbar/Taskbar.svelte +26 -26
- package/dist/ui/taskbar/taskbar.scss +28 -28
- package/dist/ui/themeswitcher/ThemeSwitcher.svelte +18 -18
- package/dist/ui/toast/Toast.demo.svelte +19 -19
- package/dist/ui/toast/Toast.svelte +60 -60
- package/dist/ui/toast/Toaster.svelte +18 -18
- package/dist/ui/toggleBar/ToggleBar.demo.svelte +114 -114
- package/dist/ui/toggleBar/ToggleBar.svelte +58 -58
- package/dist/ui/toggleBar/ToggleBar.svelte.d.ts +1 -1
- package/dist/ui/toggleBar/toggle-bar.scss +45 -45
- package/dist/ui/toolBar/ToolBar.demo.svelte +98 -98
- package/dist/ui/toolBar/ToolBar.svelte +30 -30
- package/dist/ui/toolBar/toolbar.scss +32 -32
- package/dist/ui/tree/Tree.demo.svelte +84 -84
- package/dist/ui/tree/Tree.preview.svelte +19 -19
- package/dist/ui/tree/Tree.svelte +182 -182
- package/dist/ui/tree/tree.scss +38 -38
- package/dist/ui/window/Window.demo.svelte +111 -111
- package/dist/ui/window/Window.svelte +177 -177
- package/dist/ui/window/window.scss +66 -66
- package/dist/utils/content/Content.svelte +78 -78
- package/dist/utils/contextRooter/ContextRooter.demo.svelte +33 -33
- package/dist/utils/contextRooter/ContextRooter.svelte +6 -6
- package/dist/utils/css/Css.demo.svelte +5 -5
- package/dist/utils/css/Css.svelte +64 -64
- package/dist/utils/effects/transitions.js +6 -6
- package/dist/utils/looper/Looper.demo.svelte +36 -36
- package/dist/utils/looper/Looper.svelte +47 -47
- package/dist/utils/slotted/Slotted.svelte +21 -21
- package/dist/utils/stylesheet/StyleSheet.demo.svelte +28 -28
- package/dist/utils/stylesheet/StyleSheet.svelte +30 -30
- package/dist/utils/stylesheet/containerConfig.scss +7 -7
- package/dist/utils/stylesheet/stylesheet.scss +147 -147
- package/dist/utils/uses/sx4u/sx4uPreprocess.js +34 -34
- package/package.json +4 -4
|
@@ -1,48 +1,48 @@
|
|
|
1
|
-
<script lang="ts">
|
|
2
|
-
import ComponentDemo from '../../base/demoer/DemoerComponent.svelte';
|
|
3
|
-
import MenuList from '../menuList/MenuList.svelte';
|
|
4
|
-
import MenuListItem from '../menuList/MenuListItem.svelte';
|
|
5
|
-
|
|
6
|
-
import Frame from './Frame.svelte';
|
|
7
|
-
</script>
|
|
8
|
-
|
|
9
|
-
<ComponentDemo component="Frame">
|
|
10
|
-
<div class="flex-h gap-medium border overflow-hidden">
|
|
11
|
-
<Frame style="height:350px;width:80%">
|
|
12
|
-
{#snippet drawerTop()}
|
|
13
|
-
<div class="pad">
|
|
14
|
-
<h4>Menu header</h4>
|
|
15
|
-
</div>
|
|
16
|
-
{/snippet}
|
|
17
|
-
{#snippet drawerContent()}
|
|
18
|
-
<h5>A menu</h5>
|
|
19
|
-
<MenuList style="width:100%">
|
|
20
|
-
<MenuListItem>menu item</MenuListItem>
|
|
21
|
-
<MenuListItem>menu item</MenuListItem>
|
|
22
|
-
<MenuListItem>menu item</MenuListItem>
|
|
23
|
-
<MenuListItem>menu item</MenuListItem>
|
|
24
|
-
<MenuListItem>menu item</MenuListItem>
|
|
25
|
-
</MenuList>
|
|
26
|
-
<h5>A menu again</h5>
|
|
27
|
-
<MenuList style="width:100%">
|
|
28
|
-
<MenuListItem>menu item</MenuListItem>
|
|
29
|
-
<MenuListItem>menu item</MenuListItem>
|
|
30
|
-
<MenuListItem>menu item</MenuListItem>
|
|
31
|
-
<MenuListItem>menu item</MenuListItem>
|
|
32
|
-
<MenuListItem>menu item</MenuListItem>
|
|
33
|
-
</MenuList>
|
|
34
|
-
{/snippet}
|
|
35
|
-
{#snippet frameTop()}
|
|
36
|
-
<h4>Frame title</h4>
|
|
37
|
-
{/snippet}
|
|
38
|
-
{#snippet frameContent()}
|
|
39
|
-
<div class="pad">
|
|
40
|
-
<h5>Frame content</h5>
|
|
41
|
-
</div>
|
|
42
|
-
{/snippet}
|
|
43
|
-
{#snippet frameBottom()}
|
|
44
|
-
<div class="pad">bottom zone</div>
|
|
45
|
-
{/snippet}
|
|
46
|
-
</Frame>
|
|
47
|
-
</div>
|
|
48
|
-
</ComponentDemo>
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import ComponentDemo from '../../base/demoer/DemoerComponent.svelte';
|
|
3
|
+
import MenuList from '../menuList/MenuList.svelte';
|
|
4
|
+
import MenuListItem from '../menuList/MenuListItem.svelte';
|
|
5
|
+
|
|
6
|
+
import Frame from './Frame.svelte';
|
|
7
|
+
</script>
|
|
8
|
+
|
|
9
|
+
<ComponentDemo component="Frame">
|
|
10
|
+
<div class="flex-h gap-medium border overflow-hidden">
|
|
11
|
+
<Frame style="height:350px;width:80%">
|
|
12
|
+
{#snippet drawerTop()}
|
|
13
|
+
<div class="pad">
|
|
14
|
+
<h4>Menu header</h4>
|
|
15
|
+
</div>
|
|
16
|
+
{/snippet}
|
|
17
|
+
{#snippet drawerContent()}
|
|
18
|
+
<h5>A menu</h5>
|
|
19
|
+
<MenuList style="width:100%">
|
|
20
|
+
<MenuListItem>menu item</MenuListItem>
|
|
21
|
+
<MenuListItem>menu item</MenuListItem>
|
|
22
|
+
<MenuListItem>menu item</MenuListItem>
|
|
23
|
+
<MenuListItem>menu item</MenuListItem>
|
|
24
|
+
<MenuListItem>menu item</MenuListItem>
|
|
25
|
+
</MenuList>
|
|
26
|
+
<h5>A menu again</h5>
|
|
27
|
+
<MenuList style="width:100%">
|
|
28
|
+
<MenuListItem>menu item</MenuListItem>
|
|
29
|
+
<MenuListItem>menu item</MenuListItem>
|
|
30
|
+
<MenuListItem>menu item</MenuListItem>
|
|
31
|
+
<MenuListItem>menu item</MenuListItem>
|
|
32
|
+
<MenuListItem>menu item</MenuListItem>
|
|
33
|
+
</MenuList>
|
|
34
|
+
{/snippet}
|
|
35
|
+
{#snippet frameTop()}
|
|
36
|
+
<h4>Frame title</h4>
|
|
37
|
+
{/snippet}
|
|
38
|
+
{#snippet frameContent()}
|
|
39
|
+
<div class="pad">
|
|
40
|
+
<h5>Frame content</h5>
|
|
41
|
+
</div>
|
|
42
|
+
{/snippet}
|
|
43
|
+
{#snippet frameBottom()}
|
|
44
|
+
<div class="pad">bottom zone</div>
|
|
45
|
+
{/snippet}
|
|
46
|
+
</Frame>
|
|
47
|
+
</div>
|
|
48
|
+
</ComponentDemo>
|
|
@@ -1,92 +1,92 @@
|
|
|
1
|
-
<svelte:options />
|
|
2
|
-
|
|
3
|
-
<script lang="ts">
|
|
4
|
-
import Drawer from '../../navigation/drawer/Drawer.svelte';
|
|
5
|
-
import type { DrawerProps } from '../../navigation/drawer/types.js';
|
|
6
|
-
import Slotted from '../../utils/slotted/Slotted.svelte';
|
|
7
|
-
import type { FrameProps } from './types.js';
|
|
8
|
-
|
|
9
|
-
const defaultDrawerProps: DrawerProps = {
|
|
10
|
-
isOpen: false,
|
|
11
|
-
hideCloseIcon: true,
|
|
12
|
-
showOpenerIcon: true,
|
|
13
|
-
stickTo: 'left',
|
|
14
|
-
flow: 'relative',
|
|
15
|
-
defaultWidth: '200px'
|
|
16
|
-
};
|
|
17
|
-
|
|
18
|
-
let {
|
|
19
|
-
class: className = '',
|
|
20
|
-
element = $bindable<HTMLDivElement>(),
|
|
21
|
-
frameDrawerRef,
|
|
22
|
-
elementNav,
|
|
23
|
-
style = '',
|
|
24
|
-
drawerWidth = '200px',
|
|
25
|
-
drawerProps = { ...defaultDrawerProps },
|
|
26
|
-
children,
|
|
27
|
-
frameNavHeader,
|
|
28
|
-
drawerTop,
|
|
29
|
-
drawerContent,
|
|
30
|
-
drawerFooter,
|
|
31
|
-
drawerTitle,
|
|
32
|
-
drawerIcon,
|
|
33
|
-
drawerPrimary,
|
|
34
|
-
drawerSecondary,
|
|
35
|
-
frameTop,
|
|
36
|
-
frameContent,
|
|
37
|
-
frameBottom,
|
|
38
|
-
...rest
|
|
39
|
-
}: FrameProps = $props();
|
|
40
|
-
|
|
41
|
-
let menuOpen = $state(true);
|
|
42
|
-
|
|
43
|
-
export const actions = {
|
|
44
|
-
openNavLeft: () => {
|
|
45
|
-
menuOpen = true;
|
|
46
|
-
},
|
|
47
|
-
toggleNavLeft: () => {
|
|
48
|
-
menuOpen = !menuOpen;
|
|
49
|
-
},
|
|
50
|
-
closeNavLeft: () => {
|
|
51
|
-
menuOpen = !menuOpen;
|
|
52
|
-
}
|
|
53
|
-
};
|
|
54
|
-
</script>
|
|
55
|
-
|
|
56
|
-
<div bind:this={element} class="frame {className}" {style} {...rest}>
|
|
57
|
-
<div class="frame-container">
|
|
58
|
-
<div bind:this={elementNav} class="frame-container-nav">
|
|
59
|
-
{#if frameDrawerRef?.isOpen}
|
|
60
|
-
<Slotted child={frameNavHeader}></Slotted>
|
|
61
|
-
{/if}
|
|
62
|
-
<Drawer
|
|
63
|
-
bind:this={frameDrawerRef}
|
|
64
|
-
bind:isOpen={menuOpen}
|
|
65
|
-
style="flex:1;position:relative;"
|
|
66
|
-
defaultWidth={drawerWidth}
|
|
67
|
-
{...defaultDrawerProps}
|
|
68
|
-
{...drawerProps}
|
|
69
|
-
>
|
|
70
|
-
<Slotted child={drawerProps?.drawerIcon ?? drawerIcon} />
|
|
71
|
-
<Slotted child={drawerProps?.drawerFooter ?? drawerFooter} />
|
|
72
|
-
<Slotted child={drawerProps?.drawerTitle ?? drawerTitle} />
|
|
73
|
-
<Slotted child={drawerProps?.drawerPrimary ?? drawerPrimary} />
|
|
74
|
-
<Slotted child={drawerProps?.drawerSecondary ?? drawerSecondary} />
|
|
75
|
-
<Slotted child={drawerProps?.drawerTop ?? drawerTop} />
|
|
76
|
-
<Slotted child={drawerContent} />
|
|
77
|
-
</Drawer>
|
|
78
|
-
</div>
|
|
79
|
-
<div class="frame-container-main">
|
|
80
|
-
<Slotted child={frameTop}></Slotted>
|
|
81
|
-
|
|
82
|
-
<div class="frame-container-main-content">
|
|
83
|
-
<Slotted child={frameContent}></Slotted>
|
|
84
|
-
</div>
|
|
85
|
-
<Slotted child={frameBottom}></Slotted>
|
|
86
|
-
</div>
|
|
87
|
-
</div>
|
|
88
|
-
</div>
|
|
89
|
-
|
|
1
|
+
<svelte:options />
|
|
2
|
+
|
|
3
|
+
<script lang="ts">
|
|
4
|
+
import Drawer from '../../navigation/drawer/Drawer.svelte';
|
|
5
|
+
import type { DrawerProps } from '../../navigation/drawer/types.js';
|
|
6
|
+
import Slotted from '../../utils/slotted/Slotted.svelte';
|
|
7
|
+
import type { FrameProps } from './types.js';
|
|
8
|
+
|
|
9
|
+
const defaultDrawerProps: DrawerProps = {
|
|
10
|
+
isOpen: false,
|
|
11
|
+
hideCloseIcon: true,
|
|
12
|
+
showOpenerIcon: true,
|
|
13
|
+
stickTo: 'left',
|
|
14
|
+
flow: 'relative',
|
|
15
|
+
defaultWidth: '200px'
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
let {
|
|
19
|
+
class: className = '',
|
|
20
|
+
element = $bindable<HTMLDivElement>(),
|
|
21
|
+
frameDrawerRef,
|
|
22
|
+
elementNav,
|
|
23
|
+
style = '',
|
|
24
|
+
drawerWidth = '200px',
|
|
25
|
+
drawerProps = { ...defaultDrawerProps },
|
|
26
|
+
children,
|
|
27
|
+
frameNavHeader,
|
|
28
|
+
drawerTop,
|
|
29
|
+
drawerContent,
|
|
30
|
+
drawerFooter,
|
|
31
|
+
drawerTitle,
|
|
32
|
+
drawerIcon,
|
|
33
|
+
drawerPrimary,
|
|
34
|
+
drawerSecondary,
|
|
35
|
+
frameTop,
|
|
36
|
+
frameContent,
|
|
37
|
+
frameBottom,
|
|
38
|
+
...rest
|
|
39
|
+
}: FrameProps = $props();
|
|
40
|
+
|
|
41
|
+
let menuOpen = $state(true);
|
|
42
|
+
|
|
43
|
+
export const actions = {
|
|
44
|
+
openNavLeft: () => {
|
|
45
|
+
menuOpen = true;
|
|
46
|
+
},
|
|
47
|
+
toggleNavLeft: () => {
|
|
48
|
+
menuOpen = !menuOpen;
|
|
49
|
+
},
|
|
50
|
+
closeNavLeft: () => {
|
|
51
|
+
menuOpen = !menuOpen;
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
</script>
|
|
55
|
+
|
|
56
|
+
<div bind:this={element} class="frame {className}" {style} {...rest}>
|
|
57
|
+
<div class="frame-container">
|
|
58
|
+
<div bind:this={elementNav} class="frame-container-nav">
|
|
59
|
+
{#if frameDrawerRef?.isOpen}
|
|
60
|
+
<Slotted child={frameNavHeader}></Slotted>
|
|
61
|
+
{/if}
|
|
62
|
+
<Drawer
|
|
63
|
+
bind:this={frameDrawerRef}
|
|
64
|
+
bind:isOpen={menuOpen}
|
|
65
|
+
style="flex:1;position:relative;"
|
|
66
|
+
defaultWidth={drawerWidth}
|
|
67
|
+
{...defaultDrawerProps}
|
|
68
|
+
{...drawerProps}
|
|
69
|
+
>
|
|
70
|
+
<Slotted child={drawerProps?.drawerIcon ?? drawerIcon} />
|
|
71
|
+
<Slotted child={drawerProps?.drawerFooter ?? drawerFooter} />
|
|
72
|
+
<Slotted child={drawerProps?.drawerTitle ?? drawerTitle} />
|
|
73
|
+
<Slotted child={drawerProps?.drawerPrimary ?? drawerPrimary} />
|
|
74
|
+
<Slotted child={drawerProps?.drawerSecondary ?? drawerSecondary} />
|
|
75
|
+
<Slotted child={drawerProps?.drawerTop ?? drawerTop} />
|
|
76
|
+
<Slotted child={drawerContent} />
|
|
77
|
+
</Drawer>
|
|
78
|
+
</div>
|
|
79
|
+
<div class="frame-container-main">
|
|
80
|
+
<Slotted child={frameTop}></Slotted>
|
|
81
|
+
|
|
82
|
+
<div class="frame-container-main-content">
|
|
83
|
+
<Slotted child={frameContent}></Slotted>
|
|
84
|
+
</div>
|
|
85
|
+
<Slotted child={frameBottom}></Slotted>
|
|
86
|
+
</div>
|
|
87
|
+
</div>
|
|
88
|
+
</div>
|
|
89
|
+
|
|
90
90
|
<style global>:root {
|
|
91
91
|
--frame-background-color: var(--sld-color-paper);
|
|
92
92
|
--frame-backdrop-filter: blur(30px);
|
|
@@ -135,4 +135,4 @@
|
|
|
135
135
|
flex: 1 1 0;
|
|
136
136
|
overflow: hidden;
|
|
137
137
|
position: relative;
|
|
138
|
-
}</style>
|
|
138
|
+
}</style>
|
package/dist/ui/frame/frame.scss
CHANGED
|
@@ -1,46 +1,46 @@
|
|
|
1
|
-
@use "../../styles/slotui-mixins.scss";
|
|
2
|
-
|
|
3
|
-
:root {
|
|
4
|
-
--frame-background-color: var(--sld-color-paper);
|
|
5
|
-
--frame-backdrop-filter: blur(30px);
|
|
6
|
-
--frame-container-border-right: var(--sld-color-primary);
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
.frame {
|
|
10
|
-
z-index: 1;
|
|
11
|
-
height: 100%;
|
|
12
|
-
@include slotui-mixins.flex("column");
|
|
13
|
-
overflow: hidden;
|
|
14
|
-
position: relative;
|
|
15
|
-
background-color: var(--frame-background-color);
|
|
16
|
-
--moz-backdrop-filter: var(--frame-backdrop-filter);
|
|
17
|
-
backdrop-filter: var(--frame-backdrop-filter);
|
|
18
|
-
overflow: hidden;
|
|
19
|
-
|
|
20
|
-
&-container {
|
|
21
|
-
@include slotui-mixins.flex("row");
|
|
22
|
-
@include slotui-mixins.flex-main();
|
|
23
|
-
position: relative;
|
|
24
|
-
overflow: hidden;
|
|
25
|
-
&-nav {
|
|
26
|
-
@include slotui-mixins.flex("column");
|
|
27
|
-
@include slotui-mixins.flex-main();
|
|
28
|
-
z-index: 1;
|
|
29
|
-
border-right: 1px solid var(--frame-container-border-right);
|
|
30
|
-
position: relative;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
&-main {
|
|
34
|
-
flex: 1;
|
|
35
|
-
height: 100%;
|
|
36
|
-
overflow: hidden;
|
|
37
|
-
@include slotui-mixins.flex("column");
|
|
38
|
-
|
|
39
|
-
&-content {
|
|
40
|
-
@include slotui-mixins.flex-main();
|
|
41
|
-
overflow: hidden;
|
|
42
|
-
position: relative;
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
}
|
|
1
|
+
@use "../../styles/slotui-mixins.scss";
|
|
2
|
+
|
|
3
|
+
:root {
|
|
4
|
+
--frame-background-color: var(--sld-color-paper);
|
|
5
|
+
--frame-backdrop-filter: blur(30px);
|
|
6
|
+
--frame-container-border-right: var(--sld-color-primary);
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.frame {
|
|
10
|
+
z-index: 1;
|
|
11
|
+
height: 100%;
|
|
12
|
+
@include slotui-mixins.flex("column");
|
|
13
|
+
overflow: hidden;
|
|
14
|
+
position: relative;
|
|
15
|
+
background-color: var(--frame-background-color);
|
|
16
|
+
--moz-backdrop-filter: var(--frame-backdrop-filter);
|
|
17
|
+
backdrop-filter: var(--frame-backdrop-filter);
|
|
18
|
+
overflow: hidden;
|
|
19
|
+
|
|
20
|
+
&-container {
|
|
21
|
+
@include slotui-mixins.flex("row");
|
|
22
|
+
@include slotui-mixins.flex-main();
|
|
23
|
+
position: relative;
|
|
24
|
+
overflow: hidden;
|
|
25
|
+
&-nav {
|
|
26
|
+
@include slotui-mixins.flex("column");
|
|
27
|
+
@include slotui-mixins.flex-main();
|
|
28
|
+
z-index: 1;
|
|
29
|
+
border-right: 1px solid var(--frame-container-border-right);
|
|
30
|
+
position: relative;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
&-main {
|
|
34
|
+
flex: 1;
|
|
35
|
+
height: 100%;
|
|
36
|
+
overflow: hidden;
|
|
37
|
+
@include slotui-mixins.flex("column");
|
|
38
|
+
|
|
39
|
+
&-content {
|
|
40
|
+
@include slotui-mixins.flex-main();
|
|
41
|
+
overflow: hidden;
|
|
42
|
+
position: relative;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
@@ -1,62 +1,62 @@
|
|
|
1
|
-
<script lang="ts">
|
|
2
|
-
import Login from './Login.svelte';
|
|
3
|
-
// import Input from "../input/Input.svelte";
|
|
4
|
-
|
|
5
|
-
/* demo */
|
|
6
|
-
import { defaultsArgs, defaultsArgsFromProps } from '../../base/demoer/demoer.utils.js';
|
|
7
|
-
import ComponentDemo from '../../base/demoer/DemoerComponent.svelte';
|
|
8
|
-
import DemoerCode from '../../base/demoer/DemoerCode.svelte';
|
|
9
|
-
import Demoer from '../../base/demoer/Demoer.svelte';
|
|
10
|
-
import DemoPage from '../../base/demoer/DemoPage.svelte';
|
|
11
|
-
import Icon from '../../base/icon/Icon.svelte';
|
|
12
|
-
import { uiPresets } from '../../utils/engine/presets.js';
|
|
13
|
-
import Button from '../../controls/button/Button.svelte';
|
|
14
|
-
import DemoerComponent from '../../base/demoer/DemoerComponent.svelte';
|
|
15
|
-
|
|
16
|
-
import { parameters, componentArgs } from './types.js';
|
|
17
|
-
|
|
18
|
-
let submitting: boolean = false;
|
|
19
|
-
let showLogin: boolean = true;
|
|
20
|
-
|
|
21
|
-
function validate() {
|
|
22
|
-
submitting = true;
|
|
23
|
-
setTimeout(() => {
|
|
24
|
-
submitting = false;
|
|
25
|
-
showLogin = false;
|
|
26
|
-
}, 2000);
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
let codeSlot = ``;
|
|
30
|
-
</script>
|
|
31
|
-
|
|
32
|
-
<ComponentDemo component="Login">
|
|
33
|
-
<DemoPage component="Chipper" code={codeSlot}>
|
|
34
|
-
<Demoer {parameters} {componentArgs}>
|
|
35
|
-
{#snippet children({ activeParams })}
|
|
36
|
-
<Login {showLogin} {submitting}>
|
|
37
|
-
{#snippet loginAvatar()}
|
|
38
|
-
<Icon icon="mdi:user" />
|
|
39
|
-
{/snippet}
|
|
40
|
-
{#snippet loginForm()}
|
|
41
|
-
<form
|
|
42
|
-
class="h-full w-full flex-v flex-align-middle-center"
|
|
43
|
-
method="post"
|
|
44
|
-
on:submit|preventDefault={validate}
|
|
45
|
-
>
|
|
46
|
-
<div class="pad-2">
|
|
47
|
-
<input name="email" type="text" value="..." />
|
|
48
|
-
</div>
|
|
49
|
-
<div class="pad-2">
|
|
50
|
-
<input name="password" type="password" />
|
|
51
|
-
</div>
|
|
52
|
-
<Button type="submit" width="medium" value="login" loading={false}>Login</Button>
|
|
53
|
-
</form>
|
|
54
|
-
{/snippet}
|
|
55
|
-
</Login>
|
|
56
|
-
{/snippet}
|
|
57
|
-
</Demoer>
|
|
58
|
-
</DemoPage>
|
|
59
|
-
<div class="flex-v gap-large">
|
|
60
|
-
<DemoerCode title="myContext" code={codeSlot}></DemoerCode>
|
|
61
|
-
</div>
|
|
62
|
-
</ComponentDemo>
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import Login from './Login.svelte';
|
|
3
|
+
// import Input from "../input/Input.svelte";
|
|
4
|
+
|
|
5
|
+
/* demo */
|
|
6
|
+
import { defaultsArgs, defaultsArgsFromProps } from '../../base/demoer/demoer.utils.js';
|
|
7
|
+
import ComponentDemo from '../../base/demoer/DemoerComponent.svelte';
|
|
8
|
+
import DemoerCode from '../../base/demoer/DemoerCode.svelte';
|
|
9
|
+
import Demoer from '../../base/demoer/Demoer.svelte';
|
|
10
|
+
import DemoPage from '../../base/demoer/DemoPage.svelte';
|
|
11
|
+
import Icon from '../../base/icon/Icon.svelte';
|
|
12
|
+
import { uiPresets } from '../../utils/engine/presets.js';
|
|
13
|
+
import Button from '../../controls/button/Button.svelte';
|
|
14
|
+
import DemoerComponent from '../../base/demoer/DemoerComponent.svelte';
|
|
15
|
+
|
|
16
|
+
import { parameters, componentArgs } from './types.js';
|
|
17
|
+
|
|
18
|
+
let submitting: boolean = false;
|
|
19
|
+
let showLogin: boolean = true;
|
|
20
|
+
|
|
21
|
+
function validate() {
|
|
22
|
+
submitting = true;
|
|
23
|
+
setTimeout(() => {
|
|
24
|
+
submitting = false;
|
|
25
|
+
showLogin = false;
|
|
26
|
+
}, 2000);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
let codeSlot = ``;
|
|
30
|
+
</script>
|
|
31
|
+
|
|
32
|
+
<ComponentDemo component="Login">
|
|
33
|
+
<DemoPage component="Chipper" code={codeSlot}>
|
|
34
|
+
<Demoer {parameters} {componentArgs}>
|
|
35
|
+
{#snippet children({ activeParams })}
|
|
36
|
+
<Login {showLogin} {submitting}>
|
|
37
|
+
{#snippet loginAvatar()}
|
|
38
|
+
<Icon icon="mdi:user" />
|
|
39
|
+
{/snippet}
|
|
40
|
+
{#snippet loginForm()}
|
|
41
|
+
<form
|
|
42
|
+
class="h-full w-full flex-v flex-align-middle-center"
|
|
43
|
+
method="post"
|
|
44
|
+
on:submit|preventDefault={validate}
|
|
45
|
+
>
|
|
46
|
+
<div class="pad-2">
|
|
47
|
+
<input name="email" type="text" value="..." />
|
|
48
|
+
</div>
|
|
49
|
+
<div class="pad-2">
|
|
50
|
+
<input name="password" type="password" />
|
|
51
|
+
</div>
|
|
52
|
+
<Button type="submit" width="medium" value="login" loading={false}>Login</Button>
|
|
53
|
+
</form>
|
|
54
|
+
{/snippet}
|
|
55
|
+
</Login>
|
|
56
|
+
{/snippet}
|
|
57
|
+
</Demoer>
|
|
58
|
+
</DemoPage>
|
|
59
|
+
<div class="flex-v gap-large">
|
|
60
|
+
<DemoerCode title="myContext" code={codeSlot}></DemoerCode>
|
|
61
|
+
</div>
|
|
62
|
+
</ComponentDemo>
|