@cloudparker/moldex.js 0.0.29 → 0.0.30

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 (50) hide show
  1. package/dist/views/core/button/components/button/button.svelte +54 -33
  2. package/dist/views/core/button/components/button-back/button-back.svelte +26 -14
  3. package/dist/views/core/button/components/button-close/button-close.svelte +4 -2
  4. package/dist/views/core/button/components/button-close-icon/button-close-icon.svelte +29 -15
  5. package/dist/views/core/button/components/button-list-item/button-list-item.svelte +78 -30
  6. package/dist/views/core/button/components/button-menu/button-menu.svelte +143 -90
  7. package/dist/views/core/button/components/button-ok/button-ok.svelte +4 -2
  8. package/dist/views/core/dialog/components/dialog/dialog.svelte +245 -158
  9. package/dist/views/core/dialog/components/dialog/dialog.svelte.d.ts +2 -7
  10. package/dist/views/core/dialog/components/list-dialog/list-picker-dialog.svelte +152 -108
  11. package/dist/views/core/dialog/components/msg-dialog/msg-dialog.svelte +22 -13
  12. package/dist/views/core/dialog/index.d.ts +4 -2
  13. package/dist/views/core/dialog/index.js +2 -2
  14. package/dist/views/core/drawer/components/drawer/drawer.svelte +52 -34
  15. package/dist/views/core/icon/components/icon/icon.svelte +24 -13
  16. package/dist/views/core/input/components/color-field/color-field.svelte +71 -61
  17. package/dist/views/core/input/components/combobox-field/combobox-field.svelte +330 -248
  18. package/dist/views/core/input/components/date-field/date-field.svelte +10 -6
  19. package/dist/views/core/input/components/datetime-field/datetime-field.svelte +10 -6
  20. package/dist/views/core/input/components/email-field/email-field.svelte +9 -6
  21. package/dist/views/core/input/components/file-field/file-field.svelte +69 -57
  22. package/dist/views/core/input/components/input-field/input-field.svelte +251 -151
  23. package/dist/views/core/input/components/label/label.svelte +24 -10
  24. package/dist/views/core/input/components/number-field/number-field.svelte +10 -6
  25. package/dist/views/core/input/components/password-field/password-field.svelte +59 -48
  26. package/dist/views/core/input/components/phone-field/phone-field.svelte +62 -48
  27. package/dist/views/core/input/components/range-field/range-field.svelte +51 -32
  28. package/dist/views/core/input/components/search-field/search-field.svelte +52 -38
  29. package/dist/views/core/input/components/text-field/text-field.svelte +9 -6
  30. package/dist/views/core/input/components/textarea-field/textarea-field.svelte +9 -6
  31. package/dist/views/core/input/components/time-field/time-field.svelte +9 -6
  32. package/dist/views/core/navbar/components/navbar/navbar.svelte +63 -31
  33. package/dist/views/core/no-data/components/no-data/no-data.svelte +37 -20
  34. package/dist/views/core/pagination/components/pagination/pagination.svelte +100 -71
  35. package/dist/views/core/progressbar/components/progressbar/progressbar.svelte +37 -23
  36. package/dist/views/core/referrer/components/referrer.svelte +15 -13
  37. package/dist/views/core/ruler/components/vertical-ruler/verticcal-ruler.svelte +6 -2
  38. package/dist/views/core/screen-detector/components/screen-detector.svelte +13 -9
  39. package/dist/views/core/spinner/components/spinner/spinner.svelte +7 -2
  40. package/dist/views/core/text/components/text-await/text-await.svelte +8 -2
  41. package/dist/views/core/text/components/text-copy/text-copy.svelte +28 -17
  42. package/dist/views/core/text/components/text-country/text-country.svelte +41 -29
  43. package/dist/views/core/text/components/text-country-state/text-country-state.svelte +37 -29
  44. package/dist/views/core/text/components/text-currency/text-currency.svelte +21 -10
  45. package/dist/views/core/text/components/text-date/text-date.svelte +33 -21
  46. package/dist/views/core/text/components/text-email/text-email.svelte +13 -4
  47. package/dist/views/core/text/components/text-html/text-html.svelte +3 -2
  48. package/dist/views/core/text/components/text-phone/text-phone.svelte +13 -4
  49. package/dist/views/core/toast/components/toast/toast.svelte +44 -21
  50. package/package.json +1 -1
