@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.
Files changed (87) hide show
  1. package/components/Accordion/Accordion.svelte +3 -0
  2. package/components/Accordion/AccordionItem.svelte +3 -0
  3. package/components/Badge/Badge.svelte +3 -0
  4. package/components/Breadcrumb/Breadcrumb.svelte +3 -0
  5. package/components/Button/Button.svelte +3 -0
  6. package/components/CardIcon/CardIcon.svelte +3 -0
  7. package/components/CardIcon/CardiconBody.svelte +3 -0
  8. package/components/CardIcon/CardiconSubtitle.svelte +3 -0
  9. package/components/CardIcon/CardiconTitle.svelte +3 -0
  10. package/components/Charts/Barchart.svelte +74 -0
  11. package/components/Charts/Barchart.svelte.d.ts +23 -0
  12. package/components/Charts/DoughnutChart.svelte +73 -0
  13. package/components/Charts/DoughnutChart.svelte.d.ts +29 -0
  14. package/components/Charts/LineChart.svelte +62 -0
  15. package/components/Charts/LineChart.svelte.d.ts +23 -0
  16. package/components/Charts/PieChart.svelte +75 -0
  17. package/components/Charts/PieChart.svelte.d.ts +29 -0
  18. package/components/CheckBox/Checkbox.svelte +3 -0
  19. package/components/Dropdown/Dropdown.svelte +3 -0
  20. package/components/Dropdown/DropdownItem.svelte +3 -0
  21. package/components/EnkiSidbar/EnkiSidebar.svelte +3 -0
  22. package/components/EnkiSidbar/NavIcon.svelte +3 -0
  23. package/components/EnkiSidbar/NavItem.svelte +3 -0
  24. package/components/EnkiSidbar/NavLink.svelte +3 -0
  25. package/components/Header/Brand.svelte +25 -16
  26. package/components/Header/Header.scss +40 -34
  27. package/components/Header/Header.svelte +26 -20
  28. package/components/Header/Header.svelte.d.ts +6 -2
  29. package/components/Header/HeaderDropDownLink.svelte +11 -0
  30. package/components/Header/HeaderDropDownLink.svelte.d.ts +29 -0
  31. package/components/Header/HeaderDropDownLinkItem.svelte +9 -0
  32. package/components/Header/HeaderDropDownLinkItem.svelte.d.ts +31 -0
  33. package/components/Header/HeaderItem.svelte +9 -0
  34. package/components/Header/HeaderLink.svelte +9 -0
  35. package/components/Header/HeaderLink.svelte.d.ts +31 -0
  36. package/components/Header/HeaderLinks.svelte +9 -0
  37. package/components/Header/HeaderLinks.svelte.d.ts +27 -0
  38. package/components/Header/UserAvatar.svelte +12 -3
  39. package/components/Layout/Content.svelte +9 -0
  40. package/components/Layout/Content.svelte.d.ts +29 -0
  41. package/components/Layout/Footer.svelte +2 -0
  42. package/components/Layout/Layout.svelte +6 -0
  43. package/components/Layout/Layout.svelte.d.ts +27 -0
  44. package/components/Layout/Page.svelte +35 -9
  45. package/components/Layout/Page.svelte.d.ts +6 -2
  46. package/components/Layout/SortableGrid.svelte +28 -0
  47. package/components/Layout/SortableGrid.svelte.d.ts +27 -0
  48. package/components/ModalWindow/Modal.svelte +3 -0
  49. package/components/ModalWindow/ModalBody.svelte +3 -0
  50. package/components/ModalWindow/ModalFooter.svelte +3 -0
  51. package/components/ModalWindow/ModalHeader.svelte +3 -0
  52. package/components/NotFound/NotFound.svelte +3 -0
  53. package/components/Pagination/Pagination.svelte +3 -0
  54. package/components/RadioButton/RadioButton.svelte +3 -0
  55. package/components/Sidebar/MenuGroup.svelte +108 -0
  56. package/components/Sidebar/MenuGroup.svelte.d.ts +29 -0
  57. package/components/Sidebar/MenuItem.svelte +122 -0
  58. package/components/Sidebar/MenuItem.svelte.d.ts +35 -0
  59. package/components/Sidebar/SideBarMenu.svelte +148 -0
  60. package/components/Sidebar/SideBarMenu.svelte.d.ts +27 -0
  61. package/components/Sidebar/Sidebar.scss +29 -0
  62. package/components/Sidebar/Sidebar.svelte +29 -0
  63. package/components/StatusCard/StatusCard.scss +35 -0
  64. package/components/StatusCard/StatusCard.svelte +42 -0
  65. package/components/StatusCard/StatusCard.svelte.d.ts +27 -0
  66. package/components/StatusCard/StatusCardBody.svelte +57 -0
  67. package/components/StatusCard/StatusCardBody.svelte.d.ts +31 -0
  68. package/components/StatusCard/StatusCardTitle.svelte +47 -0
  69. package/components/StatusCard/StatusCardTitle.svelte.d.ts +29 -0
  70. package/components/Switches/Switch.svelte +3 -0
  71. package/components/Tab/Tab.svelte +3 -0
  72. package/components/TextField/TextField.svelte +3 -0
  73. package/components/Toast/Toast.scss +0 -2
  74. package/components/Toast/Toast.svelte +7 -6
  75. package/components/Tooltip/Tooltip.svelte +3 -0
  76. package/components/WidgetCard/Card.scss +108 -0
  77. package/components/WidgetCard/SensorStatusCard.svelte +130 -0
  78. package/components/WidgetCard/SensorStatusCard.svelte.d.ts +27 -0
  79. package/components/WidgetCard/StateCard.svelte +133 -0
  80. package/components/WidgetCard/StateCard.svelte.d.ts +29 -0
  81. package/components/WidgetCard/WidgetCard.svelte +152 -0
  82. package/components/WidgetCard/WidgetCard.svelte.d.ts +35 -0
  83. package/components/WidgetCard/WidgetCardBody.svelte +13 -0
  84. package/components/WidgetCard/WidgetCardBody.svelte.d.ts +27 -0
  85. package/components/common.scss +4 -0
  86. package/components/variable.scss +13 -3
  87. package/package.json +30 -2
