{"version":3,"sources":["webpack:///../../../src/components/VIcon/VIcon.ts","webpack:///../../../src/mixins/routable/index.ts","webpack:///../../../src/directives/ripple/index.ts","webpack:///./src/model/folder/folderModel.js","webpack:///./src/mixins/shared/record/recordIconMixin.js","webpack:///../../../src/mixins/binds-attrs/index.ts","webpack:///./src/mixins/shared/base/settings/menuItemSettingsMixin.js","webpack:///../../../src/mixins/colorable/index.ts","webpack:///../../../src/components/VBreadcrumbs/VBreadcrumbsItem.ts","webpack:///../../../src/components/VBreadcrumbs/VBreadcrumbsDivider.ts","webpack:///../../../src/components/VBreadcrumbs/VBreadcrumbs.ts","webpack:///./src/components/shared/core/breadcrumbs/BreadcrumbsRecord.vue","webpack:///src/components/shared/core/breadcrumbs/BreadcrumbsRecord.vue","webpack:///./src/components/shared/core/breadcrumbs/BreadcrumbsRecord.vue?4c31","webpack:///./src/components/shared/core/breadcrumbs/BreadcrumbsRecord.vue?9abe","webpack:///../../../src/mixins/sizeable/index.ts"],"names":["SIZE_MAP","isFontAwesome5","iconType","some","val","includes","isSvgPath","icon","test","length","VIcon","mixins","BindsAttrs","Colorable","Sizeable","Themeable","extend","name","props","dense","Boolean","disabled","left","right","size","Number","String","tag","type","required","default","computed","medium","hasClickListener","this","listeners$","click","methods","getIcon","iconName","$slots","text","trim","remapInternalIcon","getSize","sizes","xSmall","small","large","xLarge","explicitSize","keys","find","key","convertToUnit","getDefaultData","staticClass","class","attrs","undefined","attrs$","on","getSvgWrapperData","fontSize","wrapperData","style","height","width","applyColors","data","themeClasses","setTextColor","color","renderFontIcon","h","newChildren","delimiterIndex","indexOf","isMaterialIcon","push","slice","renderSvgIcon","svgData","xmlns","viewBox","role","d","renderSvgIconComponent","component","nativeOn","render","Vue","$_wrapperFor","functional","children","domProps","textContent","innerHTML","directives","Ripple","activeClass","append","exact","exactPath","exactActiveClass","link","href","Object","to","nuxt","replace","ripple","target","isActive","proxyClass","classes","computedRipple","_a","isClickable","isLink","$listeners","$attrs","tabindex","styles","watch","$route","mounted","onRouteChange","generateRouteLink","value","ref","path","assign","$refs","$nextTick","getObjectValueByPath","toggle","DELAY_RIPPLE","transform","el","webkitTransform","isTouchEvent","e","constructor","isKeyboardEvent","calculate","localX","localY","offset","getBoundingClientRect","touches","clientX","clientY","top","radius","scale","_ripple","circle","clientWidth","center","Math","sqrt","clientHeight","centerX","centerY","x","y","ripples","show","enabled","container","document","createElement","animation","appendChild","className","window","getComputedStyle","position","dataset","previousPosition","classList","add","activated","performance","now","setTimeout","remove","hide","getElementsByClassName","isHiding","diff","delay","max","parentNode","removeChild","isRippleEnabled","rippleShow","element","currentTarget","touched","rippleStop","isTouch","centered","showTimerCommit","showTimer","rippleHide","clearTimeout","rippleCancelShow","keyboardRipple","keyboardRippleShow","keyCode","keyCodes","enter","space","keyboardRippleHide","focusRippleHide","updateRipple","binding","wasEnabled","addEventListener","passive","removeListeners","removeEventListener","directive","node","unbind","update","oldValue","bind","folderColor","Color","colorMD","yellow","variantType","darken","variantNumber","n2","documentColor","indigo","n1","folderColorClass","getClassColor","documentColorClass","recordIconMixin","menuItemSettingsMixin","recordIcon","record","recordTypeId","recordType","FILE","findFileTypeIcon","extension","findRecordTypeIcon","recordTypeIcon","typeId","recordIconColorClass","_record$recordTypeId","recordTypeIconColorClass","RECORD","FOLDER","MEETING","SECTION","ITEM","DOCUMENT","menuItemColorClass","makeWatcher","property","oldVal","attr","prototype","hasOwnProperty","call","$delete","$data","$set","created","$watch","immediate","mapGetters","createNamespacedHelpers","menuItemColor","mdMenuItemColor","setBackgroundColor","consoleError","isCssColor","colorName","colorModifier","toString","split","Routable","getSlot","createSimpleFunctional","divider","items","Array","genDivider","$createElement","VBreadcrumbsDivider","genItems","hasSlot","$scopedSlots","item","i","VBreadcrumbsItem","join","scopedSlots","fn","onSelectedBreadcrumbItem","_vm","_c","breadcrumbs","buildTargetRoute","Function","id","canNavigate","selectedRecord","breadcrumbItems","map","bc","breadcrumbTextClass","lighten","Text","fontEmphasis","bold","getClassText","breadcrumbIconName","breadcrumbItem","_this$breadcrumbs","_breadcrumbItem$id","_this$selectedRecord","_breadcrumbItem$id2","breadcrumbText","_breadcrumbItem$text","breadcrumbIconColorClass","_this$breadcrumbs2","_breadcrumbItem$id3","findBreadcrumb","$emit","console","error","_breadcrumbItem$id4","_this$breadcrumbs3","_item$disabled","_this$canNavigate","_item$id","_item$disabled2","staticRenderFns","sizeableClasses"],"mappings":"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","file":"js/chunk-6448b0ca.cfd273bd.js","sourcesContent":["import './VIcon.sass'\n\n// Mixins\nimport BindsAttrs from '../../mixins/binds-attrs'\nimport Colorable from '../../mixins/colorable'\nimport Sizeable from '../../mixins/sizeable'\nimport Themeable from '../../mixins/themeable'\n\n// Util\nimport { convertToUnit, keys, remapInternalIcon } from '../../util/helpers'\n\n// Types\nimport Vue, { CreateElement, VNode, VNodeChildren, VNodeData } from 'vue'\nimport mixins from '../../util/mixins'\nimport { VuetifyIcon, VuetifyIconComponent } from 'vuetify/types/services/icons'\n\nenum SIZE_MAP {\n xSmall = '12px',\n small = '16px',\n default = '24px',\n medium = '28px',\n large = '36px',\n xLarge = '40px'\n}\n\nfunction isFontAwesome5 (iconType: string): boolean {\n return ['fas', 'far', 'fal', 'fab', 'fad', 'fak'].some(val => iconType.includes(val))\n}\n\nfunction isSvgPath (icon: string): boolean {\n return (/^[mzlhvcsqta]\\s*[-+.0-9][^mlhvzcsqta]+/i.test(icon) && /[\\dz]$/i.test(icon) && icon.length > 4)\n}\n\nconst VIcon = mixins(\n BindsAttrs,\n Colorable,\n Sizeable,\n Themeable\n /* @vue/component */\n).extend({\n name: 'v-icon',\n\n props: {\n dense: Boolean,\n disabled: Boolean,\n left: Boolean,\n right: Boolean,\n size: [Number, String],\n tag: {\n type: String,\n required: false,\n default: 'i',\n },\n },\n\n computed: {\n medium () {\n return false\n },\n hasClickListener (): boolean {\n return Boolean(\n this.listeners$.click || this.listeners$['!click']\n )\n },\n },\n\n methods: {\n getIcon (): VuetifyIcon {\n let iconName = ''\n if (this.$slots.default) iconName = this.$slots.default[0].text!.trim()\n\n return remapInternalIcon(this, iconName)\n },\n getSize (): string | undefined {\n const sizes = {\n xSmall: this.xSmall,\n small: this.small,\n medium: this.medium,\n large: this.large,\n xLarge: this.xLarge,\n }\n\n const explicitSize = keys(sizes).find(key => sizes[key])\n\n return (\n (explicitSize && SIZE_MAP[explicitSize]) || convertToUnit(this.size)\n )\n },\n // Component data for both font icon and SVG wrapper span\n getDefaultData (): VNodeData {\n return {\n staticClass: 'v-icon notranslate',\n class: {\n 'v-icon--disabled': this.disabled,\n 'v-icon--left': this.left,\n 'v-icon--link': this.hasClickListener,\n 'v-icon--right': this.right,\n 'v-icon--dense': this.dense,\n },\n attrs: {\n 'aria-hidden': !this.hasClickListener,\n disabled: this.hasClickListener && this.disabled,\n type: this.hasClickListener ? 'button' : undefined,\n ...this.attrs$,\n },\n on: this.listeners$,\n }\n },\n getSvgWrapperData () {\n const fontSize = this.getSize()\n const wrapperData = {\n ...this.getDefaultData(),\n style: fontSize ? {\n fontSize,\n height: fontSize,\n width: fontSize,\n } : undefined,\n }\n this.applyColors(wrapperData)\n\n return wrapperData\n },\n applyColors (data: VNodeData): void {\n data.class = { ...data.class, ...this.themeClasses }\n this.setTextColor(this.color, data)\n },\n renderFontIcon (icon: string, h: CreateElement): VNode {\n const newChildren: VNodeChildren = []\n const data = this.getDefaultData()\n\n let iconType = 'material-icons'\n // Material Icon delimiter is _\n // https://material.io/icons/\n const delimiterIndex = icon.indexOf('-')\n const isMaterialIcon = delimiterIndex <= -1\n\n if (isMaterialIcon) {\n // Material icon uses ligatures.\n newChildren.push(icon)\n } else {\n iconType = icon.slice(0, delimiterIndex)\n if (isFontAwesome5(iconType)) iconType = ''\n }\n\n data.class[iconType] = true\n data.class[icon] = !isMaterialIcon\n\n const fontSize = this.getSize()\n if (fontSize) data.style = { fontSize }\n\n this.applyColors(data)\n\n return h(this.hasClickListener ? 'button' : this.tag, data, newChildren)\n },\n renderSvgIcon (icon: string, h: CreateElement): VNode {\n const svgData: VNodeData = {\n class: 'v-icon__svg',\n attrs: {\n xmlns: 'http://www.w3.org/2000/svg',\n viewBox: '0 0 24 24',\n role: 'img',\n 'aria-hidden': true,\n },\n }\n\n const size = this.getSize()\n if (size) {\n svgData.style = {\n fontSize: size,\n height: size,\n width: size,\n }\n }\n\n return h(this.hasClickListener ? 'button' : 'span', this.getSvgWrapperData(), [\n h('svg', svgData, [\n h('path', {\n attrs: {\n d: icon,\n },\n }),\n ]),\n ])\n },\n renderSvgIconComponent (\n icon: VuetifyIconComponent,\n h: CreateElement\n ): VNode {\n const data: VNodeData = {\n class: {\n 'v-icon__component': true,\n },\n }\n\n const size = this.getSize()\n if (size) {\n data.style = {\n fontSize: size,\n height: size,\n width: size,\n }\n }\n\n this.applyColors(data)\n\n const component = icon.component\n data.props = icon.props\n data.nativeOn = data.on\n\n return h(this.hasClickListener ? 'button' : 'span', this.getSvgWrapperData(), [\n h(component, data),\n ])\n },\n },\n\n render (h: CreateElement): VNode {\n const icon = this.getIcon()\n\n if (typeof icon === 'string') {\n if (isSvgPath(icon)) {\n return this.renderSvgIcon(icon, h)\n }\n return this.renderFontIcon(icon, h)\n }\n\n return this.renderSvgIconComponent(icon, h)\n },\n})\n\nexport default Vue.extend({\n name: 'v-icon',\n\n $_wrapperFor: VIcon,\n\n functional: true,\n\n render (h, { data, children }): VNode {\n let iconName = ''\n\n // Support usage of v-text and v-html\n if (data.domProps) {\n iconName = data.domProps.textContent ||\n data.domProps.innerHTML ||\n iconName\n\n // Remove nodes so it doesn't\n // overwrite our changes\n delete data.domProps.textContent\n delete data.domProps.innerHTML\n }\n\n return h(VIcon, data, iconName ? [iconName] : children)\n },\n})\n","import Vue, { VNodeData, PropType } from 'vue'\n\n// Directives\nimport Ripple, { RippleOptions } from '../../directives/ripple'\n\n// Utilities\nimport { getObjectValueByPath } from '../../util/helpers'\n\nexport default Vue.extend({\n name: 'routable',\n\n directives: {\n Ripple,\n },\n\n props: {\n activeClass: String,\n append: Boolean,\n disabled: Boolean,\n exact: {\n type: Boolean as PropType,\n default: undefined,\n },\n exactPath: Boolean,\n exactActiveClass: String,\n link: Boolean,\n href: [String, Object],\n to: [String, Object],\n nuxt: Boolean,\n replace: Boolean,\n ripple: {\n type: [Boolean, Object],\n default: null,\n },\n tag: String,\n target: String,\n },\n\n data: () => ({\n isActive: false,\n proxyClass: '',\n }),\n\n computed: {\n classes (): object {\n const classes: Record = {}\n\n if (this.to) return classes\n\n if (this.activeClass) classes[this.activeClass] = this.isActive\n if (this.proxyClass) classes[this.proxyClass] = this.isActive\n\n return classes\n },\n computedRipple (): RippleOptions | boolean {\n return this.ripple ?? (!this.disabled && this.isClickable)\n },\n isClickable (): boolean {\n if (this.disabled) return false\n\n return Boolean(\n this.isLink ||\n this.$listeners.click ||\n this.$listeners['!click'] ||\n this.$attrs.tabindex\n )\n },\n isLink (): boolean {\n return this.to || this.href || this.link\n },\n styles: () => ({}),\n },\n\n watch: {\n $route: 'onRouteChange',\n },\n\n mounted () {\n this.onRouteChange()\n },\n\n methods: {\n generateRouteLink () {\n let exact = this.exact\n let tag\n\n const data: VNodeData = {\n attrs: {\n tabindex: 'tabindex' in this.$attrs ? this.$attrs.tabindex : undefined,\n },\n class: this.classes,\n style: this.styles,\n props: {},\n directives: [{\n name: 'ripple',\n value: this.computedRipple,\n }],\n [this.to ? 'nativeOn' : 'on']: {\n ...this.$listeners,\n ...('click' in this ? { click: (this as any).click } : undefined), // #14447\n },\n ref: 'link',\n }\n\n if (typeof this.exact === 'undefined') {\n exact = this.to === '/' ||\n (this.to === Object(this.to) && this.to.path === '/')\n }\n\n if (this.to) {\n // Add a special activeClass hook\n // for component level styles\n let activeClass = this.activeClass\n let exactActiveClass = this.exactActiveClass || activeClass\n\n if (this.proxyClass) {\n activeClass = `${activeClass} ${this.proxyClass}`.trim()\n exactActiveClass = `${exactActiveClass} ${this.proxyClass}`.trim()\n }\n\n tag = this.nuxt ? 'nuxt-link' : 'router-link'\n Object.assign(data.props, {\n to: this.to,\n exact,\n exactPath: this.exactPath,\n activeClass,\n exactActiveClass,\n append: this.append,\n replace: this.replace,\n })\n } else {\n tag = (this.href && 'a') || this.tag || 'div'\n\n if (tag === 'a' && this.href) data.attrs!.href = this.href\n }\n\n if (this.target) data.attrs!.target = this.target\n\n return { tag, data }\n },\n onRouteChange () {\n if (!this.to || !this.$refs.link || !this.$route) return\n const activeClass = `${this.activeClass || ''} ${this.proxyClass || ''}`.trim()\n const exactActiveClass = `${this.exactActiveClass || ''} ${this.proxyClass || ''}`.trim() || activeClass\n\n const path = '_vnode.data.class.' + (this.exact ? exactActiveClass : activeClass)\n\n this.$nextTick(() => {\n /* istanbul ignore else */\n if (!getObjectValueByPath(this.$refs.link, path) === this.isActive) {\n this.toggle()\n }\n })\n },\n toggle () {\n this.isActive = !this.isActive\n },\n },\n})\n","// Styles\nimport './VRipple.sass'\n\n// Utilities\nimport { consoleWarn } from '../../util/console'\nimport { keyCodes } from '../../util/helpers'\n\n// Types\nimport { VNode, VNodeDirective } from 'vue'\n\ntype VuetifyRippleEvent = (MouseEvent | TouchEvent | KeyboardEvent) & { rippleStop?: boolean }\n\nconst DELAY_RIPPLE = 80\n\nfunction transform (el: HTMLElement, value: string) {\n el.style.transform = value\n el.style.webkitTransform = value\n}\n\nexport interface RippleOptions {\n class?: string\n center?: boolean\n circle?: boolean\n}\n\nfunction isTouchEvent (e: VuetifyRippleEvent): e is TouchEvent {\n return e.constructor.name === 'TouchEvent'\n}\n\nfunction isKeyboardEvent (e: VuetifyRippleEvent): e is KeyboardEvent {\n return e.constructor.name === 'KeyboardEvent'\n}\n\nconst calculate = (\n e: VuetifyRippleEvent,\n el: HTMLElement,\n value: RippleOptions = {}\n) => {\n let localX = 0\n let localY = 0\n\n if (!isKeyboardEvent(e)) {\n const offset = el.getBoundingClientRect()\n const target = isTouchEvent(e) ? e.touches[e.touches.length - 1] : e\n\n localX = target.clientX - offset.left\n localY = target.clientY - offset.top\n }\n\n let radius = 0\n let scale = 0.3\n if (el._ripple && el._ripple.circle) {\n scale = 0.15\n radius = el.clientWidth / 2\n radius = value.center ? radius : radius + Math.sqrt((localX - radius) ** 2 + (localY - radius) ** 2) / 4\n } else {\n radius = Math.sqrt(el.clientWidth ** 2 + el.clientHeight ** 2) / 2\n }\n\n const centerX = `${(el.clientWidth - (radius * 2)) / 2}px`\n const centerY = `${(el.clientHeight - (radius * 2)) / 2}px`\n\n const x = value.center ? centerX : `${localX - radius}px`\n const y = value.center ? centerY : `${localY - radius}px`\n\n return { radius, scale, x, y, centerX, centerY }\n}\n\nconst ripples = {\n /* eslint-disable max-statements */\n show (\n e: VuetifyRippleEvent,\n el: HTMLElement,\n value: RippleOptions = {}\n ) {\n if (!el._ripple || !el._ripple.enabled) {\n return\n }\n\n const container = document.createElement('span')\n const animation = document.createElement('span')\n\n container.appendChild(animation)\n container.className = 'v-ripple__container'\n\n if (value.class) {\n container.className += ` ${value.class}`\n }\n\n const { radius, scale, x, y, centerX, centerY } = calculate(e, el, value)\n\n const size = `${radius * 2}px`\n animation.className = 'v-ripple__animation'\n animation.style.width = size\n animation.style.height = size\n\n el.appendChild(container)\n\n const computed = window.getComputedStyle(el)\n if (computed && computed.position === 'static') {\n el.style.position = 'relative'\n el.dataset.previousPosition = 'static'\n }\n\n animation.classList.add('v-ripple__animation--enter')\n animation.classList.add('v-ripple__animation--visible')\n transform(animation, `translate(${x}, ${y}) scale3d(${scale},${scale},${scale})`)\n animation.dataset.activated = String(performance.now())\n\n setTimeout(() => {\n animation.classList.remove('v-ripple__animation--enter')\n animation.classList.add('v-ripple__animation--in')\n transform(animation, `translate(${centerX}, ${centerY}) scale3d(1,1,1)`)\n }, 0)\n },\n\n hide (el: HTMLElement | null) {\n if (!el || !el._ripple || !el._ripple.enabled) return\n\n const ripples = el.getElementsByClassName('v-ripple__animation')\n\n if (ripples.length === 0) return\n const animation = ripples[ripples.length - 1]\n\n if (animation.dataset.isHiding) return\n else animation.dataset.isHiding = 'true'\n\n const diff = performance.now() - Number(animation.dataset.activated)\n const delay = Math.max(250 - diff, 0)\n\n setTimeout(() => {\n animation.classList.remove('v-ripple__animation--in')\n animation.classList.add('v-ripple__animation--out')\n\n setTimeout(() => {\n const ripples = el.getElementsByClassName('v-ripple__animation')\n if (ripples.length === 1 && el.dataset.previousPosition) {\n el.style.position = el.dataset.previousPosition\n delete el.dataset.previousPosition\n }\n\n if (animation.parentNode?.parentNode === el) el.removeChild(animation.parentNode)\n }, 300)\n }, delay)\n },\n}\n\nfunction isRippleEnabled (value: any): value is true {\n return typeof value === 'undefined' || !!value\n}\n\nfunction rippleShow (e: VuetifyRippleEvent) {\n const value: RippleOptions = {}\n const element = e.currentTarget as HTMLElement\n\n if (!element || !element._ripple || element._ripple.touched || e.rippleStop) return\n\n // Don't allow the event to trigger ripples on any other elements\n e.rippleStop = true\n\n if (isTouchEvent(e)) {\n element._ripple.touched = true\n element._ripple.isTouch = true\n } else {\n // It's possible for touch events to fire\n // as mouse events on Android/iOS, this\n // will skip the event call if it has\n // already been registered as touch\n if (element._ripple.isTouch) return\n }\n value.center = element._ripple.centered || isKeyboardEvent(e)\n if (element._ripple.class) {\n value.class = element._ripple.class\n }\n\n if (isTouchEvent(e)) {\n // already queued that shows or hides the ripple\n if (element._ripple.showTimerCommit) return\n\n element._ripple.showTimerCommit = () => {\n ripples.show(e, element, value)\n }\n element._ripple.showTimer = window.setTimeout(() => {\n if (element && element._ripple && element._ripple.showTimerCommit) {\n element._ripple.showTimerCommit()\n element._ripple.showTimerCommit = null\n }\n }, DELAY_RIPPLE)\n } else {\n ripples.show(e, element, value)\n }\n}\n\nfunction rippleHide (e: Event) {\n const element = e.currentTarget as HTMLElement | null\n if (!element || !element._ripple) return\n\n window.clearTimeout(element._ripple.showTimer)\n\n // The touch interaction occurs before the show timer is triggered.\n // We still want to show ripple effect.\n if (e.type === 'touchend' && element._ripple.showTimerCommit) {\n element._ripple.showTimerCommit()\n element._ripple.showTimerCommit = null\n\n // re-queue ripple hiding\n element._ripple.showTimer = setTimeout(() => {\n rippleHide(e)\n })\n return\n }\n\n window.setTimeout(() => {\n if (element._ripple) {\n element._ripple.touched = false\n }\n })\n ripples.hide(element)\n}\n\nfunction rippleCancelShow (e: MouseEvent | TouchEvent) {\n const element = e.currentTarget as HTMLElement | undefined\n\n if (!element || !element._ripple) return\n\n if (element._ripple.showTimerCommit) {\n element._ripple.showTimerCommit = null\n }\n\n window.clearTimeout(element._ripple.showTimer)\n}\n\nlet keyboardRipple = false\n\nfunction keyboardRippleShow (e: KeyboardEvent) {\n if (!keyboardRipple && (e.keyCode === keyCodes.enter || e.keyCode === keyCodes.space)) {\n keyboardRipple = true\n rippleShow(e)\n }\n}\n\nfunction keyboardRippleHide (e: KeyboardEvent) {\n keyboardRipple = false\n rippleHide(e)\n}\n\nfunction focusRippleHide (e: FocusEvent) {\n if (keyboardRipple === true) {\n keyboardRipple = false\n rippleHide(e)\n }\n}\n\nfunction updateRipple (el: HTMLElement, binding: VNodeDirective, wasEnabled: boolean) {\n const enabled = isRippleEnabled(binding.value)\n if (!enabled) {\n ripples.hide(el)\n }\n el._ripple = el._ripple || {}\n el._ripple.enabled = enabled\n const value = binding.value || {}\n if (value.center) {\n el._ripple.centered = true\n }\n if (value.class) {\n el._ripple.class = binding.value.class\n }\n if (value.circle) {\n el._ripple.circle = value.circle\n }\n if (enabled && !wasEnabled) {\n el.addEventListener('touchstart', rippleShow, { passive: true })\n el.addEventListener('touchend', rippleHide, { passive: true })\n el.addEventListener('touchmove', rippleCancelShow, { passive: true })\n el.addEventListener('touchcancel', rippleHide)\n\n el.addEventListener('mousedown', rippleShow)\n el.addEventListener('mouseup', rippleHide)\n el.addEventListener('mouseleave', rippleHide)\n\n el.addEventListener('keydown', keyboardRippleShow)\n el.addEventListener('keyup', keyboardRippleHide)\n\n el.addEventListener('blur', focusRippleHide)\n\n // Anchor tags can be dragged, causes other hides to fail - #1537\n el.addEventListener('dragstart', rippleHide, { passive: true })\n } else if (!enabled && wasEnabled) {\n removeListeners(el)\n }\n}\n\nfunction removeListeners (el: HTMLElement) {\n el.removeEventListener('mousedown', rippleShow)\n el.removeEventListener('touchstart', rippleShow)\n el.removeEventListener('touchend', rippleHide)\n el.removeEventListener('touchmove', rippleCancelShow)\n el.removeEventListener('touchcancel', rippleHide)\n el.removeEventListener('mouseup', rippleHide)\n el.removeEventListener('mouseleave', rippleHide)\n el.removeEventListener('keydown', keyboardRippleShow)\n el.removeEventListener('keyup', keyboardRippleHide)\n el.removeEventListener('dragstart', rippleHide)\n el.removeEventListener('blur', focusRippleHide)\n}\n\nfunction directive (el: HTMLElement, binding: VNodeDirective, node: VNode) {\n updateRipple(el, binding, false)\n\n if (process.env.NODE_ENV === 'development') {\n // warn if an inline element is used, waiting for el to be in the DOM first\n node.context && node.context.$nextTick(() => {\n const computed = window.getComputedStyle(el)\n if (computed && computed.display === 'inline') {\n const context = (node as any).fnOptions ? [(node as any).fnOptions, node.context] : [node.componentInstance]\n consoleWarn('v-ripple can only be used on block-level elements', ...context)\n }\n })\n }\n}\n\nfunction unbind (el: HTMLElement) {\n delete el._ripple\n removeListeners(el)\n}\n\nfunction update (el: HTMLElement, binding: VNodeDirective) {\n if (binding.value === binding.oldValue) {\n return\n }\n\n const wasEnabled = isRippleEnabled(binding.oldValue)\n updateRipple(el, binding, wasEnabled)\n}\n\nexport const Ripple = {\n bind: directive,\n unbind,\n update,\n}\n\nexport default Ripple\n","import {\r\n Color,\r\n colorMD,\r\n variantNumber,\r\n variantType\r\n} from \"@/design/colors/Color\";\r\n\r\n/**\r\n * Get Material Design folder Color\r\n * @returns {{name:string, variant: string, variantNumber:number}}\r\n */\r\nconst folderColor = new Color(\r\n colorMD.yellow,\r\n variantType.darken,\r\n variantNumber.n2\r\n);\r\n\r\n/**\r\n * Get Material Design compound document Color\r\n */\r\nconst documentColor = new Color(\r\n colorMD.indigo,\r\n variantType.darken,\r\n variantNumber.n1\r\n);\r\n\r\n/**\r\n * Folder Color Class\r\n * @returns {string|*}\r\n */\r\nconst folderColorClass = folderColor.getClassColor();\r\n\r\n/**\r\n * Compound document Color Class\r\n * @type {string|*}\r\n */\r\nconst documentColorClass = documentColor.getClassColor();\r\n\r\nexport { folderColor, documentColor, folderColorClass, documentColorClass };\r\n","// model\r\nimport { recordType, findRecordTypeIcon } from \"@/model/record/recordModel\";\r\nimport {\r\n documentColorClass,\r\n folderColorClass\r\n} from \"@/model/folder/folderModel\";\r\nimport { findFileTypeIcon } from \"@/model/record/fileModel\";\r\n\r\n// mixins\r\nimport { menuItemSettingsMixin } from \"../base/settings/menuItemSettingsMixin\";\r\n\r\nexport const recordIconMixin = {\r\n mixins: [menuItemSettingsMixin],\r\n methods: {\r\n /**\r\n * Get record Icon name\r\n * @param {{recordTypeId:number, children:number, extension:string}} record\r\n * @return {string|string}\r\n */\r\n recordIcon(record) {\r\n if (!record) {\r\n return undefined;\r\n }\r\n switch (record.recordTypeId) {\r\n // case recordType.FOLDER:\r\n // case recordType.DOCUMENT: {\r\n // return (record?.children ?? 0) > 0\r\n // ? iconFolderPlus\r\n // : findRecordTypeIcon(type);\r\n // }\r\n // case recordType.SECTION: {\r\n // return (record?.children ?? 0) > 0\r\n // ? iconAgendaSectionPlus\r\n // : findRecordTypeIcon(type);\r\n // }\r\n case recordType.FILE: {\r\n return findFileTypeIcon(record.extension);\r\n }\r\n default: {\r\n return findRecordTypeIcon(record.recordTypeId);\r\n }\r\n }\r\n },\r\n\r\n /**\r\n * Get record Type Icon\r\n * @param {Number|number} typeId\r\n * @return {string}\r\n */\r\n recordTypeIcon(typeId) {\r\n return findRecordTypeIcon(typeId);\r\n },\r\n\r\n /**\r\n * Get record Icon Color Class\r\n * @param {{recordTypeId:number}} record\r\n * @return {undefined|string}\r\n */\r\n recordIconColorClass(record) {\r\n return record\r\n ? this.recordTypeIconColorClass(\r\n record?.recordTypeId ?? recordType.RECORD\r\n )\r\n : undefined;\r\n },\r\n\r\n /**\r\n * record Type Icon Color Class\r\n * @param {Number|number} typeId\r\n * @return {undefined|string}\r\n */\r\n recordTypeIconColorClass(typeId) {\r\n switch (typeId) {\r\n case recordType.FOLDER:\r\n case recordType.MEETING:\r\n case recordType.SECTION:\r\n case recordType.ITEM: {\r\n return folderColorClass;\r\n }\r\n case recordType.DOCUMENT: {\r\n return documentColorClass;\r\n }\r\n case recordType.RECORD: {\r\n return undefined;\r\n }\r\n default: {\r\n return this.menuItemColorClass;\r\n }\r\n }\r\n }\r\n }\r\n};\r\n","import Vue from 'vue'\n\n/**\n * This mixin provides `attrs$` and `listeners$` to work around\n * vue bug https://github.com/vuejs/vue/issues/10115\n */\n\nfunction makeWatcher (property: string): ThisType & ((val: any, oldVal: any) => void) {\n return function (this: Vue, val, oldVal) {\n for (const attr in oldVal) {\n if (!Object.prototype.hasOwnProperty.call(val, attr)) {\n this.$delete(this.$data[property], attr)\n }\n }\n for (const attr in val) {\n this.$set(this.$data[property], attr, val[attr])\n }\n }\n}\n\nexport default Vue.extend({\n data: () => ({\n attrs$: {} as Dictionary,\n listeners$: {} as Dictionary,\n }),\n\n created () {\n // Work around unwanted re-renders: https://github.com/vuejs/vue/issues/10115\n // Make sure to use `attrs$` instead of `$attrs` (confusing right?)\n this.$watch('$attrs', makeWatcher('attrs$'), { immediate: true })\n this.$watch('$listeners', makeWatcher('listeners$'), { immediate: true })\n },\n})\n","// design\r\nimport { Color } from \"@/design/colors/Color\";\r\n\r\n// vuex/store\r\nimport { createNamespacedHelpers } from \"vuex\";\r\nconst { mapGetters } = createNamespacedHelpers(\"solution\");\r\n\r\n/**\r\n * Menu Item Settings Mixin encapsulate Menu Item Settings logic\r\n */\r\nexport const menuItemSettingsMixin = {\r\n computed: {\r\n ...mapGetters({\r\n menuItemColor: \"menuItemColor\"\r\n }),\r\n /**\r\n * Get Material Design Menu Item Color\r\n * @returns {Color}\r\n */\r\n mdMenuItemColor() {\r\n return new Color(\r\n this.menuItemColor.name,\r\n this.menuItemColor.variantType,\r\n this.menuItemColor.variantNumber\r\n );\r\n },\r\n /**\r\n * Get menu Item color class\r\n * @returns {string|*}\r\n */\r\n menuItemColorClass() {\r\n return this.mdMenuItemColor.getClassColor();\r\n }\r\n }\r\n};\r\n","import Vue from 'vue'\nimport { VNodeData } from 'vue/types/vnode'\nimport { consoleError } from '../../util/console'\nimport { isCssColor } from '../../util/colorUtils'\n\nexport default Vue.extend({\n name: 'colorable',\n\n props: {\n color: String,\n },\n\n methods: {\n setBackgroundColor (color?: string | false, data: VNodeData = {}): VNodeData {\n if (typeof data.style === 'string') {\n // istanbul ignore next\n consoleError('style must be an object', this)\n // istanbul ignore next\n return data\n }\n if (typeof data.class === 'string') {\n // istanbul ignore next\n consoleError('class must be an object', this)\n // istanbul ignore next\n return data\n }\n if (isCssColor(color)) {\n data.style = {\n ...data.style as object,\n 'background-color': `${color}`,\n 'border-color': `${color}`,\n }\n } else if (color) {\n data.class = {\n ...data.class,\n [color]: true,\n }\n }\n\n return data\n },\n\n setTextColor (color?: string | false, data: VNodeData = {}): VNodeData {\n if (typeof data.style === 'string') {\n // istanbul ignore next\n consoleError('style must be an object', this)\n // istanbul ignore next\n return data\n }\n if (typeof data.class === 'string') {\n // istanbul ignore next\n consoleError('class must be an object', this)\n // istanbul ignore next\n return data\n }\n if (isCssColor(color)) {\n data.style = {\n ...data.style as object,\n color: `${color}`,\n 'caret-color': `${color}`,\n }\n } else if (color) {\n const [colorName, colorModifier] = color.toString().trim().split(' ', 2) as (string | undefined)[]\n data.class = {\n ...data.class,\n [colorName + '--text']: true,\n }\n if (colorModifier) {\n data.class['text--' + colorModifier] = true\n }\n }\n return data\n },\n },\n})\n","import Routable from '../../mixins/routable'\n\nimport mixins from '../../util/mixins'\nimport { getSlot } from '../../util/helpers'\nimport { VNode } from 'vue'\n\n/* @vue/component */\nexport default mixins(Routable).extend({\n name: 'v-breadcrumbs-item',\n\n props: {\n // In a breadcrumb, the currently\n // active item should be dimmed\n activeClass: {\n type: String,\n default: 'v-breadcrumbs__item--disabled',\n },\n ripple: {\n type: [Boolean, Object],\n default: false,\n },\n },\n\n computed: {\n classes (): object {\n return {\n 'v-breadcrumbs__item': true,\n [this.activeClass]: this.disabled,\n }\n },\n },\n\n render (h): VNode {\n const { tag, data } = this.generateRouteLink()\n\n return h('li', [\n h(tag, {\n ...data,\n attrs: {\n ...data.attrs,\n 'aria-current': this.isActive && this.isLink ? 'page' : undefined,\n },\n }, getSlot(this)),\n ])\n },\n})\n","import { createSimpleFunctional } from '../../util/helpers'\n\nexport default createSimpleFunctional('v-breadcrumbs__divider', 'li')\n","// Styles\nimport './VBreadcrumbs.sass'\n\n// Types\nimport { VNode } from 'vue'\nimport { PropValidator } from 'vue/types/options'\n\n// Components\nimport VBreadcrumbsItem from './VBreadcrumbsItem'\nimport VBreadcrumbsDivider from './VBreadcrumbsDivider'\n\n// Mixins\nimport Themeable from '../../mixins/themeable'\n\n// Utils\nimport mixins from '../../util/mixins'\nimport { getSlot } from '../../util/helpers'\n\nexport default mixins(\n Themeable\n /* @vue/component */\n).extend({\n name: 'v-breadcrumbs',\n\n props: {\n divider: {\n type: String,\n default: '/',\n },\n items: {\n type: Array,\n default: () => ([]),\n } as PropValidator,\n large: Boolean,\n },\n\n computed: {\n classes (): object {\n return {\n 'v-breadcrumbs--large': this.large,\n ...this.themeClasses,\n }\n },\n },\n\n methods: {\n genDivider () {\n return this.$createElement(VBreadcrumbsDivider, this.$slots.divider ? this.$slots.divider : this.divider)\n },\n genItems () {\n const items = []\n const hasSlot = !!this.$scopedSlots.item\n const keys = []\n\n for (let i = 0; i < this.items.length; i++) {\n const item = this.items[i]\n\n keys.push(item.text)\n\n if (hasSlot) items.push(this.$scopedSlots.item!({ item }))\n else items.push(this.$createElement(VBreadcrumbsItem, { key: keys.join('.'), props: item }, [item.text]))\n\n if (i < this.items.length - 1) items.push(this.genDivider())\n }\n\n return items\n },\n },\n\n render (h): VNode {\n const children = getSlot(this) || this.genItems()\n\n return h('ul', {\n staticClass: 'v-breadcrumbs',\n class: this.classes,\n }, children)\n },\n})\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-breadcrumbs',{attrs:{\"items\":_vm.breadcrumbItems},scopedSlots:_vm._u([{key:\"item\",fn:function({ item }){return [_c('v-breadcrumbs-item',{attrs:{\"disabled\":_vm.disabled(item)},on:{\"click\":function($event){return _vm.onSelectedBreadcrumbItem(item)}}},[(_vm.disabled(item))?[_c('span',[_c('v-icon',[_vm._v(_vm._s(_vm.breadcrumbIconName(item)))]),_vm._v(\" \"+_vm._s(item.text)+\" \")],1)]:[_c('router-link',{staticClass:\"v-breadcrumbs__item\",attrs:{\"to\":_vm.buildTargetRoute(item.id)}},[_c('span',{class:_vm.breadcrumbTextClass},[_c('v-icon',{attrs:{\"color\":_vm.breadcrumbIconColorClass(item)}},[_vm._v(_vm._s(_vm.breadcrumbIconName(item)))]),_vm._v(\" \"+_vm._s(_vm.breadcrumbText(item))+\" \")],1)])]],2)]}}])})\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!./BreadcrumbsRecord.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!./BreadcrumbsRecord.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./BreadcrumbsRecord.vue?vue&type=template&id=019afd64\"\nimport script from \"./BreadcrumbsRecord.vue?vue&type=script&lang=js\"\nexport * from \"./BreadcrumbsRecord.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'\n\nexport default Vue.extend({\n name: 'sizeable',\n\n props: {\n large: Boolean,\n small: Boolean,\n xLarge: Boolean,\n xSmall: Boolean,\n },\n\n computed: {\n medium (): boolean {\n return Boolean(\n !this.xSmall &&\n !this.small &&\n !this.large &&\n !this.xLarge\n )\n },\n sizeableClasses (): object {\n return {\n 'v-size--x-small': this.xSmall,\n 'v-size--small': this.small,\n 'v-size--default': this.medium,\n 'v-size--large': this.large,\n 'v-size--x-large': this.xLarge,\n }\n },\n },\n})\n"],"sourceRoot":""}