@@ -1,163 +1,250 @@
1
- <script module lang="ts">import ButtonBack from "../../../button/components/button-back/button-back.svelte";
2
- import ButtonClose from "../../../button/components/button-close-icon/button-close-icon.svelte";
3
- export var DialogSizeEnum = /* @__PURE__ */ ((DialogSizeEnum2) => {
4
- DialogSizeEnum2["SM"] = "sm";
5
- DialogSizeEnum2["MD"] = "md";
6
- DialogSizeEnum2["LG"] = "lg";
7
- DialogSizeEnum2["FULL"] = "full";
8
- return DialogSizeEnum2;
9
- })(DialogSizeEnum || {});
1
+ <script module lang="ts">
2
+ import ButtonBack from '../../../button/components/button-back/button-back.svelte';
3
+ import ButtonClose from '../../../button/components/button-close-icon/button-close-icon.svelte';
4
+
5
+ /**
6
+ * Return a Promise<boolean> value, whic=h will indiacate dialog to close or not.
7
+ * false -> Dont close Dialog
8
+ * true -> Close dialog
9
+ */
10
+ export type DialogCloseButtonClickType = (ev: MouseEvent | TouchEvent) => Promise<boolean>;
11
+
12
+ export type DialogSizeType = 'sm' | 'md' | 'lg' | 'full';
13
+
14
+ export type DialogPropsType = {
15
+ id?: string;
16
+ cancelable?: boolean;
17
+ className?: string;
18
+ containerClassName?: string;
19
+ backdropClassName?: string;
20
+ hasTitle?: boolean;
21
+ hasSubtitle?: boolean;
22
+ title?: string;
23
+ subtitle?: string;
24
+ titleClassName?: string;
25
+ subtitleClassName?: string;
26
+ hasHeader?: boolean;
27
+ hasHeaderShadow?: boolean;
28
+ headerClassName?: string;
29
+ hasHeaderClose?: boolean;
30
+ headerCloseButtonClassName?: string;
31
+ headerCloseIconPath?: string;
32
+ headerCloseIconClassName?: string;
33
+ hasHeaderBack?: boolean;
34
+ headerBackButtonClassName?: string;
35
+ headerBackIconPath?: string;
36
+ headerBackIconClassName?: string;
37
+ hasFooter?: boolean;
38
+ hasFooterShadow?: boolean;
39
+ hasFooterCloseButton?: boolean;
40
+ hasFooterOkButton?: boolean;
41
+ footerClassName?: string;
42
+ footerCloseLabel?: string;
43
+ footerCloseButtonClassName?: string;
44
+ footerOkLable?: string;
45
+ footerOkButtonClassName?: string;
46
+ footerOkButtonType?: 'button' | 'submit' | 'reset';
47
+ footerOkButtonSpinner?: boolean;
48
+ footerOkButtonDisabled?: boolean;
49
+ submitButtonFormId?: string;
50
+ bodyClassName?: string;
51
+ bodyComponent?: any;
52
+ component?: any;
53
+ props?: any;
54
+ size?: DialogSizeType;
55
+ children?: Snippet;
56
+ headerSnippet?: Snippet<[dialogExports: DialogExportsType]>;
57
+ bodySnippet?: Snippet<[dialogExports: DialogExportsType]>;
58
+ footerSnippet?: Snippet<[dialogExports: DialogExportsType]>;
59
+ onClose?: () => void;
60
+ onResult?: (value: any) => void;
61
+ onOkClick?: (ev: MouseEvent | TouchEvent, options: DialogExportsType) => void;
62
+ onCloseClick?: DialogCloseButtonClickType;
63
+ };
64
+
65
+ export type DialogExportsType = {
66
+ closeDialog: () => void;
67
+ setResult: (value: any) => void;
68
+ setOkSpinner: (value: boolean) => void;
69
+ setOkDisabled: (value: boolean) => void;
70
+ setOnOkClick: (onclick: (ev: MouseEvent | TouchEvent) => void) => void;
71
+ setOnCloseClick: (onclick: DialogCloseButtonClickType) => void;
72
+ };
10
73
  </script>
