yuyeon 0.0.42-rc17 → 0.0.42-rc18
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/style.css +1 -1
- package/dist/yuyeon.js +331 -328
- package/dist/yuyeon.umd.cjs +5 -5
- package/lib/components/dialog/YDialog.mjs +1 -1
- package/lib/components/dialog/YDialog.mjs.map +1 -1
- package/lib/components/dialog/YDialog.scss +2 -0
- package/package.json +1 -1
- package/types/components/field-input/YFieldInput.d.ts +7 -0
- package/types/components/input/YInput.d.ts +8 -0
- package/types/components/select/YSelect.d.ts +7 -0
- package/types/components/textarea/YTextarea.d.ts +12 -0
- package/types/composables/validation.d.ts +5 -0
|
@@ -105,7 +105,7 @@ export const YDialog = defineComponent({
|
|
|
105
105
|
const filtered = activeLayers?.filter(layer => {
|
|
106
106
|
return layer.ctx.modal;
|
|
107
107
|
});
|
|
108
|
-
if (filtered && !filtered.length) {
|
|
108
|
+
if (filtered && !filtered.length || !root$.classList.contains('y-dialog--virtual-scroll')) {
|
|
109
109
|
const scrollTop = document.documentElement.scrollTop;
|
|
110
110
|
const scrollLeft = document.documentElement.scrollLeft;
|
|
111
111
|
tempScrollTop.value = scrollTop;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"YDialog.mjs","names":["computed","defineComponent","getCurrentInstance","ref","shallowRef","watch","useModelDuplex","useRender","toStyleSizeValue","bindClasses","YCard","YLayer","useActiveStack","YDialog","name","components","props","modelValue","type","Boolean","persistent","default","dialogClasses","Array","String","Object","closeClickScrim","disabled","maximized","scrim","offset","emits","setup","_ref","emit","slots","vm","$yuyeon","appContext","config","globalProperties","active","classes","boundClasses","computedOffset","paddingTop","styles","value","layer$","children","onFocusin","e","prevTarget","relatedTarget","target","testChildrenContains","layers","some","layer","content$","contains","document","includes","focusableSelector","focusables","querySelectorAll","filter","el","hasAttribute","matches","length","firstChild","lastChild","focus","installFocusTrap","addEventListener","dismantleFocusTrap","removeEventListener","tempScrollTop","tempScrollLeft","preventInteractionBackground","toggle","root$","root","activeLayers","getActiveLayers","filtered","ctx","modal","scrollTop","documentElement","scrollLeft","classList","add","style","top","left","isMe","remove","onUpdate","v","onClick","currentActive","baseEl","neo","old","immediate","_createVNode","_Fragment","$event","_len","arguments","args","_key","base"],"sources":["../../../src/components/dialog/YDialog.tsx"],"sourcesContent":["import type { PropType } from 'vue';\r\nimport {\r\n computed,\r\n defineComponent,\r\n getCurrentInstance,\r\n ref,\r\n shallowRef,\r\n watch,\r\n} from 'vue';\r\n\r\nimport { useModelDuplex } from '../../composables/communication';\r\nimport { useRender } from '../../composables/component';\r\nimport { toStyleSizeValue } from '../../util';\r\nimport { bindClasses } from '../../util/vue-component';\r\nimport { YCard } from '../card';\r\nimport { YLayer } from '../layer';\r\nimport { useActiveStack } from '../layer/active-stack';\r\n\r\nimport './YDialog.scss';\r\n\r\nexport const YDialog = defineComponent({\r\n name: 'YDialog',\r\n components: {\r\n YLayer,\r\n YCard,\r\n },\r\n props: {\r\n modelValue: {\r\n type: Boolean as PropType<boolean>,\r\n },\r\n persistent: {\r\n type: Boolean as PropType<boolean>,\r\n default: true,\r\n },\r\n dialogClasses: {\r\n type: [Array, String, Object] as PropType<\r\n string[] | string | Record<string, any>\r\n >,\r\n },\r\n closeClickScrim: {\r\n type: Boolean as PropType<boolean>,\r\n },\r\n disabled: Boolean as PropType<boolean>,\r\n maximized: Boolean as PropType<boolean>,\r\n scrim: {\r\n type: Boolean as PropType<boolean>,\r\n default: true,\r\n },\r\n offset: {\r\n type: String as PropType<string>,\r\n },\r\n },\r\n emits: ['update:modelValue'],\r\n setup(props, { emit, slots }) {\r\n const vm = getCurrentInstance();\r\n const $yuyeon = vm?.appContext.config.globalProperties.$yuyeon;\r\n const active = useModelDuplex(props);\r\n\r\n const classes = computed(() => {\r\n const boundClasses = bindClasses(props.dialogClasses);\r\n return {\r\n ...boundClasses,\r\n 'y-dialog': true,\r\n 'y-dialog--maximized': props.maximized,\r\n };\r\n });\r\n\r\n const computedOffset = computed(() => {\r\n return {\r\n paddingTop: toStyleSizeValue(props.offset),\r\n };\r\n });\r\n\r\n const styles = computed(() => {\r\n return {\r\n ...computedOffset.value,\r\n };\r\n });\r\n\r\n const layer$ = ref<typeof YLayer>();\r\n const { children } = useActiveStack(layer$, active, shallowRef(true));\r\n function onFocusin(e: FocusEvent) {\r\n const prevTarget = e.relatedTarget as HTMLElement | null;\r\n const target = e.target as HTMLElement | null;\r\n\r\n function testChildrenContains(layers: YLayer[]) {\r\n return layers.some((layer) => {\r\n return !layer.content$?.contains(target);\r\n });\r\n }\r\n\r\n if (\r\n prevTarget !== target &&\r\n layer$.value?.content$ &&\r\n ![document, layer$.value?.content$].includes(target) &&\r\n !layer$.value?.content$.contains(target) &&\r\n !testChildrenContains(children.value)\r\n ) {\r\n const focusableSelector =\r\n 'button, [href], input:not([type=\"hidden\"]), select, textarea, [tabindex]:not([tabindex=\"-1\"])';\r\n const focusables = [\r\n ...layer$.value.content$.querySelectorAll(focusableSelector),\r\n ].filter(\r\n (el) =>\r\n !el.hasAttribute('disabled') && !el.matches('[tabindex=\"-1\"]'),\r\n ) as HTMLElement[];\r\n if (!focusables.length) return;\r\n const firstChild = focusables[0];\r\n const lastChild = focusables[focusables.length - 1];\r\n if (firstChild === lastChild) {\r\n lastChild.focus();\r\n } else {\r\n firstChild.focus();\r\n }\r\n }\r\n }\r\n\r\n function installFocusTrap() {\r\n document.addEventListener('focusin', onFocusin);\r\n }\r\n\r\n function dismantleFocusTrap() {\r\n document.removeEventListener('focusin', onFocusin);\r\n }\r\n\r\n const tempScrollTop = ref(0);\r\n const tempScrollLeft = ref(0);\r\n\r\n function preventInteractionBackground(toggle: boolean) {\r\n const root$ = $yuyeon.root as HTMLElement;\r\n const activeLayers = layer$.value?.getActiveLayers();\r\n if (toggle) {\r\n const filtered = activeLayers?.filter((layer: any) => {\r\n return layer.ctx.modal;\r\n });\r\n if (filtered && !filtered.length) {\r\n const scrollTop = document.documentElement.scrollTop;\r\n const scrollLeft = document.documentElement.scrollLeft;\r\n tempScrollTop.value = scrollTop;\r\n tempScrollLeft.value = scrollLeft;\r\n document.documentElement.classList.add('y-dialog--prevent-scroll');\r\n root$.classList.add('y-dialog--virtual-scroll');\r\n root$.style.top = toStyleSizeValue(-1 * scrollTop) || '';\r\n root$.style.left = toStyleSizeValue(-1 * scrollLeft) || '';\r\n }\r\n } else {\r\n const filtered = activeLayers?.filter((layer: any) => {\r\n return !layer$.value?.isMe(layer) && layer.ctx.modal;\r\n });\r\n if (filtered && !filtered.length) {\r\n root$.classList.remove('y-dialog--virtual-scroll');\r\n document.documentElement.classList.remove('y-dialog--prevent-scroll');\r\n root$.style.top = '';\r\n root$.style.left = '';\r\n document.documentElement.scrollTop = tempScrollTop.value;\r\n document.documentElement.scrollLeft = tempScrollLeft.value;\r\n }\r\n }\r\n }\r\n\r\n function onUpdate(v: boolean) {\r\n active.value = v;\r\n }\r\n\r\n function onClick(e: MouseEvent) {\r\n const currentActive = active.value;\r\n if (!props.disabled) {\r\n active.value = !currentActive;\r\n }\r\n }\r\n\r\n watch(\r\n () => layer$.value?.baseEl,\r\n (neo, old) => {\r\n if (neo) {\r\n neo.addEventListener('click', onClick);\r\n } else if (old) {\r\n old.removeEventListener('click', onClick);\r\n }\r\n },\r\n );\r\n\r\n watch(\r\n () => active.value,\r\n (neo) => {\r\n neo ? installFocusTrap() : dismantleFocusTrap();\r\n preventInteractionBackground(neo);\r\n },\r\n { immediate: true },\r\n );\r\n\r\n useRender(() => {\r\n return (\r\n <>\r\n <YLayer\r\n v-model={active.value}\r\n classes={classes.value}\r\n content-styles={styles.value}\r\n scrim={props.scrim}\r\n modal\r\n close-click-scrim={props.closeClickScrim}\r\n ref={layer$}\r\n >\r\n {{\r\n default: (...args: any[]) => slots.default?.(...args),\r\n base: slots.base,\r\n }}\r\n </YLayer>\r\n </>\r\n );\r\n });\r\n\r\n return {\r\n active,\r\n layer: layer$,\r\n classes,\r\n };\r\n },\r\n});\r\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"YDialog.mjs","names":["computed","defineComponent","getCurrentInstance","ref","shallowRef","watch","useModelDuplex","useRender","toStyleSizeValue","bindClasses","YCard","YLayer","useActiveStack","YDialog","name","components","props","modelValue","type","Boolean","persistent","default","dialogClasses","Array","String","Object","closeClickScrim","disabled","maximized","scrim","offset","emits","setup","_ref","emit","slots","vm","$yuyeon","appContext","config","globalProperties","active","classes","boundClasses","computedOffset","paddingTop","styles","value","layer$","children","onFocusin","e","prevTarget","relatedTarget","target","testChildrenContains","layers","some","layer","content$","contains","document","includes","focusableSelector","focusables","querySelectorAll","filter","el","hasAttribute","matches","length","firstChild","lastChild","focus","installFocusTrap","addEventListener","dismantleFocusTrap","removeEventListener","tempScrollTop","tempScrollLeft","preventInteractionBackground","toggle","root$","root","activeLayers","getActiveLayers","filtered","ctx","modal","classList","scrollTop","documentElement","scrollLeft","add","style","top","left","isMe","remove","onUpdate","v","onClick","currentActive","baseEl","neo","old","immediate","_createVNode","_Fragment","$event","_len","arguments","args","_key","base"],"sources":["../../../src/components/dialog/YDialog.tsx"],"sourcesContent":["import type { PropType } from 'vue';\nimport { computed, defineComponent, getCurrentInstance, nextTick, ref, shallowRef, watch } from 'vue';\n\n\n\nimport { useModelDuplex } from '../../composables/communication';\nimport { useRender } from '../../composables/component';\nimport { toStyleSizeValue } from '../../util';\nimport { bindClasses } from '../../util/vue-component';\nimport { YCard } from '../card';\nimport { YLayer } from '../layer';\nimport { useActiveStack } from '../layer/active-stack';\n\n\n\nimport './YDialog.scss';\n\n\nexport const YDialog = defineComponent({\n name: 'YDialog',\n components: {\n YLayer,\n YCard,\n },\n props: {\n modelValue: {\n type: Boolean as PropType<boolean>,\n },\n persistent: {\n type: Boolean as PropType<boolean>,\n default: true,\n },\n dialogClasses: {\n type: [Array, String, Object] as PropType<\n string[] | string | Record<string, any>\n >,\n },\n closeClickScrim: {\n type: Boolean as PropType<boolean>,\n },\n disabled: Boolean as PropType<boolean>,\n maximized: Boolean as PropType<boolean>,\n scrim: {\n type: Boolean as PropType<boolean>,\n default: true,\n },\n offset: {\n type: String as PropType<string>,\n },\n },\n emits: ['update:modelValue'],\n setup(props, { emit, slots }) {\n const vm = getCurrentInstance();\n const $yuyeon = vm?.appContext.config.globalProperties.$yuyeon;\n const active = useModelDuplex(props);\n\n const classes = computed(() => {\n const boundClasses = bindClasses(props.dialogClasses);\n return {\n ...boundClasses,\n 'y-dialog': true,\n 'y-dialog--maximized': props.maximized,\n };\n });\n\n const computedOffset = computed(() => {\n return {\n paddingTop: toStyleSizeValue(props.offset),\n };\n });\n\n const styles = computed(() => {\n return {\n ...computedOffset.value,\n };\n });\n\n const layer$ = ref<typeof YLayer>();\n const { children } = useActiveStack(layer$, active, shallowRef(true));\n function onFocusin(e: FocusEvent) {\n const prevTarget = e.relatedTarget as HTMLElement | null;\n const target = e.target as HTMLElement | null;\n\n function testChildrenContains(layers: YLayer[]) {\n return layers.some((layer) => {\n return !layer.content$?.contains(target);\n });\n }\n\n if (\n prevTarget !== target &&\n layer$.value?.content$ &&\n ![document, layer$.value?.content$].includes(target) &&\n !layer$.value?.content$.contains(target) &&\n !testChildrenContains(children.value)\n ) {\n const focusableSelector =\n 'button, [href], input:not([type=\"hidden\"]), select, textarea, [tabindex]:not([tabindex=\"-1\"])';\n const focusables = [\n ...layer$.value.content$.querySelectorAll(focusableSelector),\n ].filter(\n (el) =>\n !el.hasAttribute('disabled') && !el.matches('[tabindex=\"-1\"]'),\n ) as HTMLElement[];\n if (!focusables.length) return;\n const firstChild = focusables[0];\n const lastChild = focusables[focusables.length - 1];\n if (firstChild === lastChild) {\n lastChild.focus();\n } else {\n firstChild.focus();\n }\n }\n }\n\n function installFocusTrap() {\n document.addEventListener('focusin', onFocusin);\n }\n\n function dismantleFocusTrap() {\n document.removeEventListener('focusin', onFocusin);\n }\n\n const tempScrollTop = ref(0);\n const tempScrollLeft = ref(0);\n\n function preventInteractionBackground(toggle: boolean) {\n const root$ = $yuyeon.root as HTMLElement;\n const activeLayers = layer$.value?.getActiveLayers();\n if (toggle) {\n const filtered = activeLayers?.filter((layer: any) => {\n return layer.ctx.modal;\n });\n if (\n (filtered && !filtered.length) ||\n !root$.classList.contains('y-dialog--virtual-scroll')\n ) {\n const scrollTop = document.documentElement.scrollTop;\n const scrollLeft = document.documentElement.scrollLeft;\n tempScrollTop.value = scrollTop;\n tempScrollLeft.value = scrollLeft;\n document.documentElement.classList.add('y-dialog--prevent-scroll');\n root$.classList.add('y-dialog--virtual-scroll');\n root$.style.top = toStyleSizeValue(-1 * scrollTop) || '';\n root$.style.left = toStyleSizeValue(-1 * scrollLeft) || '';\n }\n } else {\n const filtered = activeLayers?.filter((layer: any) => {\n return !layer$.value?.isMe(layer) && layer.ctx.modal;\n });\n if (filtered && !filtered.length) {\n root$.classList.remove('y-dialog--virtual-scroll');\n document.documentElement.classList.remove('y-dialog--prevent-scroll');\n root$.style.top = '';\n root$.style.left = '';\n document.documentElement.scrollTop = tempScrollTop.value;\n document.documentElement.scrollLeft = tempScrollLeft.value;\n }\n }\n }\n\n function onUpdate(v: boolean) {\n active.value = v;\n }\n\n function onClick(e: MouseEvent) {\n const currentActive = active.value;\n if (!props.disabled) {\n active.value = !currentActive;\n }\n }\n\n watch(\n () => layer$.value?.baseEl,\n (neo, old) => {\n if (neo) {\n neo.addEventListener('click', onClick);\n } else if (old) {\n old.removeEventListener('click', onClick);\n }\n },\n );\n\n watch(\n () => active.value,\n (neo) => {\n neo ? installFocusTrap() : dismantleFocusTrap();\n preventInteractionBackground(neo);\n },\n { immediate: true },\n );\n\n useRender(() => {\n return (\n <>\n <YLayer\n v-model={active.value}\n classes={classes.value}\n content-styles={styles.value}\n scrim={props.scrim}\n modal\n close-click-scrim={props.closeClickScrim}\n ref={layer$}\n >\n {{\n default: (...args: any[]) => slots.default?.(...args),\n base: slots.base,\n }}\n </YLayer>\n </>\n );\n });\n\n return {\n active,\n layer: layer$,\n classes,\n };\n },\n});\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -5,6 +5,7 @@ export declare const pressYFieldInputPropsOptions: <Defaults extends {
|
|
|
5
5
|
readonly?: unknown;
|
|
6
6
|
disabled?: unknown;
|
|
7
7
|
status?: unknown;
|
|
8
|
+
helperText?: unknown;
|
|
8
9
|
validators?: unknown;
|
|
9
10
|
validateOn?: unknown;
|
|
10
11
|
validationValue?: unknown;
|
|
@@ -58,6 +59,10 @@ export declare const pressYFieldInputPropsOptions: <Defaults extends {
|
|
|
58
59
|
type: PropType<unknown extends Defaults["status"] ? "success" | "warning" | "error" | undefined : NonNullable<"success" | "warning" | "error" | undefined> | Defaults["status"]>;
|
|
59
60
|
default: unknown extends Defaults["status"] ? "success" | "warning" | "error" | undefined : NonNullable<"success" | "warning" | "error" | undefined> | Defaults["status"];
|
|
60
61
|
};
|
|
62
|
+
helperText: unknown extends Defaults["helperText"] ? StringConstructor : {
|
|
63
|
+
type: PropType<unknown extends Defaults["helperText"] ? string : string | Defaults["helperText"]>;
|
|
64
|
+
default: unknown extends Defaults["helperText"] ? string : string | Defaults["helperText"];
|
|
65
|
+
};
|
|
61
66
|
validators: unknown extends Defaults["validators"] ? PropType<string[] | ((v: any) => string | boolean)[]> : {
|
|
62
67
|
type: PropType<unknown extends Defaults["validators"] ? string[] | ((v: any) => string | boolean)[] : NonNullable<string[] | ((v: any) => string | boolean)[]> | Defaults["validators"]>;
|
|
63
68
|
default: unknown extends Defaults["validators"] ? string[] | ((v: any) => string | boolean)[] : NonNullable<string[] | ((v: any) => string | boolean)[]> | Defaults["validators"];
|
|
@@ -232,6 +237,7 @@ export declare const YFieldInput: import("vue").DefineComponent<{
|
|
|
232
237
|
type: PropType<"success" | "warning" | "error" | undefined>;
|
|
233
238
|
validator(value: string): boolean;
|
|
234
239
|
};
|
|
240
|
+
helperText: StringConstructor;
|
|
235
241
|
validators: PropType<string[] | ((v: any) => string | boolean)[]>;
|
|
236
242
|
validateOn: {
|
|
237
243
|
type: PropType<string>;
|
|
@@ -302,6 +308,7 @@ export declare const YFieldInput: import("vue").DefineComponent<{
|
|
|
302
308
|
type: PropType<"success" | "warning" | "error" | undefined>;
|
|
303
309
|
validator(value: string): boolean;
|
|
304
310
|
};
|
|
311
|
+
helperText: StringConstructor;
|
|
305
312
|
validators: PropType<string[] | ((v: any) => string | boolean)[]>;
|
|
306
313
|
validateOn: {
|
|
307
314
|
type: PropType<string>;
|
|
@@ -5,6 +5,7 @@ export declare const pressYInputPropsOptions: <Defaults extends {
|
|
|
5
5
|
readonly?: unknown;
|
|
6
6
|
disabled?: unknown;
|
|
7
7
|
status?: unknown;
|
|
8
|
+
helperText?: unknown;
|
|
8
9
|
validators?: unknown;
|
|
9
10
|
validateOn?: unknown;
|
|
10
11
|
validationValue?: unknown;
|
|
@@ -52,6 +53,10 @@ export declare const pressYInputPropsOptions: <Defaults extends {
|
|
|
52
53
|
type: PropType<unknown extends Defaults["status"] ? "success" | "warning" | "error" | undefined : NonNullable<"success" | "warning" | "error" | undefined> | Defaults["status"]>;
|
|
53
54
|
default: unknown extends Defaults["status"] ? "success" | "warning" | "error" | undefined : NonNullable<"success" | "warning" | "error" | undefined> | Defaults["status"];
|
|
54
55
|
};
|
|
56
|
+
helperText: unknown extends Defaults["helperText"] ? StringConstructor : {
|
|
57
|
+
type: PropType<unknown extends Defaults["helperText"] ? string : string | Defaults["helperText"]>;
|
|
58
|
+
default: unknown extends Defaults["helperText"] ? string : string | Defaults["helperText"];
|
|
59
|
+
};
|
|
55
60
|
validators: unknown extends Defaults["validators"] ? PropType<string[] | ((v: any) => string | boolean)[]> : {
|
|
56
61
|
type: PropType<unknown extends Defaults["validators"] ? string[] | ((v: any) => string | boolean)[] : NonNullable<string[] | ((v: any) => string | boolean)[]> | Defaults["validators"]>;
|
|
57
62
|
default: unknown extends Defaults["validators"] ? string[] | ((v: any) => string | boolean)[] : NonNullable<string[] | ((v: any) => string | boolean)[]> | Defaults["validators"];
|
|
@@ -184,6 +189,7 @@ export declare const YInput: import("vue").DefineComponent<{
|
|
|
184
189
|
type: PropType<"success" | "warning" | "error" | undefined>;
|
|
185
190
|
validator(value: string): boolean;
|
|
186
191
|
};
|
|
192
|
+
helperText: StringConstructor;
|
|
187
193
|
validators: PropType<string[] | ((v: any) => string | boolean)[]>;
|
|
188
194
|
validateOn: {
|
|
189
195
|
type: PropType<string>;
|
|
@@ -237,6 +243,7 @@ export declare const YInput: import("vue").DefineComponent<{
|
|
|
237
243
|
whenFocus: () => void;
|
|
238
244
|
whenBlur: () => void;
|
|
239
245
|
createLabel: () => VNode | undefined;
|
|
246
|
+
invokeValidators: () => Promise<any[]>;
|
|
240
247
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("error" | "focus" | "click" | "mousedown" | "mouseup" | "blur" | "mousedown:display" | "mouseup:display" | "click:leading" | "update:modelValue" | "update:focused")[], "error" | "focus" | "click" | "mousedown" | "mouseup" | "blur" | "mousedown:display" | "mouseup:display" | "click:leading" | "update:modelValue" | "update:focused", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
241
248
|
focused: BooleanConstructor;
|
|
242
249
|
'onUpdate:focused': PropType<(v: boolean) => void>;
|
|
@@ -246,6 +253,7 @@ export declare const YInput: import("vue").DefineComponent<{
|
|
|
246
253
|
type: PropType<"success" | "warning" | "error" | undefined>;
|
|
247
254
|
validator(value: string): boolean;
|
|
248
255
|
};
|
|
256
|
+
helperText: StringConstructor;
|
|
249
257
|
validators: PropType<string[] | ((v: any) => string | boolean)[]>;
|
|
250
258
|
validateOn: {
|
|
251
259
|
type: PropType<string>;
|
|
@@ -599,6 +599,7 @@ export declare const pressYSelectPropsOptions: <Defaults extends {
|
|
|
599
599
|
readonly?: unknown;
|
|
600
600
|
disabled?: unknown;
|
|
601
601
|
status?: unknown;
|
|
602
|
+
helperText?: unknown;
|
|
602
603
|
validators?: unknown;
|
|
603
604
|
validateOn?: unknown;
|
|
604
605
|
validationValue?: unknown;
|
|
@@ -721,6 +722,10 @@ export declare const pressYSelectPropsOptions: <Defaults extends {
|
|
|
721
722
|
type: PropType<unknown extends Defaults["status"] ? "success" | "warning" | "error" | undefined : NonNullable<"success" | "warning" | "error" | undefined> | Defaults["status"]>;
|
|
722
723
|
default: unknown extends Defaults["status"] ? "success" | "warning" | "error" | undefined : NonNullable<"success" | "warning" | "error" | undefined> | Defaults["status"];
|
|
723
724
|
};
|
|
725
|
+
helperText: unknown extends Defaults["helperText"] ? StringConstructor : {
|
|
726
|
+
type: PropType<unknown extends Defaults["helperText"] ? string : string | Defaults["helperText"]>;
|
|
727
|
+
default: unknown extends Defaults["helperText"] ? string : string | Defaults["helperText"];
|
|
728
|
+
};
|
|
724
729
|
validators: unknown extends Defaults["validators"] ? PropType<string[] | ((v: any) => string | boolean)[]> : {
|
|
725
730
|
type: PropType<unknown extends Defaults["validators"] ? string[] | ((v: any) => string | boolean)[] : NonNullable<string[] | ((v: any) => string | boolean)[]> | Defaults["validators"]>;
|
|
726
731
|
default: unknown extends Defaults["validators"] ? string[] | ((v: any) => string | boolean)[] : NonNullable<string[] | ((v: any) => string | boolean)[]> | Defaults["validators"];
|
|
@@ -1527,6 +1532,7 @@ export declare const YSelect: import("vue").DefineComponent<{
|
|
|
1527
1532
|
type: PropType<"success" | "warning" | "error" | undefined>;
|
|
1528
1533
|
validator(value: string): boolean;
|
|
1529
1534
|
};
|
|
1535
|
+
helperText: StringConstructor;
|
|
1530
1536
|
validators: PropType<string[] | ((v: any) => string | boolean)[]>;
|
|
1531
1537
|
validateOn: {
|
|
1532
1538
|
type: PropType<string>;
|
|
@@ -5643,6 +5649,7 @@ export declare const YSelect: import("vue").DefineComponent<{
|
|
|
5643
5649
|
type: PropType<"success" | "warning" | "error" | undefined>;
|
|
5644
5650
|
validator(value: string): boolean;
|
|
5645
5651
|
};
|
|
5652
|
+
helperText: StringConstructor;
|
|
5646
5653
|
validators: PropType<string[] | ((v: any) => string | boolean)[]>;
|
|
5647
5654
|
validateOn: {
|
|
5648
5655
|
type: PropType<string>;
|
|
@@ -6,6 +6,7 @@ export declare const pressYTextareaPropsOptions: <Defaults extends {
|
|
|
6
6
|
readonly?: unknown;
|
|
7
7
|
disabled?: unknown;
|
|
8
8
|
status?: unknown;
|
|
9
|
+
helperText?: unknown;
|
|
9
10
|
validators?: unknown;
|
|
10
11
|
validateOn?: unknown;
|
|
11
12
|
validationValue?: unknown;
|
|
@@ -55,6 +56,10 @@ export declare const pressYTextareaPropsOptions: <Defaults extends {
|
|
|
55
56
|
type: PropType<unknown extends Defaults["status"] ? "success" | "warning" | "error" | undefined : NonNullable<"success" | "warning" | "error" | undefined> | Defaults["status"]>;
|
|
56
57
|
default: unknown extends Defaults["status"] ? "success" | "warning" | "error" | undefined : NonNullable<"success" | "warning" | "error" | undefined> | Defaults["status"];
|
|
57
58
|
};
|
|
59
|
+
helperText: unknown extends Defaults["helperText"] ? StringConstructor : {
|
|
60
|
+
type: PropType<unknown extends Defaults["helperText"] ? string : string | Defaults["helperText"]>;
|
|
61
|
+
default: unknown extends Defaults["helperText"] ? string : string | Defaults["helperText"];
|
|
62
|
+
};
|
|
58
63
|
validators: unknown extends Defaults["validators"] ? PropType<string[] | ((v: any) => string | boolean)[]> : {
|
|
59
64
|
type: PropType<unknown extends Defaults["validators"] ? string[] | ((v: any) => string | boolean)[] : NonNullable<string[] | ((v: any) => string | boolean)[]> | Defaults["validators"]>;
|
|
60
65
|
default: unknown extends Defaults["validators"] ? string[] | ((v: any) => string | boolean)[] : NonNullable<string[] | ((v: any) => string | boolean)[]> | Defaults["validators"];
|
|
@@ -201,6 +206,7 @@ export declare const YTextarea: import("vue").DefineComponent<{
|
|
|
201
206
|
type: PropType<"success" | "warning" | "error" | undefined>;
|
|
202
207
|
validator(value: string): boolean;
|
|
203
208
|
};
|
|
209
|
+
helperText: StringConstructor;
|
|
204
210
|
validators: PropType<string[] | ((v: any) => string | boolean)[]>;
|
|
205
211
|
validateOn: {
|
|
206
212
|
type: PropType<string>;
|
|
@@ -271,6 +277,7 @@ export declare const YTextarea: import("vue").DefineComponent<{
|
|
|
271
277
|
readonly height?: string | number | undefined;
|
|
272
278
|
readonly modelValue?: any;
|
|
273
279
|
readonly status?: "success" | "warning" | "error" | undefined;
|
|
280
|
+
readonly helperText?: string | undefined;
|
|
274
281
|
readonly validateOn?: string | undefined;
|
|
275
282
|
readonly validationValue?: any;
|
|
276
283
|
readonly readonly?: boolean | undefined;
|
|
@@ -370,6 +377,7 @@ export declare const YTextarea: import("vue").DefineComponent<{
|
|
|
370
377
|
type: PropType<"success" | "warning" | "error" | undefined>;
|
|
371
378
|
validator(value: string): boolean;
|
|
372
379
|
};
|
|
380
|
+
helperText: StringConstructor;
|
|
373
381
|
validators: PropType<string[] | ((v: any) => string | boolean)[]>;
|
|
374
382
|
validateOn: {
|
|
375
383
|
type: PropType<string>;
|
|
@@ -437,6 +445,7 @@ export declare const YTextarea: import("vue").DefineComponent<{
|
|
|
437
445
|
createLabel: () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
438
446
|
[key: string]: any;
|
|
439
447
|
}> | undefined;
|
|
448
|
+
invokeValidators: () => Promise<any[]>;
|
|
440
449
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("error" | "focus" | "click" | "mousedown" | "mouseup" | "blur" | "mousedown:display" | "mouseup:display" | "click:leading" | "update:modelValue" | "update:focused")[], string, {
|
|
441
450
|
displayTag: string;
|
|
442
451
|
autoSelect: boolean;
|
|
@@ -490,6 +499,7 @@ export declare const YTextarea: import("vue").DefineComponent<{
|
|
|
490
499
|
type: PropType<"success" | "warning" | "error" | undefined>;
|
|
491
500
|
validator(value: string): boolean;
|
|
492
501
|
};
|
|
502
|
+
helperText: StringConstructor;
|
|
493
503
|
validators: PropType<string[] | ((v: any) => string | boolean)[]>;
|
|
494
504
|
validateOn: {
|
|
495
505
|
type: PropType<string>;
|
|
@@ -557,6 +567,7 @@ export declare const YTextarea: import("vue").DefineComponent<{
|
|
|
557
567
|
createLabel: () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
558
568
|
[key: string]: any;
|
|
559
569
|
}> | undefined;
|
|
570
|
+
invokeValidators: () => Promise<any[]>;
|
|
560
571
|
}> & {} & import("vue").ComponentCustomProperties & {}) | undefined>;
|
|
561
572
|
input$: import("vue").Ref<any>;
|
|
562
573
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
@@ -579,6 +590,7 @@ export declare const YTextarea: import("vue").DefineComponent<{
|
|
|
579
590
|
type: PropType<"success" | "warning" | "error" | undefined>;
|
|
580
591
|
validator(value: string): boolean;
|
|
581
592
|
};
|
|
593
|
+
helperText: StringConstructor;
|
|
582
594
|
validators: PropType<string[] | ((v: any) => string | boolean)[]>;
|
|
583
595
|
validateOn: {
|
|
584
596
|
type: PropType<string>;
|
|
@@ -3,6 +3,7 @@ export declare const pressValidationPropsOptions: <Defaults extends {
|
|
|
3
3
|
readonly?: unknown;
|
|
4
4
|
disabled?: unknown;
|
|
5
5
|
status?: unknown;
|
|
6
|
+
helperText?: unknown;
|
|
6
7
|
validators?: unknown;
|
|
7
8
|
validateOn?: unknown;
|
|
8
9
|
validationValue?: unknown;
|
|
@@ -26,6 +27,10 @@ export declare const pressValidationPropsOptions: <Defaults extends {
|
|
|
26
27
|
type: PropType<unknown extends Defaults["status"] ? "success" | "warning" | "error" | undefined : Defaults["status"] | NonNullable<"success" | "warning" | "error" | undefined>>;
|
|
27
28
|
default: unknown extends Defaults["status"] ? "success" | "warning" | "error" | undefined : Defaults["status"] | NonNullable<"success" | "warning" | "error" | undefined>;
|
|
28
29
|
};
|
|
30
|
+
helperText: unknown extends Defaults["helperText"] ? StringConstructor : {
|
|
31
|
+
type: PropType<unknown extends Defaults["helperText"] ? string : string | Defaults["helperText"]>;
|
|
32
|
+
default: unknown extends Defaults["helperText"] ? string : string | Defaults["helperText"];
|
|
33
|
+
};
|
|
29
34
|
validators: unknown extends Defaults["validators"] ? PropType<string[] | ((v: any) => boolean | string)[]> : {
|
|
30
35
|
type: PropType<unknown extends Defaults["validators"] ? string[] | ((v: any) => boolean | string)[] : Defaults["validators"] | NonNullable<string[] | ((v: any) => boolean | string)[]>>;
|
|
31
36
|
default: unknown extends Defaults["validators"] ? string[] | ((v: any) => boolean | string)[] : Defaults["validators"] | NonNullable<string[] | ((v: any) => boolean | string)[]>;
|