UNPKG

vuetify

Version:

Vue Material Component Framework

1 lines 2.96 kB
{"version":3,"file":"VBtnToggle.mjs","names":["filterVBtnGroupProps","makeVBtnGroupProps","VBtnGroup","makeGroupProps","useGroup","genericComponent","useRender","VBtnToggleSymbol","Symbol","for","VBtnToggle","name","props","emits","value","setup","slots","isSelected","next","prev","select","selected","btnGroupProps","default"],"sources":["../../../src/components/VBtnToggle/VBtnToggle.tsx"],"sourcesContent":["// Styles\nimport './VBtnToggle.sass'\n\n// Components\nimport { filterVBtnGroupProps, makeVBtnGroupProps, VBtnGroup } from '@/components/VBtnGroup/VBtnGroup'\n\n// Composables\nimport { makeGroupProps, useGroup } from '@/composables/group'\n\n// Utility\nimport { genericComponent, useRender } from '@/util'\n\n// Types\nimport type { InjectionKey } from 'vue'\nimport type { GroupProvide } from '@/composables/group'\n\nexport type BtnToggleSlotProps = 'isSelected' | 'select' | 'selected' | 'next' | 'prev'\nexport interface DefaultBtnToggleSlot extends Pick<GroupProvide, BtnToggleSlotProps> {}\n\nexport const VBtnToggleSymbol: InjectionKey<GroupProvide> = Symbol.for('vuetify:v-btn-toggle')\n\ntype VBtnToggleSlots = {\n default: [DefaultBtnToggleSlot]\n}\n\nexport const VBtnToggle = genericComponent<VBtnToggleSlots>()({\n name: 'VBtnToggle',\n\n props: {\n ...makeVBtnGroupProps(),\n ...makeGroupProps(),\n },\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const { isSelected, next, prev, select, selected } = useGroup(props, VBtnToggleSymbol)\n\n useRender(() => {\n const [btnGroupProps] = filterVBtnGroupProps(props)\n\n return (\n <VBtnGroup\n class=\"v-btn-toggle\"\n { ...btnGroupProps }\n >\n { slots.default?.({\n isSelected,\n next,\n prev,\n select,\n selected,\n } as DefaultBtnToggleSlot) }\n </VBtnGroup>\n )\n })\n\n return {\n next,\n prev,\n select,\n }\n },\n})\n\nexport type VBtnToggle = InstanceType<typeof VBtnToggle>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,oBAAoB,EAAEC,kBAAkB,EAAEC,SAAS,sCAE5D;AAAA,SACSC,cAAc,EAAEC,QAAQ,uCAEjC;AAAA,SACSC,gBAAgB,EAAEC,SAAS,gCAEpC;AAOA,OAAO,MAAMC,gBAA4C,GAAGC,MAAM,CAACC,GAAG,CAAC,sBAAsB,CAAC;AAM9F,OAAO,MAAMC,UAAU,GAAGL,gBAAgB,EAAmB,CAAC;EAC5DM,IAAI,EAAE,YAAY;EAElBC,KAAK,EAAE;IACL,GAAGX,kBAAkB,EAAE;IACvB,GAAGE,cAAc;EACnB,CAAC;EAEDU,KAAK,EAAE;IACL,mBAAmB,EAAGC,KAAU,IAAK;EACvC,CAAC;EAEDC,KAAK,CAAEH,KAAK,QAAa;IAAA,IAAX;MAAEI;IAAM,CAAC;IACrB,MAAM;MAAEC,UAAU;MAAEC,IAAI;MAAEC,IAAI;MAAEC,MAAM;MAAEC;IAAS,CAAC,GAAGjB,QAAQ,CAACQ,KAAK,EAAEL,gBAAgB,CAAC;IAEtFD,SAAS,CAAC,MAAM;MACd,MAAM,CAACgB,aAAa,CAAC,GAAGtB,oBAAoB,CAACY,KAAK,CAAC;MAEnD;QAAA,SAEU;MAAc,GACfU,aAAa;QAAA,gBAEhBN,KAAK,CAACO,OAAO,GAAG;UAChBN,UAAU;UACVC,IAAI;UACJC,IAAI;UACJC,MAAM;UACNC;QACF,CAAC,CAAyB;MAAA;IAGhC,CAAC,CAAC;IAEF,OAAO;MACLH,IAAI;MACJC,IAAI;MACJC;IACF,CAAC;EACH;AACF,CAAC,CAAC"}