{"version":3,"sources":["webpack:///./src/views/pages/app/memberData/memberDataEndMembership.vue?625b","webpack:///./src/services/generated/types/model/resource/CancelMembershipRequestModel.ts","webpack:///./src/services/viewModel/resource/CancelMembershipRequestViewModel.ts","webpack:///./src/views/pages/app/memberData/memberDataEndMembership.vue?a66c","webpack:///./src/views/pages/app/memberData/memberDataEndMembership.vue?e11c","webpack:///./src/views/pages/app/memberData/memberDataEndMembership.vue","webpack:///./node_modules/@glittr/frontend-core/src/plugins/validation/queryBuilder.ts"],"names":["render","_vm","this","_h","$createElement","_c","_self","attrs","cancelMembershipReq","staticClass","_v","_s","$t","specifiedCancellationDate","yearList","model","value","callback","$$v","$set","expression","reasonType","_e","membershipHasBeenCancelled","errorResponse","isSaving","on","$event","navigateBackToOverview","cancelMembership","staticRenderFns","getObjectModel","dto","RequestSummaryResourceViewModel","setObjectModel","cancellationDate","anotherReason","comment","transformFromQuery","queries","Number","parseFloat","isNaN","undefined","schema","queryBuilder","properties","required","allOf","if","thenRequired","transformToDTO","summary","getDTO","transformFromDTO","$tEnum","fromDTO","sections","title","items","utils","insertIf","label","displayValue","$format","localDate","reasonDisplay","extend","auth","data","id","caption","computed","tenant","$route","params","workspace","mounted","currentYear","$date","now","year","timeForCancellation","Date","format","loadListOfYears","methods","list","push","$router","validate","$service","api","memberships","cancelMyMembership","component","deepSetProperty","property","setRequired","propertyPath","split","currentNode","nodes","forEach","prop","i","type","lastNode","length","lastProp","constValues","propValues","propsRequired","Object","keys","key","const","ifNot","not","propNames","then","thenValue","elseRequired","else","elseValue","computedRequired","computedProps","filteredValue","sameAs","isObject","pattern","$validation","REF_PREFIX","nestedProps"],"mappings":"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","file":"js/chunk-7d543c3b.79efb27f.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p-container',[_c('p-form',{attrs:{\"model\":_vm.cancelMembershipReq}},[_c('p-row',[_c('p-col',{attrs:{\"xs12\":\"\",\"md9\":\"\",\"lg6\":\"\",\"xl5\":\"\"}},[_c('h3',{staticClass:\"mb-4\"},[_vm._v(\" \"+_vm._s(_vm.$t('page.memberData.title.endMembership'))+\" \")]),_c('p-alert',{staticClass:\"mb-3\",attrs:{\"value\":true,\"type\":\"info\"}},[_vm._v(\" \"+_vm._s(_vm.$t('page.memberData.alert.accordingTo'))+\" \"),_c('a',{attrs:{\"href\":_vm.$t('link.linkToStatutenPDF'),\"target\":\"_blank\"}},[_vm._v(_vm._s(_vm.$t('page.memberData.text.statuten')))]),_vm._v(\" \"+_vm._s(_vm.$t('page.memberData.alert.informationAboutStatuten'))+\" \")]),_c('p-year-select',{staticClass:\"ix-5\",attrs:{\"earliest-year\":_vm.specifiedCancellationDate,\"label\":_vm.$t('page.memberData.label.terminationDate'),\"custom-list-of-years\":_vm.yearList},model:{value:(_vm.cancelMembershipReq.cancellationDate),callback:function ($$v) {_vm.$set(_vm.cancelMembershipReq, \"cancellationDate\", $$v)},expression:\"cancelMembershipReq.cancellationDate\"}}),_c('p-select',{attrs:{\"items\":_vm.reasonType,\"label\":_vm.$t('page.memberData.label.reason'),\"required\":\"\"},model:{value:(_vm.cancelMembershipReq.reasonType),callback:function ($$v) {_vm.$set(_vm.cancelMembershipReq, \"reasonType\", $$v)},expression:\"cancelMembershipReq.reasonType\"}}),(_vm.cancelMembershipReq.reasonType === 2)?_c('p-text-field',{attrs:{\"label\":_vm.$t('page.memberData.label.otherReason')},model:{value:(_vm.cancelMembershipReq.anotherReason),callback:function ($$v) {_vm.$set(_vm.cancelMembershipReq, \"anotherReason\", $$v)},expression:\"cancelMembershipReq.anotherReason\"}}):_vm._e(),_c('p-textarea',{staticClass:\"mb-3\",attrs:{\"label\":_vm.$t('page.memberData.label.comment')},model:{value:(_vm.cancelMembershipReq.comment),callback:function ($$v) {_vm.$set(_vm.cancelMembershipReq, \"comment\", $$v)},expression:\"cancelMembershipReq.comment\"}}),_c('p-divider',{staticClass:\"mb-2\"}),_c('p-alert',{attrs:{\"value\":_vm.membershipHasBeenCancelled,\"type\":\"success\",\"dismissable\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.$t('page.memberData.alert.membershipWasCancelled'))+\" \")]),_c('p-request-alert',{model:{value:(_vm.errorResponse),callback:function ($$v) {_vm.errorResponse=$$v},expression:\"errorResponse\"}}),_c('p-row',[_c('p-button',{attrs:{\"secondary\":\"\",\"loading\":_vm.isSaving,\"disabled\":_vm.isSaving},on:{\"click\":function($event){return _vm.navigateBackToOverview()}}},[_vm._v(\" \"+_vm._s(_vm.$t('app.toTheOverview'))+\" \")]),_c('p-button',{attrs:{\"primary\":\"\",\"loading\":_vm.isSaving,\"disabled\":_vm.isSaving},on:{\"click\":function($event){return _vm.cancelMembership()}}},[_vm._v(\" \"+_vm._s(_vm.$t('app.send'))+\" \")])],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","// ╭────────────────────────────────────────────────────────────────────────────────────╮\r\n// ┊ This file was automatically generated\r\n// ┊ Please do not modify manually\r\n// ┊ ©gl it 2022 - http://www.gl-it.ch\r\n// ╰────────────────────────────────────────────────────────────────────────────────────╯\r\n\r\nimport BaseModel from '@glittr/frontend-core/src/plugins/servicelayer/serviceTypes/baseModel';\r\nimport RequestSummaryResourceViewModel from '../../../../viewModel/resource/RequestSummaryResourceViewModel';\r\nimport CancelMembershipRequestDTO from '../../dto/resource/CancelMembershipRequestDTO';\r\n\r\nexport default abstract class CancelMembershipRequestModel extends BaseModel {\r\n /**\r\n */\r\n get summary() { return this.getObjectModel(() => this.dto.summary, RequestSummaryResourceViewModel)!; }\r\n set summary(value) { this.setObjectModel(() => this.dto.summary, value); }\r\n /**\r\n * @type {date-time}\r\n */\r\n get cancellationDate() { return this.dto.cancellationDate; }\r\n set cancellationDate(value) { this.dto.cancellationDate = value; }\r\n /**\r\n * @type {int32}\r\n */\r\n get reasonType() { return this.dto.reasonType; }\r\n set reasonType(value) { this.dto.reasonType = value; }\r\n /**\r\n */\r\n get anotherReason() { return this.dto.anotherReason; }\r\n set anotherReason(value) { this.dto.anotherReason = value; }\r\n /**\r\n */\r\n get comment() { return this.dto.comment; }\r\n set comment(value) { this.dto.comment = value; }\r\n\r\n protected transformFromQuery(queries: Record): void {\r\n let value: any;\r\n this.dto.cancellationDate = queries.cancellationDate;\r\n value = Number.parseFloat(queries.reasonType);\r\n value = Number.isNaN(value) ? undefined : value;\r\n this.dto.reasonType = value;\r\n this.dto.anotherReason = queries.anotherReason;\r\n this.dto.comment = queries.comment;\r\n }\r\n}\r\n","import { IJSONSchema } from '@glittr/frontend-core/src/plugins/validation/IJSONSchema';\r\nimport queryBuilder from '@glittr/frontend-core/src/plugins/validation/queryBuilder';\r\nimport Vue from 'vue';\r\nimport CancelMembershipRequestModel from '../../generated/types/model/resource/CancelMembershipRequestModel';\r\nimport utils from '../utils';\r\nimport RequestSummaryResourceViewModel from './RequestSummaryResourceViewModel';\r\n\r\nexport default class CancelMembershipRequestViewModel extends CancelMembershipRequestModel {\r\n protected transformToDTO() {\r\n this.dto.summary = this.summary.getDTO();\r\n }\r\n protected transformFromDTO() {}\r\n\r\n schema: IJSONSchema = {\r\n ...queryBuilder.properties({\r\n cancellationDate: { required: true },\r\n reasonType: { required: true },\r\n }),\r\n allOf: [\r\n {\r\n ...queryBuilder.if({ reasonType: 2 }),\r\n ...queryBuilder.thenRequired([\r\n 'anotherReason',\r\n ]),\r\n },\r\n ],\r\n };\r\n\r\n get reasonDisplay() { return Vue.$tEnum('page.memberData.label.reasonEnum', this.reasonType!); }\r\n\r\n get summary(): RequestSummaryResourceViewModel {\r\n return new RequestSummaryResourceViewModel().fromDTO({\r\n sections: [\r\n {\r\n title: Vue.$t('page.memberData.title.endMembership'),\r\n items: [\r\n {\r\n ...utils.insertIf(!!this.cancellationDate, {\r\n label: Vue.$t('page.memberData.label.terminationDate'),\r\n displayValue: Vue.$format.localDate(this.cancellationDate!),\r\n }),\r\n },\r\n {\r\n ...utils.insertIf(!!this.reasonType || this.reasonType === 0, {\r\n label: Vue.$t('page.memberData.label.reason'),\r\n displayValue: this.reasonDisplay,\r\n }),\r\n },\r\n {\r\n ...utils.insertIf(!!this.anotherReason, {\r\n label: Vue.$t('page.memberData.label.otherReason'),\r\n displayValue: this.anotherReason,\r\n }),\r\n },\r\n {\r\n ...utils.insertIf(!!this.comment, {\r\n label: Vue.$t('page.memberData.label.comment'),\r\n displayValue: this.comment,\r\n }),\r\n },\r\n ],\r\n },\r\n\r\n ],\r\n });\r\n }\r\n}\r\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport Vue from 'vue';\nimport CancelMembershipRequestViewModel from '@/src/services/viewModel/resource/CancelMembershipRequestViewModel';\n\nexport default Vue.extend({\n auth: true,\n data: () => ({\n yearList: undefined as any,\n isSaving: false,\n errorResponse: undefined as string | undefined,\n membershipHasBeenCancelled: false,\n cancelMembershipReq: new CancelMembershipRequestViewModel(),\n specifiedCancellationDate: undefined as number | undefined,\n reasonType: [\n { id: 0, caption: Vue.$tEnum('page.memberData.label.reasonEnum', 0) },\n { id: 1, caption: Vue.$tEnum('page.memberData.label.reasonEnum', 1) },\n { id: 2, caption: Vue.$tEnum('page.memberData.label.reasonEnum', 2) },\n ],\n }),\n computed: {\n tenant() {\n return this.$route.params.tenant;\n },\n workspace() {\n return this.$route.params.workspace;\n },\n },\n mounted() {\n const currentYear = this.$date.now().year();\n const timeForCancellation = this.$date(new Date(currentYear, 6, 30));\n if (this.$date.now() > timeForCancellation) {\n this.specifiedCancellationDate = currentYear + 1;\n } else {\n this.specifiedCancellationDate = currentYear;\n }\n this.cancelMembershipReq.cancellationDate = this.$date(new Date(this.specifiedCancellationDate, 11, 31)).format('YYYY-MM-DD');\n this.loadListOfYears();\n },\n methods: {\n loadListOfYears() {\n const list = [];\n for (let year = this.specifiedCancellationDate!; year < this.specifiedCancellationDate! + 100 + 1; year += 1) {\n list.push({ caption: this.$date(new Date(year, 11, 31)).format('DD.MM.YYYY'), id: this.$date(new Date(year, 11, 31)).format('YYYY-MM-DD') });\n }\n this.yearList = list;\n },\n navigateBackToOverview() {\n this.$router.push('/syna/memberPortal/member-data/member-data-change');\n },\n async cancelMembership() {\n if (!this.cancelMembershipReq.validate()) {\n return;\n }\n this.isSaving = true;\n this.membershipHasBeenCancelled = false;\n this.errorResponse = '';\n try {\n await this.$service.api.memberships.cancelMyMembership(this.cancelMembershipReq);\n this.membershipHasBeenCancelled = true;\n } catch (error: any) {\n this.errorResponse = error;\n }\n this.isSaving = false;\n },\n },\n});\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./memberDataEndMembership.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./memberDataEndMembership.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./memberDataEndMembership.vue?vue&type=template&id=fdca3c2a&\"\nimport script from \"./memberDataEndMembership.vue?vue&type=script&lang=ts&\"\nexport * from \"./memberDataEndMembership.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Vue from 'vue';\r\nimport _ from '../../utils';\r\nimport { IJSONSchema } from './IJSONSchema';\r\n\r\ntype PropertiesOptions = Omit & {\r\n required?: boolean,\r\n sameAs?: string\r\n properties?: Record,\r\n};\r\n\r\nconst queryBuilder = {\r\n deepSetProperty(schema: IJSONSchema, property: string, value: Record, setRequired: boolean = false) {\r\n const propertyPath = property.split('.');\r\n let currentNode = schema ?? {};\r\n const nodes = [] as IJSONSchema[];\r\n propertyPath.forEach((prop, i) => {\r\n currentNode.properties = currentNode.properties ?? {};\r\n currentNode.type = currentNode.type ?? 'object';\r\n currentNode.properties[prop] = currentNode.properties[prop] ?? {};\r\n nodes.push(currentNode);\r\n currentNode = currentNode.properties[prop] as IJSONSchema;\r\n });\r\n const lastNode = nodes[nodes.length - 1];\r\n const lastProp = propertyPath[propertyPath.length - 1];\r\n if (setRequired) {\r\n lastNode.required = [...(lastNode.required ?? []), lastProp];\r\n }\r\n if (value) {\r\n lastNode.properties![lastProp] = { ...lastNode.properties![lastProp] as {}, ...value };\r\n }\r\n },\r\n constValues(propValues: Record, propsRequired: boolean = false) {\r\n const schema: IJSONSchema = {};\r\n Object.keys(propValues).forEach((key) => {\r\n this.deepSetProperty(schema, key, { const: propValues[key] }, propsRequired);\r\n });\r\n return schema;\r\n },\r\n if(propValues: Record, propsRequired: boolean = true) {\r\n const properties = this.constValues(propValues, propsRequired);\r\n return { if: properties };\r\n },\r\n ifNot(propValues: Record, propsRequired: boolean = true) {\r\n const properties = this.constValues(propValues, propsRequired);\r\n return { if: { not: properties } };\r\n },\r\n thenRequired(propNames: string[]) {\r\n return { then: { required: propNames } };\r\n },\r\n thenValue(propValues: Record, propsRequired: boolean = false) {\r\n const properties = this.constValues(propValues, propsRequired);\r\n return { then: properties };\r\n },\r\n elseRequired(propNames: string[]) {\r\n return { else: { required: propNames } };\r\n },\r\n elseValue(propValues: Record, propsRequired: boolean = false) {\r\n const properties = this.constValues(propValues, propsRequired);\r\n return { else: properties };\r\n },\r\n\r\n properties(properties: Record) {\r\n const computedRequired = [] as string[];\r\n Object.keys(properties).forEach((key) => {\r\n if (properties[key].required) {\r\n computedRequired.push(key);\r\n }\r\n });\r\n const computedProps = {} as NonNullable;\r\n Object.keys(properties).forEach((key) => {\r\n if (properties[key].type === 'object') {\r\n const nestedProps = properties[key].properties;\r\n computedProps[key] = this.properties(nestedProps as Record);\r\n return;\r\n }\r\n const { required, ...filteredValue } = properties[key];\r\n // In nested cases this has already been converted above, so casting to any here\r\n computedProps[key] = filteredValue as any;\r\n if (filteredValue.sameAs && _.isObject(computedProps[key])) {\r\n (computedProps[key] as IJSONSchema).pattern = `${Vue.$validation.REF_PREFIX}${filteredValue.sameAs}`;\r\n }\r\n });\r\n return {\r\n type: 'object' as IJSONSchema['type'],\r\n required: computedRequired as IJSONSchema['required'],\r\n properties: computedProps as IJSONSchema['properties'],\r\n };\r\n },\r\n};\r\n\r\nexport default queryBuilder;\r\n"],"sourceRoot":""}