primevue
Version:
PrimeVue is an open source UI library for Vue featuring a rich set of 80+ components, a theme designer, various theme alternatives such as Material, Bootstrap, Tailwind, premium templates and professional support. In addition, it integrates with PrimeBloc
1 lines • 24.9 kB
Source Map (JSON)
{"version":3,"file":"index.mjs","sources":["../../src/accordion/BaseAccordion.vue","../../src/accordion/Accordion.vue","../../src/accordion/Accordion.vue?vue&type=template&id=3af1c6c1&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport AccordionStyle from 'primevue/accordion/style';\n\nexport default {\n name: 'BaseAccordion',\n extends: BaseComponent,\n props: {\n value: {\n type: [String, Number, Array],\n default: undefined\n },\n multiple: {\n type: Boolean,\n default: false\n },\n lazy: {\n type: Boolean,\n default: false\n },\n tabindex: {\n type: Number,\n default: 0\n },\n selectOnFocus: {\n type: Boolean,\n default: false\n },\n expandIcon: {\n type: String,\n default: undefined\n },\n collapseIcon: {\n type: String,\n default: undefined\n },\n // @deprecated since v4.\n activeIndex: {\n type: [Number, Array],\n default: null\n }\n },\n style: AccordionStyle,\n provide() {\n return {\n $pcAccordion: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <template v-if=\"hasAccordionTab\">\n <AccordionPanel v-for=\"(tab, i) of tabs\" :key=\"getKey(tab, i)\" :value=\"`${i}`\" :pt=\"{ root: getTabPT(tab, 'root', i) }\" :disabled=\"getTabProp(tab, 'disabled')\">\n <AccordionHeader :class=\"getTabProp(tab, 'headerClass')\" :pt=\"getHeaderPT(tab, i)\">\n <component v-if=\"tab.children && tab.children.headericon\" :is=\"tab.children.headericon\" :isTabActive=\"isItemActive(`${i}`)\" :active=\"isItemActive(`${i}`)\" :index=\"i\"></component>\n <span v-if=\"tab.props && tab.props.header\" v-bind=\"getTabPT(tab, 'headertitle', i)\">{{ tab.props.header }}</span>\n <template #toggleicon=\"slotProps\">\n <component\n v-if=\"slotProps.active\"\n :is=\"$slots.collapseicon ? $slots.collapseicon : collapseIcon ? 'span' : 'ChevronDownIcon'\"\n :class=\"[collapseIcon, slotProps.class]\"\n aria-hidden=\"true\"\n v-bind=\"getTabPT(tab, 'headericon', i)\"\n />\n <component v-else :is=\"$slots.expandicon ? $slots.expandicon : expandIcon ? 'span' : 'ChevronUpIcon'\" :class=\"[expandIcon, slotProps.class]\" aria-hidden=\"true\" v-bind=\"getTabPT(tab, 'headericon', i)\" />\n </template>\n <component v-if=\"tab.children && tab.children.header\" :is=\"tab.children.header\"></component>\n </AccordionHeader>\n <AccordionContent :pt=\"getContentPT(tab, i)\">\n <component :is=\"tab\"></component>\n </AccordionContent>\n </AccordionPanel>\n </template>\n\n <slot v-else></slot>\n </div>\n</template>\n\n<script>\nimport ChevronRightIcon from '@primevue/icons/chevronright';\nimport ChevronUpIcon from '@primevue/icons/chevronup';\nimport AccordionContent from 'primevue/accordioncontent';\nimport AccordionHeader from 'primevue/accordionheader';\nimport AccordionPanel from 'primevue/accordionpanel';\nimport { mergeProps } from 'vue';\nimport BaseAccordion from './BaseAccordion.vue';\n\nexport default {\n name: 'Accordion',\n extends: BaseAccordion,\n inheritAttrs: false,\n emits: ['update:value', 'update:activeIndex', 'tab-open', 'tab-close', 'tab-click'],\n data() {\n return {\n d_value: this.value\n };\n },\n watch: {\n value(newValue) {\n this.d_value = newValue;\n },\n activeIndex: {\n immediate: true,\n handler(newValue) {\n if (this.hasAccordionTab) {\n this.d_value = this.multiple ? newValue?.map(String) : newValue?.toString();\n }\n }\n }\n },\n methods: {\n isItemActive(value) {\n return this.multiple ? this.d_value?.includes(value) : this.d_value === value;\n },\n updateValue(newValue) {\n const active = this.isItemActive(newValue);\n\n if (this.multiple) {\n if (active) {\n this.d_value = this.d_value.filter((v) => v !== newValue);\n } else {\n if (this.d_value) this.d_value.push(newValue);\n else this.d_value = [newValue];\n }\n } else {\n this.d_value = active ? null : newValue;\n }\n\n this.$emit('update:value', this.d_value);\n\n // @deprecated since v4.\n this.$emit('update:activeIndex', this.multiple ? this.d_value?.map(Number) : Number(this.d_value));\n this.$emit(active ? 'tab-close' : 'tab-open', { originalEvent: undefined, index: Number(newValue) });\n },\n // @deprecated since v4. Use new structure instead.\n isAccordionTab(child) {\n return child.type.name === 'AccordionTab';\n },\n getTabProp(tab, name) {\n return tab.props ? tab.props[name] : undefined;\n },\n getKey(tab, index) {\n return this.getTabProp(tab, 'header') || index;\n },\n getHeaderPT(tab, index) {\n return {\n root: mergeProps({ onClick: (event) => this.onTabClick(event, index) }, this.getTabProp(tab, 'headerProps'), this.getTabPT(tab, 'header', index)),\n toggleicon: mergeProps(this.getTabProp(tab, 'headeractionprops'), this.getTabPT(tab, 'headeraction', index))\n };\n },\n getContentPT(tab, index) {\n return {\n root: mergeProps(this.getTabProp(tab, 'contentProps'), this.getTabPT(tab, 'toggleablecontent', index)),\n transition: this.getTabPT(tab, 'transition', index),\n content: this.getTabPT(tab, 'content', index)\n };\n },\n getTabPT(tab, key, index) {\n const count = this.tabs.length;\n const tabMetaData = {\n props: tab.props || {},\n parent: {\n instance: this,\n props: this.$props,\n state: this.$data\n },\n context: {\n index,\n count,\n first: index === 0,\n last: index === count - 1,\n active: this.isItemActive(`${index}`)\n }\n };\n\n return mergeProps(this.ptm(`accordiontab.${key}`, tabMetaData), this.ptmo(this.getTabProp(tab, 'pt'), key, tabMetaData));\n },\n onTabClick(event, index) {\n this.$emit('tab-click', { originalEvent: event, index });\n }\n },\n computed: {\n // @deprecated since v4.\n tabs() {\n return this.$slots.default().reduce((tabs, child) => {\n if (this.isAccordionTab(child)) {\n tabs.push(child);\n } else if (child.children && child.children instanceof Array) {\n child.children.forEach((nestedChild) => {\n if (this.isAccordionTab(nestedChild)) {\n tabs.push(nestedChild);\n }\n });\n }\n\n return tabs;\n }, []);\n },\n hasAccordionTab() {\n return this.tabs.length;\n }\n },\n components: {\n AccordionPanel,\n AccordionHeader,\n AccordionContent,\n ChevronUpIcon,\n ChevronRightIcon\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <template v-if=\"hasAccordionTab\">\n <AccordionPanel v-for=\"(tab, i) of tabs\" :key=\"getKey(tab, i)\" :value=\"`${i}`\" :pt=\"{ root: getTabPT(tab, 'root', i) }\" :disabled=\"getTabProp(tab, 'disabled')\">\n <AccordionHeader :class=\"getTabProp(tab, 'headerClass')\" :pt=\"getHeaderPT(tab, i)\">\n <component v-if=\"tab.children && tab.children.headericon\" :is=\"tab.children.headericon\" :isTabActive=\"isItemActive(`${i}`)\" :active=\"isItemActive(`${i}`)\" :index=\"i\"></component>\n <span v-if=\"tab.props && tab.props.header\" v-bind=\"getTabPT(tab, 'headertitle', i)\">{{ tab.props.header }}</span>\n <template #toggleicon=\"slotProps\">\n <component\n v-if=\"slotProps.active\"\n :is=\"$slots.collapseicon ? $slots.collapseicon : collapseIcon ? 'span' : 'ChevronDownIcon'\"\n :class=\"[collapseIcon, slotProps.class]\"\n aria-hidden=\"true\"\n v-bind=\"getTabPT(tab, 'headericon', i)\"\n />\n <component v-else :is=\"$slots.expandicon ? $slots.expandicon : expandIcon ? 'span' : 'ChevronUpIcon'\" :class=\"[expandIcon, slotProps.class]\" aria-hidden=\"true\" v-bind=\"getTabPT(tab, 'headericon', i)\" />\n </template>\n <component v-if=\"tab.children && tab.children.header\" :is=\"tab.children.header\"></component>\n </AccordionHeader>\n <AccordionContent :pt=\"getContentPT(tab, i)\">\n <component :is=\"tab\"></component>\n </AccordionContent>\n </AccordionPanel>\n </template>\n\n <slot v-else></slot>\n </div>\n</template>\n\n<script>\nimport ChevronRightIcon from '@primevue/icons/chevronright';\nimport ChevronUpIcon from '@primevue/icons/chevronup';\nimport AccordionContent from 'primevue/accordioncontent';\nimport AccordionHeader from 'primevue/accordionheader';\nimport AccordionPanel from 'primevue/accordionpanel';\nimport { mergeProps } from 'vue';\nimport BaseAccordion from './BaseAccordion.vue';\n\nexport default {\n name: 'Accordion',\n extends: BaseAccordion,\n inheritAttrs: false,\n emits: ['update:value', 'update:activeIndex', 'tab-open', 'tab-close', 'tab-click'],\n data() {\n return {\n d_value: this.value\n };\n },\n watch: {\n value(newValue) {\n this.d_value = newValue;\n },\n activeIndex: {\n immediate: true,\n handler(newValue) {\n if (this.hasAccordionTab) {\n this.d_value = this.multiple ? newValue?.map(String) : newValue?.toString();\n }\n }\n }\n },\n methods: {\n isItemActive(value) {\n return this.multiple ? this.d_value?.includes(value) : this.d_value === value;\n },\n updateValue(newValue) {\n const active = this.isItemActive(newValue);\n\n if (this.multiple) {\n if (active) {\n this.d_value = this.d_value.filter((v) => v !== newValue);\n } else {\n if (this.d_value) this.d_value.push(newValue);\n else this.d_value = [newValue];\n }\n } else {\n this.d_value = active ? null : newValue;\n }\n\n this.$emit('update:value', this.d_value);\n\n // @deprecated since v4.\n this.$emit('update:activeIndex', this.multiple ? this.d_value?.map(Number) : Number(this.d_value));\n this.$emit(active ? 'tab-close' : 'tab-open', { originalEvent: undefined, index: Number(newValue) });\n },\n // @deprecated since v4. Use new structure instead.\n isAccordionTab(child) {\n return child.type.name === 'AccordionTab';\n },\n getTabProp(tab, name) {\n return tab.props ? tab.props[name] : undefined;\n },\n getKey(tab, index) {\n return this.getTabProp(tab, 'header') || index;\n },\n getHeaderPT(tab, index) {\n return {\n root: mergeProps({ onClick: (event) => this.onTabClick(event, index) }, this.getTabProp(tab, 'headerProps'), this.getTabPT(tab, 'header', index)),\n toggleicon: mergeProps(this.getTabProp(tab, 'headeractionprops'), this.getTabPT(tab, 'headeraction', index))\n };\n },\n getContentPT(tab, index) {\n return {\n root: mergeProps(this.getTabProp(tab, 'contentProps'), this.getTabPT(tab, 'toggleablecontent', index)),\n transition: this.getTabPT(tab, 'transition', index),\n content: this.getTabPT(tab, 'content', index)\n };\n },\n getTabPT(tab, key, index) {\n const count = this.tabs.length;\n const tabMetaData = {\n props: tab.props || {},\n parent: {\n instance: this,\n props: this.$props,\n state: this.$data\n },\n context: {\n index,\n count,\n first: index === 0,\n last: index === count - 1,\n active: this.isItemActive(`${index}`)\n }\n };\n\n return mergeProps(this.ptm(`accordiontab.${key}`, tabMetaData), this.ptmo(this.getTabProp(tab, 'pt'), key, tabMetaData));\n },\n onTabClick(event, index) {\n this.$emit('tab-click', { originalEvent: event, index });\n }\n },\n computed: {\n // @deprecated since v4.\n tabs() {\n return this.$slots.default().reduce((tabs, child) => {\n if (this.isAccordionTab(child)) {\n tabs.push(child);\n } else if (child.children && child.children instanceof Array) {\n child.children.forEach((nestedChild) => {\n if (this.isAccordionTab(nestedChild)) {\n tabs.push(nestedChild);\n }\n });\n }\n\n return tabs;\n }, []);\n },\n hasAccordionTab() {\n return this.tabs.length;\n }\n },\n components: {\n AccordionPanel,\n AccordionHeader,\n AccordionContent,\n ChevronUpIcon,\n ChevronRightIcon\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","value","type","String","Number","Array","undefined","multiple","Boolean","lazy","tabindex","selectOnFocus","expandIcon","collapseIcon","activeIndex","style","AccordionStyle","provide","$pcAccordion","$parentInstance","BaseAccordion","inheritAttrs","emits","data","d_value","watch","newValue","immediate","handler","hasAccordionTab","map","toString","methods","isItemActive","_this$d_value","includes","updateValue","_this$d_value2","active","filter","v","push","$emit","originalEvent","index","isAccordionTab","child","getTabProp","tab","getKey","getHeaderPT","_this","root","mergeProps","onClick","event","onTabClick","getTabPT","toggleicon","getContentPT","transition","content","key","count","tabs","length","tabMetaData","parent","instance","$props","state","$data","context","first","last","concat","ptm","ptmo","computed","_this2","$slots","reduce","children","forEach","nestedChild","components","AccordionPanel","AccordionHeader","AccordionContent","ChevronUpIcon","ChevronRightIcon","_openBlock","_createElementBlock","_mergeProps","_ctx","cx","ptmi","$options","_Fragment","_renderList","i","_createBlock","_component_AccordionPanel","pt","disabled","_createVNode","_component_AccordionHeader","_normalizeClass","_withCtx","slotProps","_resolveDynamicComponent","collapseicon","expandicon","headericon","isTabActive","header","_component_AccordionContent","_renderSlot"],"mappings":"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"}