{"version":3,"sources":["webpack:///./src/components/sidebar/i4pro-sidebar.vue?b480","webpack:///src/components/sidebar/i4pro-sidebar.vue","webpack:///./src/components/sidebar/i4pro-sidebar.vue?e136","webpack:///./src/components/sidebar/i4pro-sidebar.vue","webpack:///../../../src/components/VNavigationDrawer/VNavigationDrawer.ts"],"names":["render","_vm","this","_h","$createElement","_c","_self","_b","staticClass","attrs","mini","on","$event","model","value","callback","$$v","expression","configSidebar","scrollSettings","handleToggleExpandDrawer","class","_l","item","i","key","getCurrentActiveMenu","id","handleLoadRoute","scopedSlots","_u","fn","ref","_g","_v","_s","icon","name","domProps","proxy","toggleDropdown","$set","_e","staticRenderFns","components","VuePerfectScrollbar","i4proMenuDropdown","i4proLightboxSmall","props","data","methods","computed","menu","watch","$route","to","path","store","newValue","component","VDivider","VIcon","VList","VListGroup","VListItem","VListItemTitle","VNavigationDrawer","VTooltip","baseMixins","provide","isInNav","tag","directives","ClickOutside","Resize","Touch","bottom","clipped","disableResizeWatcher","disableRouteWatcher","expandOnHover","floating","height","type","Number","default","app","miniVariant","miniVariantWidth","permanent","right","src","String","stateless","temporary","touchless","width","isMouseover","touchArea","left","stackMinZIndex","applicationProperty","classes","themeClasses","computedMaxHeight","$vuetify","application","computedTop","computedTransform","computedWidth","isMiniVariant","hasApp","isBottom","isMobile","reactsToClick","reactsToMobile","reactsToResize","reactsToRoute","showOverlay","styles","translate","top","maxHeight","transform","isActive","prev","removeOverlay","val","beforeMount","calculateTouchArea","parent","$el","parentRect","closeConditional","genAppend","genPosition","genBackground","image","$scopedSlots","img","genDirectives","handler","include","getOpenDependentElements","swipeRight","genListeners","transitionend","e","resizeEvent","document","window","slot","genPrepend","genContent","$slots","genBorder","init","onRouteChange","swipeLeft","Math","updateApplication","isNaN","updateMiniVariant","$emit","children","h","setBackgroundColor","style"],"mappings":"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","file":"js/chunk-56f38747.6d10f037.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-navigation-drawer',_vm._b({staticClass:\"i4pro-sidebar\",attrs:{\"app\":\"\",\"mini-variant\":_vm.mini,\"fixed\":true,\"disable-resize-watcher\":true},on:{\"update:miniVariant\":function($event){_vm.mini=$event},\"update:mini-variant\":function($event){_vm.mini=$event}},model:{value:(_vm.model),callback:function ($$v) {_vm.model=$$v},expression:\"model\"}},'v-navigation-drawer',_vm.configSidebar,false),[_c('vue-perfect-scrollbar',{staticClass:\"drawer--scroll\",attrs:{\"settings\":_vm.scrollSettings}},[_c('i4proLightboxSmall',{attrs:{\"mini\":_vm.mini},on:{\"handleToggleExpandDrawer\":_vm.handleToggleExpandDrawer}}),_c('v-divider'),_c('v-list',{class:['pt-0 pb-0', _vm.mini && 'i4pro-sidebar--mini'],attrs:{\"dense\":\"\"}},_vm._l((_vm.menu),function(item,i){return _c('v-list-group',{key:i,staticClass:\"v-list-item--first\",class:[_vm.getCurrentActiveMenu === item.id && 'active'],attrs:{\"id\":(\"menu-\" + (item.id)),\"append-icon\":'children' in item ? 'zmdi zmdi-chevron-down' : ''},on:{\"click\":function($event){return _vm.handleLoadRoute(item)}},scopedSlots:_vm._u([{key:\"activator\",fn:function(){return [_c('v-tooltip',{attrs:{\"right\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c('v-icon',_vm._g({staticClass:\"icon-shake mr-2\"},on),[_vm._v(_vm._s(item.icon))])]}}],null,true)},[_c('span',[_vm._v(_vm._s(item.name))])]),_c('v-list-item-title',{domProps:{\"textContent\":_vm._s(item.name)}})]},proxy:true}],null,true),model:{value:(_vm.toggleDropdown[i]),callback:function ($$v) {_vm.$set(_vm.toggleDropdown, i, $$v)},expression:\"toggleDropdown[i]\"}},[('children' in item)?_c('v-list-item',{staticClass:\"v-list-item--dropdown\"},[_c('i4proMenuDropdown',{staticClass:\"i4pro-dropdown i4pro-dropdown--sidebar\",attrs:{\"item\":item,\"mini\":_vm.mini}})],1):_vm._e()],1)}),1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./i4pro-sidebar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./i4pro-sidebar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./i4pro-sidebar.vue?vue&type=template&id=f2e4d1fa&\"\nimport script from \"./i4pro-sidebar.vue?vue&type=script&lang=js&\"\nexport * from \"./i4pro-sidebar.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\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListGroup } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\nimport { VNavigationDrawer } from 'vuetify/lib/components/VNavigationDrawer';\nimport { VTooltip } from 'vuetify/lib/components/VTooltip';\ninstallComponents(component, {VDivider,VIcon,VList,VListGroup,VListItem,VListItemTitle,VNavigationDrawer,VTooltip})\n","// Styles\nimport './VNavigationDrawer.sass'\n\n// Components\nimport VImg, { srcObject } from '../VImg/VImg'\n\n// Mixins\nimport Applicationable from '../../mixins/applicationable'\nimport Colorable from '../../mixins/colorable'\nimport Dependent from '../../mixins/dependent'\nimport Mobile from '../../mixins/mobile'\nimport Overlayable from '../../mixins/overlayable'\nimport SSRBootable from '../../mixins/ssr-bootable'\nimport Themeable from '../../mixins/themeable'\n\n// Directives\nimport ClickOutside from '../../directives/click-outside'\nimport Resize from '../../directives/resize'\nimport Touch from '../../directives/touch'\n\n// Utilities\nimport { convertToUnit, getSlot } from '../../util/helpers'\nimport mixins from '../../util/mixins'\n\n// Types\nimport { VNode, VNodeDirective, PropType } from 'vue'\nimport { TouchWrapper } from 'vuetify/types'\n\nconst baseMixins = mixins(\n Applicationable('left', [\n 'isActive',\n 'isMobile',\n 'miniVariant',\n 'expandOnHover',\n 'permanent',\n 'right',\n 'temporary',\n 'width',\n ]),\n Colorable,\n Dependent,\n Mobile,\n Overlayable,\n SSRBootable,\n Themeable\n)\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'v-navigation-drawer',\n\n provide (): object {\n return {\n isInNav: this.tag === 'nav',\n }\n },\n\n directives: {\n ClickOutside,\n Resize,\n Touch,\n },\n\n props: {\n bottom: Boolean,\n clipped: Boolean,\n disableResizeWatcher: Boolean,\n disableRouteWatcher: Boolean,\n expandOnHover: Boolean,\n floating: Boolean,\n height: {\n type: [Number, String],\n default (): string {\n return this.app ? '100vh' : '100%'\n },\n },\n miniVariant: Boolean,\n miniVariantWidth: {\n type: [Number, String],\n default: 56,\n },\n permanent: Boolean,\n right: Boolean,\n src: {\n type: [String, Object] as PropType,\n default: '',\n },\n stateless: Boolean,\n tag: {\n type: String,\n default (): string {\n return this.app ? 'nav' : 'aside'\n },\n },\n temporary: Boolean,\n touchless: Boolean,\n width: {\n type: [Number, String],\n default: 256,\n },\n value: null as unknown as PropType,\n },\n\n data: () => ({\n isMouseover: false,\n touchArea: {\n left: 0,\n right: 0,\n },\n stackMinZIndex: 6,\n }),\n\n computed: {\n /**\n * Used for setting an app value from a dynamic\n * property. Called from applicationable.js\n */\n applicationProperty (): string {\n return this.right ? 'right' : 'left'\n },\n classes (): object {\n return {\n 'v-navigation-drawer': true,\n 'v-navigation-drawer--absolute': this.absolute,\n 'v-navigation-drawer--bottom': this.bottom,\n 'v-navigation-drawer--clipped': this.clipped,\n 'v-navigation-drawer--close': !this.isActive,\n 'v-navigation-drawer--fixed': !this.absolute && (this.app || this.fixed),\n 'v-navigation-drawer--floating': this.floating,\n 'v-navigation-drawer--is-mobile': this.isMobile,\n 'v-navigation-drawer--is-mouseover': this.isMouseover,\n 'v-navigation-drawer--mini-variant': this.isMiniVariant,\n 'v-navigation-drawer--custom-mini-variant': Number(this.miniVariantWidth) !== 56,\n 'v-navigation-drawer--open': this.isActive,\n 'v-navigation-drawer--open-on-hover': this.expandOnHover,\n 'v-navigation-drawer--right': this.right,\n 'v-navigation-drawer--temporary': this.temporary,\n ...this.themeClasses,\n }\n },\n computedMaxHeight (): number | null {\n if (!this.hasApp) return null\n\n const computedMaxHeight = (\n this.$vuetify.application.bottom +\n this.$vuetify.application.footer +\n this.$vuetify.application.bar\n )\n\n if (!this.clipped) return computedMaxHeight\n\n return computedMaxHeight + this.$vuetify.application.top\n },\n computedTop (): number {\n if (!this.hasApp) return 0\n\n let computedTop = this.$vuetify.application.bar\n\n computedTop += this.clipped\n ? this.$vuetify.application.top\n : 0\n\n return computedTop\n },\n computedTransform (): number {\n if (this.isActive) return 0\n if (this.isBottom) return 100\n return this.right ? 100 : -100\n },\n computedWidth (): string | number {\n return this.isMiniVariant ? this.miniVariantWidth : this.width\n },\n hasApp (): boolean {\n return (\n this.app &&\n (!this.isMobile && !this.temporary)\n )\n },\n isBottom (): boolean {\n return this.bottom && this.isMobile\n },\n isMiniVariant (): boolean {\n return (\n !this.expandOnHover &&\n this.miniVariant\n ) || (\n this.expandOnHover &&\n !this.isMouseover\n )\n },\n isMobile (): boolean {\n return (\n !this.stateless &&\n !this.permanent &&\n Mobile.options.computed.isMobile.call(this)\n )\n },\n reactsToClick (): boolean {\n return (\n !this.stateless &&\n !this.permanent &&\n (this.isMobile || this.temporary)\n )\n },\n reactsToMobile (): boolean {\n return (\n this.app &&\n !this.disableResizeWatcher &&\n !this.permanent &&\n !this.stateless &&\n !this.temporary\n )\n },\n reactsToResize (): boolean {\n return !this.disableResizeWatcher && !this.stateless\n },\n reactsToRoute (): boolean {\n return (\n !this.disableRouteWatcher &&\n !this.stateless &&\n (this.temporary || this.isMobile)\n )\n },\n showOverlay (): boolean {\n return (\n !this.hideOverlay &&\n this.isActive &&\n (this.isMobile || this.temporary)\n )\n },\n styles (): object {\n const translate = this.isBottom ? 'translateY' : 'translateX'\n const styles = {\n height: convertToUnit(this.height),\n top: !this.isBottom ? convertToUnit(this.computedTop) : 'auto',\n maxHeight: this.computedMaxHeight != null\n ? `calc(100% - ${convertToUnit(this.computedMaxHeight)})`\n : undefined,\n transform: `${translate}(${convertToUnit(this.computedTransform, '%')})`,\n width: convertToUnit(this.computedWidth),\n }\n\n return styles\n },\n },\n\n watch: {\n $route: 'onRouteChange',\n isActive (val) {\n this.$emit('input', val)\n },\n /**\n * When mobile changes, adjust the active state\n * only when there has been a previous value\n */\n isMobile (val, prev) {\n !val &&\n this.isActive &&\n !this.temporary &&\n this.removeOverlay()\n\n if (prev == null ||\n !this.reactsToResize ||\n !this.reactsToMobile\n ) return\n\n this.isActive = !val\n },\n permanent (val) {\n // If enabling prop enable the drawer\n if (val) this.isActive = true\n },\n showOverlay (val) {\n if (val) this.genOverlay()\n else this.removeOverlay()\n },\n value (val) {\n if (this.permanent) return\n\n if (val == null) {\n this.init()\n return\n }\n\n if (val !== this.isActive) this.isActive = val\n },\n expandOnHover: 'updateMiniVariant',\n isMouseover (val) {\n this.updateMiniVariant(!val)\n },\n },\n\n beforeMount () {\n this.init()\n },\n\n methods: {\n calculateTouchArea () {\n const parent = this.$el.parentNode as Element\n\n if (!parent) return\n\n const parentRect = parent.getBoundingClientRect()\n\n this.touchArea = {\n left: parentRect.left + 50,\n right: parentRect.right - 50,\n }\n },\n closeConditional () {\n return this.isActive && !this._isDestroyed && this.reactsToClick\n },\n genAppend () {\n return this.genPosition('append')\n },\n genBackground () {\n const props = {\n height: '100%',\n width: '100%',\n src: this.src,\n }\n\n const image = this.$scopedSlots.img\n ? this.$scopedSlots.img(props)\n : this.$createElement(VImg, { props })\n\n return this.$createElement('div', {\n staticClass: 'v-navigation-drawer__image',\n }, [image])\n },\n genDirectives (): VNodeDirective[] {\n const directives = [{\n name: 'click-outside',\n value: {\n handler: () => { this.isActive = false },\n closeConditional: this.closeConditional,\n include: this.getOpenDependentElements,\n },\n }]\n\n if (!this.touchless && !this.stateless) {\n directives.push({\n name: 'touch',\n value: {\n parent: true,\n left: this.swipeLeft,\n right: this.swipeRight,\n },\n } as any)\n }\n\n return directives\n },\n genListeners () {\n const on: Record void> = {\n transitionend: (e: Event) => {\n if (e.target !== e.currentTarget) return\n this.$emit('transitionend', e)\n\n // IE11 does not support new Event('resize')\n const resizeEvent = document.createEvent('UIEvents')\n resizeEvent.initUIEvent('resize', true, false, window, 0)\n window.dispatchEvent(resizeEvent)\n },\n }\n\n if (this.miniVariant) {\n on.click = () => this.$emit('update:mini-variant', false)\n }\n\n if (this.expandOnHover) {\n on.mouseenter = () => (this.isMouseover = true)\n on.mouseleave = () => (this.isMouseover = false)\n }\n\n return on\n },\n genPosition (name: 'prepend' | 'append') {\n const slot = getSlot(this, name)\n\n if (!slot) return slot\n\n return this.$createElement('div', {\n staticClass: `v-navigation-drawer__${name}`,\n }, slot)\n },\n genPrepend () {\n return this.genPosition('prepend')\n },\n genContent () {\n return this.$createElement('div', {\n staticClass: 'v-navigation-drawer__content',\n }, this.$slots.default)\n },\n genBorder () {\n return this.$createElement('div', {\n staticClass: 'v-navigation-drawer__border',\n })\n },\n init () {\n if (this.permanent) {\n this.isActive = true\n } else if (this.stateless ||\n this.value != null\n ) {\n this.isActive = this.value\n } else if (!this.temporary) {\n this.isActive = !this.isMobile\n }\n },\n onRouteChange () {\n if (this.reactsToRoute && this.closeConditional()) {\n this.isActive = false\n }\n },\n swipeLeft (e: TouchWrapper) {\n if (this.isActive && this.right) return\n this.calculateTouchArea()\n\n if (Math.abs(e.touchendX - e.touchstartX) < 100) return\n if (this.right &&\n e.touchstartX >= this.touchArea.right\n ) this.isActive = true\n else if (!this.right && this.isActive) this.isActive = false\n },\n swipeRight (e: TouchWrapper) {\n if (this.isActive && !this.right) return\n this.calculateTouchArea()\n\n if (Math.abs(e.touchendX - e.touchstartX) < 100) return\n if (!this.right &&\n e.touchstartX <= this.touchArea.left\n ) this.isActive = true\n else if (this.right && this.isActive) this.isActive = false\n },\n /**\n * Update the application layout\n */\n updateApplication () {\n if (\n !this.isActive ||\n this.isMobile ||\n this.temporary ||\n !this.$el\n ) return 0\n\n const width = Number(this.computedWidth)\n\n return isNaN(width) ? this.$el.clientWidth : width\n },\n updateMiniVariant (val: boolean) {\n if (this.miniVariant !== val) this.$emit('update:mini-variant', val)\n },\n },\n\n render (h): VNode {\n const children = [\n this.genPrepend(),\n this.genContent(),\n this.genAppend(),\n this.genBorder(),\n ]\n\n if (this.src || getSlot(this, 'img')) children.unshift(this.genBackground())\n\n return h(this.tag, this.setBackgroundColor(this.color, {\n class: this.classes,\n style: this.styles,\n directives: this.genDirectives(),\n on: this.genListeners(),\n }), children)\n },\n})\n"],"sourceRoot":""}