UNPKG

vuetify

Version:

Vue Material Component Framework

1 lines 2.51 kB
{"version":3,"file":"VVirtualScrollItem.mjs","names":["useResizeObserver","useToggleScope","genericComponent","useRender","onUpdated","watch","VVirtualScrollItem","name","props","dynamicHeight","Boolean","emits","height","setup","emit","slots","resizeRef","contentRect","value","updateHeight","undefined","default"],"sources":["../../../src/labs/VVirtualScroll/VVirtualScrollItem.tsx"],"sourcesContent":["// Composables\nimport { useResizeObserver } from '@/composables/resizeObserver'\nimport { useToggleScope } from '@/composables/toggleScope'\n\n// Utilities\nimport { genericComponent, useRender } from '@/util'\nimport { onUpdated, watch } from 'vue'\n\nexport const VVirtualScrollItem = genericComponent()({\n name: 'VVirtualScrollItem',\n\n props: {\n dynamicHeight: Boolean,\n },\n\n emits: {\n 'update:height': (height: number) => true,\n },\n\n setup (props, { emit, slots }) {\n const { resizeRef, contentRect } = useResizeObserver()\n\n useToggleScope(() => props.dynamicHeight, () => {\n watch(() => contentRect.value?.height, height => {\n if (height != null) emit('update:height', height)\n })\n })\n\n function updateHeight () {\n if (props.dynamicHeight && contentRect.value) {\n emit('update:height', contentRect.value.height)\n }\n }\n\n onUpdated(updateHeight)\n\n useRender(() => (\n <div\n ref={ props.dynamicHeight ? resizeRef : undefined }\n class=\"v-virtual-scroll__item\"\n >\n { slots.default?.() }\n </div>\n ))\n },\n})\n"],"mappings":";AAAA;AAAA,SACSA,iBAAiB;AAAA,SACjBC,cAAc,6CAEvB;AAAA,SACSC,gBAAgB,EAAEC,SAAS;AACpC,SAASC,SAAS,EAAEC,KAAK,QAAQ,KAAK;AAEtC,OAAO,MAAMC,kBAAkB,GAAGJ,gBAAgB,EAAE,CAAC;EACnDK,IAAI,EAAE,oBAAoB;EAE1BC,KAAK,EAAE;IACLC,aAAa,EAAEC;EACjB,CAAC;EAEDC,KAAK,EAAE;IACL,eAAe,EAAGC,MAAc,IAAK;EACvC,CAAC;EAEDC,KAAK,CAAEL,KAAK,QAAmB;IAAA,IAAjB;MAAEM,IAAI;MAAEC;IAAM,CAAC;IAC3B,MAAM;MAAEC,SAAS;MAAEC;IAAY,CAAC,GAAGjB,iBAAiB,EAAE;IAEtDC,cAAc,CAAC,MAAMO,KAAK,CAACC,aAAa,EAAE,MAAM;MAC9CJ,KAAK,CAAC,MAAMY,WAAW,CAACC,KAAK,EAAEN,MAAM,EAAEA,MAAM,IAAI;QAC/C,IAAIA,MAAM,IAAI,IAAI,EAAEE,IAAI,CAAC,eAAe,EAAEF,MAAM,CAAC;MACnD,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,SAASO,YAAY,GAAI;MACvB,IAAIX,KAAK,CAACC,aAAa,IAAIQ,WAAW,CAACC,KAAK,EAAE;QAC5CJ,IAAI,CAAC,eAAe,EAAEG,WAAW,CAACC,KAAK,CAACN,MAAM,CAAC;MACjD;IACF;IAEAR,SAAS,CAACe,YAAY,CAAC;IAEvBhB,SAAS,CAAC;MAAA,OAEAK,KAAK,CAACC,aAAa,GAAGO,SAAS,GAAGI,SAAS;MAAA,SAC3C;IAAwB,IAE5BL,KAAK,CAACM,OAAO,IAAI,EAEtB,CAAC;EACJ;AACF,CAAC,CAAC"}