@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.
Files changed (187) hide show
  1. package/dist/base/alert/Alert.demo.svelte +10 -8
  2. package/dist/base/alert/Alert.svelte +56 -48
  3. package/dist/base/alert/types.d.ts +4 -4
  4. package/dist/base/alert/types.js +11 -11
  5. package/dist/base/avatar/Avatar.demo.svelte +12 -8
  6. package/dist/base/avatar/Avatar.preview.svelte +3 -2
  7. package/dist/base/avatar/Avatar.svelte +24 -19
  8. package/dist/base/avatar/types.d.ts +5 -5
  9. package/dist/base/avatar/types.js +9 -9
  10. package/dist/base/backdrop/Backdrop.demo.svelte +13 -9
  11. package/dist/base/backdrop/Backdrop.svelte +45 -37
  12. package/dist/base/backdrop/types.d.ts +7 -7
  13. package/dist/base/backdrop/types.js +10 -10
  14. package/dist/base/badge/Badge.svelte +22 -18
  15. package/dist/base/box/Box.demo.svelte +12 -9
  16. package/dist/base/box/Box.svelte +44 -36
  17. package/dist/base/box/types.d.ts +3 -3
  18. package/dist/base/box/types.js +16 -16
  19. package/dist/base/breadCrumb/BreadCrumb.svelte +12 -8
  20. package/dist/base/cartouche/Cartouche.demo.svelte +13 -9
  21. package/dist/base/cartouche/Cartouche.svelte +50 -43
  22. package/dist/base/cartouche/types.d.ts +7 -7
  23. package/dist/base/cartouche/types.js +20 -20
  24. package/dist/base/chipper/Chipper.demo.svelte +14 -10
  25. package/dist/base/chipper/Chipper.svelte +19 -14
  26. package/dist/base/chipper/types.d.ts +5 -5
  27. package/dist/base/chipper/types.js +10 -10
  28. package/dist/base/columner/Column.svelte +39 -31
  29. package/dist/base/columner/Columner.demo.svelte +4 -3
  30. package/dist/base/columner/Columner.svelte +12 -5
  31. package/dist/base/contentSwitcher/ContentSwitcher.demo.svelte +11 -8
  32. package/dist/base/contentSwitcher/ContentSwitcher.svelte +40 -30
  33. package/dist/base/contentSwitcher/types.d.ts +3 -3
  34. package/dist/base/contentSwitcher/types.js +6 -6
  35. package/dist/base/debug/Debug.svelte +14 -11
  36. package/dist/base/demoer/DemoPage.svelte +18 -12
  37. package/dist/base/demoer/Demoer.svelte +20 -16
  38. package/dist/base/demoer/DemoerCode.svelte +28 -6
  39. package/dist/base/demoer/DemoerComponent.svelte +33 -13
  40. package/dist/base/demoer/demoer.utils.d.ts +2 -1
  41. package/dist/base/demoer/demoer.utils.js +4 -1
  42. package/dist/base/divider/Divider.demo.svelte +12 -6
  43. package/dist/base/divider/Divider.svelte +58 -41
  44. package/dist/base/divider/types.d.ts +5 -5
  45. package/dist/base/divider/types.js +10 -10
  46. package/dist/base/icon/Icon.demo.svelte +8 -5
  47. package/dist/base/icon/Icon.svelte +34 -27
  48. package/dist/base/icon/types.d.ts +4 -4
  49. package/dist/base/icon/types.js +9 -9
  50. package/dist/base/paper/Paper.demo.svelte +12 -9
  51. package/dist/base/paper/Paper.svelte +13 -9
  52. package/dist/base/paper/type.d.ts +3 -3
  53. package/dist/base/paper/type.js +4 -4
  54. package/dist/base/titleBar/TitleBar.demo.svelte +11 -9
  55. package/dist/base/titleBar/TitleBar.svelte +16 -12
  56. package/dist/base/titleBar/types.d.ts +4 -4
  57. package/dist/base/titleBar/types.js +8 -8
  58. package/dist/controls/autocomplete/AutoComplete.demo.svelte +21 -16
  59. package/dist/controls/autocomplete/AutoComplete.svelte +81 -62
  60. package/dist/controls/button/Button.demo.svelte +71 -45
  61. package/dist/controls/button/Button.svelte +130 -155
  62. package/dist/controls/button/Button.svelte.d.ts +2 -27
  63. package/dist/controls/button/ButtonAction.svelte +122 -133
  64. package/dist/controls/button/ButtonAction.svelte.d.ts +3 -2
  65. package/dist/controls/button/ButtonMenu.svelte +22 -16
  66. package/dist/controls/button/IconButton.svelte +40 -14
  67. package/dist/controls/button/button-action.scss +1 -1
  68. package/dist/controls/button/button.scss +22 -47
  69. package/dist/controls/button/types.d.ts +19 -16
  70. package/dist/controls/button/types.js +26 -24
  71. package/dist/controls/checkbox/Checkbox.demo.svelte +13 -9
  72. package/dist/controls/checkbox/Checkbox.svelte +18 -14
  73. package/dist/controls/confirm/Confirm.demo.svelte +12 -8
  74. package/dist/controls/confirm/Confirm.preview.svelte +3 -2
  75. package/dist/controls/confirm/Confirm.svelte +87 -64
  76. package/dist/controls/inplaceedit/InPlaceEdit.demo.svelte +12 -8
  77. package/dist/controls/inplaceedit/InPlaceEdit.svelte +74 -55
  78. package/dist/controls/progress/Progress.demo.svelte +14 -9
  79. package/dist/controls/progress/Progress.svelte +19 -13
  80. package/dist/controls/rating/Rating.demo.svelte +11 -8
  81. package/dist/controls/rating/Rating.svelte +21 -16
  82. package/dist/controls/select/Select.demo.svelte +46 -37
  83. package/dist/controls/select/Select.svelte +76 -29
  84. package/dist/controls/slider/Slider.demo.svelte +14 -7
  85. package/dist/controls/slider/Slider.svelte +104 -89
  86. package/dist/controls/stepper/Stepper.demo.svelte +9 -6
  87. package/dist/controls/stepper/Stepper.svelte +19 -13
  88. package/dist/controls/switch/Switch.demo.svelte +31 -24
  89. package/dist/controls/switch/Switch.svelte +20 -15
  90. package/dist/controls/textfield/TextField.demo.svelte +28 -23
  91. package/dist/controls/textfield/TextField.svelte +42 -34
  92. package/dist/data/dataList/DataList.demo.svelte +44 -37
  93. package/dist/data/dataList/DataList.preview.svelte +8 -6
  94. package/dist/data/dataList/DataList.svelte +139 -115
  95. package/dist/data/dataList/DataList.svelte.d.ts +7 -8
  96. package/dist/data/dataList/DataListCell.svelte +146 -96
  97. package/dist/data/dataList/DataListHead.svelte +52 -36
  98. package/dist/data/dataList/DataListRow.svelte +57 -43
  99. package/dist/data/dataList/types.d.ts +16 -14
  100. package/dist/data/dataList/types.js +33 -33
  101. package/dist/data/finder/Finder.demo.svelte +15 -11
  102. package/dist/data/finder/Finder.svelte +64 -46
  103. package/dist/data/grouper/Grouper.demo.svelte +14 -8
  104. package/dist/data/grouper/Grouper.svelte +62 -50
  105. package/dist/data/jsoner/Jsoner.svelte +14 -10
  106. package/dist/data/list/List.svelte +6 -2
  107. package/dist/data/list/ListItem.svelte +5 -2
  108. package/dist/data/list/ListTitle.svelte +5 -2
  109. package/dist/data/loader/Loader.demo.svelte +16 -8
  110. package/dist/data/loader/Loader.preview.svelte +2 -1
  111. package/dist/data/loader/Loader.svelte +56 -49
  112. package/dist/data/sorter/Sorter.demo.svelte +20 -17
  113. package/dist/data/sorter/Sorter.svelte +40 -33
  114. package/dist/data/sorter/Sorterer.svelte +17 -15
  115. package/dist/index.d.ts +4 -4
  116. package/dist/index.js +4 -4
  117. package/dist/navigation/drawer/Drawer.demo.svelte +11 -7
  118. package/dist/navigation/drawer/Drawer.svelte +92 -81
  119. package/dist/navigation/tabs/Tabs.demo.svelte +23 -18
  120. package/dist/navigation/tabs/Tabs.preview.svelte +17 -14
  121. package/dist/navigation/tabs/Tabs.svelte +73 -61
  122. package/dist/slotui-css/button-action.css +1 -0
  123. package/dist/slotui-css/button-action.min.css +1 -0
  124. package/dist/slotui-css/button.css +83 -108
  125. package/dist/slotui-css/button.min.css +83 -108
  126. package/dist/slotui-css/slotui-combined.css +111 -135
  127. package/dist/styles/slotuisheet/SlotuiSheet.svelte +14 -11
  128. package/dist/styles/slotuisheet/SlotyuiSheet.demo.svelte +21 -17
  129. package/dist/ui/bootstrapp/BootStrApp.svelte +21 -15
  130. package/dist/ui/chromeFrame/ChromeFrame.svelte +19 -10
  131. package/dist/ui/chromeFrame/ChromeFrameButtonList.svelte +6 -4
  132. package/dist/ui/chromeFrame/ChromeFrameList.svelte +97 -58
  133. package/dist/ui/frame/Frame.demo.svelte +6 -4
  134. package/dist/ui/frame/Frame.svelte +51 -44
  135. package/dist/ui/frame/types.d.ts +5 -4
  136. package/dist/ui/frame/types.js +6 -5
  137. package/dist/ui/login/Login.demo.svelte +29 -21
  138. package/dist/ui/login/Login.svelte +49 -41
  139. package/dist/ui/marquee/Marque.demo.svelte +9 -6
  140. package/dist/ui/marquee/Marquee.svelte +69 -27
  141. package/dist/ui/menu/Menu.svelte +6 -2
  142. package/dist/ui/menu/MenuItem.svelte +6 -2
  143. package/dist/ui/menu/MenuTitle.svelte +5 -2
  144. package/dist/ui/menuList/MenuList.demo.svelte +14 -9
  145. package/dist/ui/menuList/MenuList.svelte +109 -96
  146. package/dist/ui/menuList/MenuListItem.svelte +85 -70
  147. package/dist/ui/menuList/MenuListTitle.svelte +5 -2
  148. package/dist/ui/panel/Panel.demo.svelte +37 -28
  149. package/dist/ui/panel/Panel.svelte +44 -34
  150. package/dist/ui/panel/PanelGrid.svelte +18 -14
  151. package/dist/ui/panel/PanelSlide.svelte +121 -79
  152. package/dist/ui/panel/Paneler.svelte +51 -24
  153. package/dist/ui/popper/Popper.demo.svelte +33 -25
  154. package/dist/ui/popper/Popper.svelte +105 -87
  155. package/dist/ui/popper/usePopper.d.ts +2 -2
  156. package/dist/ui/popper/usePopper.js +6 -6
  157. package/dist/ui/preview/Preview.svelte +18 -14
  158. package/dist/ui/serviceBox/ServiceBox.svelte +8 -6
  159. package/dist/ui/startMenu/BootMenu.svelte +32 -24
  160. package/dist/ui/taskbar/TaskBarContent.svelte +8 -7
  161. package/dist/ui/taskbar/Taskbar.svelte +15 -10
  162. package/dist/ui/themeswitcher/ThemeSwitcher.svelte +9 -7
  163. package/dist/ui/toast/Toast.demo.svelte +15 -10
  164. package/dist/ui/toast/Toast.svelte +57 -45
  165. package/dist/ui/toast/Toaster.svelte +4 -2
  166. package/dist/ui/toggleBar/ToggleBar.demo.svelte +69 -60
  167. package/dist/ui/toggleBar/ToggleBar.svelte +27 -23
  168. package/dist/ui/toolBar/ToolBar.demo.svelte +48 -38
  169. package/dist/ui/toolBar/ToolBar.svelte +16 -11
  170. package/dist/ui/tree/Tree.demo.svelte +53 -42
  171. package/dist/ui/tree/Tree.preview.svelte +14 -11
  172. package/dist/ui/tree/Tree.svelte +120 -67
  173. package/dist/ui/window/Window.demo.svelte +27 -19
  174. package/dist/ui/window/Window.svelte +95 -85
  175. package/dist/utils/content/Content.svelte +49 -43
  176. package/dist/utils/contextRooter/ContextRooter.demo.svelte +12 -8
  177. package/dist/utils/contextRooter/ContextRooter.svelte +5 -3
  178. package/dist/utils/css/Css.demo.svelte +2 -1
  179. package/dist/utils/css/Css.svelte +2 -1
  180. package/dist/utils/looper/Looper.demo.svelte +8 -6
  181. package/dist/utils/looper/Looper.svelte +27 -22
  182. package/dist/utils/slotted/Slotted.svelte +10 -1
  183. package/dist/utils/stylesheet/StyleSheet.demo.svelte +21 -17
  184. package/dist/utils/stylesheet/StyleSheet.svelte +14 -11
  185. package/package.json +3 -3
  186. package/dist/base/cartouche/Cartouche.preview.svelte +0 -25
  187. package/dist/base/cartouche/Cartouche.preview.svelte.d.ts +0 -27
