{"version":3,"sources":["webpack:///./node_modules/core-js/modules/es.string.anchor.js","webpack:///./src/components/Page.vue?21fb","webpack:///./node_modules/core-js/internals/create-html.js","webpack:///./src/components/Page.vue?dca0","webpack:///./src/components/PageSectionComponent.vue?2b4b","webpack:///./src/components/PageSectionComponent.vue?4912","webpack:///./src/components/PageSectionComponent.vue?23e7","webpack:///./src/services/page-service.ts","webpack:///./src/components/Page.vue?4fbf","webpack:///./src/components/Page.vue?4f3f","webpack:///./src/views/administrator/EmployeeHome.vue?a14b","webpack:///./src/views/administrator/EmployeeHome.vue","webpack:///./src/views/administrator/EmployeeHome.vue?2f67","webpack:///./node_modules/core-js/internals/string-html-forced.js","webpack:///./src/components/PageSectionComponent.vue?42e6"],"names":["$","createHTML","forcedStringHTMLMethod","target","proto","forced","anchor","name","this","uncurryThis","requireObjectCoercible","toString","quot","replace","module","exports","string","tag","attribute","value","S","p1","_hoisted_1","class","render","_ctx","_cache","$props","$setup","$data","$options","_component_LuSpinner","_component_LuLeftMenu","_component_PageSectionComponent","isLoading","key","leftMenuItems","menu","sections","section","index","id","heading","sectionTitle","content","sectionContent","linkText","sectionLinkText","routerLinkUrl","externalLinkUrl","showSeparator","length","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_component_font_awesome_icon","_component_router_link","innerHTML","onClick","saveLinkUrl","to","default","icon","_","href","rel","props","type","String","required","Boolean","methods","setItem","EntryUrl","__exports__","pageTypeId","endpointController","parameterName","parameterArgument","getPageSectionsByTypeId","baseApiUrl","fetch","components","LuLeftMenu","LuLeftMenuItem","LuSpinner","PageSectionComponent","Number","data","Array","computed","locale","$i18n","currentUser","$store","state","generateLeftMenuItems","getPageSections","then","catch","e","console","error","forEach","menuTitle","push","text","url","titleSv","titleEn","contentSv","contentEn","linkTextSv","linkTextEn","menuTitleSv","menuTitleEn","goToEmployeeHome","undefined","entitlements","includes","$router","_component_Page","ref","Page","EmployeeHomePageTypeId","mounted","$refs","page","fails","METHOD_NAME","test","toLowerCase","split"],"mappings":"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","file":"assets/js/chunk-0473dc8a.e2f50491.js","sourcesContent":["'use strict';\nvar $ = require('../internals/export');\nvar createHTML = require('../internals/create-html');\nvar forcedStringHTMLMethod = require('../internals/string-html-forced');\n\n// `String.prototype.anchor` method\n// https://tc39.es/ecma262/#sec-string.prototype.anchor\n$({ target: 'String', proto: true, forced: forcedStringHTMLMethod('anchor') }, {\n anchor: function anchor(name) {\n return createHTML(this, 'a', 'name', name);\n }\n});\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Page.vue?vue&type=style&index=0&id=07e33759&scoped=true&lang=css\"","var uncurryThis = require('../internals/function-uncurry-this');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar toString = require('../internals/to-string');\n\nvar quot = /\"/g;\nvar replace = uncurryThis(''.replace);\n\n// `CreateHTML` abstract operation\n// https://tc39.es/ecma262/#sec-createhtml\nmodule.exports = function (string, tag, attribute, value) {\n var S = toString(requireObjectCoercible(string));\n var p1 = '<' + tag;\n if (attribute !== '') p1 += ' ' + attribute + '=\"' + replace(toString(value), quot, '"') + '\"';\n return p1 + '>' + S + '';\n};\n","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-07e33759\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"container\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_LuSpinner = _resolveComponent(\"LuSpinner\")!\n const _component_LuLeftMenu = _resolveComponent(\"LuLeftMenu\")!\n const _component_PageSectionComponent = _resolveComponent(\"PageSectionComponent\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_ctx.isLoading)\n ? (_openBlock(), _createBlock(_component_LuSpinner, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_ctx.leftMenuItems)\n ? (_openBlock(), _createBlock(_component_LuLeftMenu, {\n key: 1,\n menu: _ctx.leftMenuItems\n }, null, 8, [\"menu\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", {\n class: _normalizeClass(_ctx.leftMenuItems ? 'content' : 'content-no-menu')\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.sections, (section, index) => {\n return (_openBlock(), _createBlock(_component_PageSectionComponent, {\n key: section.id,\n section: section,\n heading: _ctx.sectionTitle(section),\n content: _ctx.sectionContent(section),\n anchor: section.id.toString(),\n linkText: _ctx.sectionLinkText(section),\n routerLinkUrl: section.routerLinkUrl,\n externalLinkUrl: section.externalLinkUrl,\n showSeparator: index !== _ctx.sections.length - 1\n }, null, 8, [\"section\", \"heading\", \"content\", \"anchor\", \"linkText\", \"routerLinkUrl\", \"externalLinkUrl\", \"showSeparator\"]))\n }), 128))\n ], 2)\n ]))\n}","import { createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, resolveComponent as _resolveComponent, createVNode as _createVNode, createTextVNode as _createTextVNode, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementBlock as _createElementBlock, normalizeClass as _normalizeClass, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-0891e7c4\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = [\"id\"]\nconst _hoisted_2 = { class: \"section-title page-heading\" }\nconst _hoisted_3 = [\"innerHTML\"]\nconst _hoisted_4 = { class: \"spacer\" }\nconst _hoisted_5 = [\"href\"]\nconst _hoisted_6 = { class: \"spacer\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_font_awesome_icon = _resolveComponent(\"font-awesome-icon\")!\n const _component_router_link = _resolveComponent(\"router-link\")!\n\n return (_openBlock(), _createElementBlock(\"article\", {\n class: _normalizeClass([\"section\", { 'bottom-border': _ctx.showSeparator }])\n }, [\n _createElementVNode(\"a\", { id: _ctx.anchor }, null, 8, _hoisted_1),\n _createElementVNode(\"h1\", _hoisted_2, _toDisplayString(_ctx.heading), 1),\n _createElementVNode(\"div\", {\n class: \"section-content\",\n innerHTML: _ctx.content\n }, null, 8, _hoisted_3),\n (_ctx.routerLinkUrl)\n ? (_openBlock(), _createBlock(_component_router_link, {\n key: 0,\n onClick: _ctx.saveLinkUrl,\n to: _ctx.routerLinkUrl\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.linkText) + \" \", 1),\n _createElementVNode(\"span\", _hoisted_4, [\n _createVNode(_component_font_awesome_icon, { icon: \"chevron-circle-right\" })\n ])\n ]),\n _: 1\n }, 8, [\"onClick\", \"to\"]))\n : _createCommentVNode(\"\", true),\n (_ctx.externalLinkUrl)\n ? (_openBlock(), _createElementBlock(\"a\", {\n key: 1,\n href: _ctx.externalLinkUrl,\n target: \"_blank\",\n rel: \"noopener noreferrer\"\n }, [\n _createTextVNode(_toDisplayString(_ctx.linkText) + \" \", 1),\n _createElementVNode(\"span\", _hoisted_6, [\n _createVNode(_component_font_awesome_icon, { icon: \"external-link\" })\n ])\n ], 8, _hoisted_5))\n : _createCommentVNode(\"\", true)\n ], 2))\n}","\r\nimport { PropType } from \"@vue/runtime-core\";\r\nimport { Options, Vue } from \"vue-class-component\";\r\nimport SessionStorageService from \"@/services/sessionstorage-service\";\r\nimport { Constants } from \"@/constants/constants\";\r\n\r\n@Options({\r\n props: {\r\n /**\r\n * The heading for the section\r\n */\r\n heading: {\r\n type: String as PropType,\r\n required: true,\r\n },\r\n /**\r\n * The text content for the section\r\n */\r\n content: {\r\n type: String as PropType,\r\n required: true,\r\n },\r\n /**\r\n * The anchor for the section\r\n */\r\n anchor: {\r\n type: String as PropType,\r\n required: true,\r\n },\r\n /**\r\n * The link text for the section\r\n */\r\n linkText: {\r\n type: String as PropType,\r\n required: false,\r\n },\r\n /**\r\n * The external link url for the section\r\n */\r\n externalLinkUrl: {\r\n type: String as PropType,\r\n required: false,\r\n },\r\n /**\r\n * The router link url for the section\r\n */\r\n routerLinkUrl: {\r\n type: String as PropType,\r\n required: false,\r\n },\r\n showSeparator: {\r\n type: Boolean as PropType,\r\n required: false,\r\n default: true,\r\n },\r\n },\r\n\r\n methods: {\r\n saveLinkUrl() {\r\n SessionStorageService.setItem(Constants.EntryUrl, this.routerLinkUrl);\r\n },\r\n },\r\n})\r\nexport default class PageSectionComponent extends Vue {}\r\n","import { render } from \"./PageSectionComponent.vue?vue&type=template&id=0891e7c4&scoped=true&ts=true\"\nimport script from \"./PageSectionComponent.vue?vue&type=script&lang=ts\"\nexport * from \"./PageSectionComponent.vue?vue&type=script&lang=ts\"\n\nimport \"./PageSectionComponent.vue?vue&type=style&index=0&id=0891e7c4&scoped=true&lang=css\"\n\nimport exportComponent from \"C:\\\\Users\\\\fr5673mo\\\\Documents\\\\git.lu.se\\\\.net\\\\student-portal\\\\student-portal-web\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-0891e7c4\"]])\n\nexport default __exports__","import { PageSection } from \"@/interfaces/api\";\r\nimport BaseService from \"@/services/base-service\";\r\n\r\nclass PageService extends BaseService {\r\n /**\r\n * Fetches the page sections with the specified page type id\r\n *\r\n * @param {number} pageTypeId - The id of the page type\r\n * @returns {Promise>} A promise with the PageSection\r\n */\r\n getPageSectionsByTypeId(pageTypeId: number): Promise> {\r\n const endpointController = \"Page\";\r\n const parameterName = \"pageTypeId\";\r\n const parameterArgument = pageTypeId;\r\n const getPageSectionsByTypeId = `${this.baseApiUrl}api/${endpointController}?${parameterName}=${parameterArgument}`;\r\n return this.fetch>(getPageSectionsByTypeId);\r\n }\r\n}\r\n\r\nexport default new PageService();\r\n","\r\nimport { PropType } from \"@vue/runtime-core\";\r\nimport { Options, Vue } from \"vue-class-component\";\r\nimport LuLeftMenu from \"@/components/Lu/LuLeftMenu.vue\";\r\nimport LuLeftMenuItem from \"@/components/Lu/LuLeftMenuItem.vue\";\r\nimport PageSectionComponent from \"@/components/PageSectionComponent.vue\";\r\nimport LuSpinner from \"@/components/Lu/LuSpinner.vue\";\r\nimport { PageSection } from \"@/interfaces/api\";\r\nimport type { IMenuItem } from \"@/interfaces/IMenuItem\";\r\nimport PageService from \"@/services/page-service\";\r\n\r\n@Options({\r\n components: {\r\n LuLeftMenu,\r\n LuLeftMenuItem,\r\n LuSpinner,\r\n PageSectionComponent,\r\n },\r\n props: {\r\n /**\r\n * The page type id\r\n */\r\n pageTypeId: {\r\n type: Number as PropType,\r\n required: false,\r\n },\r\n },\r\n data: () => ({\r\n /**\r\n * The page sections to be displayed\r\n */\r\n sections: new Array(),\r\n /**\r\n * Used to show or hide spinner\r\n */\r\n isLoading: false,\r\n }),\r\n computed: {\r\n /**\r\n * The currently chosen locale\r\n */\r\n locale() {\r\n return this.$i18n.locale;\r\n },\r\n /**\r\n * The current user\r\n */\r\n currentUser() {\r\n return this.$store.state.currentUser;\r\n },\r\n /**\r\n * The left menu items\r\n */\r\n leftMenuItems() {\r\n return this.generateLeftMenuItems();\r\n },\r\n },\r\n methods: {\r\n /**\r\n * Fetches the page sections\r\n */\r\n getPageSections(): void {\r\n this.isLoading = true;\r\n PageService.getPageSectionsByTypeId(this.pageTypeId)\r\n .then((data: Array) => {\r\n this.sections = data;\r\n this.isLoading = false;\r\n })\r\n .catch((e: Error) => {\r\n console.error(e);\r\n });\r\n },\r\n /**\r\n * Generates the left menu items\r\n */\r\n generateLeftMenuItems(): IMenuItem[] | null {\r\n const menu = new Array();\r\n\r\n this.sections.forEach((section: PageSection) => {\r\n const menuTitle = this.menuTitle(section);\r\n if (menuTitle) {\r\n menu.push({\r\n id: section.id.toString(),\r\n text: menuTitle,\r\n url: `#${section.id}`,\r\n });\r\n }\r\n });\r\n\r\n return menu.length > 0 ? menu : null;\r\n },\r\n /**\r\n * Gets page section title depending on chosen locale\r\n */\r\n sectionTitle(section: PageSection): string {\r\n return this.locale === \"sv\" ? section.titleSv : section.titleEn;\r\n },\r\n /**\r\n * Gets page section content depending on chosen locale\r\n */\r\n sectionContent(section: PageSection): string {\r\n return this.locale === \"sv\" ? section.contentSv : section.contentEn;\r\n },\r\n /**\r\n * Gets page section link text depending on chosen locale\r\n */\r\n sectionLinkText(section: PageSection): string {\r\n return this.locale === \"sv\" ? section.linkTextSv : section.linkTextEn;\r\n },\r\n /**\r\n * Gets left menu title depending on chosen locale\r\n */\r\n menuTitle(section: PageSection): string {\r\n return this.locale === \"sv\" ? section.menuTitleSv : section.menuTitleEn;\r\n },\r\n /**\r\n * Redirects an employee to the employee start page when they log in\r\n */\r\n goToEmployeeHome(): void {\r\n if (\r\n this.currentUser !== undefined &&\r\n this.currentUser.entitlements.includes(\"Employee\")\r\n ) {\r\n this.$router.push({\r\n name: \"EmployeeHome\",\r\n });\r\n }\r\n },\r\n },\r\n})\r\nexport default class Page extends Vue {}\r\n","import { render } from \"./Page.vue?vue&type=template&id=07e33759&scoped=true&ts=true\"\nimport script from \"./Page.vue?vue&type=script&lang=ts\"\nexport * from \"./Page.vue?vue&type=script&lang=ts\"\n\nimport \"./Page.vue?vue&type=style&index=0&id=07e33759&scoped=true&lang=css\"\n\nimport exportComponent from \"C:\\\\Users\\\\fr5673mo\\\\Documents\\\\git.lu.se\\\\.net\\\\student-portal\\\\student-portal-web\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-07e33759\"]])\n\nexport default __exports__","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_Page = _resolveComponent(\"Page\")!\n\n return (_openBlock(), _createBlock(_component_Page, {\n pageTypeId: _ctx.pageTypeId,\n ref: \"page\"\n }, null, 8, [\"pageTypeId\"]))\n}","\r\nimport { Options, Vue } from \"vue-class-component\";\r\nimport Page from \"@/components/Page.vue\";\r\nimport { Constants } from \"@/constants/constants\";\r\n\r\n@Options({\r\n components: {\r\n Page,\r\n },\r\n data: () => ({\r\n /**\r\n * The page type id\r\n */\r\n pageTypeId: Constants.EmployeeHomePageTypeId,\r\n }),\r\n mounted() {\r\n this.$refs.page.getPageSections();\r\n },\r\n})\r\nexport default class EmployeeHome extends Vue {}\r\n","import { render } from \"./EmployeeHome.vue?vue&type=template&id=4844aa06&ts=true\"\nimport script from \"./EmployeeHome.vue?vue&type=script&lang=ts\"\nexport * from \"./EmployeeHome.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"C:\\\\Users\\\\fr5673mo\\\\Documents\\\\git.lu.se\\\\.net\\\\student-portal\\\\student-portal-web\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","var fails = require('../internals/fails');\n\n// check the existence of a method, lowercase\n// of a tag and escaping quotes in arguments\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n var test = ''[METHOD_NAME]('\"');\n return test !== test.toLowerCase() || test.split('\"').length > 3;\n });\n};\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./PageSectionComponent.vue?vue&type=style&index=0&id=0891e7c4&scoped=true&lang=css\""],"sourceRoot":""}