{"version":3,"file":"statusBar-DKV-9O6z.js","sources":["../../../node_modules/.pnpm/vuetify@2.7.2_vue@2.7.16/node_modules/vuetify/lib/components/VFooter/VFooter.js","../../../node_modules/.pnpm/vuetify@2.7.2_vue@2.7.16/node_modules/vuetify/lib/components/VNavigationDrawer/VNavigationDrawer.js","../../../app/javascript/components/app/statusBar/statusBarChart.vue","../../../app/javascript/helpers/notifications_helper.js","../../../app/javascript/components/app/statusBar/SubjectAssetsCacheStatus.vue","../../../app/javascript/components/app/statusBar/statusBar.vue"],"sourcesContent":["// Styles\nimport \"../../../src/components/VFooter/VFooter.sass\"; // Components\n\nimport VSheet from '../VSheet/VSheet'; // Mixins\n\nimport Applicationable from '../../mixins/applicationable';\nimport SSRBootable from '../../mixins/ssr-bootable'; // Utilities\n\nimport mixins from '../../util/mixins';\nimport { convertToUnit, getSlot } from '../../util/helpers';\n/* @vue/component */\n\nexport default mixins(VSheet, Applicationable('footer', ['height', 'inset']), SSRBootable).extend({\n name: 'v-footer',\n props: {\n height: {\n default: 'auto',\n type: [Number, String]\n },\n inset: Boolean,\n padless: Boolean,\n tag: {\n type: String,\n default: 'footer'\n }\n },\n computed: {\n applicationProperty() {\n return this.inset ? 'insetFooter' : 'footer';\n },\n\n classes() {\n return { ...VSheet.options.computed.classes.call(this),\n 'v-footer--absolute': this.absolute,\n 'v-footer--fixed': !this.absolute && (this.app || this.fixed),\n 'v-footer--padless': this.padless,\n 'v-footer--inset': this.inset\n };\n },\n\n computedBottom() {\n if (!this.isPositioned) return undefined;\n return this.app ? this.$vuetify.application.bottom : 0;\n },\n\n computedLeft() {\n if (!this.isPositioned) return undefined;\n return this.app && this.inset ? this.$vuetify.application.left : 0;\n },\n\n computedRight() {\n if (!this.isPositioned) return undefined;\n return this.app && this.inset ? this.$vuetify.application.right : 0;\n },\n\n isPositioned() {\n return Boolean(this.absolute || this.fixed || this.app);\n },\n\n styles() {\n const height = parseInt(this.height);\n return { ...VSheet.options.computed.styles.call(this),\n height: isNaN(height) ? height : convertToUnit(height),\n left: convertToUnit(this.computedLeft),\n right: convertToUnit(this.computedRight),\n bottom: convertToUnit(this.computedBottom)\n };\n }\n\n },\n methods: {\n updateApplication() {\n const height = parseInt(this.height);\n return isNaN(height) ? this.$el ? this.$el.clientHeight : 0 : height;\n }\n\n },\n\n render(h) {\n const data = this.setBackgroundColor(this.color, {\n staticClass: 'v-footer',\n class: this.classes,\n style: this.styles\n });\n return h(this.tag, data, getSlot(this));\n }\n\n});\n//# sourceMappingURL=VFooter.js.map","// Styles\nimport \"../../../src/components/VNavigationDrawer/VNavigationDrawer.sass\"; // Components\n\nimport VImg from '../VImg/VImg'; // Mixins\n\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'; // Directives\n\nimport ClickOutside from '../../directives/click-outside';\nimport Resize from '../../directives/resize';\nimport Touch from '../../directives/touch'; // Utilities\n\nimport { convertToUnit, getSlot } from '../../util/helpers';\nimport mixins from '../../util/mixins';\nconst baseMixins = mixins(Applicationable('left', ['isActive', 'isMobile', 'miniVariant', 'expandOnHover', 'permanent', 'right', 'temporary', 'width']), Colorable, Dependent, Mobile, Overlayable, SSRBootable, Themeable);\n/* @vue/component */\n\nexport default baseMixins.extend({\n name: 'v-navigation-drawer',\n directives: {\n ClickOutside,\n Resize,\n Touch\n },\n\n provide() {\n return {\n isInNav: this.tag === 'nav'\n };\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\n default() {\n return this.app ? '100vh' : '100%';\n }\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],\n default: ''\n },\n stateless: Boolean,\n tag: {\n type: String,\n\n default() {\n return this.app ? 'nav' : 'aside';\n }\n\n },\n temporary: Boolean,\n touchless: Boolean,\n width: {\n type: [Number, String],\n default: 256\n },\n value: null\n },\n data: () => ({\n isMouseover: false,\n touchArea: {\n left: 0,\n right: 0\n },\n stackMinZIndex: 6\n }),\n computed: {\n /**\n * Used for setting an app value from a dynamic\n * property. Called from applicationable.js\n */\n applicationProperty() {\n return this.right ? 'right' : 'left';\n },\n\n classes() {\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\n computedMaxHeight() {\n if (!this.hasApp) return null;\n const computedMaxHeight = this.$vuetify.application.bottom + this.$vuetify.application.footer + this.$vuetify.application.bar;\n if (!this.clipped) return computedMaxHeight;\n return computedMaxHeight + this.$vuetify.application.top;\n },\n\n computedTop() {\n if (!this.hasApp) return 0;\n let computedTop = this.$vuetify.application.bar;\n computedTop += this.clipped ? this.$vuetify.application.top : 0;\n return computedTop;\n },\n\n computedTransform() {\n if (this.isActive) return 0;\n if (this.isBottom) return 100;\n return this.right ? 100 : -100;\n },\n\n computedWidth() {\n return this.isMiniVariant ? this.miniVariantWidth : this.width;\n },\n\n hasApp() {\n return this.app && !this.isMobile && !this.temporary;\n },\n\n isBottom() {\n return this.bottom && this.isMobile;\n },\n\n isMiniVariant() {\n return !this.expandOnHover && this.miniVariant || this.expandOnHover && !this.isMouseover;\n },\n\n isMobile() {\n return !this.stateless && !this.permanent && Mobile.options.computed.isMobile.call(this);\n },\n\n reactsToClick() {\n return !this.stateless && !this.permanent && (this.isMobile || this.temporary);\n },\n\n reactsToMobile() {\n return this.app && !this.disableResizeWatcher && !this.permanent && !this.stateless && !this.temporary;\n },\n\n reactsToResize() {\n return !this.disableResizeWatcher && !this.stateless;\n },\n\n reactsToRoute() {\n return !this.disableRouteWatcher && !this.stateless && (this.temporary || this.isMobile);\n },\n\n showOverlay() {\n return !this.hideOverlay && this.isActive && (this.isMobile || this.temporary);\n },\n\n styles() {\n const translate = this.isBottom ? 'translateY' : 'translateX';\n return {\n height: convertToUnit(this.height),\n top: !this.isBottom ? convertToUnit(this.computedTop) : 'auto',\n maxHeight: this.computedMaxHeight != null ? `calc(100% - ${convertToUnit(this.computedMaxHeight)})` : undefined,\n transform: `${translate}(${convertToUnit(this.computedTransform, '%')})`,\n width: convertToUnit(this.computedWidth)\n };\n }\n\n },\n watch: {\n $route: 'onRouteChange',\n\n isActive(val) {\n this.$emit('input', val);\n },\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 && this.isActive && !this.temporary && this.removeOverlay();\n if (prev == null || !this.reactsToResize || !this.reactsToMobile) return;\n this.isActive = !val;\n },\n\n permanent(val) {\n // If enabling prop enable the drawer\n if (val) this.isActive = true;\n },\n\n showOverlay(val) {\n if (val) this.genOverlay();else this.removeOverlay();\n },\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\n expandOnHover: 'updateMiniVariant',\n\n isMouseover(val) {\n this.updateMiniVariant(!val);\n }\n\n },\n\n beforeMount() {\n this.init();\n },\n\n methods: {\n calculateTouchArea() {\n const parent = this.$el.parentNode;\n if (!parent) return;\n const parentRect = parent.getBoundingClientRect();\n this.touchArea = {\n left: parentRect.left + 50,\n right: parentRect.right - 50\n };\n },\n\n closeConditional() {\n return this.isActive && !this._isDestroyed && this.reactsToClick;\n },\n\n genAppend() {\n return this.genPosition('append');\n },\n\n genBackground() {\n const props = {\n height: '100%',\n width: '100%',\n src: this.src\n };\n const image = this.$scopedSlots.img ? this.$scopedSlots.img(props) : this.$createElement(VImg, {\n props\n });\n return this.$createElement('div', {\n staticClass: 'v-navigation-drawer__image'\n }, [image]);\n },\n\n genDirectives() {\n const directives = [{\n name: 'click-outside',\n value: {\n handler: () => {\n this.isActive = false;\n },\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 });\n }\n\n return directives;\n },\n\n genListeners() {\n const on = {\n mouseenter: () => this.isMouseover = true,\n mouseleave: () => this.isMouseover = false,\n transitionend: e => {\n if (e.target !== e.currentTarget) return;\n this.$emit('transitionend', e); // IE11 does not support new Event('resize')\n\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 return on;\n },\n\n genPosition(name) {\n const slot = getSlot(this, name);\n if (!slot) return slot;\n return this.$createElement('div', {\n staticClass: `v-navigation-drawer__${name}`\n }, slot);\n },\n\n genPrepend() {\n return this.genPosition('prepend');\n },\n\n genContent() {\n return this.$createElement('div', {\n staticClass: 'v-navigation-drawer__content'\n }, getSlot(this));\n },\n\n genBorder() {\n return this.$createElement('div', {\n staticClass: 'v-navigation-drawer__border'\n });\n },\n\n init() {\n if (this.permanent) {\n this.isActive = true;\n } else if (this.stateless || this.value != null) {\n this.isActive = this.value;\n } else if (!this.temporary) {\n this.isActive = !this.isMobile;\n }\n },\n\n onRouteChange() {\n if (this.reactsToRoute && this.closeConditional()) {\n this.isActive = false;\n }\n },\n\n swipeLeft(e) {\n if (this.isActive && this.right) return;\n this.calculateTouchArea();\n if (Math.abs(e.touchendX - e.touchstartX) < 100) return;\n if (this.right && e.touchstartX >= this.touchArea.right) this.isActive = true;else if (!this.right && this.isActive) this.isActive = false;\n },\n\n swipeRight(e) {\n if (this.isActive && !this.right) return;\n this.calculateTouchArea();\n if (Math.abs(e.touchendX - e.touchstartX) < 100) return;\n if (!this.right && e.touchstartX <= this.touchArea.left) this.isActive = true;else if (this.right && this.isActive) this.isActive = false;\n },\n\n /**\n * Update the application layout\n */\n updateApplication() {\n if (!this.isActive || this.isMobile || this.temporary || !this.$el) return 0;\n const width = Number(this.miniVariant ? this.miniVariantWidth : this.width);\n return isNaN(width) ? this.$el.clientWidth : width;\n },\n\n updateMiniVariant(val) {\n if (this.expandOnHover && this.miniVariant !== val) this.$emit('update:mini-variant', val);\n }\n\n },\n\n render(h) {\n const children = [this.genPrepend(), this.genContent(), this.genAppend(), this.genBorder()];\n if (this.src || getSlot(this, 'img')) children.unshift(this.genBackground());\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});\n//# sourceMappingURL=VNavigationDrawer.js.map","\n\n \n\n\n\n\n\n","import store from \"../store\"\n\nexport const newToast = (message, type = \"info\") => {\n store.dispatch(\"newAppNotification\", { message, type })\n}\n","\n \n \n \n \n\n \n \n \n \n \n\n \n {{ error }}\n \n\n \n \n \n {{ cacheStatus.allCached ? 'All documents cached' : 'Some documents not cached' }}\n \n \n\n \n \n \n \n \n \n \n\n \n \n \n Documents\n \n\n \n \n \n {{ doc.cached ? 'mdi-check-circle' : 'mdi-alert-circle' }}\n \n \n\n \n \n {{ getFilename(doc.url) }}\n \n \n {{ doc.url }}\n \n \n \n\n \n \n \n \n No documents to cache\n \n \n \n \n \n\n \n No cache information available\n \n \n \n \n\n\n\n","\n \n \n {{ currentUser.email }}\n \n saveUser({ language, ...currentUser })\"\n x-small\n tile\n class=\"d-inline-flex\"\n />\n \n \n \n \n\n \n \n \n \n \n \n\n \n \n \n \n \n \n ({{ unsyncedEvents }}/{{ unsyncedScreenshots }})\n \n \n \n \n \n \n \n \n \n \n \n Event\n \n \n Exercise\n \n \n Details\n \n \n \n \n \n {{ event.event }}\n {{ event.exerciseId }}\n \n \n {{ event.details }}\n\n \n \n \n \n \n \n \n \n \n\n \n To sync: ev {{ unsyncedEvents }}\n /sc: {{ unsyncedScreenshots }}\n \n \n\n \n\n \n \n \n \n mdi-keyboard-settings-outline\n \n\n {{ keyboardLockState.lockedKeys.size }}\n \n \n \n \n \n \n Locked keys:\n \n \n {{ key[0] }}\n \n \n \n No locked keys\n \n \n \n \n\n \n \n {{ blurNames ? 'mdi-ghost-off-outline' : 'mdi-ghost-outline' }}\n \n \n\n \n \n \n \n mdi-code-block-braces\n \n \n \n \n \n \n {{ param.key }}:\n \n {{ param.value }}\n \n\n \n \n {{ param.findMethod }}\n \n \n \n \n \n \n\n \n\n \n \n {{ fps }}fps\n \n \n \n {{ size(usedJSHeapSize) }}MB\n \n \n mdi-wifi-off\n \n \n\n\n\n\n\n"],"names":["__unplugin_components_0","mixins","VSheet","Applicationable","SSRBootable","__spreadProps","__spreadValues","height","convertToUnit","h","data","getSlot","baseMixins","Colorable","Dependent","Mobile","Overlayable","Themeable","__unplugin_components_3","ClickOutside","Resize","Touch","computedMaxHeight","computedTop","translate","val","prev","parent","parentRect","props","image","VImg","directives","on","e","resizeEvent","name","slot","width","children","rawValueHistory","ref","valueHistory","chart","useIntervalFn","meanRawValue","acc","value","updateChart","ctx","barWidth","barHeight","index","x","y","barColor","newToast","message","type","store","_sfc_main","quizId","toRefs","useStore","verifyCache","loading","currentError","useCacheManager","checkCache","preloadDocuments","clearCache","cacheStatus","useSubjectCache","mapGetters","d","url","StatusBarChart","BetaFeaturesList","LanguageSwitch","SubjectAssetsCacheStatus","memory","useMemory","usedJSHeapSize","computed","_a","totalJSHeapSize","jsHeapSizeLimit","_b","size","v","online","useOnline","fps","useFps","keyboardLockState","useKeyboardLockState","quizIdFromRoute","useRoute","unsyncedEvents","unsyncedScreenshots","useStudentEventRegisterer","blurNames","getFeatureMixin","params","key","param","mapActions","user"],"mappings":"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","x_google_ignoreList":[0,1]}
\n {{ event.details }}\n\n
{{ key[0] }}
{{ param.value }}
{{ param.findMethod }}