{"version":3,"sources":["webpack:///../../../src/components/VDialog/VDialog.ts","webpack:///../../../src/components/VRadioGroup/VRadioGroup.ts","webpack:///../../../src/components/VRadioGroup/VRadio.ts","webpack:///../../../src/components/VGrid/grid.ts","webpack:///../../../src/components/VGrid/VContainer.ts","webpack:///./src/modules/space/components/TheSpaceAssignRolesDialog.vue","webpack:///src/modules/space/components/TheSpaceAssignRolesDialog.vue","webpack:///./src/modules/space/components/TheSpaceAssignRolesDialog.vue?41a8","webpack:///./src/modules/space/components/TheSpaceAssignRolesDialog.vue?a48e","webpack:///../../../src/components/VOverlay/VOverlay.ts","webpack:///../../../src/components/VOverlay/index.ts","webpack:///../../../src/mixins/overlayable/index.ts"],"names":["baseMixins","mixins","Dependent","Detachable","Overlayable","Returnable","Stackable","Activatable","extend","name","directives","ClickOutside","props","dark","Boolean","disabled","fullscreen","light","maxWidth","String","Number","noClickAnimation","origin","type","default","persistent","retainFocus","scrollable","transition","width","data","activatedBy","animate","animateTimeout","stackMinZIndex","previousActiveElement","computed","classes","this","contentClass","trim","isActive","contentClasses","hasActivator","$slots","activator","$scopedSlots","watch","val","show","hideScroll","removeOverlay","unbind","_a","focus","showScroll","genOverlay","created","$attrs","hasOwnProperty","removed","beforeMount","$nextTick","isBooted","beforeDestroy","window","methods","animateClick","clearTimeout","setTimeout","closeConditional","e","target","_isDestroyed","$refs","content","contains","overlay","$el","activeZIndex","getMaxZIndex","document","documentElement","classList","add","options","call","hideOverlay","dialog","activeElement","_b","bind","addEventListener","onFocusin","removeEventListener","onClickOutside","$emit","onKeydown","keyCode","keyCodes","esc","getOpenDependents","length","getActivator","includes","getOpenDependentElements","some","el","focusable","querySelectorAll","find","hasAttribute","matches","genContent","showLazyContent","$createElement","VThemeProvider","root","class","attrs","role","undefined","getScopeIdAttrs","on","keydown","style","zIndex","ref","genTransition","genInnerContent","appear","tabindex","value","handler","include","transformOrigin","convertToUnit","getContentSlot","render","h","staticClass","attach","genActivator","BaseItemGroup","VInput","provide","radioGroup","column","height","row","genDefaultSlot","id","computedId","genInputSlot","click","genLabel","label","for","tag","onClick","vnode","attrs$","BindsAttrs","Colorable","Rippleable","GroupableFactory","Themeable","inheritAttrs","offIcon","onIcon","readonly","isFocused","isDisabled","themeClasses","groupClasses","computedColor","Selectable","computedIcon","hasLabel","hasState","isReadonly","computedName","_uid","rippleState","validationState","genInput","args","VLabel","prevent","color","focused","getSlot","genRadio","radioAttrs","title","VIcon","setTextColor","dense","genRipple","onFocus","onBlur","onChange","toggle","mergeListeners","listeners$","VGrid","Vue","functional","children","Object","keys","filter","key","startsWith","join","domProps","Grid","fluid","mergeData","Array","concat","_vm","model","callback","expression","assignmentTab","assignmentTabOptions","expand","spaceRoleBox","_c","_v","scopedSlots","proxy","spaceAdminRole","instance","fn","_u","outcome","selectedRolesLength","activateAssignButton","assignRoles","staticRenderFns","instanceData","assignee","spaceName","ucid","spaceRole","instances","targetSearch","assigningRole","spaceRoleLabels","SPACE_ADMIN","SELECT_ROLES_TAB","REVIEW_AND_ASSIGN_TAB","roleAssignmentOutcome","disableReviewTab","finishedAssignments","resetSelectedSpaceData","clearAndCloseDialog","assignSpaceRole","role_name","post","then","catch","assignInstanceRoles","instancesToAssign","finally","numTargetInstances","filteredInstanceList","immediate","component","Toggleable","absolute","opacity","__scrim","setBackgroundColor","computedOpacity","styles","push","$listeners","VOverlay","overlayColor","overlayOpacity","animationFrame","createOverlay","propsData","$mount","parent","parentNode","querySelector","insertBefore","firstChild","requestAnimationFrame","getZIndex","addOnceEventListener","removeChild","$destroy","cancelAnimationFrame","scrollListener","tagName","isContentEditable","up","pageup","down","pagedown","deltaY","body","checkPath","preventDefault","hasScrollbar","nodeType","Node","ELEMENT_NODE","getComputedStyle","overflowY","scrollHeight","clientHeight","overflowX","scrollWidth","clientWidth","shouldScroll","alreadyAtStart","alreadyAtEnd","dir","shiftKey","deltaX","delta","scrollTop","scrollLeft","scrollingUp","scrollingDown","isInside","path","composedPath","selected","getSelection","anchorNode","index","$vuetify","breakpoint","smAndDown","addPassiveEventListener","passive","remove"],"mappings":"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","file":"static/js/chunk-bcf21db8.7395dc4e.js","sourcesContent":["// Styles\nimport './VDialog.sass'\n\n// Components\nimport { VThemeProvider } from '../VThemeProvider'\n\n// Mixins\nimport Activatable from '../../mixins/activatable'\nimport Dependent from '../../mixins/dependent'\nimport Detachable from '../../mixins/detachable'\nimport Overlayable from '../../mixins/overlayable'\nimport Returnable from '../../mixins/returnable'\nimport Stackable from '../../mixins/stackable'\n\n// Directives\nimport ClickOutside from '../../directives/click-outside'\n\n// Helpers\nimport mixins from '../../util/mixins'\nimport { removed } from '../../util/console'\nimport {\n convertToUnit,\n keyCodes,\n} from '../../util/helpers'\n\n// Types\nimport { VNode, VNodeData } from 'vue'\n\nconst baseMixins = mixins(\n Dependent,\n Detachable,\n Overlayable,\n Returnable,\n Stackable,\n Activatable,\n)\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'v-dialog',\n\n directives: { ClickOutside },\n\n props: {\n dark: Boolean,\n disabled: Boolean,\n fullscreen: Boolean,\n light: Boolean,\n maxWidth: [String, Number],\n noClickAnimation: Boolean,\n origin: {\n type: String,\n default: 'center center',\n },\n persistent: Boolean,\n retainFocus: {\n type: Boolean,\n default: true,\n },\n scrollable: Boolean,\n transition: {\n type: [String, Boolean],\n default: 'dialog-transition',\n },\n width: [String, Number],\n },\n\n data () {\n return {\n activatedBy: null as EventTarget | null,\n animate: false,\n animateTimeout: -1,\n stackMinZIndex: 200,\n previousActiveElement: null as HTMLElement | null,\n }\n },\n\n computed: {\n classes (): object {\n return {\n [(`v-dialog ${this.contentClass}`).trim()]: true,\n 'v-dialog--active': this.isActive,\n 'v-dialog--persistent': this.persistent,\n 'v-dialog--fullscreen': this.fullscreen,\n 'v-dialog--scrollable': this.scrollable,\n 'v-dialog--animated': this.animate,\n }\n },\n contentClasses (): object {\n return {\n 'v-dialog__content': true,\n 'v-dialog__content--active': this.isActive,\n }\n },\n hasActivator (): boolean {\n return Boolean(\n !!this.$slots.activator ||\n !!this.$scopedSlots.activator\n )\n },\n },\n\n watch: {\n isActive (val) {\n if (val) {\n this.show()\n this.hideScroll()\n } else {\n this.removeOverlay()\n this.unbind()\n this.previousActiveElement?.focus()\n }\n },\n fullscreen (val) {\n if (!this.isActive) return\n\n if (val) {\n this.hideScroll()\n this.removeOverlay(false)\n } else {\n this.showScroll()\n this.genOverlay()\n }\n },\n },\n\n created () {\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('full-width')) {\n removed('full-width', this)\n }\n },\n\n beforeMount () {\n this.$nextTick(() => {\n this.isBooted = this.isActive\n this.isActive && this.show()\n })\n },\n\n beforeDestroy () {\n if (typeof window !== 'undefined') this.unbind()\n },\n\n methods: {\n animateClick () {\n this.animate = false\n // Needed for when clicking very fast\n // outside of the dialog\n this.$nextTick(() => {\n this.animate = true\n window.clearTimeout(this.animateTimeout)\n this.animateTimeout = window.setTimeout(() => (this.animate = false), 150)\n })\n },\n closeConditional (e: Event) {\n const target = e.target as HTMLElement\n // Ignore the click if the dialog is closed or destroyed,\n // if it was on an element inside the content,\n // if it was dragged onto the overlay (#6969),\n // or if this isn't the topmost dialog (#9907)\n return !(\n this._isDestroyed ||\n !this.isActive ||\n this.$refs.content.contains(target) ||\n (this.overlay && target && !this.overlay.$el.contains(target))\n ) && this.activeZIndex >= this.getMaxZIndex()\n },\n hideScroll () {\n if (this.fullscreen) {\n document.documentElement.classList.add('overflow-y-hidden')\n } else {\n Overlayable.options.methods.hideScroll.call(this)\n }\n },\n show () {\n !this.fullscreen && !this.hideOverlay && this.genOverlay()\n // Double nextTick to wait for lazy content to be generated\n this.$nextTick(() => {\n this.$nextTick(() => {\n if (!this.$refs.dialog?.contains(document.activeElement)) {\n this.previousActiveElement = document.activeElement as HTMLElement\n this.$refs.dialog?.focus()\n }\n this.bind()\n })\n })\n },\n bind () {\n window.addEventListener('focusin', this.onFocusin)\n },\n unbind () {\n window.removeEventListener('focusin', this.onFocusin)\n },\n onClickOutside (e: Event) {\n this.$emit('click:outside', e)\n\n if (this.persistent) {\n this.noClickAnimation || this.animateClick()\n } else {\n this.isActive = false\n }\n },\n onKeydown (e: KeyboardEvent) {\n if (e.keyCode === keyCodes.esc && !this.getOpenDependents().length) {\n if (!this.persistent) {\n this.isActive = false\n const activator = this.getActivator()\n this.$nextTick(() => activator && (activator as HTMLElement).focus())\n } else if (!this.noClickAnimation) {\n this.animateClick()\n }\n }\n this.$emit('keydown', e)\n },\n // On focus change, wrap focus to stay inside the dialog\n // https://github.com/vuetifyjs/vuetify/issues/6892\n onFocusin (e: Event) {\n if (!e || !this.retainFocus) return\n\n const target = e.target as HTMLElement\n\n if (\n !!target &&\n this.$refs.dialog &&\n // It isn't the document or the dialog body\n ![document, this.$refs.dialog].includes(target) &&\n // It isn't inside the dialog body\n !this.$refs.dialog.contains(target) &&\n // We're the topmost dialog\n this.activeZIndex >= this.getMaxZIndex() &&\n // It isn't inside a dependent element (like a menu)\n !this.getOpenDependentElements().some(el => el.contains(target))\n // So we must have focused something outside the dialog and its children\n ) {\n // Find and focus the first available element inside the dialog\n const focusable = this.$refs.dialog.querySelectorAll('button, [href], input:not([type=\"hidden\"]), select, textarea, [tabindex]:not([tabindex=\"-1\"])')\n const el = [...focusable].find(el => !el.hasAttribute('disabled') && !el.matches('[tabindex=\"-1\"]')) as HTMLElement | undefined\n el && el.focus()\n }\n },\n genContent () {\n return this.showLazyContent(() => [\n this.$createElement(VThemeProvider, {\n props: {\n root: true,\n light: this.light,\n dark: this.dark,\n },\n }, [\n this.$createElement('div', {\n class: this.contentClasses,\n attrs: {\n role: 'dialog',\n 'aria-modal': this.hideOverlay ? undefined : 'true',\n ...this.getScopeIdAttrs(),\n },\n on: { keydown: this.onKeydown },\n style: { zIndex: this.activeZIndex },\n ref: 'content',\n }, [this.genTransition()]),\n ]),\n ])\n },\n genTransition () {\n const content = this.genInnerContent()\n\n if (!this.transition) return content\n\n return this.$createElement('transition', {\n props: {\n name: this.transition,\n origin: this.origin,\n appear: true,\n },\n }, [content])\n },\n genInnerContent () {\n const data: VNodeData = {\n class: this.classes,\n attrs: {\n tabindex: this.isActive ? 0 : undefined,\n },\n ref: 'dialog',\n directives: [\n {\n name: 'click-outside',\n value: {\n handler: this.onClickOutside,\n closeConditional: this.closeConditional,\n include: this.getOpenDependentElements,\n },\n },\n { name: 'show', value: this.isActive },\n ],\n style: {\n transformOrigin: this.origin,\n },\n }\n\n if (!this.fullscreen) {\n data.style = {\n ...data.style as object,\n maxWidth: convertToUnit(this.maxWidth),\n width: convertToUnit(this.width),\n }\n }\n\n return this.$createElement('div', data, this.getContentSlot())\n },\n },\n\n render (h): VNode {\n return h('div', {\n staticClass: 'v-dialog__container',\n class: {\n 'v-dialog__container--attached':\n this.attach === '' ||\n this.attach === true ||\n this.attach === 'attach',\n },\n }, [\n this.genActivator(),\n this.genContent(),\n ])\n },\n})\n","// Styles\nimport '../../styles/components/_selection-controls.sass'\nimport './VRadioGroup.sass'\n\n// Extensions\nimport VInput from '../VInput'\nimport { BaseItemGroup } from '../VItemGroup/VItemGroup'\n\n// Types\nimport mixins from '../../util/mixins'\nimport { PropType } from 'vue'\n\nconst baseMixins = mixins(\n BaseItemGroup,\n VInput\n)\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'v-radio-group',\n\n provide () {\n return {\n radioGroup: this,\n }\n },\n\n props: {\n column: {\n type: Boolean,\n default: true,\n },\n height: {\n type: [Number, String],\n default: 'auto',\n },\n name: String,\n row: Boolean,\n // If no value set on VRadio\n // will match valueComparator\n // force default to null\n value: null as unknown as PropType,\n },\n\n computed: {\n classes (): object {\n return {\n ...VInput.options.computed.classes.call(this),\n 'v-input--selection-controls v-input--radio-group': true,\n 'v-input--radio-group--column': this.column && !this.row,\n 'v-input--radio-group--row': this.row,\n }\n },\n },\n\n methods: {\n genDefaultSlot () {\n return this.$createElement('div', {\n staticClass: 'v-input--radio-group__input',\n attrs: {\n id: this.id,\n role: 'radiogroup',\n 'aria-labelledby': this.computedId,\n },\n }, VInput.options.methods.genDefaultSlot.call(this))\n },\n genInputSlot () {\n const render = VInput.options.methods.genInputSlot.call(this)\n\n delete render.data!.on!.click\n\n return render\n },\n genLabel () {\n const label = VInput.options.methods.genLabel.call(this)\n\n if (!label) return null\n\n label.data!.attrs!.id = this.computedId\n // WAI considers this an orphaned label\n delete label.data!.attrs!.for\n label.tag = 'legend'\n\n return label\n },\n onClick: BaseItemGroup.options.methods.onClick,\n },\n\n render (h) {\n const vnode = VInput.options.render.call(this, h)\n\n this._b(vnode.data!, 'div', this.attrs$)\n\n return vnode\n },\n})\n","// Styles\nimport './VRadio.sass'\n\n// Components\nimport VRadioGroup from './VRadioGroup'\nimport VLabel from '../VLabel'\nimport VIcon from '../VIcon'\nimport VInput from '../VInput'\n\n// Mixins\nimport BindsAttrs from '../../mixins/binds-attrs'\nimport Colorable from '../../mixins/colorable'\nimport { factory as GroupableFactory } from '../../mixins/groupable'\nimport Rippleable from '../../mixins/rippleable'\nimport Themeable from '../../mixins/themeable'\nimport Selectable, { prevent } from '../../mixins/selectable'\n\n// Utilities\nimport { getSlot } from '../../util/helpers'\n\n// Types\nimport { VNode, VNodeData } from 'vue'\nimport mixins from '../../util/mixins'\nimport { mergeListeners } from '../../util/mergeData'\n\nconst baseMixins = mixins(\n BindsAttrs,\n Colorable,\n Rippleable,\n GroupableFactory('radioGroup'),\n Themeable\n)\n\ninterface options extends InstanceType {\n radioGroup: InstanceType\n}\n\n/* @vue/component */\nexport default baseMixins.extend().extend({\n name: 'v-radio',\n\n inheritAttrs: false,\n\n props: {\n disabled: Boolean,\n id: String,\n label: String,\n name: String,\n offIcon: {\n type: String,\n default: '$radioOff',\n },\n onIcon: {\n type: String,\n default: '$radioOn',\n },\n readonly: Boolean,\n value: {\n default: null,\n },\n },\n\n data: () => ({\n isFocused: false,\n }),\n\n computed: {\n classes (): object {\n return {\n 'v-radio--is-disabled': this.isDisabled,\n 'v-radio--is-focused': this.isFocused,\n ...this.themeClasses,\n ...this.groupClasses,\n }\n },\n computedColor (): string | undefined {\n if (this.isDisabled) return undefined\n return Selectable.options.computed.computedColor.call(this)\n },\n computedIcon (): string {\n return this.isActive\n ? this.onIcon\n : this.offIcon\n },\n computedId (): string {\n return VInput.options.computed.computedId.call(this)\n },\n hasLabel: VInput.options.computed.hasLabel,\n hasState (): boolean {\n return (this.radioGroup || {}).hasState\n },\n isDisabled (): boolean {\n return this.disabled || (\n !!this.radioGroup &&\n this.radioGroup.isDisabled\n )\n },\n isReadonly (): boolean {\n return this.readonly || (\n !!this.radioGroup &&\n this.radioGroup.isReadonly\n )\n },\n computedName (): string {\n if (this.name || !this.radioGroup) {\n return this.name\n }\n\n return this.radioGroup.name || `radio-${this.radioGroup._uid}`\n },\n rippleState (): string | undefined {\n return Selectable.options.computed.rippleState.call(this)\n },\n validationState (): string | undefined {\n return (this.radioGroup || {}).validationState || this.computedColor\n },\n },\n\n methods: {\n genInput (args: any) {\n // We can't actually use the mixin directly because\n // it's made for standalone components, but its\n // genInput method is exactly what we need\n return Selectable.options.methods.genInput.call(this, 'radio', args)\n },\n genLabel () {\n if (!this.hasLabel) return null\n\n return this.$createElement(VLabel, {\n on: {\n // Label shouldn't cause the input to focus\n click: prevent,\n },\n attrs: {\n for: this.computedId,\n },\n props: {\n color: this.validationState,\n focused: this.hasState,\n },\n }, getSlot(this, 'label') || this.label)\n },\n genRadio () {\n const { title, ...radioAttrs } = this.attrs$\n\n return this.$createElement('div', {\n staticClass: 'v-input--selection-controls__input',\n }, [\n this.$createElement(VIcon, this.setTextColor(this.validationState, {\n props: {\n dense: this.radioGroup && this.radioGroup.dense,\n },\n }), this.computedIcon),\n this.genInput({\n name: this.computedName,\n value: this.value,\n ...radioAttrs,\n }),\n this.genRipple(this.setTextColor(this.rippleState)),\n ])\n },\n onFocus (e: Event) {\n this.isFocused = true\n this.$emit('focus', e)\n },\n onBlur (e: Event) {\n this.isFocused = false\n this.$emit('blur', e)\n },\n onChange () {\n if (this.isDisabled || this.isReadonly || this.isActive) return\n\n this.toggle()\n },\n onKeydown: () => {}, // Override default with noop\n },\n\n render (h): VNode {\n const data: VNodeData = {\n staticClass: 'v-radio',\n class: this.classes,\n on: mergeListeners({\n click: this.onChange,\n }, this.listeners$),\n attrs: { title: this.attrs$.title },\n }\n\n return h('div', data, [\n this.genRadio(),\n this.genLabel(),\n ])\n },\n})\n","// Types\nimport Vue, { VNode } from 'vue'\n\nexport default function VGrid (name: string) {\n /* @vue/component */\n return Vue.extend({\n name: `v-${name}`,\n\n functional: true,\n\n props: {\n id: String,\n tag: {\n type: String,\n default: 'div',\n },\n },\n\n render (h, { props, data, children }): VNode {\n data.staticClass = (`${name} ${data.staticClass || ''}`).trim()\n\n const { attrs } = data\n if (attrs) {\n // reset attrs to extract utility clases like pa-3\n data.attrs = {}\n const classes = Object.keys(attrs).filter(key => {\n // TODO: Remove once resolved\n // https://github.com/vuejs/vue/issues/7841\n if (key === 'slot') return false\n\n const value = attrs[key]\n\n // add back data attributes like data-test=\"foo\" but do not\n // add them as classes\n if (key.startsWith('data-')) {\n data.attrs![key] = value\n return false\n }\n\n return value || typeof value === 'string'\n })\n\n if (classes.length) data.staticClass += ` ${classes.join(' ')}`\n }\n\n if (props.id) {\n data.domProps = data.domProps || {}\n data.domProps.id = props.id\n }\n\n return h(props.tag, data, children)\n },\n })\n}\n","import './_grid.sass'\nimport './VGrid.sass'\n\nimport Grid from './grid'\n\nimport mergeData from '../../util/mergeData'\n\n/* @vue/component */\nexport default Grid('container').extend({\n name: 'v-container',\n functional: true,\n props: {\n id: String,\n tag: {\n type: String,\n default: 'div',\n },\n fluid: {\n type: Boolean,\n default: false,\n },\n },\n render (h, { props, data, children }) {\n let classes\n const { attrs } = data\n if (attrs) {\n // reset attrs to extract utility clases like pa-3\n data.attrs = {}\n classes = Object.keys(attrs).filter(key => {\n // TODO: Remove once resolved\n // https://github.com/vuejs/vue/issues/7841\n if (key === 'slot') return false\n\n const value = attrs[key]\n\n // add back data attributes like data-test=\"foo\" but do not\n // add them as classes\n if (key.startsWith('data-')) {\n data.attrs![key] = value\n return false\n }\n\n return value || typeof value === 'string'\n })\n }\n\n if (props.id) {\n data.domProps = data.domProps || {}\n data.domProps.id = props.id\n }\n\n return h(\n props.tag,\n mergeData(data, {\n staticClass: 'container',\n class: Array({\n 'container--fluid': props.fluid,\n }).concat(classes || []),\n }),\n children\n )\n },\n})\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-dialog',{attrs:{\"persistent\":\"\",\"scrollable\":\"\",\"max-width\":\"600\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-btn',_vm._g({staticClass:\"secondary--text justify-start\",attrs:{\"small\":\"\",\"text\":\"\",\"block\":\"\"}},on),[_c('v-icon',{attrs:{\"small\":\"\",\"color\":\"primary\"}},[_vm._v(\"add\")]),_vm._v(\" Assign role \")],1)]}}]),model:{value:(_vm.dialog),callback:function ($$v) {_vm.dialog=$$v},expression:\"dialog\"}},[_c('v-card',[_c('v-card-title',[_c('div',{staticClass:\"text-uppercase secondary--text\"},[_c('v-icon',{staticClass:\"mr-1\",attrs:{\"color\":\"secondary\"}},[_vm._v(\"group_add\")]),_vm._v(\" assign roles \")],1)]),_c('v-divider'),_c('v-card-text',{staticClass:\"pt-5\"},[_c('v-alert',{attrs:{\"text\":\"\",\"prominent\":\"\",\"color\":\"info\"}},[_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{staticClass:\"grow\"},[_vm._v(\"Assignee: \"+_vm._s(_vm.assignee))]),_c('v-col',{staticClass:\"shrink\"},[(_vm.assignmentTab === _vm.assignmentTabOptions.SELECT_ROLES_TAB)?_c('v-icon',{on:{\"click\":function($event){_vm.expand = !_vm.expand}}},[_vm._v(\"search\")]):_vm._e()],1)],1)],1),_c('v-tabs',{model:{value:(_vm.assignmentTab),callback:function ($$v) {_vm.assignmentTab=$$v},expression:\"assignmentTab\"}},[_c('v-tab',{attrs:{\"disabled\":_vm.assigningRole}},[_vm._v(\"Select roles\")]),_c('v-tab-item',[_c('v-container',[(_vm.expand)?_c('v-text-field',{attrs:{\"label\":\"Search..\",\"outlined\":\"\",\"dense\":\"\"},model:{value:(_vm.targetSearch),callback:function ($$v) {_vm.targetSearch=$$v},expression:\"targetSearch\"}}):_vm._e(),(_vm.spaceName && _vm.spaceRole !== _vm.roleTypes.SPACE_ADMIN && _vm.spaceName.toLowerCase().includes(_vm.targetSearch.toLowerCase()))?_c('v-row',{attrs:{\"align\":\"center\",\"justify\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"1\"}},[_c('v-checkbox',{attrs:{\"disabled\":_vm.assigningRole,\"color\":\"primary\"},model:{value:(_vm.spaceRoleBox),callback:function ($$v) {_vm.spaceRoleBox=$$v},expression:\"spaceRoleBox\"}})],1),_c('v-col',{attrs:{\"cols\":\"11\"}},[_c('span',{staticClass:\"d-flex align-center ma-0 pl-2 mt-3 font-weight-bold\"},[_vm._v(\" \"+_vm._s(_vm.spaceName)+\" \"),_c('v-chip',{staticClass:\"ml-1\",attrs:{\"x-small\":\"\",\"color\":\"primary\"}},[_vm._v(\"space\")])],1),_c('v-checkbox',{staticClass:\"ma-0 pl-2 pb-0\",attrs:{\"disabled\":!_vm.spaceRoleBox || _vm.assigningRole,\"row\":\"\"},scopedSlots:_vm._u([{key:\"label\",fn:function(){return [_c('span',{staticClass:\"caption\"},[_vm._v(_vm._s(_vm.spaceRoleLabels.SPACE_ADMIN))])]},proxy:true}],null,false,1351068858),model:{value:(_vm.spaceAdminRole),callback:function ($$v) {_vm.spaceAdminRole=$$v},expression:\"spaceAdminRole\"}}),(_vm.filteredInstanceList.length > 0)?_c('v-divider'):_vm._e()],1)],1):_vm._e(),_vm._l((_vm.filteredInstanceList),function(instance,i){return _c('v-row',{key:instance.iid,attrs:{\"align\":\"center\",\"justify\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"1\"}},[_c('v-checkbox',{attrs:{\"disabled\":_vm.assigningRole,\"color\":\"primary\"},model:{value:(instance.selectedInstance),callback:function ($$v) {_vm.$set(instance, \"selectedInstance\", $$v)},expression:\"instance.selectedInstance\"}})],1),_c('v-col',{attrs:{\"cols\":\"11\"}},[_c('div',[_c('span',{staticClass:\"d-flex align-center ma-0 pl-2 mt-3 font-weight-bold\"},[_vm._v(\" \"+_vm._s(instance.instance_name)+\" \"),_c('v-chip',{staticClass:\"ml-1 caption\",attrs:{\"x-small\":\"\",\"color\":\"secondary\",\"outlined\":\"\"}},[_vm._v(\"Instance\")])],1),_c('v-radio-group',{staticClass:\"ma-0 pl-2 pb-0\",attrs:{\"disabled\":!instance.selectedInstance || _vm.assigningRole,\"row\":\"\"},model:{value:(instance.selectedRole),callback:function ($$v) {_vm.$set(instance, \"selectedRole\", $$v)},expression:\"instance.selectedRole\"}},[_c('v-radio',{attrs:{\"value\":_vm.roleTypes.INSTANCE_EDITOR},scopedSlots:_vm._u([{key:\"label\",fn:function(){return [_c('span',{staticClass:\"caption\"},[_vm._v(_vm._s(_vm.roleTypes.INSTANCE_EDITOR))])]},proxy:true}],null,true)}),_c('v-radio',{attrs:{\"value\":_vm.roleTypes.INSTANCE_VIEWER},scopedSlots:_vm._u([{key:\"label\",fn:function(){return [_c('span',{staticClass:\"caption\"},[_vm._v(_vm._s(_vm.roleTypes.INSTANCE_VIEWER))])]},proxy:true}],null,true)})],1)],1),(i < _vm.filteredInstanceList.length - 1)?_c('v-divider'):_vm._e()],1)],1)})],2)],1),_c('v-tab',{attrs:{\"disabled\":_vm.disableReviewTab}},[_vm._v(\"review outcome\")]),_c('v-tab-item',{staticClass:\"mt-3\"},[_c('v-container',_vm._l((_vm.roleAssignmentOutcome),function(outcome,index){return _c('v-row',{key:index,attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"3\"}},[(outcome.outcome === 'failure')?_c('v-chip',{staticClass:\"font-weight-bold caption text-uppercase\",attrs:{\"small\":\"\",\"color\":\"error\"}},[_c('v-avatar',{attrs:{\"left\":\"\"}},[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\"cancel\")])],1),_vm._v(\" failed \")],1):(outcome.outcome === 'success')?_c('v-chip',{staticClass:\"font-weight-bold caption text-uppercase\",attrs:{\"small\":\"\",\"color\":\"success\"}},[_c('v-avatar',{attrs:{\"left\":\"\"}},[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\"check_circle\")])],1),_vm._v(\" assigned \")],1):_vm._e()],1),_c('v-col',{attrs:{\"cols\":\"9\"}},[_c('div',{staticClass:\"d-flex flex-column subtitle-2 text-uppercase\"},[_c('span',[_vm._v(\"role: \"+_vm._s(outcome.role))]),_c('span',[_vm._v(\"target: \"+_vm._s(outcome.target))])])])],1)}),1)],1)],1)],1),_c('v-divider'),_c('v-card-actions',[(_vm.assignmentTab === _vm.assignmentTabOptions.SELECT_ROLES_TAB)?_c('span',{staticClass:\"caption text-uppercase\"},[(_vm.selectedRolesLength === 1)?[_vm._v(_vm._s(_vm.selectedRolesLength)+\" role Selected\")]:[_vm._v(_vm._s(_vm.selectedRolesLength)+\" roles Selected\")]],2):_vm._e(),_c('v-spacer'),_c('v-btn',{attrs:{\"disabled\":_vm.assigningRole,\"color\":\"secondary\",\"text\":\"\"},on:{\"click\":function($event){return _vm.clearAndCloseDialog()}}},[_vm._v(\"close\")]),(!_vm.finishedAssignments)?_c('v-btn',{attrs:{\"loading\":_vm.assigningRole,\"disabled\":!_vm.activateAssignButton,\"color\":\"primary\"},on:{\"click\":function($event){return _vm.assignRoles()}}},[_vm._v(\" assign \")]):_vm._e()],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??ref--13-1!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TheSpaceAssignRolesDialog.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??ref--13-1!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TheSpaceAssignRolesDialog.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TheSpaceAssignRolesDialog.vue?vue&type=template&id=34525cce&\"\nimport script from \"./TheSpaceAssignRolesDialog.vue?vue&type=script&lang=js&\"\nexport * from \"./TheSpaceAssignRolesDialog.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","// Styles\nimport './VOverlay.sass'\n\n// Mixins\nimport Colorable from './../../mixins/colorable'\nimport Themeable from '../../mixins/themeable'\nimport Toggleable from './../../mixins/toggleable'\n\n// Utilities\nimport mixins from '../../util/mixins'\n\n// Types\nimport { VNode } from 'vue'\n\n/* @vue/component */\nexport default mixins(\n Colorable,\n Themeable,\n Toggleable\n).extend({\n name: 'v-overlay',\n\n props: {\n absolute: Boolean,\n color: {\n type: String,\n default: '#212121',\n },\n dark: {\n type: Boolean,\n default: true,\n },\n opacity: {\n type: [Number, String],\n default: 0.46,\n },\n value: {\n default: true,\n },\n zIndex: {\n type: [Number, String],\n default: 5,\n },\n },\n\n computed: {\n __scrim (): VNode {\n const data = this.setBackgroundColor(this.color, {\n staticClass: 'v-overlay__scrim',\n style: {\n opacity: this.computedOpacity,\n },\n })\n\n return this.$createElement('div', data)\n },\n classes (): object {\n return {\n 'v-overlay--absolute': this.absolute,\n 'v-overlay--active': this.isActive,\n ...this.themeClasses,\n }\n },\n computedOpacity (): number {\n return Number(this.isActive ? this.opacity : 0)\n },\n styles (): object {\n return {\n zIndex: this.zIndex,\n }\n },\n },\n\n methods: {\n genContent () {\n return this.$createElement('div', {\n staticClass: 'v-overlay__content',\n }, this.$slots.default)\n },\n },\n\n render (h): VNode {\n const children = [this.__scrim]\n\n if (this.isActive) children.push(this.genContent())\n\n return h('div', {\n staticClass: 'v-overlay',\n on: this.$listeners,\n class: this.classes,\n style: this.styles,\n }, children)\n },\n})\n","import VOverlay from './VOverlay'\n\nexport { VOverlay }\n\nexport default VOverlay\n","// Components\nimport VOverlay from '../../components/VOverlay'\n\n// Utilities\nimport {\n keyCodes,\n addOnceEventListener,\n addPassiveEventListener,\n getZIndex,\n composedPath,\n} from '../../util/helpers'\n\n// Types\nimport Vue from 'vue'\n\ninterface Toggleable extends Vue {\n isActive?: boolean\n}\n\ninterface Stackable extends Vue {\n activeZIndex: number\n}\n\ninterface options {\n absolute?: boolean\n $refs: {\n dialog?: HTMLElement\n content?: HTMLElement\n }\n}\n\n/* @vue/component */\nexport default Vue.extend().extend({\n name: 'overlayable',\n\n props: {\n hideOverlay: Boolean,\n overlayColor: String,\n overlayOpacity: [Number, String],\n },\n\n data () {\n return {\n animationFrame: 0,\n overlay: null as InstanceType | null,\n }\n },\n\n watch: {\n hideOverlay (value) {\n if (!this.isActive) return\n\n if (value) this.removeOverlay()\n else this.genOverlay()\n },\n },\n\n beforeDestroy () {\n this.removeOverlay()\n },\n\n methods: {\n createOverlay () {\n const overlay = new VOverlay({\n propsData: {\n absolute: this.absolute,\n value: false,\n color: this.overlayColor,\n opacity: this.overlayOpacity,\n },\n })\n\n overlay.$mount()\n\n const parent = this.absolute\n ? this.$el.parentNode\n : document.querySelector('[data-app]')\n\n parent && parent.insertBefore(overlay.$el, parent.firstChild)\n\n this.overlay = overlay\n },\n genOverlay () {\n this.hideScroll()\n\n if (this.hideOverlay) return\n\n if (!this.overlay) this.createOverlay()\n\n this.animationFrame = requestAnimationFrame(() => {\n if (!this.overlay) return\n\n if (this.activeZIndex !== undefined) {\n this.overlay.zIndex = String(this.activeZIndex - 1)\n } else if (this.$el) {\n this.overlay.zIndex = getZIndex(this.$el)\n }\n\n this.overlay.value = true\n })\n\n return true\n },\n /** removeOverlay(false) will not restore the scollbar afterwards */\n removeOverlay (showScroll = true) {\n if (this.overlay) {\n addOnceEventListener(this.overlay.$el, 'transitionend', () => {\n if (\n !this.overlay ||\n !this.overlay.$el ||\n !this.overlay.$el.parentNode ||\n this.overlay.value ||\n this.isActive\n ) return\n\n this.overlay.$el.parentNode.removeChild(this.overlay.$el)\n this.overlay.$destroy()\n this.overlay = null\n })\n\n // Cancel animation frame in case\n // overlay is removed before it\n // has finished its animation\n cancelAnimationFrame(this.animationFrame)\n\n this.overlay.value = false\n }\n\n showScroll && this.showScroll()\n },\n scrollListener (e: WheelEvent | KeyboardEvent) {\n if ('key' in e) {\n if (\n ['INPUT', 'TEXTAREA', 'SELECT'].includes((e.target as Element).tagName) ||\n // https://github.com/vuetifyjs/vuetify/issues/4715\n (e.target as HTMLElement).isContentEditable\n ) return\n\n const up = [keyCodes.up, keyCodes.pageup]\n const down = [keyCodes.down, keyCodes.pagedown]\n\n if (up.includes(e.keyCode)) {\n (e as any).deltaY = -1\n } else if (down.includes(e.keyCode)) {\n (e as any).deltaY = 1\n } else {\n return\n }\n }\n\n if (e.target === this.overlay ||\n (e.type !== 'keydown' && e.target === document.body) ||\n this.checkPath(e as WheelEvent)) e.preventDefault()\n },\n hasScrollbar (el?: Element) {\n if (!el || el.nodeType !== Node.ELEMENT_NODE) return false\n\n const style = window.getComputedStyle(el)\n return ((['auto', 'scroll'].includes(style.overflowY!) || el.tagName === 'SELECT') && el.scrollHeight > el.clientHeight) ||\n ((['auto', 'scroll'].includes(style.overflowX!)) && el.scrollWidth > el.clientWidth)\n },\n shouldScroll (el: Element, e: WheelEvent): boolean {\n if (el.hasAttribute('data-app')) return false\n\n const dir = e.shiftKey || e.deltaX ? 'x' : 'y'\n const delta = dir === 'y' ? e.deltaY : e.deltaX || e.deltaY\n\n let alreadyAtStart: boolean\n let alreadyAtEnd: boolean\n if (dir === 'y') {\n alreadyAtStart = el.scrollTop === 0\n alreadyAtEnd = el.scrollTop + el.clientHeight === el.scrollHeight\n } else {\n alreadyAtStart = el.scrollLeft === 0\n alreadyAtEnd = el.scrollLeft + el.clientWidth === el.scrollWidth\n }\n\n const scrollingUp = delta < 0\n const scrollingDown = delta > 0\n\n if (!alreadyAtStart && scrollingUp) return true\n if (!alreadyAtEnd && scrollingDown) return true\n if ((alreadyAtStart || alreadyAtEnd)) {\n return this.shouldScroll(el.parentNode as Element, e)\n }\n\n return false\n },\n isInside (el: Element, parent: Element): boolean {\n if (el === parent) {\n return true\n } else if (el === null || el === document.body) {\n return false\n } else {\n return this.isInside(el.parentNode as Element, parent)\n }\n },\n checkPath (e: WheelEvent) {\n const path = composedPath(e)\n\n if (e.type === 'keydown' && path[0] === document.body) {\n const dialog = this.$refs.dialog\n // getSelection returns null in firefox in some edge cases, can be ignored\n const selected = window.getSelection()!.anchorNode as Element\n if (dialog && this.hasScrollbar(dialog) && this.isInside(selected, dialog)) {\n return !this.shouldScroll(dialog, e)\n }\n return true\n }\n\n for (let index = 0; index < path.length; index++) {\n const el = path[index]\n\n if (el === document) return true\n if (el === document.documentElement) return true\n if (el === this.$refs.content) return true\n\n if (this.hasScrollbar(el as Element)) return !this.shouldScroll(el as Element, e)\n }\n\n return true\n },\n hideScroll () {\n if (this.$vuetify.breakpoint.smAndDown) {\n document.documentElement!.classList.add('overflow-y-hidden')\n } else {\n addPassiveEventListener(window, 'wheel', this.scrollListener, { passive: false })\n window.addEventListener('keydown', this.scrollListener)\n }\n },\n showScroll () {\n document.documentElement!.classList.remove('overflow-y-hidden')\n window.removeEventListener('wheel', this.scrollListener)\n window.removeEventListener('keydown', this.scrollListener)\n },\n },\n})\n"],"sourceRoot":""}