UNPKG

vuetify

Version:

Vue Material Component Framework

1 lines 1.71 kB
{"version":3,"file":"VThemeProvider.mjs","names":["makeThemeProps","provideTheme","makeTagProps","genericComponent","VThemeProvider","name","props","withBackground","Boolean","setup","slots","themeClasses","default","value"],"sources":["../../../src/components/VThemeProvider/VThemeProvider.tsx"],"sourcesContent":["// Styles\nimport './VThemeProvider.sass'\n\n// Composables\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { makeTagProps } from '@/composables/tag'\n\n// Utilities\nimport { genericComponent } from '@/util'\n\nexport const VThemeProvider = genericComponent()({\n name: 'VThemeProvider',\n\n props: {\n withBackground: Boolean,\n\n ...makeThemeProps(),\n ...makeTagProps(),\n },\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n\n return () => {\n if (!props.withBackground) return slots.default?.()\n\n return (\n <props.tag class={['v-theme-provider', themeClasses.value]}>\n { slots.default?.() }\n </props.tag>\n )\n }\n },\n})\n\nexport type VThemeProvider = InstanceType<typeof VThemeProvider>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,cAAc,EAAEC,YAAY;AAAA,SAC5BC,YAAY,qCAErB;AAAA,SACSC,gBAAgB;AAEzB,OAAO,MAAMC,cAAc,GAAGD,gBAAgB,EAAE,CAAC;EAC/CE,IAAI,EAAE,gBAAgB;EAEtBC,KAAK,EAAE;IACLC,cAAc,EAAEC,OAAO;IAEvB,GAAGR,cAAc,EAAE;IACnB,GAAGE,YAAY;EACjB,CAAC;EAEDO,KAAK,CAAEH,KAAK,QAAa;IAAA,IAAX;MAAEI;IAAM,CAAC;IACrB,MAAM;MAAEC;IAAa,CAAC,GAAGV,YAAY,CAACK,KAAK,CAAC;IAE5C,OAAO,MAAM;MACX,IAAI,CAACA,KAAK,CAACC,cAAc,EAAE,OAAOG,KAAK,CAACE,OAAO,IAAI;MAEnD;QAAA,SACoB,CAAC,kBAAkB,EAAED,YAAY,CAACE,KAAK;MAAC;QAAA,gBACtDH,KAAK,CAACE,OAAO,IAAI;MAAA;IAGzB,CAAC;EACH;AACF,CAAC,CAAC"}