sprintify-ui 0.0.11 → 0.0.13
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.
- package/README.md +8 -7
- package/dist/sprintify-ui.es.js +5911 -3760
- package/dist/style.css +1 -1
- package/dist/tailwindcss/index.js +1 -2
- package/dist/types/src/components/BaseCharacterCounter.vue.d.ts +143 -0
- package/dist/types/src/components/BaseHasMany.vue.d.ts +277 -0
- package/dist/types/src/components/BaseInput.vue.d.ts +39 -5
- package/dist/types/src/components/BaseLoadingCover.vue.d.ts +72 -0
- package/dist/types/src/components/{BaseMediaLibraryItem.vue.d.ts → BaseMediaItem.vue.d.ts} +26 -4
- package/dist/types/src/components/BaseMediaLibrary.vue.d.ts +23 -15
- package/dist/types/src/components/BaseMediaPreview.vue.d.ts +97 -0
- package/dist/types/src/components/BaseModalCenter.vue.d.ts +8 -8
- package/dist/types/src/components/BaseModalSide.vue.d.ts +8 -8
- package/dist/types/src/components/BasePagination.vue.d.ts +105 -13
- package/dist/types/src/components/BaseSelect.vue.d.ts +130 -26
- package/dist/types/src/components/BaseSideNavigationItem.vue.d.ts +20 -1
- package/dist/types/src/components/BaseSwitch.vue.d.ts +15 -8
- package/dist/types/src/components/BaseTabItem.vue.d.ts +45 -4
- package/dist/types/src/components/BaseTagAutocomplete.vue.d.ts +25 -17
- package/dist/types/src/components/BaseTagAutocompleteFetch.vue.d.ts +37 -21
- package/dist/types/src/components/BaseTextareaAutoresize.vue.d.ts +175 -21
- package/dist/types/src/components/index.d.ts +30 -1
- package/dist/types/src/index.d.ts +4 -0
- package/package.json +1 -1
- package/src/components/BaseAppDialogs.vue +2 -2
- package/src/components/BaseAppNotifications.vue +1 -1
- package/src/components/BaseAutocomplete.vue +16 -18
- package/src/components/BaseBelongsTo.vue +1 -0
- package/src/components/BaseCharacterCounter.stories.js +30 -0
- package/src/components/BaseCharacterCounter.vue +60 -0
- package/src/components/BaseClipboard.vue +1 -1
- package/src/components/BaseDataIterator.stories.js +2 -2
- package/src/components/BaseDataIterator.vue +32 -38
- package/src/components/BaseDataTable.stories.js +2 -2
- package/src/components/BaseFileUploader.vue +4 -0
- package/src/components/BaseHasMany.vue +92 -0
- package/src/components/BaseInput.stories.js +46 -0
- package/src/components/BaseInput.vue +10 -2
- package/src/components/BaseInputLabel.stories.js +31 -0
- package/src/components/BaseInputLabel.vue +1 -1
- package/src/components/BaseLoadingCover.stories.js +55 -0
- package/src/components/BaseLoadingCover.vue +19 -1
- package/src/components/BaseMediaItem.stories.js +41 -0
- package/src/components/BaseMediaItem.vue +71 -0
- package/src/components/BaseMediaLibrary.stories.js +80 -0
- package/src/components/BaseMediaLibrary.vue +67 -68
- package/src/components/BaseMediaPreview.stories.js +72 -0
- package/src/components/BaseMediaPreview.vue +90 -0
- package/src/components/BaseMenu.stories.js +125 -0
- package/src/components/BaseMenu.vue +1 -1
- package/src/components/BaseModalCenter.stories.js +61 -0
- package/src/components/BaseModalCenter.vue +2 -2
- package/src/components/BaseModalSide.stories.js +55 -0
- package/src/components/BaseModalSide.vue +2 -2
- package/src/components/BaseNavbar.stories.js +150 -0
- package/src/components/BaseNavbar.vue +3 -0
- package/src/components/BaseNavbarItem.vue +1 -0
- package/src/components/BaseNavbarItemContent.vue +3 -0
- package/src/components/BasePagination.stories.js +32 -0
- package/src/components/BasePagination.vue +126 -40
- package/src/components/BasePanel.stories.js +56 -0
- package/src/components/BasePassword.stories.js +36 -0
- package/src/components/BasePassword.vue +11 -5
- package/src/components/BaseProcessRing.stories.js +27 -0
- package/src/components/BaseReadMore.stories.js +30 -0
- package/src/components/BaseReadMore.vue +1 -1
- package/src/components/BaseSelect.stories.js +67 -0
- package/src/components/BaseSelect.vue +144 -44
- package/src/components/BaseSideNavigation.stories.js +55 -0
- package/src/components/BaseSideNavigation.vue +7 -2
- package/src/components/BaseSideNavigationItem.vue +21 -5
- package/src/components/BaseSkeleton.stories.js +36 -0
- package/src/components/BaseSwitch.stories.js +101 -0
- package/src/components/BaseSwitch.vue +90 -12
- package/src/components/BaseSystemAlert.stories.js +63 -0
- package/src/components/BaseTabItem.vue +29 -6
- package/src/components/BaseTable.vue +2 -2
- package/src/components/BaseTabs.stories.js +54 -0
- package/src/components/BaseTabs.vue +3 -3
- package/src/components/BaseTagAutocomplete.stories.js +129 -0
- package/src/components/BaseTagAutocomplete.vue +155 -57
- package/src/components/BaseTagAutocompleteFetch.stories.js +130 -0
- package/src/components/BaseTagAutocompleteFetch.vue +36 -25
- package/src/components/BaseTextarea.stories.js +35 -0
- package/src/components/BaseTextarea.vue +1 -1
- package/src/components/BaseTextareaAutoresize.stories.js +49 -0
- package/src/components/BaseTextareaAutoresize.vue +83 -87
- package/src/components/HasMany.stories.js +135 -0
- package/src/components/index.ts +58 -0
- package/src/lang/en.json +2 -1
- package/src/lang/fr.json +2 -1
- package/dist/types/src/components/BasePaginationSimple.vue.d.ts +0 -25
- package/dist/types/src/components/BaseWordCount.vue.d.ts +0 -31
- package/src/components/BaseMediaLibraryItem.vue +0 -92
- package/src/components/BasePaginationSimple.vue +0 -60
- package/src/components/BaseWordCount.vue +0 -36
|
@@ -9,8 +9,8 @@ declare const _default: {
|
|
|
9
9
|
inputClass: string;
|
|
10
10
|
placeholder: string;
|
|
11
11
|
disabled: boolean;
|
|
12
|
+
queryKey: string;
|
|
12
13
|
max: number;
|
|
13
|
-
min: number;
|
|
14
14
|
}> & Omit<Readonly<import("vue").ExtractPropTypes<{
|
|
15
15
|
modelValue: {
|
|
16
16
|
required: true;
|
|
@@ -44,20 +44,20 @@ declare const _default: {
|
|
|
44
44
|
default: boolean;
|
|
45
45
|
type: BooleanConstructor;
|
|
46
46
|
};
|
|
47
|
-
min: {
|
|
48
|
-
default: undefined;
|
|
49
|
-
type: NumberConstructor;
|
|
50
|
-
};
|
|
51
47
|
max: {
|
|
52
48
|
default: undefined;
|
|
53
49
|
type: NumberConstructor;
|
|
54
50
|
};
|
|
51
|
+
queryKey: {
|
|
52
|
+
default: string;
|
|
53
|
+
type: StringConstructor;
|
|
54
|
+
};
|
|
55
55
|
}>> & {
|
|
56
56
|
onFocus?: ((...args: any[]) => any) | undefined;
|
|
57
57
|
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
58
58
|
onTyping?: ((...args: any[]) => any) | undefined;
|
|
59
59
|
onScrollBottom?: ((...args: any[]) => any) | undefined;
|
|
60
|
-
} & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "required" | "inputClass" | "placeholder" | "disabled" | "
|
|
60
|
+
} & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "required" | "inputClass" | "placeholder" | "disabled" | "queryKey" | "max">;
|
|
61
61
|
$attrs: {
|
|
62
62
|
[x: string]: unknown;
|
|
63
63
|
};
|
|
@@ -104,14 +104,14 @@ declare const _default: {
|
|
|
104
104
|
default: boolean;
|
|
105
105
|
type: BooleanConstructor;
|
|
106
106
|
};
|
|
107
|
-
min: {
|
|
108
|
-
default: undefined;
|
|
109
|
-
type: NumberConstructor;
|
|
110
|
-
};
|
|
111
107
|
max: {
|
|
112
108
|
default: undefined;
|
|
113
109
|
type: NumberConstructor;
|
|
114
110
|
};
|
|
111
|
+
queryKey: {
|
|
112
|
+
default: string;
|
|
113
|
+
type: StringConstructor;
|
|
114
|
+
};
|
|
115
115
|
}>> & {
|
|
116
116
|
onFocus?: ((...args: any[]) => any) | undefined;
|
|
117
117
|
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
@@ -122,8 +122,8 @@ declare const _default: {
|
|
|
122
122
|
inputClass: string;
|
|
123
123
|
placeholder: string;
|
|
124
124
|
disabled: boolean;
|
|
125
|
+
queryKey: string;
|
|
125
126
|
max: number;
|
|
126
|
-
min: number;
|
|
127
127
|
}, {}, string> & {
|
|
128
128
|
beforeCreate?: ((() => void) | (() => void)[]) | undefined;
|
|
129
129
|
created?: ((() => void) | (() => void)[]) | undefined;
|
|
@@ -177,14 +177,14 @@ declare const _default: {
|
|
|
177
177
|
default: boolean;
|
|
178
178
|
type: BooleanConstructor;
|
|
179
179
|
};
|
|
180
|
-
min: {
|
|
181
|
-
default: undefined;
|
|
182
|
-
type: NumberConstructor;
|
|
183
|
-
};
|
|
184
180
|
max: {
|
|
185
181
|
default: undefined;
|
|
186
182
|
type: NumberConstructor;
|
|
187
183
|
};
|
|
184
|
+
queryKey: {
|
|
185
|
+
default: string;
|
|
186
|
+
type: StringConstructor;
|
|
187
|
+
};
|
|
188
188
|
}>> & {
|
|
189
189
|
onFocus?: ((...args: any[]) => any) | undefined;
|
|
190
190
|
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
@@ -227,14 +227,14 @@ declare const _default: {
|
|
|
227
227
|
default: boolean;
|
|
228
228
|
type: BooleanConstructor;
|
|
229
229
|
};
|
|
230
|
-
min: {
|
|
231
|
-
default: undefined;
|
|
232
|
-
type: NumberConstructor;
|
|
233
|
-
};
|
|
234
230
|
max: {
|
|
235
231
|
default: undefined;
|
|
236
232
|
type: NumberConstructor;
|
|
237
233
|
};
|
|
234
|
+
queryKey: {
|
|
235
|
+
default: string;
|
|
236
|
+
type: StringConstructor;
|
|
237
|
+
};
|
|
238
238
|
}>> & {
|
|
239
239
|
onFocus?: ((...args: any[]) => any) | undefined;
|
|
240
240
|
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
@@ -245,7 +245,23 @@ declare const _default: {
|
|
|
245
245
|
inputClass: string;
|
|
246
246
|
placeholder: string;
|
|
247
247
|
disabled: boolean;
|
|
248
|
+
queryKey: string;
|
|
248
249
|
max: number;
|
|
249
|
-
|
|
250
|
-
|
|
250
|
+
}, {}, string> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
|
|
251
|
+
$slots: {
|
|
252
|
+
option: (_: {
|
|
253
|
+
option: Option;
|
|
254
|
+
selected: boolean;
|
|
255
|
+
active: boolean;
|
|
256
|
+
}) => any;
|
|
257
|
+
footer: (_: {
|
|
258
|
+
options: import("@/types/types").NormalizedOption[];
|
|
259
|
+
} & {
|
|
260
|
+
keywords: string;
|
|
261
|
+
}) => any;
|
|
262
|
+
empty: (_: {
|
|
263
|
+
firstSearch: boolean;
|
|
264
|
+
}) => any;
|
|
265
|
+
};
|
|
266
|
+
});
|
|
251
267
|
export default _default;
|
|
@@ -1,4 +1,160 @@
|
|
|
1
|
-
declare const _default:
|
|
1
|
+
declare const _default: {
|
|
2
|
+
new (...args: any[]): {
|
|
3
|
+
$: import("vue").ComponentInternalInstance;
|
|
4
|
+
$data: {};
|
|
5
|
+
$props: Partial<{
|
|
6
|
+
modelValue: string;
|
|
7
|
+
placeholder: string;
|
|
8
|
+
disabled: boolean;
|
|
9
|
+
maxHeight: number;
|
|
10
|
+
submitOnEnter: boolean;
|
|
11
|
+
}> & Omit<Readonly<import("vue").ExtractPropTypes<{
|
|
12
|
+
modelValue: {
|
|
13
|
+
default: string;
|
|
14
|
+
type: StringConstructor;
|
|
15
|
+
};
|
|
16
|
+
placeholder: {
|
|
17
|
+
default: string;
|
|
18
|
+
type: StringConstructor;
|
|
19
|
+
};
|
|
20
|
+
name: {
|
|
21
|
+
required: true;
|
|
22
|
+
type: StringConstructor;
|
|
23
|
+
};
|
|
24
|
+
maxHeight: {
|
|
25
|
+
default: number;
|
|
26
|
+
type: NumberConstructor;
|
|
27
|
+
};
|
|
28
|
+
/**
|
|
29
|
+
* Setting this to true will trigger the 'submit' event while pressing Enter.
|
|
30
|
+
* Users will be able to add a line break while pressing Shift + Enter.
|
|
31
|
+
*/
|
|
32
|
+
submitOnEnter: {
|
|
33
|
+
default: boolean;
|
|
34
|
+
type: BooleanConstructor;
|
|
35
|
+
};
|
|
36
|
+
disabled: {
|
|
37
|
+
default: boolean;
|
|
38
|
+
type: BooleanConstructor;
|
|
39
|
+
};
|
|
40
|
+
}>> & {
|
|
41
|
+
onFocus?: ((...args: any[]) => any) | undefined;
|
|
42
|
+
onInput?: ((...args: any[]) => any) | undefined;
|
|
43
|
+
onSubmit?: ((...args: any[]) => any) | undefined;
|
|
44
|
+
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
45
|
+
} & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "modelValue" | "placeholder" | "disabled" | "maxHeight" | "submitOnEnter">;
|
|
46
|
+
$attrs: {
|
|
47
|
+
[x: string]: unknown;
|
|
48
|
+
};
|
|
49
|
+
$refs: {
|
|
50
|
+
[x: string]: unknown;
|
|
51
|
+
};
|
|
52
|
+
$slots: Readonly<{
|
|
53
|
+
[name: string]: import("vue").Slot | undefined;
|
|
54
|
+
}>;
|
|
55
|
+
$root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null;
|
|
56
|
+
$parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null;
|
|
57
|
+
$emit: (event: "input" | "submit" | "update:modelValue" | "focus", ...args: any[]) => void;
|
|
58
|
+
$el: any;
|
|
59
|
+
$options: import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
|
|
60
|
+
modelValue: {
|
|
61
|
+
default: string;
|
|
62
|
+
type: StringConstructor;
|
|
63
|
+
};
|
|
64
|
+
placeholder: {
|
|
65
|
+
default: string;
|
|
66
|
+
type: StringConstructor;
|
|
67
|
+
};
|
|
68
|
+
name: {
|
|
69
|
+
required: true;
|
|
70
|
+
type: StringConstructor;
|
|
71
|
+
};
|
|
72
|
+
maxHeight: {
|
|
73
|
+
default: number;
|
|
74
|
+
type: NumberConstructor;
|
|
75
|
+
};
|
|
76
|
+
/**
|
|
77
|
+
* Setting this to true will trigger the 'submit' event while pressing Enter.
|
|
78
|
+
* Users will be able to add a line break while pressing Shift + Enter.
|
|
79
|
+
*/
|
|
80
|
+
submitOnEnter: {
|
|
81
|
+
default: boolean;
|
|
82
|
+
type: BooleanConstructor;
|
|
83
|
+
};
|
|
84
|
+
disabled: {
|
|
85
|
+
default: boolean;
|
|
86
|
+
type: BooleanConstructor;
|
|
87
|
+
};
|
|
88
|
+
}>> & {
|
|
89
|
+
onFocus?: ((...args: any[]) => any) | undefined;
|
|
90
|
+
onInput?: ((...args: any[]) => any) | undefined;
|
|
91
|
+
onSubmit?: ((...args: any[]) => any) | undefined;
|
|
92
|
+
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
93
|
+
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("input" | "submit" | "update:modelValue" | "focus")[], string, {
|
|
94
|
+
modelValue: string;
|
|
95
|
+
placeholder: string;
|
|
96
|
+
disabled: boolean;
|
|
97
|
+
maxHeight: number;
|
|
98
|
+
submitOnEnter: boolean;
|
|
99
|
+
}, {}, string> & {
|
|
100
|
+
beforeCreate?: ((() => void) | (() => void)[]) | undefined;
|
|
101
|
+
created?: ((() => void) | (() => void)[]) | undefined;
|
|
102
|
+
beforeMount?: ((() => void) | (() => void)[]) | undefined;
|
|
103
|
+
mounted?: ((() => void) | (() => void)[]) | undefined;
|
|
104
|
+
beforeUpdate?: ((() => void) | (() => void)[]) | undefined;
|
|
105
|
+
updated?: ((() => void) | (() => void)[]) | undefined;
|
|
106
|
+
activated?: ((() => void) | (() => void)[]) | undefined;
|
|
107
|
+
deactivated?: ((() => void) | (() => void)[]) | undefined;
|
|
108
|
+
beforeDestroy?: ((() => void) | (() => void)[]) | undefined;
|
|
109
|
+
beforeUnmount?: ((() => void) | (() => void)[]) | undefined;
|
|
110
|
+
destroyed?: ((() => void) | (() => void)[]) | undefined;
|
|
111
|
+
unmounted?: ((() => void) | (() => void)[]) | undefined;
|
|
112
|
+
renderTracked?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
|
|
113
|
+
renderTriggered?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
|
|
114
|
+
errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null, info: string) => boolean | void)[]) | undefined;
|
|
115
|
+
};
|
|
116
|
+
$forceUpdate: () => void;
|
|
117
|
+
$nextTick: typeof import("vue").nextTick;
|
|
118
|
+
$watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R) => any : (...args: any) => any, options?: import("vue").WatchOptions<boolean> | undefined): import("vue").WatchStopHandle;
|
|
119
|
+
} & Readonly<import("vue").ExtractPropTypes<{
|
|
120
|
+
modelValue: {
|
|
121
|
+
default: string;
|
|
122
|
+
type: StringConstructor;
|
|
123
|
+
};
|
|
124
|
+
placeholder: {
|
|
125
|
+
default: string;
|
|
126
|
+
type: StringConstructor;
|
|
127
|
+
};
|
|
128
|
+
name: {
|
|
129
|
+
required: true;
|
|
130
|
+
type: StringConstructor;
|
|
131
|
+
};
|
|
132
|
+
maxHeight: {
|
|
133
|
+
default: number;
|
|
134
|
+
type: NumberConstructor;
|
|
135
|
+
};
|
|
136
|
+
/**
|
|
137
|
+
* Setting this to true will trigger the 'submit' event while pressing Enter.
|
|
138
|
+
* Users will be able to add a line break while pressing Shift + Enter.
|
|
139
|
+
*/
|
|
140
|
+
submitOnEnter: {
|
|
141
|
+
default: boolean;
|
|
142
|
+
type: BooleanConstructor;
|
|
143
|
+
};
|
|
144
|
+
disabled: {
|
|
145
|
+
default: boolean;
|
|
146
|
+
type: BooleanConstructor;
|
|
147
|
+
};
|
|
148
|
+
}>> & {
|
|
149
|
+
onFocus?: ((...args: any[]) => any) | undefined;
|
|
150
|
+
onInput?: ((...args: any[]) => any) | undefined;
|
|
151
|
+
onSubmit?: ((...args: any[]) => any) | undefined;
|
|
152
|
+
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
153
|
+
} & import("vue").ShallowUnwrapRef<{}> & {} & import("vue").ComponentCustomProperties & {};
|
|
154
|
+
__isFragment?: undefined;
|
|
155
|
+
__isTeleport?: undefined;
|
|
156
|
+
__isSuspense?: undefined;
|
|
157
|
+
} & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
|
|
2
158
|
modelValue: {
|
|
3
159
|
default: string;
|
|
4
160
|
type: StringConstructor;
|
|
@@ -11,34 +167,32 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
11
167
|
required: true;
|
|
12
168
|
type: StringConstructor;
|
|
13
169
|
};
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
onInput(e: any): void;
|
|
18
|
-
updateReplicatedValue(value: string): void;
|
|
19
|
-
onKeyDown(event: any): void;
|
|
20
|
-
onKeyUp(event: any): void;
|
|
21
|
-
onFocus(event: any): void;
|
|
22
|
-
}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("input" | "submit" | "update:modelValue" | "focus")[], "input" | "submit" | "update:modelValue" | "focus", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
23
|
-
modelValue: {
|
|
24
|
-
default: string;
|
|
25
|
-
type: StringConstructor;
|
|
170
|
+
maxHeight: {
|
|
171
|
+
default: number;
|
|
172
|
+
type: NumberConstructor;
|
|
26
173
|
};
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
174
|
+
/**
|
|
175
|
+
* Setting this to true will trigger the 'submit' event while pressing Enter.
|
|
176
|
+
* Users will be able to add a line break while pressing Shift + Enter.
|
|
177
|
+
*/
|
|
178
|
+
submitOnEnter: {
|
|
179
|
+
default: boolean;
|
|
180
|
+
type: BooleanConstructor;
|
|
30
181
|
};
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
type:
|
|
182
|
+
disabled: {
|
|
183
|
+
default: boolean;
|
|
184
|
+
type: BooleanConstructor;
|
|
34
185
|
};
|
|
35
186
|
}>> & {
|
|
36
187
|
onFocus?: ((...args: any[]) => any) | undefined;
|
|
37
188
|
onInput?: ((...args: any[]) => any) | undefined;
|
|
38
189
|
onSubmit?: ((...args: any[]) => any) | undefined;
|
|
39
190
|
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
40
|
-
}, {
|
|
191
|
+
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("input" | "submit" | "update:modelValue" | "focus")[], "input" | "submit" | "update:modelValue" | "focus", {
|
|
41
192
|
modelValue: string;
|
|
42
193
|
placeholder: string;
|
|
43
|
-
|
|
194
|
+
disabled: boolean;
|
|
195
|
+
maxHeight: number;
|
|
196
|
+
submitOnEnter: boolean;
|
|
197
|
+
}, {}, string> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps;
|
|
44
198
|
export default _default;
|
|
@@ -12,6 +12,7 @@ import BaseBreadcrumbs from './BaseBreadcrumbs.vue';
|
|
|
12
12
|
import BaseButton from './BaseButton.vue';
|
|
13
13
|
import BaseCard from './BaseCard.vue';
|
|
14
14
|
import BaseCardRow from './BaseCardRow.vue';
|
|
15
|
+
import BaseCharacterCounter from './BaseCharacterCounter.vue';
|
|
15
16
|
import BaseClipboard from './BaseClipboard.vue';
|
|
16
17
|
import BaseContainer from './BaseContainer.vue';
|
|
17
18
|
import BaseCounter from './BaseCounter.vue';
|
|
@@ -24,10 +25,38 @@ import BaseDescriptionListItem from './BaseDescriptionListItem.vue';
|
|
|
24
25
|
import BaseDialog from './BaseDialog.vue';
|
|
25
26
|
import BaseFilePicker from './BaseFilePicker.vue';
|
|
26
27
|
import BaseFileUploader from './BaseFileUploader.vue';
|
|
28
|
+
import BaseHasMany from './BaseHasMany.vue';
|
|
27
29
|
import { Icon as BaseIcon } from '@iconify/vue';
|
|
30
|
+
import BaseInput from './BaseInput.vue';
|
|
31
|
+
import BaseInputLabel from './BaseInputLabel.vue';
|
|
28
32
|
import BaseLoadingCover from './BaseLoadingCover.vue';
|
|
33
|
+
import BaseMediaItem from './BaseMediaItem.vue';
|
|
34
|
+
import BaseMediaLibrary from './BaseMediaLibrary.vue';
|
|
35
|
+
import BaseMediaPreview from './BaseMediaPreview.vue';
|
|
29
36
|
import BaseMenu from './BaseMenu.vue';
|
|
30
37
|
import BaseMenuItem from './BaseMenuItem.vue';
|
|
38
|
+
import BaseModalCenter from './BaseModalCenter.vue';
|
|
39
|
+
import BaseModalSide from './BaseModalSide.vue';
|
|
40
|
+
import BaseNavbar from './BaseNavbar.vue';
|
|
41
|
+
import BaseNavbarItem from './BaseNavbarItem.vue';
|
|
42
|
+
import BaseNavbarItemContent from './BaseNavbarItemContent.vue';
|
|
43
|
+
import BasePagination from './BasePagination.vue';
|
|
44
|
+
import BasePanel from './BasePanel.vue';
|
|
45
|
+
import BasePassword from './BasePassword.vue';
|
|
46
|
+
import BaseProcessRing from './BaseProcessRing.vue';
|
|
47
|
+
import BaseReadMore from './BaseReadMore.vue';
|
|
48
|
+
import BaseSelect from './BaseSelect.vue';
|
|
49
|
+
import BaseSideNavigation from './BaseSideNavigation.vue';
|
|
50
|
+
import BaseSideNavigationItem from './BaseSideNavigationItem.vue';
|
|
51
|
+
import BaseSkeleton from './BaseSkeleton.vue';
|
|
52
|
+
import BaseSwitch from './BaseSwitch.vue';
|
|
53
|
+
import BaseSystemAlert from './BaseSystemAlert.vue';
|
|
54
|
+
import BaseTabs from './BaseTabs.vue';
|
|
55
|
+
import BaseTabItem from './BaseTabItem.vue';
|
|
56
|
+
import BaseTagAutocomplete from './BaseTagAutocomplete.vue';
|
|
57
|
+
import BaseTagAutocompleteFetch from './BaseTagAutocompleteFetch.vue';
|
|
31
58
|
import BaseTable from './BaseTable.vue';
|
|
32
59
|
import BaseTableColumn from './BaseTableColumn.vue';
|
|
33
|
-
|
|
60
|
+
import BaseTextarea from './BaseTextarea.vue';
|
|
61
|
+
import BaseTextareaAutoresize from './BaseTextareaAutoresize.vue';
|
|
62
|
+
export { BaseAlert, BaseApp, BaseAppDialogs, BaseAppNotifications, BaseAutocomplete, BaseAutocompleteFetch, BaseAvatar, BaseBadge, BaseBelongsTo, BaseBoolean, BaseBreadcrumbs, BaseButton, BaseCard, BaseCardRow, BaseCharacterCounter, BaseClipboard, BaseContainer, BaseCounter, BaseDataIterator, BaseDataTable, BaseDatePicker, BaseDateSelect, BaseDescriptionList, BaseDescriptionListItem, BaseDialog, BaseFilePicker, BaseFileUploader, BaseHasMany, BaseIcon, BaseInput, BaseInputLabel, BaseLoadingCover, BaseMediaItem, BaseMediaLibrary, BaseMediaPreview, BaseMenu, BaseMenuItem, BaseModalCenter, BaseModalSide, BaseNavbar, BaseNavbarItem, BaseNavbarItemContent, BasePagination, BasePanel, BasePassword, BaseProcessRing, BaseReadMore, BaseSelect, BaseSideNavigation, BaseSideNavigationItem, BaseSkeleton, BaseSwitch, BaseSystemAlert, BaseTabs, BaseTabItem, BaseTagAutocomplete, BaseTagAutocompleteFetch, BaseTable, BaseTableColumn, BaseTextarea, BaseTextareaAutoresize, };
|
|
@@ -30,6 +30,7 @@ declare const messages: {
|
|
|
30
30
|
month: string;
|
|
31
31
|
next: string;
|
|
32
32
|
next_month: string;
|
|
33
|
+
none: string;
|
|
33
34
|
nothing_found: string;
|
|
34
35
|
or: string;
|
|
35
36
|
pagination_detail: string;
|
|
@@ -87,6 +88,7 @@ declare const messages: {
|
|
|
87
88
|
month: string;
|
|
88
89
|
next: string;
|
|
89
90
|
next_month: string;
|
|
91
|
+
none: string;
|
|
90
92
|
nothing_found: string;
|
|
91
93
|
or: string;
|
|
92
94
|
pagination_detail: string;
|
|
@@ -155,6 +157,7 @@ declare const config: {
|
|
|
155
157
|
month: string;
|
|
156
158
|
next: string;
|
|
157
159
|
next_month: string;
|
|
160
|
+
none: string;
|
|
158
161
|
nothing_found: string;
|
|
159
162
|
or: string;
|
|
160
163
|
pagination_detail: string;
|
|
@@ -212,6 +215,7 @@ declare const config: {
|
|
|
212
215
|
month: string;
|
|
213
216
|
next: string;
|
|
214
217
|
next_month: string;
|
|
218
|
+
none: string;
|
|
215
219
|
nothing_found: string;
|
|
216
220
|
or: string;
|
|
217
221
|
pagination_detail: string;
|
package/package.json
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
>
|
|
12
12
|
<div
|
|
13
13
|
v-if="dialogs.length"
|
|
14
|
-
class="fixed inset-0
|
|
14
|
+
class="z-dialogs fixed inset-0 h-full w-full bg-black bg-opacity-60"
|
|
15
15
|
/>
|
|
16
16
|
</Transition>
|
|
17
17
|
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
v-for="dialog in dialogs"
|
|
30
30
|
:key="dialog.id"
|
|
31
31
|
scroll-lock-target
|
|
32
|
-
class="fixed inset-0
|
|
32
|
+
class="z-dialogs fixed inset-0 transform overflow-y-auto"
|
|
33
33
|
>
|
|
34
34
|
<div
|
|
35
35
|
class="flex min-h-full items-end justify-center p-4 text-center sm:items-center sm:p-0"
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<Teleport to="body">
|
|
3
3
|
<div
|
|
4
|
-
class="pointer-events-none fixed inset-0 flex items-end justify-end p-6 md:p-8"
|
|
4
|
+
class="pointer-events-none fixed inset-0 z-notifications flex items-end justify-end p-6 md:p-8"
|
|
5
5
|
>
|
|
6
6
|
<div class="w-full max-w-sm">
|
|
7
7
|
<TransitionGroup
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
<div class="relative">
|
|
49
49
|
<div
|
|
50
50
|
v-show="showDropdown"
|
|
51
|
-
class="absolute top-1 z-
|
|
51
|
+
class="absolute top-1 z-menu min-h-[110px] w-full overflow-hidden rounded border border-slate-300 bg-white shadow-md"
|
|
52
52
|
>
|
|
53
53
|
<div
|
|
54
54
|
ref="dropdown"
|
|
@@ -102,24 +102,22 @@
|
|
|
102
102
|
</div>
|
|
103
103
|
</div>
|
|
104
104
|
|
|
105
|
-
<
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
>
|
|
110
|
-
<
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
></BaseSkeleton>
|
|
120
|
-
</div>
|
|
105
|
+
<div
|
|
106
|
+
v-if="loading"
|
|
107
|
+
class="absolute inset-0 h-full w-full space-y-1 bg-white p-2"
|
|
108
|
+
>
|
|
109
|
+
<div class="space-y-1">
|
|
110
|
+
<BaseSkeleton class="h-7 w-full" delay="0ms"></BaseSkeleton>
|
|
111
|
+
<BaseSkeleton
|
|
112
|
+
class="h-7 w-full opacity-70"
|
|
113
|
+
delay="50ms"
|
|
114
|
+
></BaseSkeleton>
|
|
115
|
+
<BaseSkeleton
|
|
116
|
+
class="h-7 w-full opacity-30"
|
|
117
|
+
delay="100ms"
|
|
118
|
+
></BaseSkeleton>
|
|
121
119
|
</div>
|
|
122
|
-
</
|
|
120
|
+
</div>
|
|
123
121
|
</div>
|
|
124
122
|
</div>
|
|
125
123
|
</div>
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import BaseCharacterCounter from './BaseCharacterCounter.vue';
|
|
2
|
+
import BaseInput from './BaseInput.vue';
|
|
3
|
+
|
|
4
|
+
export default {
|
|
5
|
+
title: 'Components/BaseCharacterCounter',
|
|
6
|
+
component: BaseCharacterCounter,
|
|
7
|
+
args: {
|
|
8
|
+
text: 'Test',
|
|
9
|
+
max: 100,
|
|
10
|
+
min: 10,
|
|
11
|
+
},
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
const Template = (args) => ({
|
|
15
|
+
components: {
|
|
16
|
+
BaseCharacterCounter,
|
|
17
|
+
BaseInput,
|
|
18
|
+
},
|
|
19
|
+
setup() {
|
|
20
|
+
const text = ref('bla bla');
|
|
21
|
+
return { args, text };
|
|
22
|
+
},
|
|
23
|
+
template: `
|
|
24
|
+
<BaseInput v-model="text" name="test" class="w-full mb-1"></BaseInput>
|
|
25
|
+
<BaseCharacterCounter v-bind="args" :text="text" class="text-xs text-slate-500"></BaseCharacterCounter>
|
|
26
|
+
`,
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
export const Demo = Template.bind({});
|
|
30
|
+
Demo.args = {};
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div>
|
|
3
|
+
<div
|
|
4
|
+
v-if="max && (!min || length >= min)"
|
|
5
|
+
:class="{
|
|
6
|
+
'text-red-600': length > max,
|
|
7
|
+
}"
|
|
8
|
+
>
|
|
9
|
+
{{ length }}/{{ max }}
|
|
10
|
+
</div>
|
|
11
|
+
<div v-else-if="min && length < min" class="text-red-600">
|
|
12
|
+
{{ $t('sui.min_x_characters', { x: min }) }} ({{ length }}/{{ min }})
|
|
13
|
+
</div>
|
|
14
|
+
</div>
|
|
15
|
+
</template>
|
|
16
|
+
|
|
17
|
+
<script lang="ts" setup>
|
|
18
|
+
import { trim } from 'lodash';
|
|
19
|
+
|
|
20
|
+
const props = defineProps({
|
|
21
|
+
text: {
|
|
22
|
+
required: true,
|
|
23
|
+
type: String,
|
|
24
|
+
},
|
|
25
|
+
min: {
|
|
26
|
+
default: undefined,
|
|
27
|
+
type: Number,
|
|
28
|
+
},
|
|
29
|
+
max: {
|
|
30
|
+
default: undefined,
|
|
31
|
+
type: Number,
|
|
32
|
+
},
|
|
33
|
+
trim: {
|
|
34
|
+
default: true,
|
|
35
|
+
type: Boolean,
|
|
36
|
+
},
|
|
37
|
+
removeDoubleSpaces: {
|
|
38
|
+
default: true,
|
|
39
|
+
type: Boolean,
|
|
40
|
+
},
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
const trimmedText = computed(() => {
|
|
44
|
+
let text = props.text;
|
|
45
|
+
|
|
46
|
+
if (props.trim) {
|
|
47
|
+
text = trim(props.text);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
if (props.removeDoubleSpaces) {
|
|
51
|
+
text = text.replace(/ +(?= )/g, '');
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
return text;
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
const length = computed(() => {
|
|
58
|
+
return trimmedText.value.length;
|
|
59
|
+
});
|
|
60
|
+
</script>
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
>
|
|
18
18
|
<div
|
|
19
19
|
v-show="tooltipShown"
|
|
20
|
-
class="pointer-events-none absolute left-full z-
|
|
20
|
+
class="pointer-events-none absolute left-full z-[1] items-center"
|
|
21
21
|
>
|
|
22
22
|
<div
|
|
23
23
|
class="ml-2 whitespace-nowrap rounded bg-slate-900 bg-opacity-80 px-3 py-2 text-xs leading-tight text-white backdrop-blur"
|
|
@@ -60,9 +60,9 @@ const template = `
|
|
|
60
60
|
<BaseSelect
|
|
61
61
|
:model-value="query.type ?? null"
|
|
62
62
|
class="w-full rounded border-slate-300"
|
|
63
|
+
placeholder="-"
|
|
63
64
|
@update:model-value="updateQueryValue('type', $event)"
|
|
64
65
|
>
|
|
65
|
-
<option value="">-</option>
|
|
66
66
|
<option value="video">
|
|
67
67
|
Video
|
|
68
68
|
</option>
|
|
@@ -78,9 +78,9 @@ const template = `
|
|
|
78
78
|
<BaseSelect
|
|
79
79
|
:model-value="query.access_level ?? null"
|
|
80
80
|
class="w-full rounded border-slate-300"
|
|
81
|
+
placeholder="-"
|
|
81
82
|
@update:model-value="updateQueryValue('access_level', $event)"
|
|
82
83
|
>
|
|
83
|
-
<option value="">-</option>
|
|
84
84
|
<option value="public">
|
|
85
85
|
Public
|
|
86
86
|
</option>
|