vuetify
Version:
Vue Material Component Framework
1 lines • 4.02 kB
Source Map (JSON)
{"version":3,"file":"VTable.mjs","names":["makeComponentProps","makeDensityProps","useDensity","makeTagProps","makeThemeProps","provideTheme","convertToUnit","genericComponent","propsFactory","useRender","makeVTableProps","fixedHeader","Boolean","fixedFooter","height","Number","String","hover","VTable","name","props","setup","_ref","slots","themeClasses","densityClasses","_createVNode","tag","top","bottom","value","class","style","default","wrapper"],"sources":["../../../src/components/VTable/VTable.tsx"],"sourcesContent":["// Styles\nimport './VTable.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { convertToUnit, genericComponent, propsFactory, useRender } from '@/util'\n\nexport type VTableSlots = {\n default: never\n top: never\n bottom: never\n wrapper: never\n}\n\nexport const makeVTableProps = propsFactory({\n fixedHeader: Boolean,\n fixedFooter: Boolean,\n height: [Number, String],\n hover: Boolean,\n\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n}, 'VTable')\n\nexport const VTable = genericComponent<VTableSlots>()({\n name: 'VTable',\n\n props: makeVTableProps(),\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n const { densityClasses } = useDensity(props)\n\n useRender(() => (\n <props.tag\n class={[\n 'v-table',\n {\n 'v-table--fixed-height': !!props.height,\n 'v-table--fixed-header': props.fixedHeader,\n 'v-table--fixed-footer': props.fixedFooter,\n 'v-table--has-top': !!slots.top,\n 'v-table--has-bottom': !!slots.bottom,\n 'v-table--hover': props.hover,\n },\n themeClasses.value,\n densityClasses.value,\n props.class,\n ]}\n style={ props.style }\n >\n { slots.top?.() }\n\n { slots.default ? (\n <div\n class=\"v-table__wrapper\"\n style={{ height: convertToUnit(props.height) }}\n >\n <table>\n { slots.default() }\n </table>\n </div>\n ) : slots.wrapper?.()}\n\n { slots.bottom?.() }\n </props.tag>\n ))\n\n return {}\n },\n})\n\nexport type VTable = InstanceType<typeof VTable>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,kBAAkB;AAAA,SAClBC,gBAAgB,EAAEC,UAAU;AAAA,SAC5BC,YAAY;AAAA,SACZC,cAAc,EAAEC,YAAY,uCAErC;AAAA,SACSC,aAAa,EAAEC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS;AASjE,OAAO,MAAMC,eAAe,GAAGF,YAAY,CAAC;EAC1CG,WAAW,EAAEC,OAAO;EACpBC,WAAW,EAAED,OAAO;EACpBE,MAAM,EAAE,CAACC,MAAM,EAAEC,MAAM,CAAC;EACxBC,KAAK,EAAEL,OAAO;EAEd,GAAGZ,kBAAkB,EAAE;EACvB,GAAGC,gBAAgB,EAAE;EACrB,GAAGE,YAAY,EAAE;EACjB,GAAGC,cAAc;AACnB,CAAC,EAAE,QAAQ,CAAC;AAEZ,OAAO,MAAMc,MAAM,GAAGX,gBAAgB,EAAe,CAAC;EACpDY,IAAI,EAAE,QAAQ;EAEdC,KAAK,EAAEV,eAAe,EAAE;EAExBW,KAAKA,CAAED,KAAK,EAAAE,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAM;MAAEE;IAAa,CAAC,GAAGnB,YAAY,CAACe,KAAK,CAAC;IAC5C,MAAM;MAAEK;IAAe,CAAC,GAAGvB,UAAU,CAACkB,KAAK,CAAC;IAE5CX,SAAS,CAAC,MAAAiB,YAAA,CAAAN,KAAA,CAAAO,GAAA;MAAA,SAEC,CACL,SAAS,EACT;QACE,uBAAuB,EAAE,CAAC,CAACP,KAAK,CAACN,MAAM;QACvC,uBAAuB,EAAEM,KAAK,CAACT,WAAW;QAC1C,uBAAuB,EAAES,KAAK,CAACP,WAAW;QAC1C,kBAAkB,EAAE,CAAC,CAACU,KAAK,CAACK,GAAG;QAC/B,qBAAqB,EAAE,CAAC,CAACL,KAAK,CAACM,MAAM;QACrC,gBAAgB,EAAET,KAAK,CAACH;MAC1B,CAAC,EACDO,YAAY,CAACM,KAAK,EAClBL,cAAc,CAACK,KAAK,EACpBV,KAAK,CAACW,KAAK,CACZ;MAAA,SACOX,KAAK,CAACY;IAAK;MAAAC,OAAA,EAAAA,CAAA,MAEjBV,KAAK,CAACK,GAAG,IAAI,EAEbL,KAAK,CAACU,OAAO,GAAAP,YAAA;QAAA,SAEL,kBAAkB;QAAA,SACjB;UAAEZ,MAAM,EAAER,aAAa,CAACc,KAAK,CAACN,MAAM;QAAE;MAAC,IAAAY,YAAA,iBAG1CH,KAAK,CAACU,OAAO,EAAE,OAGnBV,KAAK,CAACW,OAAO,IAAI,EAEnBX,KAAK,CAACM,MAAM,IAAI;IAAA,EAErB,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}