@enki-tek/fms-web-components 0.0.89 → 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- package/components/Accordion/Accordion.svelte +3 -0
- package/components/Accordion/AccordionItem.svelte +3 -0
- package/components/Badge/Badge.svelte +3 -0
- package/components/Breadcrumb/Breadcrumb.svelte +3 -0
- package/components/Button/Button.svelte +3 -0
- package/components/CardIcon/CardIcon.svelte +3 -0
- package/components/CardIcon/CardiconBody.svelte +3 -0
- package/components/CardIcon/CardiconSubtitle.svelte +3 -0
- package/components/CardIcon/CardiconTitle.svelte +3 -0
- package/components/Charts/Barchart.svelte +74 -0
- package/components/Charts/Barchart.svelte.d.ts +23 -0
- package/components/Charts/DoughnutChart.svelte +73 -0
- package/components/Charts/DoughnutChart.svelte.d.ts +29 -0
- package/components/Charts/LineChart.svelte +62 -0
- package/components/Charts/LineChart.svelte.d.ts +23 -0
- package/components/Charts/PieChart.svelte +75 -0
- package/components/Charts/PieChart.svelte.d.ts +29 -0
- package/components/CheckBox/Checkbox.svelte +3 -0
- package/components/Dropdown/Dropdown.svelte +3 -0
- package/components/Dropdown/DropdownItem.svelte +3 -0
- package/components/EnkiSidbar/EnkiSidebar.svelte +3 -0
- package/components/EnkiSidbar/NavIcon.svelte +3 -0
- package/components/EnkiSidbar/NavItem.svelte +3 -0
- package/components/EnkiSidbar/NavLink.svelte +3 -0
- package/components/Header/Brand.svelte +25 -16
- package/components/Header/Header.scss +40 -34
- package/components/Header/Header.svelte +26 -20
- package/components/Header/Header.svelte.d.ts +6 -2
- package/components/Header/HeaderDropDownLink.svelte +11 -0
- package/components/Header/HeaderDropDownLink.svelte.d.ts +29 -0
- package/components/Header/HeaderDropDownLinkItem.svelte +9 -0
- package/components/Header/HeaderDropDownLinkItem.svelte.d.ts +31 -0
- package/components/Header/HeaderItem.svelte +9 -0
- package/components/Header/HeaderLink.svelte +9 -0
- package/components/Header/HeaderLink.svelte.d.ts +31 -0
- package/components/Header/HeaderLinks.svelte +9 -0
- package/components/Header/HeaderLinks.svelte.d.ts +27 -0
- package/components/Header/UserAvatar.svelte +12 -3
- package/components/Layout/Content.svelte +9 -0
- package/components/Layout/Content.svelte.d.ts +29 -0
- package/components/Layout/Footer.svelte +2 -0
- package/components/Layout/Layout.svelte +6 -0
- package/components/Layout/Layout.svelte.d.ts +27 -0
- package/components/Layout/Page.svelte +35 -9
- package/components/Layout/Page.svelte.d.ts +6 -2
- package/components/Layout/SortableGrid.svelte +28 -0
- package/components/Layout/SortableGrid.svelte.d.ts +27 -0
- package/components/ModalWindow/Modal.svelte +3 -0
- package/components/ModalWindow/ModalBody.svelte +3 -0
- package/components/ModalWindow/ModalFooter.svelte +3 -0
- package/components/ModalWindow/ModalHeader.svelte +3 -0
- package/components/NotFound/NotFound.svelte +3 -0
- package/components/Pagination/Pagination.svelte +3 -0
- package/components/RadioButton/RadioButton.svelte +3 -0
- package/components/Sidebar/MenuGroup.svelte +108 -0
- package/components/Sidebar/MenuGroup.svelte.d.ts +29 -0
- package/components/Sidebar/MenuItem.svelte +122 -0
- package/components/Sidebar/MenuItem.svelte.d.ts +35 -0
- package/components/Sidebar/SideBarMenu.svelte +148 -0
- package/components/Sidebar/SideBarMenu.svelte.d.ts +27 -0
- package/components/Sidebar/Sidebar.scss +29 -0
- package/components/Sidebar/Sidebar.svelte +29 -0
- package/components/StatusCard/StatusCard.scss +35 -0
- package/components/StatusCard/StatusCard.svelte +42 -0
- package/components/StatusCard/StatusCard.svelte.d.ts +27 -0
- package/components/StatusCard/StatusCardBody.svelte +57 -0
- package/components/StatusCard/StatusCardBody.svelte.d.ts +31 -0
- package/components/StatusCard/StatusCardTitle.svelte +47 -0
- package/components/StatusCard/StatusCardTitle.svelte.d.ts +29 -0
- package/components/Switches/Switch.svelte +3 -0
- package/components/Tab/Tab.svelte +3 -0
- package/components/TextField/TextField.svelte +3 -0
- package/components/Toast/Toast.scss +0 -2
- package/components/Toast/Toast.svelte +7 -6
- package/components/Tooltip/Tooltip.svelte +3 -0
- package/components/WidgetCard/Card.scss +108 -0
- package/components/WidgetCard/SensorStatusCard.svelte +130 -0
- package/components/WidgetCard/SensorStatusCard.svelte.d.ts +27 -0
- package/components/WidgetCard/StateCard.svelte +133 -0
- package/components/WidgetCard/StateCard.svelte.d.ts +29 -0
- package/components/WidgetCard/WidgetCard.svelte +152 -0
- package/components/WidgetCard/WidgetCard.svelte.d.ts +35 -0
- package/components/WidgetCard/WidgetCardBody.svelte +13 -0
- package/components/WidgetCard/WidgetCardBody.svelte.d.ts +27 -0
- package/components/common.scss +4 -0
- package/components/variable.scss +13 -3
- package/package.json +30 -2
@@ -1,64 +1,70 @@
|
|
1
1
|
@import './../variable.scss';
|
2
2
|
|
3
3
|
:global(.headerLogo) {
|
4
|
-
|
5
|
-
|
6
|
-
|
4
|
+
display: flex;
|
5
|
+
flex-direction: column;
|
6
|
+
color: $black;
|
7
|
+
filter: grayscale(100%) brightness(0) invert(1);
|
7
8
|
}
|
8
9
|
|
9
10
|
:global(.headerLogo img) {
|
10
|
-
|
11
|
-
|
11
|
+
width: 144px;
|
12
|
+
height: 34px;
|
13
|
+
}
|
14
|
+
|
15
|
+
.bi {
|
16
|
+
display: inline-block;
|
17
|
+
width: 1rem;
|
18
|
+
height: 1rem;
|
12
19
|
}
|
13
20
|
|
14
21
|
:global(.headerIcons) {
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
22
|
+
display: flex;
|
23
|
+
align-items: center;
|
24
|
+
justify-content: center;
|
25
|
+
border: 1px solid $secondary;
|
26
|
+
border-radius: 50%;
|
27
|
+
color: $secondary;
|
28
|
+
padding: 8px 9px;
|
29
|
+
height: 45px;
|
30
|
+
width: 45px;
|
31
|
+
font-weight: bold;
|
26
32
|
}
|
27
33
|
|
28
|
-
.avatar-text{
|
29
|
-
|
30
|
-
|
31
|
-
|
34
|
+
.avatar-text {
|
35
|
+
color: black;
|
36
|
+
margin-top: 2px;
|
37
|
+
text-transform: capitalize;
|
32
38
|
}
|
33
39
|
|
34
40
|
:global(.headerIcons i) {
|
35
|
-
|
36
|
-
|
41
|
+
padding: 0 4px;
|
42
|
+
font-size: 18px;
|
37
43
|
}
|
38
44
|
|
39
45
|
:global(.userProfile) {
|
40
|
-
|
41
|
-
|
42
|
-
|
46
|
+
display: flex;
|
47
|
+
align-items: center;
|
48
|
+
gap: 15px;
|
43
49
|
}
|
44
50
|
|
45
51
|
:global(.userProfileBox) {
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
52
|
+
display: flex;
|
53
|
+
flex-direction: column;
|
54
|
+
align-items: flex-end;
|
55
|
+
color: $gray-600;
|
50
56
|
}
|
51
57
|
|
52
58
|
:global(.userProfile img) {
|
53
|
-
|
54
|
-
|
55
|
-
|
59
|
+
width: 45px;
|
60
|
+
height: 45px;
|
61
|
+
border-radius: 50%;
|
56
62
|
}
|
57
63
|
|
58
64
|
:global(.nav-link:focus, .nav-link:hover) {
|
59
|
-
|
65
|
+
color: $secondary;
|
60
66
|
}
|
61
67
|
|
62
68
|
:global(a:hover) {
|
63
|
-
|
69
|
+
color: $black;
|
64
70
|
}
|
@@ -1,27 +1,24 @@
|
|
1
1
|
<script>
|
2
|
-
|
3
|
-
Collapse,
|
4
|
-
NavbarToggler,
|
5
|
-
Nav,
|
6
|
-
Navbar,
|
7
|
-
} from 'sveltestrap';
|
2
|
+
|
8
3
|
|
9
|
-
let isOpen = false;
|
10
|
-
|
11
|
-
function handleUpdate(event) {
|
12
|
-
isOpen = event.detail.isOpen;
|
13
|
-
}
|
14
4
|
</script>
|
15
5
|
|
16
|
-
<
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
6
|
+
<header class="navbar sticky-top bg-dark p-0 flex-md-nowrap" data-bs-theme="dark">
|
7
|
+
<nav class="navbar navbar-expand-md navbar-dark fixed-top bg-dark">
|
8
|
+
<div class="container-fluid">
|
9
|
+
<slot name="brand"></slot>
|
10
|
+
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarCollapse" aria-controls="navbarCollapse" aria-expanded="false" aria-label="Toggle navigation">
|
11
|
+
<span class="navbar-toggler-icon"></span>
|
12
|
+
</button>
|
13
|
+
<div class="collapse navbar-collapse justify-content-md-end" id="navbarCollapse">
|
14
|
+
<slot name="menu"></slot>
|
15
|
+
<hr class="my-3 d-md-none">
|
16
|
+
<slot name="footer-menu"></slot>
|
17
|
+
<slot name="nav-menu"></slot>
|
18
|
+
</div>
|
19
|
+
</div>
|
20
|
+
</nav>
|
21
|
+
</header>
|
25
22
|
|
26
23
|
<style>@import url(https://fonts.googleapis.com/icon?family=Material+Icons);
|
27
24
|
@import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap");
|
@@ -33,11 +30,17 @@
|
|
33
30
|
display: flex;
|
34
31
|
flex-direction: column;
|
35
32
|
color: #000000;
|
33
|
+
filter: grayscale(100%) brightness(0) invert(1);
|
36
34
|
}
|
37
35
|
:global(.headerLogo img) {
|
38
36
|
width: 144px;
|
39
37
|
height: 34px;
|
40
38
|
}
|
39
|
+
.bi {
|
40
|
+
display: inline-block;
|
41
|
+
width: 1rem;
|
42
|
+
height: 1rem;
|
43
|
+
}
|
41
44
|
:global(.headerIcons) {
|
42
45
|
display: flex;
|
43
46
|
align-items: center;
|
@@ -642,4 +645,7 @@
|
|
642
645
|
font-style: normal;
|
643
646
|
font-weight: 400;
|
644
647
|
line-height: normal;
|
648
|
+
}
|
649
|
+
:global(.bg-dark) {
|
650
|
+
background-color: #05445E !important;
|
645
651
|
}</style>
|
@@ -7,7 +7,9 @@ export default class Header extends SvelteComponentTyped<{
|
|
7
7
|
[evt: string]: CustomEvent<any>;
|
8
8
|
}, {
|
9
9
|
brand: {};
|
10
|
-
|
10
|
+
menu: {};
|
11
|
+
'footer-menu': {};
|
12
|
+
'nav-menu': {};
|
11
13
|
}> {
|
12
14
|
}
|
13
15
|
export type HeaderProps = typeof __propDef.props;
|
@@ -23,7 +25,9 @@ declare const __propDef: {
|
|
23
25
|
};
|
24
26
|
slots: {
|
25
27
|
brand: {};
|
26
|
-
|
28
|
+
menu: {};
|
29
|
+
'footer-menu': {};
|
30
|
+
'nav-menu': {};
|
27
31
|
};
|
28
32
|
};
|
29
33
|
export {};
|
@@ -0,0 +1,11 @@
|
|
1
|
+
<script>
|
2
|
+
</script>
|
3
|
+
|
4
|
+
<li class="nav-item dropdown">
|
5
|
+
<a class="nav-link " href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false">
|
6
|
+
<slot name="label" />
|
7
|
+
</a>
|
8
|
+
<ul class="dropdown-menu dropdown-menu-end flex-md-column">
|
9
|
+
<slot />
|
10
|
+
</ul>
|
11
|
+
</li>
|
@@ -0,0 +1,29 @@
|
|
1
|
+
/** @typedef {typeof __propDef.props} HeaderDropDownLinkProps */
|
2
|
+
/** @typedef {typeof __propDef.events} HeaderDropDownLinkEvents */
|
3
|
+
/** @typedef {typeof __propDef.slots} HeaderDropDownLinkSlots */
|
4
|
+
export default class HeaderDropDownLink extends SvelteComponentTyped<{
|
5
|
+
[x: string]: never;
|
6
|
+
}, {
|
7
|
+
[evt: string]: CustomEvent<any>;
|
8
|
+
}, {
|
9
|
+
label: {};
|
10
|
+
default: {};
|
11
|
+
}> {
|
12
|
+
}
|
13
|
+
export type HeaderDropDownLinkProps = typeof __propDef.props;
|
14
|
+
export type HeaderDropDownLinkEvents = typeof __propDef.events;
|
15
|
+
export type HeaderDropDownLinkSlots = typeof __propDef.slots;
|
16
|
+
import { SvelteComponentTyped } from "svelte";
|
17
|
+
declare const __propDef: {
|
18
|
+
props: {
|
19
|
+
[x: string]: never;
|
20
|
+
};
|
21
|
+
events: {
|
22
|
+
[evt: string]: CustomEvent<any>;
|
23
|
+
};
|
24
|
+
slots: {
|
25
|
+
label: {};
|
26
|
+
default: {};
|
27
|
+
};
|
28
|
+
};
|
29
|
+
export {};
|
@@ -0,0 +1,31 @@
|
|
1
|
+
/** @typedef {typeof __propDef.props} HeaderDropDownLinkItemProps */
|
2
|
+
/** @typedef {typeof __propDef.events} HeaderDropDownLinkItemEvents */
|
3
|
+
/** @typedef {typeof __propDef.slots} HeaderDropDownLinkItemSlots */
|
4
|
+
export default class HeaderDropDownLinkItem extends SvelteComponentTyped<{
|
5
|
+
link?: string | undefined;
|
6
|
+
}, {
|
7
|
+
click: MouseEvent;
|
8
|
+
} & {
|
9
|
+
[evt: string]: CustomEvent<any>;
|
10
|
+
}, {
|
11
|
+
default: {};
|
12
|
+
}> {
|
13
|
+
}
|
14
|
+
export type HeaderDropDownLinkItemProps = typeof __propDef.props;
|
15
|
+
export type HeaderDropDownLinkItemEvents = typeof __propDef.events;
|
16
|
+
export type HeaderDropDownLinkItemSlots = typeof __propDef.slots;
|
17
|
+
import { SvelteComponentTyped } from "svelte";
|
18
|
+
declare const __propDef: {
|
19
|
+
props: {
|
20
|
+
link?: string | undefined;
|
21
|
+
};
|
22
|
+
events: {
|
23
|
+
click: MouseEvent;
|
24
|
+
} & {
|
25
|
+
[evt: string]: CustomEvent<any>;
|
26
|
+
};
|
27
|
+
slots: {
|
28
|
+
default: {};
|
29
|
+
};
|
30
|
+
};
|
31
|
+
export {};
|
@@ -32,11 +32,17 @@
|
|
32
32
|
display: flex;
|
33
33
|
flex-direction: column;
|
34
34
|
color: #000000;
|
35
|
+
filter: grayscale(100%) brightness(0) invert(1);
|
35
36
|
}
|
36
37
|
:global(.headerLogo img) {
|
37
38
|
width: 144px;
|
38
39
|
height: 34px;
|
39
40
|
}
|
41
|
+
.bi {
|
42
|
+
display: inline-block;
|
43
|
+
width: 1rem;
|
44
|
+
height: 1rem;
|
45
|
+
}
|
40
46
|
:global(.headerIcons) {
|
41
47
|
display: flex;
|
42
48
|
align-items: center;
|
@@ -641,4 +647,7 @@
|
|
641
647
|
font-style: normal;
|
642
648
|
font-weight: 400;
|
643
649
|
line-height: normal;
|
650
|
+
}
|
651
|
+
:global(.bg-dark) {
|
652
|
+
background-color: #05445E !important;
|
644
653
|
}</style>
|
@@ -0,0 +1,31 @@
|
|
1
|
+
/** @typedef {typeof __propDef.props} HeaderLinkProps */
|
2
|
+
/** @typedef {typeof __propDef.events} HeaderLinkEvents */
|
3
|
+
/** @typedef {typeof __propDef.slots} HeaderLinkSlots */
|
4
|
+
export default class HeaderLink extends SvelteComponentTyped<{
|
5
|
+
link?: string | undefined;
|
6
|
+
}, {
|
7
|
+
click: MouseEvent;
|
8
|
+
} & {
|
9
|
+
[evt: string]: CustomEvent<any>;
|
10
|
+
}, {
|
11
|
+
default: {};
|
12
|
+
}> {
|
13
|
+
}
|
14
|
+
export type HeaderLinkProps = typeof __propDef.props;
|
15
|
+
export type HeaderLinkEvents = typeof __propDef.events;
|
16
|
+
export type HeaderLinkSlots = typeof __propDef.slots;
|
17
|
+
import { SvelteComponentTyped } from "svelte";
|
18
|
+
declare const __propDef: {
|
19
|
+
props: {
|
20
|
+
link?: string | undefined;
|
21
|
+
};
|
22
|
+
events: {
|
23
|
+
click: MouseEvent;
|
24
|
+
} & {
|
25
|
+
[evt: string]: CustomEvent<any>;
|
26
|
+
};
|
27
|
+
slots: {
|
28
|
+
default: {};
|
29
|
+
};
|
30
|
+
};
|
31
|
+
export {};
|
@@ -0,0 +1,27 @@
|
|
1
|
+
/** @typedef {typeof __propDef.props} HeaderLinksProps */
|
2
|
+
/** @typedef {typeof __propDef.events} HeaderLinksEvents */
|
3
|
+
/** @typedef {typeof __propDef.slots} HeaderLinksSlots */
|
4
|
+
export default class HeaderLinks extends SvelteComponentTyped<{
|
5
|
+
[x: string]: never;
|
6
|
+
}, {
|
7
|
+
[evt: string]: CustomEvent<any>;
|
8
|
+
}, {
|
9
|
+
default: {};
|
10
|
+
}> {
|
11
|
+
}
|
12
|
+
export type HeaderLinksProps = typeof __propDef.props;
|
13
|
+
export type HeaderLinksEvents = typeof __propDef.events;
|
14
|
+
export type HeaderLinksSlots = typeof __propDef.slots;
|
15
|
+
import { SvelteComponentTyped } from "svelte";
|
16
|
+
declare const __propDef: {
|
17
|
+
props: {
|
18
|
+
[x: string]: never;
|
19
|
+
};
|
20
|
+
events: {
|
21
|
+
[evt: string]: CustomEvent<any>;
|
22
|
+
};
|
23
|
+
slots: {
|
24
|
+
default: {};
|
25
|
+
};
|
26
|
+
};
|
27
|
+
export {};
|
@@ -12,13 +12,13 @@
|
|
12
12
|
if (result == null) userImage = defaultImage;
|
13
13
|
</script>
|
14
14
|
|
15
|
-
<
|
15
|
+
<div class="userProfile">
|
16
|
+
<img src={userImage} alt="PROFILE" />
|
16
17
|
<div class="userProfileBox">
|
17
18
|
<p class="m-0 efs-small etext-black text-capitalize">{userName}</p>
|
18
19
|
<p class="m-0 efs-small text-capitalize">{userRole}</p>
|
19
20
|
</div>
|
20
|
-
|
21
|
-
</NavbarBrand>
|
21
|
+
</div>
|
22
22
|
|
23
23
|
<style>@import url(https://fonts.googleapis.com/icon?family=Material+Icons);
|
24
24
|
@import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap");
|
@@ -30,11 +30,17 @@
|
|
30
30
|
display: flex;
|
31
31
|
flex-direction: column;
|
32
32
|
color: #000000;
|
33
|
+
filter: grayscale(100%) brightness(0) invert(1);
|
33
34
|
}
|
34
35
|
:global(.headerLogo img) {
|
35
36
|
width: 144px;
|
36
37
|
height: 34px;
|
37
38
|
}
|
39
|
+
.bi {
|
40
|
+
display: inline-block;
|
41
|
+
width: 1rem;
|
42
|
+
height: 1rem;
|
43
|
+
}
|
38
44
|
:global(.headerIcons) {
|
39
45
|
display: flex;
|
40
46
|
align-items: center;
|
@@ -639,4 +645,7 @@
|
|
639
645
|
font-style: normal;
|
640
646
|
font-weight: 400;
|
641
647
|
line-height: normal;
|
648
|
+
}
|
649
|
+
:global(.bg-dark) {
|
650
|
+
background-color: #05445E !important;
|
642
651
|
}</style>
|
@@ -0,0 +1,29 @@
|
|
1
|
+
/** @typedef {typeof __propDef.props} ContentProps */
|
2
|
+
/** @typedef {typeof __propDef.events} ContentEvents */
|
3
|
+
/** @typedef {typeof __propDef.slots} ContentSlots */
|
4
|
+
export default class Content extends SvelteComponentTyped<{
|
5
|
+
[x: string]: never;
|
6
|
+
}, {
|
7
|
+
[evt: string]: CustomEvent<any>;
|
8
|
+
}, {
|
9
|
+
'sidebar-menu': {};
|
10
|
+
page: {};
|
11
|
+
}> {
|
12
|
+
}
|
13
|
+
export type ContentProps = typeof __propDef.props;
|
14
|
+
export type ContentEvents = typeof __propDef.events;
|
15
|
+
export type ContentSlots = typeof __propDef.slots;
|
16
|
+
import { SvelteComponentTyped } from "svelte";
|
17
|
+
declare const __propDef: {
|
18
|
+
props: {
|
19
|
+
[x: string]: never;
|
20
|
+
};
|
21
|
+
events: {
|
22
|
+
[evt: string]: CustomEvent<any>;
|
23
|
+
};
|
24
|
+
slots: {
|
25
|
+
'sidebar-menu': {};
|
26
|
+
page: {};
|
27
|
+
};
|
28
|
+
};
|
29
|
+
export {};
|
@@ -1,7 +1,9 @@
|
|
1
1
|
<script>
|
2
|
+
import { i18nInit } from '../i18n/i18n';
|
2
3
|
import ShiftLanguage from '../i18n/ShiftLanguage.svelte';
|
3
4
|
|
4
5
|
import { _ } from 'svelte-i18n';
|
6
|
+
i18nInit();
|
5
7
|
</script>
|
6
8
|
|
7
9
|
<footer class="main-footer p-10 d-flex flex-row align-items-center justify-content-between ">
|
@@ -0,0 +1,27 @@
|
|
1
|
+
/** @typedef {typeof __propDef.props} LayoutProps */
|
2
|
+
/** @typedef {typeof __propDef.events} LayoutEvents */
|
3
|
+
/** @typedef {typeof __propDef.slots} LayoutSlots */
|
4
|
+
export default class Layout extends SvelteComponentTyped<{
|
5
|
+
[x: string]: never;
|
6
|
+
}, {
|
7
|
+
[evt: string]: CustomEvent<any>;
|
8
|
+
}, {
|
9
|
+
default: {};
|
10
|
+
}> {
|
11
|
+
}
|
12
|
+
export type LayoutProps = typeof __propDef.props;
|
13
|
+
export type LayoutEvents = typeof __propDef.events;
|
14
|
+
export type LayoutSlots = typeof __propDef.slots;
|
15
|
+
import { SvelteComponentTyped } from "svelte";
|
16
|
+
declare const __propDef: {
|
17
|
+
props: {
|
18
|
+
[x: string]: never;
|
19
|
+
};
|
20
|
+
events: {
|
21
|
+
[evt: string]: CustomEvent<any>;
|
22
|
+
};
|
23
|
+
slots: {
|
24
|
+
default: {};
|
25
|
+
};
|
26
|
+
};
|
27
|
+
export {};
|
@@ -2,12 +2,14 @@
|
|
2
2
|
import { Col, Row } from 'sveltestrap';
|
3
3
|
</script>
|
4
4
|
|
5
|
-
<
|
6
|
-
<div
|
7
|
-
|
8
|
-
|
5
|
+
<main class="col-md-9 ms-sm-auto col-lg-10 px-md-4">
|
6
|
+
<div
|
7
|
+
class="d-flex justify-content-between flex-wrap flex-md-nowrap align-items-center pt-3 pb-2 mb-3 border-bottom"
|
8
|
+
>
|
9
|
+
<Row class="pt-3 pb-2 m-2" style="width:100%">
|
10
|
+
<Col md="4">
|
9
11
|
<header>
|
10
|
-
<div class="d-flex flex-row justify-content-start mt-2">
|
12
|
+
<div class="d-flex flex-row justify-content-start mt-2 title">
|
11
13
|
<slot name="title" />
|
12
14
|
</div>
|
13
15
|
</header>
|
@@ -16,13 +18,37 @@
|
|
16
18
|
<slot name="actions" />
|
17
19
|
</Col>
|
18
20
|
</Row>
|
21
|
+
<Row>
|
22
|
+
<slot name="widget" />
|
23
|
+
</Row>
|
24
|
+
</div>
|
25
|
+
<div>
|
26
|
+
<slot name="statuscard"/>
|
27
|
+
</div>
|
28
|
+
<div>
|
29
|
+
<slot />
|
19
30
|
</div>
|
20
|
-
|
21
|
-
</section>
|
31
|
+
</main>
|
22
32
|
|
23
33
|
<style>
|
24
|
-
.screen-size-fix{
|
34
|
+
.screen-size-fix {
|
25
35
|
height: calc(100vh - 128px);
|
26
36
|
overflow: auto;
|
27
37
|
}
|
28
|
-
|
38
|
+
.enki-content-body {
|
39
|
+
display: flex;
|
40
|
+
flex-wrap: wrap;
|
41
|
+
gap: 16px; /* Space between cards */
|
42
|
+
}
|
43
|
+
.blue-background-class {
|
44
|
+
background-color: #e0f7fa;
|
45
|
+
}
|
46
|
+
.title {
|
47
|
+
color: #000;
|
48
|
+
font-family: Roboto;
|
49
|
+
font-size: 20px;
|
50
|
+
font-style: normal;
|
51
|
+
font-weight: 400;
|
52
|
+
line-height: 20px;
|
53
|
+
}
|
54
|
+
</style>
|
@@ -8,7 +8,9 @@ export default class Page extends SvelteComponentTyped<{
|
|
8
8
|
}, {
|
9
9
|
title: {};
|
10
10
|
actions: {};
|
11
|
-
|
11
|
+
widget: {};
|
12
|
+
statuscard: {};
|
13
|
+
default: {};
|
12
14
|
}> {
|
13
15
|
}
|
14
16
|
export type PageProps = typeof __propDef.props;
|
@@ -25,7 +27,9 @@ declare const __propDef: {
|
|
25
27
|
slots: {
|
26
28
|
title: {};
|
27
29
|
actions: {};
|
28
|
-
|
30
|
+
widget: {};
|
31
|
+
statuscard: {};
|
32
|
+
default: {};
|
29
33
|
};
|
30
34
|
};
|
31
35
|
export {};
|
@@ -0,0 +1,28 @@
|
|
1
|
+
<script>
|
2
|
+
import { onMount } from 'svelte';
|
3
|
+
import { Col, Row } from 'sveltestrap';
|
4
|
+
import Sortable from 'sortablejs';
|
5
|
+
export let id;
|
6
|
+
onMount(() => {
|
7
|
+
const el = document.getElementById(id);
|
8
|
+
console.log(el);
|
9
|
+
Sortable.create(el, {
|
10
|
+
animation: 150,
|
11
|
+
ghostClass: 'blue-background-class'
|
12
|
+
});
|
13
|
+
});
|
14
|
+
</script>
|
15
|
+
|
16
|
+
<div class="enki-sortable-grid" {id}>
|
17
|
+
<slot />
|
18
|
+
</div>
|
19
|
+
|
20
|
+
<style>
|
21
|
+
.enki-sortable-grid {
|
22
|
+
display: flex;
|
23
|
+
flex-wrap: wrap;
|
24
|
+
}
|
25
|
+
.blue-background-class {
|
26
|
+
background-color: #e0f7fa;
|
27
|
+
}
|
28
|
+
</style>
|
@@ -0,0 +1,27 @@
|
|
1
|
+
/** @typedef {typeof __propDef.props} SortableGridProps */
|
2
|
+
/** @typedef {typeof __propDef.events} SortableGridEvents */
|
3
|
+
/** @typedef {typeof __propDef.slots} SortableGridSlots */
|
4
|
+
export default class SortableGrid extends SvelteComponentTyped<{
|
5
|
+
id: any;
|
6
|
+
}, {
|
7
|
+
[evt: string]: CustomEvent<any>;
|
8
|
+
}, {
|
9
|
+
default: {};
|
10
|
+
}> {
|
11
|
+
}
|
12
|
+
export type SortableGridProps = typeof __propDef.props;
|
13
|
+
export type SortableGridEvents = typeof __propDef.events;
|
14
|
+
export type SortableGridSlots = typeof __propDef.slots;
|
15
|
+
import { SvelteComponentTyped } from "svelte";
|
16
|
+
declare const __propDef: {
|
17
|
+
props: {
|
18
|
+
id: any;
|
19
|
+
};
|
20
|
+
events: {
|
21
|
+
[evt: string]: CustomEvent<any>;
|
22
|
+
};
|
23
|
+
slots: {
|
24
|
+
default: {};
|
25
|
+
};
|
26
|
+
};
|
27
|
+
export {};
|