@@ -1,64 +1,70 @@
1
1
  @import './../variable.scss';
2
2
 
3
3
  :global(.headerLogo) {
4
- display: flex;
5
- flex-direction: column;
6
- color: $black;
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
- width: 144px;
11
- height: 34px;
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
- display: flex;
16
- align-items: center;
17
- justify-content: center;
18
- border: 1px solid $secondary;
19
- border-radius: 50%;
20
- color: $secondary;
21
- padding: 8px 9px;
22
- height:45px;
23
- width:45px;
24
- font-weight:bold;
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
- color: black ;
30
- margin-top: 2px;
31
- text-transform: capitalize;
34
+ .avatar-text {
35
+ color: black;
36
+ margin-top: 2px;
37
+ text-transform: capitalize;
32
38
  }
33
39
 
34
40
  :global(.headerIcons i) {
35
- padding: 0 4px;
36
- font-size: 18px;
41
+ padding: 0 4px;
42
+ font-size: 18px;
37
43
  }
38
44
 
39
45
  :global(.userProfile) {
40
- display: flex;
41
- align-items: center;
42
- gap: 15px;
46
+ display: flex;
47
+ align-items: center;
48
+ gap: 15px;
43
49
  }
44
50
 
45
51
  :global(.userProfileBox) {
46
- display: flex;
47
- flex-direction: column;
48
- align-items: flex-end;
49
- color: $gray-600;
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
- width: 45px;
54
- height: 45px;
55
- border-radius: 50%;
59
+ width: 45px;
60
+ height: 45px;
61
+ border-radius: 50%;
56
62
  }
57
63
 
58
64
  :global(.nav-link:focus, .nav-link:hover) {
59
- color: $secondary;
65
+ color: $secondary;
60
66
  }
61
67
 
62
68
  :global(a:hover) {
63
- color: $black;
69
+ color: $black;
64
70
  }
@@ -1,27 +1,24 @@
1
1
  <script>
2
- import {
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
- <Navbar expand="md" class="bg-white sticky-top shadow-sm">
17
- <slot name="brand" />
18
- <NavbarToggler class="border border-success text-success" on:click={() => (isOpen = !isOpen)} />
19
- <Collapse {isOpen} navbar expand="md" on:update={handleUpdate}>
20
- <Nav class="ms-auto d-flex align-items-center justify-content-end flex-row" navbar>
21
- <slot />
22
- </Nav>
23
- </Collapse>
24
- </Navbar>
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
- default: {};
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
- default: {};
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,9 @@
1
+ <script>
2
+ export let link = '#';
3
+ </script>
4
+
5
+ <li>
6
+ <a class="dropdown-item" href={link} on:click>
7
+ <slot />
8
+ </a>
9
+ </li>
@@ -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,9 @@
1
+ <script>
2
+ export let link="#";
3
+ </script>
4
+
5
+ <li class="nav-item">
6
+ <a class="nav-link" href="{link}" on:click>
7
+ <slot></slot>
8
+ </a>
9
+ </li>
@@ -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,9 @@
1
+ <script>
2
+
3
+ </script>
4
+
5
+ <!--ALERTS/NOTIFICATIONS/USER PROFILE STARTS-->
6
+ <ul class="navbar-nav ml-auto">
7
+ <slot></slot>
8
+ </ul>
9
+ <!--ALERTS/NOTIFICATIONS/USER PROFILE ENDS-->
@@ -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
- <NavbarBrand href="/" class="userProfile">
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
- <!-- <img src={userImage} alt="PROFILE" /> -->
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,9 @@
1
+ <script>
2
+ </script>
3
+
4
+ <div class="container-fluid" style="margin-top:80px;background-color: #EBECEF;">
5
+ <div class="row">
6
+ <slot name="sidebar-menu" />
7
+ <slot name="page" />
8
+ </div>
9
+ </div>
@@ -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,6 @@
1
+ <script>
2
+
3
+ </script>
4
+ <div>
5
+ <slot></slot>
6
+ </div>
@@ -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
- <section class="screen-size-fix">
6
- <div class="container-fluid mb-2">
7
- <Row class="pt-3 pb-2">
8
- <Col>
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
- <slot name="content" />
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
- </style>
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
- content: {};
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
- content: {};
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 {};
@@ -586,6 +586,9 @@
586
586
  font-weight: 400;
587
587
  line-height: normal;
588
588
  }
589
+ :global(.bg-dark) {
590
+ background-color: #05445E !important;
591
+ }
589
592
  .content {
590
593
  color: #495057;
591
594
  line-height: normal;