@vuetify/nightly 3.7.13-master.2025-02-22 → 3.7.13-master.2025-02-25
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 +14 -3
- package/dist/json/attributes.json +3178 -3174
- package/dist/json/importMap-labs.json +12 -12
- package/dist/json/importMap.json +192 -192
- package/dist/json/tags.json +1 -0
- package/dist/json/web-types.json +5800 -5790
- package/dist/vuetify-labs.css +4259 -4253
- package/dist/vuetify-labs.d.ts +9 -0
- package/dist/vuetify-labs.esm.js +18 -10
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +18 -10
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +3279 -3279
- package/dist/vuetify.d.ts +64 -64
- package/dist/vuetify.esm.js +4 -4
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +4 -4
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +3 -3
- package/dist/vuetify.min.js.map +1 -1
- package/lib/composables/density.mjs +1 -1
- package/lib/composables/density.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/index.d.mts +64 -64
- package/lib/labs/VNumberInput/VNumberInput.mjs +2 -2
- package/lib/labs/VNumberInput/VNumberInput.mjs.map +1 -1
- package/lib/labs/VTimePicker/VTimePickerControls.sass +16 -16
- package/lib/labs/VTimePicker/_variables.scss +12 -12
- package/lib/labs/VTreeview/VTreeview.mjs +5 -1
- package/lib/labs/VTreeview/VTreeview.mjs.map +1 -1
- package/lib/labs/VTreeview/VTreeviewChildren.mjs +4 -1
- package/lib/labs/VTreeview/VTreeviewChildren.mjs.map +1 -1
- package/lib/labs/VTreeview/VTreeviewItem.css +15 -9
- package/lib/labs/VTreeview/VTreeviewItem.mjs +4 -2
- package/lib/labs/VTreeview/VTreeviewItem.mjs.map +1 -1
- package/lib/labs/VTreeview/VTreeviewItem.sass +16 -10
- package/lib/labs/VTreeview/_variables.scss +2 -5
- package/lib/labs/VTreeview/index.d.mts +9 -0
- package/lib/labs/components.d.mts +9 -0
- package/lib/locale/ja.mjs +19 -19
- package/lib/locale/ja.mjs.map +1 -1
- package/lib/styles/tools/_functions.sass +1 -1
- package/package.json +1 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"VTreeview.mjs","names":["makeVTreeviewChildrenProps","VTreeviewChildren","makeVListProps","useListItems","VList","provideDefaults","makeFilterProps","useFilter","useProxiedModel","computed","provide","ref","toRaw","toRef","genericComponent","omit","propsFactory","useRender","VTreeviewSymbol","flatten","items","flat","arguments","length","undefined","item","push","children","makeVTreeviewProps","openAll","Boolean","search","String","filterKeys","collapseIcon","expandIcon","slim","modelValue","type","Array","default","VTreeview","name","props","emits","val","value","setup","_ref","slots","activeColor","baseColor","color","activated","model","_selected","selected","get","set","vListRef","opened","flatItems","filteredItems","visibleIds","getPath","Set","flatMap","itemVal","returnObject","raw","getChildren","map","id","arr","queue","slice","child","shift","ids","i","concat","VTreeviewGroup","VTreeviewItem","activeClass","density","disabled","lines","variant","listProps","filterProps","treeviewChildrenProps","_createVNode","_mergeProps","class","style","$event"],"sources":["../../../src/labs/VTreeview/VTreeview.tsx"],"sourcesContent":["// Components\nimport { makeVTreeviewChildrenProps, VTreeviewChildren } from './VTreeviewChildren'\nimport { makeVListProps, useListItems, VList } from '@/components/VList/VList'\n\n// Composables\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeFilterProps, useFilter } from '@/composables/filter'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, provide, ref, toRaw, toRef } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport { VTreeviewSymbol } from './shared'\nimport type { InternalListItem } from '@/components/VList/VList'\nimport type { VListChildrenSlots } from '@/components/VList/VListChildren'\nimport type { ListItem } from '@/composables/list-items'\nimport type { GenericProps } from '@/util'\n\nfunction flatten (items: ListItem[], flat: ListItem[] = []) {\n for (const item of items) {\n flat.push(item)\n if (item.children) flatten(item.children, flat)\n }\n return flat\n}\n\nexport const makeVTreeviewProps = propsFactory({\n openAll: Boolean,\n search: String,\n\n ...makeFilterProps({ filterKeys: ['title'] }),\n ...makeVTreeviewChildrenProps(),\n ...omit(makeVListProps({\n collapseIcon: '$treeviewCollapse',\n expandIcon: '$treeviewExpand',\n slim: true,\n }), ['itemType', 'nav', 'openStrategy']),\n modelValue: {\n type: Array,\n default: () => ([]),\n },\n}, 'VTreeview')\n\nexport const VTreeview = genericComponent<new <T>(\n props: {\n items?: T[]\n },\n slots: VListChildrenSlots<T>\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VTreeview',\n\n props: makeVTreeviewProps(),\n\n emits: {\n 'update:opened': (val: unknown) => true,\n 'update:activated': (val: unknown) => true,\n 'update:selected': (val: unknown) => true,\n 'update:modelValue': (val: unknown) => true,\n 'click:open': (value: { id: unknown, value: boolean, path: unknown[] }) => true,\n 'click:select': (value: { id: unknown, value: boolean, path: unknown[] }) => true,\n },\n\n setup (props, { slots }) {\n const { items } = useListItems(props)\n const activeColor = toRef(props, 'activeColor')\n const baseColor = toRef(props, 'baseColor')\n const color = toRef(props, 'color')\n const activated = useProxiedModel(props, 'activated')\n const model = useProxiedModel(props, 'modelValue')\n const _selected = useProxiedModel(props, 'selected', props.modelValue)\n\n const selected = computed({\n get: () => _selected.value,\n set (val) {\n _selected.value = val\n model.value = val\n },\n })\n\n const vListRef = ref<VList>()\n\n const opened = computed(() => props.openAll ? openAll(items.value) : props.opened)\n const flatItems = computed(() => flatten(items.value))\n const search = toRef(props, 'search')\n const { filteredItems } = useFilter(props, flatItems, search)\n const visibleIds = computed(() => {\n if (!search.value) return null\n const getPath = vListRef.value?.getPath\n if (!getPath) return null\n return new Set(filteredItems.value.flatMap(item => {\n const itemVal = props.returnObject ? item.raw : item.props.value\n return [\n ...getPath(itemVal),\n ...getChildren(itemVal),\n ].map(toRaw)\n }))\n })\n\n function getChildren (id: unknown) {\n const arr: unknown[] = []\n const queue = ((vListRef.value?.children.get(id) ?? []).slice())\n while (queue.length) {\n const child = queue.shift()\n if (!child) continue\n arr.push(child)\n queue.push(...((vListRef.value?.children.get(child) ?? []).slice()))\n }\n return arr\n }\n\n function openAll (items: InternalListItem<any>[]) {\n let ids: any[] = []\n\n for (const i of items) {\n if (!i.children) continue\n\n ids.push(props.returnObject ? toRaw(i.raw) : i.value)\n\n if (i.children) {\n ids = ids.concat(openAll(i.children))\n }\n }\n\n return ids\n }\n\n provide(VTreeviewSymbol, { visibleIds })\n\n provideDefaults({\n VTreeviewGroup: {\n activeColor,\n baseColor,\n color,\n collapseIcon: toRef(props, 'collapseIcon'),\n expandIcon: toRef(props, 'expandIcon'),\n },\n VTreeviewItem: {\n activeClass: toRef(props, 'activeClass'),\n activeColor,\n baseColor,\n color,\n density: toRef(props, 'density'),\n disabled: toRef(props, 'disabled'),\n lines: toRef(props, 'lines'),\n variant: toRef(props, 'variant'),\n },\n })\n\n useRender(() => {\n const listProps = VList.filterProps(props)\n const treeviewChildrenProps = VTreeviewChildren.filterProps(props)\n\n return (\n <VList\n ref={ vListRef }\n { ...listProps }\n class={[\n 'v-treeview',\n props.class,\n ]}\n open-strategy=\"multiple\"\n style={ props.style }\n opened={ opened.value }\n v-model:activated={ activated.value }\n v-model:selected={ selected.value }\n >\n <VTreeviewChildren\n { ...treeviewChildrenProps }\n returnObject={ props.returnObject }\n items={ items.value }\n v-slots={ slots }\n ></VTreeviewChildren>\n </VList>\n )\n })\n\n return { }\n },\n})\n\nexport type VTreeview = InstanceType<typeof VTreeview>\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"file":"VTreeview.mjs","names":["makeVTreeviewChildrenProps","VTreeviewChildren","makeVListProps","useListItems","VList","provideDefaults","makeFilterProps","useFilter","useProxiedModel","computed","provide","ref","toRaw","toRef","genericComponent","omit","propsFactory","useRender","VTreeviewSymbol","flatten","items","flat","arguments","length","undefined","item","push","children","makeVTreeviewProps","fluid","Boolean","openAll","search","String","filterKeys","collapseIcon","expandIcon","slim","modelValue","type","Array","default","VTreeview","name","props","emits","val","value","setup","_ref","slots","activeColor","baseColor","color","activated","model","_selected","selected","get","set","vListRef","opened","flatItems","filteredItems","visibleIds","getPath","Set","flatMap","itemVal","returnObject","raw","getChildren","map","id","arr","queue","slice","child","shift","ids","i","concat","VTreeviewGroup","VTreeviewItem","activeClass","density","disabled","lines","variant","listProps","filterProps","treeviewChildrenProps","_createVNode","_mergeProps","class","style","$event"],"sources":["../../../src/labs/VTreeview/VTreeview.tsx"],"sourcesContent":["// Components\nimport { makeVTreeviewChildrenProps, VTreeviewChildren } from './VTreeviewChildren'\nimport { makeVListProps, useListItems, VList } from '@/components/VList/VList'\n\n// Composables\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeFilterProps, useFilter } from '@/composables/filter'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, provide, ref, toRaw, toRef } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport { VTreeviewSymbol } from './shared'\nimport type { InternalListItem } from '@/components/VList/VList'\nimport type { VListChildrenSlots } from '@/components/VList/VListChildren'\nimport type { ListItem } from '@/composables/list-items'\nimport type { GenericProps } from '@/util'\n\nfunction flatten (items: ListItem[], flat: ListItem[] = []) {\n for (const item of items) {\n flat.push(item)\n if (item.children) flatten(item.children, flat)\n }\n return flat\n}\n\nexport const makeVTreeviewProps = propsFactory({\n fluid: Boolean,\n openAll: Boolean,\n search: String,\n\n ...makeFilterProps({ filterKeys: ['title'] }),\n ...makeVTreeviewChildrenProps(),\n ...omit(makeVListProps({\n collapseIcon: '$treeviewCollapse',\n expandIcon: '$treeviewExpand',\n slim: true,\n }), ['itemType', 'nav', 'openStrategy']),\n modelValue: {\n type: Array,\n default: () => ([]),\n },\n}, 'VTreeview')\n\nexport const VTreeview = genericComponent<new <T>(\n props: {\n items?: T[]\n },\n slots: VListChildrenSlots<T>\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VTreeview',\n\n props: makeVTreeviewProps(),\n\n emits: {\n 'update:opened': (val: unknown) => true,\n 'update:activated': (val: unknown) => true,\n 'update:selected': (val: unknown) => true,\n 'update:modelValue': (val: unknown) => true,\n 'click:open': (value: { id: unknown, value: boolean, path: unknown[] }) => true,\n 'click:select': (value: { id: unknown, value: boolean, path: unknown[] }) => true,\n },\n\n setup (props, { slots }) {\n const { items } = useListItems(props)\n const activeColor = toRef(props, 'activeColor')\n const baseColor = toRef(props, 'baseColor')\n const color = toRef(props, 'color')\n const activated = useProxiedModel(props, 'activated')\n const model = useProxiedModel(props, 'modelValue')\n const _selected = useProxiedModel(props, 'selected', props.modelValue)\n\n const selected = computed({\n get: () => _selected.value,\n set (val) {\n _selected.value = val\n model.value = val\n },\n })\n\n const vListRef = ref<VList>()\n\n const opened = computed(() => props.openAll ? openAll(items.value) : props.opened)\n const flatItems = computed(() => flatten(items.value))\n const search = toRef(props, 'search')\n const { filteredItems } = useFilter(props, flatItems, search)\n const visibleIds = computed(() => {\n if (!search.value) return null\n const getPath = vListRef.value?.getPath\n if (!getPath) return null\n return new Set(filteredItems.value.flatMap(item => {\n const itemVal = props.returnObject ? item.raw : item.props.value\n return [\n ...getPath(itemVal),\n ...getChildren(itemVal),\n ].map(toRaw)\n }))\n })\n\n function getChildren (id: unknown) {\n const arr: unknown[] = []\n const queue = ((vListRef.value?.children.get(id) ?? []).slice())\n while (queue.length) {\n const child = queue.shift()\n if (!child) continue\n arr.push(child)\n queue.push(...((vListRef.value?.children.get(child) ?? []).slice()))\n }\n return arr\n }\n\n function openAll (items: InternalListItem<any>[]) {\n let ids: any[] = []\n\n for (const i of items) {\n if (!i.children) continue\n\n ids.push(props.returnObject ? toRaw(i.raw) : i.value)\n\n if (i.children) {\n ids = ids.concat(openAll(i.children))\n }\n }\n\n return ids\n }\n\n provide(VTreeviewSymbol, { visibleIds })\n\n provideDefaults({\n VTreeviewGroup: {\n activeColor,\n baseColor,\n color,\n collapseIcon: toRef(props, 'collapseIcon'),\n expandIcon: toRef(props, 'expandIcon'),\n },\n VTreeviewItem: {\n activeClass: toRef(props, 'activeClass'),\n activeColor,\n baseColor,\n color,\n density: toRef(props, 'density'),\n disabled: toRef(props, 'disabled'),\n lines: toRef(props, 'lines'),\n variant: toRef(props, 'variant'),\n },\n })\n\n useRender(() => {\n const listProps = VList.filterProps(props)\n const treeviewChildrenProps = VTreeviewChildren.filterProps(props)\n\n return (\n <VList\n ref={ vListRef }\n { ...listProps }\n class={[\n 'v-treeview',\n {\n 'v-treeview--fluid': props.fluid,\n },\n props.class,\n ]}\n open-strategy=\"multiple\"\n style={ props.style }\n opened={ opened.value }\n v-model:activated={ activated.value }\n v-model:selected={ selected.value }\n >\n <VTreeviewChildren\n { ...treeviewChildrenProps }\n density={ props.density }\n returnObject={ props.returnObject }\n items={ items.value }\n v-slots={ slots }\n ></VTreeviewChildren>\n </VList>\n )\n })\n\n return { }\n },\n})\n\nexport type VTreeview = InstanceType<typeof VTreeview>\n"],"mappings":"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","ignoreList":[]}
|
@@ -3,6 +3,7 @@ import { Fragment as _Fragment, createVNode as _createVNode, mergeProps as _merg
|
|
3
3
|
import { VTreeviewGroup } from "./VTreeviewGroup.mjs";
|
4
4
|
import { VTreeviewItem } from "./VTreeviewItem.mjs";
|
5
5
|
import { VCheckboxBtn } from "../../components/VCheckbox/index.mjs"; // Composables
|
6
|
+
import { makeDensityProps } from "../../composables/density.mjs";
|
6
7
|
import { IconValue } from "../../composables/icons.mjs"; // Utilities
|
7
8
|
import { computed, reactive, toRaw, withModifiers } from 'vue';
|
8
9
|
import { genericComponent, propsFactory } from "../../util/index.mjs"; // Types
|
@@ -27,7 +28,8 @@ export const makeVTreeviewChildrenProps = propsFactory({
|
|
27
28
|
returnObject: Boolean,
|
28
29
|
selectable: Boolean,
|
29
30
|
selectedColor: String,
|
30
|
-
selectStrategy: [String, Function, Object]
|
31
|
+
selectStrategy: [String, Function, Object],
|
32
|
+
...makeDensityProps()
|
31
33
|
}, 'VTreeviewChildren');
|
32
34
|
export const VTreeviewChildren = genericComponent()({
|
33
35
|
name: 'VTreeviewChildren',
|
@@ -67,6 +69,7 @@ export const VTreeviewChildren = genericComponent()({
|
|
67
69
|
"disabled": props.disabled,
|
68
70
|
"loading": loading,
|
69
71
|
"color": props.selectedColor,
|
72
|
+
"density": props.density,
|
70
73
|
"indeterminate": slotProps.isIndeterminate,
|
71
74
|
"indeterminateIcon": props.indeterminateIcon,
|
72
75
|
"falseIcon": props.falseIcon,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"VTreeviewChildren.mjs","names":["VTreeviewGroup","VTreeviewItem","VCheckboxBtn","IconValue","computed","reactive","toRaw","withModifiers","genericComponent","propsFactory","makeVTreeviewChildrenProps","disabled","Boolean","loadChildren","Function","loadingIcon","type","String","default","items","Array","openOnClick","undefined","indeterminateIcon","falseIcon","trueIcon","returnObject","selectable","selectedColor","selectStrategy","Object","VTreeviewChildren","name","props","setup","_ref","slots","isLoading","Set","isClickOnOpen","checkChildren","item","length","children","add","value","raw","delete","selectItem","select","isSelected","map","itemProps","loading","has","slotsWithItem","prepend","slotProps","_createVNode","_Fragment","includes","isIndeterminate","e","key","stopPropagation","internalItem","append","title","subtitle","treeviewGroupProps","filterProps","treeviewChildrenProps","_mergeProps","activator","_ref2","activatorProps","listItemProps","onToggleExpand","onClick"],"sources":["../../../src/labs/VTreeview/VTreeviewChildren.tsx"],"sourcesContent":["// Components\nimport { VTreeviewGroup } from './VTreeviewGroup'\nimport { VTreeviewItem } from './VTreeviewItem'\nimport { VCheckboxBtn } from '@/components/VCheckbox'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { computed, reactive, toRaw, withModifiers } from 'vue'\nimport { genericComponent, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { InternalListItem } from '@/components/VList/VList'\nimport type { VListItemSlots } from '@/components/VList/VListItem'\nimport type { SelectStrategyProp } from '@/composables/nested/nested'\nimport type { GenericProps } from '@/util'\n\nexport type VTreeviewChildrenSlots<T> = {\n [K in keyof Omit<VListItemSlots, 'default'>]: VListItemSlots[K] & {\n item: T\n internalItem: InternalListItem<T>\n }\n} & {\n default: never\n item: {\n props: InternalListItem['props']\n item: T\n internalItem: InternalListItem<T>\n }\n}\n\nexport const makeVTreeviewChildrenProps = propsFactory({\n disabled: Boolean,\n loadChildren: Function as PropType<(item: unknown) => Promise<void>>,\n loadingIcon: {\n type: String,\n default: '$loading',\n },\n items: Array as PropType<readonly InternalListItem[]>,\n openOnClick: {\n type: Boolean,\n default: undefined,\n },\n indeterminateIcon: {\n type: IconValue,\n default: '$checkboxIndeterminate',\n },\n falseIcon: IconValue,\n trueIcon: IconValue,\n returnObject: Boolean,\n selectable: Boolean,\n selectedColor: String,\n selectStrategy: [String, Function, Object] as PropType<SelectStrategyProp>,\n}, 'VTreeviewChildren')\n\nexport const VTreeviewChildren = genericComponent<new <T extends InternalListItem>(\n props: {\n items?: readonly T[]\n },\n slots: VTreeviewChildrenSlots<T>\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VTreeviewChildren',\n\n props: makeVTreeviewChildrenProps(),\n\n setup (props, { slots }) {\n const isLoading = reactive(new Set<unknown>())\n\n const isClickOnOpen = computed(() => !props.disabled && (props.openOnClick != null ? props.openOnClick : props.selectable))\n\n async function checkChildren (item: InternalListItem) {\n try {\n if (!props.items?.length || !props.loadChildren) return\n\n if (item?.children?.length === 0) {\n isLoading.add(item.value)\n await props.loadChildren(item.raw)\n }\n } finally {\n isLoading.delete(item.value)\n }\n }\n\n function selectItem (select: (value: boolean) => void, isSelected: boolean) {\n if (props.selectable) {\n select(!isSelected)\n }\n }\n\n return () => slots.default?.() ?? props.items?.map(item => {\n const { children, props: itemProps } = item\n const loading = isLoading.has(item.value)\n const slotsWithItem = {\n prepend: slotProps => (\n <>\n { props.selectable && (!children || (children && !['leaf', 'single-leaf'].includes(props.selectStrategy as string))) && (\n <div>\n <VCheckboxBtn\n key={ item.value }\n modelValue={ slotProps.isSelected }\n disabled={ props.disabled }\n loading={ loading }\n color={ props.selectedColor }\n indeterminate={ slotProps.isIndeterminate }\n indeterminateIcon={ props.indeterminateIcon }\n falseIcon={ props.falseIcon }\n trueIcon={ props.trueIcon }\n onClick={ withModifiers(() => selectItem(slotProps.select, slotProps.isSelected), ['stop']) }\n onKeydown={ (e: KeyboardEvent) => {\n if (!['Enter', 'Space'].includes(e.key)) return\n e.stopPropagation()\n selectItem(slotProps.select, slotProps.isSelected)\n }}\n />\n </div>\n )}\n\n { slots.prepend?.({ ...slotProps, item: item.raw, internalItem: item }) }\n </>\n ),\n append: slots.append ? slotProps => slots.append?.({ ...slotProps, item: item.raw, internalItem: item }) : undefined,\n title: slots.title ? slotProps => slots.title?.({ ...slotProps, item: item.raw, internalItem: item }) : undefined,\n subtitle: slots.subtitle ? slotProps => slots.subtitle?.({ ...slotProps, item: item.raw, internalItem: item }) : undefined,\n } satisfies VTreeviewItem['$props']['$children']\n\n const treeviewGroupProps = VTreeviewGroup.filterProps(itemProps)\n const treeviewChildrenProps = VTreeviewChildren.filterProps(props)\n\n return children ? (\n <VTreeviewGroup\n { ...treeviewGroupProps }\n value={ props.returnObject ? item.raw : treeviewGroupProps?.value }\n >\n {{\n activator: ({ props: activatorProps }) => {\n const listItemProps = {\n ...itemProps,\n ...activatorProps,\n value: itemProps?.value,\n onToggleExpand: [() => checkChildren(item), activatorProps.onClick] as any,\n onClick: isClickOnOpen.value ? [() => checkChildren(item), activatorProps.onClick] as any : undefined,\n }\n\n return (\n <VTreeviewItem\n { ...listItemProps }\n value={ props.returnObject ? item.raw : itemProps.value }\n loading={ loading }\n v-slots={ slotsWithItem }\n />\n )\n },\n default: () => (\n <VTreeviewChildren\n { ...treeviewChildrenProps }\n items={ children }\n returnObject={ props.returnObject }\n v-slots={ slots }\n />\n ),\n }}\n </VTreeviewGroup>\n ) : (\n slots.item?.({ props: itemProps, item: item.raw, internalItem: item }) ?? (\n <VTreeviewItem\n { ...itemProps }\n value={ props.returnObject ? toRaw(item.raw) : itemProps.value }\n v-slots={ slotsWithItem }\n />\n ))\n })\n },\n})\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"file":"VTreeviewChildren.mjs","names":["VTreeviewGroup","VTreeviewItem","VCheckboxBtn","makeDensityProps","IconValue","computed","reactive","toRaw","withModifiers","genericComponent","propsFactory","makeVTreeviewChildrenProps","disabled","Boolean","loadChildren","Function","loadingIcon","type","String","default","items","Array","openOnClick","undefined","indeterminateIcon","falseIcon","trueIcon","returnObject","selectable","selectedColor","selectStrategy","Object","VTreeviewChildren","name","props","setup","_ref","slots","isLoading","Set","isClickOnOpen","checkChildren","item","length","children","add","value","raw","delete","selectItem","select","isSelected","map","itemProps","loading","has","slotsWithItem","prepend","slotProps","_createVNode","_Fragment","includes","density","isIndeterminate","e","key","stopPropagation","internalItem","append","title","subtitle","treeviewGroupProps","filterProps","treeviewChildrenProps","_mergeProps","activator","_ref2","activatorProps","listItemProps","onToggleExpand","onClick"],"sources":["../../../src/labs/VTreeview/VTreeviewChildren.tsx"],"sourcesContent":["// Components\nimport { VTreeviewGroup } from './VTreeviewGroup'\nimport { VTreeviewItem } from './VTreeviewItem'\nimport { VCheckboxBtn } from '@/components/VCheckbox'\n\n// Composables\nimport { makeDensityProps } from '@/composables/density'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { computed, reactive, toRaw, withModifiers } from 'vue'\nimport { genericComponent, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { InternalListItem } from '@/components/VList/VList'\nimport type { VListItemSlots } from '@/components/VList/VListItem'\nimport type { SelectStrategyProp } from '@/composables/nested/nested'\nimport type { GenericProps } from '@/util'\n\nexport type VTreeviewChildrenSlots<T> = {\n [K in keyof Omit<VListItemSlots, 'default'>]: VListItemSlots[K] & {\n item: T\n internalItem: InternalListItem<T>\n }\n} & {\n default: never\n item: {\n props: InternalListItem['props']\n item: T\n internalItem: InternalListItem<T>\n }\n}\n\nexport const makeVTreeviewChildrenProps = propsFactory({\n disabled: Boolean,\n loadChildren: Function as PropType<(item: unknown) => Promise<void>>,\n loadingIcon: {\n type: String,\n default: '$loading',\n },\n items: Array as PropType<readonly InternalListItem[]>,\n openOnClick: {\n type: Boolean,\n default: undefined,\n },\n indeterminateIcon: {\n type: IconValue,\n default: '$checkboxIndeterminate',\n },\n falseIcon: IconValue,\n trueIcon: IconValue,\n returnObject: Boolean,\n selectable: Boolean,\n selectedColor: String,\n selectStrategy: [String, Function, Object] as PropType<SelectStrategyProp>,\n\n ...makeDensityProps(),\n}, 'VTreeviewChildren')\n\nexport const VTreeviewChildren = genericComponent<new <T extends InternalListItem>(\n props: {\n items?: readonly T[]\n },\n slots: VTreeviewChildrenSlots<T>\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VTreeviewChildren',\n\n props: makeVTreeviewChildrenProps(),\n\n setup (props, { slots }) {\n const isLoading = reactive(new Set<unknown>())\n\n const isClickOnOpen = computed(() => !props.disabled && (props.openOnClick != null ? props.openOnClick : props.selectable))\n\n async function checkChildren (item: InternalListItem) {\n try {\n if (!props.items?.length || !props.loadChildren) return\n\n if (item?.children?.length === 0) {\n isLoading.add(item.value)\n await props.loadChildren(item.raw)\n }\n } finally {\n isLoading.delete(item.value)\n }\n }\n\n function selectItem (select: (value: boolean) => void, isSelected: boolean) {\n if (props.selectable) {\n select(!isSelected)\n }\n }\n\n return () => slots.default?.() ?? props.items?.map(item => {\n const { children, props: itemProps } = item\n const loading = isLoading.has(item.value)\n const slotsWithItem = {\n prepend: slotProps => (\n <>\n { props.selectable && (!children || (children && !['leaf', 'single-leaf'].includes(props.selectStrategy as string))) && (\n <div>\n <VCheckboxBtn\n key={ item.value }\n modelValue={ slotProps.isSelected }\n disabled={ props.disabled }\n loading={ loading }\n color={ props.selectedColor }\n density={ props.density }\n indeterminate={ slotProps.isIndeterminate }\n indeterminateIcon={ props.indeterminateIcon }\n falseIcon={ props.falseIcon }\n trueIcon={ props.trueIcon }\n onClick={ withModifiers(() => selectItem(slotProps.select, slotProps.isSelected), ['stop']) }\n onKeydown={ (e: KeyboardEvent) => {\n if (!['Enter', 'Space'].includes(e.key)) return\n e.stopPropagation()\n selectItem(slotProps.select, slotProps.isSelected)\n }}\n />\n </div>\n )}\n\n { slots.prepend?.({ ...slotProps, item: item.raw, internalItem: item }) }\n </>\n ),\n append: slots.append ? slotProps => slots.append?.({ ...slotProps, item: item.raw, internalItem: item }) : undefined,\n title: slots.title ? slotProps => slots.title?.({ ...slotProps, item: item.raw, internalItem: item }) : undefined,\n subtitle: slots.subtitle ? slotProps => slots.subtitle?.({ ...slotProps, item: item.raw, internalItem: item }) : undefined,\n } satisfies VTreeviewItem['$props']['$children']\n\n const treeviewGroupProps = VTreeviewGroup.filterProps(itemProps)\n const treeviewChildrenProps = VTreeviewChildren.filterProps(props)\n\n return children ? (\n <VTreeviewGroup\n { ...treeviewGroupProps }\n value={ props.returnObject ? item.raw : treeviewGroupProps?.value }\n >\n {{\n activator: ({ props: activatorProps }) => {\n const listItemProps = {\n ...itemProps,\n ...activatorProps,\n value: itemProps?.value,\n onToggleExpand: [() => checkChildren(item), activatorProps.onClick] as any,\n onClick: isClickOnOpen.value ? [() => checkChildren(item), activatorProps.onClick] as any : undefined,\n }\n\n return (\n <VTreeviewItem\n { ...listItemProps }\n value={ props.returnObject ? item.raw : itemProps.value }\n loading={ loading }\n v-slots={ slotsWithItem }\n />\n )\n },\n default: () => (\n <VTreeviewChildren\n { ...treeviewChildrenProps }\n items={ children }\n returnObject={ props.returnObject }\n v-slots={ slots }\n />\n ),\n }}\n </VTreeviewGroup>\n ) : (\n slots.item?.({ props: itemProps, item: item.raw, internalItem: item }) ?? (\n <VTreeviewItem\n { ...itemProps }\n value={ props.returnObject ? toRaw(item.raw) : itemProps.value }\n v-slots={ slotsWithItem }\n />\n ))\n })\n },\n})\n"],"mappings":"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","ignoreList":[]}
|
@@ -1,23 +1,29 @@
|
|
1
|
+
.v-treeview-item {
|
2
|
+
--list-indent-size: 28px;
|
3
|
+
}
|
1
4
|
.v-treeview-item.v-treeview-item--filtered {
|
2
5
|
display: none;
|
3
6
|
}
|
7
|
+
.v-treeview-item__level {
|
8
|
+
width: 28px;
|
9
|
+
}
|
10
|
+
.v-treeview--fluid .v-treeview-item__level {
|
11
|
+
width: 0;
|
12
|
+
}
|
4
13
|
|
5
|
-
.v-treeview {
|
6
|
-
--indent-padding:
|
14
|
+
.v-treeview.v-list {
|
15
|
+
--indent-padding: 16px;
|
7
16
|
}
|
8
17
|
.v-treeview.v-list--disabled .v-list-item__prepend {
|
9
18
|
pointer-events: auto;
|
10
19
|
}
|
11
20
|
|
12
21
|
.v-treeview-group.v-list-group {
|
13
|
-
--list-indent-size:
|
22
|
+
--list-indent-size: 0px;
|
14
23
|
}
|
15
|
-
.v-
|
16
|
-
|
24
|
+
.v-treeview-group.v-list-group > .v-treeview-item__level {
|
25
|
+
width: 0px;
|
17
26
|
}
|
18
27
|
.v-treeview-group.v-list-group .v-list-group__items .v-list-item {
|
19
|
-
padding-inline-start: calc(
|
20
|
-
}
|
21
|
-
.v-treeview-group.v-list-group .v-list-group__items .v-list-item.v-list-group__header {
|
22
|
-
padding-inline-start: calc(16px + var(--indent-padding)) !important;
|
28
|
+
padding-inline-start: calc(var(--indent-padding)) !important;
|
23
29
|
}
|
@@ -58,7 +58,7 @@ export const VTreeviewItem = genericComponent()({
|
|
58
58
|
return _createVNode(_Fragment, null, [_createVNode(VListItemAction, {
|
59
59
|
"start": false
|
60
60
|
}, {
|
61
|
-
default: () => [props.toggleIcon
|
61
|
+
default: () => [props.toggleIcon ? _createVNode(VBtn, {
|
62
62
|
"density": "compact",
|
63
63
|
"icon": props.toggleIcon,
|
64
64
|
"loading": props.loading,
|
@@ -72,7 +72,9 @@ export const VTreeviewItem = genericComponent()({
|
|
72
72
|
"width": "2"
|
73
73
|
}, null);
|
74
74
|
}
|
75
|
-
})
|
75
|
+
}) : _createVNode("div", {
|
76
|
+
"class": "v-treeview-item__level"
|
77
|
+
}, null)]
|
76
78
|
}), slots.prepend?.(slotProps)]);
|
77
79
|
} : undefined
|
78
80
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"VTreeviewItem.mjs","names":["VBtn","VListItemAction","makeVListItemProps","VListItem","VProgressCircular","IconValue","computed","inject","ref","toRaw","EventProp","genericComponent","omit","propsFactory","useRender","VTreeviewSymbol","makeVTreeviewItemProps","loading","Boolean","onToggleExpand","toggleIcon","slim","VTreeviewItem","name","props","setup","_ref","slots","visibleIds","vListItemRef","isActivatableGroupActivator","value","root","activatable","isGroupActivator","vListItemRefIsClickable","link","isClickable","list","disabled","isFiltered","has","id","activateGroupActivator","e","activate","isActivated","listItemProps","filterProps","hasPrepend","prepend","_createVNode","_mergeProps","class","onClick","slotProps","_Fragment","default","loader","undefined"],"sources":["../../../src/labs/VTreeview/VTreeviewItem.tsx"],"sourcesContent":["// Styles\nimport './VTreeviewItem.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\nimport { VListItemAction } from '@/components/VList'\nimport { makeVListItemProps, VListItem } from '@/components/VList/VListItem'\nimport { VProgressCircular } from '@/components/VProgressCircular'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { computed, inject, ref, toRaw } from 'vue'\nimport { EventProp, genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport { VTreeviewSymbol } from './shared'\nimport type { VListItemSlots } from '@/components/VList/VListItem'\n\nexport const makeVTreeviewItemProps = propsFactory({\n loading: Boolean,\n onToggleExpand: EventProp<[MouseEvent]>(),\n toggleIcon: IconValue,\n\n ...makeVListItemProps({ slim: true }),\n}, 'VTreeviewItem')\n\nexport const VTreeviewItem = genericComponent<VListItemSlots>()({\n name: 'VTreeviewItem',\n\n props: makeVTreeviewItemProps(),\n\n setup (props, { slots }) {\n const visibleIds = inject(VTreeviewSymbol, { visibleIds: ref() }).visibleIds\n\n const vListItemRef = ref<VListItem>()\n\n const isActivatableGroupActivator = computed(() =>\n (vListItemRef.value?.root.activatable.value) &&\n vListItemRef.value?.isGroupActivator\n )\n const vListItemRefIsClickable = computed(() => (\n vListItemRef.value?.link.isClickable.value ||\n (props.value != null && !!vListItemRef.value?.list)\n ))\n const isClickable = computed(() =>\n !props.disabled &&\n props.link !== false &&\n (props.link || vListItemRefIsClickable.value || isActivatableGroupActivator.value)\n )\n const isFiltered = computed(() => visibleIds.value && !visibleIds.value.has(toRaw(vListItemRef.value?.id)))\n\n function activateGroupActivator (e: MouseEvent | KeyboardEvent) {\n if (isClickable.value && isActivatableGroupActivator.value) {\n vListItemRef.value?.activate(!vListItemRef.value?.isActivated, e)\n }\n }\n\n useRender(() => {\n const listItemProps = omit(VListItem.filterProps(props), ['onClick'])\n const hasPrepend = slots.prepend || props.toggleIcon\n\n return (\n <VListItem\n ref={ vListItemRef }\n { ...listItemProps }\n active={ vListItemRef.value?.isActivated }\n class={[\n 'v-treeview-item',\n {\n 'v-treeview-item--activatable-group-activator': isActivatableGroupActivator.value,\n 'v-treeview-item--filtered': isFiltered.value,\n },\n props.class,\n ]}\n ripple={ false }\n onClick={ props.onClick ?? activateGroupActivator }\n >\n {{\n ...slots,\n prepend: hasPrepend ? slotProps => {\n return (\n <>\n <VListItemAction start={ false }>\n { props.toggleIcon
|
1
|
+
{"version":3,"file":"VTreeviewItem.mjs","names":["VBtn","VListItemAction","makeVListItemProps","VListItem","VProgressCircular","IconValue","computed","inject","ref","toRaw","EventProp","genericComponent","omit","propsFactory","useRender","VTreeviewSymbol","makeVTreeviewItemProps","loading","Boolean","onToggleExpand","toggleIcon","slim","VTreeviewItem","name","props","setup","_ref","slots","visibleIds","vListItemRef","isActivatableGroupActivator","value","root","activatable","isGroupActivator","vListItemRefIsClickable","link","isClickable","list","disabled","isFiltered","has","id","activateGroupActivator","e","activate","isActivated","listItemProps","filterProps","hasPrepend","prepend","_createVNode","_mergeProps","class","onClick","slotProps","_Fragment","default","loader","undefined"],"sources":["../../../src/labs/VTreeview/VTreeviewItem.tsx"],"sourcesContent":["// Styles\nimport './VTreeviewItem.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\nimport { VListItemAction } from '@/components/VList'\nimport { makeVListItemProps, VListItem } from '@/components/VList/VListItem'\nimport { VProgressCircular } from '@/components/VProgressCircular'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { computed, inject, ref, toRaw } from 'vue'\nimport { EventProp, genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport { VTreeviewSymbol } from './shared'\nimport type { VListItemSlots } from '@/components/VList/VListItem'\n\nexport const makeVTreeviewItemProps = propsFactory({\n loading: Boolean,\n onToggleExpand: EventProp<[MouseEvent]>(),\n toggleIcon: IconValue,\n\n ...makeVListItemProps({ slim: true }),\n}, 'VTreeviewItem')\n\nexport const VTreeviewItem = genericComponent<VListItemSlots>()({\n name: 'VTreeviewItem',\n\n props: makeVTreeviewItemProps(),\n\n setup (props, { slots }) {\n const visibleIds = inject(VTreeviewSymbol, { visibleIds: ref() }).visibleIds\n\n const vListItemRef = ref<VListItem>()\n\n const isActivatableGroupActivator = computed(() =>\n (vListItemRef.value?.root.activatable.value) &&\n vListItemRef.value?.isGroupActivator\n )\n const vListItemRefIsClickable = computed(() => (\n vListItemRef.value?.link.isClickable.value ||\n (props.value != null && !!vListItemRef.value?.list)\n ))\n const isClickable = computed(() =>\n !props.disabled &&\n props.link !== false &&\n (props.link || vListItemRefIsClickable.value || isActivatableGroupActivator.value)\n )\n const isFiltered = computed(() => visibleIds.value && !visibleIds.value.has(toRaw(vListItemRef.value?.id)))\n\n function activateGroupActivator (e: MouseEvent | KeyboardEvent) {\n if (isClickable.value && isActivatableGroupActivator.value) {\n vListItemRef.value?.activate(!vListItemRef.value?.isActivated, e)\n }\n }\n\n useRender(() => {\n const listItemProps = omit(VListItem.filterProps(props), ['onClick'])\n const hasPrepend = slots.prepend || props.toggleIcon\n\n return (\n <VListItem\n ref={ vListItemRef }\n { ...listItemProps }\n active={ vListItemRef.value?.isActivated }\n class={[\n 'v-treeview-item',\n {\n 'v-treeview-item--activatable-group-activator': isActivatableGroupActivator.value,\n 'v-treeview-item--filtered': isFiltered.value,\n },\n props.class,\n ]}\n ripple={ false }\n onClick={ props.onClick ?? activateGroupActivator }\n >\n {{\n ...slots,\n prepend: hasPrepend ? slotProps => {\n return (\n <>\n <VListItemAction start={ false }>\n { props.toggleIcon ? (\n <VBtn\n density=\"compact\"\n icon={ props.toggleIcon }\n loading={ props.loading }\n variant=\"text\"\n onClick={ props.onToggleExpand }\n >\n {{\n loader () {\n return (\n <VProgressCircular\n indeterminate=\"disable-shrink\"\n size=\"20\"\n width=\"2\"\n />\n )\n },\n }}\n </VBtn>\n ) : (\n <div class=\"v-treeview-item__level\" />\n )}\n </VListItemAction>\n\n { slots.prepend?.(slotProps) }\n </>\n )\n } : undefined,\n }}\n </VListItem>\n )\n })\n\n return {}\n },\n})\n\nexport type VTreeviewItem = InstanceType<typeof VTreeviewItem>\n"],"mappings":"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","ignoreList":[]}
|
@@ -2,23 +2,29 @@
|
|
2
2
|
@use './variables' as *
|
3
3
|
|
4
4
|
@include tools.layer('components')
|
5
|
-
.v-treeview-item
|
6
|
-
|
5
|
+
.v-treeview-item
|
6
|
+
--list-indent-size: #{$treeview-indent-size}
|
7
|
+
&.v-treeview-item--filtered
|
8
|
+
display: none
|
9
|
+
|
10
|
+
&__level
|
11
|
+
width: #{$treeview-indent-size}
|
12
|
+
|
13
|
+
.v-treeview--fluid &
|
14
|
+
width: 0
|
7
15
|
|
8
16
|
.v-treeview
|
9
|
-
|
17
|
+
&.v-list
|
18
|
+
--indent-padding: #{$treeview-indent-padding}
|
10
19
|
|
11
20
|
&.v-list--disabled .v-list-item__prepend
|
12
21
|
pointer-events: auto
|
13
22
|
|
14
23
|
.v-treeview-group.v-list-group
|
15
|
-
--list-indent-size:
|
24
|
+
--list-indent-size: 0px
|
16
25
|
|
17
|
-
.v-
|
18
|
-
|
26
|
+
& > .v-treeview-item__level
|
27
|
+
width: 0px
|
19
28
|
|
20
29
|
.v-list-group__items .v-list-item
|
21
|
-
padding-inline-start: calc(
|
22
|
-
|
23
|
-
.v-list-group__items .v-list-item.v-list-group__header
|
24
|
-
padding-inline-start: calc(#{$treeview-group-header-padding-inline-start} + var(--indent-padding)) !important
|
30
|
+
padding-inline-start: calc(var(--indent-padding)) !important
|
@@ -1,7 +1,4 @@
|
|
1
1
|
@use 'sass:map';
|
2
2
|
|
3
|
-
$treeview-
|
4
|
-
$treeview-
|
5
|
-
$treeview-item-padding-inline-start: 12px !default;
|
6
|
-
$treeview-item-prepend-padding-inline-start: 44px !default;
|
7
|
-
$treeview-group-header-padding-inline-start: 16px !default;
|
3
|
+
$treeview-indent-size: 28px !default; // 28px here to match the width of the expand toggle VBtn.
|
4
|
+
$treeview-indent-padding: 16px !default;
|
@@ -192,6 +192,7 @@ declare const VTreeview: {
|
|
192
192
|
selectStrategy: SelectStrategyProp;
|
193
193
|
collapseIcon: IconValue;
|
194
194
|
expandIcon: IconValue;
|
195
|
+
fluid: boolean;
|
195
196
|
returnObject: boolean;
|
196
197
|
filterMode: FilterMode;
|
197
198
|
noFilter: boolean;
|
@@ -290,6 +291,7 @@ declare const VTreeview: {
|
|
290
291
|
selectStrategy: SelectStrategyProp;
|
291
292
|
collapseIcon: IconValue;
|
292
293
|
expandIcon: IconValue;
|
294
|
+
fluid: boolean;
|
293
295
|
returnObject: boolean;
|
294
296
|
filterMode: FilterMode;
|
295
297
|
noFilter: boolean;
|
@@ -374,6 +376,7 @@ declare const VTreeview: {
|
|
374
376
|
selectStrategy: SelectStrategyProp;
|
375
377
|
collapseIcon: IconValue;
|
376
378
|
expandIcon: IconValue;
|
379
|
+
fluid: boolean;
|
377
380
|
returnObject: boolean;
|
378
381
|
filterMode: FilterMode;
|
379
382
|
noFilter: boolean;
|
@@ -435,6 +438,7 @@ declare const VTreeview: {
|
|
435
438
|
selectStrategy: SelectStrategyProp;
|
436
439
|
collapseIcon: IconValue;
|
437
440
|
expandIcon: IconValue;
|
441
|
+
fluid: boolean;
|
438
442
|
returnObject: boolean;
|
439
443
|
filterMode: FilterMode;
|
440
444
|
noFilter: boolean;
|
@@ -519,6 +523,7 @@ declare const VTreeview: {
|
|
519
523
|
selectStrategy: SelectStrategyProp;
|
520
524
|
collapseIcon: IconValue;
|
521
525
|
expandIcon: IconValue;
|
526
|
+
fluid: boolean;
|
522
527
|
returnObject: boolean;
|
523
528
|
filterMode: FilterMode;
|
524
529
|
noFilter: boolean;
|
@@ -551,6 +556,7 @@ declare const VTreeview: {
|
|
551
556
|
selectStrategy: SelectStrategyProp;
|
552
557
|
collapseIcon: IconValue;
|
553
558
|
expandIcon: IconValue;
|
559
|
+
fluid: boolean;
|
554
560
|
returnObject: boolean;
|
555
561
|
filterMode: FilterMode;
|
556
562
|
noFilter: boolean;
|
@@ -650,6 +656,7 @@ declare const VTreeview: {
|
|
650
656
|
selectStrategy: SelectStrategyProp;
|
651
657
|
collapseIcon: IconValue;
|
652
658
|
expandIcon: IconValue;
|
659
|
+
fluid: boolean;
|
653
660
|
returnObject: boolean;
|
654
661
|
filterMode: FilterMode;
|
655
662
|
noFilter: boolean;
|
@@ -826,6 +833,7 @@ declare const VTreeview: {
|
|
826
833
|
default: string;
|
827
834
|
};
|
828
835
|
noFilter: BooleanConstructor;
|
836
|
+
fluid: BooleanConstructor;
|
829
837
|
openAll: BooleanConstructor;
|
830
838
|
search: StringConstructor;
|
831
839
|
}, vue.ExtractPropTypes<{
|
@@ -965,6 +973,7 @@ declare const VTreeview: {
|
|
965
973
|
default: string;
|
966
974
|
};
|
967
975
|
noFilter: BooleanConstructor;
|
976
|
+
fluid: BooleanConstructor;
|
968
977
|
openAll: BooleanConstructor;
|
969
978
|
search: StringConstructor;
|
970
979
|
}>>;
|
@@ -17125,6 +17125,7 @@ declare const VTreeview: {
|
|
17125
17125
|
selectStrategy: SelectStrategyProp;
|
17126
17126
|
collapseIcon: IconValue;
|
17127
17127
|
expandIcon: IconValue;
|
17128
|
+
fluid: boolean;
|
17128
17129
|
returnObject: boolean;
|
17129
17130
|
filterMode: FilterMode;
|
17130
17131
|
noFilter: boolean;
|
@@ -17223,6 +17224,7 @@ declare const VTreeview: {
|
|
17223
17224
|
selectStrategy: SelectStrategyProp;
|
17224
17225
|
collapseIcon: IconValue;
|
17225
17226
|
expandIcon: IconValue;
|
17227
|
+
fluid: boolean;
|
17226
17228
|
returnObject: boolean;
|
17227
17229
|
filterMode: FilterMode;
|
17228
17230
|
noFilter: boolean;
|
@@ -17307,6 +17309,7 @@ declare const VTreeview: {
|
|
17307
17309
|
selectStrategy: SelectStrategyProp;
|
17308
17310
|
collapseIcon: IconValue;
|
17309
17311
|
expandIcon: IconValue;
|
17312
|
+
fluid: boolean;
|
17310
17313
|
returnObject: boolean;
|
17311
17314
|
filterMode: FilterMode;
|
17312
17315
|
noFilter: boolean;
|
@@ -17368,6 +17371,7 @@ declare const VTreeview: {
|
|
17368
17371
|
selectStrategy: SelectStrategyProp;
|
17369
17372
|
collapseIcon: IconValue;
|
17370
17373
|
expandIcon: IconValue;
|
17374
|
+
fluid: boolean;
|
17371
17375
|
returnObject: boolean;
|
17372
17376
|
filterMode: FilterMode;
|
17373
17377
|
noFilter: boolean;
|
@@ -17452,6 +17456,7 @@ declare const VTreeview: {
|
|
17452
17456
|
selectStrategy: SelectStrategyProp;
|
17453
17457
|
collapseIcon: IconValue;
|
17454
17458
|
expandIcon: IconValue;
|
17459
|
+
fluid: boolean;
|
17455
17460
|
returnObject: boolean;
|
17456
17461
|
filterMode: FilterMode;
|
17457
17462
|
noFilter: boolean;
|
@@ -17484,6 +17489,7 @@ declare const VTreeview: {
|
|
17484
17489
|
selectStrategy: SelectStrategyProp;
|
17485
17490
|
collapseIcon: IconValue;
|
17486
17491
|
expandIcon: IconValue;
|
17492
|
+
fluid: boolean;
|
17487
17493
|
returnObject: boolean;
|
17488
17494
|
filterMode: FilterMode;
|
17489
17495
|
noFilter: boolean;
|
@@ -17583,6 +17589,7 @@ declare const VTreeview: {
|
|
17583
17589
|
selectStrategy: SelectStrategyProp;
|
17584
17590
|
collapseIcon: IconValue;
|
17585
17591
|
expandIcon: IconValue;
|
17592
|
+
fluid: boolean;
|
17586
17593
|
returnObject: boolean;
|
17587
17594
|
filterMode: FilterMode;
|
17588
17595
|
noFilter: boolean;
|
@@ -17759,6 +17766,7 @@ declare const VTreeview: {
|
|
17759
17766
|
default: string;
|
17760
17767
|
};
|
17761
17768
|
noFilter: BooleanConstructor;
|
17769
|
+
fluid: BooleanConstructor;
|
17762
17770
|
openAll: BooleanConstructor;
|
17763
17771
|
search: StringConstructor;
|
17764
17772
|
}, vue.ExtractPropTypes<{
|
@@ -17898,6 +17906,7 @@ declare const VTreeview: {
|
|
17898
17906
|
default: string;
|
17899
17907
|
};
|
17900
17908
|
noFilter: BooleanConstructor;
|
17909
|
+
fluid: BooleanConstructor;
|
17901
17910
|
openAll: BooleanConstructor;
|
17902
17911
|
search: StringConstructor;
|
17903
17912
|
}>>;
|
package/lib/locale/ja.mjs
CHANGED
@@ -1,11 +1,11 @@
|
|
1
1
|
export default {
|
2
2
|
badge: 'バッジ',
|
3
|
-
open: '
|
3
|
+
open: '開く',
|
4
4
|
close: '閉じる',
|
5
|
-
dismiss: '
|
5
|
+
dismiss: '閉じる',
|
6
6
|
confirmEdit: {
|
7
7
|
ok: 'OK',
|
8
|
-
cancel: '
|
8
|
+
cancel: 'キャンセル'
|
9
9
|
},
|
10
10
|
dataIterator: {
|
11
11
|
noResultsText: '検索結果が見つかりません。',
|
@@ -36,15 +36,15 @@ export default {
|
|
36
36
|
divider: 'to'
|
37
37
|
},
|
38
38
|
datePicker: {
|
39
|
-
itemsSelected: '{0}
|
39
|
+
itemsSelected: '{0} 選択済',
|
40
40
|
range: {
|
41
41
|
title: 'Select dates',
|
42
42
|
header: 'Enter dates'
|
43
43
|
},
|
44
|
-
title: '
|
45
|
-
header: '
|
44
|
+
title: '日付を選択',
|
45
|
+
header: '日付を入力',
|
46
46
|
input: {
|
47
|
-
placeholder: '
|
47
|
+
placeholder: '日付を入力'
|
48
48
|
}
|
49
49
|
},
|
50
50
|
noDataText: 'データはありません。',
|
@@ -57,27 +57,27 @@ export default {
|
|
57
57
|
},
|
58
58
|
calendar: {
|
59
59
|
moreEvents: 'さらに{0}',
|
60
|
-
today: '
|
60
|
+
today: '今日'
|
61
61
|
},
|
62
62
|
input: {
|
63
|
-
clear: '
|
63
|
+
clear: 'クリア {0}',
|
64
64
|
prependAction: '{0} prepended action',
|
65
65
|
appendAction: '{0} appended action',
|
66
|
-
otp: '
|
66
|
+
otp: '{0}番目のワンタイムパスワードを入力してください'
|
67
67
|
},
|
68
68
|
fileInput: {
|
69
69
|
counter: '{0} ファイル',
|
70
70
|
counterSize: '{0} ファイル (合計 {1})'
|
71
71
|
},
|
72
72
|
fileUpload: {
|
73
|
-
title: '
|
74
|
-
divider: '
|
75
|
-
browse: '
|
73
|
+
title: 'ここにファイルをドラッグ&ドロップ',
|
74
|
+
divider: 'または',
|
75
|
+
browse: 'ファイルを選択'
|
76
76
|
},
|
77
77
|
timePicker: {
|
78
78
|
am: 'AM',
|
79
79
|
pm: 'PM',
|
80
|
-
title: '
|
80
|
+
title: '時間を選択'
|
81
81
|
},
|
82
82
|
pagination: {
|
83
83
|
ariaLabel: {
|
@@ -91,18 +91,18 @@ export default {
|
|
91
91
|
}
|
92
92
|
},
|
93
93
|
stepper: {
|
94
|
-
next: '
|
95
|
-
prev: '
|
94
|
+
next: '次へ',
|
95
|
+
prev: '前へ'
|
96
96
|
},
|
97
97
|
rating: {
|
98
98
|
ariaLabel: {
|
99
99
|
item: '評価 {1} のうち {0}'
|
100
100
|
}
|
101
101
|
},
|
102
|
-
loading: '
|
102
|
+
loading: 'ロード中...',
|
103
103
|
infiniteScroll: {
|
104
|
-
loadMore: '
|
105
|
-
empty: '
|
104
|
+
loadMore: 'さらに読み込む',
|
105
|
+
empty: 'データがありません'
|
106
106
|
}
|
107
107
|
};
|
108
108
|
//# sourceMappingURL=ja.mjs.map
|
package/lib/locale/ja.mjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ja.mjs","names":["badge","open","close","dismiss","confirmEdit","ok","cancel","dataIterator","noResultsText","loadingText","dataTable","itemsPerPageText","ariaLabel","sortDescending","sortAscending","sortNone","activateNone","activateDescending","activateAscending","sortBy","dataFooter","itemsPerPageAll","nextPage","prevPage","firstPage","lastPage","pageText","dateRangeInput","divider","datePicker","itemsSelected","range","title","header","input","placeholder","noDataText","carousel","prev","next","delimiter","calendar","moreEvents","today","clear","prependAction","appendAction","otp","fileInput","counter","counterSize","fileUpload","browse","timePicker","am","pm","pagination","root","previous","page","currentPage","first","last","stepper","rating","item","loading","infiniteScroll","loadMore","empty"],"sources":["../../src/locale/ja.ts"],"sourcesContent":["export default {\n badge: 'バッジ',\n open: '
|
1
|
+
{"version":3,"file":"ja.mjs","names":["badge","open","close","dismiss","confirmEdit","ok","cancel","dataIterator","noResultsText","loadingText","dataTable","itemsPerPageText","ariaLabel","sortDescending","sortAscending","sortNone","activateNone","activateDescending","activateAscending","sortBy","dataFooter","itemsPerPageAll","nextPage","prevPage","firstPage","lastPage","pageText","dateRangeInput","divider","datePicker","itemsSelected","range","title","header","input","placeholder","noDataText","carousel","prev","next","delimiter","calendar","moreEvents","today","clear","prependAction","appendAction","otp","fileInput","counter","counterSize","fileUpload","browse","timePicker","am","pm","pagination","root","previous","page","currentPage","first","last","stepper","rating","item","loading","infiniteScroll","loadMore","empty"],"sources":["../../src/locale/ja.ts"],"sourcesContent":["export default {\n badge: 'バッジ',\n open: '開く',\n close: '閉じる',\n dismiss: '閉じる',\n confirmEdit: {\n ok: 'OK',\n cancel: 'キャンセル',\n },\n dataIterator: {\n noResultsText: '検索結果が見つかりません。',\n loadingText: '項目をロード中です...',\n },\n dataTable: {\n itemsPerPageText: '1ページあたりの行数:',\n ariaLabel: {\n sortDescending: '降順の並び替え。',\n sortAscending: '昇順の並び替え。',\n sortNone: 'ソートされていません。',\n activateNone: 'ソートを削除するには有効にしてください。',\n activateDescending: '降順の並び替えのためには有効にしてください。',\n activateAscending: '昇順のソートのためには有効にしてください。',\n },\n sortBy: 'ソート方式',\n },\n dataFooter: {\n itemsPerPageText: '1ページあたりの件数:',\n itemsPerPageAll: 'すべて',\n nextPage: '次のページ',\n prevPage: '前のページ',\n firstPage: '最初のページ',\n lastPage: '最後のページ',\n pageText: '{0}-{1} 件目 / {2}件',\n },\n dateRangeInput: {\n divider: 'to',\n },\n datePicker: {\n itemsSelected: '{0} 選択済',\n range: {\n title: 'Select dates',\n header: 'Enter dates',\n },\n title: '日付を選択',\n header: '日付を入力',\n input: {\n placeholder: '日付を入力',\n },\n },\n noDataText: 'データはありません。',\n carousel: {\n prev: '前のビジュアル',\n next: '次のビジュアル',\n ariaLabel: {\n delimiter: 'カルーセルのスライド {0}件目 / {1}件',\n },\n },\n calendar: {\n moreEvents: 'さらに{0}',\n today: '今日',\n },\n input: {\n clear: 'クリア {0}',\n prependAction: '{0} prepended action',\n appendAction: '{0} appended action',\n otp: '{0}番目のワンタイムパスワードを入力してください',\n },\n fileInput: {\n counter: '{0} ファイル',\n counterSize: '{0} ファイル (合計 {1})',\n },\n fileUpload: {\n title: 'ここにファイルをドラッグ&ドロップ',\n divider: 'または',\n browse: 'ファイルを選択',\n },\n timePicker: {\n am: 'AM',\n pm: 'PM',\n title: '時間を選択',\n },\n pagination: {\n ariaLabel: {\n root: 'ページネーションナビゲーション',\n next: '次のページ',\n previous: '前のページ',\n page: '{0}ページ目に移動',\n currentPage: '現在のページ、ページ {0}',\n first: 'First page',\n last: 'Last page',\n },\n },\n stepper: {\n next: '次へ',\n prev: '前へ',\n },\n rating: {\n ariaLabel: {\n item: '評価 {1} のうち {0}',\n },\n },\n loading: 'ロード中...',\n infiniteScroll: {\n loadMore: 'さらに読み込む',\n empty: 'データがありません',\n },\n}\n"],"mappings":"AAAA,eAAe;EACbA,KAAK,EAAE,KAAK;EACZC,IAAI,EAAE,IAAI;EACVC,KAAK,EAAE,KAAK;EACZC,OAAO,EAAE,KAAK;EACdC,WAAW,EAAE;IACXC,EAAE,EAAE,IAAI;IACRC,MAAM,EAAE;EACV,CAAC;EACDC,YAAY,EAAE;IACZC,aAAa,EAAE,eAAe;IAC9BC,WAAW,EAAE;EACf,CAAC;EACDC,SAAS,EAAE;IACTC,gBAAgB,EAAE,aAAa;IAC/BC,SAAS,EAAE;MACTC,cAAc,EAAE,UAAU;MAC1BC,aAAa,EAAE,UAAU;MACzBC,QAAQ,EAAE,aAAa;MACvBC,YAAY,EAAE,sBAAsB;MACpCC,kBAAkB,EAAE,wBAAwB;MAC5CC,iBAAiB,EAAE;IACrB,CAAC;IACDC,MAAM,EAAE;EACV,CAAC;EACDC,UAAU,EAAE;IACVT,gBAAgB,EAAE,aAAa;IAC/BU,eAAe,EAAE,KAAK;IACtBC,QAAQ,EAAE,OAAO;IACjBC,QAAQ,EAAE,OAAO;IACjBC,SAAS,EAAE,QAAQ;IACnBC,QAAQ,EAAE,QAAQ;IAClBC,QAAQ,EAAE;EACZ,CAAC;EACDC,cAAc,EAAE;IACdC,OAAO,EAAE;EACX,CAAC;EACDC,UAAU,EAAE;IACVC,aAAa,EAAE,SAAS;IACxBC,KAAK,EAAE;MACLC,KAAK,EAAE,cAAc;MACrBC,MAAM,EAAE;IACV,CAAC;IACDD,KAAK,EAAE,OAAO;IACdC,MAAM,EAAE,OAAO;IACfC,KAAK,EAAE;MACLC,WAAW,EAAE;IACf;EACF,CAAC;EACDC,UAAU,EAAE,YAAY;EACxBC,QAAQ,EAAE;IACRC,IAAI,EAAE,SAAS;IACfC,IAAI,EAAE,SAAS;IACf3B,SAAS,EAAE;MACT4B,SAAS,EAAE;IACb;EACF,CAAC;EACDC,QAAQ,EAAE;IACRC,UAAU,EAAE,QAAQ;IACpBC,KAAK,EAAE;EACT,CAAC;EACDT,KAAK,EAAE;IACLU,KAAK,EAAE,SAAS;IAChBC,aAAa,EAAE,sBAAsB;IACrCC,YAAY,EAAE,qBAAqB;IACnCC,GAAG,EAAE;EACP,CAAC;EACDC,SAAS,EAAE;IACTC,OAAO,EAAE,UAAU;IACnBC,WAAW,EAAE;EACf,CAAC;EACDC,UAAU,EAAE;IACVnB,KAAK,EAAE,mBAAmB;IAC1BJ,OAAO,EAAE,KAAK;IACdwB,MAAM,EAAE;EACV,CAAC;EACDC,UAAU,EAAE;IACVC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRvB,KAAK,EAAE;EACT,CAAC;EACDwB,UAAU,EAAE;IACV5C,SAAS,EAAE;MACT6C,IAAI,EAAE,iBAAiB;MACvBlB,IAAI,EAAE,OAAO;MACbmB,QAAQ,EAAE,OAAO;MACjBC,IAAI,EAAE,YAAY;MAClBC,WAAW,EAAE,gBAAgB;MAC7BC,KAAK,EAAE,YAAY;MACnBC,IAAI,EAAE;IACR;EACF,CAAC;EACDC,OAAO,EAAE;IACPxB,IAAI,EAAE,IAAI;IACVD,IAAI,EAAE;EACR,CAAC;EACD0B,MAAM,EAAE;IACNpD,SAAS,EAAE;MACTqD,IAAI,EAAE;IACR;EACF,CAAC;EACDC,OAAO,EAAE,SAAS;EAClBC,cAAc,EAAE;IACdC,QAAQ,EAAE,SAAS;IACnBC,KAAK,EAAE;EACT;AACF,CAAC","ignoreList":[]}
|
@@ -10,7 +10,7 @@
|
|
10
10
|
// If the last key is a map already
|
11
11
|
// Warn the user we will be overriding it with $value
|
12
12
|
@if meta.type-of(list.nth($keys, -1)) == "map"
|
13
|
-
@warn "The last key you specified is a map; it will be
|
13
|
+
@warn "The last key you specified is a map; it will be override with `#{$value}`."
|
14
14
|
|
15
15
|
// If $keys is a single key
|
16
16
|
// Just merge and return
|
package/package.json
CHANGED