@likable-hair/svelte 4.2.5 → 4.3.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 (117) hide show
  1. package/dist/components/composed/buttons/ActivableButton.svelte +25 -7
  2. package/dist/components/composed/common/HeadersDrawer.svelte +66 -28
  3. package/dist/components/composed/common/HeadersDrawer.svelte.d.ts +22 -12
  4. package/dist/components/composed/common/MenuOrDrawer.svelte +40 -12
  5. package/dist/components/composed/common/MenuOrDrawerOptions.svelte +51 -27
  6. package/dist/components/composed/common/MenuOrDrawerOptions.svelte.d.ts +15 -10
  7. package/dist/components/composed/common/QuickActions.svelte +59 -23
  8. package/dist/components/composed/common/ToolTip.svelte +51 -32
  9. package/dist/components/composed/dashboard/DashboardShaper.svelte +280 -147
  10. package/dist/components/composed/dashboard/DashboardShaper.svelte.d.ts +54 -45
  11. package/dist/components/composed/forms/AsyncAutocomplete.svelte +81 -30
  12. package/dist/components/composed/forms/AsyncAutocomplete.svelte.d.ts +12 -5
  13. package/dist/components/composed/forms/AvatarDropdown.svelte +146 -70
  14. package/dist/components/composed/forms/AvatarDropdown.svelte.d.ts +27 -22
  15. package/dist/components/composed/forms/ConfirmOrCancelButtons.svelte +65 -19
  16. package/dist/components/composed/forms/CountriesAutocomplete.svelte +33 -4
  17. package/dist/components/composed/forms/DatePickerTextField.svelte +266 -161
  18. package/dist/components/composed/forms/Dropdown.svelte +88 -21
  19. package/dist/components/composed/forms/Dropdown.svelte.d.ts +18 -13
  20. package/dist/components/composed/forms/IconsDropdown.svelte +85 -40
  21. package/dist/components/composed/forms/IconsDropdown.svelte.d.ts +15 -8
  22. package/dist/components/composed/forms/LabelAndSelect.svelte +46 -5
  23. package/dist/components/composed/forms/LabelAndTextField.svelte +56 -3
  24. package/dist/components/composed/forms/PeriodPicker.svelte +38 -18
  25. package/dist/components/composed/forms/PeriodPicker.svelte.d.ts +32 -7
  26. package/dist/components/composed/forms/PeriodSelector.svelte +427 -312
  27. package/dist/components/composed/forms/PeriodSelector.svelte.d.ts +20 -13
  28. package/dist/components/composed/forms/ToggleList.svelte +71 -37
  29. package/dist/components/composed/forms/ToggleList.svelte.d.ts +14 -7
  30. package/dist/components/composed/forms/YearPickerTextField.svelte +154 -82
  31. package/dist/components/composed/list/DynamicTable.svelte +1372 -809
  32. package/dist/components/composed/list/DynamicTable.svelte.d.ts +85 -70
  33. package/dist/components/composed/list/EnhancedPaginatedTable.svelte +75 -32
  34. package/dist/components/composed/list/EnhancedPaginatedTable.svelte.d.ts +16 -6
  35. package/dist/components/composed/list/PaginatedTable.svelte +324 -116
  36. package/dist/components/composed/list/PaginatedTable.svelte.d.ts +26 -22
  37. package/dist/components/composed/progress/HorizontalStackedProgress.svelte +67 -29
  38. package/dist/components/composed/search/DynamicFilters.svelte +126 -91
  39. package/dist/components/composed/search/FilterEditor.svelte +169 -109
  40. package/dist/components/composed/search/Filters.svelte +385 -275
  41. package/dist/components/composed/search/GlobalSearchTextField.svelte +102 -42
  42. package/dist/components/composed/search/GlobalSearchTextField.svelte.d.ts +23 -20
  43. package/dist/components/composed/search/MobileFilterEditor.svelte +174 -120
  44. package/dist/components/composed/search/QuickFilters.svelte +124 -75
  45. package/dist/components/composed/search/SearchBar.svelte +42 -3
  46. package/dist/components/composed/search/SearchResults.svelte +48 -5
  47. package/dist/components/composed/search/SearchResults.svelte.d.ts +17 -17
  48. package/dist/components/layouts/CollapsibleSideBarLayout.svelte +100 -24
  49. package/dist/components/layouts/StableDividedSideBarLayout.svelte +74 -24
  50. package/dist/components/layouts/UnstableDividedSideBarLayout.svelte +140 -57
  51. package/dist/components/simple/buttons/Button.svelte +86 -36
  52. package/dist/components/simple/buttons/LinkButton.svelte +81 -25
  53. package/dist/components/simple/charts/BarChart.svelte +137 -105
  54. package/dist/components/simple/charts/LineChart.svelte +124 -92
  55. package/dist/components/simple/charts/PieChart.svelte +51 -23
  56. package/dist/components/simple/common/CollapsibleDivider.svelte +58 -26
  57. package/dist/components/simple/common/Divider.svelte +2 -1
  58. package/dist/components/simple/common/InfiniteScroll.svelte +60 -34
  59. package/dist/components/simple/common/MediaQuery.svelte +28 -3
  60. package/dist/components/simple/common/Menu.svelte +516 -371
  61. package/dist/components/simple/common/NoData.svelte +18 -4
  62. package/dist/components/simple/common/VerticalDraggableList.svelte +52 -26
  63. package/dist/components/simple/common/VerticalDraggableList.svelte.d.ts +20 -9
  64. package/dist/components/simple/dashboards/DashboardGridShaper.svelte +28 -22
  65. package/dist/components/simple/dates/Calendar.svelte +142 -72
  66. package/dist/components/simple/dates/DatePicker.svelte +138 -71
  67. package/dist/components/simple/dates/MonthSelector.svelte +49 -13
  68. package/dist/components/simple/dates/YearSelector.svelte +73 -30
  69. package/dist/components/simple/dialogs/Dialog.svelte +109 -59
  70. package/dist/components/simple/forms/Autocomplete.svelte +341 -164
  71. package/dist/components/simple/forms/Autocomplete.svelte.d.ts +27 -20
  72. package/dist/components/simple/forms/Checkbox.svelte +57 -29
  73. package/dist/components/simple/forms/FileInput.svelte +103 -58
  74. package/dist/components/simple/forms/FileInputList.svelte +115 -51
  75. package/dist/components/simple/forms/RadioButton.svelte +36 -3
  76. package/dist/components/simple/forms/Select.svelte +30 -3
  77. package/dist/components/simple/forms/SimpleTextField.svelte +94 -4
  78. package/dist/components/simple/forms/Switch.svelte +33 -11
  79. package/dist/components/simple/forms/Textarea.svelte +22 -5
  80. package/dist/components/simple/forms/VerticalSwitch.svelte +19 -2
  81. package/dist/components/simple/forms/VerticalTextSwitch.svelte +35 -3
  82. package/dist/components/simple/lists/BoxList.svelte +42 -11
  83. package/dist/components/simple/lists/ColorInvertedSelector.svelte +83 -25
  84. package/dist/components/simple/lists/HierarchyMenu.svelte +55 -20
  85. package/dist/components/simple/lists/Paginator.svelte +53 -34
  86. package/dist/components/simple/lists/SelectableMenuList.svelte +52 -16
  87. package/dist/components/simple/lists/SelectableVerticalList.svelte +169 -85
  88. package/dist/components/simple/lists/SelectableVerticalList.svelte.d.ts +21 -14
  89. package/dist/components/simple/lists/SidebarMenuList.svelte +127 -79
  90. package/dist/components/simple/lists/SimpleTable.svelte +442 -245
  91. package/dist/components/simple/lists/SimpleTable.svelte.d.ts +31 -22
  92. package/dist/components/simple/loaders/CircularLoader.css +1 -1
  93. package/dist/components/simple/loaders/CircularLoader.svelte +11 -3
  94. package/dist/components/simple/loaders/Skeleton.svelte +3 -2
  95. package/dist/components/simple/media/Avatar.svelte +35 -15
  96. package/dist/components/simple/media/DescriptiveAvatar.svelte +30 -4
  97. package/dist/components/simple/media/FlagIcon.svelte +13 -3
  98. package/dist/components/simple/media/Icon.svelte +21 -6
  99. package/dist/components/simple/navigation/Breadcrumb.svelte +41 -9
  100. package/dist/components/simple/navigation/Chip.svelte +65 -29
  101. package/dist/components/simple/navigation/Drawer.svelte +132 -71
  102. package/dist/components/simple/navigation/HeaderMenu.svelte +69 -25
  103. package/dist/components/simple/navigation/Navigator.svelte +45 -11
  104. package/dist/components/simple/navigation/TabSwitcher.svelte +60 -19
  105. package/dist/components/simple/notifiers/AlertBanner.svelte +59 -11
  106. package/dist/components/simple/progress/ProgressBar.svelte +26 -10
  107. package/dist/components/simple/timeline/SimpleTimeLine.svelte +52 -5
  108. package/dist/components/simple/timeline/SimpleTimeLine.svelte.d.ts +16 -9
  109. package/dist/components/simple/typography/Code.svelte +41 -12
  110. package/dist/stores/layouts/unstableSidebarOpened.d.ts +1 -1
  111. package/dist/stores/layouts/unstableSidebarOpened.js +1 -1
  112. package/dist/stores/theme.js +2 -2
  113. package/dist/utils/filters/builder.d.ts +2 -2
  114. package/dist/utils/filters/builder.js +7 -7
  115. package/dist/utils/filters/modifiers/where.d.ts +1 -1
  116. package/dist/utils/teleporter.js +4 -4
  117. package/package.json +39 -33
