{"version":3,"sources":["webpack:///../../../src/components/VExpansionPanel/VExpansionPanels.ts","webpack:///./src/model/common/events/eventConst.js","webpack:///../../../src/components/VItemGroup/VItemGroup.ts","webpack:///./src/components/shared/core/expansionPanel/ExpansionPanelsLayout.vue","webpack:///src/components/shared/core/expansionPanel/ExpansionPanelsLayout.vue","webpack:///./src/components/shared/core/expansionPanel/ExpansionPanelsLayout.vue?01af","webpack:///./src/components/shared/core/expansionPanel/ExpansionPanelsLayout.vue?119b","webpack:///../../../src/mixins/comparable/index.ts","webpack:///./src/mixins/shared/slottable/slottableMixin.js"],"names":["BaseItemGroup","extend","name","provide","expansionPanels","this","props","accordion","Boolean","disabled","flat","hover","focusable","inset","popout","readonly","tile","computed","classes","options","call","created","$attrs","hasOwnProperty","breaking","Array","isArray","value","length","methods","updateItem","item","index","getValue","nextValue","isActive","toggleMethod","nextIsActive","eventNames","Object","freeze","resetDetails","deleteDetails","saveDetails","deleteSelectedItems","printSelectedItems","configureDataTable","openSelectedItem","dialogCancel","dialogOK","closed","close","opened","selectedNotification","selectedOption","alertVisibilityChanged","activated","expanded","remove","click","listItemGroupChange","moreText","removeField","databaseLookup","categoryChanged","updateRecord","agendaTemplateChanged","AgendaItemTemplateChanged","AgendaSectionTemplateChanged","selectedExtension","insertFile","customPage","overwriteFile","expandedPreview","agendaPacketOptions","onRecordMoved","onFileDropped","performContextMenuAction","onContextMenuAction","checkInOptionChanged","uploadFileChanged","ocrTextSaved","itemSelected","optionChanged","downloadReport","taskValidation","onEventClicked","onContextAction","calendarContextAction","onEventRightClicked","onFileChanged","onSearchAction","onSearchChipRemoved","openDefaultPdfViewer","onCheckout","onDialogOpened","onDialogClosedAfterAction","onOk","mixins","Comparable","Proxyable","Themeable","activeClass","type","String","default","mandatory","max","Number","multiple","tag","data","internalLazyValue","undefined","items","themeClasses","selectedIndex","selectedItem","indexOf","selectedItems","filter","selectedValues","internalValue","v","valueComparator","some","intern","watch","consoleWarn","genData","class","i","onClick","updateInternalValue","register","push","$on","updateMandatory","unregister","_isDestroyed","splice","valueIndex","updateItemsState","$nextTick","forEach","updateMultiple","updateSingle","last","slice","reverse","find","defaultValue","findIndex","val","isSame","render","h","getSlot","itemGroup","_c","_self","attrs","model","callback","panels","expression","iconName","scopedSlots","_vm","proxy","key","fn","staticRenderFns","inheritAttrs","slottableMixin","components","ExpansionPanelLayout","open","_this$panels$length","_this$panels","$emit","newValue","component","Vue","Function","deepEqual","hasSlot","$slots"],"mappings":"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","file":"js/chunk-ebd6cb68.140f9e1d.js","sourcesContent":["// Styles\nimport './VExpansionPanel.sass'\n\n// Components\nimport { BaseItemGroup, GroupableInstance } from '../VItemGroup/VItemGroup'\nimport VExpansionPanel from './VExpansionPanel'\n\n// Utilities\nimport { breaking } from '../../util/console'\n\n// Types\ninterface VExpansionPanelInstance extends InstanceType {}\n\n/* @vue/component */\nexport default BaseItemGroup.extend({\n name: 'v-expansion-panels',\n\n provide (): object {\n return {\n expansionPanels: this,\n }\n },\n\n props: {\n accordion: Boolean,\n disabled: Boolean,\n flat: Boolean,\n hover: Boolean,\n focusable: Boolean,\n inset: Boolean,\n popout: Boolean,\n readonly: Boolean,\n tile: Boolean,\n },\n\n computed: {\n classes (): object {\n return {\n ...BaseItemGroup.options.computed.classes.call(this),\n 'v-expansion-panels': true,\n 'v-expansion-panels--accordion': this.accordion,\n 'v-expansion-panels--flat': this.flat,\n 'v-expansion-panels--hover': this.hover,\n 'v-expansion-panels--focusable': this.focusable,\n 'v-expansion-panels--inset': this.inset,\n 'v-expansion-panels--popout': this.popout,\n 'v-expansion-panels--tile': this.tile,\n }\n },\n },\n\n created () {\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('expand')) {\n breaking('expand', 'multiple', this)\n }\n\n /* istanbul ignore next */\n if (\n Array.isArray(this.value) &&\n this.value.length > 0 &&\n typeof this.value[0] === 'boolean'\n ) {\n breaking(':value=\"[true, false, true]\"', ':value=\"[0, 2]\"', this)\n }\n },\n\n methods: {\n updateItem (item: GroupableInstance & VExpansionPanelInstance, index: number) {\n const value = this.getValue(item, index)\n const nextValue = this.getValue(item, index + 1)\n\n item.isActive = this.toggleMethod(value)\n item.nextIsActive = this.toggleMethod(nextValue)\n },\n },\n})\n","/**\r\n * Event Names\r\n * @type {Readonly<{deleteSelectedItems: string, selectedNotification: string, saveDetails: string, openSelectedItem: string, dialogCancel: string, dialogOK: string, selectedOption: string, click: string, alertVisibilityChanged: string, remove: string, listItemGroupChange: string, deleteDetails: string, printSelectedItems: string, closed: string, configureDataTable: string, close: string, resetDetails: string, activated: string}>}\r\n */\r\nconst eventNames = Object.freeze({\r\n resetDetails: \"resetDetails\",\r\n deleteDetails: \"deleteDetails\",\r\n saveDetails: \"saveDetails\",\r\n deleteSelectedItems: \"deleteSelectedItems\",\r\n printSelectedItems: \"printSelectedItems\",\r\n configureDataTable: \"configureDataTable\",\r\n openSelectedItem: \"open-selected-item\",\r\n dialogCancel: \"cancel\",\r\n dialogOK: \"ok\",\r\n closed: \"closed\",\r\n close: \"close\",\r\n opened: \"opened\",\r\n selectedNotification: \"selectedNotification\",\r\n selectedOption: \"selectedOption\",\r\n alertVisibilityChanged: \"alertVisibilityChanged\",\r\n activated: \"activated\",\r\n expanded: \"expanded\",\r\n remove: \"remove\",\r\n click: \"click\",\r\n listItemGroupChange: \"listItemGroupChange\",\r\n moreText: \"moreText\",\r\n removeField: \"removeField\",\r\n databaseLookup: \"databaseLookup\",\r\n categoryChanged: \"categoryChanged\",\r\n updateRecord: \"update-record\",\r\n agendaTemplateChanged: \"agendaTemplateChanged\",\r\n AgendaItemTemplateChanged: \"AgendaItemTemplateChanged\",\r\n AgendaSectionTemplateChanged: \"AgendaSectionTemplateChanged\",\r\n selectedExtension: \"selected-extension\",\r\n insertFile: \"insert-file\",\r\n customPage: \"custom-page\",\r\n overwriteFile: \"overwrite-option\",\r\n expandedPreview: \"expandedPreview\",\r\n agendaPacketOptions: \"agendaPacketOptions\",\r\n onRecordMoved: \"onRecordMoved\",\r\n onFileDropped: \"onFileDropped\",\r\n performContextMenuAction: \"performContextMenuAction\",\r\n onContextMenuAction: \"onContextMenuAction\",\r\n checkInOptionChanged: \"checkInOptionChanged\",\r\n uploadFileChanged: \"uploadFileChanged\",\r\n ocrTextSaved: \"ocrTextSaved\",\r\n itemSelected: \"itemSelected\",\r\n optionChanged: \"optionChanged\",\r\n downloadReport: \"download-report\",\r\n taskValidation: \"task-validation\",\r\n onEventClicked: \"onEventClicked\",\r\n onContextAction: \"onContextAction\",\r\n calendarContextAction: \"calendarContextAction\",\r\n onEventRightClicked: \"onEventRightClicked\",\r\n onFileChanged: \"onFileChanged\",\r\n onSearchAction: \"onSearchAction\",\r\n onSearchChipRemoved: \"onSearchChipRemoved\",\r\n openDefaultPdfViewer: \"openDefaultPdfViewer\",\r\n onCheckout: \"onCheckout\",\r\n onDialogOpened: \"onDialogOpened\",\r\n onDialogClosedAfterAction: \"onDialogClosedAfterAction\",\r\n onOk: \"onOk\"\r\n});\r\n\r\nexport { eventNames };\r\n","// Styles\nimport './VItemGroup.sass'\n\n// Mixins\nimport Comparable from '../../mixins/comparable'\nimport Groupable from '../../mixins/groupable'\nimport Proxyable from '../../mixins/proxyable'\nimport Themeable from '../../mixins/themeable'\n\n// Utilities\nimport mixins from '../../util/mixins'\nimport { consoleWarn } from '../../util/console'\nimport { getSlot } from '../../util/helpers'\n\n// Types\nimport { VNode } from 'vue/types'\n\nexport type GroupableInstance = InstanceType & {\n id?: string\n to?: any\n value?: any\n }\n\nexport const BaseItemGroup = mixins(\n Comparable,\n Proxyable,\n Themeable\n).extend({\n name: 'base-item-group',\n\n props: {\n activeClass: {\n type: String,\n default: 'v-item--active',\n },\n mandatory: Boolean,\n max: {\n type: [Number, String],\n default: null,\n },\n multiple: Boolean,\n tag: {\n type: String,\n default: 'div',\n },\n },\n\n data () {\n return {\n // As long as a value is defined, show it\n // Otherwise, check if multiple\n // to determine which default to provide\n internalLazyValue: this.value !== undefined\n ? this.value\n : this.multiple ? [] : undefined,\n items: [] as GroupableInstance[],\n }\n },\n\n computed: {\n classes (): Record {\n return {\n 'v-item-group': true,\n ...this.themeClasses,\n }\n },\n selectedIndex (): number {\n return (this.selectedItem && this.items.indexOf(this.selectedItem)) || -1\n },\n selectedItem (): GroupableInstance | undefined {\n if (this.multiple) return undefined\n\n return this.selectedItems[0]\n },\n selectedItems (): GroupableInstance[] {\n return this.items.filter((item, index) => {\n return this.toggleMethod(this.getValue(item, index))\n })\n },\n selectedValues (): any[] {\n if (this.internalValue == null) return []\n\n return Array.isArray(this.internalValue)\n ? this.internalValue\n : [this.internalValue]\n },\n toggleMethod (): (v: any) => boolean {\n if (!this.multiple) {\n return (v: any) => this.valueComparator(this.internalValue, v)\n }\n\n const internalValue = this.internalValue\n if (Array.isArray(internalValue)) {\n return (v: any) => internalValue.some(intern => this.valueComparator(intern, v))\n }\n\n return () => false\n },\n },\n\n watch: {\n internalValue: 'updateItemsState',\n items: 'updateItemsState',\n },\n\n created () {\n if (this.multiple && !Array.isArray(this.internalValue)) {\n consoleWarn('Model must be bound to an array if the multiple property is true.', this)\n }\n },\n\n methods: {\n\n genData (): object {\n return {\n class: this.classes,\n }\n },\n getValue (item: GroupableInstance, i: number): unknown {\n return item.value === undefined\n ? i\n : item.value\n },\n onClick (item: GroupableInstance) {\n this.updateInternalValue(\n this.getValue(item, this.items.indexOf(item))\n )\n },\n register (item: GroupableInstance) {\n const index = this.items.push(item) - 1\n\n item.$on('change', () => this.onClick(item))\n\n // If no value provided and mandatory,\n // assign first registered item\n if (this.mandatory && !this.selectedValues.length) {\n this.updateMandatory()\n }\n\n this.updateItem(item, index)\n },\n unregister (item: GroupableInstance) {\n if (this._isDestroyed) return\n\n const index = this.items.indexOf(item)\n const value = this.getValue(item, index)\n\n this.items.splice(index, 1)\n\n const valueIndex = this.selectedValues.indexOf(value)\n\n // Items is not selected, do nothing\n if (valueIndex < 0) return\n\n // If not mandatory, use regular update process\n if (!this.mandatory) {\n return this.updateInternalValue(value)\n }\n\n // Remove the value\n if (this.multiple && Array.isArray(this.internalValue)) {\n this.internalValue = this.internalValue.filter(v => v !== value)\n } else {\n this.internalValue = undefined\n }\n\n // If mandatory and we have no selection\n // add the last item as value\n /* istanbul ignore else */\n if (!this.selectedItems.length) {\n this.updateMandatory(true)\n }\n },\n updateItem (item: GroupableInstance, index: number) {\n const value = this.getValue(item, index)\n\n item.isActive = this.toggleMethod(value)\n },\n // https://github.com/vuetifyjs/vuetify/issues/5352\n updateItemsState () {\n this.$nextTick(() => {\n if (this.mandatory &&\n !this.selectedItems.length\n ) {\n return this.updateMandatory()\n }\n\n // TODO: Make this smarter so it\n // doesn't have to iterate every\n // child in an update\n this.items.forEach(this.updateItem)\n })\n },\n updateInternalValue (value: any) {\n this.multiple\n ? this.updateMultiple(value)\n : this.updateSingle(value)\n },\n updateMandatory (last?: boolean) {\n if (!this.items.length) return\n\n const items = this.items.slice()\n\n if (last) items.reverse()\n\n const item = items.find(item => !item.disabled)\n\n // If no tabs are available\n // aborts mandatory value\n if (!item) return\n\n const index = this.items.indexOf(item)\n\n this.updateInternalValue(\n this.getValue(item, index)\n )\n },\n updateMultiple (value: any) {\n const defaultValue = Array.isArray(this.internalValue)\n ? this.internalValue\n : []\n const internalValue = defaultValue.slice()\n const index = internalValue.findIndex(val => this.valueComparator(val, value))\n\n if (\n this.mandatory &&\n // Item already exists\n index > -1 &&\n // value would be reduced below min\n internalValue.length - 1 < 1\n ) return\n\n if (\n // Max is set\n this.max != null &&\n // Item doesn't exist\n index < 0 &&\n // value would be increased above max\n internalValue.length + 1 > this.max\n ) return\n\n index > -1\n ? internalValue.splice(index, 1)\n : internalValue.push(value)\n\n this.internalValue = internalValue\n },\n updateSingle (value: any) {\n const isSame = this.valueComparator(this.internalValue, value)\n\n if (this.mandatory && isSame) return\n\n this.internalValue = isSame ? undefined : value\n },\n },\n\n render (h): VNode {\n return h(this.tag, this.genData(), getSlot(this))\n },\n})\n\nexport default BaseItemGroup.extend({\n name: 'v-item-group',\n\n provide (): object {\n return {\n itemGroup: this,\n }\n },\n})\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-expansion-panels',_vm._g(_vm._b({attrs:{\"inset\":_vm.inset,\"focusable\":\"\",\"multiple\":\"\"},model:{value:(_vm.panels),callback:function ($$v) {_vm.panels=$$v},expression:\"panels\"}},'v-expansion-panels',_vm.$attrs,false),_vm.$listeners),[_c('expansion-panel-layout',{attrs:{\"icon-name\":_vm.iconName},scopedSlots:_vm._u([(_vm.hasSlot('header'))?{key:\"header\",fn:function(){return [_vm._t(\"header\")]},proxy:true}:{key:\"default\",fn:function(){return [_vm._t(\"default\")]},proxy:true},{key:\"content\",fn:function(){return [_vm._t(\"content\")]},proxy:true}],null,true)})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ExpansionPanelsLayout.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ExpansionPanelsLayout.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ExpansionPanelsLayout.vue?vue&type=template&id=f5ab7f02\"\nimport script from \"./ExpansionPanelsLayout.vue?vue&type=script&lang=js\"\nexport * from \"./ExpansionPanelsLayout.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Vue from 'vue'\nimport { PropValidator } from 'vue/types/options'\nimport { deepEqual } from '../../util/helpers'\n\nexport default Vue.extend({\n name: 'comparable',\n props: {\n valueComparator: {\n type: Function,\n default: deepEqual,\n } as PropValidator,\n },\n})\n","export const slottableMixin = {\r\n methods: {\r\n /**\r\n * has Slot\r\n * @param {string} name\r\n * @return {boolean}\r\n */\r\n hasSlot(name) {\r\n return !!this.$slots[name];\r\n }\r\n }\r\n};\r\n"],"sourceRoot":""}