{"version":3,"file":"VChipGroup.mjs","names":["makeComponentProps","provideDefaults","makeGroupProps","useGroup","makeTagProps","makeThemeProps","provideTheme","makeVariantProps","toRef","deepEqual","genericComponent","propsFactory","useRender","VChipGroupSymbol","Symbol","for","makeVChipGroupProps","column","Boolean","filter","valueComparator","type","Function","default","selectedClass","variant","VChipGroup","name","props","emits","value","setup","_ref","slots","themeClasses","isSelected","select","next","prev","selected","VChip","color","disabled","_createVNode","tag","class","style"],"sources":["../../../src/components/VChipGroup/VChipGroup.tsx"],"sourcesContent":["// Styles\nimport './VChipGroup.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'\nimport { makeVariantProps } from '@/composables/variant'\n\n// Utilities\nimport { toRef } from 'vue'\nimport { deepEqual, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { GenericProps } from '@/util'\n\nexport const VChipGroupSymbol = Symbol.for('vuetify:v-chip-group')\n\nexport const makeVChipGroupProps = propsFactory({\n  column: Boolean,\n  filter: Boolean,\n  valueComparator: {\n    type: Function as PropType<typeof deepEqual>,\n    default: deepEqual,\n  },\n\n  ...makeComponentProps(),\n  ...makeGroupProps({ selectedClass: 'v-chip--selected' }),\n  ...makeTagProps(),\n  ...makeThemeProps(),\n  ...makeVariantProps({ variant: 'tonal' } as const),\n}, 'VChipGroup')\n\ntype VChipGroupSlots = {\n  default: {\n    isSelected: (id: number) => boolean\n    select: (id: number, value: boolean) => void\n    next: () => void\n    prev: () => void\n    selected: readonly number[]\n  }\n}\n\nexport const VChipGroup = genericComponent<new <T>(\n  props: {\n    modelValue?: T\n    'onUpdate:modelValue'?: (value: T) => void\n  },\n  slots: VChipGroupSlots,\n) => GenericProps<typeof props, typeof slots>>()({\n  name: 'VChipGroup',\n\n  props: makeVChipGroupProps(),\n\n  emits: {\n    'update:modelValue': (value: any) => true,\n  },\n\n  setup (props, { slots }) {\n    const { themeClasses } = provideTheme(props)\n    const { isSelected, select, next, prev, selected } = useGroup(props, VChipGroupSymbol)\n\n    provideDefaults({\n      VChip: {\n        color: toRef(props, 'color'),\n        disabled: toRef(props, 'disabled'),\n        filter: toRef(props, 'filter'),\n        variant: toRef(props, 'variant'),\n      },\n    })\n\n    useRender(() => (\n      <props.tag\n        class={[\n          'v-chip-group',\n          {\n            'v-chip-group--column': props.column,\n          },\n          themeClasses.value,\n          props.class,\n        ]}\n        style={ props.style }\n      >\n        { slots.default?.({\n          isSelected,\n          select,\n          next,\n          prev,\n          selected: selected.value,\n        })}\n      </props.tag>\n    ))\n\n    return {}\n  },\n})\n\nexport type VChipGroup = InstanceType<typeof VChipGroup>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,kBAAkB;AAAA,SAClBC,eAAe;AAAA,SACfC,cAAc,EAAEC,QAAQ;AAAA,SACxBC,YAAY;AAAA,SACZC,cAAc,EAAEC,YAAY;AAAA,SAC5BC,gBAAgB,yCAEzB;AACA,SAASC,KAAK,QAAQ,KAAK;AAAA,SAClBC,SAAS,EAAEC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS,gCAE7D;AAIA,OAAO,MAAMC,gBAAgB,GAAGC,MAAM,CAACC,GAAG,CAAC,sBAAsB,CAAC;AAElE,OAAO,MAAMC,mBAAmB,GAAGL,YAAY,CAAC;EAC9CM,MAAM,EAAEC,OAAO;EACfC,MAAM,EAAED,OAAO;EACfE,eAAe,EAAE;IACfC,IAAI,EAAEC,QAAsC;IAC5CC,OAAO,EAAEd;EACX,CAAC;EAED,GAAGT,kBAAkB,CAAC,CAAC;EACvB,GAAGE,cAAc,CAAC;IAAEsB,aAAa,EAAE;EAAmB,CAAC,CAAC;EACxD,GAAGpB,YAAY,CAAC,CAAC;EACjB,GAAGC,cAAc,CAAC,CAAC;EACnB,GAAGE,gBAAgB,CAAC;IAAEkB,OAAO,EAAE;EAAQ,CAAU;AACnD,CAAC,EAAE,YAAY,CAAC;AAYhB,OAAO,MAAMC,UAAU,GAAGhB,gBAAgB,CAMK,CAAC,CAAC;EAC/CiB,IAAI,EAAE,YAAY;EAElBC,KAAK,EAAEZ,mBAAmB,CAAC,CAAC;EAE5Ba,KAAK,EAAE;IACL,mBAAmB,EAAGC,KAAU,IAAK;EACvC,CAAC;EAEDC,KAAKA,CAAEH,KAAK,EAAAI,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAM;MAAEE;IAAa,CAAC,GAAG5B,YAAY,CAACsB,KAAK,CAAC;IAC5C,MAAM;MAAEO,UAAU;MAAEC,MAAM;MAAEC,IAAI;MAAEC,IAAI;MAAEC;IAAS,CAAC,GAAGpC,QAAQ,CAACyB,KAAK,EAAEf,gBAAgB,CAAC;IAEtFZ,eAAe,CAAC;MACduC,KAAK,EAAE;QACLC,KAAK,EAAEjC,KAAK,CAACoB,KAAK,EAAE,OAAO,CAAC;QAC5Bc,QAAQ,EAAElC,KAAK,CAACoB,KAAK,EAAE,UAAU,CAAC;QAClCT,MAAM,EAAEX,KAAK,CAACoB,KAAK,EAAE,QAAQ,CAAC;QAC9BH,OAAO,EAAEjB,KAAK,CAACoB,KAAK,EAAE,SAAS;MACjC;IACF,CAAC,CAAC;IAEFhB,SAAS,CAAC,MAAA+B,YAAA,CAAAf,KAAA,CAAAgB,GAAA;MAAA,SAEC,CACL,cAAc,EACd;QACE,sBAAsB,EAAEhB,KAAK,CAACX;MAChC,CAAC,EACDiB,YAAY,CAACJ,KAAK,EAClBF,KAAK,CAACiB,KAAK,CACZ;MAAA,SACOjB,KAAK,CAACkB;IAAK;MAAAvB,OAAA,EAAAA,CAAA,MAEjBU,KAAK,CAACV,OAAO,GAAG;QAChBY,UAAU;QACVC,MAAM;QACNC,IAAI;QACJC,IAAI;QACJC,QAAQ,EAAEA,QAAQ,CAACT;MACrB,CAAC,CAAC;IAAA,EAEL,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}