@@ -1,18 +1,54 @@
1
- <script lang="ts">import '../../../css/main.css';
2
- import './MonthSelector.css';
3
- import { getMonthName } from "./utils";
4
- import Button from "../buttons/Button.svelte";
5
- let { selectedMonth = $bindable(undefined), locale = "it", class: clazz = {}, onclick, selectorSnippet, labelSnippet, } = $props();
6
- function handleMonthClick(monthIndex) {
1
+ <script lang="ts">
2
+ import '../../../css/main.css'
3
+ import './MonthSelector.css'
4
+ import type { Locale } from "./utils";
5
+ import { getMonthName } from "./utils";
6
+ import Button from "../buttons/Button.svelte";
7
+ import type { Snippet } from 'svelte';
8
+
9
+ interface Props {
10
+ selectedMonth?: number | undefined;
11
+ locale?: Locale
12
+ class?: {
13
+ buttons?: string,
14
+ container?: string,
15
+ }
16
+ onclick?: (event: {
17
+ detail: {
18
+ monthIndex: number
19
+ }
20
+ }) => void
21
+ selectorSnippet?: Snippet<[{
22
+ month: number,
23
+ monthName: string
24
+ }]>
25
+ labelSnippet?: Snippet<[{
26
+ month: number,
27
+ monthName: string
28
+ }]>
29
+ }
30
+
31
+ let {
32
+ selectedMonth = $bindable(undefined),
33
+ locale = "it",
34
+ class: clazz = {},
35
+ onclick,
36
+ selectorSnippet,
37
+ labelSnippet,
38
+ }: Props = $props();
39
+
40
+
41
+ function handleMonthClick(monthIndex: number) {
7
42
  selectedMonth = monthIndex;
8
- if (onclick) {
9
- onclick({
10
- detail: {
11
- monthIndex
12
- }
13
- });
43
+
44
+ if(onclick){
45
+ onclick({
46
+ detail: {
47
+ monthIndex
48
+ }
49
+ })
14
50
  }
15
- }
51
+ }
16
52
  </script>
17
53
 
18
54
  <div class="selector-container {clazz.container || ''}">
@@ -1,37 +1,80 @@
1
- <script lang="ts">import '../../../css/main.css';
2
- import './YearSelector.css';
3
- import { scrollAtCenter } from "../common/scroller";
4
- import { onMount } from "svelte";
5
- let { selectedYear = $bindable(undefined), selectableYears = [...Array(150).keys()].map((i) => i + (new Date().getFullYear() - 75)), disabled = false, class: clazz = '', onchange, onclick, selectorSnippet, labelSnippet, } = $props();
6
- let container, targetButtons = {};
7
- onMount(() => {
1
+ <script lang="ts">
2
+ import '../../../css/main.css'
3
+ import './YearSelector.css'
4
+ import { scrollAtCenter } from "../common/scroller";
5
+ import { onMount, type Snippet } from "svelte";
6
+
7
+ interface Props {
8
+ selectedYear?: number;
9
+ selectableYears?: number[];
10
+ disabled?: boolean;
11
+
12
+ class?: string
13
+ onclick?: (event: {
14
+ detail: {
15
+ year: number
16
+ }
17
+ }) => void
18
+ onchange?: (event: {
19
+ detail: {
20
+ year: number | undefined
21
+ }
22
+ }) => void
23
+ selectorSnippet?: Snippet<[{
24
+ year: number,
25
+ handleYearClick: (year: number) => void
26
+ }]>
27
+ labelSnippet?: Snippet<[{
28
+ year: number,
29
+ }]>
30
+ }
31
+
32
+ let {
33
+ selectedYear = $bindable(undefined),
34
+ selectableYears = [...Array(150).keys()].map(
35
+ (i) => i + (new Date().getFullYear() - 75)
36
+ ),
37
+ disabled = false,
38
+ class: clazz = '',
39
+ onchange,
40
+ onclick,
41
+ selectorSnippet,
42
+ labelSnippet,
43
+ }: Props = $props();
44
+
45
+ let container: HTMLElement,
46
+ targetButtons: { [k: string]: HTMLElement } = {};
47
+
48
+ onMount(() => {
8
49
  if (selectedYear)
9
- scrollAtCenter(container, targetButtons[selectedYear], "auto");
10
- });
11
- function handleYearClick(year) {
12
- if (selectedYear === year) {
13
- selectedYear = undefined;
14
- }
15
- else {
16
- selectedYear = year;
17
- scrollAtCenter(container, targetButtons[selectedYear], "smooth");
50
+ scrollAtCenter(container, targetButtons[selectedYear], "auto");
51
+ });
52
+
53
+ function handleYearClick(year: number) {
54
+ if(selectedYear === year) {
55
+ selectedYear = undefined
56
+ } else {
57
+ selectedYear = year;
58
+ scrollAtCenter(container, targetButtons[selectedYear], "smooth");
18
59
  }
19
- if (onclick) {
20
- onclick({
21
- detail: {
22
- year
23
- }
24
- });
60
+
61
+ if(onclick){
62
+ onclick({
63
+ detail: {
64
+ year
65
+ }
66
+ })
25
67
  }
26
- if (onchange) {
27
- onchange({
28
- detail: {
29
- year: selectedYear
30
- }
31
- });
68
+
69
+ if(onchange){
70
+ onchange({
71
+ detail: {
72
+ year: selectedYear
73
+ }
74
+ })
32
75
  }
33
- }
34
- import Button from "../buttons/Button.svelte";
76
+ }
77
+ import Button from "../buttons/Button.svelte";
35
78
  </script>
36
79
 
37
80
  <div bind:this={container} class="selector-container {clazz || ''}">
@@ -1,72 +1,122 @@
1
- <script lang="ts">import Teleporter from '../../../utils/teleporter';
2
- import { BROWSER } from 'esm-env';
3
- import { onMount } from "svelte";
4
- import Keyboarder, {} from '../../../utils/keyboarder';
5
- let { open = $bindable(), persistent = false, transition = 'fly-up', _overlayOpacity = "30%", _overlayColor = "#282828", _overlayBackdropFilter, _transitionTimingFunction = 'cubic-bezier(0.075, 0.82, 0.165, 1)', _transitionDuration = '0.5s', topRightSnippet, centerLeftSnippet, centerRightSnippet, children, } = $props();
6
- let zIndex = $state(50), localOpen = $state(open || false), dialogElement, teleportedUid = undefined, hasBeenOpened = $state(false);
7
- onMount(() => {
8
- if (!teleportedUid) {
9
- let tp = new Teleporter();
10
- teleportedUid = tp.attachNode(dialogElement);
1
+ <script lang="ts">
2
+ import Teleporter from '../../../utils/teleporter';
3
+ import { BROWSER } from 'esm-env';
4
+ import { onMount, type Snippet } from "svelte";
5
+ import Keyboarder, { type CallbackFunction } from '../../../utils/keyboarder';
6
+
7
+ interface Props {
8
+ open?: boolean;
9
+ persistent?: boolean;
10
+ transition?: 'fly-down' | 'fly-up' | 'fly-horizontal' | 'scale' | 'fade';
11
+ _overlayOpacity?: string;
12
+ _overlayColor?: string;
13
+ _overlayBackdropFilter?: string;
14
+ _transitionTimingFunction?: string;
15
+ _transitionDuration?: string;
16
+ topRightSnippet?: Snippet<[]>;
17
+ centerLeftSnippet?: Snippet<[]>;
18
+ centerRightSnippet?: Snippet<[]>;
19
+ children?: Snippet<[]>;
20
+ }
21
+
22
+ let {
23
+ open = $bindable(),
24
+ persistent = false,
25
+ transition = 'fly-up',
26
+ _overlayOpacity = "30%",
27
+ _overlayColor = "#282828",
28
+ _overlayBackdropFilter,
29
+ _transitionTimingFunction = 'cubic-bezier(0.075, 0.82, 0.165, 1)',
30
+ _transitionDuration = '0.5s',
31
+ topRightSnippet,
32
+ centerLeftSnippet,
33
+ centerRightSnippet,
34
+ children,
35
+ }: Props = $props()
36
+
37
+
38
+ let zIndex = $state(50),
39
+ localOpen: boolean = $state(open || false),
40
+ dialogElement: HTMLElement,
41
+ teleportedUid: string | undefined = undefined,
42
+ hasBeenOpened: boolean = $state(false);
43
+
44
+ onMount(() => {
45
+ if(!teleportedUid) {
46
+ let tp = new Teleporter()
47
+ teleportedUid = tp.attachNode(dialogElement)
11
48
  }
12
- let keyboarderHandler = (params) => {
13
- if (params.key == 'Escape' && localOpen)
14
- closeDialog();
15
- };
16
- Keyboarder.on(keyboarderHandler);
49
+
50
+ let keyboarderHandler: CallbackFunction = (params) => {
51
+ if(params.key == 'Escape' && localOpen) closeDialog()
52
+ }
53
+ Keyboarder.on(keyboarderHandler)
54
+
17
55
  return () => {
18
- if (!!teleportedUid) {
19
- let tp = new Teleporter();
20
- tp.destroyNode(teleportedUid);
21
- }
22
- Keyboarder.off(keyboarderHandler);
23
- };
24
- });
25
- $effect.pre(() => {
56
+ if(!!teleportedUid) {
57
+ let tp = new Teleporter()
58
+ tp.destroyNode(teleportedUid)
59
+ }
60
+
61
+ Keyboarder.off(keyboarderHandler)
62
+ }
63
+ })
64
+
65
+ $effect.pre(() => {
26
66
  if (BROWSER) {
27
- if (open && localOpen != open) {
28
- hasBeenOpened = true;
29
- let otherDialogs = document.querySelectorAll("[data-dialog=true]");
30
- let maxZIndex = 0;
31
- if (otherDialogs.length > 0) {
32
- otherDialogs.forEach((dialog) => {
33
- let computedStyle = getComputedStyle(dialog);
34
- let currentZIndex = computedStyle.getPropertyValue('--dialog-z-index');
35
- if (!maxZIndex || maxZIndex < Number(currentZIndex))
36
- maxZIndex = Number(currentZIndex);
37
- });
38
- zIndex = maxZIndex + 2;
39
- }
40
- let otherDrawers = document.querySelectorAll("[data-drawer=true]");
41
- if (otherDrawers.length > 0) {
42
- otherDrawers.forEach((dialog) => {
43
- let computedStyle = getComputedStyle(dialog);
44
- let currentZIndex = computedStyle.getPropertyValue('--drawer-z-index');
45
- if (!maxZIndex || maxZIndex < Number(currentZIndex))
46
- maxZIndex = Number(currentZIndex);
47
- });
48
- zIndex = maxZIndex + 2;
49
- }
50
- document.body.style.overflow = "hidden";
67
+ if (open && localOpen != open) {
68
+ hasBeenOpened = true
69
+
70
+ let otherDialogs: NodeListOf<HTMLElement> =
71
+ document.querySelectorAll("[data-dialog=true]");
72
+
73
+ let maxZIndex = 0;
74
+
75
+ if (otherDialogs.length > 0) {
76
+ otherDialogs.forEach((dialog) => {
77
+ let computedStyle = getComputedStyle(dialog)
78
+ let currentZIndex = computedStyle.getPropertyValue('--dialog-z-index')
79
+ if (!maxZIndex || maxZIndex < Number(currentZIndex))
80
+ maxZIndex = Number(currentZIndex);
81
+ });
82
+ zIndex = maxZIndex + 2;
51
83
  }
52
- else if (!open) {
53
- let otherDialogs = document.querySelectorAll("[data-dialog=true]");
54
- if (otherDialogs.length <= 1) {
55
- document.body.style.overflow = "auto";
56
- }
84
+
85
+ let otherDrawers: NodeListOf<HTMLElement> =
86
+ document.querySelectorAll("[data-drawer=true]");
87
+
88
+ if (otherDrawers.length > 0) {
89
+ otherDrawers.forEach((dialog) => {
90
+ let computedStyle = getComputedStyle(dialog)
91
+ let currentZIndex = computedStyle.getPropertyValue('--drawer-z-index')
92
+ if (!maxZIndex || maxZIndex < Number(currentZIndex))
93
+ maxZIndex = Number(currentZIndex);
94
+ });
95
+ zIndex = maxZIndex + 2;
96
+ }
97
+
98
+ document.body.style.overflow = "hidden";
99
+ } else if (!open) {
100
+ let otherDialogs: NodeListOf<HTMLElement> =
101
+ document.querySelectorAll("[data-dialog=true]");
102
+ if (otherDialogs.length <= 1) {
103
+ document.body.style.overflow = "auto";
57
104
  }
105
+ }
58
106
  }
107
+
59
108
  localOpen = open || false;
60
- });
61
- function closeDialog() {
109
+ });
110
+
111
+ function closeDialog() {
62
112
  open = false;
63
113
  localOpen = false;
64
- }
65
- function handleOverlayClick() {
66
- if (persistent)
67
- return;
114
+ }
115
+
116
+ function handleOverlayClick() {
117
+ if(persistent) return;
68
118
  closeDialog();
69
- }
119
+ }
70
120
  </script>
71
121
 
72
122
  <div