@vuetify/nightly 3.0.0-beta.10 → 3.0.0-beta.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +13 -2
- package/dist/json/attributes.json +37 -29
- package/dist/json/importMap.json +46 -46
- package/dist/json/tags.json +10 -8
- package/dist/json/web-types.json +101 -87
- package/dist/vuetify.css +545 -441
- package/dist/vuetify.d.ts +12095 -10059
- package/dist/vuetify.esm.js +401 -266
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +371 -236
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +3 -3
- package/dist/vuetify.min.js +496 -490
- package/dist/vuetify.min.js.map +1 -1
- package/lib/blueprints/index.d.ts +171 -0
- package/lib/blueprints/md1.d.ts +167 -0
- package/lib/blueprints/md2.d.ts +167 -0
- package/lib/blueprints/md3.d.ts +167 -0
- package/lib/components/VAlert/index.d.ts +185 -0
- package/lib/components/VApp/index.d.ts +83 -0
- package/lib/components/VAppBar/VAppBar.css +3 -0
- package/lib/components/VAppBar/VAppBar.sass +3 -0
- package/lib/components/VAppBar/index.d.ts +156 -0
- package/lib/components/VAutocomplete/VAutocomplete.mjs +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/index.d.ts +1569 -0
- package/lib/components/VAvatar/VAvatar.css +44 -2
- package/lib/components/VAvatar/VAvatar.mjs +16 -12
- package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
- package/lib/components/VAvatar/VAvatar.sass +5 -1
- package/lib/components/VAvatar/_variables.scss +9 -4
- package/lib/components/VAvatar/index.d.ts +80 -0
- package/lib/components/VBadge/index.d.ts +123 -0
- package/lib/components/VBanner/index.d.ts +122 -0
- package/lib/components/VBottomNavigation/index.d.ts +143 -0
- package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +2 -2
- package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/index.d.ts +301 -0
- package/lib/components/VBtn/VBtn.css +8 -3
- package/lib/components/VBtn/VBtn.mjs +16 -6
- package/lib/components/VBtn/VBtn.mjs.map +1 -1
- package/lib/components/VBtn/index.d.ts +210 -0
- package/lib/components/VBtnGroup/index.d.ts +65 -0
- package/lib/components/VBtnToggle/VBtnToggle.mjs +1 -3
- package/lib/components/VBtnToggle/VBtnToggle.mjs.map +1 -1
- package/lib/components/VBtnToggle/index.d.ts +175 -0
- package/lib/components/VCard/VCard.css +8 -3
- package/lib/components/VCard/index.d.ts +230 -0
- package/lib/components/VCarousel/VCarousel.mjs +3 -3
- package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
- package/lib/components/VCarousel/index.d.ts +80 -0
- package/lib/components/VCheckbox/index.d.ts +291 -0
- package/lib/components/VChip/index.d.ts +195 -0
- package/lib/components/VChipGroup/index.d.ts +89 -0
- package/lib/components/VCode/index.d.ts +19 -0
- package/lib/components/VColorPicker/index.d.ts +116 -0
- package/lib/components/VCombobox/VCombobox.mjs +1 -1
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VCombobox/index.d.ts +1590 -0
- package/lib/components/VCounter/index.d.ts +223 -0
- package/lib/components/VDefaultsProvider/index.d.ts +26 -0
- package/lib/components/VDialog/VDialog.css +2 -0
- package/lib/components/VDialog/VDialog.mjs +17 -12
- package/lib/components/VDialog/VDialog.mjs.map +1 -1
- package/lib/components/VDialog/VDialog.sass +2 -0
- package/lib/components/VDialog/index.d.ts +859 -0
- package/lib/components/VDivider/index.d.ts +22 -0
- package/lib/components/VExpansionPanel/VExpansionPanel.css +8 -3
- package/lib/components/VExpansionPanel/index.d.ts +206 -0
- package/lib/components/VField/VField.css +27 -24
- package/lib/components/VField/VField.mjs +1 -1
- package/lib/components/VField/VField.mjs.map +1 -1
- package/lib/components/VField/VField.sass +23 -21
- package/lib/components/VField/index.d.ts +332 -0
- package/lib/components/VFileInput/VFileInput.mjs +3 -3
- package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
- package/lib/components/VFileInput/index.d.ts +236 -0
- package/lib/components/VFooter/VFooter.css +7 -0
- package/lib/components/VFooter/VFooter.sass +1 -1
- package/lib/components/VFooter/_variables.scss +11 -0
- package/lib/components/VFooter/index.d.ts +76 -0
- package/lib/components/VForm/index.d.ts +72 -0
- package/lib/components/VGrid/index.d.ts +154 -0
- package/lib/components/VHover/index.d.ts +30 -0
- package/lib/components/VIcon/index.d.ts +124 -0
- package/lib/components/VImg/VImg.mjs +29 -27
- package/lib/components/VImg/VImg.mjs.map +1 -1
- package/lib/components/VImg/index.d.ts +89 -0
- package/lib/components/VInput/VInput.mjs +4 -4
- package/lib/components/VInput/VInput.mjs.map +1 -1
- package/lib/components/VInput/index.d.ts +325 -0
- package/lib/components/VItemGroup/index.d.ts +210 -0
- package/lib/components/VKbd/index.d.ts +19 -0
- package/lib/components/VLabel/VLabel.css +4 -1
- package/lib/components/VLabel/VLabel.mjs +4 -1
- package/lib/components/VLabel/VLabel.mjs.map +1 -1
- package/lib/components/VLabel/VLabel.sass +3 -1
- package/lib/components/VLabel/index.d.ts +16 -0
- package/lib/components/VLayout/index.d.ts +75 -0
- package/lib/components/VLazy/index.d.ts +85 -0
- package/lib/components/VList/VListItem.css +8 -3
- package/lib/components/VList/VListItem.mjs +4 -4
- package/lib/components/VList/VListItem.mjs.map +1 -1
- package/lib/components/VList/index.d.ts +1250 -0
- package/lib/components/VLocaleProvider/index.d.ts +23 -0
- package/lib/components/VMain/index.d.ts +26 -0
- package/lib/components/VMenu/VMenu.mjs +16 -3
- package/lib/components/VMenu/VMenu.mjs.map +1 -1
- package/lib/components/VMenu/index.d.ts +817 -0
- package/lib/components/VMessages/index.d.ts +234 -0
- package/lib/components/VNavigationDrawer/index.d.ts +148 -0
- package/lib/components/VNoSsr/index.d.ts +7 -0
- package/lib/components/VOverlay/VOverlay.mjs +4 -3
- package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
- package/lib/components/VOverlay/index.d.ts +579 -0
- package/lib/components/VOverlay/useActivator.mjs +27 -1
- package/lib/components/VOverlay/useActivator.mjs.map +1 -1
- package/lib/components/VPagination/VPagination.mjs +6 -3
- package/lib/components/VPagination/VPagination.mjs.map +1 -1
- package/lib/components/VPagination/index.d.ts +247 -0
- package/lib/components/VParallax/VParallax.mjs +24 -10
- package/lib/components/VParallax/VParallax.mjs.map +1 -1
- package/lib/components/VParallax/index.d.ts +18 -0
- package/lib/components/VProgressCircular/index.d.ts +68 -0
- package/lib/components/VProgressLinear/index.d.ts +101 -0
- package/lib/components/VRadio/index.d.ts +103 -0
- package/lib/components/VRadioGroup/VRadioGroup.css +2 -3
- package/lib/components/VRadioGroup/VRadioGroup.mjs +2 -1
- package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
- package/lib/components/VRadioGroup/VRadioGroup.sass +2 -2
- package/lib/components/VRadioGroup/_variables.scss +0 -1
- package/lib/components/VRadioGroup/index.d.ts +186 -0
- package/lib/components/VRangeSlider/VRangeSlider.mjs +12 -2
- package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
- package/lib/components/VRangeSlider/index.d.ts +242 -0
- package/lib/components/VRating/index.d.ts +356 -0
- package/lib/components/VResponsive/index.d.ts +23 -0
- package/lib/components/VSelect/VSelect.mjs +1 -1
- package/lib/components/VSelect/VSelect.mjs.map +1 -1
- package/lib/components/VSelect/index.d.ts +1521 -0
- package/lib/components/VSelectionControl/VSelectionControl.mjs +2 -1
- package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
- package/lib/components/VSelectionControl/index.d.ts +275 -0
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.css +5 -0
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +3 -1
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.sass +5 -0
- package/lib/components/VSelectionControlGroup/index.d.ts +47 -0
- package/lib/components/VSheet/index.d.ts +68 -0
- package/lib/components/VSlideGroup/index.d.ts +151 -0
- package/lib/components/VSlider/VSlider.css +7 -2
- package/lib/components/VSlider/VSlider.mjs +14 -4
- package/lib/components/VSlider/VSlider.mjs.map +1 -1
- package/lib/components/VSlider/VSlider.sass +6 -2
- package/lib/components/VSlider/VSliderTrack.css +20 -20
- package/lib/components/VSlider/VSliderTrack.mjs +7 -3
- package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
- package/lib/components/VSlider/VSliderTrack.sass +14 -14
- package/lib/components/VSlider/_variables.scss +2 -2
- package/lib/components/VSlider/index.d.ts +239 -0
- package/lib/components/VSlider/slider.mjs +2 -2
- package/lib/components/VSlider/slider.mjs.map +1 -1
- package/lib/components/VSnackbar/VSnackbar.mjs +3 -2
- package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
- package/lib/components/VSnackbar/index.d.ts +892 -0
- package/lib/components/VSwitch/index.d.ts +175 -0
- package/lib/components/VSystemBar/index.d.ts +61 -0
- package/lib/components/VTable/index.d.ts +39 -0
- package/lib/components/VTabs/VTab.mjs +1 -0
- package/lib/components/VTabs/VTab.mjs.map +1 -1
- package/lib/components/VTabs/index.d.ts +178 -0
- package/lib/components/VTextField/VTextField.css +2 -3
- package/lib/components/VTextField/VTextField.sass +2 -4
- package/lib/components/VTextField/index.d.ts +582 -0
- package/lib/components/VTextarea/VTextarea.css +5 -3
- package/lib/components/VTextarea/VTextarea.mjs +2 -1
- package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
- package/lib/components/VTextarea/VTextarea.sass +5 -4
- package/lib/components/VTextarea/index.d.ts +218 -0
- package/lib/components/VThemeProvider/index.d.ts +24 -0
- package/lib/components/VTimeline/VTimeline.css +21 -6
- package/lib/components/VTimeline/VTimeline.mjs +6 -1
- package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
- package/lib/components/VTimeline/VTimeline.sass +16 -2
- package/lib/components/VTimeline/_variables.scss +4 -3
- package/lib/components/VTimeline/index.d.ts +154 -0
- package/lib/components/VToolbar/VToolbar.css +0 -1
- package/lib/components/VToolbar/VToolbar.sass +0 -1
- package/lib/components/VToolbar/index.d.ts +414 -0
- package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
- package/lib/components/VTooltip/index.d.ts +799 -0
- package/lib/components/VValidation/index.d.ts +61 -0
- package/lib/components/VWindow/index.d.ts +428 -0
- package/lib/components/index.d.ts +12037 -10009
- package/lib/components/transitions/index.d.ts +454 -0
- package/lib/composables/display.mjs +3 -3
- package/lib/composables/display.mjs.map +1 -1
- package/lib/composables/items.mjs.map +1 -1
- package/lib/composables/locale.mjs +10 -3
- package/lib/composables/locale.mjs.map +1 -1
- package/lib/composables/proxiedModel.mjs +28 -10
- package/lib/composables/proxiedModel.mjs.map +1 -1
- package/lib/composables/router.mjs +10 -2
- package/lib/composables/router.mjs.map +1 -1
- package/lib/composables/selectLink.mjs +4 -4
- package/lib/composables/selectLink.mjs.map +1 -1
- package/lib/composables/theme.mjs +37 -33
- package/lib/composables/theme.mjs.map +1 -1
- package/lib/composables/validation.mjs +1 -1
- package/lib/composables/validation.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/framework.mjs +46 -51
- package/lib/framework.mjs.map +1 -1
- package/lib/index.d.ts +31 -22
- package/lib/locale/adapters/vue-i18n.d.ts +35 -0
- package/lib/locale/adapters/vue-intl.d.ts +42 -0
- package/lib/styles/main.css +73 -73
- package/lib/styles/settings/_colors.scss +84 -84
- package/lib/styles/tools/_states.sass +8 -3
- package/lib/util/getCurrentInstance.mjs +2 -3
- package/lib/util/getCurrentInstance.mjs.map +1 -1
- package/lib/util/helpers.mjs +6 -11
- package/lib/util/helpers.mjs.map +1 -1
- package/package.json +4 -2
|
@@ -198,7 +198,8 @@ export const VSelectionControl = genericComponent()({
|
|
|
198
198
|
id: id.value
|
|
199
199
|
}
|
|
200
200
|
})]), [[_resolveDirective("ripple"), props.ripple && [!props.disabled && !props.readonly, null, ['center', 'circle']]]])]), label && _createVNode(VLabel, {
|
|
201
|
-
"for": id.value
|
|
201
|
+
"for": id.value,
|
|
202
|
+
"clickable": true
|
|
202
203
|
}, {
|
|
203
204
|
default: () => [label]
|
|
204
205
|
})]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VSelectionControl.mjs","names":["VIcon","VLabel","VSelectionControlGroupSymbol","Ripple","IconValue","makeDensityProps","useDensity","makeThemeProps","useProxiedModel","useTextColor","computed","inject","ref","deepEqual","filterInputAttrs","genericComponent","getUid","pick","propsFactory","SUPPORTS_FOCUS_VISIBLE","useRender","wrapInArray","makeSelectionControlProps","color","String","disabled","Boolean","error","id","inline","label","falseIcon","trueIcon","ripple","type","default","multiple","name","readonly","trueValue","falseValue","modelValue","value","valueComparator","Function","useSelectionControl","props","group","undefined","densityClasses","isMultiple","Array","isArray","model","get","val","some","v","set","currentValue","newVal","filter","item","textColorClasses","textColorStyles","icon","VSelectionControl","directives","inheritAttrs","emits","setup","attrs","slots","uid","isFocused","isFocusVisible","input","onFocus","e","target","matches","onBlur","onInput","checked","for","rootAttrs","inputAttrs","filterControlProps","Object","keys"],"sources":["../../../src/components/VSelectionControl/VSelectionControl.tsx"],"sourcesContent":["// Styles\nimport './VSelectionControl.sass'\n\n// Components\nimport { VIcon } from '@/components/VIcon'\nimport { VLabel } from '@/components/VLabel'\nimport { VSelectionControlGroupSymbol } from '@/components/VSelectionControlGroup/VSelectionControlGroup'\n\n// Directives\nimport { Ripple } from '@/directives/ripple'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeThemeProps } from '@/composables/theme'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useTextColor } from '@/composables/color'\n\n// Utilities\nimport { computed, inject, ref } from 'vue'\nimport {\n deepEqual,\n filterInputAttrs,\n genericComponent,\n getUid,\n pick,\n propsFactory,\n SUPPORTS_FOCUS_VISIBLE,\n useRender,\n wrapInArray,\n} from '@/util'\n\n// Types\nimport type { ComputedRef, ExtractPropTypes, PropType, Ref, WritableComputedRef } from 'vue'\nimport type { MakeSlots } from '@/util'\n\nexport type SelectionControlSlot = {\n model: WritableComputedRef<any>\n isReadonly: ComputedRef<boolean>\n isDisabled: ComputedRef<boolean>\n textColorClasses: Ref<string[]>\n props: {\n onBlur: (e: Event) => void\n onFocus: (e: FocusEvent) => void\n id: string\n }\n}\n\nexport const makeSelectionControlProps = propsFactory({\n color: String,\n disabled: Boolean,\n error: Boolean,\n id: String,\n inline: Boolean,\n label: String,\n falseIcon: IconValue,\n trueIcon: IconValue,\n ripple: {\n type: Boolean,\n default: true,\n },\n multiple: {\n type: Boolean as PropType<boolean | null>,\n default: null,\n },\n name: String,\n readonly: Boolean,\n trueValue: null,\n falseValue: null,\n modelValue: null,\n type: String,\n value: null,\n valueComparator: {\n type: Function as PropType<typeof deepEqual>,\n default: deepEqual,\n },\n\n ...makeThemeProps(),\n ...makeDensityProps(),\n})\n\nexport function useSelectionControl (\n props: ExtractPropTypes<ReturnType<typeof makeSelectionControlProps>> & {\n 'onUpdate:modelValue': ((val: any) => void) | undefined\n }\n) {\n const group = inject(VSelectionControlGroupSymbol, undefined)\n const { densityClasses } = useDensity(props)\n const modelValue = useProxiedModel(props, 'modelValue')\n const trueValue = computed(() => (\n props.trueValue !== undefined ? props.trueValue\n : props.value !== undefined ? props.value\n : true\n ))\n const falseValue = computed(() => props.falseValue !== undefined ? props.falseValue : false)\n const isMultiple = computed(() => (\n group?.multiple.value ||\n !!props.multiple ||\n (props.multiple == null && Array.isArray(modelValue.value))\n ))\n const model = computed({\n get () {\n const val = group ? group.modelValue.value : modelValue.value\n\n return isMultiple.value\n ? val.some((v: any) => props.valueComparator(v, trueValue.value))\n : props.valueComparator(val, trueValue.value)\n },\n set (val: boolean) {\n if (props.readonly) return\n\n const currentValue = val ? trueValue.value : falseValue.value\n\n let newVal = currentValue\n\n if (isMultiple.value) {\n newVal = val\n ? [...wrapInArray(modelValue.value), currentValue]\n : wrapInArray(modelValue.value).filter((item: any) => !props.valueComparator(item, trueValue.value))\n }\n\n if (group) {\n group.modelValue.value = newVal\n } else {\n modelValue.value = newVal\n }\n },\n })\n const { textColorClasses, textColorStyles } = useTextColor(computed(() => {\n return (\n model.value &&\n !props.error &&\n !props.disabled\n ) ? props.color : undefined\n }))\n const icon = computed(() => {\n return model.value\n ? group?.trueIcon.value ?? props.trueIcon\n : group?.falseIcon.value ?? props.falseIcon\n })\n\n return {\n group,\n densityClasses,\n trueValue,\n falseValue,\n model,\n textColorClasses,\n textColorStyles,\n icon,\n }\n}\n\nexport const VSelectionControl = genericComponent<new <T>() => {\n $props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (val: T) => any\n }\n $slots: MakeSlots<{\n default: []\n input: [SelectionControlSlot]\n }>\n}>()({\n name: 'VSelectionControl',\n\n directives: { Ripple },\n\n inheritAttrs: false,\n\n props: makeSelectionControlProps(),\n\n emits: {\n 'update:modelValue': (val: any) => true,\n },\n\n setup (props, { attrs, slots }) {\n const {\n densityClasses,\n group,\n icon,\n model,\n textColorClasses,\n textColorStyles,\n trueValue,\n } = useSelectionControl(props)\n const uid = getUid()\n const id = computed(() => props.id || `input-${uid}`)\n const isFocused = ref(false)\n const isFocusVisible = ref(false)\n const input = ref<HTMLInputElement>()\n\n function onFocus (e: FocusEvent) {\n isFocused.value = true\n if (\n !SUPPORTS_FOCUS_VISIBLE ||\n (SUPPORTS_FOCUS_VISIBLE && (e.target as HTMLElement).matches(':focus-visible'))\n ) {\n isFocusVisible.value = true\n }\n }\n\n function onBlur () {\n isFocused.value = false\n isFocusVisible.value = false\n }\n\n function onInput (e: Event) {\n model.value = (e.target as HTMLInputElement).checked\n }\n\n useRender(() => {\n const label = slots.label\n ? slots.label({\n label: props.label,\n props: { for: id.value },\n })\n : props.label\n const type = group?.type.value ?? props.type\n const [rootAttrs, inputAttrs] = filterInputAttrs(attrs)\n\n return (\n <div\n class={[\n 'v-selection-control',\n {\n 'v-selection-control--dirty': model.value,\n 'v-selection-control--disabled': props.disabled,\n 'v-selection-control--error': props.error,\n 'v-selection-control--focused': isFocused.value,\n 'v-selection-control--focus-visible': isFocusVisible.value,\n 'v-selection-control--inline': group?.inline.value || props.inline,\n },\n densityClasses.value,\n ]}\n { ...rootAttrs }\n >\n <div\n class={[\n 'v-selection-control__wrapper',\n textColorClasses.value,\n ]}\n style={ textColorStyles.value }\n >\n { slots.default?.() }\n\n <div\n class={[\n 'v-selection-control__input',\n ]}\n v-ripple={ props.ripple && [\n !props.disabled && !props.readonly,\n null,\n ['center', 'circle'],\n ]}\n >\n { icon.value && <VIcon key=\"icon\" icon={ icon.value } /> }\n\n <input\n ref={ input }\n checked={ model.value }\n disabled={ props.disabled }\n id={ id.value }\n onBlur={ onBlur }\n onFocus={ onFocus }\n onInput={ onInput }\n aria-readonly={ props.readonly }\n type={ type }\n value={ trueValue.value }\n name={ group?.name.value ?? props.name }\n aria-checked={ type === 'checkbox' ? model.value : undefined }\n { ...inputAttrs }\n />\n\n { slots.input?.({\n model,\n textColorClasses,\n props: {\n onFocus,\n onBlur,\n id: id.value,\n },\n }) }\n </div>\n </div>\n\n { label && (\n <VLabel for={ id.value }>\n { label }\n </VLabel>\n ) }\n </div>\n )\n })\n\n return {\n isFocused,\n input,\n }\n },\n})\n\nexport type VSelectionControl = InstanceType<typeof VSelectionControl>\n\nexport function filterControlProps (props: ExtractPropTypes<ReturnType<typeof makeSelectionControlProps>>) {\n return pick(props, Object.keys(VSelectionControl.props) as any)\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"VSelectionControl.mjs","names":["VIcon","VLabel","VSelectionControlGroupSymbol","Ripple","IconValue","makeDensityProps","useDensity","makeThemeProps","useProxiedModel","useTextColor","computed","inject","ref","deepEqual","filterInputAttrs","genericComponent","getUid","pick","propsFactory","SUPPORTS_FOCUS_VISIBLE","useRender","wrapInArray","makeSelectionControlProps","color","String","disabled","Boolean","error","id","inline","label","falseIcon","trueIcon","ripple","type","default","multiple","name","readonly","trueValue","falseValue","modelValue","value","valueComparator","Function","useSelectionControl","props","group","undefined","densityClasses","isMultiple","Array","isArray","model","get","val","some","v","set","currentValue","newVal","filter","item","textColorClasses","textColorStyles","icon","VSelectionControl","directives","inheritAttrs","emits","setup","attrs","slots","uid","isFocused","isFocusVisible","input","onFocus","e","target","matches","onBlur","onInput","checked","for","rootAttrs","inputAttrs","filterControlProps","Object","keys"],"sources":["../../../src/components/VSelectionControl/VSelectionControl.tsx"],"sourcesContent":["// Styles\nimport './VSelectionControl.sass'\n\n// Components\nimport { VIcon } from '@/components/VIcon'\nimport { VLabel } from '@/components/VLabel'\nimport { VSelectionControlGroupSymbol } from '@/components/VSelectionControlGroup/VSelectionControlGroup'\n\n// Directives\nimport { Ripple } from '@/directives/ripple'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeThemeProps } from '@/composables/theme'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useTextColor } from '@/composables/color'\n\n// Utilities\nimport { computed, inject, ref } from 'vue'\nimport {\n deepEqual,\n filterInputAttrs,\n genericComponent,\n getUid,\n pick,\n propsFactory,\n SUPPORTS_FOCUS_VISIBLE,\n useRender,\n wrapInArray,\n} from '@/util'\n\n// Types\nimport type { ComputedRef, ExtractPropTypes, PropType, Ref, WritableComputedRef } from 'vue'\nimport type { MakeSlots } from '@/util'\n\nexport type SelectionControlSlot = {\n model: WritableComputedRef<any>\n isReadonly: ComputedRef<boolean>\n isDisabled: ComputedRef<boolean>\n textColorClasses: Ref<string[]>\n props: {\n onBlur: (e: Event) => void\n onFocus: (e: FocusEvent) => void\n id: string\n }\n}\n\nexport const makeSelectionControlProps = propsFactory({\n color: String,\n disabled: Boolean,\n error: Boolean,\n id: String,\n inline: Boolean,\n label: String,\n falseIcon: IconValue,\n trueIcon: IconValue,\n ripple: {\n type: Boolean,\n default: true,\n },\n multiple: {\n type: Boolean as PropType<boolean | null>,\n default: null,\n },\n name: String,\n readonly: Boolean,\n trueValue: null,\n falseValue: null,\n modelValue: null,\n type: String,\n value: null,\n valueComparator: {\n type: Function as PropType<typeof deepEqual>,\n default: deepEqual,\n },\n\n ...makeThemeProps(),\n ...makeDensityProps(),\n})\n\nexport function useSelectionControl (\n props: ExtractPropTypes<ReturnType<typeof makeSelectionControlProps>> & {\n 'onUpdate:modelValue': ((val: any) => void) | undefined\n }\n) {\n const group = inject(VSelectionControlGroupSymbol, undefined)\n const { densityClasses } = useDensity(props)\n const modelValue = useProxiedModel(props, 'modelValue')\n const trueValue = computed(() => (\n props.trueValue !== undefined ? props.trueValue\n : props.value !== undefined ? props.value\n : true\n ))\n const falseValue = computed(() => props.falseValue !== undefined ? props.falseValue : false)\n const isMultiple = computed(() => (\n group?.multiple.value ||\n !!props.multiple ||\n (props.multiple == null && Array.isArray(modelValue.value))\n ))\n const model = computed({\n get () {\n const val = group ? group.modelValue.value : modelValue.value\n\n return isMultiple.value\n ? val.some((v: any) => props.valueComparator(v, trueValue.value))\n : props.valueComparator(val, trueValue.value)\n },\n set (val: boolean) {\n if (props.readonly) return\n\n const currentValue = val ? trueValue.value : falseValue.value\n\n let newVal = currentValue\n\n if (isMultiple.value) {\n newVal = val\n ? [...wrapInArray(modelValue.value), currentValue]\n : wrapInArray(modelValue.value).filter((item: any) => !props.valueComparator(item, trueValue.value))\n }\n\n if (group) {\n group.modelValue.value = newVal\n } else {\n modelValue.value = newVal\n }\n },\n })\n const { textColorClasses, textColorStyles } = useTextColor(computed(() => {\n return (\n model.value &&\n !props.error &&\n !props.disabled\n ) ? props.color : undefined\n }))\n const icon = computed(() => {\n return model.value\n ? group?.trueIcon.value ?? props.trueIcon\n : group?.falseIcon.value ?? props.falseIcon\n })\n\n return {\n group,\n densityClasses,\n trueValue,\n falseValue,\n model,\n textColorClasses,\n textColorStyles,\n icon,\n }\n}\n\nexport const VSelectionControl = genericComponent<new <T>() => {\n $props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (val: T) => any\n }\n $slots: MakeSlots<{\n default: []\n input: [SelectionControlSlot]\n }>\n}>()({\n name: 'VSelectionControl',\n\n directives: { Ripple },\n\n inheritAttrs: false,\n\n props: makeSelectionControlProps(),\n\n emits: {\n 'update:modelValue': (val: any) => true,\n },\n\n setup (props, { attrs, slots }) {\n const {\n densityClasses,\n group,\n icon,\n model,\n textColorClasses,\n textColorStyles,\n trueValue,\n } = useSelectionControl(props)\n const uid = getUid()\n const id = computed(() => props.id || `input-${uid}`)\n const isFocused = ref(false)\n const isFocusVisible = ref(false)\n const input = ref<HTMLInputElement>()\n\n function onFocus (e: FocusEvent) {\n isFocused.value = true\n if (\n !SUPPORTS_FOCUS_VISIBLE ||\n (SUPPORTS_FOCUS_VISIBLE && (e.target as HTMLElement).matches(':focus-visible'))\n ) {\n isFocusVisible.value = true\n }\n }\n\n function onBlur () {\n isFocused.value = false\n isFocusVisible.value = false\n }\n\n function onInput (e: Event) {\n model.value = (e.target as HTMLInputElement).checked\n }\n\n useRender(() => {\n const label = slots.label\n ? slots.label({\n label: props.label,\n props: { for: id.value },\n })\n : props.label\n const type = group?.type.value ?? props.type\n const [rootAttrs, inputAttrs] = filterInputAttrs(attrs)\n\n return (\n <div\n class={[\n 'v-selection-control',\n {\n 'v-selection-control--dirty': model.value,\n 'v-selection-control--disabled': props.disabled,\n 'v-selection-control--error': props.error,\n 'v-selection-control--focused': isFocused.value,\n 'v-selection-control--focus-visible': isFocusVisible.value,\n 'v-selection-control--inline': group?.inline.value || props.inline,\n },\n densityClasses.value,\n ]}\n { ...rootAttrs }\n >\n <div\n class={[\n 'v-selection-control__wrapper',\n textColorClasses.value,\n ]}\n style={ textColorStyles.value }\n >\n { slots.default?.() }\n\n <div\n class={[\n 'v-selection-control__input',\n ]}\n v-ripple={ props.ripple && [\n !props.disabled && !props.readonly,\n null,\n ['center', 'circle'],\n ]}\n >\n { icon.value && <VIcon key=\"icon\" icon={ icon.value } /> }\n\n <input\n ref={ input }\n checked={ model.value }\n disabled={ props.disabled }\n id={ id.value }\n onBlur={ onBlur }\n onFocus={ onFocus }\n onInput={ onInput }\n aria-readonly={ props.readonly }\n type={ type }\n value={ trueValue.value }\n name={ group?.name.value ?? props.name }\n aria-checked={ type === 'checkbox' ? model.value : undefined }\n { ...inputAttrs }\n />\n\n { slots.input?.({\n model,\n textColorClasses,\n props: {\n onFocus,\n onBlur,\n id: id.value,\n },\n }) }\n </div>\n </div>\n\n { label && (\n <VLabel for={ id.value } clickable>\n { label }\n </VLabel>\n ) }\n </div>\n )\n })\n\n return {\n isFocused,\n input,\n }\n },\n})\n\nexport type VSelectionControl = InstanceType<typeof VSelectionControl>\n\nexport function filterControlProps (props: ExtractPropTypes<ReturnType<typeof makeSelectionControlProps>>) {\n return pick(props, Object.keys(VSelectionControl.props) as any)\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,275 @@
|
|
|
1
|
+
import * as vue from 'vue';
|
|
2
|
+
import { VNodeChild, JSXComponent, PropType, ExtractPropTypes, Ref, WritableComputedRef, ComputedRef } from 'vue';
|
|
3
|
+
|
|
4
|
+
declare type SlotsToProps<T extends Record<string, Slot>> = {
|
|
5
|
+
$children: () => (T['default'] | VNodeChild | {
|
|
6
|
+
[K in keyof T]?: T[K];
|
|
7
|
+
});
|
|
8
|
+
'v-slots': new () => {
|
|
9
|
+
[K in keyof T]?: T[K] | false;
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
declare type Slot<T extends any[] = any[]> = (...args: T) => VNodeChild;
|
|
13
|
+
declare type MakeSlots<T extends Record<string, any[]>> = {
|
|
14
|
+
[K in keyof T]?: Slot<T[K]>;
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
declare function deepEqual(a: any, b: any): boolean;
|
|
18
|
+
|
|
19
|
+
declare type IconValue = string | JSXComponent;
|
|
20
|
+
declare const IconValue: PropType<IconValue>;
|
|
21
|
+
|
|
22
|
+
declare type SelectionControlSlot = {
|
|
23
|
+
model: WritableComputedRef<any>;
|
|
24
|
+
isReadonly: ComputedRef<boolean>;
|
|
25
|
+
isDisabled: ComputedRef<boolean>;
|
|
26
|
+
textColorClasses: Ref<string[]>;
|
|
27
|
+
props: {
|
|
28
|
+
onBlur: (e: Event) => void;
|
|
29
|
+
onFocus: (e: FocusEvent) => void;
|
|
30
|
+
id: string;
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
declare const VSelectionControl: {
|
|
34
|
+
new (...args: any[]): {
|
|
35
|
+
$: vue.ComponentInternalInstance;
|
|
36
|
+
$data: {};
|
|
37
|
+
$props: Partial<{
|
|
38
|
+
inline: boolean;
|
|
39
|
+
error: boolean;
|
|
40
|
+
disabled: boolean;
|
|
41
|
+
multiple: boolean | null;
|
|
42
|
+
readonly: boolean;
|
|
43
|
+
density: "default" | "compact" | "comfortable" | null;
|
|
44
|
+
ripple: boolean;
|
|
45
|
+
valueComparator: typeof deepEqual;
|
|
46
|
+
}> & Omit<Readonly<ExtractPropTypes<Omit<{
|
|
47
|
+
density: {
|
|
48
|
+
type: PropType<"default" | "compact" | "comfortable" | null>;
|
|
49
|
+
default: string;
|
|
50
|
+
validator: (v: any) => boolean;
|
|
51
|
+
};
|
|
52
|
+
theme: StringConstructor;
|
|
53
|
+
color: StringConstructor;
|
|
54
|
+
disabled: BooleanConstructor;
|
|
55
|
+
error: BooleanConstructor;
|
|
56
|
+
id: StringConstructor;
|
|
57
|
+
inline: BooleanConstructor;
|
|
58
|
+
label: StringConstructor;
|
|
59
|
+
falseIcon: PropType<IconValue>;
|
|
60
|
+
trueIcon: PropType<IconValue>;
|
|
61
|
+
ripple: {
|
|
62
|
+
type: BooleanConstructor;
|
|
63
|
+
default: boolean;
|
|
64
|
+
};
|
|
65
|
+
multiple: {
|
|
66
|
+
type: PropType<boolean | null>;
|
|
67
|
+
default: null;
|
|
68
|
+
};
|
|
69
|
+
name: StringConstructor;
|
|
70
|
+
readonly: BooleanConstructor;
|
|
71
|
+
trueValue: null;
|
|
72
|
+
falseValue: null;
|
|
73
|
+
modelValue: null;
|
|
74
|
+
type: StringConstructor;
|
|
75
|
+
value: null;
|
|
76
|
+
valueComparator: {
|
|
77
|
+
type: PropType<typeof deepEqual>;
|
|
78
|
+
default: typeof deepEqual;
|
|
79
|
+
};
|
|
80
|
+
}, "onUpdate:modelValue" | "modelValue"> & SlotsToProps<MakeSlots<{
|
|
81
|
+
default: [];
|
|
82
|
+
input: [SelectionControlSlot];
|
|
83
|
+
}>>>> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, "inline" | "error" | "disabled" | "multiple" | "readonly" | "density" | "ripple" | "valueComparator">;
|
|
84
|
+
$attrs: {
|
|
85
|
+
[x: string]: unknown;
|
|
86
|
+
};
|
|
87
|
+
$refs: {
|
|
88
|
+
[x: string]: unknown;
|
|
89
|
+
};
|
|
90
|
+
$slots: Readonly<{
|
|
91
|
+
[name: string]: vue.Slot | undefined;
|
|
92
|
+
}>;
|
|
93
|
+
$root: vue.ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, vue.ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null;
|
|
94
|
+
$parent: vue.ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, vue.ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null;
|
|
95
|
+
$emit: (event: string, ...args: any[]) => void;
|
|
96
|
+
$el: any;
|
|
97
|
+
$options: vue.ComponentOptionsBase<Readonly<ExtractPropTypes<Omit<{
|
|
98
|
+
density: {
|
|
99
|
+
type: PropType<"default" | "compact" | "comfortable" | null>;
|
|
100
|
+
default: string;
|
|
101
|
+
validator: (v: any) => boolean;
|
|
102
|
+
};
|
|
103
|
+
theme: StringConstructor;
|
|
104
|
+
color: StringConstructor;
|
|
105
|
+
disabled: BooleanConstructor;
|
|
106
|
+
error: BooleanConstructor;
|
|
107
|
+
id: StringConstructor;
|
|
108
|
+
inline: BooleanConstructor;
|
|
109
|
+
label: StringConstructor;
|
|
110
|
+
falseIcon: PropType<IconValue>;
|
|
111
|
+
trueIcon: PropType<IconValue>;
|
|
112
|
+
ripple: {
|
|
113
|
+
type: BooleanConstructor;
|
|
114
|
+
default: boolean;
|
|
115
|
+
};
|
|
116
|
+
multiple: {
|
|
117
|
+
type: PropType<boolean | null>;
|
|
118
|
+
default: null;
|
|
119
|
+
};
|
|
120
|
+
name: StringConstructor;
|
|
121
|
+
readonly: BooleanConstructor;
|
|
122
|
+
trueValue: null;
|
|
123
|
+
falseValue: null;
|
|
124
|
+
modelValue: null;
|
|
125
|
+
type: StringConstructor;
|
|
126
|
+
value: null;
|
|
127
|
+
valueComparator: {
|
|
128
|
+
type: PropType<typeof deepEqual>;
|
|
129
|
+
default: typeof deepEqual;
|
|
130
|
+
};
|
|
131
|
+
}, "onUpdate:modelValue" | "modelValue"> & SlotsToProps<MakeSlots<{
|
|
132
|
+
default: [];
|
|
133
|
+
input: [SelectionControlSlot];
|
|
134
|
+
}>>>>, {
|
|
135
|
+
isFocused: Ref<boolean>;
|
|
136
|
+
input: Ref<HTMLInputElement | undefined>;
|
|
137
|
+
}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Omit<{
|
|
138
|
+
'update:modelValue': (val: any) => boolean;
|
|
139
|
+
}, "update:modelValue" | "modelValue">, string, {
|
|
140
|
+
inline: boolean;
|
|
141
|
+
error: boolean;
|
|
142
|
+
disabled: boolean;
|
|
143
|
+
multiple: boolean | null;
|
|
144
|
+
readonly: boolean;
|
|
145
|
+
density: "default" | "compact" | "comfortable" | null;
|
|
146
|
+
ripple: boolean;
|
|
147
|
+
valueComparator: typeof deepEqual;
|
|
148
|
+
}> & {
|
|
149
|
+
beforeCreate?: ((() => void) | (() => void)[]) | undefined;
|
|
150
|
+
created?: ((() => void) | (() => void)[]) | undefined;
|
|
151
|
+
beforeMount?: ((() => void) | (() => void)[]) | undefined;
|
|
152
|
+
mounted?: ((() => void) | (() => void)[]) | undefined;
|
|
153
|
+
beforeUpdate?: ((() => void) | (() => void)[]) | undefined;
|
|
154
|
+
updated?: ((() => void) | (() => void)[]) | undefined;
|
|
155
|
+
activated?: ((() => void) | (() => void)[]) | undefined;
|
|
156
|
+
deactivated?: ((() => void) | (() => void)[]) | undefined;
|
|
157
|
+
beforeDestroy?: ((() => void) | (() => void)[]) | undefined;
|
|
158
|
+
beforeUnmount?: ((() => void) | (() => void)[]) | undefined;
|
|
159
|
+
destroyed?: ((() => void) | (() => void)[]) | undefined;
|
|
160
|
+
unmounted?: ((() => void) | (() => void)[]) | undefined;
|
|
161
|
+
renderTracked?: (((e: vue.DebuggerEvent) => void) | ((e: vue.DebuggerEvent) => void)[]) | undefined;
|
|
162
|
+
renderTriggered?: (((e: vue.DebuggerEvent) => void) | ((e: vue.DebuggerEvent) => void)[]) | undefined;
|
|
163
|
+
errorCaptured?: (((err: unknown, instance: vue.ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, vue.ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null, info: string) => boolean | void) | ((err: unknown, instance: vue.ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, vue.ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null, info: string) => boolean | void)[]) | undefined;
|
|
164
|
+
};
|
|
165
|
+
$forceUpdate: () => void;
|
|
166
|
+
$nextTick: typeof vue.nextTick;
|
|
167
|
+
$watch(source: string | Function, cb: Function, options?: vue.WatchOptions<boolean> | undefined): vue.WatchStopHandle;
|
|
168
|
+
} & Readonly<ExtractPropTypes<Omit<{
|
|
169
|
+
density: {
|
|
170
|
+
type: PropType<"default" | "compact" | "comfortable" | null>;
|
|
171
|
+
default: string;
|
|
172
|
+
validator: (v: any) => boolean;
|
|
173
|
+
};
|
|
174
|
+
theme: StringConstructor;
|
|
175
|
+
color: StringConstructor;
|
|
176
|
+
disabled: BooleanConstructor;
|
|
177
|
+
error: BooleanConstructor;
|
|
178
|
+
id: StringConstructor;
|
|
179
|
+
inline: BooleanConstructor;
|
|
180
|
+
label: StringConstructor;
|
|
181
|
+
falseIcon: PropType<IconValue>;
|
|
182
|
+
trueIcon: PropType<IconValue>;
|
|
183
|
+
ripple: {
|
|
184
|
+
type: BooleanConstructor;
|
|
185
|
+
default: boolean;
|
|
186
|
+
};
|
|
187
|
+
multiple: {
|
|
188
|
+
type: PropType<boolean | null>;
|
|
189
|
+
default: null;
|
|
190
|
+
};
|
|
191
|
+
name: StringConstructor;
|
|
192
|
+
readonly: BooleanConstructor;
|
|
193
|
+
trueValue: null;
|
|
194
|
+
falseValue: null;
|
|
195
|
+
modelValue: null;
|
|
196
|
+
type: StringConstructor;
|
|
197
|
+
value: null;
|
|
198
|
+
valueComparator: {
|
|
199
|
+
type: PropType<typeof deepEqual>;
|
|
200
|
+
default: typeof deepEqual;
|
|
201
|
+
};
|
|
202
|
+
}, "onUpdate:modelValue" | "modelValue"> & SlotsToProps<MakeSlots<{
|
|
203
|
+
default: [];
|
|
204
|
+
input: [SelectionControlSlot];
|
|
205
|
+
}>>>> & vue.ShallowUnwrapRef<{
|
|
206
|
+
isFocused: Ref<boolean>;
|
|
207
|
+
input: Ref<HTMLInputElement | undefined>;
|
|
208
|
+
}> & {} & vue.ComponentCustomProperties;
|
|
209
|
+
__isFragment?: undefined;
|
|
210
|
+
__isTeleport?: undefined;
|
|
211
|
+
__isSuspense?: undefined;
|
|
212
|
+
} & vue.ComponentOptionsBase<Readonly<ExtractPropTypes<Omit<{
|
|
213
|
+
density: {
|
|
214
|
+
type: PropType<"default" | "compact" | "comfortable" | null>;
|
|
215
|
+
default: string;
|
|
216
|
+
validator: (v: any) => boolean;
|
|
217
|
+
};
|
|
218
|
+
theme: StringConstructor;
|
|
219
|
+
color: StringConstructor;
|
|
220
|
+
disabled: BooleanConstructor;
|
|
221
|
+
error: BooleanConstructor;
|
|
222
|
+
id: StringConstructor;
|
|
223
|
+
inline: BooleanConstructor;
|
|
224
|
+
label: StringConstructor;
|
|
225
|
+
falseIcon: PropType<IconValue>;
|
|
226
|
+
trueIcon: PropType<IconValue>;
|
|
227
|
+
ripple: {
|
|
228
|
+
type: BooleanConstructor;
|
|
229
|
+
default: boolean;
|
|
230
|
+
};
|
|
231
|
+
multiple: {
|
|
232
|
+
type: PropType<boolean | null>;
|
|
233
|
+
default: null;
|
|
234
|
+
};
|
|
235
|
+
name: StringConstructor;
|
|
236
|
+
readonly: BooleanConstructor;
|
|
237
|
+
trueValue: null;
|
|
238
|
+
falseValue: null;
|
|
239
|
+
modelValue: null;
|
|
240
|
+
type: StringConstructor;
|
|
241
|
+
value: null;
|
|
242
|
+
valueComparator: {
|
|
243
|
+
type: PropType<typeof deepEqual>;
|
|
244
|
+
default: typeof deepEqual;
|
|
245
|
+
};
|
|
246
|
+
}, "onUpdate:modelValue" | "modelValue"> & SlotsToProps<MakeSlots<{
|
|
247
|
+
default: [];
|
|
248
|
+
input: [SelectionControlSlot];
|
|
249
|
+
}>>>>, {
|
|
250
|
+
isFocused: Ref<boolean>;
|
|
251
|
+
input: Ref<HTMLInputElement | undefined>;
|
|
252
|
+
}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Omit<{
|
|
253
|
+
'update:modelValue': (val: any) => boolean;
|
|
254
|
+
}, "update:modelValue" | "modelValue">, string, {
|
|
255
|
+
inline: boolean;
|
|
256
|
+
error: boolean;
|
|
257
|
+
disabled: boolean;
|
|
258
|
+
multiple: boolean | null;
|
|
259
|
+
readonly: boolean;
|
|
260
|
+
density: "default" | "compact" | "comfortable" | null;
|
|
261
|
+
ripple: boolean;
|
|
262
|
+
valueComparator: typeof deepEqual;
|
|
263
|
+
}> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & (new <T>() => {
|
|
264
|
+
$props: {
|
|
265
|
+
modelValue?: T | undefined;
|
|
266
|
+
'onUpdate:modelValue'?: ((val: T) => any) | undefined;
|
|
267
|
+
};
|
|
268
|
+
$slots: MakeSlots<{
|
|
269
|
+
default: [];
|
|
270
|
+
input: [SelectionControlSlot];
|
|
271
|
+
}>;
|
|
272
|
+
});
|
|
273
|
+
declare type VSelectionControl = InstanceType<typeof VSelectionControl>;
|
|
274
|
+
|
|
275
|
+
export { VSelectionControl };
|
|
@@ -53,7 +53,9 @@ export const VSelectionControlGroup = defineComponent({
|
|
|
53
53
|
var _slots$default;
|
|
54
54
|
|
|
55
55
|
return _createVNode("div", {
|
|
56
|
-
"class":
|
|
56
|
+
"class": ['v-selection-control-group', {
|
|
57
|
+
'v-selection-control-group--inline': props.inline
|
|
58
|
+
}],
|
|
57
59
|
"aria-labelled-by": props.type === 'radio' ? id.value : undefined,
|
|
58
60
|
"role": props.type === 'radio' ? 'radiogroup' : undefined
|
|
59
61
|
}, [(_slots$default = slots.default) == null ? void 0 : _slots$default.call(slots)]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VSelectionControlGroup.mjs","names":["IconValue","useProxiedModel","computed","provide","toRef","defineComponent","getUid","useRender","VSelectionControlGroupSymbol","Symbol","for","VSelectionControlGroup","name","props","disabled","Boolean","id","String","inline","falseIcon","trueIcon","multiple","type","default","readonly","modelValue","emits","val","setup","slots","uid","value","Array","isArray","undefined"],"sources":["../../../src/components/VSelectionControlGroup/VSelectionControlGroup.tsx"],"sourcesContent":["// Styles\nimport './VSelectionControlGroup.sass'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, provide, toRef } from 'vue'\nimport { defineComponent, getUid, useRender } from '@/util'\n\n// Types\nimport type { InjectionKey, PropType, Ref } from 'vue'\n\nexport interface VSelectionGroupContext {\n disabled: Ref<boolean>\n inline: Ref<boolean>\n name: Ref<string | undefined>\n modelValue: Ref<any>\n multiple: Ref<boolean>\n trueIcon: Ref<IconValue | undefined>\n falseIcon: Ref<IconValue | undefined>\n readonly: Ref<boolean>\n type: Ref<string | undefined>\n}\n\nexport const VSelectionControlGroupSymbol: InjectionKey<VSelectionGroupContext> = Symbol.for('vuetify:selection-control-group')\n\nexport const VSelectionControlGroup = defineComponent({\n name: 'VSelectionControlGroup',\n\n props: {\n disabled: Boolean,\n id: String,\n inline: Boolean,\n name: String,\n falseIcon: IconValue,\n trueIcon: IconValue,\n multiple: {\n type: Boolean as PropType<boolean | null>,\n default: null,\n },\n readonly: Boolean,\n type: String,\n modelValue: null,\n },\n\n emits: {\n 'update:modelValue': (val: any) => true,\n },\n\n setup (props, { slots }) {\n const modelValue = useProxiedModel(props, 'modelValue')\n const uid = getUid()\n const id = computed(() => props.id || `v-selection-control-group-${uid}`)\n const name = computed(() => props.name || id.value)\n\n provide(VSelectionControlGroupSymbol, {\n disabled: toRef(props, 'disabled'),\n inline: toRef(props, 'inline'),\n modelValue,\n multiple: computed(() => !!props.multiple || (props.multiple == null && Array.isArray(modelValue.value))),\n name,\n falseIcon: toRef(props, 'falseIcon'),\n trueIcon: toRef(props, 'trueIcon'),\n readonly: toRef(props, 'readonly'),\n type: toRef(props, 'type'),\n })\n\n useRender(() => (\n <div\n class
|
|
1
|
+
{"version":3,"file":"VSelectionControlGroup.mjs","names":["IconValue","useProxiedModel","computed","provide","toRef","defineComponent","getUid","useRender","VSelectionControlGroupSymbol","Symbol","for","VSelectionControlGroup","name","props","disabled","Boolean","id","String","inline","falseIcon","trueIcon","multiple","type","default","readonly","modelValue","emits","val","setup","slots","uid","value","Array","isArray","undefined"],"sources":["../../../src/components/VSelectionControlGroup/VSelectionControlGroup.tsx"],"sourcesContent":["// Styles\nimport './VSelectionControlGroup.sass'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, provide, toRef } from 'vue'\nimport { defineComponent, getUid, useRender } from '@/util'\n\n// Types\nimport type { InjectionKey, PropType, Ref } from 'vue'\n\nexport interface VSelectionGroupContext {\n disabled: Ref<boolean>\n inline: Ref<boolean>\n name: Ref<string | undefined>\n modelValue: Ref<any>\n multiple: Ref<boolean>\n trueIcon: Ref<IconValue | undefined>\n falseIcon: Ref<IconValue | undefined>\n readonly: Ref<boolean>\n type: Ref<string | undefined>\n}\n\nexport const VSelectionControlGroupSymbol: InjectionKey<VSelectionGroupContext> = Symbol.for('vuetify:selection-control-group')\n\nexport const VSelectionControlGroup = defineComponent({\n name: 'VSelectionControlGroup',\n\n props: {\n disabled: Boolean,\n id: String,\n inline: Boolean,\n name: String,\n falseIcon: IconValue,\n trueIcon: IconValue,\n multiple: {\n type: Boolean as PropType<boolean | null>,\n default: null,\n },\n readonly: Boolean,\n type: String,\n modelValue: null,\n },\n\n emits: {\n 'update:modelValue': (val: any) => true,\n },\n\n setup (props, { slots }) {\n const modelValue = useProxiedModel(props, 'modelValue')\n const uid = getUid()\n const id = computed(() => props.id || `v-selection-control-group-${uid}`)\n const name = computed(() => props.name || id.value)\n\n provide(VSelectionControlGroupSymbol, {\n disabled: toRef(props, 'disabled'),\n inline: toRef(props, 'inline'),\n modelValue,\n multiple: computed(() => !!props.multiple || (props.multiple == null && Array.isArray(modelValue.value))),\n name,\n falseIcon: toRef(props, 'falseIcon'),\n trueIcon: toRef(props, 'trueIcon'),\n readonly: toRef(props, 'readonly'),\n type: toRef(props, 'type'),\n })\n\n useRender(() => (\n <div\n class={[\n 'v-selection-control-group',\n { 'v-selection-control-group--inline': props.inline },\n ]}\n aria-labelled-by={ props.type === 'radio' ? id.value : undefined }\n role={ props.type === 'radio' ? 'radiogroup' : undefined }\n >\n { slots.default?.() }\n </div>\n ))\n\n return {}\n },\n})\n\nexport type VSelectionControlGroup = InstanceType<typeof VSelectionControlGroup>\n"],"mappings":";AAAA;AACA,sC,CAEA;;SACSA,S;SACAC,e,8CAET;;AACA,SAASC,QAAT,EAAmBC,OAAnB,EAA4BC,KAA5B,QAAyC,KAAzC;SACSC,e,EAAiBC,M,EAAQC,S,gCAElC;;AAeA,OAAO,MAAMC,4BAAkE,GAAGC,MAAM,CAACC,GAAP,CAAW,iCAAX,CAA3E;AAEP,OAAO,MAAMC,sBAAsB,GAAGN,eAAe,CAAC;EACpDO,IAAI,EAAE,wBAD8C;EAGpDC,KAAK,EAAE;IACLC,QAAQ,EAAEC,OADL;IAELC,EAAE,EAAEC,MAFC;IAGLC,MAAM,EAAEH,OAHH;IAILH,IAAI,EAAEK,MAJD;IAKLE,SAAS,EAAEnB,SALN;IAMLoB,QAAQ,EAAEpB,SANL;IAOLqB,QAAQ,EAAE;MACRC,IAAI,EAAEP,OADE;MAERQ,OAAO,EAAE;IAFD,CAPL;IAWLC,QAAQ,EAAET,OAXL;IAYLO,IAAI,EAAEL,MAZD;IAaLQ,UAAU,EAAE;EAbP,CAH6C;EAmBpDC,KAAK,EAAE;IACL,qBAAsBC,GAAD,IAAc;EAD9B,CAnB6C;;EAuBpDC,KAAK,CAAEf,KAAF,QAAoB;IAAA,IAAX;MAAEgB;IAAF,CAAW;IACvB,MAAMJ,UAAU,GAAGxB,eAAe,CAACY,KAAD,EAAQ,YAAR,CAAlC;IACA,MAAMiB,GAAG,GAAGxB,MAAM,EAAlB;IACA,MAAMU,EAAE,GAAGd,QAAQ,CAAC,MAAMW,KAAK,CAACG,EAAN,IAAa,6BAA4Bc,GAAI,EAApD,CAAnB;IACA,MAAMlB,IAAI,GAAGV,QAAQ,CAAC,MAAMW,KAAK,CAACD,IAAN,IAAcI,EAAE,CAACe,KAAxB,CAArB;IAEA5B,OAAO,CAACK,4BAAD,EAA+B;MACpCM,QAAQ,EAAEV,KAAK,CAACS,KAAD,EAAQ,UAAR,CADqB;MAEpCK,MAAM,EAAEd,KAAK,CAACS,KAAD,EAAQ,QAAR,CAFuB;MAGpCY,UAHoC;MAIpCJ,QAAQ,EAAEnB,QAAQ,CAAC,MAAM,CAAC,CAACW,KAAK,CAACQ,QAAR,IAAqBR,KAAK,CAACQ,QAAN,IAAkB,IAAlB,IAA0BW,KAAK,CAACC,OAAN,CAAcR,UAAU,CAACM,KAAzB,CAAtD,CAJkB;MAKpCnB,IALoC;MAMpCO,SAAS,EAAEf,KAAK,CAACS,KAAD,EAAQ,WAAR,CANoB;MAOpCO,QAAQ,EAAEhB,KAAK,CAACS,KAAD,EAAQ,UAAR,CAPqB;MAQpCW,QAAQ,EAAEpB,KAAK,CAACS,KAAD,EAAQ,UAAR,CARqB;MASpCS,IAAI,EAAElB,KAAK,CAACS,KAAD,EAAQ,MAAR;IATyB,CAA/B,CAAP;IAYAN,SAAS,CAAC;MAAA;;MAAA;QAAA,SAEC,CACL,2BADK,EAEL;UAAE,qCAAqCM,KAAK,CAACK;QAA7C,CAFK,CAFD;QAAA,oBAMaL,KAAK,CAACS,IAAN,KAAe,OAAf,GAAyBN,EAAE,CAACe,KAA5B,GAAoCG,SANjD;QAAA,QAOCrB,KAAK,CAACS,IAAN,KAAe,OAAf,GAAyB,YAAzB,GAAwCY;MAPzC,sBASJL,KAAK,CAACN,OATF,qBASJ,oBAAAM,KAAK,CATD;IAAA,CAAD,CAAT;IAaA,OAAO,EAAP;EACD;;AAvDmD,CAAD,CAA9C"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import * as vue from 'vue';
|
|
2
|
+
import { JSXComponent, PropType } from 'vue';
|
|
3
|
+
|
|
4
|
+
declare type IconValue = string | JSXComponent;
|
|
5
|
+
declare const IconValue: PropType<IconValue>;
|
|
6
|
+
|
|
7
|
+
declare const VSelectionControlGroup: vue.DefineComponent<{
|
|
8
|
+
disabled: BooleanConstructor;
|
|
9
|
+
id: StringConstructor;
|
|
10
|
+
inline: BooleanConstructor;
|
|
11
|
+
name: StringConstructor;
|
|
12
|
+
falseIcon: PropType<IconValue>;
|
|
13
|
+
trueIcon: PropType<IconValue>;
|
|
14
|
+
multiple: {
|
|
15
|
+
type: PropType<boolean | null>;
|
|
16
|
+
default: null;
|
|
17
|
+
};
|
|
18
|
+
readonly: BooleanConstructor;
|
|
19
|
+
type: StringConstructor;
|
|
20
|
+
modelValue: null;
|
|
21
|
+
}, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
|
22
|
+
'update:modelValue': (val: any) => true;
|
|
23
|
+
}, string, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, Readonly<vue.ExtractPropTypes<{
|
|
24
|
+
disabled: BooleanConstructor;
|
|
25
|
+
id: StringConstructor;
|
|
26
|
+
inline: BooleanConstructor;
|
|
27
|
+
name: StringConstructor;
|
|
28
|
+
falseIcon: PropType<IconValue>;
|
|
29
|
+
trueIcon: PropType<IconValue>;
|
|
30
|
+
multiple: {
|
|
31
|
+
type: PropType<boolean | null>;
|
|
32
|
+
default: null;
|
|
33
|
+
};
|
|
34
|
+
readonly: BooleanConstructor;
|
|
35
|
+
type: StringConstructor;
|
|
36
|
+
modelValue: null;
|
|
37
|
+
}>> & {
|
|
38
|
+
"onUpdate:modelValue"?: ((val: any) => any) | undefined;
|
|
39
|
+
}, {
|
|
40
|
+
inline: boolean;
|
|
41
|
+
disabled: boolean;
|
|
42
|
+
multiple: boolean | null;
|
|
43
|
+
readonly: boolean;
|
|
44
|
+
}>;
|
|
45
|
+
declare type VSelectionControlGroup = InstanceType<typeof VSelectionControlGroup>;
|
|
46
|
+
|
|
47
|
+
export { VSelectionControlGroup };
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import * as vue from 'vue';
|
|
2
|
+
|
|
3
|
+
declare const block: readonly ["top", "bottom"];
|
|
4
|
+
declare const inline: readonly ["start", "end", "left", "right"];
|
|
5
|
+
declare type Tblock = typeof block[number];
|
|
6
|
+
declare type Tinline = typeof inline[number];
|
|
7
|
+
declare type Anchor = Tblock | Tinline | 'center' | 'center center' | `${Tblock} ${Tinline | 'center'}` | `${Tinline} ${Tblock | 'center'}`;
|
|
8
|
+
|
|
9
|
+
declare const VSheet: vue.DefineComponent<{
|
|
10
|
+
theme: StringConstructor;
|
|
11
|
+
tag: {
|
|
12
|
+
type: StringConstructor;
|
|
13
|
+
default: string;
|
|
14
|
+
};
|
|
15
|
+
rounded: {
|
|
16
|
+
type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
|
|
17
|
+
default: undefined;
|
|
18
|
+
};
|
|
19
|
+
position: {
|
|
20
|
+
type: vue.PropType<"fixed" | "absolute" | "static" | "relative" | "sticky">;
|
|
21
|
+
validator: (v: any) => boolean;
|
|
22
|
+
};
|
|
23
|
+
location: vue.PropType<Anchor>;
|
|
24
|
+
elevation: {
|
|
25
|
+
type: (StringConstructor | NumberConstructor)[];
|
|
26
|
+
validator(v: any): boolean;
|
|
27
|
+
};
|
|
28
|
+
height: (StringConstructor | NumberConstructor)[];
|
|
29
|
+
maxHeight: (StringConstructor | NumberConstructor)[];
|
|
30
|
+
maxWidth: (StringConstructor | NumberConstructor)[];
|
|
31
|
+
minHeight: (StringConstructor | NumberConstructor)[];
|
|
32
|
+
minWidth: (StringConstructor | NumberConstructor)[];
|
|
33
|
+
width: (StringConstructor | NumberConstructor)[];
|
|
34
|
+
border: (StringConstructor | BooleanConstructor | NumberConstructor)[];
|
|
35
|
+
color: StringConstructor;
|
|
36
|
+
}, () => JSX.Element, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, Readonly<vue.ExtractPropTypes<{
|
|
37
|
+
theme: StringConstructor;
|
|
38
|
+
tag: {
|
|
39
|
+
type: StringConstructor;
|
|
40
|
+
default: string;
|
|
41
|
+
};
|
|
42
|
+
rounded: {
|
|
43
|
+
type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
|
|
44
|
+
default: undefined;
|
|
45
|
+
};
|
|
46
|
+
position: {
|
|
47
|
+
type: vue.PropType<"fixed" | "absolute" | "static" | "relative" | "sticky">;
|
|
48
|
+
validator: (v: any) => boolean;
|
|
49
|
+
};
|
|
50
|
+
location: vue.PropType<Anchor>;
|
|
51
|
+
elevation: {
|
|
52
|
+
type: (StringConstructor | NumberConstructor)[];
|
|
53
|
+
validator(v: any): boolean;
|
|
54
|
+
};
|
|
55
|
+
height: (StringConstructor | NumberConstructor)[];
|
|
56
|
+
maxHeight: (StringConstructor | NumberConstructor)[];
|
|
57
|
+
maxWidth: (StringConstructor | NumberConstructor)[];
|
|
58
|
+
minHeight: (StringConstructor | NumberConstructor)[];
|
|
59
|
+
minWidth: (StringConstructor | NumberConstructor)[];
|
|
60
|
+
width: (StringConstructor | NumberConstructor)[];
|
|
61
|
+
border: (StringConstructor | BooleanConstructor | NumberConstructor)[];
|
|
62
|
+
color: StringConstructor;
|
|
63
|
+
}>>, {
|
|
64
|
+
tag: string;
|
|
65
|
+
rounded: string | number | boolean;
|
|
66
|
+
}>;
|
|
67
|
+
|
|
68
|
+
export { VSheet };
|