{"version":3,"sources":["webpack:///./node_modules/core-js/internals/string-pad.js","webpack:///./node_modules/core-js/internals/string-repeat.js","webpack:///./src/services/student-service.ts","webpack:///./src/helpers/id-helper.ts","webpack:///./src/components/Form/MandatoryFieldFlag.vue?d35e","webpack:///./src/views/SocialSecurityNumber/Student.vue?f220","webpack:///./node_modules/core-js/modules/es.string.pad-start.js","webpack:///./src/components/DetailsHeader.vue?ba0f","webpack:///./src/components/DetailsHeader.vue","webpack:///./src/components/DetailsHeader.vue?135b","webpack:///./node_modules/dayjs/dayjs.min.js","webpack:///./src/helpers/querystring-helper.ts","webpack:///./node_modules/core-js/internals/string-pad-webkit-bug.js","webpack:///./src/components/DetailsRow.vue?13ad","webpack:///./src/components/DetailsHeader.vue?067d","webpack:///./src/views/SocialSecurityNumber/Student.vue?0160","webpack:///./src/views/SocialSecurityNumber/Student.vue","webpack:///./src/views/SocialSecurityNumber/Student.vue?59d9","webpack:///./src/components/Form/MandatoryFieldFlag.vue?e8f2","webpack:///./src/components/Form/MandatoryFieldFlag.vue","webpack:///./src/components/Form/MandatoryFieldFlag.vue?c1c8","webpack:///./src/components/DetailsRow.vue?5ff4","webpack:///./src/components/DetailsRow.vue","webpack:///./src/components/DetailsRow.vue?864c"],"names":["uncurryThis","toLength","toString","$repeat","requireObjectCoercible","repeat","stringSlice","slice","ceil","Math","createMethod","IS_END","$this","maxLength","fillString","fillLen","stringFiller","S","intMaxLength","stringLength","length","fillStr","undefined","module","exports","start","end","global","toIntegerOrInfinity","RangeError","count","str","this","result","n","Infinity","StudentService","id","endpointController","enpointRoute","parameterName","parameterArgument","getStudentById","baseApiUrl","fetch","studentParameters","queryString","generateQuerystring","coordinatorId","generateSearchAndPagingParameters","personalId","endpointRoute","getStudentResponseByPersonalId","luEduPersonPrimaryId","getStudentByLuEduPersonPrimaryId","student","addOrUpdateStudent","method","headers","body","JSON","stringify","studentData","console","error","encodeURIComponent","getUpdateNationalIdentityNumber","startDate","endDate","url","Authorization","getJWTToken","response","IdHelper","lucatId","currentUser","state","currentUserId","entitlements","includes","env","$","$padStart","WEBKIT_BUG","target","proto","forced","padStart","arguments","_hoisted_1","class","_hoisted_2","_hoisted_3","_hoisted_4","style","_hoisted_5","tabindex","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","render","_ctx","_cache","$props","$setup","$data","$options","_component_font_awesome_icon","showPrevious","key","onfocus","onClick","$event","$emit","icon","$t","title","showNext","props","type","String","required","default","Boolean","emits","__exports__","t","e","r","i","s","u","a","o","f","h","c","d","l","y","M","name","weekdays","split","months","m","Array","join","g","z","utcOffset","abs","floor","date","year","month","clone","add","p","w","D","ms","Q","toLowerCase","replace","v","_","args","O","locale","$L","utc","$u","x","$x","$offset","parse","prototype","$d","Date","NaN","test","match","substring","UTC","init","$y","getFullYear","$M","getMonth","$D","getDate","$W","getDay","$H","getHours","$m","getMinutes","$s","getSeconds","$ms","getMilliseconds","$utils","isValid","isSame","startOf","endOf","isAfter","isBefore","$g","set","unix","valueOf","getTime","toDate","apply","$locale","weekStart","$set","min","daysInMonth","get","Number","round","subtract","format","invalidDate","meridiem","YY","YYYY","MM","MMM","monthsShort","MMMM","DD","dd","weekdaysMin","ddd","weekdaysShort","dddd","H","HH","hh","A","mm","ss","SSS","Z","getTimezoneOffset","diff","toJSON","toISOString","toUTCString","T","forEach","extend","$i","isDayjs","en","Ls","QuerystringHelper","parameters","search","sortBy","sortOrder","pageNumber","pageSize","userAgent","for","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_hoisted_21","_hoisted_22","_hoisted_23","_hoisted_24","href","_hoisted_25","_hoisted_26","_hoisted_27","_hoisted_28","_component_DetailsHeader","_component_DetailsRow","roles","$route","query","lucatid","isLoading","caption","details","person","firstName","lastName","email","isSubmitted","disabled","hasInterimId","years","value","selected","day","days","nnnn","placeholder","maxlength","onInput","validateNnnn","isFormValid","submitUpdate","cancelUpdate","feedbackMessage","feedbackMessageClass","components","DetailsRow","DetailsHeader","setup","store","show","route","router","isSuccess","dateFormat","updateInfo","today","from","event","newPersonalId","newNationalIdentityNumber","submitStudentData","msg","resetFields","push","getStudent","getLuEduPersonPrimaryId","data","getIfUpdateIsInsertedByLuEduPersonPrimaryId","updateResponse","success","log","warn","formatNationalIdentityNumber","idNumber","handleStartDateChange","input","handleEndDateChange","formattedStartDate","formattedEndDate","areDatesValid","areDatesFilled","getters","getCurrentUser","_component_MandatoryFieldFlag","_component_Badge","_component_Tooltip","detailsAreHtml","showDetailsAsBadge","detailsAreList","innerHTML","showTooltip","text","tooltipText","bgColor","tooltipColor","color","tooltipTextColor","rounded","backgroundColor","badgeBackgroundColor","showDetailsInBadge","item","$slots","Badge","Tooltip","MandatoryFieldFlag"],"mappings":"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","file":"assets/js/chunk-018435ea.abad7254.js","sourcesContent":["// https://github.com/tc39/proposal-string-pad-start-end\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar $repeat = require('../internals/string-repeat');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar repeat = uncurryThis($repeat);\nvar stringSlice = uncurryThis(''.slice);\nvar ceil = Math.ceil;\n\n// `String.prototype.{ padStart, padEnd }` methods implementation\nvar createMethod = function (IS_END) {\n return function ($this, maxLength, fillString) {\n var S = toString(requireObjectCoercible($this));\n var intMaxLength = toLength(maxLength);\n var stringLength = S.length;\n var fillStr = fillString === undefined ? ' ' : toString(fillString);\n var fillLen, stringFiller;\n if (intMaxLength <= stringLength || fillStr == '') return S;\n fillLen = intMaxLength - stringLength;\n stringFiller = repeat(fillStr, ceil(fillLen / fillStr.length));\n if (stringFiller.length > fillLen) stringFiller = stringSlice(stringFiller, 0, fillLen);\n return IS_END ? S + stringFiller : stringFiller + S;\n };\n};\n\nmodule.exports = {\n // `String.prototype.padStart` method\n // https://tc39.es/ecma262/#sec-string.prototype.padstart\n start: createMethod(false),\n // `String.prototype.padEnd` method\n // https://tc39.es/ecma262/#sec-string.prototype.padend\n end: createMethod(true)\n};\n","'use strict';\nvar global = require('../internals/global');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar RangeError = global.RangeError;\n\n// `String.prototype.repeat` method implementation\n// https://tc39.es/ecma262/#sec-string.prototype.repeat\nmodule.exports = function repeat(count) {\n var str = toString(requireObjectCoercible(this));\n var result = '';\n var n = toIntegerOrInfinity(count);\n if (n < 0 || n == Infinity) throw RangeError('Wrong number of repetitions');\n for (;n > 0; (n >>>= 1) && (str += str)) if (n & 1) result += str;\n return result;\n};\n","import QuerystringHelper from \"@/helpers/querystring-helper\";\nimport AuthenticationService from \"./authentication-service\";\nimport {\n PagedList,\n Student,\n StudentParameters,\n OverviewStudent,\n PersonResponse,\n WF_NationalIdentityNumberChange,\n} from \"@/interfaces/api\";\nimport BaseService from \"@/services/base-service\";\n\nexport interface UpdateResponse {\n response: WF_NationalIdentityNumberChange;\n success: boolean;\n}\n\nclass StudentService extends BaseService {\n /**\n * Fetches the student with the specified id\n *\n * @param {number} id - The id of the student to fetch\n * @returns {Promise} A Promise with a person response\n */\n getStudentById(id: number): Promise {\n const endpointController = \"Student\";\n const enpointRoute = \"id\";\n const parameterName = \"id\";\n const parameterArgument = id;\n const getStudentById = `${this.baseApiUrl}api/${endpointController}/${enpointRoute}?${parameterName}=${parameterArgument}`;\n return this.fetch(getStudentById);\n }\n\n /* Fetches students according to the specified filter/paging parameters\n *\n * @param {StudentParameters} studentParameters - The filter/paging parameters to be added to the resource querystring\n * @returns {Promise>} A Promise with all the students that matched the parameters\n */\n getFiltered(\n studentParameters: StudentParameters\n ): Promise> {\n const endpointController = \"Student\";\n const enpointRoute = \"search\";\n const queryString = this.generateQuerystring(studentParameters);\n const getStudentById = `${this.baseApiUrl}api/${endpointController}/${enpointRoute}${queryString}`;\n return this.fetch>(getStudentById);\n }\n\n /**\n * Returns a query string according to the specified filter parameters\n *\n * @param {StudentParameters} studentParameters - The filter/paging parameters to be added to the resource querystring\n * @returns {string} The generated query string\n */\n private generateQuerystring(studentParameters: StudentParameters): string {\n let queryString = \"?\";\n\n queryString += `CoordinatorId=${studentParameters.coordinatorId}&`;\n\n queryString +=\n QuerystringHelper.generateSearchAndPagingParameters(studentParameters);\n\n return queryString;\n }\n\n /**\n * Fetches a student response containing the student with the specified personal id and also a\n * boolean value representing whether or not the student already exists in the STP database\n *\n * @param {string} personalId - The personal id of the student to fetch\n * @returns {Promise} A Promise with a person response\n */\n getStudentResponseByPersonalId(personalId: string): Promise {\n const endpointController = \"Student\";\n const endpointRoute = \"personalId\";\n const parameterName = \"personalId\";\n const parameterArgument = personalId;\n const queryString = `${parameterName}=${parameterArgument}`;\n const getStudentResponseByPersonalId = `${this.baseApiUrl}api/${endpointController}/${endpointRoute}?${queryString}`;\n return this.fetch(getStudentResponseByPersonalId);\n }\n\n /**\n * Fetches the student with the specified luEduPersonPrimaryId\n *\n * @param {string} luEduPersonPrimaryId - The luEduPersonPrimaryId of the student to fetch\n * @returns {Promise} A Promise with a student response\n */\n getStudentByLuEduPersonPrimaryId(\n luEduPersonPrimaryId: string\n ): Promise {\n const endpointController = \"Student\";\n const endpointRoute = \"primaryId\";\n const parameterName = \"luEduPersonPrimaryId\";\n const parameterArgument = luEduPersonPrimaryId;\n const queryString = `${parameterName}=${parameterArgument}`;\n const getStudentByLuEduPersonPrimaryId = `${this.baseApiUrl}api/${endpointController}/${endpointRoute}?${queryString}`;\n return this.fetch(getStudentByLuEduPersonPrimaryId);\n }\n\n /**\n * Adds or updates a student\n *\n * @param {Student} student - The student to add och update\n * @returns {Promise} A promise with a boolean value indicating whether or not the operation was successful\n */\n addOrUpdateStudent(student: Student): Promise {\n const endpointController = \"Student\";\n const addOrUpdateStudent = `${this.baseApiUrl}api/${endpointController}`;\n return this.fetch(addOrUpdateStudent, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify(student),\n });\n }\n\n /**\n * The `submitStudentData` function sends a POST request to submit student data.\n * @param {any} studentData - The data of the student to be submitted.\n * @returns A Promise that resolves to the response data.\n */\n async submitStudentData(\n studentData: WF_NationalIdentityNumberChange\n ): Promise {\n try {\n const endpointController = \"Student/socialSecurityNumber\";\n const submitStudentData = `${this.baseApiUrl}api/${endpointController}`;\n return this.fetch(submitStudentData, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify(studentData),\n });\n } catch (error) {\n // Handle errors appropriately\n console.error(\"Error submitting student data: \", error);\n throw error;\n }\n }\n\n /**\n * Checks if the update of the national identity number for the student with the specified luEduPersonPrimaryId exists.\n *\n * @param {string} luEduPersonPrimaryId - The luEduPersonPrimaryId of the student to check\n * @returns {Promise<{ response: WF_NationalIdentityNumberChange | null; success: boolean }>} A Promise with the updated information\n */\n getIfUpdateIsInsertedByLuEduPersonPrimaryId(\n luEduPersonPrimaryId: string\n ): Promise<{\n response: WF_NationalIdentityNumberChange | null;\n success: boolean;\n }> {\n const endpointController = \"Student\";\n const endpointRoute = \"updatedNationalIdentityNumber\";\n const parameterName = \"lucatid\";\n const queryString = `${parameterName}=${encodeURIComponent(\n luEduPersonPrimaryId\n )}`;\n const getUpdateNationalIdentityNumber = `${this.baseApiUrl}api/${endpointController}/${endpointRoute}?${queryString}`;\n return this.fetch<{\n response: WF_NationalIdentityNumberChange | null;\n success: boolean;\n }>(getUpdateNationalIdentityNumber);\n }\n\n /**\n * Exports student data to a excel file based on the provided date range.\n *\n * @param {string} startDate - The start date of the date range for the export.\n * @param {string} endDate - The end date of the date range for the export.\n */\n async exportStudentsToExcel(startDate: string, endDate: string) {\n const endpointController = \"Student\";\n const endpointRoute = \"export\";\n const queryString = `startDate=${startDate}&endDate=${endDate}`;\n const url = `${this.baseApiUrl}api/${endpointController}/${endpointRoute}?${queryString}`;\n\n const response = await fetch(url, {\n method: \"GET\",\n headers: {\n Authorization: `Bearer ${AuthenticationService.getJWTToken()}`,\n },\n });\n\n return response;\n }\n}\n\nexport default new StudentService();\n","import store from \"@/store\";\n\nclass IdHelper {\n /**\n * Returns a luEduPersonPrimaryId dependent on the environment and if a querystring parameter has been retrieved\n * Querystring parameter can be used in the URL to imitate note takers\n * ?lucatid=fr5643li\n */\n getLuEduPersonPrimaryId(lucatId: string): string {\n const currentUser = store.state.currentUser;\n const currentUserId = currentUser ? currentUser.luEduPersonPrimaryId : \"\";\n\n const luEduPersonPrimaryId = currentUser?.entitlements?.includes(\n \"SuperAdmin\"\n )\n ? lucatId ?? currentUserId\n : currentUserId;\n\n return luEduPersonPrimaryId;\n }\n\n /**\n * Returns a personalId dependent on the environment and if a querystring parameter has been retrieved\n * Querystring parameter can be used in the URL to imitate another user\n * ?personalId=123456789123\n */\n getPersonalId(personalId: string): string {\n const currentUser = store.state.currentUser;\n const currentUserId = currentUser ? currentUser.personalId : \"\";\n const env = process.env.VUE_APP_ENV_NAME;\n\n if (!personalId) {\n return currentUserId;\n }\n\n const result =\n env === \"Development\" ||\n env === \"Test\" ||\n currentUser?.entitlements?.includes(\"SuperAdmin\") ||\n currentUser?.entitlements?.includes(\"Tuition fees administratör\")\n ? personalId ?? currentUserId\n : currentUserId;\n\n return result;\n }\n}\n\nexport default new IdHelper();\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!./MandatoryFieldFlag.vue?vue&type=style&index=0&id=11cc3317&scoped=true&lang=css\"","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!./Student.vue?vue&type=style&index=0&id=d88195ea&scoped=true&lang=css\"","'use strict';\nvar $ = require('../internals/export');\nvar $padStart = require('../internals/string-pad').start;\nvar WEBKIT_BUG = require('../internals/string-pad-webkit-bug');\n\n// `String.prototype.padStart` method\n// https://tc39.es/ecma262/#sec-string.prototype.padstart\n$({ target: 'String', proto: true, forced: WEBKIT_BUG }, {\n padStart: function padStart(maxLength /* , fillString = ' ' */) {\n return $padStart(this, maxLength, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","import { resolveComponent as _resolveComponent, createVNode as _createVNode, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-0f3c00a4\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"container\" }\nconst _hoisted_2 = { class: \"d-flex flex-row align-items-center p-2\" }\nconst _hoisted_3 = { class: \"d-flex justify-content-start w-100\" }\nconst _hoisted_4 = { style: {\"padding\":\"0 10px\"} }\nconst _hoisted_5 = { tabindex: \"0\" }\nconst _hoisted_6 = { class: \"page-heading\" }\nconst _hoisted_7 = { class: \"d-flex justify-content-end w-100\" }\nconst _hoisted_8 = { tabindex: \"0\" }\nconst _hoisted_9 = { style: {\"padding\":\"0 10px\"} }\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\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n (_ctx.showPrevious)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n id: \"previousBtn\",\n class: \"btn btn-link btn-block text-left\",\n onfocus: \"this.blur()\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_ctx.$emit('previous')))\n }, [\n _createElementVNode(\"span\", _hoisted_4, [\n _createVNode(_component_font_awesome_icon, { icon: \"arrow-circle-left\" })\n ]),\n _createElementVNode(\"span\", _hoisted_5, _toDisplayString(_ctx.$t(\"pagination.previous\")), 1)\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"h1\", _hoisted_6, _toDisplayString(_ctx.title), 1),\n _createElementVNode(\"div\", _hoisted_7, [\n (_ctx.showNext)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n id: \"nextBtn\",\n class: \"btn btn-link btn-block text-right\",\n onfocus: \"this.blur()\",\n onClick: _cache[1] || (_cache[1] = ($event: any) => (_ctx.$emit('next')))\n }, [\n _createElementVNode(\"span\", _hoisted_8, _toDisplayString(_ctx.$t(\"pagination.next\")), 1),\n _createElementVNode(\"span\", _hoisted_9, [\n _createVNode(_component_font_awesome_icon, { icon: \"arrow-circle-right\" })\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ]))\n}","\nimport { PropType } from \"@vue/runtime-core\";\nimport { Options, Vue } from \"vue-class-component\";\n\n@Options({\n props: {\n /*\n * Holds the id of the item and is populated from the route's id parameter when the page loads\n */\n title: {\n type: String as PropType,\n required: false,\n default: \"\",\n },\n\n showPrevious: {\n type: Boolean as PropType,\n required: false,\n default: true,\n },\n\n showNext: {\n type: Boolean as PropType,\n required: false,\n default: true,\n },\n },\n emits: [\"previous\", \"next\"],\n})\nexport default class DetailsHeader extends Vue {}\n","import { render } from \"./DetailsHeader.vue?vue&type=template&id=0f3c00a4&scoped=true&ts=true\"\nimport script from \"./DetailsHeader.vue?vue&type=script&lang=ts\"\nexport * from \"./DetailsHeader.vue?vue&type=script&lang=ts\"\n\nimport \"./DetailsHeader.vue?vue&type=style&index=0&id=0f3c00a4&scoped=true&lang=css\"\n\nimport exportComponent from \"C:\\\\GIT\\\\StudentPortal\\\\student-portal-web\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-0f3c00a4\"]])\n\nexport default __exports__","!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs=e()}(this,(function(){\"use strict\";var t=1e3,e=6e4,n=36e5,r=\"millisecond\",i=\"second\",s=\"minute\",u=\"hour\",a=\"day\",o=\"week\",f=\"month\",h=\"quarter\",c=\"year\",d=\"date\",$=\"Invalid Date\",l=/^(\\d{4})[-/]?(\\d{1,2})?[-/]?(\\d{0,2})[Tt\\s]*(\\d{1,2})?:?(\\d{1,2})?:?(\\d{1,2})?[.:]?(\\d+)?$/,y=/\\[([^\\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,M={name:\"en\",weekdays:\"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday\".split(\"_\"),months:\"January_February_March_April_May_June_July_August_September_October_November_December\".split(\"_\")},m=function(t,e,n){var r=String(t);return!r||r.length>=e?t:\"\"+Array(e+1-r.length).join(n)+t},g={s:m,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return(e<=0?\"+\":\"-\")+m(r,2,\"0\")+\":\"+m(i,2,\"0\")},m:function t(e,n){if(e.date()1)return t(u[0])}else{var a=e.name;D[a]=e,i=a}return!r&&i&&(v=i),i||!r&&v},w=function(t,e){if(p(t))return t.clone();var n=\"object\"==typeof e?e:{};return n.date=t,n.args=arguments,new _(n)},O=g;O.l=S,O.i=p,O.w=function(t,e){return w(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var _=function(){function M(t){this.$L=S(t.locale,null,!0),this.parse(t)}var m=M.prototype;return m.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(O.u(e))return new Date;if(e instanceof Date)return new Date(e);if(\"string\"==typeof e&&!/Z$/i.test(e)){var r=e.match(l);if(r){var i=r[2]-1||0,s=(r[7]||\"0\").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)}}return new Date(e)}(t),this.$x=t.x||{},this.init()},m.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},m.$utils=function(){return O},m.isValid=function(){return!(this.$d.toString()===$)},m.isSame=function(t,e){var n=w(t);return this.startOf(e)<=n&&n<=this.endOf(e)},m.isAfter=function(t,e){return w(t) (_pushScopeId(\"data-v-d88195ea\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"container\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"form-container\"\n}\nconst _hoisted_3 = { class: \"details-container\" }\nconst _hoisted_4 = {\n key: 0,\n class: \"editing-container\"\n}\nconst _hoisted_5 = {\n class: \"form-group mobile-fixed-width\",\n style: {\"width\":\"5.4vw\"}\n}\nconst _hoisted_6 = { for: \"year\" }\nconst _hoisted_7 = [\"disabled\"]\nconst _hoisted_8 = [\"value\", \"selected\"]\nconst _hoisted_9 = {\n class: \"form-group mobile-fixed-width\",\n style: {\"width\":\"3.5vw\"}\n}\nconst _hoisted_10 = { for: \"month\" }\nconst _hoisted_11 = [\"disabled\"]\nconst _hoisted_12 = [\"value\", \"selected\"]\nconst _hoisted_13 = {\n class: \"form-group mobile-fixed-width\",\n style: {\"width\":\"3.5vw\"}\n}\nconst _hoisted_14 = { for: \"day\" }\nconst _hoisted_15 = [\"disabled\"]\nconst _hoisted_16 = [\"value\", \"selected\"]\nconst _hoisted_17 = {\n class: \"form-group mobile-fixed-width\",\n style: {\"width\":\"5.4vw\"}\n}\nconst _hoisted_18 = { for: \"nnnn\" }\nconst _hoisted_19 = [\"placeholder\", \"disabled\"]\nconst _hoisted_20 = { key: 1 }\nconst _hoisted_21 = [\"disabled\"]\nconst _hoisted_22 = {\n key: 1,\n class: \"text-center\",\n style: {\"color\":\"#875e29\"}\n}\nconst _hoisted_23 = {\n key: 0,\n style: {\"font-weight\":\"bold\"}\n}\nconst _hoisted_24 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, [\n /*#__PURE__*/_createTextVNode(\" Update pending! Please check \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n style: {\"color\":\"blue\"},\n href: \"https://www.student.ladok.se\"\n }, \" https://www.student.ladok.se \")\n], -1))\nconst _hoisted_25 = [\n _hoisted_24\n]\nconst _hoisted_26 = { key: 1 }\nconst _hoisted_27 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"a\", {\n style: {\"color\":\"blue\"},\n href: \"https://www.student.ladok.se\"\n}, \"https://www.student.ladok.se\", -1))\nconst _hoisted_28 = [\n _hoisted_27\n]\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_DetailsHeader = _resolveComponent(\"DetailsHeader\")!\n const _component_DetailsRow = _resolveComponent(\"DetailsRow\")!\n const _component_font_awesome_icon = _resolveComponent(\"font-awesome-icon\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_DetailsHeader, {\n showNext: false,\n showPrevious: false,\n title: _ctx.$t('shared.routes.personal-identity-number')\n }, null, 8, [\"title\"]),\n ($setup.roles.includes('Student') || (_ctx.$route.query.lucatid && !$setup.isLoading))\n ? (_openBlock(), _createElementBlock(\"form\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createVNode(_component_DetailsRow, {\n caption: \"person.personalId\",\n details: `${$setup.person?.personalId}`\n }, null, 8, [\"details\"]),\n _createVNode(_component_DetailsRow, {\n caption: \"person.name\",\n details: `${$setup.person?.firstName}`\n }, null, 8, [\"details\"]),\n _createVNode(_component_DetailsRow, {\n caption: \"person.lastName\",\n details: `${$setup.person?.lastName}`\n }, null, 8, [\"details\"]),\n _createVNode(_component_DetailsRow, {\n caption: \"person.email\",\n details: `${$setup.person?.email}`\n }, null, 8, [\"details\"])\n ]),\n ($setup.person && !$setup.isSubmitted)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"label\", _hoisted_6, _toDisplayString(_ctx.$t(\"shared.year\")), 1),\n _withDirectives(_createElementVNode(\"select\", {\n id: \"year\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => (($setup.year) = $event)),\n class: _normalizeClass([\"form-control custom-select\", { 'disabled-input': $setup.isSubmitted }]),\n disabled: !$setup.hasInterimId || $setup.isSubmitted\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList($setup.years, (y) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n key: y,\n value: y,\n selected: $setup.isSubmitted && $setup.year === y\n }, _toDisplayString(y), 9, _hoisted_8))\n }), 128))\n ], 10, _hoisted_7), [\n [_vModelSelect, $setup.year]\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_9, [\n _createElementVNode(\"label\", _hoisted_10, _toDisplayString(_ctx.$t(\"shared.month\")), 1),\n _withDirectives(_createElementVNode(\"select\", {\n id: \"month\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => (($setup.month) = $event)),\n class: _normalizeClass([\"form-control custom-select\", { 'disabled-input': $setup.isSubmitted }]),\n disabled: !$setup.hasInterimId || $setup.isSubmitted\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList($setup.months, (m) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n key: m,\n value: m,\n selected: $setup.isSubmitted && $setup.month === m\n }, _toDisplayString(m), 9, _hoisted_12))\n }), 128))\n ], 10, _hoisted_11), [\n [_vModelSelect, $setup.month]\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_13, [\n _createElementVNode(\"label\", _hoisted_14, _toDisplayString(_ctx.$t(\"shared.day\")), 1),\n _withDirectives(_createElementVNode(\"select\", {\n id: \"day\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => (($setup.day) = $event)),\n class: _normalizeClass([\"form-control custom-select\", { 'disabled-input': $setup.isSubmitted }]),\n disabled: !$setup.hasInterimId || $setup.isSubmitted\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList($setup.days, (d) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n key: d,\n value: d,\n selected: $setup.isSubmitted && $setup.day === d\n }, _toDisplayString(d), 9, _hoisted_16))\n }), 128))\n ], 10, _hoisted_15), [\n [_vModelSelect, $setup.day]\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_17, [\n _createElementVNode(\"label\", _hoisted_18, _toDisplayString(_ctx.$t(\"nnnn\")), 1),\n _withDirectives(_createElementVNode(\"input\", {\n id: \"nnnn\",\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => (($setup.nnnn) = $event)),\n class: _normalizeClass([\"form-control\", { 'disabled-input': $setup.isSubmitted }]),\n style: {\"border-radius\":\"8px\"},\n placeholder: $setup.isSubmitted ? $setup.nnnn : _ctx.$t('shared.four-digits'),\n maxlength: \"4\",\n onInput: _cache[4] || (_cache[4] = \n//@ts-ignore\n(...args) => ($setup.validateNnnn && $setup.validateNnnn(...args))),\n disabled: !$setup.hasInterimId || $setup.isSubmitted\n }, null, 42, _hoisted_19), [\n [_vModelText, $setup.nnnn]\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true),\n (!$setup.isSubmitted)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_20, [\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n disabled: !$setup.isFormValid || $setup.isSubmitted,\n onClick: _cache[5] || (_cache[5] = _withModifiers(\n//@ts-ignore\n(...args) => ($setup.submitUpdate && $setup.submitUpdate(...args)), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t(\"shared.send\")), 9, _hoisted_21),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline-primary\",\n onClick: _cache[6] || (_cache[6] = _withModifiers(\n//@ts-ignore\n(...args) => ($setup.cancelUpdate && $setup.cancelUpdate(...args)), [\"prevent\"]))\n }, _toDisplayString(_ctx.$t(\"shared.cancel\")), 1)\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true),\n ($setup.isLoading)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_22, [\n ($setup.isLoading)\n ? (_openBlock(), _createBlock(_component_font_awesome_icon, {\n key: 0,\n class: _normalizeClass([`fa-3x`, \"fa-spin\"]),\n icon: \"circle-notch\"\n }))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true),\n ($setup.feedbackMessage)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 2,\n class: _normalizeClass([$setup.feedbackMessageClass, \"feedback-message\"])\n }, [\n _createTextVNode(_toDisplayString($setup.feedbackMessage) + \" \", 1),\n (\n $setup.feedbackMessage ===\n 'You have submitted a request for an update of your Personal Identity Number.'\n )\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_23, _hoisted_25))\n : _createCommentVNode(\"\", true),\n (\n $setup.feedbackMessage ===\n 'Your Personal Identity Number has been updated in the Study Administration Systems.'\n )\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_26, _hoisted_28))\n : _createCommentVNode(\"\", true)\n ], 2))\n : _createCommentVNode(\"\", true)\n ]))\n}","\nimport { computed, onMounted, ref } from \"vue\";\nimport DetailsRow from \"@/components/DetailsRow.vue\";\nimport DetailsHeader from \"@/components/DetailsHeader.vue\";\nimport { Student, WF_NationalIdentityNumberChange } from \"@/interfaces/api\";\nimport StudentService from \"@/services/student-service\";\nimport IdHelper from \"@/helpers/id-helper\";\nimport { useRoute, useRouter } from \"vue-router\";\nimport { useStore } from \"vuex\";\nimport { useI18n } from \"vue-i18n\";\nimport dayjs from \"dayjs\";\n\nexport default {\n name: \"Student\",\n components: {\n DetailsRow,\n DetailsHeader,\n },\n setup(): Record {\n const { t } = useI18n();\n const store = useStore();\n const show = false;\n const route = useRoute();\n const router = useRouter();\n const person = ref(undefined);\n const isSubmitted = ref(false);\n const isLoading = ref(true);\n const year = ref(\"\");\n const month = ref(\"\");\n const day = ref(\"\");\n const nnnn = ref(\"\");\n const feedbackMessage = ref(\"\");\n const isSuccess = ref(false);\n const roles = ref([]);\n const startDate = ref(null);\n const endDate = ref(null);\n const dateFormat = ref(\"yyyy-MM-dd\");\n const updateInfo = ref(null);\n const today = dayjs().format(\"YYYY-MM-DD\");\n\n const years = ref(\n Array.from({ length: 100 }, (_, i) => new Date().getFullYear() - i)\n );\n const months = ref(\n Array.from({ length: 12 }, (_, i) => (i + 1).toString().padStart(2, \"0\"))\n );\n const days = ref(\n Array.from({ length: 31 }, (_, i) => (i + 1).toString().padStart(2, \"0\"))\n );\n\n const validateNnnn = (event: Event) => {\n const target = event.target as HTMLInputElement;\n target.value = target.value.replace(/\\D/g, \"\").slice(0, 4);\n nnnn.value = target.value;\n };\n\n const isFormValid = computed(\n () => year.value && month.value && day.value && nnnn.value.length === 4\n );\n\n const feedbackMessageClass = computed(() =>\n isSuccess.value ? \"text-success\" : \"text-danger\"\n );\n\n const submitUpdate = async () => {\n if (!person.value || !person.value.personalId) {\n console.error(\"Person value or personalId is undefined\");\n return;\n }\n\n const newPersonalId = `${year.value}${month.value}${day.value}${nnnn.value}`;\n\n try {\n isLoading.value = true;\n\n const studentData: WF_NationalIdentityNumberChange = {\n luEduPersonPrimaryId: person.value.luEduPersonPrimaryId,\n newNationalIdentityNumber: newPersonalId,\n };\n\n await StudentService.submitStudentData(studentData);\n\n const msg =\n \"Thank you for your request. \" +\n \" You will receive an email when your Personal Identity number has been updated in the Study Administration Systems\";\n\n feedbackMessage.value = msg;\n isSuccess.value = true;\n isSubmitted.value = true;\n } catch (error) {\n feedbackMessage.value = \"Något gick fel...\";\n isSuccess.value = false;\n resetFields();\n } finally {\n isLoading.value = false;\n }\n };\n\n const cancelUpdate = () => {\n resetFields();\n router.push(\"/\");\n };\n\n const resetFields = () => {\n if (!person.value || !person.value.personalId) {\n console.error(\"Person value or personalId is undefined\");\n return;\n }\n\n year.value = person.value.personalId.slice(0, 4);\n month.value = \"\";\n day.value = \"\";\n nnnn.value = \"\";\n };\n\n const getStudent = async () => {\n const luEduPersonPrimaryId = IdHelper.getLuEduPersonPrimaryId(\n route.query[\"lucatid\"] as string\n );\n\n try {\n const data = await StudentService.getStudentByLuEduPersonPrimaryId(\n luEduPersonPrimaryId\n );\n\n if (!data) {\n isSubmitted.value = false;\n return;\n }\n\n person.value = data;\n year.value = person.value.personalId.slice(0, 4);\n\n // Kontrollera om uppdatering finns\n try {\n const updateResponse =\n await StudentService.getIfUpdateIsInsertedByLuEduPersonPrimaryId(\n luEduPersonPrimaryId\n );\n\n if (updateResponse?.success && updateResponse.response) {\n isSubmitted.value = true;\n updateInfo.value = updateResponse.response;\n const newNationalIdentityNumber =\n updateResponse.response.newNationalIdentityNumber;\n year.value = newNationalIdentityNumber?.slice(0, 4) || \"\";\n month.value = newNationalIdentityNumber?.slice(4, 6) || \"\";\n day.value = newNationalIdentityNumber?.slice(6, 8) || \"\";\n nnnn.value = newNationalIdentityNumber?.slice(8, 12) || \"\";\n\n feedbackMessage.value =\n person.value.personalId === newNationalIdentityNumber\n ? \"Your Personal Identity Number has been updated in the Study Administration Systems.\"\n : \"You have submitted a request for an update of your Personal Identity Number.\";\n\n isSuccess.value =\n person.value.personalId === newNationalIdentityNumber;\n } else {\n isSubmitted.value = false;\n console.log(\"No previous update found, inputs are active.\");\n }\n } catch (error) {\n console.warn(\n \"Update check returned 404, but inputs are still active.\"\n );\n isSubmitted.value = false;\n }\n\n return true;\n } catch (error: unknown) {\n console.error(\"Error in getStudent: \", error);\n feedbackMessage.value =\n \"An error occurred while fetching student data.\";\n isSubmitted.value = false;\n } finally {\n isLoading.value = false;\n }\n };\n\n const formatNationalIdentityNumber = (idNumber: string) => {\n if (!idNumber) {\n console.error(\"idNumber is undefined\");\n return \"\";\n }\n return `${idNumber.slice(0, 8)}-${idNumber.slice(8)}`;\n };\n\n const hasInterimId = computed(\n () => person.value && /[A-Za-z]/.test(person.value.personalId)\n );\n\n const handleStartDateChange = (event: Event) => {\n const input = event.target as HTMLInputElement;\n startDate.value = input.value;\n };\n\n const handleEndDateChange = (event: Event) => {\n const input = event.target as HTMLInputElement;\n endDate.value = input.value;\n };\n\n const formattedStartDate = computed({\n get() {\n return startDate.value;\n },\n set(value: string | null) {\n startDate.value = value;\n },\n });\n\n const formattedEndDate = computed({\n get() {\n return dayjs(endDate.value).format(\"YYYY-MM-DD\");\n },\n set(value: string) {\n endDate.value = value;\n },\n });\n\n const areDatesValid = computed(() => {\n if (!startDate.value || !endDate.value) return true;\n return (\n dayjs(startDate.value).isBefore(endDate.value) ||\n dayjs(startDate.value).isSame(endDate.value)\n );\n });\n\n const areDatesFilled = computed(() => {\n return !!startDate.value && !!endDate.value;\n });\n\n onMounted(() => {\n getStudent();\n const currentUser = store.getters.getCurrentUser;\n roles.value = currentUser.entitlements;\n });\n\n return {\n t,\n formattedStartDate,\n formattedEndDate,\n handleStartDateChange,\n handleEndDateChange,\n show,\n person,\n years,\n isLoading,\n months,\n days,\n year,\n month,\n day,\n nnnn,\n updateInfo,\n feedbackMessage,\n feedbackMessageClass,\n cancelUpdate,\n submitUpdate,\n validateNnnn,\n getStudent,\n hasInterimId,\n isFormValid,\n isSubmitted,\n roles,\n startDate,\n endDate,\n dateFormat,\n formatNationalIdentityNumber,\n today,\n areDatesValid,\n areDatesFilled,\n resetFields,\n };\n },\n};\n","import { render } from \"./Student.vue?vue&type=template&id=d88195ea&scoped=true&ts=true\"\nimport script from \"./Student.vue?vue&type=script&lang=ts\"\nexport * from \"./Student.vue?vue&type=script&lang=ts\"\n\nimport \"./Student.vue?vue&type=style&index=0&id=d88195ea&scoped=true&lang=css\"\n\nimport exportComponent from \"C:\\\\GIT\\\\StudentPortal\\\\student-portal-web\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-d88195ea\"]])\n\nexport default __exports__","import { openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-11cc3317\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = [\"title\"]\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n return (_openBlock(), _createElementBlock(\"span\", {\n class: \"mandatory-field-flag\",\n title: _ctx.$t('mandatoryField.title')\n }, \" * \", 8, _hoisted_1))\n}","\nimport { Vue } from \"vue-class-component\";\n\nexport default class MandatoryFieldFlag extends Vue {}\n","import { render } from \"./MandatoryFieldFlag.vue?vue&type=template&id=11cc3317&scoped=true&ts=true\"\nimport script from \"./MandatoryFieldFlag.vue?vue&type=script&lang=ts\"\nexport * from \"./MandatoryFieldFlag.vue?vue&type=script&lang=ts\"\n\nimport \"./MandatoryFieldFlag.vue?vue&type=style&index=0&id=11cc3317&scoped=true&lang=css\"\n\nimport exportComponent from \"C:\\\\GIT\\\\StudentPortal\\\\student-portal-web\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-11cc3317\"]])\n\nexport default __exports__","import { toDisplayString as _toDisplayString, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, createElementVNode as _createElementVNode, createElementBlock as _createElementBlock, withCtx as _withCtx, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, renderSlot as _renderSlot, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-0948d347\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"detailsRow\" }\nconst _hoisted_2 = { class: \"detailsCaption\" }\nconst _hoisted_3 = {\n key: 0,\n class: \"detailsCol\"\n}\nconst _hoisted_4 = [\"innerHTML\"]\nconst _hoisted_5 = {\n key: 2,\n class: \"detailsCol\"\n}\nconst _hoisted_6 = { key: 0 }\nconst _hoisted_7 = { key: 1 }\nconst _hoisted_8 = { key: 0 }\nconst _hoisted_9 = { key: 1 }\nconst _hoisted_10 = {\n key: 3,\n class: \"detailsCol\"\n}\nconst _hoisted_11 = { key: 0 }\nconst _hoisted_12 = [\"innerHTML\"]\nconst _hoisted_13 = { key: 1 }\nconst _hoisted_14 = {\n key: 4,\n class: \"detailsCol\"\n}\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_MandatoryFieldFlag = _resolveComponent(\"MandatoryFieldFlag\")!\n const _component_Badge = _resolveComponent(\"Badge\")!\n const _component_Tooltip = _resolveComponent(\"Tooltip\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createTextVNode(_toDisplayString(_ctx.caption ? _ctx.$t(_ctx.caption) : \"\") + \" \", 1),\n (_ctx.required)\n ? (_openBlock(), _createBlock(_component_MandatoryFieldFlag, { key: 0 }))\n : _createCommentVNode(\"\", true)\n ]),\n (\n !_ctx.detailsAreHtml && !_ctx.showDetailsAsBadge && !_ctx.detailsAreList && _ctx.details\n )\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, _toDisplayString(_ctx.details), 1))\n : _createCommentVNode(\"\", true),\n (_ctx.detailsAreHtml && !_ctx.showDetailsAsBadge && !_ctx.detailsAreList)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 1,\n class: \"detailsCol\",\n innerHTML: _ctx.details\n }, null, 8, _hoisted_4))\n : _createCommentVNode(\"\", true),\n (_ctx.showDetailsAsBadge)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_5, [\n (_ctx.showTooltip)\n ? (_openBlock(), _createBlock(_component_Tooltip, {\n key: 0,\n text: _ctx.tooltipText,\n bgColor: _ctx.tooltipColor,\n color: _ctx.tooltipTextColor\n }, {\n default: _withCtx(() => [\n _createVNode(_component_Badge, {\n rounded: true,\n backgroundColor: _ctx.badgeBackgroundColor\n }, {\n default: _withCtx(() => [\n (_ctx.showDetailsInBadge)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_6, _toDisplayString(_ctx.details), 1))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_7, \" \"))\n ]),\n _: 1\n }, 8, [\"backgroundColor\"])\n ]),\n _: 1\n }, 8, [\"text\", \"bgColor\", \"color\"]))\n : (_openBlock(), _createBlock(_component_Badge, {\n key: 1,\n rounded: true,\n backgroundColor: _ctx.badgeBackgroundColor\n }, {\n default: _withCtx(() => [\n (_ctx.showDetailsInBadge)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_8, _toDisplayString(_ctx.details), 1))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_9, \" \"))\n ]),\n _: 1\n }, 8, [\"backgroundColor\"]))\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.detailsAreList)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_10, [\n (_ctx.detailsAreHtml)\n ? (_openBlock(), _createElementBlock(\"ul\", _hoisted_11, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.details, (item) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: item,\n innerHTML: item\n }, null, 8, _hoisted_12))\n }), 128))\n ]))\n : (_openBlock(), _createElementBlock(\"ul\", _hoisted_13, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.details, (item) => {\n return (_openBlock(), _createElementBlock(\"li\", { key: item }, _toDisplayString(item), 1))\n }), 128))\n ]))\n ]))\n : _createCommentVNode(\"\", true),\n (!_ctx.details || !_ctx.details.length)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_14, [\n _renderSlot(_ctx.$slots, \"default\", {}, undefined, true)\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n}","\nimport { PropType } from \"@vue/runtime-core\";\nimport { Options, Vue } from \"vue-class-component\";\nimport Badge from \"@/components/Badge.vue\";\nimport Tooltip from \"@/components/Tooltip.vue\";\nimport MandatoryFieldFlag from \"@/components/Form/MandatoryFieldFlag.vue\";\n\n@Options({\n components: {\n Badge,\n Tooltip,\n MandatoryFieldFlag,\n },\n props: {\n /**\n * The caption for the row\n */\n caption: {\n type: String as PropType,\n required: false,\n },\n /**\n * The info/details for the row\n */\n details: {\n type: [String, Array] as PropType>,\n required: false,\n },\n /**\n * If set to true the details are shown as a badge\n */\n showDetailsAsBadge: {\n type: Boolean as PropType,\n required: false,\n default: false,\n },\n /**\n * If set to true the details are shown in the badge,\n * otherwise the badge can be used for example purely as a status color\n * showDetailsAsBadge must also be set to true\n */\n showDetailsInBadge: {\n type: Boolean as PropType,\n required: false,\n default: false,\n },\n /**\n * Background color of the badge\n */\n badgeBackgroundColor: {\n type: String as PropType,\n required: false,\n },\n /**\n * If set to true the details are shown as a list\n */\n detailsAreList: {\n type: Boolean as PropType,\n required: false,\n default: false,\n },\n /**\n * If set to true the details are rendered as a HTML\n */\n detailsAreHtml: {\n type: Boolean as PropType,\n required: false,\n default: false,\n },\n showTooltip: {\n type: Boolean as PropType,\n required: false,\n default: false,\n },\n tooltipText: {\n type: String as PropType,\n required: false,\n },\n tooltipColor: {\n type: String as PropType,\n required: false,\n },\n tooltipTextColor: {\n type: String as PropType,\n required: false,\n },\n required: {\n type: Boolean as PropType,\n required: false,\n default: false,\n },\n },\n})\nexport default class DetailsRow extends Vue {}\n","import { render } from \"./DetailsRow.vue?vue&type=template&id=0948d347&scoped=true&ts=true\"\nimport script from \"./DetailsRow.vue?vue&type=script&lang=ts\"\nexport * from \"./DetailsRow.vue?vue&type=script&lang=ts\"\n\nimport \"./DetailsRow.vue?vue&type=style&index=0&id=0948d347&scoped=true&lang=css\"\n\nimport exportComponent from \"C:\\\\GIT\\\\StudentPortal\\\\student-portal-web\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-0948d347\"]])\n\nexport default __exports__"],"sourceRoot":""}