Tracking de l'application VApp (IHM du jeu)
This commit is contained in:
32
VApp/node_modules/vuetify/lib/components/VInput/InputIcon.mjs
generated
vendored
Normal file
32
VApp/node_modules/vuetify/lib/components/VInput/InputIcon.mjs
generated
vendored
Normal file
@@ -0,0 +1,32 @@
|
||||
import { createVNode as _createVNode } from "vue";
|
||||
// Components
|
||||
import { VIcon } from "../VIcon/index.mjs"; // Composables
|
||||
import { useLocale } from "../../composables/locale.mjs"; // Types
|
||||
export function useInputIcon(props) {
|
||||
const {
|
||||
t
|
||||
} = useLocale();
|
||||
function InputIcon(_ref) {
|
||||
let {
|
||||
name
|
||||
} = _ref;
|
||||
const localeKey = {
|
||||
prepend: 'prependAction',
|
||||
prependInner: 'prependAction',
|
||||
append: 'appendAction',
|
||||
appendInner: 'appendAction',
|
||||
clear: 'clear'
|
||||
}[name];
|
||||
const listener = props[`onClick:${name}`];
|
||||
const label = listener && localeKey ? t(`$vuetify.input.${localeKey}`, props.label ?? '') : undefined;
|
||||
return _createVNode(VIcon, {
|
||||
"icon": props[`${name}Icon`],
|
||||
"aria-label": label,
|
||||
"onClick": listener
|
||||
}, null);
|
||||
}
|
||||
return {
|
||||
InputIcon
|
||||
};
|
||||
}
|
||||
//# sourceMappingURL=InputIcon.mjs.map
|
||||
1
VApp/node_modules/vuetify/lib/components/VInput/InputIcon.mjs.map
generated
vendored
Normal file
1
VApp/node_modules/vuetify/lib/components/VInput/InputIcon.mjs.map
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"InputIcon.mjs","names":["VIcon","useLocale","useInputIcon","props","t","InputIcon","_ref","name","localeKey","prepend","prependInner","append","appendInner","clear","listener","label","undefined","_createVNode"],"sources":["../../../src/components/VInput/InputIcon.tsx"],"sourcesContent":["// Components\nimport { VIcon } from '@/components/VIcon'\n\n// Composables\nimport { useLocale } from '@/composables/locale'\n\n// Types\nimport type { IconValue } from '@/composables/icons'\n\ntype names = 'clear' | 'prepend' | 'append' | 'appendInner' | 'prependInner'\n\ntype EventProp<T = (...args: any[]) => any> = T | T[]\ntype InputIconProps<T extends names> = {\n label: string | undefined\n} & {\n [K in `${T}Icon`]: IconValue | undefined\n} & {\n [K in `onClick:${T}`]: EventProp | undefined\n}\n\ntype Listeners<T extends {}, U = keyof T> = U extends `onClick:${infer V extends names}` ? V : never\n\nexport function useInputIcon<T extends {}, K extends names = Listeners<T>> (props: T & InputIconProps<K>) {\n const { t } = useLocale()\n\n function InputIcon ({ name }: { name: Extract<names, K> }) {\n const localeKey = {\n prepend: 'prependAction',\n prependInner: 'prependAction',\n append: 'appendAction',\n appendInner: 'appendAction',\n clear: 'clear',\n }[name]\n const listener = props[`onClick:${name}`]\n const label = listener && localeKey\n ? t(`$vuetify.input.${localeKey}`, props.label ?? '')\n : undefined\n\n return (\n <VIcon\n icon={ props[`${name}Icon`] }\n aria-label={ label }\n onClick={ listener }\n />\n )\n }\n\n return { InputIcon }\n}\n"],"mappings":";AAAA;AAAA,SACSA,KAAK,8BAEd;AAAA,SACSC,SAAS,wCAElB;AAgBA,OAAO,SAASC,YAAYA,CAAgDC,KAA4B,EAAE;EACxG,MAAM;IAAEC;EAAE,CAAC,GAAGH,SAAS,CAAC,CAAC;EAEzB,SAASI,SAASA,CAAAC,IAAA,EAAyC;IAAA,IAAvC;MAAEC;IAAkC,CAAC,GAAAD,IAAA;IACvD,MAAME,SAAS,GAAG;MAChBC,OAAO,EAAE,eAAe;MACxBC,YAAY,EAAE,eAAe;MAC7BC,MAAM,EAAE,cAAc;MACtBC,WAAW,EAAE,cAAc;MAC3BC,KAAK,EAAE;IACT,CAAC,CAACN,IAAI,CAAC;IACP,MAAMO,QAAQ,GAAGX,KAAK,CAAE,WAAUI,IAAK,EAAC,CAAC;IACzC,MAAMQ,KAAK,GAAGD,QAAQ,IAAIN,SAAS,GAC/BJ,CAAC,CAAE,kBAAiBI,SAAU,EAAC,EAAEL,KAAK,CAACY,KAAK,IAAI,EAAE,CAAC,GACnDC,SAAS;IAEb,OAAAC,YAAA,CAAAjB,KAAA;MAAA,QAEWG,KAAK,CAAE,GAAEI,IAAK,MAAK,CAAC;MAAA,cACdQ,KAAK;MAAA,WACRD;IAAQ;EAGxB;EAEA,OAAO;IAAET;EAAU,CAAC;AACtB"}
|
||||
143
VApp/node_modules/vuetify/lib/components/VInput/VInput.css
generated
vendored
Normal file
143
VApp/node_modules/vuetify/lib/components/VInput/VInput.css
generated
vendored
Normal file
@@ -0,0 +1,143 @@
|
||||
.v-input {
|
||||
display: grid;
|
||||
flex: 1 1 auto;
|
||||
font-size: 1rem;
|
||||
font-weight: 400;
|
||||
line-height: 1.5;
|
||||
}
|
||||
.v-input--disabled {
|
||||
pointer-events: none;
|
||||
}
|
||||
.v-input--density-default {
|
||||
--v-input-control-height: 56px;
|
||||
--v-input-padding-top: 16px;
|
||||
}
|
||||
|
||||
.v-input--density-comfortable {
|
||||
--v-input-control-height: 48px;
|
||||
--v-input-padding-top: 12px;
|
||||
}
|
||||
|
||||
.v-input--density-compact {
|
||||
--v-input-control-height: 40px;
|
||||
--v-input-padding-top: 8px;
|
||||
}
|
||||
|
||||
.v-input--vertical {
|
||||
grid-template-areas: "append" "control" "prepend";
|
||||
grid-template-rows: max-content auto max-content;
|
||||
grid-template-columns: min-content;
|
||||
}
|
||||
.v-input--vertical .v-input__prepend {
|
||||
margin-block-start: 16px;
|
||||
}
|
||||
.v-input--vertical .v-input__append {
|
||||
margin-block-end: 16px;
|
||||
}
|
||||
|
||||
.v-input--horizontal {
|
||||
grid-template-areas: "prepend control append" "a messages b";
|
||||
grid-template-columns: max-content minmax(0, 1fr) max-content;
|
||||
grid-template-rows: auto auto;
|
||||
}
|
||||
.v-input--horizontal .v-input__prepend {
|
||||
margin-inline-end: 16px;
|
||||
}
|
||||
.v-input--horizontal .v-input__append {
|
||||
margin-inline-start: 16px;
|
||||
}
|
||||
|
||||
.v-input__details {
|
||||
align-items: flex-end;
|
||||
display: flex;
|
||||
font-size: 0.75rem;
|
||||
font-weight: 400;
|
||||
grid-area: messages;
|
||||
letter-spacing: 0.0333333333em;
|
||||
line-height: normal;
|
||||
min-height: 22px;
|
||||
padding-top: 6px;
|
||||
overflow: hidden;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.v-input__details > .v-icon,
|
||||
.v-input__prepend > .v-icon,
|
||||
.v-input__append > .v-icon {
|
||||
opacity: var(--v-medium-emphasis-opacity);
|
||||
}
|
||||
.v-input--disabled .v-input__details > .v-icon,
|
||||
.v-input--disabled .v-input__details .v-messages, .v-input--error .v-input__details > .v-icon,
|
||||
.v-input--error .v-input__details .v-messages,
|
||||
.v-input--disabled .v-input__prepend > .v-icon,
|
||||
.v-input--disabled .v-input__prepend .v-messages,
|
||||
.v-input--error .v-input__prepend > .v-icon,
|
||||
.v-input--error .v-input__prepend .v-messages,
|
||||
.v-input--disabled .v-input__append > .v-icon,
|
||||
.v-input--disabled .v-input__append .v-messages,
|
||||
.v-input--error .v-input__append > .v-icon,
|
||||
.v-input--error .v-input__append .v-messages {
|
||||
opacity: 1;
|
||||
}
|
||||
.v-input--disabled .v-input__details,
|
||||
.v-input--disabled .v-input__prepend,
|
||||
.v-input--disabled .v-input__append {
|
||||
opacity: var(--v-disabled-opacity);
|
||||
}
|
||||
.v-input--error:not(.v-input--disabled) .v-input__details > .v-icon,
|
||||
.v-input--error:not(.v-input--disabled) .v-input__details .v-messages,
|
||||
.v-input--error:not(.v-input--disabled) .v-input__prepend > .v-icon,
|
||||
.v-input--error:not(.v-input--disabled) .v-input__prepend .v-messages,
|
||||
.v-input--error:not(.v-input--disabled) .v-input__append > .v-icon,
|
||||
.v-input--error:not(.v-input--disabled) .v-input__append .v-messages {
|
||||
color: rgb(var(--v-theme-error));
|
||||
}
|
||||
|
||||
.v-input__prepend,
|
||||
.v-input__append {
|
||||
display: flex;
|
||||
align-items: flex-start;
|
||||
padding-top: var(--v-input-padding-top);
|
||||
}
|
||||
.v-input--center-affix .v-input__prepend,
|
||||
.v-input--center-affix .v-input__append {
|
||||
align-items: center;
|
||||
padding-top: 0;
|
||||
}
|
||||
|
||||
.v-input__prepend {
|
||||
grid-area: prepend;
|
||||
}
|
||||
|
||||
.v-input__append {
|
||||
grid-area: append;
|
||||
}
|
||||
|
||||
.v-input__control {
|
||||
display: flex;
|
||||
grid-area: control;
|
||||
}
|
||||
|
||||
.v-input--hide-spin-buttons input::-webkit-outer-spin-button,
|
||||
.v-input--hide-spin-buttons input::-webkit-inner-spin-button {
|
||||
-webkit-appearance: none;
|
||||
margin: 0;
|
||||
}
|
||||
.v-input--hide-spin-buttons input[type=number] {
|
||||
-moz-appearance: textfield;
|
||||
}
|
||||
.v-input--plain-underlined .v-input__prepend,
|
||||
.v-input--plain-underlined .v-input__append {
|
||||
align-items: flex-start;
|
||||
}
|
||||
.v-input--density-default.v-input--plain-underlined .v-input__prepend, .v-input--density-default.v-input--plain-underlined .v-input__append {
|
||||
padding-top: calc(var(--v-input-padding-top) + 4px);
|
||||
}
|
||||
|
||||
.v-input--density-comfortable.v-input--plain-underlined .v-input__prepend, .v-input--density-comfortable.v-input--plain-underlined .v-input__append {
|
||||
padding-top: calc(var(--v-input-padding-top) + 2px);
|
||||
}
|
||||
|
||||
.v-input--density-compact.v-input--plain-underlined .v-input__prepend, .v-input--density-compact.v-input--plain-underlined .v-input__append {
|
||||
padding-top: calc(var(--v-input-padding-top) + 0px);
|
||||
}
|
||||
147
VApp/node_modules/vuetify/lib/components/VInput/VInput.mjs
generated
vendored
Normal file
147
VApp/node_modules/vuetify/lib/components/VInput/VInput.mjs
generated
vendored
Normal file
@@ -0,0 +1,147 @@
|
||||
import { resolveDirective as _resolveDirective, createVNode as _createVNode } from "vue";
|
||||
// Styles
|
||||
import "./VInput.css";
|
||||
|
||||
// Components
|
||||
import { useInputIcon } from "./InputIcon.mjs";
|
||||
import { VMessages } from "../VMessages/VMessages.mjs"; // Composables
|
||||
import { makeComponentProps } from "../../composables/component.mjs";
|
||||
import { makeDensityProps, useDensity } from "../../composables/density.mjs";
|
||||
import { IconValue } from "../../composables/icons.mjs";
|
||||
import { useRtl } from "../../composables/locale.mjs";
|
||||
import { makeValidationProps, useValidation } from "../../composables/validation.mjs"; // Utilities
|
||||
import { computed } from 'vue';
|
||||
import { EventProp, genericComponent, getUid, propsFactory, useRender } from "../../util/index.mjs"; // Types
|
||||
export const makeVInputProps = propsFactory({
|
||||
id: String,
|
||||
appendIcon: IconValue,
|
||||
centerAffix: {
|
||||
type: Boolean,
|
||||
default: true
|
||||
},
|
||||
prependIcon: IconValue,
|
||||
hideDetails: [Boolean, String],
|
||||
hideSpinButtons: Boolean,
|
||||
hint: String,
|
||||
persistentHint: Boolean,
|
||||
messages: {
|
||||
type: [Array, String],
|
||||
default: () => []
|
||||
},
|
||||
direction: {
|
||||
type: String,
|
||||
default: 'horizontal',
|
||||
validator: v => ['horizontal', 'vertical'].includes(v)
|
||||
},
|
||||
'onClick:prepend': EventProp(),
|
||||
'onClick:append': EventProp(),
|
||||
...makeComponentProps(),
|
||||
...makeDensityProps(),
|
||||
...makeValidationProps()
|
||||
}, 'VInput');
|
||||
export const VInput = genericComponent()({
|
||||
name: 'VInput',
|
||||
props: {
|
||||
...makeVInputProps()
|
||||
},
|
||||
emits: {
|
||||
'update:modelValue': value => true
|
||||
},
|
||||
setup(props, _ref) {
|
||||
let {
|
||||
attrs,
|
||||
slots,
|
||||
emit
|
||||
} = _ref;
|
||||
const {
|
||||
densityClasses
|
||||
} = useDensity(props);
|
||||
const {
|
||||
rtlClasses
|
||||
} = useRtl();
|
||||
const {
|
||||
InputIcon
|
||||
} = useInputIcon(props);
|
||||
const uid = getUid();
|
||||
const id = computed(() => props.id || `input-${uid}`);
|
||||
const messagesId = computed(() => `${id.value}-messages`);
|
||||
const {
|
||||
errorMessages,
|
||||
isDirty,
|
||||
isDisabled,
|
||||
isReadonly,
|
||||
isPristine,
|
||||
isValid,
|
||||
isValidating,
|
||||
reset,
|
||||
resetValidation,
|
||||
validate,
|
||||
validationClasses
|
||||
} = useValidation(props, 'v-input', id);
|
||||
const slotProps = computed(() => ({
|
||||
id,
|
||||
messagesId,
|
||||
isDirty,
|
||||
isDisabled,
|
||||
isReadonly,
|
||||
isPristine,
|
||||
isValid,
|
||||
isValidating,
|
||||
reset,
|
||||
resetValidation,
|
||||
validate
|
||||
}));
|
||||
const messages = computed(() => {
|
||||
if (props.errorMessages?.length || !isPristine.value && errorMessages.value.length) {
|
||||
return errorMessages.value;
|
||||
} else if (props.hint && (props.persistentHint || props.focused)) {
|
||||
return props.hint;
|
||||
} else {
|
||||
return props.messages;
|
||||
}
|
||||
});
|
||||
useRender(() => {
|
||||
const hasPrepend = !!(slots.prepend || props.prependIcon);
|
||||
const hasAppend = !!(slots.append || props.appendIcon);
|
||||
const hasMessages = messages.value.length > 0;
|
||||
const hasDetails = !props.hideDetails || props.hideDetails === 'auto' && (hasMessages || !!slots.details);
|
||||
return _createVNode("div", {
|
||||
"class": ['v-input', `v-input--${props.direction}`, {
|
||||
'v-input--center-affix': props.centerAffix,
|
||||
'v-input--hide-spin-buttons': props.hideSpinButtons
|
||||
}, densityClasses.value, rtlClasses.value, validationClasses.value, props.class],
|
||||
"style": props.style
|
||||
}, [hasPrepend && _createVNode("div", {
|
||||
"key": "prepend",
|
||||
"class": "v-input__prepend"
|
||||
}, [slots.prepend?.(slotProps.value), props.prependIcon && _createVNode(InputIcon, {
|
||||
"key": "prepend-icon",
|
||||
"name": "prepend"
|
||||
}, null)]), slots.default && _createVNode("div", {
|
||||
"class": "v-input__control"
|
||||
}, [slots.default?.(slotProps.value)]), hasAppend && _createVNode("div", {
|
||||
"key": "append",
|
||||
"class": "v-input__append"
|
||||
}, [props.appendIcon && _createVNode(InputIcon, {
|
||||
"key": "append-icon",
|
||||
"name": "append"
|
||||
}, null), slots.append?.(slotProps.value)]), hasDetails && _createVNode("div", {
|
||||
"class": "v-input__details"
|
||||
}, [_createVNode(VMessages, {
|
||||
"id": messagesId.value,
|
||||
"active": hasMessages,
|
||||
"messages": messages.value
|
||||
}, {
|
||||
message: slots.message
|
||||
}), slots.details?.(slotProps.value)])]);
|
||||
});
|
||||
return {
|
||||
reset,
|
||||
resetValidation,
|
||||
validate,
|
||||
isValid,
|
||||
errorMessages
|
||||
};
|
||||
}
|
||||
});
|
||||
//# sourceMappingURL=VInput.mjs.map
|
||||
1
VApp/node_modules/vuetify/lib/components/VInput/VInput.mjs.map
generated
vendored
Normal file
1
VApp/node_modules/vuetify/lib/components/VInput/VInput.mjs.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
115
VApp/node_modules/vuetify/lib/components/VInput/VInput.sass
generated
vendored
Normal file
115
VApp/node_modules/vuetify/lib/components/VInput/VInput.sass
generated
vendored
Normal file
@@ -0,0 +1,115 @@
|
||||
@use 'sass:math'
|
||||
@use 'sass:selector'
|
||||
@use '../../styles/tools'
|
||||
@use './variables' as *
|
||||
|
||||
.v-input
|
||||
display: grid
|
||||
flex: 1 1 auto
|
||||
font-size: $input-font-size
|
||||
font-weight: $input-font-weight
|
||||
line-height: $input-line-height
|
||||
|
||||
&--disabled
|
||||
pointer-events: none
|
||||
|
||||
@at-root
|
||||
@include tools.density('v-input', $input-density) using ($modifier)
|
||||
--v-input-control-height: #{$input-control-height + $modifier}
|
||||
--v-input-padding-top: #{16px + $modifier * .5}
|
||||
|
||||
.v-input--vertical
|
||||
grid-template-areas: "append" "control" "prepend"
|
||||
grid-template-rows: max-content auto max-content
|
||||
grid-template-columns: min-content
|
||||
|
||||
.v-input__prepend
|
||||
margin-block-start: $input-affix-margin-inside
|
||||
|
||||
.v-input__append
|
||||
margin-block-end: $input-affix-margin-inside
|
||||
|
||||
.v-input--horizontal
|
||||
grid-template-areas: "prepend control append" "a messages b"
|
||||
grid-template-columns: max-content minmax(0, 1fr) max-content
|
||||
grid-template-rows: auto auto
|
||||
|
||||
.v-input__prepend
|
||||
margin-inline-end: $input-affix-margin-inside
|
||||
|
||||
.v-input__append
|
||||
margin-inline-start: $input-affix-margin-inside
|
||||
|
||||
.v-input__details
|
||||
align-items: flex-end
|
||||
display: flex
|
||||
font-size: $input-details-font-size
|
||||
font-weight: $input-details-font-weight
|
||||
grid-area: messages
|
||||
letter-spacing: $input-details-letter-spacing
|
||||
line-height: $input-details-line-height
|
||||
min-height: $input-details-min-height
|
||||
padding-top: $input-details-padding-above
|
||||
overflow: hidden
|
||||
justify-content: space-between
|
||||
|
||||
.v-input__details,
|
||||
.v-input__prepend,
|
||||
.v-input__append
|
||||
> .v-icon
|
||||
opacity: var(--v-medium-emphasis-opacity)
|
||||
|
||||
.v-input--disabled &,
|
||||
.v-input--error &
|
||||
> .v-icon,
|
||||
.v-messages
|
||||
opacity: 1
|
||||
|
||||
.v-input--disabled &
|
||||
opacity: var(--v-disabled-opacity)
|
||||
|
||||
.v-input--error:not(.v-input--disabled) &
|
||||
> .v-icon,
|
||||
.v-messages
|
||||
color: rgb(var(--v-theme-error))
|
||||
|
||||
.v-input__prepend,
|
||||
.v-input__append
|
||||
display: flex
|
||||
align-items: flex-start
|
||||
padding-top: var(--v-input-padding-top)
|
||||
|
||||
.v-input--center-affix &
|
||||
align-items: center
|
||||
padding-top: 0
|
||||
|
||||
.v-input__prepend
|
||||
grid-area: prepend
|
||||
|
||||
.v-input__append
|
||||
grid-area: append
|
||||
|
||||
.v-input__control
|
||||
display: flex
|
||||
grid-area: control
|
||||
|
||||
.v-input
|
||||
&--hide-spin-buttons
|
||||
input::-webkit-outer-spin-button,
|
||||
input::-webkit-inner-spin-button
|
||||
-webkit-appearance: none
|
||||
margin: 0
|
||||
input[type=number]
|
||||
-moz-appearance: textfield
|
||||
|
||||
&--plain-underlined
|
||||
|
||||
.v-input__prepend,
|
||||
.v-input__append
|
||||
$this: &
|
||||
align-items: flex-start
|
||||
|
||||
@at-root
|
||||
@include tools.density('v-input', $input-density) using ($modifier)
|
||||
@at-root #{selector.append(&, $this)}
|
||||
padding-top: calc(var(--v-input-padding-top) + #{math.max(0px, 4px + $modifier * .25)})
|
||||
26
VApp/node_modules/vuetify/lib/components/VInput/_variables.scss
generated
vendored
Normal file
26
VApp/node_modules/vuetify/lib/components/VInput/_variables.scss
generated
vendored
Normal file
@@ -0,0 +1,26 @@
|
||||
@use 'sass:map';
|
||||
@use '../../styles/settings';
|
||||
@use '../../styles/tools';
|
||||
|
||||
// CONTROL
|
||||
$input-density: ('default': 0, 'comfortable': -2, 'compact': -4) !default;
|
||||
$input-control-height: 56px !default;
|
||||
$input-font-size: tools.map-deep-get(settings.$typography, 'body-1', 'size') !default;
|
||||
$input-font-weight: tools.map-deep-get(settings.$typography, 'body-1', 'weight') !default;
|
||||
$input-line-height: 1.5 !default;
|
||||
|
||||
// CHIPS
|
||||
$input-chips-margin-top: null !default;
|
||||
$input-chips-margin-bottom: null !default;
|
||||
|
||||
// DETAILS
|
||||
$input-details-font-size: .75rem !default;
|
||||
$input-details-font-weight: 400 !default;
|
||||
$input-details-letter-spacing: .0333333333em !default;
|
||||
$input-details-line-height: normal !default;
|
||||
$input-details-min-height: 22px !default;
|
||||
$input-details-padding-above: 6px !default;
|
||||
$input-details-transition: 150ms settings.$standard-easing !default;
|
||||
|
||||
// AFFIXES
|
||||
$input-affix-margin-inside: 16px !default;
|
||||
423
VApp/node_modules/vuetify/lib/components/VInput/index.d.mts
generated
vendored
Normal file
423
VApp/node_modules/vuetify/lib/components/VInput/index.d.mts
generated
vendored
Normal file
@@ -0,0 +1,423 @@
|
||||
import * as vue from 'vue';
|
||||
import { ComponentPropsOptions, ExtractPropTypes, VNodeChild, VNode, JSXComponent, PropType, ComputedRef, Ref } from 'vue';
|
||||
|
||||
type SlotsToProps<U extends RawSlots, T = MakeInternalSlots<U>> = {
|
||||
$children?: (VNodeChild | (T extends {
|
||||
default: infer V;
|
||||
} ? V : {}) | {
|
||||
[K in keyof T]?: T[K];
|
||||
});
|
||||
'v-slots'?: {
|
||||
[K in keyof T]?: T[K] | false;
|
||||
};
|
||||
} & {
|
||||
[K in keyof T as `v-slot:${K & string}`]?: T[K] | false;
|
||||
};
|
||||
type RawSlots = Record<string, unknown>;
|
||||
type Slot<T> = [T] extends [never] ? () => VNodeChild : (arg: T) => VNodeChild;
|
||||
type VueSlot<T> = [T] extends [never] ? () => VNode[] : (arg: T) => VNode[];
|
||||
type MakeInternalSlots<T extends RawSlots> = {
|
||||
[K in keyof T]: Slot<T[K]>;
|
||||
};
|
||||
type MakeSlots<T extends RawSlots> = {
|
||||
[K in keyof T]: VueSlot<T[K]>;
|
||||
};
|
||||
type GenericProps<Props, Slots extends Record<string, unknown>> = {
|
||||
$props: Props & SlotsToProps<Slots>;
|
||||
$slots: MakeSlots<Slots>;
|
||||
};
|
||||
interface FilterPropsOptions<PropsOptions extends Readonly<ComponentPropsOptions>, Props = ExtractPropTypes<PropsOptions>> {
|
||||
filterProps<T extends Partial<Props>, U extends Exclude<keyof Props, Exclude<keyof Props, keyof T>>>(props: T): Partial<Pick<T, U>>;
|
||||
}
|
||||
|
||||
type Density = null | 'default' | 'comfortable' | 'compact';
|
||||
|
||||
type ValidationResult = string | boolean;
|
||||
type ValidationRule = ValidationResult | PromiseLike<ValidationResult> | ((value: any) => ValidationResult) | ((value: any) => PromiseLike<ValidationResult>);
|
||||
|
||||
type IconValue = string | (string | [path: string, opacity: number])[] | JSXComponent;
|
||||
declare const IconValue: PropType<IconValue>;
|
||||
|
||||
type VMessageSlot = {
|
||||
message: string;
|
||||
};
|
||||
|
||||
interface VInputSlot {
|
||||
id: ComputedRef<string>;
|
||||
messagesId: ComputedRef<string>;
|
||||
isDirty: ComputedRef<boolean>;
|
||||
isDisabled: ComputedRef<boolean>;
|
||||
isReadonly: ComputedRef<boolean>;
|
||||
isPristine: Ref<boolean>;
|
||||
isValid: ComputedRef<boolean | null>;
|
||||
isValidating: Ref<boolean>;
|
||||
reset: () => void;
|
||||
resetValidation: () => void;
|
||||
validate: () => void;
|
||||
}
|
||||
type VInputSlots = {
|
||||
default: VInputSlot;
|
||||
prepend: VInputSlot;
|
||||
append: VInputSlot;
|
||||
details: VInputSlot;
|
||||
message: VMessageSlot;
|
||||
};
|
||||
declare const VInput: {
|
||||
new (...args: any[]): vue.CreateComponentPublicInstance<{
|
||||
error: boolean;
|
||||
direction: "horizontal" | "vertical";
|
||||
style: vue.StyleValue;
|
||||
disabled: boolean | null;
|
||||
readonly: boolean | null;
|
||||
messages: string | readonly string[];
|
||||
density: Density;
|
||||
focused: boolean;
|
||||
errorMessages: string | readonly string[] | null;
|
||||
maxErrors: string | number;
|
||||
rules: readonly ValidationRule[];
|
||||
centerAffix: boolean;
|
||||
hideSpinButtons: boolean;
|
||||
persistentHint: boolean;
|
||||
} & {
|
||||
id?: string | undefined;
|
||||
name?: string | undefined;
|
||||
label?: string | undefined;
|
||||
class?: any;
|
||||
prependIcon?: IconValue | undefined;
|
||||
appendIcon?: IconValue | undefined;
|
||||
'onClick:append'?: ((args_0: MouseEvent) => void) | undefined;
|
||||
'onClick:prepend'?: ((args_0: MouseEvent) => void) | undefined;
|
||||
'onUpdate:focused'?: ((args_0: boolean) => void) | undefined;
|
||||
validateOn?: "lazy" | ("input" | "blur" | "submit") | "input lazy" | "blur lazy" | "submit lazy" | "lazy input" | "lazy blur" | "lazy submit" | undefined;
|
||||
validationValue?: any;
|
||||
hint?: string | undefined;
|
||||
hideDetails?: boolean | "auto" | undefined;
|
||||
} & {}, {
|
||||
reset: () => void;
|
||||
resetValidation: () => void;
|
||||
validate: (silent?: boolean) => Promise<string[]>;
|
||||
isValid: ComputedRef<boolean | null>;
|
||||
errorMessages: ComputedRef<string[]>;
|
||||
}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Omit<{
|
||||
'update:modelValue': (value: any) => true;
|
||||
}, "$children" | "v-slot:default" | "v-slots" | "v-slot:append" | "v-slot:prepend" | "modelValue" | "update:modelValue" | "v-slot:message" | "v-slot:details">, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
|
||||
error: boolean;
|
||||
direction: "horizontal" | "vertical";
|
||||
style: vue.StyleValue;
|
||||
disabled: boolean | null;
|
||||
readonly: boolean | null;
|
||||
messages: string | readonly string[];
|
||||
density: Density;
|
||||
focused: boolean;
|
||||
errorMessages: string | readonly string[] | null;
|
||||
maxErrors: string | number;
|
||||
rules: readonly ValidationRule[];
|
||||
centerAffix: boolean;
|
||||
hideSpinButtons: boolean;
|
||||
persistentHint: boolean;
|
||||
} & {
|
||||
id?: string | undefined;
|
||||
name?: string | undefined;
|
||||
label?: string | undefined;
|
||||
class?: any;
|
||||
prependIcon?: IconValue | undefined;
|
||||
appendIcon?: IconValue | undefined;
|
||||
'onClick:append'?: ((args_0: MouseEvent) => void) | undefined;
|
||||
'onClick:prepend'?: ((args_0: MouseEvent) => void) | undefined;
|
||||
'onUpdate:focused'?: ((args_0: boolean) => void) | undefined;
|
||||
validateOn?: "lazy" | ("input" | "blur" | "submit") | "input lazy" | "blur lazy" | "submit lazy" | "lazy input" | "lazy blur" | "lazy submit" | undefined;
|
||||
validationValue?: any;
|
||||
hint?: string | undefined;
|
||||
hideDetails?: boolean | "auto" | undefined;
|
||||
} & {}, {
|
||||
error: boolean;
|
||||
direction: "horizontal" | "vertical";
|
||||
style: vue.StyleValue;
|
||||
disabled: boolean | null;
|
||||
readonly: boolean | null;
|
||||
messages: string | readonly string[];
|
||||
density: Density;
|
||||
focused: boolean;
|
||||
errorMessages: string | readonly string[] | null;
|
||||
maxErrors: string | number;
|
||||
rules: readonly ValidationRule[];
|
||||
centerAffix: boolean;
|
||||
hideSpinButtons: boolean;
|
||||
persistentHint: boolean;
|
||||
}, true, {}, vue.SlotsType<Partial<{
|
||||
default: (arg: VInputSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
||||
[key: string]: any;
|
||||
}>[];
|
||||
prepend: (arg: VInputSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
||||
[key: string]: any;
|
||||
}>[];
|
||||
append: (arg: VInputSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
||||
[key: string]: any;
|
||||
}>[];
|
||||
details: (arg: VInputSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
||||
[key: string]: any;
|
||||
}>[];
|
||||
message: (arg: VMessageSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
||||
[key: string]: any;
|
||||
}>[];
|
||||
}>>, {
|
||||
P: {};
|
||||
B: {};
|
||||
D: {};
|
||||
C: {};
|
||||
M: {};
|
||||
Defaults: {};
|
||||
}, {
|
||||
error: boolean;
|
||||
direction: "horizontal" | "vertical";
|
||||
style: vue.StyleValue;
|
||||
disabled: boolean | null;
|
||||
readonly: boolean | null;
|
||||
messages: string | readonly string[];
|
||||
density: Density;
|
||||
focused: boolean;
|
||||
errorMessages: string | readonly string[] | null;
|
||||
maxErrors: string | number;
|
||||
rules: readonly ValidationRule[];
|
||||
centerAffix: boolean;
|
||||
hideSpinButtons: boolean;
|
||||
persistentHint: boolean;
|
||||
} & {
|
||||
id?: string | undefined;
|
||||
name?: string | undefined;
|
||||
label?: string | undefined;
|
||||
class?: any;
|
||||
prependIcon?: IconValue | undefined;
|
||||
appendIcon?: IconValue | undefined;
|
||||
'onClick:append'?: ((args_0: MouseEvent) => void) | undefined;
|
||||
'onClick:prepend'?: ((args_0: MouseEvent) => void) | undefined;
|
||||
'onUpdate:focused'?: ((args_0: boolean) => void) | undefined;
|
||||
validateOn?: "lazy" | ("input" | "blur" | "submit") | "input lazy" | "blur lazy" | "submit lazy" | "lazy input" | "lazy blur" | "lazy submit" | undefined;
|
||||
validationValue?: any;
|
||||
hint?: string | undefined;
|
||||
hideDetails?: boolean | "auto" | undefined;
|
||||
} & {}, {
|
||||
reset: () => void;
|
||||
resetValidation: () => void;
|
||||
validate: (silent?: boolean) => Promise<string[]>;
|
||||
isValid: ComputedRef<boolean | null>;
|
||||
errorMessages: ComputedRef<string[]>;
|
||||
}, {}, {}, {}, {
|
||||
error: boolean;
|
||||
direction: "horizontal" | "vertical";
|
||||
style: vue.StyleValue;
|
||||
disabled: boolean | null;
|
||||
readonly: boolean | null;
|
||||
messages: string | readonly string[];
|
||||
density: Density;
|
||||
focused: boolean;
|
||||
errorMessages: string | readonly string[] | null;
|
||||
maxErrors: string | number;
|
||||
rules: readonly ValidationRule[];
|
||||
centerAffix: boolean;
|
||||
hideSpinButtons: boolean;
|
||||
persistentHint: boolean;
|
||||
}>;
|
||||
__isFragment?: undefined;
|
||||
__isTeleport?: undefined;
|
||||
__isSuspense?: undefined;
|
||||
} & vue.ComponentOptionsBase<{
|
||||
error: boolean;
|
||||
direction: "horizontal" | "vertical";
|
||||
style: vue.StyleValue;
|
||||
disabled: boolean | null;
|
||||
readonly: boolean | null;
|
||||
messages: string | readonly string[];
|
||||
density: Density;
|
||||
focused: boolean;
|
||||
errorMessages: string | readonly string[] | null;
|
||||
maxErrors: string | number;
|
||||
rules: readonly ValidationRule[];
|
||||
centerAffix: boolean;
|
||||
hideSpinButtons: boolean;
|
||||
persistentHint: boolean;
|
||||
} & {
|
||||
id?: string | undefined;
|
||||
name?: string | undefined;
|
||||
label?: string | undefined;
|
||||
class?: any;
|
||||
prependIcon?: IconValue | undefined;
|
||||
appendIcon?: IconValue | undefined;
|
||||
'onClick:append'?: ((args_0: MouseEvent) => void) | undefined;
|
||||
'onClick:prepend'?: ((args_0: MouseEvent) => void) | undefined;
|
||||
'onUpdate:focused'?: ((args_0: boolean) => void) | undefined;
|
||||
validateOn?: "lazy" | ("input" | "blur" | "submit") | "input lazy" | "blur lazy" | "submit lazy" | "lazy input" | "lazy blur" | "lazy submit" | undefined;
|
||||
validationValue?: any;
|
||||
hint?: string | undefined;
|
||||
hideDetails?: boolean | "auto" | undefined;
|
||||
} & {}, {
|
||||
reset: () => void;
|
||||
resetValidation: () => void;
|
||||
validate: (silent?: boolean) => Promise<string[]>;
|
||||
isValid: ComputedRef<boolean | null>;
|
||||
errorMessages: ComputedRef<string[]>;
|
||||
}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Omit<{
|
||||
'update:modelValue': (value: any) => true;
|
||||
}, "$children" | "v-slot:default" | "v-slots" | "v-slot:append" | "v-slot:prepend" | "modelValue" | "update:modelValue" | "v-slot:message" | "v-slot:details">, string, {
|
||||
error: boolean;
|
||||
direction: "horizontal" | "vertical";
|
||||
style: vue.StyleValue;
|
||||
disabled: boolean | null;
|
||||
readonly: boolean | null;
|
||||
messages: string | readonly string[];
|
||||
density: Density;
|
||||
focused: boolean;
|
||||
errorMessages: string | readonly string[] | null;
|
||||
maxErrors: string | number;
|
||||
rules: readonly ValidationRule[];
|
||||
centerAffix: boolean;
|
||||
hideSpinButtons: boolean;
|
||||
persistentHint: boolean;
|
||||
}, {}, string, vue.SlotsType<Partial<{
|
||||
default: (arg: VInputSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
||||
[key: string]: any;
|
||||
}>[];
|
||||
prepend: (arg: VInputSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
||||
[key: string]: any;
|
||||
}>[];
|
||||
append: (arg: VInputSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
||||
[key: string]: any;
|
||||
}>[];
|
||||
details: (arg: VInputSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
||||
[key: string]: any;
|
||||
}>[];
|
||||
message: (arg: VMessageSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
||||
[key: string]: any;
|
||||
}>[];
|
||||
}>>> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & (new <T>(props: {
|
||||
modelValue?: T | null | undefined;
|
||||
'onUpdate:modelValue'?: ((value: T | null) => void) | undefined;
|
||||
}, slots: VInputSlots) => GenericProps<{
|
||||
modelValue?: T | null | undefined;
|
||||
'onUpdate:modelValue'?: ((value: T | null) => void) | undefined;
|
||||
}, VInputSlots>) & FilterPropsOptions<{
|
||||
focused: BooleanConstructor;
|
||||
'onUpdate:focused': PropType<(args_0: boolean) => void>;
|
||||
disabled: {
|
||||
type: PropType<boolean | null>;
|
||||
default: null;
|
||||
};
|
||||
error: BooleanConstructor;
|
||||
errorMessages: {
|
||||
type: PropType<string | readonly string[] | null>;
|
||||
default: () => never[];
|
||||
};
|
||||
maxErrors: {
|
||||
type: (StringConstructor | NumberConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
name: StringConstructor;
|
||||
label: StringConstructor;
|
||||
readonly: {
|
||||
type: PropType<boolean | null>;
|
||||
default: null;
|
||||
};
|
||||
rules: {
|
||||
type: PropType<readonly ValidationRule[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
modelValue: null;
|
||||
validateOn: PropType<"lazy" | ("input" | "blur" | "submit") | "input lazy" | "blur lazy" | "submit lazy" | "lazy input" | "lazy blur" | "lazy submit" | undefined>;
|
||||
validationValue: null;
|
||||
density: {
|
||||
type: PropType<Density>;
|
||||
default: string;
|
||||
validator: (v: any) => boolean;
|
||||
};
|
||||
class: PropType<any>;
|
||||
style: {
|
||||
type: PropType<vue.StyleValue>;
|
||||
default: null;
|
||||
};
|
||||
id: StringConstructor;
|
||||
appendIcon: PropType<IconValue>;
|
||||
centerAffix: {
|
||||
type: BooleanConstructor;
|
||||
default: boolean;
|
||||
};
|
||||
prependIcon: PropType<IconValue>;
|
||||
hideDetails: PropType<boolean | "auto">;
|
||||
hideSpinButtons: BooleanConstructor;
|
||||
hint: StringConstructor;
|
||||
persistentHint: BooleanConstructor;
|
||||
messages: {
|
||||
type: PropType<string | readonly string[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
direction: {
|
||||
type: PropType<"horizontal" | "vertical">;
|
||||
default: string;
|
||||
validator: (v: any) => boolean;
|
||||
};
|
||||
'onClick:prepend': PropType<(args_0: MouseEvent) => void>;
|
||||
'onClick:append': PropType<(args_0: MouseEvent) => void>;
|
||||
}, vue.ExtractPropTypes<{
|
||||
focused: BooleanConstructor;
|
||||
'onUpdate:focused': PropType<(args_0: boolean) => void>;
|
||||
disabled: {
|
||||
type: PropType<boolean | null>;
|
||||
default: null;
|
||||
};
|
||||
error: BooleanConstructor;
|
||||
errorMessages: {
|
||||
type: PropType<string | readonly string[] | null>;
|
||||
default: () => never[];
|
||||
};
|
||||
maxErrors: {
|
||||
type: (StringConstructor | NumberConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
name: StringConstructor;
|
||||
label: StringConstructor;
|
||||
readonly: {
|
||||
type: PropType<boolean | null>;
|
||||
default: null;
|
||||
};
|
||||
rules: {
|
||||
type: PropType<readonly ValidationRule[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
modelValue: null;
|
||||
validateOn: PropType<"lazy" | ("input" | "blur" | "submit") | "input lazy" | "blur lazy" | "submit lazy" | "lazy input" | "lazy blur" | "lazy submit" | undefined>;
|
||||
validationValue: null;
|
||||
density: {
|
||||
type: PropType<Density>;
|
||||
default: string;
|
||||
validator: (v: any) => boolean;
|
||||
};
|
||||
class: PropType<any>;
|
||||
style: {
|
||||
type: PropType<vue.StyleValue>;
|
||||
default: null;
|
||||
};
|
||||
id: StringConstructor;
|
||||
appendIcon: PropType<IconValue>;
|
||||
centerAffix: {
|
||||
type: BooleanConstructor;
|
||||
default: boolean;
|
||||
};
|
||||
prependIcon: PropType<IconValue>;
|
||||
hideDetails: PropType<boolean | "auto">;
|
||||
hideSpinButtons: BooleanConstructor;
|
||||
hint: StringConstructor;
|
||||
persistentHint: BooleanConstructor;
|
||||
messages: {
|
||||
type: PropType<string | readonly string[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
direction: {
|
||||
type: PropType<"horizontal" | "vertical">;
|
||||
default: string;
|
||||
validator: (v: any) => boolean;
|
||||
};
|
||||
'onClick:prepend': PropType<(args_0: MouseEvent) => void>;
|
||||
'onClick:append': PropType<(args_0: MouseEvent) => void>;
|
||||
}>>;
|
||||
type VInput = InstanceType<typeof VInput>;
|
||||
|
||||
export { VInput };
|
||||
2
VApp/node_modules/vuetify/lib/components/VInput/index.mjs
generated
vendored
Normal file
2
VApp/node_modules/vuetify/lib/components/VInput/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
export { VInput } from "./VInput.mjs";
|
||||
//# sourceMappingURL=index.mjs.map
|
||||
1
VApp/node_modules/vuetify/lib/components/VInput/index.mjs.map
generated
vendored
Normal file
1
VApp/node_modules/vuetify/lib/components/VInput/index.mjs.map
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"index.mjs","names":["VInput"],"sources":["../../../src/components/VInput/index.ts"],"sourcesContent":["export { VInput } from './VInput'\n"],"mappings":"SAASA,MAAM"}
|
||||
Reference in New Issue
Block a user