@fastkit/vui 0.6.32 → 0.6.36
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/dist/tool/index.js +10 -0
- package/dist/tool/vite-plugin.d.ts.map +1 -1
- package/dist/vui.cjs.js +622 -71
- package/dist/vui.cjs.prod.js +622 -71
- package/dist/vui.css +62 -2
- package/dist/vui.d.ts +428 -2
- package/dist/vui.esm-bundler.js +610 -74
- package/dist/vui.min.css +1 -1
- package/dist/vui.min.css.map +1 -1
- package/package.json +13 -9
package/dist/vui.css
CHANGED
|
@@ -812,6 +812,31 @@ thead th {
|
|
|
812
812
|
--control-field-rem: var(--control-field-rem-lg);
|
|
813
813
|
font-size: var(--control-field-rem);
|
|
814
814
|
}
|
|
815
|
+
|
|
816
|
+
.wysiwyg > h1:first-child,
|
|
817
|
+
.wysiwyg h2:first-child,
|
|
818
|
+
.wysiwyg h3:first-child,
|
|
819
|
+
.wysiwyg h4:first-child,
|
|
820
|
+
.wysiwyg h5:first-child,
|
|
821
|
+
.wysiwyg h6:first-child,
|
|
822
|
+
.wysiwyg p:first-child,
|
|
823
|
+
.wysiwyg ul:first-child,
|
|
824
|
+
.wysiwyg ol:first-child,
|
|
825
|
+
.wysiwyg table:first-child {
|
|
826
|
+
margin-top: 0;
|
|
827
|
+
}
|
|
828
|
+
.wysiwyg > h1:last-child,
|
|
829
|
+
.wysiwyg h2:last-child,
|
|
830
|
+
.wysiwyg h3:last-child,
|
|
831
|
+
.wysiwyg h4:last-child,
|
|
832
|
+
.wysiwyg h5:last-child,
|
|
833
|
+
.wysiwyg h6:last-child,
|
|
834
|
+
.wysiwyg p:last-child,
|
|
835
|
+
.wysiwyg ul:last-child,
|
|
836
|
+
.wysiwyg ol:last-child,
|
|
837
|
+
.wysiwyg table:last-child {
|
|
838
|
+
margin-bottom: 0;
|
|
839
|
+
}
|
|
815
840
|
.v-form-selector__body {
|
|
816
841
|
display: block;
|
|
817
842
|
}
|
|
@@ -965,13 +990,14 @@ thead th {
|
|
|
965
990
|
.v-button--rounded {
|
|
966
991
|
--padding: 0;
|
|
967
992
|
min-width: 0;
|
|
993
|
+
aspect-ratio: 1/1;
|
|
968
994
|
margin: calc(var(--root-em) * 0.125) calc(var(--root-em) * 0.125);
|
|
969
995
|
border-radius: 50%;
|
|
970
|
-
aspect-ratio: 1/1;
|
|
971
996
|
--height: auto;
|
|
972
997
|
}
|
|
973
998
|
.v-button--icon {
|
|
974
|
-
min-width:
|
|
999
|
+
min-width: 1.9285714286em;
|
|
1000
|
+
margin: calc(var(--root-em) * 0.125) calc(var(--root-em) * 0.125);
|
|
975
1001
|
--height: 1.9285714286em;
|
|
976
1002
|
--padding: 0em;
|
|
977
1003
|
}
|
|
@@ -1010,6 +1036,25 @@ thead th {
|
|
|
1010
1036
|
z-index: 1;
|
|
1011
1037
|
transform: translate(-50%, -50%);
|
|
1012
1038
|
}
|
|
1039
|
+
.v-button-group {
|
|
1040
|
+
display: inline-flex;
|
|
1041
|
+
align-items: stretch;
|
|
1042
|
+
}
|
|
1043
|
+
.v-button-group__item {
|
|
1044
|
+
position: relative;
|
|
1045
|
+
margin: 0;
|
|
1046
|
+
}
|
|
1047
|
+
.v-button-group__item--has-left {
|
|
1048
|
+
border-top-left-radius: 0;
|
|
1049
|
+
border-bottom-left-radius: 0;
|
|
1050
|
+
}
|
|
1051
|
+
.v-button-group__item--has-right {
|
|
1052
|
+
border-top-right-radius: 0;
|
|
1053
|
+
border-bottom-right-radius: 0;
|
|
1054
|
+
}
|
|
1055
|
+
.v-button-group__item:focus {
|
|
1056
|
+
z-index: 1;
|
|
1057
|
+
}
|
|
1013
1058
|
.v-pagination {
|
|
1014
1059
|
--pagination-size: var(--pagination-item-size);
|
|
1015
1060
|
--pagination-margin: var(--pagination-item-margin);
|
|
@@ -1708,6 +1753,21 @@ thead th {
|
|
|
1708
1753
|
font-style: italic;
|
|
1709
1754
|
color: var(--control-disabled-color);
|
|
1710
1755
|
}
|
|
1756
|
+
.v-wysiwyg-editor__input {
|
|
1757
|
+
cursor: text;
|
|
1758
|
+
}
|
|
1759
|
+
.v-wysiwyg-editor__input__element {
|
|
1760
|
+
width: 100%;
|
|
1761
|
+
min-width: 0;
|
|
1762
|
+
padding: 8px 0;
|
|
1763
|
+
margin: 0;
|
|
1764
|
+
}
|
|
1765
|
+
.v-wysiwyg-editor__input__element .ProseMirror {
|
|
1766
|
+
outline: none;
|
|
1767
|
+
}
|
|
1768
|
+
.v-wysiwyg-editor__input__element p {
|
|
1769
|
+
margin: 0;
|
|
1770
|
+
}
|
|
1711
1771
|
.v-tabs {
|
|
1712
1772
|
position: relative;
|
|
1713
1773
|
width: 100%;
|
package/dist/vui.d.ts
CHANGED
|
@@ -1,14 +1,20 @@
|
|
|
1
1
|
import { AllowedComponentProps } from 'vue';
|
|
2
2
|
import { App } from 'vue';
|
|
3
|
+
import { BoldOptions } from '@tiptap/extension-bold';
|
|
4
|
+
import { BulletListOptions } from '@tiptap/extension-bullet-list';
|
|
5
|
+
import { ChainedCommands } from '@tiptap/vue-3';
|
|
3
6
|
import { ColorVariant , ThemeName, PaletteName, ScopeName } from '@fastkit/color-scheme';
|
|
4
7
|
import { ComponentCustomProps } from 'vue';
|
|
5
8
|
import { ComponentOptionsMixin } from 'vue';
|
|
6
9
|
import { ComputedRef } from 'vue';
|
|
7
10
|
import { CSSProperties } from 'vue';
|
|
8
11
|
import { DefineComponent } from 'vue';
|
|
12
|
+
import { Editor } from '@tiptap/vue-3';
|
|
9
13
|
import { EmitsOptions } from 'vue';
|
|
14
|
+
import { Extensions } from '@tiptap/vue-3';
|
|
10
15
|
import { ExtractPropInput } from '@fastkit/vue-utils';
|
|
11
16
|
import { ExtractPropTypes } from 'vue';
|
|
17
|
+
import { FocusPosition } from '@tiptap/vue-3';
|
|
12
18
|
import { FormAction } from '@fastkit/vue-kit';
|
|
13
19
|
import { FormAutoCapitalize } from '@fastkit/vue-kit';
|
|
14
20
|
import { FormControlSlots } from '@fastkit/vue-kit';
|
|
@@ -19,15 +25,19 @@ import { FormSelectorItemControl } from '@fastkit/vue-kit';
|
|
|
19
25
|
import { FormSelectorItemData } from '@fastkit/vue-kit';
|
|
20
26
|
import { FormSelectorItemGroupControl } from '@fastkit/vue-kit';
|
|
21
27
|
import { FormSelectorValue } from '@fastkit/vue-kit';
|
|
28
|
+
import { HistoryOptions } from '@tiptap/extension-history';
|
|
22
29
|
import { ICON_NAMES , IconName } from '@fastkit/icon-font';
|
|
23
30
|
import { IconName } from '@fastkit/icon-font';
|
|
24
31
|
import { IMaskEvent } from '@fastkit/vue-kit';
|
|
25
32
|
import { IMaskTypedValue } from '@fastkit/vue-kit';
|
|
26
33
|
import { InjectionKey } from 'vue';
|
|
34
|
+
import { ItalicOptions } from '@tiptap/extension-italic';
|
|
35
|
+
import { LinkOptions } from '@tiptap/extension-link';
|
|
27
36
|
import { LocationService } from '@fastkit/vue-utils';
|
|
28
37
|
import { NavigationableInheritProps } from '@fastkit/vue-utils';
|
|
29
38
|
import { NavigationFailure } from 'vue-router';
|
|
30
39
|
import { Numberish } from '@fastkit/vue-kit';
|
|
40
|
+
import { OrderedListOptions } from '@tiptap/extension-ordered-list';
|
|
31
41
|
import { Prop } from 'vue';
|
|
32
42
|
import { PropType } from 'vue';
|
|
33
43
|
import { RawTextableFinishingProp } from '@fastkit/vue-kit';
|
|
@@ -50,18 +60,21 @@ import { TextareaAutosizeSettings } from '@fastkit/vue-kit';
|
|
|
50
60
|
import { TextareaControl } from '@fastkit/vue-kit';
|
|
51
61
|
import { TextInputControl } from '@fastkit/vue-kit';
|
|
52
62
|
import { TypedSlot } from '@fastkit/vue-kit';
|
|
63
|
+
import { UnderlineOptions } from '@tiptap/extension-underline';
|
|
53
64
|
import { useLink } from 'vue-router';
|
|
54
65
|
import { ValidateTiming } from '@fastkit/vue-kit';
|
|
55
66
|
import { ValidationResult } from '@fastkit/vue-kit';
|
|
56
67
|
import { VDialog } from '@fastkit/vue-kit';
|
|
68
|
+
import { VDialogProps } from '@fastkit/vue-kit';
|
|
57
69
|
import { VMenu } from '@fastkit/vue-kit';
|
|
58
70
|
import { VNode } from 'vue';
|
|
59
71
|
import { VNodeChild } from 'vue';
|
|
60
72
|
import { VNodeChildOrSlot } from '@fastkit/vue-kit';
|
|
61
73
|
import { VNodeProps } from 'vue';
|
|
62
74
|
import { VSnackbar } from '@fastkit/vue-kit';
|
|
63
|
-
import
|
|
75
|
+
import { VueColorSchemePluginSettings } from '@fastkit/vue-kit';
|
|
64
76
|
import { VueForm } from '@fastkit/vue-kit';
|
|
77
|
+
import { VueStackService } from '@fastkit/vue-kit';
|
|
65
78
|
import { VueStackServiceOptions } from '@fastkit/vue-kit';
|
|
66
79
|
import { WritableComputedRef } from 'vue';
|
|
67
80
|
|
|
@@ -253,6 +266,78 @@ export declare function createPaperProps(): {
|
|
|
253
266
|
elevation: PropType<VuiElevationValue>;
|
|
254
267
|
};
|
|
255
268
|
|
|
269
|
+
declare function createTextFieldProps(): {
|
|
270
|
+
'v-slots': PropType<ResolveRawSlots<FormControlSlots & InputBoxSlots>>;
|
|
271
|
+
size: {
|
|
272
|
+
type: PropType<"sm" | "md" | "lg">;
|
|
273
|
+
validator: (value: any) => boolean;
|
|
274
|
+
};
|
|
275
|
+
variant: {
|
|
276
|
+
type: PropType<"flat" | "outlined" | "filled">;
|
|
277
|
+
validator: (value: any) => boolean;
|
|
278
|
+
};
|
|
279
|
+
startAdornment: PropType<VNodeChildOrSlot<any>>;
|
|
280
|
+
endAdornment: PropType<VNodeChildOrSlot<any>>;
|
|
281
|
+
tabindex: {
|
|
282
|
+
type: (StringConstructor | NumberConstructor)[];
|
|
283
|
+
default: number;
|
|
284
|
+
};
|
|
285
|
+
nodeControl: PropType<FormNodeControl<any, any>>;
|
|
286
|
+
label: PropType<VNodeChildOrSlot<any>>;
|
|
287
|
+
hint: PropType<VNodeChildOrSlot<any>>;
|
|
288
|
+
infoAppends: PropType<VNodeChildOrSlot<any>>;
|
|
289
|
+
validating: BooleanConstructor;
|
|
290
|
+
pending: BooleanConstructor;
|
|
291
|
+
focused: BooleanConstructor;
|
|
292
|
+
dirty: BooleanConstructor;
|
|
293
|
+
pristine: BooleanConstructor;
|
|
294
|
+
errors: {
|
|
295
|
+
type: PropType<FormNodeError[]>;
|
|
296
|
+
default: () => FormNodeError[];
|
|
297
|
+
};
|
|
298
|
+
disabled: BooleanConstructor;
|
|
299
|
+
readonly: BooleanConstructor;
|
|
300
|
+
touched: BooleanConstructor;
|
|
301
|
+
untouched: BooleanConstructor;
|
|
302
|
+
required: BooleanConstructor;
|
|
303
|
+
invalid: BooleanConstructor;
|
|
304
|
+
valid: BooleanConstructor;
|
|
305
|
+
hiddenInfo: BooleanConstructor;
|
|
306
|
+
type: {
|
|
307
|
+
type: PropType<"number" | "search" | "email" | "tel" | "url" | "color" | "date" | "datetime-local" | "month" | "password" | "text" | "time">;
|
|
308
|
+
default: string;
|
|
309
|
+
};
|
|
310
|
+
masked: StringConstructor;
|
|
311
|
+
typed: (StringConstructor | NumberConstructor | DateConstructor)[];
|
|
312
|
+
unmasked: StringConstructor;
|
|
313
|
+
mask: PropType<any>;
|
|
314
|
+
minlength: (StringConstructor | NumberConstructor)[];
|
|
315
|
+
maxlength: (StringConstructor | NumberConstructor)[];
|
|
316
|
+
pattern: (StringConstructor | RegExpConstructor)[];
|
|
317
|
+
placeholder: StringConstructor;
|
|
318
|
+
autocapitalize: PropType<FormAutoCapitalize>;
|
|
319
|
+
finishings: PropType<RawTextableFinishingProp>;
|
|
320
|
+
counter: PropType<string | number | boolean>;
|
|
321
|
+
counterValue: PropType<(value: string) => number>;
|
|
322
|
+
limit: BooleanConstructor;
|
|
323
|
+
autocomplete: PropType<boolean | "name" | "off" | "on" | "honorific-prefix" | "given-name" | "additional-name" | "family-name" | "honorific-suffix" | "nickname" | "email" | "username" | "new-password" | "current-password" | "one-time-code" | "organization-title" | "organization" | "street-address" | "address-line1" | "address-line2" | "address-line3" | "address-level4" | "address-level3" | "address-level2" | "address-level1" | "country" | "country-name" | "postal-code" | "cc-name" | "cc-given-name" | "cc-additional-name" | "cc-family-name" | "cc-number" | "cc-exp" | "cc-exp-month" | "cc-exp-year" | "cc-csc" | "cc-type" | "transaction-currency" | "transaction-amount" | "language" | "bday" | "bday-day" | "bday-month" | "bday-year" | "sex" | "tel" | "tel-country-code" | "tel-national" | "tel-area-code" | "tel-local" | "tel-extension" | "impp" | "url" | "photo">;
|
|
324
|
+
name: StringConstructor;
|
|
325
|
+
modelValue: Prop<string, string>;
|
|
326
|
+
autofocus: BooleanConstructor;
|
|
327
|
+
spellcheck: BooleanConstructor;
|
|
328
|
+
viewonly: BooleanConstructor;
|
|
329
|
+
validateTiming: {
|
|
330
|
+
type: PropType<ValidateTiming>;
|
|
331
|
+
default: ValidateTiming;
|
|
332
|
+
};
|
|
333
|
+
rules: {
|
|
334
|
+
type: PropType<RecursiveArray<Rule<any>>>;
|
|
335
|
+
default: () => never[];
|
|
336
|
+
};
|
|
337
|
+
error: BooleanConstructor;
|
|
338
|
+
errorMessages: PropType<string | string[]>;
|
|
339
|
+
};
|
|
340
|
+
|
|
256
341
|
declare const DATA_TABLE_DEFAULTS: {
|
|
257
342
|
itemKey: string;
|
|
258
343
|
pageQuery: string;
|
|
@@ -623,6 +708,10 @@ export declare type RawVButtonIcon = IconName | VButtonIcon;
|
|
|
623
708
|
|
|
624
709
|
export declare type RawVButtonSpacer = boolean | VButtonSpacer;
|
|
625
710
|
|
|
711
|
+
export declare type RawVuiPromptOptions = string | VuiPromptOptions;
|
|
712
|
+
|
|
713
|
+
declare type RawWysiwygEditorTool = WysiwygEditorTool | WysiwygEditorToolFactory<any>;
|
|
714
|
+
|
|
626
715
|
declare type RecursiveArray<T> = T | RecursiveArray<T>[];
|
|
627
716
|
|
|
628
717
|
export declare function renderNavigationItemInput(input: NavigationItemInput, extraProps?: Record<string, unknown> & VNodeProps): JSX.Element;
|
|
@@ -697,6 +786,8 @@ declare interface RuleValidateOptions {
|
|
|
697
786
|
eachPrefix?: string;
|
|
698
787
|
}
|
|
699
788
|
|
|
789
|
+
export declare type TextFieldInput = ExtractPropInput<ReturnType<typeof createTextFieldProps>>;
|
|
790
|
+
|
|
700
791
|
declare type ToggleableIconHook = (gen: IconGenerator, ctx: boolean) => VNodeChild;
|
|
701
792
|
|
|
702
793
|
export declare function useControl(props: ControlProps, opts?: UseControlProviderOptions): ControlProvider;
|
|
@@ -879,6 +970,38 @@ export declare const VButton: DefineComponent<{
|
|
|
879
970
|
ariaCurrentValue: "page" | "step" | "location" | "date" | "time" | "true" | "false" | undefined;
|
|
880
971
|
}>;
|
|
881
972
|
|
|
973
|
+
export declare const VButtonGroup: DefineComponent<{
|
|
974
|
+
disabled: BooleanConstructor;
|
|
975
|
+
size: {
|
|
976
|
+
type: PropType<"sm" | "md" | "lg">;
|
|
977
|
+
validator: (value: any) => boolean;
|
|
978
|
+
};
|
|
979
|
+
variant: PropType<ColorVariant>;
|
|
980
|
+
theme: PropType<ThemeName>;
|
|
981
|
+
color: PropType<ScopeName>;
|
|
982
|
+
textColor: PropType<PaletteName>;
|
|
983
|
+
borderColor: PropType<PaletteName>;
|
|
984
|
+
}, () => JSX.Element, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, Record<string, any>, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<{
|
|
985
|
+
disabled?: unknown;
|
|
986
|
+
size?: unknown;
|
|
987
|
+
variant?: unknown;
|
|
988
|
+
theme?: unknown;
|
|
989
|
+
color?: unknown;
|
|
990
|
+
textColor?: unknown;
|
|
991
|
+
borderColor?: unknown;
|
|
992
|
+
} & {
|
|
993
|
+
disabled: boolean;
|
|
994
|
+
} & {
|
|
995
|
+
theme?: ThemeName | undefined;
|
|
996
|
+
color?: ScopeName | undefined;
|
|
997
|
+
textColor?: PaletteName | undefined;
|
|
998
|
+
borderColor?: PaletteName | undefined;
|
|
999
|
+
size?: "sm" | "md" | "lg" | undefined;
|
|
1000
|
+
variant?: ColorVariant | undefined;
|
|
1001
|
+
}>, {
|
|
1002
|
+
disabled: boolean;
|
|
1003
|
+
}>;
|
|
1004
|
+
|
|
882
1005
|
export declare type VButtonIcon = () => VNodeChild;
|
|
883
1006
|
|
|
884
1007
|
export declare type VButtonProps = ExtractPropInput<typeof vueButtonProps>;
|
|
@@ -1483,6 +1606,7 @@ export declare const VDrawerLayout: DefineComponent<{
|
|
|
1483
1606
|
}>;
|
|
1484
1607
|
|
|
1485
1608
|
export declare const VForm: DefineComponent<{
|
|
1609
|
+
disableAutoScroll: BooleanConstructor;
|
|
1486
1610
|
'v-slots': PropType<ResolveRawSlots<VFormSlots>>;
|
|
1487
1611
|
size: {
|
|
1488
1612
|
type: PropType<"sm" | "md" | "lg">;
|
|
@@ -1568,6 +1692,7 @@ export declare const VForm: DefineComponent<{
|
|
|
1568
1692
|
focus: (ev: FocusEvent) => boolean;
|
|
1569
1693
|
blur: (ev: FocusEvent) => boolean;
|
|
1570
1694
|
}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<{
|
|
1695
|
+
disableAutoScroll?: unknown;
|
|
1571
1696
|
'v-slots'?: unknown;
|
|
1572
1697
|
size?: unknown;
|
|
1573
1698
|
action?: unknown;
|
|
@@ -1599,6 +1724,7 @@ export declare const VForm: DefineComponent<{
|
|
|
1599
1724
|
rules: RecursiveArray<Rule<any>>;
|
|
1600
1725
|
submiting: boolean;
|
|
1601
1726
|
autoValidate: boolean;
|
|
1727
|
+
disableAutoScroll: boolean;
|
|
1602
1728
|
} & {
|
|
1603
1729
|
name?: string | undefined;
|
|
1604
1730
|
modelValue?: unknown;
|
|
@@ -1627,6 +1753,7 @@ export declare const VForm: DefineComponent<{
|
|
|
1627
1753
|
rules: RecursiveArray<Rule<any>>;
|
|
1628
1754
|
submiting: boolean;
|
|
1629
1755
|
autoValidate: boolean;
|
|
1756
|
+
disableAutoScroll: boolean;
|
|
1630
1757
|
}>;
|
|
1631
1758
|
|
|
1632
1759
|
export declare interface VFormSlots {
|
|
@@ -3969,6 +4096,8 @@ export declare const VUI_TEXT_FIELD_SYMBOL = "vui-text-field";
|
|
|
3969
4096
|
|
|
3970
4097
|
export declare const VUI_TEXTAREA_SYMBOL = "vui-textarea";
|
|
3971
4098
|
|
|
4099
|
+
export declare const VUI_WYSIWYG_EDITOR_SYMBOL = "vui-wysiwyg-editor";
|
|
4100
|
+
|
|
3972
4101
|
export declare interface VuiColorProvider {
|
|
3973
4102
|
primary: ComputedRef<ScopeName>;
|
|
3974
4103
|
error: ComputedRef<ScopeName>;
|
|
@@ -3997,6 +4126,12 @@ export declare interface VuiPluginOptions extends VuiServiceOptions {
|
|
|
3997
4126
|
export declare interface VuiPluginStackOptions extends VueStackServiceOptions {
|
|
3998
4127
|
}
|
|
3999
4128
|
|
|
4129
|
+
export declare interface VuiPromptOptions extends Partial<VDialogProps> {
|
|
4130
|
+
input?: Omit<TextFieldInput, 'modelValue'> & {
|
|
4131
|
+
initialValue?: string;
|
|
4132
|
+
};
|
|
4133
|
+
}
|
|
4134
|
+
|
|
4000
4135
|
export declare class VuiService {
|
|
4001
4136
|
readonly options: VuiServiceOptions;
|
|
4002
4137
|
readonly selectionSeparator: VuiVNodeResolver;
|
|
@@ -4005,7 +4140,8 @@ export declare class VuiService {
|
|
|
4005
4140
|
readonly requiredChip?: VuiVNodeResolver;
|
|
4006
4141
|
readonly router: Router;
|
|
4007
4142
|
readonly location: LocationService;
|
|
4008
|
-
|
|
4143
|
+
readonly stack: VueStackService;
|
|
4144
|
+
constructor(options: VuiServiceOptions, stackService: VueStackService);
|
|
4009
4145
|
configure(options?: Partial<VuiServiceOptions>): void;
|
|
4010
4146
|
getRouterLink(): {
|
|
4011
4147
|
new (): {
|
|
@@ -4030,6 +4166,11 @@ export declare class VuiService {
|
|
|
4030
4166
|
icon<K extends keyof VuiServiceIconSettings>(iconType: K): VuiServiceIconSettings[K];
|
|
4031
4167
|
getAutoScrollToElementOffsetTop(): number;
|
|
4032
4168
|
getRequiredChip(): VNodeChild;
|
|
4169
|
+
dialog(...args: Parameters<VueStackService['dialog']>): Promise<any>;
|
|
4170
|
+
alert(...args: Parameters<VueStackService['alert']>): Promise<any>;
|
|
4171
|
+
confirm(...args: Parameters<VueStackService['confirm']>): Promise<any>;
|
|
4172
|
+
snackbar(...args: Parameters<VueStackService['snackbar']>): Promise<any>;
|
|
4173
|
+
prompt(rawOptions?: RawVuiPromptOptions): Promise<any>;
|
|
4033
4174
|
}
|
|
4034
4175
|
|
|
4035
4176
|
export declare interface VuiServiceIconSettings {
|
|
@@ -4038,6 +4179,16 @@ export declare interface VuiServiceIconSettings {
|
|
|
4038
4179
|
prev: RawIconProp;
|
|
4039
4180
|
next: RawIconProp;
|
|
4040
4181
|
sort: RawIconProp;
|
|
4182
|
+
editorTextColor: IconName;
|
|
4183
|
+
editorformatBold: IconName;
|
|
4184
|
+
editorformatUnderline: IconName;
|
|
4185
|
+
editorformatItalic: IconName;
|
|
4186
|
+
editorformatListBulleted: IconName;
|
|
4187
|
+
editorformatListNumbered: IconName;
|
|
4188
|
+
editorLink: IconName;
|
|
4189
|
+
editorLinkOff: IconName;
|
|
4190
|
+
editorUndo: IconName;
|
|
4191
|
+
editorRedo: IconName;
|
|
4041
4192
|
}
|
|
4042
4193
|
|
|
4043
4194
|
export declare interface VuiServiceOptions {
|
|
@@ -4080,6 +4231,281 @@ export declare interface VuiServiceUISettings {
|
|
|
4080
4231
|
|
|
4081
4232
|
export declare type VuiVNodeResolver = () => VNodeChild;
|
|
4082
4233
|
|
|
4234
|
+
export declare const VWysiwygEditor: DefineComponent<{
|
|
4235
|
+
tools: {
|
|
4236
|
+
type: PropType<RawWysiwygEditorTool[]>;
|
|
4237
|
+
default: () => never[];
|
|
4238
|
+
};
|
|
4239
|
+
'v-slots': PropType<ResolveRawSlots<FormControlSlots & InputBoxSlots>>;
|
|
4240
|
+
size: {
|
|
4241
|
+
type: PropType<"sm" | "md" | "lg">;
|
|
4242
|
+
validator: (value: any) => boolean;
|
|
4243
|
+
};
|
|
4244
|
+
variant: {
|
|
4245
|
+
type: PropType<"flat" | "outlined" | "filled">;
|
|
4246
|
+
validator: (value: any) => boolean;
|
|
4247
|
+
};
|
|
4248
|
+
startAdornment: PropType<VNodeChildOrSlot<any>>;
|
|
4249
|
+
endAdornment: PropType<VNodeChildOrSlot<any>>;
|
|
4250
|
+
tabindex: {
|
|
4251
|
+
type: (StringConstructor | NumberConstructor)[];
|
|
4252
|
+
default: number;
|
|
4253
|
+
};
|
|
4254
|
+
nodeControl: PropType<FormNodeControl<any, any>>;
|
|
4255
|
+
label: PropType<VNodeChildOrSlot<any>>;
|
|
4256
|
+
hint: PropType<VNodeChildOrSlot<any>>;
|
|
4257
|
+
infoAppends: PropType<VNodeChildOrSlot<any>>;
|
|
4258
|
+
validating: BooleanConstructor;
|
|
4259
|
+
pending: BooleanConstructor;
|
|
4260
|
+
focused: BooleanConstructor;
|
|
4261
|
+
dirty: BooleanConstructor;
|
|
4262
|
+
pristine: BooleanConstructor;
|
|
4263
|
+
errors: {
|
|
4264
|
+
type: PropType<FormNodeError[]>;
|
|
4265
|
+
default: () => FormNodeError[];
|
|
4266
|
+
};
|
|
4267
|
+
disabled: BooleanConstructor;
|
|
4268
|
+
readonly: BooleanConstructor;
|
|
4269
|
+
touched: BooleanConstructor;
|
|
4270
|
+
untouched: BooleanConstructor;
|
|
4271
|
+
required: BooleanConstructor;
|
|
4272
|
+
invalid: BooleanConstructor;
|
|
4273
|
+
valid: BooleanConstructor;
|
|
4274
|
+
hiddenInfo: BooleanConstructor;
|
|
4275
|
+
minlength: (StringConstructor | NumberConstructor)[];
|
|
4276
|
+
maxlength: (StringConstructor | NumberConstructor)[];
|
|
4277
|
+
pattern: (StringConstructor | RegExpConstructor)[];
|
|
4278
|
+
placeholder: StringConstructor;
|
|
4279
|
+
autocapitalize: PropType<FormAutoCapitalize>;
|
|
4280
|
+
finishings: PropType<RawTextableFinishingProp>;
|
|
4281
|
+
counter: PropType<string | number | boolean>;
|
|
4282
|
+
counterValue: PropType<(value: string) => number>;
|
|
4283
|
+
limit: BooleanConstructor;
|
|
4284
|
+
autocomplete: PropType<boolean | "name" | "off" | "on" | "honorific-prefix" | "given-name" | "additional-name" | "family-name" | "honorific-suffix" | "nickname" | "email" | "username" | "new-password" | "current-password" | "one-time-code" | "organization-title" | "organization" | "street-address" | "address-line1" | "address-line2" | "address-line3" | "address-level4" | "address-level3" | "address-level2" | "address-level1" | "country" | "country-name" | "postal-code" | "cc-name" | "cc-given-name" | "cc-additional-name" | "cc-family-name" | "cc-number" | "cc-exp" | "cc-exp-month" | "cc-exp-year" | "cc-csc" | "cc-type" | "transaction-currency" | "transaction-amount" | "language" | "bday" | "bday-day" | "bday-month" | "bday-year" | "sex" | "tel" | "tel-country-code" | "tel-national" | "tel-area-code" | "tel-local" | "tel-extension" | "impp" | "url" | "photo">;
|
|
4285
|
+
name: StringConstructor;
|
|
4286
|
+
modelValue: Prop<string, string>;
|
|
4287
|
+
autofocus: BooleanConstructor;
|
|
4288
|
+
spellcheck: BooleanConstructor;
|
|
4289
|
+
viewonly: BooleanConstructor;
|
|
4290
|
+
validateTiming: {
|
|
4291
|
+
type: PropType<ValidateTiming>;
|
|
4292
|
+
default: ValidateTiming;
|
|
4293
|
+
};
|
|
4294
|
+
rules: {
|
|
4295
|
+
type: PropType<RecursiveArray<Rule<any>>>;
|
|
4296
|
+
default: () => never[];
|
|
4297
|
+
};
|
|
4298
|
+
error: BooleanConstructor;
|
|
4299
|
+
errorMessages: PropType<string | string[]>;
|
|
4300
|
+
}, {
|
|
4301
|
+
focus: (position?: FocusPosition | undefined, options?: {
|
|
4302
|
+
scrollIntoView?: boolean | undefined;
|
|
4303
|
+
} | undefined) => ChainedCommands;
|
|
4304
|
+
blur: () => ChainedCommands;
|
|
4305
|
+
createTools: (floating?: boolean) => JSX.Element;
|
|
4306
|
+
parentControl: ControlProvider | null;
|
|
4307
|
+
size: ComputedRef<"sm" | "md" | "lg">;
|
|
4308
|
+
classes: ComputedRef<any>;
|
|
4309
|
+
computedMinlength: ComputedRef<number | undefined>;
|
|
4310
|
+
computedMaxlength: ComputedRef<number | undefined>;
|
|
4311
|
+
computedPattern: ComputedRef<string | RegExp | undefined>;
|
|
4312
|
+
computedPlaceholder: ComputedRef<string | undefined>;
|
|
4313
|
+
computedAutocapitalize: ComputedRef<FormAutoCapitalize | undefined>;
|
|
4314
|
+
counterSettings: ComputedRef<TextableCounterSettings | undefined>;
|
|
4315
|
+
counterResult: ComputedRef<TextableCounterResult | undefined>;
|
|
4316
|
+
computedAutocomplete: ComputedRef<"name" | "off" | "on" | "honorific-prefix" | "given-name" | "additional-name" | "family-name" | "honorific-suffix" | "nickname" | "email" | "username" | "new-password" | "current-password" | "one-time-code" | "organization-title" | "organization" | "street-address" | "address-line1" | "address-line2" | "address-line3" | "address-level4" | "address-level3" | "address-level2" | "address-level1" | "country" | "country-name" | "postal-code" | "cc-name" | "cc-given-name" | "cc-additional-name" | "cc-family-name" | "cc-number" | "cc-exp" | "cc-exp-month" | "cc-exp-year" | "cc-csc" | "cc-type" | "transaction-currency" | "transaction-amount" | "language" | "bday" | "bday-day" | "bday-month" | "bday-year" | "sex" | "tel" | "tel-country-code" | "tel-national" | "tel-area-code" | "tel-local" | "tel-extension" | "impp" | "url" | "photo" | undefined>;
|
|
4317
|
+
nodeControl: FormNodeControl<any, any>;
|
|
4318
|
+
currentValue: WritableComputedRef<string>;
|
|
4319
|
+
computedTabindex: ComputedRef<number>;
|
|
4320
|
+
validating: Ref<boolean>;
|
|
4321
|
+
autofocus: boolean;
|
|
4322
|
+
pending: ComputedRef<boolean>;
|
|
4323
|
+
focused: ComputedRef<boolean>;
|
|
4324
|
+
initialValue: Ref<string>;
|
|
4325
|
+
dirty: ComputedRef<boolean>;
|
|
4326
|
+
pristine: ComputedRef<boolean>;
|
|
4327
|
+
propRules: ComputedRef<RecursiveArray<Rule<any>>>;
|
|
4328
|
+
isRequired: ComputedRef<boolean>;
|
|
4329
|
+
errors: ComputedRef<FormNodeError[]>;
|
|
4330
|
+
firstError: ComputedRef<FormNodeError | undefined>;
|
|
4331
|
+
hasMyError: ComputedRef<boolean>;
|
|
4332
|
+
hasError: ComputedRef<boolean>;
|
|
4333
|
+
isDisabled: ComputedRef<boolean>;
|
|
4334
|
+
isReadonly: ComputedRef<boolean>;
|
|
4335
|
+
canOperation: ComputedRef<boolean>;
|
|
4336
|
+
touched: ComputedRef<boolean>;
|
|
4337
|
+
untouched: ComputedRef<boolean>;
|
|
4338
|
+
isDestroyed: ComputedRef<boolean>;
|
|
4339
|
+
invalid: ComputedRef<boolean>;
|
|
4340
|
+
valid: ComputedRef<boolean>;
|
|
4341
|
+
shouldValidate: ComputedRef<boolean>;
|
|
4342
|
+
spellcheck: ComputedRef<boolean>;
|
|
4343
|
+
submiting: ComputedRef<boolean>;
|
|
4344
|
+
validateSelf: (force?: boolean | undefined) => Promise<ValidationResult>;
|
|
4345
|
+
validate: () => Promise<boolean>;
|
|
4346
|
+
editor: Ref<Editor>;
|
|
4347
|
+
}, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
4348
|
+
'update:modelValue': (value: string) => boolean;
|
|
4349
|
+
'update:errors': (errors: FormNodeError[]) => boolean;
|
|
4350
|
+
change: (value: string) => boolean;
|
|
4351
|
+
focus: (ev: FocusEvent) => boolean;
|
|
4352
|
+
blur: (ev: FocusEvent) => boolean;
|
|
4353
|
+
}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<{
|
|
4354
|
+
tools?: unknown;
|
|
4355
|
+
'v-slots'?: unknown;
|
|
4356
|
+
size?: unknown;
|
|
4357
|
+
variant?: unknown;
|
|
4358
|
+
startAdornment?: unknown;
|
|
4359
|
+
endAdornment?: unknown;
|
|
4360
|
+
tabindex?: unknown;
|
|
4361
|
+
nodeControl?: unknown;
|
|
4362
|
+
label?: unknown;
|
|
4363
|
+
hint?: unknown;
|
|
4364
|
+
infoAppends?: unknown;
|
|
4365
|
+
validating?: unknown;
|
|
4366
|
+
pending?: unknown;
|
|
4367
|
+
focused?: unknown;
|
|
4368
|
+
dirty?: unknown;
|
|
4369
|
+
pristine?: unknown;
|
|
4370
|
+
errors?: unknown;
|
|
4371
|
+
disabled?: unknown;
|
|
4372
|
+
readonly?: unknown;
|
|
4373
|
+
touched?: unknown;
|
|
4374
|
+
untouched?: unknown;
|
|
4375
|
+
required?: unknown;
|
|
4376
|
+
invalid?: unknown;
|
|
4377
|
+
valid?: unknown;
|
|
4378
|
+
hiddenInfo?: unknown;
|
|
4379
|
+
minlength?: unknown;
|
|
4380
|
+
maxlength?: unknown;
|
|
4381
|
+
pattern?: unknown;
|
|
4382
|
+
placeholder?: unknown;
|
|
4383
|
+
autocapitalize?: unknown;
|
|
4384
|
+
finishings?: unknown;
|
|
4385
|
+
counter?: unknown;
|
|
4386
|
+
counterValue?: unknown;
|
|
4387
|
+
limit?: unknown;
|
|
4388
|
+
autocomplete?: unknown;
|
|
4389
|
+
name?: unknown;
|
|
4390
|
+
modelValue?: unknown;
|
|
4391
|
+
autofocus?: unknown;
|
|
4392
|
+
spellcheck?: unknown;
|
|
4393
|
+
viewonly?: unknown;
|
|
4394
|
+
validateTiming?: unknown;
|
|
4395
|
+
rules?: unknown;
|
|
4396
|
+
error?: unknown;
|
|
4397
|
+
errorMessages?: unknown;
|
|
4398
|
+
} & {
|
|
4399
|
+
autofocus: boolean;
|
|
4400
|
+
disabled: boolean;
|
|
4401
|
+
readonly: boolean;
|
|
4402
|
+
spellcheck: boolean;
|
|
4403
|
+
viewonly: boolean;
|
|
4404
|
+
required: boolean;
|
|
4405
|
+
error: boolean;
|
|
4406
|
+
tabindex: string | number;
|
|
4407
|
+
validateTiming: ValidateTiming;
|
|
4408
|
+
rules: RecursiveArray<Rule<any>>;
|
|
4409
|
+
limit: boolean;
|
|
4410
|
+
validating: boolean;
|
|
4411
|
+
pending: boolean;
|
|
4412
|
+
focused: boolean;
|
|
4413
|
+
dirty: boolean;
|
|
4414
|
+
pristine: boolean;
|
|
4415
|
+
touched: boolean;
|
|
4416
|
+
untouched: boolean;
|
|
4417
|
+
invalid: boolean;
|
|
4418
|
+
valid: boolean;
|
|
4419
|
+
hiddenInfo: boolean;
|
|
4420
|
+
errors: FormNodeError[];
|
|
4421
|
+
tools: RawWysiwygEditorTool[];
|
|
4422
|
+
} & {
|
|
4423
|
+
name?: string | undefined;
|
|
4424
|
+
modelValue?: string | undefined;
|
|
4425
|
+
errorMessages?: string | string[] | undefined;
|
|
4426
|
+
autocomplete?: boolean | "name" | "off" | "on" | "honorific-prefix" | "given-name" | "additional-name" | "family-name" | "honorific-suffix" | "nickname" | "email" | "username" | "new-password" | "current-password" | "one-time-code" | "organization-title" | "organization" | "street-address" | "address-line1" | "address-line2" | "address-line3" | "address-level4" | "address-level3" | "address-level2" | "address-level1" | "country" | "country-name" | "postal-code" | "cc-name" | "cc-given-name" | "cc-additional-name" | "cc-family-name" | "cc-number" | "cc-exp" | "cc-exp-month" | "cc-exp-year" | "cc-csc" | "cc-type" | "transaction-currency" | "transaction-amount" | "language" | "bday" | "bday-day" | "bday-month" | "bday-year" | "sex" | "tel" | "tel-country-code" | "tel-national" | "tel-area-code" | "tel-local" | "tel-extension" | "impp" | "url" | "photo" | undefined;
|
|
4427
|
+
placeholder?: string | undefined;
|
|
4428
|
+
minlength?: string | number | undefined;
|
|
4429
|
+
maxlength?: string | number | undefined;
|
|
4430
|
+
pattern?: string | RegExp | undefined;
|
|
4431
|
+
autocapitalize?: FormAutoCapitalize | undefined;
|
|
4432
|
+
finishings?: RawTextableFinishingProp | undefined;
|
|
4433
|
+
counter?: string | number | boolean | undefined;
|
|
4434
|
+
counterValue?: ((value: string) => number) | undefined;
|
|
4435
|
+
nodeControl?: FormNodeControl<any, any> | undefined;
|
|
4436
|
+
label?: VNodeChildOrSlot<any>;
|
|
4437
|
+
hint?: VNodeChildOrSlot<any>;
|
|
4438
|
+
infoAppends?: VNodeChildOrSlot<any>;
|
|
4439
|
+
startAdornment?: VNodeChildOrSlot<any>;
|
|
4440
|
+
endAdornment?: VNodeChildOrSlot<any>;
|
|
4441
|
+
variant?: "flat" | "outlined" | "filled" | undefined;
|
|
4442
|
+
size?: "sm" | "md" | "lg" | undefined;
|
|
4443
|
+
"v-slots"?: ResolveRawSlots<FormControlSlots & InputBoxSlots> | undefined;
|
|
4444
|
+
}> & {
|
|
4445
|
+
onBlur?: ((ev: FocusEvent) => any) | undefined;
|
|
4446
|
+
onChange?: ((value: string) => any) | undefined;
|
|
4447
|
+
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
4448
|
+
"onUpdate:errors"?: ((errors: FormNodeError[]) => any) | undefined;
|
|
4449
|
+
onFocus?: ((ev: FocusEvent) => any) | undefined;
|
|
4450
|
+
}, {
|
|
4451
|
+
autofocus: boolean;
|
|
4452
|
+
disabled: boolean;
|
|
4453
|
+
readonly: boolean;
|
|
4454
|
+
spellcheck: boolean;
|
|
4455
|
+
viewonly: boolean;
|
|
4456
|
+
required: boolean;
|
|
4457
|
+
error: boolean;
|
|
4458
|
+
tabindex: string | number;
|
|
4459
|
+
validateTiming: ValidateTiming;
|
|
4460
|
+
rules: RecursiveArray<Rule<any>>;
|
|
4461
|
+
limit: boolean;
|
|
4462
|
+
validating: boolean;
|
|
4463
|
+
pending: boolean;
|
|
4464
|
+
focused: boolean;
|
|
4465
|
+
dirty: boolean;
|
|
4466
|
+
pristine: boolean;
|
|
4467
|
+
touched: boolean;
|
|
4468
|
+
untouched: boolean;
|
|
4469
|
+
invalid: boolean;
|
|
4470
|
+
valid: boolean;
|
|
4471
|
+
hiddenInfo: boolean;
|
|
4472
|
+
errors: FormNodeError[];
|
|
4473
|
+
tools: RawWysiwygEditorTool[];
|
|
4474
|
+
}>;
|
|
4475
|
+
|
|
4476
|
+
export declare const WysiwygBulletListTool: WysiwygEditorToolFactory<BulletListOptions>;
|
|
4477
|
+
|
|
4478
|
+
declare interface WysiwygEditorContext {
|
|
4479
|
+
editor: Editor;
|
|
4480
|
+
vui: VuiService;
|
|
4481
|
+
}
|
|
4482
|
+
|
|
4483
|
+
declare interface WysiwygEditorTool {
|
|
4484
|
+
key: string;
|
|
4485
|
+
icon: IconName | ((ctx: WysiwygEditorContext) => IconName);
|
|
4486
|
+
active?: boolean | ((ctx: WysiwygEditorContext) => boolean);
|
|
4487
|
+
disabled?: boolean | ((ctx: WysiwygEditorContext) => boolean);
|
|
4488
|
+
onClick: (ctx: WysiwygEditorContext, ev: MouseEvent) => any;
|
|
4489
|
+
floating?: boolean;
|
|
4490
|
+
extensions?: Extensions;
|
|
4491
|
+
}
|
|
4492
|
+
|
|
4493
|
+
declare type WysiwygEditorToolFactory<Options = void> = (vui: VuiService, options?: Options) => WysiwygEditorTool | WysiwygEditorTool[];
|
|
4494
|
+
|
|
4495
|
+
export declare const WysiwygFormatBoldTool: WysiwygEditorToolFactory<BoldOptions>;
|
|
4496
|
+
|
|
4497
|
+
export declare const WysiwygFormatItalicTool: WysiwygEditorToolFactory<ItalicOptions>;
|
|
4498
|
+
|
|
4499
|
+
export declare const WysiwygFormatUnderlineTool: WysiwygEditorToolFactory<UnderlineOptions>;
|
|
4500
|
+
|
|
4501
|
+
export declare const WysiwygHistoryTool: WysiwygEditorToolFactory<HistoryOptions>;
|
|
4502
|
+
|
|
4503
|
+
export declare const WysiwygLinkTool: WysiwygEditorToolFactory<LinkOptions>;
|
|
4504
|
+
|
|
4505
|
+
export declare const WysiwygOrderedListTool: WysiwygEditorToolFactory<OrderedListOptions>;
|
|
4506
|
+
|
|
4507
|
+
export declare const WysiwygTextColorTool: WysiwygEditorToolFactory;
|
|
4508
|
+
|
|
4083
4509
|
|
|
4084
4510
|
export * from "@fastkit/vue-kit";
|
|
4085
4511
|
export * from "@fastkit/vue-loading";
|