Vulture/VApp/node_modules/vuetify/lib/components/VDataTable/VDataTableGroupHeaderRow.mjs.map

1 line
5.7 KiB
Plaintext

{"version":3,"file":"VDataTableGroupHeaderRow.mjs","names":["VDataTableColumn","VBtn","VCheckboxBtn","useGroupBy","useHeaders","useSelection","computed","genericComponent","propsFactory","makeVDataTableGroupHeaderRowProps","item","type","Object","required","VDataTableGroupHeaderRow","name","props","setup","_ref","slots","isGroupOpen","toggleGroup","extractRows","isSelected","isSomeSelected","select","columns","rows","_createVNode","depth","value","map","column","key","icon","onClick","count","length","default","_createTextVNode","modelValue","indeterminate","selectGroup","v"],"sources":["../../../src/components/VDataTable/VDataTableGroupHeaderRow.tsx"],"sourcesContent":["// Components\nimport { VDataTableColumn } from './VDataTableColumn'\nimport { VBtn } from '@/components/VBtn'\nimport { VCheckboxBtn } from '@/components/VCheckbox'\n\n// Composables\nimport { useGroupBy } from './composables/group'\nimport { useHeaders } from './composables/headers'\nimport { useSelection } from './composables/select'\n\n// Utilities\nimport { computed } from 'vue'\nimport { genericComponent, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { Group } from './composables/group'\n\nexport type VDataTableGroupHeaderRowSlots = {\n 'data-table-group': { item: Group, count: number, props: Record<string, unknown> }\n 'data-table-select': { props: Record<string, unknown> }\n}\n\nexport const makeVDataTableGroupHeaderRowProps = propsFactory({\n item: {\n type: Object as PropType<Group>,\n required: true,\n },\n}, 'VDataTableGroupHeaderRow')\n\nexport const VDataTableGroupHeaderRow = genericComponent<VDataTableGroupHeaderRowSlots>()({\n name: 'VDataTableGroupHeaderRow',\n\n props: makeVDataTableGroupHeaderRowProps(),\n\n setup (props, { slots }) {\n const { isGroupOpen, toggleGroup, extractRows } = useGroupBy()\n const { isSelected, isSomeSelected, select } = useSelection()\n const { columns } = useHeaders()\n\n const rows = computed(() => {\n return extractRows([props.item])\n })\n\n return () => (\n <tr\n class=\"v-data-table-group-header-row\"\n style={{\n '--v-data-table-group-header-row-depth': props.item.depth,\n }}\n >\n { columns.value.map(column => {\n if (column.key === 'data-table-group') {\n const icon = isGroupOpen(props.item) ? '$expand' : '$next'\n const onClick = () => toggleGroup(props.item)\n\n return slots['data-table-group']?.({ item: props.item, count: rows.value.length, props: { icon, onClick } }) ?? (\n <VDataTableColumn class=\"v-data-table-group-header-row__column\">\n <VBtn\n size=\"small\"\n variant=\"text\"\n icon={ icon }\n onClick={ onClick }\n />\n <span>{ props.item.value }</span>\n <span>({ rows.value.length })</span>\n </VDataTableColumn>\n )\n }\n\n if (column.key === 'data-table-select') {\n const modelValue = isSelected(rows.value)\n const indeterminate = isSomeSelected(rows.value) && !modelValue\n const selectGroup = (v: boolean) => select(rows.value, v)\n return slots['data-table-select']?.({ props: { modelValue, indeterminate, 'onUpdate:modelValue': selectGroup } }) ?? (\n <td>\n <VCheckboxBtn\n modelValue={ modelValue }\n indeterminate={ indeterminate }\n onUpdate:modelValue={ selectGroup }\n />\n </td>\n )\n }\n\n return <td />\n })}\n </tr>\n )\n },\n})\n"],"mappings":"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"}