@@ -1,11 +1,14 @@
1
- <script lang="ts">import ComponentDemo from "../demoer/DemoerComponent.svelte";
2
- import { Demoer } from "../../../sitedata/slotuiComponents.js";
3
- import Icon from "../icon/Icon.svelte";
4
- import DemoPage from "../demoer/DemoPage.svelte";
5
- import ContentSwitcher from "./ContentSwitcher.svelte";
6
- import { contentSwitcherDemoValues } from "./types.js";
7
- import { parameters, componentArgs } from "./types.js";
8
- const code = `
1
+ <script lang="ts">
2
+ import ComponentDemo from '../demoer/DemoerComponent.svelte';
3
+ import { Demoer } from '../../../sitedata/slotuiComponents.js';
4
+ import Icon from '../icon/Icon.svelte';
5
+ import DemoPage from '../demoer/DemoPage.svelte';
6
+ import ContentSwitcher from './ContentSwitcher.svelte';
7
+ import { contentSwitcherDemoValues } from './types.js';
8
+
9
+ import { parameters, componentArgs } from './types.js';
10
+
11
+ const code = `
9
12
  <ContentSwitcher {...activeParams} class="marg-tb-1">
10
13
  {#snippet contentSwitcherTogglerIcon()}
11
14
  <Icon icon="mdi:tree" />
@@ -1,33 +1,43 @@
1
- <script lang="ts">import IconButton from "../../controls/button/IconButton.svelte";
2
- import Button from "../../controls/button/Button.svelte";
3
- import Slotted from "../../utils/slotted/Slotted.svelte";
4
- let {
5
- class: className = "",
6
- element = void 0,
7
- style,
8
- icon = "toggle",
9
- iconback = "chevron-left",
10
- parent = void 0,
11
- contentSwitcherTogglerIcon: togglerIcon,
12
- contentSwitcherBackIcon: backIcon,
13
- contentSwitcherReveal
14
- } = $props();
15
- let visibleSate = $state(false);
16
- let thisRef;
17
- let realParent = $derived(parent ?? element?.parentElement ?? null);
18
- function handleClick(event) {
19
- visibleSate = !visibleSate;
20
- if (!element || !realParent) return false;
21
- const children = realParent?.children;
22
- Array.from(children).forEach((li) => {
23
- li.style.display = visibleSate ? "none" : "";
24
- });
25
- if (visibleSate) {
26
- realParent.appendChild(thisRef);
27
- } else {
28
- element.appendChild(thisRef);
29
- }
30
- }
1
+ <script lang="ts">
2
+ import IconButton from '../../controls/button/IconButton.svelte';
3
+ import Button from '../../controls/button/Button.svelte';
4
+ import Slotted from '../../utils/slotted/Slotted.svelte';
5
+ import type { ContentSwitcherProps } from './types.js';
6
+ import type { ExpandProps } from '../../types/index.js';
7
+
8
+ let {
9
+ class: className = '',
10
+ element = undefined,
11
+ style,
12
+ icon = 'toggle',
13
+ iconback = 'chevron-left',
14
+ parent = undefined,
15
+ contentSwitcherTogglerIcon: togglerIcon,
16
+ contentSwitcherBackIcon: backIcon,
17
+ contentSwitcherReveal
18
+ }: ExpandProps<ContentSwitcherProps> = $props();
19
+
20
+ let visibleSate: boolean = $state(false);
21
+ let thisRef: any;
22
+ let realParent: HTMLElement | null = $derived(parent ?? element?.parentElement ?? null);
23
+
24
+ function handleClick(event: MouseEvent) {
25
+ visibleSate = !visibleSate;
26
+ if (!element || !realParent) return false;
27
+ const children: HTMLCollection = realParent?.children;
28
+
29
+ // iterate over all child nodes
30
+ Array.from(children).forEach((li: any) => {
31
+ //li.style.transform = visibleSate ? 'scale(0,0)' : '';
32
+ li.style.display = visibleSate ? 'none' : '';
33
+ });
34
+
35
+ if (visibleSate) {
36
+ realParent.appendChild(thisRef);
37
+ } else {
38
+ element.appendChild(thisRef);
39
+ }
40
+ }
31
41
  </script>
32
42
 
33
43
  <!-- svelte-ignore a11y_click_events_have_key_events -->
@@ -1,6 +1,6 @@
1
- import type { CommonProps, IconObj } from '../../types/index.js';
2
- import type { Snippet } from 'svelte';
3
- import type { DemoerStoryProps } from '../demoer/types.js';
1
+ import type { CommonProps, IconObj } from "../../types/index.js";
2
+ import type { Snippet } from "svelte";
3
+ import type { DemoerStoryProps } from "../demoer/types.js";
4
4
  export type ContentSwitcherProps = CommonProps & {
5
5
  /** className off the root component */
6
6
  class?: string;
@@ -1,12 +1,12 @@
1
- import { demoerArgs } from '../demoer/demoer.utils.js';
1
+ import { demoerArgs } from "../demoer/demoer.utils.js";
2
2
  export const contentSwitcherDemoValues = {
3
3
  icon: {
4
- type: 'icon',
5
- values: ['mdi:window', 'mdi:user', undefined]
4
+ type: "icon",
5
+ values: ["mdi:window", "mdi:user", undefined],
6
6
  },
7
7
  iconback: {
8
- type: 'icon',
9
- values: ['mdi:window', 'mdi:user', undefined]
10
- }
8
+ type: "icon",
9
+ values: ["mdi:window", "mdi:user", undefined],
10
+ },
11
11
  };
12
12
  export let { parameters, componentArgs } = demoerArgs(contentSwitcherDemoValues);
@@ -1,14 +1,17 @@
1
- <script lang="ts">import Cartouche from "../cartouche/Cartouche.svelte";
2
- const items = [
3
- { label: "theTitle", code: "theTitle1" },
4
- { label: "theTitle bis", code: "theTitle2" },
5
- {
6
- label: "theTitle ter",
7
- code: "theTitle3",
8
- component: Cartouche,
9
- componentProps: { label: "dynamic" }
10
- }
11
- ];
1
+ <script lang="ts">
2
+ import Cartouche from '../cartouche/Cartouche.svelte';
3
+ import type TabsItemsProps from '../../navigation/tabs/Tabs.svelte';
4
+
5
+ const items: TabsItemsProps = [
6
+ { label: 'theTitle', code: 'theTitle1' },
7
+ { label: 'theTitle bis', code: 'theTitle2' },
8
+ {
9
+ label: 'theTitle ter',
10
+ code: 'theTitle3',
11
+ component: Cartouche,
12
+ componentProps: { label: 'dynamic' }
13
+ }
14
+ ];
12
15
  </script>
13
16
 
14
17
  <div style="padding:0.5rem">
@@ -1,15 +1,21 @@
1
- <script lang="ts">import Icon from "../icon/Icon.svelte";
2
- import DemoerCode from "./DemoerCode.svelte";
3
- import Slotted from "../../utils/slotted/Slotted.svelte";
4
- let {
5
- title = "",
6
- code = "",
7
- subTitle,
8
- component,
9
- children,
10
- demoerCode
11
- } = $props();
12
- let codeT = subTitle ? subTitle : `component ${component} demo ${title?.toLowerCase()}`;
1
+ <script lang="ts">
2
+ import Icon from '../icon/Icon.svelte';
3
+ import type { Snippet } from 'svelte';
4
+ import DemoerCode from './DemoerCode.svelte';
5
+ import type { CommonProps } from '../../types/index.js';
6
+ import Slotted from '../../utils/slotted/Slotted.svelte';
7
+ import type { DemoPageProps } from './types.js';
8
+
9
+ let {
10
+ title = '',
11
+ code = '',
12
+ subTitle,
13
+ component,
14
+ children,
15
+ demoerCode
16
+ }: DemoPageProps = $props();
17
+
18
+ let codeT = subTitle ? subTitle : `component ${component} demo ${title?.toLowerCase()}`;
13
19
  </script>
14
20
 
15
21
  <div>
@@ -1,19 +1,23 @@
1
- <script lang="ts" generics="T=Record<string, any>">import Button from "../../controls/button/Button.svelte";
2
- import Icon from "../icon/Icon.svelte";
3
- import Switch from "../../controls/switch/Switch.svelte";
4
- import Slotted from "../../utils/slotted/Slotted.svelte";
5
- import { densePreset, flowPreset, uiPresets } from "../../types/index.js";
6
- import IconButton from "../../controls/button/IconButton.svelte";
7
- let {
8
- title,
9
- parameters = $bindable({}),
10
- component = $bindable(),
11
- componentArgs = $bindable({}),
12
- multiple = {},
13
- children
14
- } = $props();
15
- let activeParams = $state({ ...componentArgs });
16
- $inspect(activeParams);
1
+ <script lang="ts" generics="T=Record<string, any>">
2
+ import Button from '../../controls/button/Button.svelte';
3
+ import Icon from '../icon/Icon.svelte';
4
+ import Switch from '../../controls/switch/Switch.svelte';
5
+ import type { DemoerProps, DemoerStoryProps } from './types.js';
6
+ import Slotted from '../../utils/slotted/Slotted.svelte';
7
+ import { densePreset, flowPreset, uiPresets } from '../../types/index.js';
8
+ import IconButton from '../../controls/button/IconButton.svelte';
9
+
10
+ let {
11
+ title,
12
+ parameters = $bindable<DemoerStoryProps<T>>({} as DemoerStoryProps<T>),
13
+ component = $bindable(),
14
+ componentArgs = $bindable<T>({} as T),
15
+ multiple = {},
16
+ children
17
+ }: DemoerProps<T> = $props();
18
+
19
+ let activeParams: T = $state({ ...componentArgs });
20
+
17
21
  </script>
18
22
 
19
23
  {#if title}
@@ -1,9 +1,31 @@
1
- <script lang="ts">import Prism from "prismjs";
2
- import "prismjs/plugins/normalize-whitespace/prism-normalize-whitespace";
3
- import "prism-svelte";
4
- import Icon from "../icon/Icon.svelte";
5
- let { title = void 0, code = "", subTitle, component, demoerCode } = $props();
6
- const highlighted = Prism.highlight(code, Prism.languages.svelte, "svelte");
1
+ <script lang="ts">
2
+ import Prism from 'prismjs';
3
+ import 'prismjs/plugins/normalize-whitespace/prism-normalize-whitespace';
4
+ import 'prism-svelte';
5
+ import Icon from '../icon/Icon.svelte';
6
+ import type { Snippet } from 'svelte';
7
+
8
+ type DemoerCodeProps = {
9
+ title?: string;
10
+ code: string;
11
+ subTitle?: string;
12
+ component?: string;
13
+ demoerCode?: Snippet;
14
+ };
15
+
16
+ let { title = undefined, code = '', subTitle, component, demoerCode }: DemoerCodeProps = $props();
17
+
18
+ /* Prism.plugins.NormalizeWhitespace.setDefaults({
19
+ 'remove-trailing': true,
20
+ 'remove-indent': true,
21
+ 'left-trim': false,
22
+ 'right-trim': false,
23
+ 'break-lines': 80,
24
+ 'remove-initial-line-feed': true,
25
+ 'tabs-to-spaces': 2
26
+ }); */
27
+
28
+ const highlighted = Prism.highlight(code, Prism.languages.svelte, 'svelte');
7
29
  </script>
8
30
 
9
31
  <div>
@@ -1,16 +1,36 @@
1
- <script lang="ts" generics="T=Data">import { componentCite } from "../../componentCite.js";
2
- import Slotted from "../../utils/slotted/Slotted.svelte";
3
- let {
4
- component,
5
- cite = componentCite?.[component.toLowerCase()] ?? "",
6
- code,
7
- title = "",
8
- componentArgs = {},
9
- parameters = {},
10
- children
11
- } = $props();
12
- let citation = componentCite?.[component.toLowerCase()]?.cite ?? "";
13
- let author = componentCite?.[component.toLowerCase()]?.author ?? "";
1
+ <script lang="ts" generics="T=Data">
2
+ //import { slotuiCatalog } from '../../../sitedata/slotuiCatalog.js';
3
+ import { componentCite } from '../../componentCite.js';
4
+ import Slotted from '../../utils/slotted/Slotted.svelte';
5
+ import type { Snippet } from 'svelte';
6
+ import type { Data } from '../../types/index.js';
7
+
8
+ let {
9
+ component,
10
+ cite = componentCite?.[component.toLowerCase()] ?? '',
11
+ code,
12
+ title = '',
13
+ componentArgs = {} as T,
14
+ parameters = {} as T,
15
+ children
16
+ }: {
17
+ component: string;
18
+ /** parameters values for the component */
19
+ parameters?: T;
20
+ /** component demo arguments for props */
21
+ componentArgs?: T;
22
+ cite?: string;
23
+ /** code sample */
24
+ code?: string;
25
+ title?: string;
26
+ /** use for several DemoPage */
27
+ children: Snippet;
28
+ } = $props();
29
+
30
+ let citation = componentCite?.[component.toLowerCase()]?.cite ?? '';
31
+ let author = componentCite?.[component.toLowerCase()]?.author ?? '';
32
+
33
+ // const compDet = '';Object.values(slotuiCatalog).find((x) => x.name === component);
14
34
  </script>
15
35
 
16
36
  <div class="flex-v gap-large w-full">
@@ -1,4 +1,5 @@
1
- import type { DemoerStoryProps } from './types.js';
1
+ import type { DemoerStoryProps } from "./types.js";
2
+ export type { DemoerStoryProps };
2
3
  export declare function demoerArgs<T = Record<string, any>>(parametersProps: DemoerStoryProps<T>): {
3
4
  parameters: DemoerStoryProps<T>;
4
5
  componentArgs: T;
@@ -1,5 +1,8 @@
1
1
  export function demoerArgs(parametersProps) {
2
- return { parameters: parametersProps, componentArgs: defaultsArgs({ ...parametersProps }) };
2
+ return {
3
+ parameters: parametersProps,
4
+ componentArgs: defaultsArgs({ ...parametersProps }),
5
+ };
3
6
  }
4
7
  export function defaultsArgs(parametersProps) {
5
8
  const out = {};
@@ -1,9 +1,15 @@
1
- <script lang="ts">import Divider from "./Divider.svelte";
2
- import ComponentDemo from "../demoer/DemoerComponent.svelte";
3
- import Demoer from "../demoer/Demoer.svelte";
4
- import DemoPage from "../demoer/DemoPage.svelte";
5
- import { parameters, componentArgs } from "./types.js";
6
- let codeSlot = `
1
+ <script lang="ts">
2
+ import Divider from './Divider.svelte';
3
+
4
+ /* demo */
5
+ import ComponentDemo from '../demoer/DemoerComponent.svelte';
6
+ import Demoer from '../demoer/Demoer.svelte';
7
+ import DemoPage from '../demoer/DemoPage.svelte';
8
+ /* demo */
9
+
10
+ import { parameters, componentArgs } from './types.js';
11
+
12
+ let codeSlot = `
7
13
  <Divider />`;
8
14
  </script>
9
15
 
@@ -1,44 +1,61 @@
1
- <script lang="ts">import { uiPresets } from "../../utils/engine/presets.js";
2
- let {
3
- class: className = "",
4
- style,
5
- element = null,
6
- dense: density = "default",
7
- orientation: direction = "horizontal",
8
- expansion = "full",
9
- shadowed: shadow = false,
10
- color
11
- } = $props();
12
- let extensionClass = {
13
- horizontal: {
14
- full: "",
15
- padded: "marg-ii-12",
16
- centered: "marg-ii-6"
17
- },
18
- vertical: {
19
- full: "",
20
- padded: "marg-ii-12",
21
- centered: "marg-ii-6"
22
- }
23
- };
24
- let addStyle = style ?? "";
25
- const shadowClass = $derived(shadow ? "shad-3" : "");
26
- if (color) addStyle += `--sld-color-border:${color};`;
27
- if (direction === "vertical" && (element?.nextElementSibling ?? element?.previousElementSibling)) {
28
- let maxHeight = (element?.previousElementSibling ?? element?.nextElementSibling)?.getBoundingClientRect()?.height;
29
- addStyle += `height:calc(${maxHeight}px - ${getDensity(density)});`;
30
- }
31
- function getDensity(density2) {
32
- return uiPresets.density?.[density2];
33
- }
34
- switch (direction) {
35
- case "horizontal":
36
- addStyle += `margin-top:${getDensity(density)};margin-bottom:${getDensity(density)};`;
37
- break;
38
- case "vertical":
39
- addStyle += `margin-left:${getDensity(density)};margin-right:${getDensity(density)};`;
40
- break;
41
- }
1
+ <script lang="ts">
2
+ /** extends button */
3
+ import type { ElementProps, ExpandProps } from '../../types/index.js';
4
+ import { uiPresets } from '../../utils/engine/presets.js';
5
+ import type { DividerProps } from './types.js';
6
+ let {
7
+ class: className = '',
8
+ style,
9
+ element = null,
10
+ dense: density = 'default',
11
+ orientation: direction = 'horizontal',
12
+ expansion = 'full',
13
+ shadowed: shadow = false,
14
+ color
15
+ }: ExpandProps<DividerProps> = $props();
16
+
17
+ let extensionClass = {
18
+ horizontal: {
19
+ full: '',
20
+ padded: 'marg-ii-12',
21
+ centered: 'marg-ii-6'
22
+ },
23
+ vertical: {
24
+ full: '',
25
+ padded: 'marg-ii-12',
26
+ centered: 'marg-ii-6'
27
+ }
28
+ };
29
+ let addStyle: string = (style as unknown as string) ?? ('' as unknown as string);
30
+
31
+ const shadowClass = $derived(shadow ? 'shad-3' : '');
32
+
33
+ if (color) addStyle += `--sld-color-border:${color};`;
34
+
35
+ // set height od divider when direction === vertical in a flex env
36
+ if (
37
+ direction === 'vertical' &&
38
+ (element?.nextElementSibling ?? element?.previousElementSibling)
39
+ ) {
40
+ let maxHeight = (
41
+ element?.previousElementSibling ?? element?.nextElementSibling
42
+ )?.getBoundingClientRect()?.height;
43
+
44
+ addStyle += `height:calc(${maxHeight}px - ${getDensity(density)});`;
45
+ }
46
+
47
+ function getDensity(density: ElementProps['density']) {
48
+ return uiPresets.density?.[density];
49
+ }
50
+
51
+ switch (direction) {
52
+ case 'horizontal':
53
+ addStyle += `margin-top:${getDensity(density)};margin-bottom:${getDensity(density)};`;
54
+ break;
55
+ case 'vertical':
56
+ addStyle += `margin-left:${getDensity(density)};margin-right:${getDensity(density)};`;
57
+ break;
58
+ }
42
59
  </script>
43
60
 
44
61
  <hr
@@ -1,5 +1,5 @@
1
- import { type ElementProps } from '../../types/index.js';
2
- import type { DemoerStoryProps } from '../demoer/types.js';
1
+ import { type ElementProps } from "../../types/index.js";
2
+ import type { DemoerStoryProps } from "../demoer/types.js";
3
3
  export type DividerProps = {
4
4
  /** className off the root component */
5
5
  class?: string;
@@ -10,17 +10,17 @@ export type DividerProps = {
10
10
  /**
11
11
  * margins and with applied to divider
12
12
  */
13
- dense?: ElementProps['dense'];
13
+ dense?: ElementProps["dense"];
14
14
  /**
15
15
  * default direction of the divider
16
16
  * @type {'vertical' | 'horizontal'}
17
17
  */
18
- orientation?: ElementProps['orientation'];
18
+ orientation?: ElementProps["orientation"];
19
19
  /**
20
20
  * expansion of the divider
21
21
  * @type {'full' | 'padded' | 'centered'}
22
22
  */
23
- expansion?: 'full' | 'padded' | 'centered';
23
+ expansion?: "full" | "padded" | "centered";
24
24
  /** give shadow to divider */
25
25
  shadowed?: boolean;
26
26
  /** give color to divider */
@@ -1,22 +1,22 @@
1
- import { densePreset, uiPresets } from '../../types/index.js';
2
- import { demoerArgs } from '../demoer/demoer.utils.js';
1
+ import { densePreset, uiPresets } from "../../types/index.js";
2
+ import { demoerArgs } from "../demoer/demoer.utils.js";
3
3
  export const DividerDemoValues = {
4
4
  dense: {
5
- type: 'dense',
6
- default: densePreset.default
5
+ type: "dense",
6
+ default: densePreset.default,
7
7
  },
8
8
  orientation: {
9
- type: 'direction'
9
+ type: "direction",
10
10
  },
11
11
  expansion: {
12
- type: 'string',
13
- values: ['full', 'padded', 'centered']
12
+ type: "string",
13
+ values: ["full", "padded", "centered"],
14
14
  },
15
15
  shadowed: {
16
- type: 'boolean'
16
+ type: "boolean",
17
17
  },
18
18
  color: {
19
- type: 'color'
20
- }
19
+ type: "color",
20
+ },
21
21
  };
22
22
  export let { parameters, componentArgs } = demoerArgs(DividerDemoValues);
@@ -1,8 +1,11 @@
1
- <script lang="ts">import ComponentDemo from "../demoer/DemoerComponent.svelte";
2
- import { DemoPage, Demoer } from "../../index.js";
3
- import Icon from "./Icon.svelte";
4
- import { parameters, componentArgs } from "./types.js";
5
- let code = `
1
+ <script lang="ts">
2
+ import ComponentDemo from '../demoer/DemoerComponent.svelte';
3
+ import { DemoPage, Demoer } from '../../index.js';
4
+ import Icon from './Icon.svelte';
5
+
6
+ import { parameters, componentArgs } from './types.js';
7
+
8
+ let code = `
6
9
  <Icon>
7
10
  mdi:tree
8
11
  </Icon>`;
@@ -1,30 +1,37 @@
1
- <script lang="ts">import { iconFontSize } from "../../types/index.js";
2
- import Iconify from "@iconify/svelte";
3
- let {
4
- icon = $bindable("question"),
5
- class: className,
6
- style,
7
- element = $bindable(),
8
- iconSize = $bindable(),
9
- rotate = false,
10
- color = $bindable(),
11
- rotation = 0,
12
- ico,
13
- ...rest
14
- } = $props();
15
- iconSize = iconSize || "small";
16
- const sizes = iconFontSize;
17
- let finalI = $derived(ico?.icon ?? (typeof icon === "object" ? icon.icon : icon));
18
- let finRot = $derived(ico?.rotate ?? (typeof icon === "object" ? icon.rotate : rotate));
19
- let finRotation = $derived(
20
- ico?.rotation ?? (typeof icon === "object" ? icon.rotation : rotation)
21
- );
22
- let finCol = $derived(ico?.color ?? (typeof icon === "object" ? icon.color : color));
23
- let finSize = $derived(ico?.iconSize ?? (typeof icon === "object" ? iconSize : iconSize));
24
- let iconName = $derived(finalI.includes(":") ? finalI : `mdi:${finalI}`);
25
- let finalStyle = $derived(
26
- `display:block;font-size:${sizes[finSize]};color:${finCol};transform: rotate(${finRotation}deg);${style};`
27
- );
1
+ <script lang="ts">
2
+ import { iconFontSize, type ElementProps, type ExpandProps } from '../../types/index.js';
3
+ import type { IconAppProps } from './types.js';
4
+ import Iconify from '@iconify/svelte';
5
+
6
+ let {
7
+ icon = $bindable('question'),
8
+ class: className,
9
+ style,
10
+ element = $bindable<HTMLDivElement>(),
11
+ iconSize = $bindable(),
12
+ rotate = false,
13
+ color = $bindable(),
14
+ rotation = 0,
15
+ ico,
16
+ ...rest
17
+ }: ExpandProps<IconAppProps> = $props();
18
+
19
+ iconSize = iconSize || 'small';
20
+
21
+ const sizes: Record<ElementProps['iconSize'], string> = iconFontSize;
22
+
23
+ let finalI = $derived(ico?.icon ?? (typeof icon === 'object' ? icon.icon : icon));
24
+ let finRot = $derived(ico?.rotate ?? (typeof icon === 'object' ? icon.rotate : rotate));
25
+ let finRotation = $derived(
26
+ ico?.rotation ?? (typeof icon === 'object' ? icon.rotation : rotation)
27
+ );
28
+ let finCol = $derived(ico?.color ?? (typeof icon === 'object' ? icon.color : color));
29
+ let finSize = $derived(ico?.iconSize ?? (typeof icon === 'object' ? iconSize : iconSize));
30
+ let iconName = $derived(finalI.includes(':') ? finalI : `mdi:${finalI}`);
31
+
32
+ let finalStyle = $derived(
33
+ `display:block;font-size:${sizes[finSize]};color:${finCol};transform: rotate(${finRotation}deg);${style};`
34
+ );
28
35
  </script>
29
36
 
30
37
  {#key [icon, iconName, color, finalStyle]}