{"version":3,"file":"VExpansionPanels.mjs","names":["makeComponentProps","provideDefaults","makeGroupProps","useGroup","makeTagProps","makeThemeProps","provideTheme","computed","toRef","genericComponent","propsFactory","useRender","VExpansionPanelSymbol","Symbol","for","allowedVariants","makeVExpansionPanelsProps","color","String","variant","type","default","validator","v","includes","readonly","Boolean","VExpansionPanels","name","props","emits","val","setup","_ref","slots","themeClasses","variantClass","VExpansionPanel","VExpansionPanelTitle","_createVNode","tag","value","class","style"],"sources":["../../../src/components/VExpansionPanel/VExpansionPanels.tsx"],"sourcesContent":["// Styles\nimport './VExpansionPanel.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeGroupProps, useGroup } from '@/composables/group'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { InjectionKey, PropType } from 'vue'\nimport type { GroupItemProvide } from '@/composables/group'\n\nexport const VExpansionPanelSymbol: InjectionKey<GroupItemProvide> = Symbol.for('vuetify:v-expansion-panel')\n\nconst allowedVariants = ['default', 'accordion', 'inset', 'popout'] as const\n\ntype Variant = typeof allowedVariants[number]\n\nexport const makeVExpansionPanelsProps = propsFactory({\n  color: String,\n  variant: {\n    type: String as PropType<Variant>,\n    default: 'default',\n    validator: (v: any) => allowedVariants.includes(v),\n  },\n  readonly: Boolean,\n\n  ...makeComponentProps(),\n  ...makeGroupProps(),\n  ...makeTagProps(),\n  ...makeThemeProps(),\n}, 'VExpansionPanels')\n\nexport const VExpansionPanels = genericComponent()({\n  name: 'VExpansionPanels',\n\n  props: makeVExpansionPanelsProps(),\n\n  emits: {\n    'update:modelValue': (val: unknown) => true,\n  },\n\n  setup (props, { slots }) {\n    useGroup(props, VExpansionPanelSymbol)\n\n    const { themeClasses } = provideTheme(props)\n\n    const variantClass = computed(() => props.variant && `v-expansion-panels--variant-${props.variant}`)\n\n    provideDefaults({\n      VExpansionPanel: {\n        color: toRef(props, 'color'),\n      },\n      VExpansionPanelTitle: {\n        readonly: toRef(props, 'readonly'),\n      },\n    })\n\n    useRender(() => (\n      <props.tag\n        class={[\n          'v-expansion-panels',\n          themeClasses.value,\n          variantClass.value,\n          props.class,\n        ]}\n        style={ props.style }\n        v-slots={ slots }\n      />\n    ))\n\n    return {}\n  },\n})\n\nexport type VExpansionPanels = InstanceType<typeof VExpansionPanels>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,kBAAkB;AAAA,SAClBC,eAAe;AAAA,SACfC,cAAc,EAAEC,QAAQ;AAAA,SACxBC,YAAY;AAAA,SACZC,cAAc,EAAEC,YAAY,uCAErC;AACA,SAASC,QAAQ,EAAEC,KAAK,QAAQ,KAAK;AAAA,SAC5BC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS,gCAElD;AAIA,OAAO,MAAMC,qBAAqD,GAAGC,MAAM,CAACC,GAAG,CAAC,2BAA2B,CAAC;AAE5G,MAAMC,eAAe,GAAG,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,CAAU;AAI5E,OAAO,MAAMC,yBAAyB,GAAGN,YAAY,CAAC;EACpDO,KAAK,EAAEC,MAAM;EACbC,OAAO,EAAE;IACPC,IAAI,EAAEF,MAA2B;IACjCG,OAAO,EAAE,SAAS;IAClBC,SAAS,EAAGC,CAAM,IAAKR,eAAe,CAACS,QAAQ,CAACD,CAAC;EACnD,CAAC;EACDE,QAAQ,EAAEC,OAAO;EAEjB,GAAG1B,kBAAkB,EAAE;EACvB,GAAGE,cAAc,EAAE;EACnB,GAAGE,YAAY,EAAE;EACjB,GAAGC,cAAc;AACnB,CAAC,EAAE,kBAAkB,CAAC;AAEtB,OAAO,MAAMsB,gBAAgB,GAAGlB,gBAAgB,EAAE,CAAC;EACjDmB,IAAI,EAAE,kBAAkB;EAExBC,KAAK,EAAEb,yBAAyB,EAAE;EAElCc,KAAK,EAAE;IACL,mBAAmB,EAAGC,GAAY,IAAK;EACzC,CAAC;EAEDC,KAAKA,CAAEH,KAAK,EAAAI,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB9B,QAAQ,CAAC0B,KAAK,EAAEjB,qBAAqB,CAAC;IAEtC,MAAM;MAAEuB;IAAa,CAAC,GAAG7B,YAAY,CAACuB,KAAK,CAAC;IAE5C,MAAMO,YAAY,GAAG7B,QAAQ,CAAC,MAAMsB,KAAK,CAACV,OAAO,IAAK,+BAA8BU,KAAK,CAACV,OAAQ,EAAC,CAAC;IAEpGlB,eAAe,CAAC;MACdoC,eAAe,EAAE;QACfpB,KAAK,EAAET,KAAK,CAACqB,KAAK,EAAE,OAAO;MAC7B,CAAC;MACDS,oBAAoB,EAAE;QACpBb,QAAQ,EAAEjB,KAAK,CAACqB,KAAK,EAAE,UAAU;MACnC;IACF,CAAC,CAAC;IAEFlB,SAAS,CAAC,MAAA4B,YAAA,CAAAV,KAAA,CAAAW,GAAA;MAAA,SAEC,CACL,oBAAoB,EACpBL,YAAY,CAACM,KAAK,EAClBL,YAAY,CAACK,KAAK,EAClBZ,KAAK,CAACa,KAAK,CACZ;MAAA,SACOb,KAAK,CAACc;IAAK,GACTT,KAAK,CAElB,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}