11
74
 
12
- <script lang="ts">import Button from "../../../button/components/button/button.svelte";
13
- import {} from "svelte";
14
- import "../../../../../tailwind.css";
15
- import { mdiArrowLeft, mdiClose } from "../../../icon";
16
- let {
17
- id = "",
18
- cancelable = true,
19
- className = "",
20
- containerClassName = "",
21
- backdropClassName = "",
22
- hasHeaderShadow = false,
23
- hasTitle = false,
24
- hasSubtitle = false,
25
- title = "",
26
- subtitle = "",
27
- titleClassName = "",
28
- subtitleClassName = "",
29
- hasHeader = false,
30
- headerClassName = "",
31
- hasHeaderClose = false,
32
- headerCloseButtonClassName = "",
33
- headerCloseIconPath = mdiClose,
34
- headerCloseIconClassName = "",
35
- hasHeaderBack = false,
36
- headerBackButtonClassName = "",
37
- headerBackIconPath = mdiArrowLeft,
38
- headerBackIconClassName = "",
39
- hasFooter = false,
40
- hasFooterShadow = false,
41
- hasFooterCloseButton = false,
42
- hasFooterOkButton = false,
43
- footerClassName = "",
44
- footerCloseLabel = "Close",
45
- footerCloseButtonClassName = "",
46
- footerOkLable = "Save",
47
- footerOkButtonClassName = "",
48
- footerOkButtonType = "button",
49
- footerOkButtonSpinner = false,
50
- footerOkButtonDisabled = false,
51
- submitButtonFormId = void 0,
52
- size = DialogSizeEnum.SM,
53
- bodyClassName = "",
54
- bodyComponent,
55
- component,
56
- props = {},
57
- children,
58
- headerSnippet,
59
- bodySnippet,
60
- footerSnippet,
61
- onClose,
62
- onResult,
63
- onOkClick,
64
- onCloseClick
65
- } = $props();
66
- let dialogExports = {
67
- closeDialog,
68
- setResult,
69
- setOkSpinner,
70
- setOkDisabled,
71
- setOnCloseClick,
72
- setOnOkClick
73
- };
74
- let isPlaced = $state(false);
75
- let isOpened = $state(false);
76
- let CustomComponent = $state(null);
77
- let BodyComponent = $state(null);
78
- let result;
79
- let smSizeClassName = "w-11/12 sm:w-3/4 md:w-1/2 lg:w-1/3 xl:w-1/4";
80
- let mdSizeClassName = "w-11/12 sm:w-3/4 md:w-2/3 lg:w-1/2 xl:w-1/3";
81
- let lgSizeClassName = "w-11/12 sm:w-3/4 md:w-3/4 lg:w-2/3 xl:w-1/2";
82
- let fullSizeClassName = "fixed inset-0 w-screen h-screen ";
83
- let screenSizeClassNameMap = {
84
- sm: smSizeClassName,
85
- md: mdSizeClassName,
86
- lg: lgSizeClassName,
87
- full: fullSizeClassName
88
- };
89
- export function toggleDialog() {
90
- if (isOpened) {
91
- closeDialog();
92
- } else {
93
- openDialog();
94
- }
95
- }
96
- export function openDialog() {
97
- isPlaced = true;
98
- setTimeout(() => {
99
- isOpened = true;
100
- }, 0);
101
- }
102
- export function closeDialog(value) {
103
- return new Promise((resolve) => {
104
- isOpened = false;
105
- setTimeout(() => {
106
- isPlaced = false;
107
- onClose && onClose();
108
- onResult && onResult(result || value);
109
- resolve(result);
110
- }, 300);
111
- });
112
- }
113
- export function setResult(value) {
114
- result = value;
115
- }
116
- export function setOkDisabled(value) {
117
- footerOkButtonDisabled = value;
118
- }
119
- export function setOkSpinner(value) {
120
- footerOkButtonSpinner = value;
121
- }
122
- export function setOnOkClick(onclick) {
123
- onOkClick = onclick;
124
- }
125
- export function setOnCloseClick(onclick) {
126
- onCloseClick = onclick;
127
- }
128
- function handleBackdropClick() {
129
- if (cancelable) {
130
- closeDialog();
131
- }
132
- }
133
- async function handleClose(ev) {
134
- if (onCloseClick) {
135
- if (await onCloseClick(ev)) {
136
- closeDialog();
137
- }
138
- } else {
139
- closeDialog();
140
- }
141
- }
142
- function handleKeyDown(event) {
143
- if (event.key === "Escape" || event.key === "Esc") {
144
- if (cancelable) {
145
- event.stopPropagation();
146
- closeDialog();
147
- }
148
- }
149
- }
150
- function handleOkClick(event) {
151
- if (onOkClick) {
152
- onOkClick(event, dialogExports);
153
- }
154
- }
155
- $effect(() => {
156
- BodyComponent = bodyComponent;
157
- });
158
- $effect(() => {
159
- CustomComponent = component;
160
- });
75
+ <script lang="ts">
76
+ import Button from '../../../button/components/button/button.svelte';
77
+ import { type Component as ComponetType, type Snippet } from 'svelte';
78
+ import '../../../../../tailwind.css';
79
+ import { mdiArrowLeft, mdiClose } from '../../../icon';
80
+
81
+ let {
82
+ id = '',
83
+ cancelable = true,
84
+ className = '',
85
+ containerClassName = '',
86
+ backdropClassName = '',
87
+ hasHeaderShadow = false,
88
+ hasTitle = false,
89
+ hasSubtitle = false,
90
+ title = '',
91
+ subtitle = '',
92
+ titleClassName = '',
93
+ subtitleClassName = '',
94
+ hasHeader = false,
95
+ headerClassName = '',
96
+ hasHeaderClose = false,
97
+ headerCloseButtonClassName = '',
98
+ headerCloseIconPath = mdiClose,
99
+ headerCloseIconClassName = '',
100
+ hasHeaderBack = false,
101
+ headerBackButtonClassName = '',
102
+ headerBackIconPath = mdiArrowLeft,
103
+ headerBackIconClassName = '',
104
+ hasFooter = false,
105
+ hasFooterShadow = false,
106
+ hasFooterCloseButton = false,
107
+ hasFooterOkButton = false,
108
+ footerClassName = '',
109
+ footerCloseLabel = 'Close',
110
+ footerCloseButtonClassName = '',
111
+ footerOkLable = 'Save',
112
+ footerOkButtonClassName = '',
113
+ footerOkButtonType = 'button',
114
+ footerOkButtonSpinner = false,
115
+ footerOkButtonDisabled = false,
116
+ submitButtonFormId = undefined,
117
+ size = 'sm',
118
+ bodyClassName = '',
119
+ bodyComponent,
120
+ component,
121
+ props = {},
122
+ children,
123
+ headerSnippet,
124
+ bodySnippet,
125
+ footerSnippet,
126
+ onClose,
127
+ onResult,
128
+ onOkClick,
129
+ onCloseClick
130
+ }: DialogPropsType = $props();
131
+
132
+ let dialogExports: DialogExportsType = {
133
+ closeDialog,
134
+ setResult,
135
+ setOkSpinner,
136
+ setOkDisabled,
137
+ setOnCloseClick,
138
+ setOnOkClick
139
+ };
140
+
141
+ let isPlaced: boolean = $state(false);
142
+ let isOpened: boolean = $state(false);
143
+
144
+ let CustomComponent: ComponetType | null = $state(null);
145
+
146
+ let BodyComponent: ComponetType | null = $state(null);
147
+
148
+ let result: any;
149
+
150
+ let smSizeClassName = 'w-11/12 sm:w-3/4 md:w-1/2 lg:w-1/3 xl:w-1/4';
151
+ let mdSizeClassName = 'w-11/12 sm:w-3/4 md:w-2/3 lg:w-1/2 xl:w-1/3';
152
+ let lgSizeClassName = 'w-11/12 sm:w-3/4 md:w-3/4 lg:w-2/3 xl:w-1/2';
153
+ let fullSizeClassName = 'fixed inset-0 w-screen h-screen ';
154
+
155
+ let screenSizeClassNameMap: { [key: string]: string } = {
156
+ sm: smSizeClassName,
157
+ md: mdSizeClassName,
158
+ lg: lgSizeClassName,
159
+ full: fullSizeClassName
160
+ };
161
+
162
+ export function toggleDialog() {
163
+ if (isOpened) {
164
+ closeDialog();
165
+ } else {
166
+ openDialog();
167
+ }
168
+ }
169
+
170
+ export function openDialog() {
171
+ isPlaced = true;
172
+ setTimeout(() => {
173
+ isOpened = true;
174
+ }, 0);
175
+ }
176
+
177
+ export function closeDialog(value?: any): Promise<any> {
178
+ return new Promise((resolve) => {
179
+ isOpened = false;
180
+ setTimeout(() => {
181
+ isPlaced = false;
182
+ onClose && onClose();
183
+ onResult && onResult(result || value);
184
+ resolve(result);
185
+ }, 300);
186
+ });
187
+ }
188
+
189
+ export function setResult(value: any) {
190
+ result = value;
191
+ }
192
+
193
+ export function setOkDisabled(value: boolean) {
194
+ footerOkButtonDisabled = value;
195
+ }
196
+
197
+ export function setOkSpinner(value: boolean) {
198
+ footerOkButtonSpinner = value;
199
+ }
200
+
201
+ export function setOnOkClick(
202
+ onclick: (event: MouseEvent | TouchEvent, options: DialogExportsType) => void
203
+ ) {
204
+ onOkClick = onclick;
205
+ }
206
+
207
+ export function setOnCloseClick(onclick: DialogCloseButtonClickType) {
208
+ onCloseClick = onclick;
209
+ }
210
+
211
+ function handleBackdropClick() {
212
+ if (cancelable) {
213
+ closeDialog();
214
+ }
215
+ }
216
+
217
+ async function handleClose(ev: MouseEvent | TouchEvent) {
218
+ if (onCloseClick) {
219
+ if (await onCloseClick(ev)) {
220
+ closeDialog();
221
+ }
222
+ } else {
223
+ closeDialog();
224
+ }
225
+ }
226
+
227
+ function handleKeyDown(event: KeyboardEvent) {
228
+ if (event.key === 'Escape' || event.key === 'Esc') {
229
+ if (cancelable) {
230
+ event.stopPropagation();
231
+ closeDialog();
232
+ }
233
+ }
234
+ }
235
+
236
+ function handleOkClick(event: MouseEvent | TouchEvent) {
237
+ if (onOkClick) {
238
+ onOkClick(event, dialogExports);
239
+ }
240
+ }
241
+
242
+ $effect(() => {
243
+ BodyComponent = bodyComponent;
244
+ });
245
+ $effect(() => {
246
+ CustomComponent = component;
247
+ });
161
248
  </script>
162
249
 
163
250
  {#snippet dialogContent()}
@@ -4,12 +4,7 @@
4
4
  * true -> Close dialog
5
5
  */
6
6
  export type DialogCloseButtonClickType = (ev: MouseEvent | TouchEvent) => Promise<boolean>;
7
- export declare enum DialogSizeEnum {
8
- SM = "sm",
9
- MD = "md",
10
- LG = "lg",
11
- FULL = "full"
12
- }
7
+ export type DialogSizeType = 'sm' | 'md' | 'lg' | 'full';
13
8
  export type DialogPropsType = {
14
9
  id?: string;
15
10
  cancelable?: boolean;
@@ -50,7 +45,7 @@ export type DialogPropsType = {
50
45
  bodyComponent?: any;
51
46
  component?: any;
52
47
  props?: any;
53
- size?: DialogSizeEnum;
48
+ size?: DialogSizeType;
54
49
  children?: Snippet;
55
50
  headerSnippet?: Snippet<[dialogExports: DialogExportsType]>;
56
51
  bodySnippet?: Snippet<[dialogExports: DialogExportsType]>;