{"version":3,"file":"custom-courses.B4kJbkZT.js","sources":["../../../../../../node_modules/unfetch/dist/unfetch.module.js","../../../../../../node_modules/isomorphic-unfetch/browser.js","../../../../../../node_modules/@24hbs/utils/dist/baseSlug.model.abstract.js","../../../../../../node_modules/@24hbs/utils/dist/session/session.model.abstract.js","../../../../../../node_modules/@24hbs/utils/dist/session/sessionlight.model.js","../../../../../../node_modules/@24hbs/utils/dist/instructor/instructor.model.js","../../../../../../node_modules/@24hbs/utils/dist/partner/partner.model.js","../../../../../../node_modules/@24hbs/utils/dist/session/sessioncontact.model.js","../../../../../../node_modules/@24hbs/utils/dist/session/package.model.js","../../../../../../node_modules/@24hbs/utils/dist/session/option.model.js","../../../../../../node_modules/@24hbs/utils/dist/session/ambassador.model.js","../../../../../../node_modules/@24hbs/utils/dist/session/session.model.js","../../../../../../node_modules/@24hbs/utils/dist/course/course.model.js","../../../../../../node_modules/@24hbs/utils/dist/helpers/assets.js","../../../../../../node_modules/@24hbs/utils/dist/course/coursedb.js","../../../../../../node_modules/@24hbs/utils/dist/instructor/instructorsdb.js","../../../../../../node_modules/@24hbs/utils/dist/partner/partnersdb.js","../../../../../../node_modules/@24hbs/utils/dist/course/courselight.model.js","../../../../../../node_modules/@24hbs/utils/dist/review/review.model.js","../../../../../../node_modules/@24hbs/utils/dist/helpers/slug.js","../../../../../../node_modules/@24hbs/utils/dist/helpers/serialization.js","../../../../../../node_modules/@24hbs/utils/dist/helpers/encoder.js","../../../../../../node_modules/@24hbs/utils/dist/helpers/html.js","../../../../../../node_modules/@24hbs/utils/dist/index.js","../../../../../../src/lib/utils/custom-courses.ts"],"sourcesContent":["export default function(e,n){return n=n||{},new Promise(function(t,r){var s=new XMLHttpRequest,o=[],u=[],i={},a=function(){return{ok:2==(s.status/100|0),statusText:s.statusText,status:s.status,url:s.responseURL,text:function(){return Promise.resolve(s.responseText)},json:function(){return Promise.resolve(s.responseText).then(JSON.parse)},blob:function(){return Promise.resolve(new Blob([s.response]))},clone:a,headers:{keys:function(){return o},entries:function(){return u},get:function(e){return i[e.toLowerCase()]},has:function(e){return e.toLowerCase()in i}}}};for(var l in s.open(n.method||\"get\",e,!0),s.onload=function(){s.getAllResponseHeaders().replace(/^(.*?):[^\\S\\n]*([\\s\\S]*?)$/gm,function(e,n,t){o.push(n=n.toLowerCase()),u.push([n,t]),i[n]=i[n]?i[n]+\",\"+t:t}),t(a())},s.onerror=r,s.withCredentials=\"include\"==n.credentials,n.headers)s.setRequestHeader(l,n.headers[l]);s.send(n.body||null)})}\n//# sourceMappingURL=unfetch.module.js.map\n","module.exports = self.fetch || (self.fetch = require('unfetch').default || require('unfetch'));\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.BaseSlugModelAbstract = void 0;\nclass BaseSlugModelAbstract {\n constructor(model) {\n this.slug = \"\";\n this.model = model;\n }\n getSlug() {\n return this.slug;\n }\n}\nexports.BaseSlugModelAbstract = BaseSlugModelAbstract;\n//# sourceMappingURL=baseSlug.model.abstract.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SessionModelAbstract = void 0;\nconst baseSlug_model_abstract_1 = require(\"../baseSlug.model.abstract\");\nclass SessionModelAbstract extends baseSlug_model_abstract_1.BaseSlugModelAbstract {\n constructor(model) {\n super(model);\n this.idSession = 0;\n this.category = \"\";\n this.categories = null;\n this.certification = \"\";\n this.internalProductCode = \"\";\n this.productCode = \"\";\n this.endDate = null;\n this.startDate = null;\n this.isMainSession = false;\n this.alternativeSessions = [];\n this.alternativeStartDates = [];\n this.duration = 0;\n this.durationType = \"\";\n this.discountPercent = 0;\n this.previewUrl = \"\";\n this.previewUrlAlt = \"\";\n this.price = null;\n this.discountPrice = null;\n this.priceNoVat = null;\n this.location = \"\";\n this.approved = false;\n this.courseTypeFull = \"\";\n this.planType = \"\";\n this.title = \"\";\n this.onSale = false;\n this.onSaleLabel = \"\";\n this.stage = false;\n this.placement = false;\n this.lastSeats = false;\n this.lessionMode = \"\";\n this.buyButtonAvailable = false;\n this.soldOut = false;\n this.admissionForm = false;\n this.durationSlug = '';\n this.lessionModeSlug = '';\n this.promoDetailLabel = '';\n this.promoLabelStyle = '';\n this.tags = {};\n this.ranking = 0;\n this.credits_cfu = null;\n this.credits_cfp = null;\n this.admissionWithBuyAvailable = '';\n this.vatFree = false;\n this.certificationReleaseEntity = [];\n this.alwaysOn = false;\n this.lessonsAvailableImmediately = false;\n this.hasBonus = false;\n this.hasDiscount = false;\n this.urlCourse = null;\n this.hourDuration = null;\n }\n isEmpty() {\n return this.idSession == 0;\n }\n}\nexports.SessionModelAbstract = SessionModelAbstract;\n//# sourceMappingURL=session.model.abstract.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SessionLightModel = void 0;\nconst session_model_abstract_1 = require(\"./session.model.abstract\");\nclass SessionLightModel extends session_model_abstract_1.SessionModelAbstract {\n constructor(obj = null, deepClone = false, model = 'SessionLightModel') {\n super(model);\n if (obj != null) {\n this.clone(obj, deepClone);\n }\n }\n clone(obj, deep = false) {\n this.idSession = obj.idSession;\n this.category = obj.category;\n this.categories = obj.categories;\n this.certification = obj.certification;\n this.internalProductCode = obj.internalProductCode;\n this.productCode = obj.productCode;\n this.endDate = obj.endDate ? new Date(Date.parse(obj.endDate.toString())) : null;\n this.startDate = obj.startDate ? new Date(Date.parse(obj.startDate.toString())) : null;\n this.duration = obj.duration;\n this.durationType = obj.durationType;\n this.lessionMode = obj.lessionMode;\n this.discountPercent = obj.discountPercent;\n this.previewUrl = obj.previewUrl;\n this.previewUrlAlt = obj.previewUrlAlt;\n this.price = obj.price;\n this.discountPrice = obj.discountPrice;\n this.priceNoVat = obj.priceNoVat;\n this.onSale = obj.onSale;\n this.location = obj.location;\n this.approved = obj.approved;\n this.courseTypeFull = obj.courseTypeFull;\n this.planType = obj.planType;\n this.title = obj.title;\n this.slug = obj.slug;\n this.onSale = obj.onSale;\n this.onSaleLabel = obj.onSaleLabel;\n this.stage = obj.stage;\n this.placement = obj.placement;\n this.lastSeats = obj.lastSeats;\n this.lessionMode = obj.lessionMode;\n this.admissionForm = obj.admissionForm;\n ;\n this.soldOut = obj.soldOut;\n this.buyButtonAvailable = obj.buyButtonAvailable;\n this.durationSlug = obj.durationSlug;\n this.lessionModeSlug = obj.lessionModeSlug;\n this.promoDetailLabel = obj.promoDetailLabel;\n this.promoLabelStyle = obj.promoLabelStyle;\n this.isMainSession = obj.isMainSession;\n this.tags = Object.assign({}, obj.tags);\n this.ranking = obj.ranking;\n this.credits_cfu = obj.credits_cfu;\n this.credits_cfp = obj.credits_cfp;\n this.hourDuration = obj.hourDuration;\n if (deep) {\n obj.alternativeSessions.forEach(v => this.alternativeSessions.push(v));\n obj.alternativeStartDates.forEach(v => this.alternativeStartDates.push(v));\n }\n else {\n this.alternativeSessions = obj.alternativeSessions;\n this.alternativeStartDates = obj.alternativeStartDates;\n }\n this.admissionWithBuyAvailable = obj.admissionWithBuyAvailable;\n this.vatFree = obj.vatFree;\n this.certificationReleaseEntity = obj.certificationReleaseEntity.length > 0 ? [...obj.certificationReleaseEntity] : [];\n this.alwaysOn = obj.lessonsAvailableImmediately;\n this.lessonsAvailableImmediately = obj.lessonsAvailableImmediately;\n this.hasBonus = obj.hasBonus;\n this.hasDiscount = obj.hasDiscount;\n this.urlCourse = obj.urlCourse;\n }\n static fromJSON(d) {\n const sessionInstance = Object.assign(new SessionLightModel(), typeof d === 'string' ? JSON.parse(d) : d);\n return new SessionLightModel(sessionInstance);\n }\n}\nexports.SessionLightModel = SessionLightModel;\n//# sourceMappingURL=sessionlight.model.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.InstructorModel = void 0;\nconst baseSlug_model_abstract_1 = require(\"../baseSlug.model.abstract\");\nconst sessionlight_model_1 = require(\"../session/sessionlight.model\");\nclass InstructorModel extends baseSlug_model_abstract_1.BaseSlugModelAbstract {\n constructor(obj = null, deepClone = false) {\n super(\"InstructorModel\");\n this.idInstructor = 0;\n this.name = \"\";\n this.surname = \"\";\n this.slug = \"\";\n this.jobTitle = null;\n this.company = null;\n this.description = null;\n this.deleted = true;\n this.updatedAt = null;\n this.imageUrl = null;\n this.sessionInstructor = [];\n if (obj != null) {\n this.clone(obj, deepClone);\n }\n }\n clone(obj, deep = false) {\n this.idInstructor = obj.idInstructor;\n this.name = obj.name;\n this.surname = obj.surname;\n this.imageUrl = obj.imageUrl;\n this.slug = obj.slug;\n this.jobTitle = obj.jobTitle;\n this.company = obj.company;\n this.description = obj.description;\n this.deleted = obj.deleted;\n this.updatedAt = obj.updatedAt;\n if (deep) {\n obj.sessionInstructor.forEach(v => this.sessionInstructor.push(new sessionlight_model_1.SessionLightModel(v, false)));\n }\n else {\n this.sessionInstructor = obj.sessionInstructor;\n }\n }\n isEmpty() {\n return this.idInstructor == 0;\n }\n static fromJSON(d) {\n const model = Object.assign(new InstructorModel(), typeof d === 'string' ? JSON.parse(d) : d);\n return new InstructorModel(model);\n }\n}\nexports.InstructorModel = InstructorModel;\n//# sourceMappingURL=instructor.model.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PartnerModel = exports.PartnerType = void 0;\nconst baseSlug_model_abstract_1 = require(\"../baseSlug.model.abstract\");\nconst sessionlight_model_1 = require(\"../session/sessionlight.model\");\nvar PartnerType;\n(function (PartnerType) {\n PartnerType[PartnerType[\"Collaboration\"] = 0] = \"Collaboration\";\n PartnerType[PartnerType[\"Partner\"] = 1] = \"Partner\";\n})(PartnerType = exports.PartnerType || (exports.PartnerType = {}));\n;\nclass PartnerModel extends baseSlug_model_abstract_1.BaseSlugModelAbstract {\n constructor(obj = null, deepClone = false) {\n super(\"PartnerModel\");\n this.idPartner = 0;\n this.name = \"\";\n this.slug = \"\";\n this.position = 0;\n this.type = PartnerType.Collaboration;\n this.imageUrl = null;\n this.partnerUrl = null;\n this.deleted = true;\n this.sessionContributor = [];\n this.sessionCollaboration = [];\n if (obj != null) {\n this.clone(obj, deepClone);\n }\n }\n clone(obj, deep) {\n this.idPartner = obj.idPartner;\n this.name = obj.name;\n this.slug = obj.slug;\n this.position = obj.position;\n this.type = obj.type;\n this.imageUrl = obj.imageUrl;\n this.partnerUrl = obj.partnerUrl;\n this.deleted = obj.deleted;\n if (deep) {\n obj.sessionContributor.forEach(v => this.sessionContributor.push(new sessionlight_model_1.SessionLightModel(v)));\n obj.sessionCollaboration.forEach(v => this.sessionCollaboration.push(new sessionlight_model_1.SessionLightModel(v)));\n }\n else {\n this.sessionContributor = obj.sessionContributor;\n this.sessionCollaboration = obj.sessionCollaboration;\n }\n }\n isEmpty() {\n return this.idPartner == 0;\n }\n static fromJSON(d) {\n const model = Object.assign(new PartnerModel(), typeof d === 'string' ? JSON.parse(d) : d);\n return new PartnerModel(model);\n }\n}\nexports.PartnerModel = PartnerModel;\n//# sourceMappingURL=partner.model.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SessioncontactModel = void 0;\nclass SessioncontactModel {\n constructor(obj = null) {\n this.model = \"SessioncontactModel\";\n this.editorialContact = \"\";\n this.editorialEmail = \"\";\n this.editorialPhone = \"\";\n this.marketingContact = \"\";\n this.marketingEmail = \"\";\n this.marketingPhone = \"\";\n this.customercareContact = \"\";\n this.customercareEmail = \"\";\n this.customercarePhone = \"\";\n if (obj != null) {\n this.clone(obj);\n }\n }\n clone(obj) {\n this.editorialContact = obj.editorialContact;\n this.editorialEmail = obj.editorialEmail;\n this.editorialPhone = obj.editorialPhone;\n this.marketingContact = obj.marketingContact;\n this.marketingEmail = obj.marketingEmail;\n this.marketingPhone = obj.marketingPhone;\n this.customercareContact = obj.customercareContact;\n this.customercareEmail = obj.customercareEmail;\n this.customercarePhone = obj.customercarePhone;\n }\n static fromJson(d) {\n const sessionContactInstance = Object.assign(new SessioncontactModel(), typeof d === 'string' ? JSON.parse(d) : d);\n return sessionContactInstance;\n }\n}\nexports.SessioncontactModel = SessioncontactModel;\n//# sourceMappingURL=sessioncontact.model.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PackageModel = void 0;\nclass PackageModel {\n constructor(packageData = null, deepClone = true) {\n this.idPackage = \"\";\n this.title = \"\";\n this.priceNoVat = 0;\n this.soldOut = false;\n this.options = {};\n this.hasBonus = false;\n this.hasDiscount = false;\n if (packageData != null) {\n this.clone(packageData, deepClone);\n }\n }\n clone(obj, deep = false) {\n if (obj != null && typeof obj === 'object') {\n this.idPackage = obj.idPackage;\n this.title = obj.title;\n this.priceNoVat = obj.priceNoVat;\n this.discountPrice = obj.discountPrice;\n this.soldOut = obj.soldOut;\n this.options = deep ? Object.assign({}, obj.options) : obj.options;\n this.hasBonus = obj.hasBonus;\n this.hasDiscount = obj.hasDiscount;\n }\n }\n static fromJSON(d) {\n const instance = Object.assign(new PackageModel(), typeof d === 'string' ? JSON.parse(d) : d);\n return new PackageModel(instance);\n }\n}\nexports.PackageModel = PackageModel;\n//# sourceMappingURL=package.model.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.OptionModel = exports.OptionTypeModel = void 0;\nclass OptionTypeModel {\n constructor(obj = null, deepClone = true) {\n this.title = \"\";\n this.mandatory = false;\n this.basic = false;\n this.exclusive = false;\n this.subscription = false;\n this.sort = 0;\n this.singleOption = false;\n if (obj != null) {\n this.clone(obj, deepClone);\n }\n }\n clone(obj, _deep = false) {\n if (obj != null && typeof obj === 'object') {\n this.title = obj.title;\n this.group = obj.group;\n this.mandatory = obj.mandatory;\n this.basic = obj.basic;\n this.exclusive = obj.exclusive;\n this.subscription = obj.subscription;\n this.channel = obj.channel;\n this.sort = obj.sort;\n this.singleOption = obj.singleOption;\n }\n }\n}\nexports.OptionTypeModel = OptionTypeModel;\nclass OptionModel {\n constructor(obj = null, deepClone = true) {\n this.idOption = \"\";\n this.title = \"\";\n this.type = new OptionTypeModel();\n this.description = \"\";\n this.priceNoVat = 0;\n this.soldOut = false;\n if (obj != null) {\n this.clone(obj, deepClone);\n }\n }\n clone(obj, deep = false) {\n if (obj != null && typeof obj === 'object') {\n this.idOption = obj.idOption;\n this.type = deep ? new OptionTypeModel(obj.type, true) : new OptionTypeModel(obj.type, false);\n this.title = obj.title;\n this.description = obj.description;\n this.idCorsoDocebo = obj.idCorsoDocebo;\n this.priceNoVat = obj.priceNoVat;\n this.discountPrice = obj.discountPrice;\n this.soldOut = obj.soldOut;\n }\n }\n static fromJSON(d) {\n const instance = Object.assign(new OptionModel(), typeof d === 'string' ? JSON.parse(d) : d);\n return new OptionModel(instance);\n }\n}\nexports.OptionModel = OptionModel;\n//# sourceMappingURL=option.model.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.AmbassadorModel = void 0;\nclass AmbassadorModel {\n constructor(obj = null) {\n this.model = \"AmbassadorModel\";\n if (obj != null) {\n this.clone(obj);\n }\n }\n clone(obj) {\n if (obj != null && typeof obj === 'object') {\n this.name = obj.name ? obj.name : null;\n this.lastname = obj.lastname ? obj.lastname : null;\n this.title = obj.title ? obj.title : null;\n this.testimony = obj.testimony ? obj.testimony : null;\n this.image = obj.image ? obj.image : null;\n }\n }\n static fromJson(d) {\n const instance = Object.assign(new AmbassadorModel(), typeof d === 'string' ? JSON.parse(d) : d);\n return new AmbassadorModel(instance);\n }\n}\nexports.AmbassadorModel = AmbassadorModel;\n//# sourceMappingURL=ambassador.model.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SessionModel = void 0;\nconst instructor_model_1 = require(\"../instructor/instructor.model\");\nconst partner_model_1 = require(\"../partner/partner.model\");\nconst sessioncontact_model_1 = require(\"./sessioncontact.model\");\nconst sessionlight_model_1 = require(\"./sessionlight.model\");\nconst package_model_1 = require(\"./package.model\");\nconst option_model_1 = require(\"./option.model\");\nconst ambassador_model_1 = require(\"./ambassador.model\");\nclass SessionModel extends sessionlight_model_1.SessionLightModel {\n constructor(sessionData = null, deepClone = true) {\n super(null, false, 'SessionModel');\n this.bannerUrl = \"\";\n this.bannerUrlAlt = \"\";\n this.scholarship = false;\n this.brochureAvailable = false;\n this.brochureBooking = false;\n this.brochureUrl = \"\";\n this.onSaleDetail = \"\";\n this.audienceContent = \"\";\n this.durationDetail = \"\";\n this.creditDetail = \"\";\n this.courseType = \"\";\n this.admissionDetail = \"\";\n this.paymentDetail = \"\";\n this.courseSubType = \"\";\n this.subtitle = \"\";\n this.relatedSessionRef = [];\n this.relatedSession = [];\n this.linkedInstructors = [];\n this.instructors = [];\n this.sponsorContributor = [];\n this.contributorPartners = [];\n this.sponsorCollaboration = [];\n this.collaborationPartners = [];\n this.sessionContacts = new sessioncontact_model_1.SessioncontactModel();\n this.competencies = \"\";\n this.whoyouwill = \"\";\n this.reasonwhy = \"\";\n this.lessionTimeDetail = \"\";\n this.certificationIntro = \"\";\n this.modulesList = [];\n this.certificationList = [];\n this.updatedAt = null;\n this.adv = [];\n this.assets = [];\n this.tags = {};\n this.ranking = 0;\n this.options = [];\n this.packages = [];\n this.regionAccreditation = \"\";\n this.idCourseForAccreditation = \"\";\n this.ambassador = null;\n if (sessionData != null) {\n this.clone(sessionData, deepClone);\n }\n }\n clone(obj, deep = false) {\n super.clone(obj, deep);\n if (obj != null && typeof obj === 'object') {\n this.bannerUrl = obj.bannerUrl;\n this.bannerUrlAlt = obj.bannerUrlAlt;\n this.scholarship = obj.scholarship;\n this.brochureAvailable = obj.brochureAvailable;\n this.brochureBooking = obj.brochureBooking;\n this.brochureUrl = obj.brochureUrl;\n this.onSaleDetail = obj.onSaleDetail;\n this.audienceContent = obj.audienceContent;\n this.durationDetail = obj.durationDetail;\n this.creditDetail = obj.creditDetail;\n this.courseType = obj.courseType;\n this.admissionDetail = obj.admissionDetail;\n this.paymentDetail = obj.paymentDetail;\n this.discountPercent = obj.discountPercent;\n this.courseSubType = obj.courseSubType;\n this.subtitle = obj.subtitle;\n ;\n this.relatedSessionRef = obj.relatedSessionRef && obj.relatedSessionRef.length > 0 ? [...obj.relatedSessionRef] : [];\n this.linkedInstructors = obj.linkedInstructors && obj.linkedInstructors.length > 0 ? [...obj.linkedInstructors] : [];\n this.sponsorContributor = obj.sponsorContributor && obj.sponsorContributor.length > 0 ? [...obj.sponsorContributor] : [];\n this.sponsorCollaboration = obj.sponsorCollaboration && obj.sponsorCollaboration.length > 0 ? [...obj.sponsorCollaboration] : [];\n if (deep) {\n obj.relatedSession.forEach(v => this.relatedSession.push(new sessionlight_model_1.SessionLightModel(v, false)));\n obj.collaborationPartners.forEach(v => this.collaborationPartners.push(new partner_model_1.PartnerModel(v, false)));\n obj.contributorPartners.forEach(v => this.contributorPartners.push(new partner_model_1.PartnerModel(v, false)));\n obj.instructors.forEach(v => this.instructors.push(new instructor_model_1.InstructorModel(v, false)));\n this.sessionContacts = new sessioncontact_model_1.SessioncontactModel(obj.sessionContacts);\n obj.options.forEach(v => this.options.push(new option_model_1.OptionModel(v, false)));\n obj.packages.forEach(v => this.packages.push(new package_model_1.PackageModel(v, false)));\n this.ambassador = obj.ambassador ? new ambassador_model_1.AmbassadorModel(obj.ambassador) : null;\n }\n else {\n this.relatedSession = obj.relatedSession;\n this.collaborationPartners = obj.collaborationPartners;\n this.contributorPartners = obj.contributorPartners;\n this.instructors = obj.instructors;\n this.sessionContacts = obj.sessionContacts;\n this.options = obj.options;\n this.packages = obj.packages;\n this.ambassador = obj.ambassador ? obj.ambassador : null;\n }\n this.competencies = obj.competencies;\n this.whoyouwill = obj.whoyouwill;\n this.reasonwhy = obj.reasonwhy;\n this.lessionTimeDetail = obj.lessionTimeDetail;\n this.modulesList = obj.modulesList;\n this.certificationList = obj.certificationList;\n this.updatedAt = obj.updatedAt;\n this.adv = obj.adv;\n this.assets = obj.assets;\n this.tags = Object.assign({}, obj.tags);\n this.ranking = obj.ranking;\n this.admissionWithBuyAvailable = obj.admissionWithBuyAvailable;\n this.vatFree = obj.vatFree;\n this.certificationReleaseEntity = obj.certificationReleaseEntity.length > 0 ? [...obj.certificationReleaseEntity] : [];\n this.regionAccreditation = obj.regionAccreditation;\n this.idCourseForAccreditation = obj.idCourseForAccreditation;\n }\n }\n static fromJSON(d) {\n const instance = Object.assign(new SessionModel(), typeof d === 'string' ? JSON.parse(d) : d);\n return new SessionModel(instance);\n }\n}\nexports.SessionModel = SessionModel;\n//# sourceMappingURL=session.model.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.CourseModel = void 0;\nconst session_model_1 = require(\"../session/session.model\");\nconst instructor_model_1 = require(\"../instructor/instructor.model\");\nconst partner_model_1 = require(\"../partner/partner.model\");\nconst baseSlug_model_abstract_1 = require(\"../baseSlug.model.abstract\");\nclass CourseModel extends baseSlug_model_abstract_1.BaseSlugModelAbstract {\n constructor(course = null) {\n super('CourseModel');\n this.sessions = {};\n this.instructors = [];\n this.contributorPartners = [];\n this.collaborationPartners = [];\n this.tags = {};\n this.ranking = 0;\n this.idCourse = 0;\n this.category = \"\";\n this.bannerUrl = \"\";\n this.bannerUrlAlt = \"\";\n this.firstEndDate = null;\n this.firstStartDate = null;\n this.duration = 0;\n this.durationType = \"\";\n this.courseType = \"\";\n this.discountPercent = 0;\n this.previewUrl = \"\";\n this.previewUrlAlt = \"\";\n this.price = null;\n this.discountPrice = null;\n this.onSale = false;\n this.location = \"\";\n this.subtitle = \"\";\n this.courseTypeFull = \"\";\n this.title = \"\";\n this.slug = \"\";\n this.updatedAt = null;\n this.idMainSession = -1;\n this.tags = {};\n this.ranking = 0;\n this.instructors = [];\n this.contributorPartners = [];\n this.collaborationPartners = [];\n if (course !== null) {\n for (let session of Object.values(course.sessions)) {\n this.addSession(session);\n }\n }\n }\n getMainSession() {\n if (this.idMainSession == -1) {\n return null;\n }\n else if (this.sessions[this.idMainSession]) {\n return this.sessions[this.idMainSession];\n }\n return null;\n }\n getPrice() {\n if (this.idMainSession == -1) {\n return null;\n }\n else if (this.sessions[this.idMainSession]) {\n return this.sessions[this.idMainSession];\n }\n return null;\n }\n setDataFromSession(session) {\n this.category = session.category;\n this.bannerUrl = session.bannerUrl;\n this.bannerUrlAlt = session.bannerUrlAlt;\n this.firstEndDate = session.endDate;\n this.firstStartDate = session.startDate;\n this.duration = session.duration;\n this.durationType = session.durationType;\n this.courseType = session.courseType;\n this.discountPercent = session.discountPercent;\n this.previewUrl = session.previewUrl;\n this.previewUrlAlt = session.previewUrlAlt;\n this.price = session.price;\n this.discountPrice = session.discountPrice;\n this.onSale = session.onSale;\n this.location = session.location;\n this.subtitle = session.subtitle;\n this.courseTypeFull = session.courseTypeFull;\n this.title = session.title;\n this.slug = session.slug;\n this.tags = session.tags;\n this.ranking = session.ranking;\n }\n addSession(session) {\n if (!session || session === null) {\n return false;\n }\n if (this.slug == \"\" || !this.sessions[this.idMainSession] || typeof this.sessions[this.idMainSession] === 'undefined' || this.idMainSession == -1 || session.isMainSession === true) {\n this.setDataFromSession(session);\n this.idMainSession = session.idSession;\n }\n else {\n if (session.isMainSession === false && session.startDate != null && this.idMainSession != -1 && this.sessions[this.idMainSession].startDate) {\n const today = new Date();\n const oldStart = this.sessions[this.idMainSession].startDate;\n const newStart = session.startDate;\n if (!oldStart ||\n (oldStart.getTime() - today.getTime() < 0 ||\n (newStart.getTime() - today.getTime() > 0 &&\n newStart.getTime() - today.getTime() < oldStart.getTime() - today.getTime()))) {\n this.setDataFromSession(session);\n this.idMainSession = session.idSession;\n }\n }\n else if (session.idSession > this.idMainSession) {\n this.setDataFromSession(session);\n this.idMainSession = session.idSession;\n }\n }\n this.pushSession(session);\n if (session.instructors && session.instructors.length > 0) {\n for (let newInstructor of session.instructors) {\n if (!this.instructors.find(item => item.idInstructor === newInstructor.idInstructor)) {\n this.instructors.push(new instructor_model_1.InstructorModel(newInstructor));\n }\n }\n }\n if (session.contributorPartners && session.contributorPartners.length > 0) {\n for (let newPartner of session.contributorPartners) {\n if (!this.contributorPartners.find(item => item.idPartner === newPartner.idPartner)) {\n this.contributorPartners.push(new partner_model_1.PartnerModel(newPartner));\n }\n }\n }\n if (session.collaborationPartners && session.collaborationPartners.length > 0) {\n for (let newPartner of session.collaborationPartners) {\n if (!this.collaborationPartners.find(item => item.idPartner === newPartner.idPartner)) {\n this.collaborationPartners.push(new partner_model_1.PartnerModel(newPartner));\n }\n }\n }\n try {\n if (this.updatedAt === null && session.updatedAt != null) {\n this.updatedAt = session.updatedAt;\n }\n else if (this.updatedAt != null && session.updatedAt != null && session.updatedAt.getTime && this.updatedAt.getTime && session.updatedAt.getTime() > this.updatedAt.getTime()) {\n this.updatedAt = session.updatedAt;\n }\n }\n catch (e) {\n this.updatedAt = new Date();\n }\n return true;\n }\n pushSession(session) {\n this.sessions[session.idSession] = session;\n }\n static fromJSON(d) {\n const courseInstance = Object.assign(new CourseModel(), typeof d === 'string' ? JSON.parse(d) : d);\n if (courseInstance.sessions) {\n const courseSessionCopy = Array.from(Object.values(courseInstance.sessions));\n courseInstance.sessions = {};\n for (const sessionSerialized of courseSessionCopy) {\n const session = session_model_1.SessionModel.fromJSON(sessionSerialized);\n courseInstance.addSession(session);\n }\n }\n if (courseInstance.instructors) {\n const instructorsCopy = Array.from(Object.values(courseInstance.instructors));\n courseInstance.instructors = [];\n for (const instructorSerialized of instructorsCopy) {\n const instructor = instructor_model_1.InstructorModel.fromJSON(instructorSerialized);\n courseInstance.instructors.push(instructor);\n }\n }\n if (courseInstance.contributorPartners) {\n const contributorPartnersCopy = Array.from(Object.values(courseInstance.contributorPartners));\n courseInstance.contributorPartners = [];\n for (const partnerSerialized of contributorPartnersCopy) {\n const partner = partner_model_1.PartnerModel.fromJSON(partnerSerialized);\n courseInstance.contributorPartners.push(partner);\n }\n }\n if (courseInstance.collaborationPartners) {\n const collaborationPartnersCopy = Array.from(Object.values(courseInstance.collaborationPartners));\n courseInstance.collaborationPartners = [];\n for (const partnerSerialized of collaborationPartnersCopy) {\n const partner = partner_model_1.PartnerModel.fromJSON(partnerSerialized);\n courseInstance.collaborationPartners.push(partner);\n }\n }\n return courseInstance;\n }\n}\nexports.CourseModel = CourseModel;\n//# sourceMappingURL=course.model.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.configurePartnerAssets = exports.configureInstructorAssets = exports.configureSessionLightAssets = exports.configureSessionAssets = exports.configureCourseLightAssets = exports.configureCourseAssets = exports.configureURL = void 0;\nfunction configureURL(baseUrl = '', dbUrl = '', forceToWebp = false) {\n const schemeRegex = /^[a-z0-9]+:\\/\\//i;\n function appendExtension(str, extension) {\n const extensionRegex = /.(jpg|jpeg|png|gif)$/;\n if (extensionRegex.test(str)) {\n return str + extension;\n }\n return str;\n }\n const isFull = schemeRegex.test(dbUrl);\n let url = dbUrl;\n if ((isFull && !baseUrl) || (!isFull && !baseUrl)) {\n url = dbUrl;\n }\n else if (isFull && baseUrl) {\n const finalUrl = new URL(baseUrl);\n finalUrl.pathname = new URL(dbUrl).pathname;\n url = finalUrl.toString();\n }\n else if (!isFull && baseUrl) {\n const finalUrl = new URL(baseUrl);\n finalUrl.pathname = dbUrl;\n url = finalUrl.toString();\n }\n if (forceToWebp) {\n return appendExtension(url, '.webp');\n }\n return url;\n}\nexports.configureURL = configureURL;\nfunction configureCourseAssets(course, assetsConfig = null) {\n if (!assetsConfig || !course) {\n return course;\n }\n course.previewUrl = configureURL(assetsConfig.staticAssetsBaseUrl, course.previewUrl, assetsConfig.forceToWebp);\n course.bannerUrl = configureURL(assetsConfig.staticAssetsBaseUrl, course.bannerUrl, assetsConfig.forceToWebp);\n const sessions = {};\n Object.keys(course.sessions).forEach((sessionId) => {\n sessions[sessionId] = configureSessionAssets(course.sessions[sessionId], assetsConfig);\n });\n course.instructors = course.instructors.map((instructor) => configureInstructorAssets(instructor, assetsConfig));\n course.contributorPartners = course.contributorPartners.map((partner) => configurePartnerAssets(partner, assetsConfig));\n course.collaborationPartners = course.collaborationPartners.map((partner) => configurePartnerAssets(partner, assetsConfig));\n return course;\n}\nexports.configureCourseAssets = configureCourseAssets;\nfunction configureCourseLightAssets(course, assetsConfig = null) {\n if (!assetsConfig || !course) {\n return course;\n }\n course.previewUrl = configureURL(assetsConfig.staticAssetsBaseUrl, course.previewUrl, assetsConfig.forceToWebp);\n const sessions = {};\n Object.keys(course.sessionLight).forEach((sessionId) => {\n sessions[sessionId] = configureSessionLightAssets(course.sessionLight[sessionId], assetsConfig);\n });\n return course;\n}\nexports.configureCourseLightAssets = configureCourseLightAssets;\nfunction configureSessionAssets(session, assetsConfig = null) {\n if (!assetsConfig || !session) {\n return session;\n }\n session.brochureUrl = configureURL(assetsConfig.brochureBaseUrl, session.brochureUrl, assetsConfig.forceToWebp);\n session.previewUrl = configureURL(assetsConfig.staticAssetsBaseUrl, session.previewUrl, assetsConfig.forceToWebp);\n session.bannerUrl = configureURL(assetsConfig.staticAssetsBaseUrl, session.bannerUrl, assetsConfig.forceToWebp);\n session.instructors = session.instructors.map((instructor) => configureInstructorAssets(instructor, assetsConfig));\n session.relatedSession = session.relatedSession.map((s) => configureSessionLightAssets(s, assetsConfig));\n session.collaborationPartners = session.collaborationPartners.map((s) => configurePartnerAssets(s, assetsConfig));\n session.contributorPartners = session.contributorPartners.map((partner) => configurePartnerAssets(partner, assetsConfig));\n return session;\n}\nexports.configureSessionAssets = configureSessionAssets;\nfunction configureSessionLightAssets(session, assetsConfig = null) {\n if (!assetsConfig || !session) {\n return session;\n }\n session.previewUrl = configureURL(assetsConfig.staticAssetsBaseUrl, session.previewUrl, assetsConfig.forceToWebp);\n return session;\n}\nexports.configureSessionLightAssets = configureSessionLightAssets;\nfunction configureInstructorAssets(instructor, assetsConfig = null) {\n if (!assetsConfig || !instructor) {\n return instructor;\n }\n instructor.imageUrl = configureURL(assetsConfig.staticAssetsBaseUrl, instructor.imageUrl || '', assetsConfig.forceToWebp);\n instructor.sessionInstructor = instructor.sessionInstructor.map((instructor) => configureSessionLightAssets(instructor, assetsConfig));\n return instructor;\n}\nexports.configureInstructorAssets = configureInstructorAssets;\nfunction configurePartnerAssets(partner, assetsConfig = null) {\n if (!assetsConfig || !partner) {\n return partner;\n }\n partner.imageUrl = configureURL(assetsConfig.staticAssetsBaseUrl, partner.imageUrl || '', assetsConfig.forceToWebp);\n partner.sessionCollaboration = partner.sessionCollaboration.map((session) => configureSessionLightAssets(session, assetsConfig));\n partner.sessionCollaboration = partner.sessionContributor.map((session) => configureSessionLightAssets(session, assetsConfig));\n return partner;\n}\nexports.configurePartnerAssets = configurePartnerAssets;\n//# sourceMappingURL=assets.js.map","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.CoursesDb = void 0;\nconst isomorphic_unfetch_1 = __importDefault(require(\"isomorphic-unfetch\"));\nconst course_model_1 = require(\"./course.model\");\nconst assets_1 = require(\"../helpers/assets\");\nclass CourseDb {\n static addCourseSession(session) {\n var _a;\n if (!CourseDb.coursesDb[session.getSlug()]) {\n const course = new course_model_1.CourseModel();\n CourseDb.coursesDb[session.getSlug()] = course;\n }\n (_a = CourseDb.coursesDb[session.getSlug()]) === null || _a === void 0 ? void 0 : _a.addSession(session);\n }\n static getCourse(slug) {\n if (!CourseDb.coursesDb[slug]) {\n return null;\n }\n const course = CourseDb.coursesDb[slug];\n return course === undefined || course == null ? null : new course_model_1.CourseModel(course);\n }\n static async loadDb(fetcher = null, dbUrl = CourseDb.DEFAULT_PROD_DB_URL + \"?r=\" + Math.floor(Math.random() * 100000000), force = false, assetsConfig = null) {\n CourseDb.assetsConfig = assetsConfig;\n if (force || Object.keys(CourseDb.coursesDb).length <= 0) {\n CourseDb.coursesDb = {};\n CourseDb.coursesCodeMap = {};\n await CourseDb.fetchData(fetcher, dbUrl);\n }\n return CourseDb.getDbSynch();\n }\n static getDbSynch() {\n const localCoursesDb = {};\n for (let slug of Object.keys(CoursesDb.coursesDb)) {\n const course = CoursesDb.getCourse(slug);\n if (course != null) {\n localCoursesDb[slug] = course;\n }\n }\n return localCoursesDb;\n }\n static importDb(courseDbMapSerialized) {\n const serializedCourses = JSON.parse(courseDbMapSerialized);\n for (const courseSerialized of Array.from(Object.values(serializedCourses))) {\n if (!courseSerialized || courseSerialized === null) {\n continue;\n }\n else {\n const course = (0, assets_1.configureCourseAssets)(course_model_1.CourseModel.fromJSON(courseSerialized), CourseDb.assetsConfig);\n CoursesDb.coursesDb[course.slug] = course;\n for (let sessionId of Object.keys(course.sessions)) {\n if (typeof sessionId === 'string') {\n let productCode = CoursesDb.coursesDb[course.slug].sessions[sessionId].productCode;\n CoursesDb.coursesCodeMap[productCode] = course.slug;\n }\n }\n }\n }\n }\n static exportDb() {\n return JSON.stringify(CourseDb.coursesDb);\n }\n static async fetchData(fetcher = null, dbUrl) {\n CourseDb.coursesDb = {};\n CoursesDb.coursesCodeMap = {};\n const fetch = fetcher ? fetcher : isomorphic_unfetch_1.default;\n await fetch(dbUrl)\n .then((r) => r.text())\n .then((courseDbSerialized) => {\n CoursesDb.importDb(courseDbSerialized);\n });\n return CourseDb.coursesDb;\n }\n static size() {\n return Object.keys(CoursesDb.coursesDb).length;\n }\n static getCourseByProductCode(productCode) {\n if (CoursesDb.coursesCodeMap[productCode]) {\n const course = CoursesDb.coursesDb[CoursesDb.coursesCodeMap[productCode]];\n for (let sessionId of Object.keys(course.sessions)) {\n if (typeof sessionId === 'string' && course.sessions[sessionId] && course.sessions[sessionId].productCode && course.sessions[sessionId].productCode === productCode) {\n const foundCourse = new course_model_1.CourseModel();\n foundCourse.addSession(course.sessions[sessionId]);\n return foundCourse;\n }\n }\n }\n return null;\n }\n}\nCourseDb.DEFAULT_PROD_DB_URL = \"https://prod-datalayer-24orebs-storage.s3.eu-central-1.amazonaws.com/websitedata/courses/published_courses_db.json\";\nCourseDb.coursesCodeMap = {};\nCourseDb.coursesDb = {};\nCourseDb.assetsConfig = null;\nconst CoursesDb = CourseDb;\nexports.CoursesDb = CoursesDb;\n//# sourceMappingURL=coursedb.js.map","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.InstructorsDb = void 0;\nconst isomorphic_unfetch_1 = __importDefault(require(\"isomorphic-unfetch\"));\nconst assets_1 = require(\"../helpers/assets\");\nconst instructor_model_1 = require(\"./instructor.model\");\nclass InstructorDb {\n static addInstructor(instructor) {\n if (!InstructorDb.instructorsDb[instructor.getSlug()]) {\n const instructor = new instructor_model_1.InstructorModel();\n InstructorDb.instructorsDb[instructor.getSlug()] = instructor;\n }\n }\n static getInstructor(slug) {\n if (!InstructorDb.instructorsDb[slug]) {\n return null;\n }\n const instructor = InstructorDb.instructorsDb[slug];\n return instructor === undefined || instructor == null ? null : instructor;\n }\n static async loadDb(fetcher = null, dbUrl = InstructorDb.DEFAULT_DEV_DB_URL, assetsConfig = null) {\n InstructorDb.assetsConfig = assetsConfig;\n await InstructorDb.fetchData(fetcher, dbUrl);\n return InstructorDb.instructorsDb;\n }\n static getDbSynch() {\n return InstructorDb.instructorsDb;\n }\n static importDb(instructorDbMapSerialized) {\n const serializedInstructors = JSON.parse(instructorDbMapSerialized);\n for (const instructorSerialized of Array.from(Object.values(serializedInstructors))) {\n if (!instructorSerialized || instructorSerialized === null) {\n continue;\n }\n else {\n const instructor = (0, assets_1.configureInstructorAssets)(instructor_model_1.InstructorModel.fromJSON(instructorSerialized), InstructorDb.assetsConfig);\n InstructorsDb.instructorsDb[instructor.slug] = instructor;\n InstructorsDb.instructorsDbById[instructor.idInstructor] = instructor;\n }\n }\n }\n static exportDb() {\n return JSON.stringify(InstructorDb.instructorsDb);\n }\n static async fetchData(fetcher = null, dbUrl) {\n if (Object.keys(InstructorDb.instructorsDb).length == 0) {\n const fetch = fetcher ? fetcher : isomorphic_unfetch_1.default;\n await fetch(dbUrl)\n .then((r) => r.text())\n .then((instructorDbSerialized) => {\n InstructorsDb.importDb(instructorDbSerialized);\n });\n }\n return InstructorDb.instructorsDb;\n }\n static size() {\n return Object.keys(InstructorsDb.instructorsDb).length;\n }\n static getInstructorById(instructorId) {\n return InstructorsDb.instructorsDbById[instructorId];\n }\n}\nInstructorDb.DEFAULT_DEV_DB_URL = \"https://prod-datalayer-24orebs-storage.s3.eu-central-1.amazonaws.com/websitedata/instructors/published_instructors_db.json\";\nInstructorDb.instructorsDb = {};\nInstructorDb.instructorsDbById = {};\nInstructorDb.assetsConfig = null;\nconst InstructorsDb = InstructorDb;\nexports.InstructorsDb = InstructorsDb;\n//# sourceMappingURL=instructorsdb.js.map","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PartnersDb = void 0;\nconst isomorphic_unfetch_1 = __importDefault(require(\"isomorphic-unfetch\"));\nconst assets_1 = require(\"../helpers/assets\");\nconst partner_model_1 = require(\"./partner.model\");\nclass PartnerDb {\n static addPartner(partner) {\n if (!PartnerDb.partnersDb[partner.getSlug()]) {\n const partner = new partner_model_1.PartnerModel();\n PartnerDb.partnersDb[partner.getSlug()] = partner;\n }\n }\n static getPartner(slug) {\n if (!PartnerDb.partnersDb[slug]) {\n return null;\n }\n const partner = PartnerDb.partnersDb[slug];\n return partner === undefined || partner == null ? null : partner;\n }\n static async loadDb(fetcher = null, dbUrl = PartnerDb.DEFAULT_DEV_DB_URL, assetsConfig = null) {\n PartnerDb.assetsConfig = assetsConfig;\n await PartnerDb.fetchData(fetcher, dbUrl);\n return PartnerDb.partnersDb;\n }\n static getDbSynch() {\n return PartnerDb.partnersDb;\n }\n static importDb(partnerDbMapSerialized) {\n const serializedPartners = JSON.parse(partnerDbMapSerialized);\n for (const partnerSerialized of Array.from(Object.values(serializedPartners))) {\n if (!partnerSerialized || partnerSerialized === null) {\n continue;\n }\n else {\n const partner = (0, assets_1.configurePartnerAssets)(partner_model_1.PartnerModel.fromJSON(partnerSerialized), PartnerDb.assetsConfig);\n PartnersDb.partnersDb[partner.slug] = partner;\n PartnersDb.partnersSlugIdMap[partner.idPartner] = partner.slug;\n }\n }\n }\n static exportDb() {\n return JSON.stringify(PartnerDb.partnersDb);\n }\n static async fetchData(fetcher = null, dbUrl) {\n if (Object.keys(PartnerDb.partnersDb).length == 0) {\n const fetch = fetcher ? fetcher : isomorphic_unfetch_1.default;\n await fetch(dbUrl)\n .then((r) => r.text())\n .then((partnerDbSerialized) => {\n PartnersDb.importDb(partnerDbSerialized);\n });\n }\n return PartnerDb.partnersDb;\n }\n static size() {\n return Object.keys(PartnersDb.partnersDb).length;\n }\n static getPartnerById(partnerId) {\n if (PartnersDb.partnersSlugIdMap[partnerId] && PartnersDb.partnersDb[PartnersDb.partnersSlugIdMap[partnerId]]) {\n return PartnersDb.partnersDb[PartnersDb.partnersSlugIdMap[partnerId]];\n }\n return null;\n }\n}\nPartnerDb.DEFAULT_DEV_DB_URL = \"https://prod-datalayer-24orebs-storage.s3.eu-central-1.amazonaws.com/websitedata/partners/published_partners_db.json\";\nPartnerDb.partnersDb = {};\nPartnerDb.partnersSlugIdMap = [];\nPartnerDb.assetsConfig = null;\nconst PartnersDb = PartnerDb;\nexports.PartnersDb = PartnersDb;\n//# sourceMappingURL=partnersdb.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.CourseLightModel = void 0;\nconst sessionlight_model_1 = require(\"../session/sessionlight.model\");\nconst baseSlug_model_abstract_1 = require(\"../baseSlug.model.abstract\");\nclass CourseLightModel extends baseSlug_model_abstract_1.BaseSlugModelAbstract {\n constructor(course = null) {\n super(\"CourseLightModel\");\n this.tags = {};\n this.ranking = 0;\n this.sessionLight = {};\n this.idCourse = 0;\n this.category = \"\";\n this.firstEndDate = null;\n this.firstStartDate = null;\n this.duration = 0;\n this.durationType = \"\";\n this.previewUrl = \"\";\n this.previewUrlAlt = \"\";\n this.price = null;\n this.discountPrice = null;\n this.onSale = false;\n this.location = \"\";\n this.courseTypeFull = \"\";\n this.title = \"\";\n this.slug = \"\";\n this.idMainSession = -1;\n this.sessionLight = {};\n this.tags = {};\n this.ranking = 0;\n if (course !== null) {\n for (let session of Object.values(course.sessionLight)) {\n this.addSession(session);\n }\n }\n }\n getMainSession() {\n if (this.idMainSession == -1) {\n return null;\n }\n else if (this.sessionLight[this.idMainSession]) {\n return this.sessionLight[this.idMainSession];\n }\n return null;\n }\n getPrice() {\n if (this.idMainSession == -1) {\n return null;\n }\n else if (this.sessionLight[this.idMainSession]) {\n return this.sessionLight[this.idMainSession];\n }\n return null;\n }\n setDataFromSession(session) {\n this.category = session.category;\n this.firstEndDate = session.endDate;\n this.firstStartDate = session.startDate;\n this.duration = session.duration;\n this.durationType = session.durationType;\n this.previewUrl = session.previewUrl;\n this.previewUrlAlt = session.previewUrlAlt;\n this.price = session.price;\n this.discountPrice = session.discountPrice;\n this.onSale = session.onSale;\n this.location = session.location;\n this.courseTypeFull = session.courseTypeFull;\n this.title = session.title;\n this.slug = session.slug;\n this.tags = session.tags;\n this.ranking = session.ranking;\n }\n addSession(session) {\n if (!session || session === null) {\n return false;\n }\n if (this.slug == \"\" || !this.sessionLight[this.idMainSession] || typeof this.sessionLight[this.idMainSession] === 'undefined' || this.idMainSession == -1) {\n this.setDataFromSession(session);\n this.idMainSession = session.idSession;\n this.sessionLight[session.idSession] = session;\n return true;\n }\n if (session.startDate != null && this.idMainSession != -1 && this.sessionLight[this.idMainSession].startDate) {\n const today = new Date();\n const oldStart = this.sessionLight[this.idMainSession].startDate;\n const newStart = session.startDate;\n if (newStart != null && (newStart.getMilliseconds() < today.getMilliseconds())) {\n return true;\n }\n else {\n this.sessionLight[session.idSession] = session;\n if (!oldStart || (oldStart.getMilliseconds() - today.getMilliseconds() < 0 || newStart.getMilliseconds() - today.getMilliseconds() < oldStart.getMilliseconds() - today.getMilliseconds())) {\n this.setDataFromSession(session);\n this.idMainSession = session.idSession;\n }\n else {\n }\n }\n return true;\n }\n else {\n this.sessionLight[session.idSession] = session;\n if (session.idSession > this.idMainSession) {\n this.setDataFromSession(session);\n this.idMainSession = session.idSession;\n }\n }\n return false;\n }\n static fromCourseModel(course) {\n if (course === null || course.getMainSession() === null) {\n return null;\n }\n const courseLight = new CourseLightModel();\n courseLight.addSession(course.getMainSession());\n return courseLight;\n }\n static fromJSON(d) {\n const courseInstance = Object.assign(new CourseLightModel(), typeof d === 'string' ? JSON.parse(d) : d);\n if (courseInstance.sessionLight) {\n const courseSessionCopy = Array.from(Object.values(courseInstance.sessionLight));\n courseInstance.sessionLight = {};\n for (const sessionSerialized of courseSessionCopy) {\n const session = sessionlight_model_1.SessionLightModel.fromJSON(sessionSerialized);\n courseInstance.addSession(session);\n }\n }\n return courseInstance;\n }\n}\nexports.CourseLightModel = CourseLightModel;\n//# sourceMappingURL=courselight.model.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ReviewModel = void 0;\nclass ReviewModel {\n constructor(obj = null) {\n this.id = -1;\n this.author = \"\";\n this.date = new Date();\n this.score = 0;\n this.reviewTitle = \"\";\n this.reviewContent = \"\";\n this.refCourseCode = \"\";\n this.courseType = \"\";\n this.courseTitle = \"\";\n this.courseUrl = \"\";\n this.totalReviews = 0;\n this.trustScore = 0;\n if (obj != null) {\n this.clone(obj);\n }\n }\n clone(obj) {\n this.id = obj.id;\n this.author = obj.author;\n this.date = new Date(Date.parse(obj.date.toString()));\n this.score = obj.score;\n this.reviewTitle = obj.reviewTitle;\n this.reviewContent = obj.reviewContent;\n this.refCourseCode = obj.refCourseCode;\n this.courseType = obj.courseType;\n this.courseTitle = obj.courseTitle;\n this.courseUrl = obj.courseUrl;\n this.totalReviews = obj.totalReviews;\n this.trustScore = obj.trustScore;\n }\n static fromJSON(d) {\n const review = Object.assign(new ReviewModel(), typeof d === 'string' ? JSON.parse(d) : d);\n return review;\n }\n}\nexports.ReviewModel = ReviewModel;\n//# sourceMappingURL=review.model.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.stringToSlug = void 0;\nconst stringToSlug = (str) => {\n str = str.replace(/&/g, (_match, offset, original) => {\n const before = original[offset - 1] || '';\n const after = original[offset + 1] || '';\n const needsSpaceBefore = before && !before.match(/\\s/);\n const needsSpaceAfter = after && !after.match(/\\s/);\n return `${needsSpaceBefore ? ' ' : ''}e${needsSpaceAfter ? ' ' : ''}`;\n });\n let slug = str.trim().toLowerCase();\n const from = \"àáäâèéëêìíïîòóöôùúüûñç·/_,:;\";\n const to = \"aaaaeeeeiiiioooouuuunc------\";\n for (let i = 0, l = from.length; i < l; i++) {\n slug = slug.replace(new RegExp(from.charAt(i), 'g'), to.charAt(i));\n }\n slug = slug.replace(/[^a-z0-9 -]/g, '');\n slug = slug.replace(/\\s+/g, '-');\n slug = slug.replace(/-+/g, '-');\n return slug;\n};\nexports.stringToSlug = stringToSlug;\n//# sourceMappingURL=slug.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.reviver = exports.replacer = void 0;\nconst replacer = (key, value) => {\n if (value instanceof Map) {\n return {\n dataType: 'Map',\n value: Array.from(value.entries()),\n };\n }\n else {\n return value;\n }\n};\nexports.replacer = replacer;\nconst reviver = (key, value) => {\n if (typeof value === 'object' && value !== null) {\n if (value.dataType === 'Map') {\n return new Map(value.value);\n }\n }\n return value;\n};\nexports.reviver = reviver;\n//# sourceMappingURL=serialization.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.decodeStr = exports.encodeStr = void 0;\nconst encodeStr = (originalStr) => {\n if (typeof btoa === 'undefined') {\n return Buffer.from(encodeURI(originalStr)).toString('base64');\n }\n else {\n return btoa(encodeURI(originalStr));\n }\n};\nexports.encodeStr = encodeStr;\nconst decodeStr = (encodedStr) => {\n if (typeof atob === 'undefined') {\n return decodeURI(Buffer.from(encodedStr, 'base64').toString('binary'));\n }\n else {\n return decodeURI(atob(encodedStr));\n }\n};\nexports.decodeStr = decodeStr;\n//# sourceMappingURL=encoder.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.stripHtml = void 0;\nconst stripHtml = (originalStr, allowed = \"

    1. \") => {\n allowed = (((allowed || \"\") + \"\").toLowerCase().match(/<[a-z][a-z0-9]*>/g) || []).join('');\n var tags = /<\\/?([a-z][a-z0-9]*)\\b[^>]*>/gi, commentsAndPhpTags = /|<\\?(?:php)?[\\s\\S]*?\\?>/gi;\n return originalStr.replace(commentsAndPhpTags, '').replace(tags, function ($0, $1) {\n return allowed.indexOf('<' + $1.toLowerCase() + '>') > -1 ? $0 : '';\n });\n};\nexports.stripHtml = stripHtml;\n//# sourceMappingURL=html.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.configureSessionLightAssets = exports.configureSessionAssets = exports.configurePartnerAssets = exports.configureInstructorAssets = exports.configureCourseLightAssets = exports.configureCourseAssets = exports.configureURL = exports.stripHtml = exports.decodeStr = exports.encodeStr = exports.reviver = exports.replacer = exports.stringToSlug = exports.AmbassadorModel = exports.ReviewModel = exports.PartnerModel = exports.PartnerType = exports.InstructorModel = exports.SessioncontactModel = exports.SessionLightModel = exports.SessionModel = exports.PackageModel = exports.OptionModel = exports.OptionTypeModel = exports.CourseLightModel = exports.CourseModel = exports.PartnersDb = exports.InstructorsDb = exports.CoursesDb = void 0;\nconst coursedb_1 = require(\"./course/coursedb\");\nObject.defineProperty(exports, \"CoursesDb\", { enumerable: true, get: function () { return coursedb_1.CoursesDb; } });\nconst instructorsdb_1 = require(\"./instructor/instructorsdb\");\nObject.defineProperty(exports, \"InstructorsDb\", { enumerable: true, get: function () { return instructorsdb_1.InstructorsDb; } });\nconst partnersdb_1 = require(\"./partner/partnersdb\");\nObject.defineProperty(exports, \"PartnersDb\", { enumerable: true, get: function () { return partnersdb_1.PartnersDb; } });\nconst course_model_1 = require(\"./course/course.model\");\nObject.defineProperty(exports, \"CourseModel\", { enumerable: true, get: function () { return course_model_1.CourseModel; } });\nconst courselight_model_1 = require(\"./course/courselight.model\");\nObject.defineProperty(exports, \"CourseLightModel\", { enumerable: true, get: function () { return courselight_model_1.CourseLightModel; } });\nconst option_model_1 = require(\"./session/option.model\");\nObject.defineProperty(exports, \"OptionModel\", { enumerable: true, get: function () { return option_model_1.OptionModel; } });\nObject.defineProperty(exports, \"OptionTypeModel\", { enumerable: true, get: function () { return option_model_1.OptionTypeModel; } });\nconst package_model_1 = require(\"./session/package.model\");\nObject.defineProperty(exports, \"PackageModel\", { enumerable: true, get: function () { return package_model_1.PackageModel; } });\nconst session_model_1 = require(\"./session/session.model\");\nObject.defineProperty(exports, \"SessionModel\", { enumerable: true, get: function () { return session_model_1.SessionModel; } });\nconst sessionlight_model_1 = require(\"./session/sessionlight.model\");\nObject.defineProperty(exports, \"SessionLightModel\", { enumerable: true, get: function () { return sessionlight_model_1.SessionLightModel; } });\nconst sessioncontact_model_1 = require(\"./session/sessioncontact.model\");\nObject.defineProperty(exports, \"SessioncontactModel\", { enumerable: true, get: function () { return sessioncontact_model_1.SessioncontactModel; } });\nconst instructor_model_1 = require(\"./instructor/instructor.model\");\nObject.defineProperty(exports, \"InstructorModel\", { enumerable: true, get: function () { return instructor_model_1.InstructorModel; } });\nconst partner_model_1 = require(\"./partner/partner.model\");\nObject.defineProperty(exports, \"PartnerModel\", { enumerable: true, get: function () { return partner_model_1.PartnerModel; } });\nObject.defineProperty(exports, \"PartnerType\", { enumerable: true, get: function () { return partner_model_1.PartnerType; } });\nconst review_model_1 = require(\"./review/review.model\");\nObject.defineProperty(exports, \"ReviewModel\", { enumerable: true, get: function () { return review_model_1.ReviewModel; } });\nconst ambassador_model_1 = require(\"./session/ambassador.model\");\nObject.defineProperty(exports, \"AmbassadorModel\", { enumerable: true, get: function () { return ambassador_model_1.AmbassadorModel; } });\nconst slug_1 = require(\"./helpers/slug\");\nObject.defineProperty(exports, \"stringToSlug\", { enumerable: true, get: function () { return slug_1.stringToSlug; } });\nconst serialization_1 = require(\"./helpers/serialization\");\nObject.defineProperty(exports, \"replacer\", { enumerable: true, get: function () { return serialization_1.replacer; } });\nObject.defineProperty(exports, \"reviver\", { enumerable: true, get: function () { return serialization_1.reviver; } });\nconst encoder_1 = require(\"./helpers/encoder\");\nObject.defineProperty(exports, \"encodeStr\", { enumerable: true, get: function () { return encoder_1.encodeStr; } });\nObject.defineProperty(exports, \"decodeStr\", { enumerable: true, get: function () { return encoder_1.decodeStr; } });\nconst html_1 = require(\"./helpers/html\");\nObject.defineProperty(exports, \"stripHtml\", { enumerable: true, get: function () { return html_1.stripHtml; } });\nconst assets_1 = require(\"./helpers/assets\");\nObject.defineProperty(exports, \"configureURL\", { enumerable: true, get: function () { return assets_1.configureURL; } });\nObject.defineProperty(exports, \"configureCourseAssets\", { enumerable: true, get: function () { return assets_1.configureCourseAssets; } });\nObject.defineProperty(exports, \"configureCourseLightAssets\", { enumerable: true, get: function () { return assets_1.configureCourseLightAssets; } });\nObject.defineProperty(exports, \"configureInstructorAssets\", { enumerable: true, get: function () { return assets_1.configureInstructorAssets; } });\nObject.defineProperty(exports, \"configurePartnerAssets\", { enumerable: true, get: function () { return assets_1.configurePartnerAssets; } });\nObject.defineProperty(exports, \"configureSessionAssets\", { enumerable: true, get: function () { return assets_1.configureSessionAssets; } });\nObject.defineProperty(exports, \"configureSessionLightAssets\", { enumerable: true, get: function () { return assets_1.configureSessionLightAssets; } });\n//# sourceMappingURL=index.js.map","import { \n PUBLIC_BASE_URL,\n PUBLIC_FONDO_NUOVE_COMPETENZE,\n PUBLIC_FORMAZIONE_INTERAZIENDALE_A_CATALOGO, \n PUBLIC_FORMAZIONE_SU_MISURA,\n PUBLIC_HR_FOR_BREAKFAST,\n PUBLIC_LE_MASTERCLASS\n }\nfrom '$env/static/public';\nimport { CourseModel, SessioncontactModel, SessionModel } from '@24hbs/utils';\n\nconst buildB2BFondoNuoveCompetenze = () => {\n let course: CourseModel = new CourseModel();\n course.title = 'Fondo Nuove Competenze';\n course.slug = 'b2b-fondo-nuove-competenze';\n course.courseTypeFull = 'B2B Fondo';\n course.category = 'b2b-fondo';\n course.idMainSession = 10000;\n let selectedSession: SessionModel = new SessionModel();\n selectedSession.productCode = PUBLIC_FONDO_NUOVE_COMPETENZE;\n selectedSession.title = 'Fondo Nuove Competenze';\n selectedSession.slug = 'b2b-fondo-nuove-competenze';\n selectedSession.courseTypeFull = 'Opportunità';\n selectedSession.category = 'b2b-opportunita';\n selectedSession.idSession = 10000;\n selectedSession.price = 0;\n selectedSession.previewUrl = '/assets/images/b2b/fondo-nuove-competenze.webp';\n selectedSession.brochureBooking = false;\n selectedSession.brochureAvailable = true;\n selectedSession.brochureUrl = `${PUBLIC_BASE_URL}assets/b2b-brochure/opportunita/BrochureFondoNuoveCompetenze.pdf`;\n selectedSession.priceNoVat = 0;\n selectedSession.discountPrice = 0;\n //selectedSession.startDate = new Date();\n selectedSession.endDate = new Date();\n selectedSession.sessionContacts = SessioncontactModel.fromJson({\n editorialContact: 'B2B Sales',\n editorialEmail: 'b2b-info@24orebs.com',\n editorialPhone: '0237929700',\n marketingContact: '',\n marketingEmail: '',\n marketingPhone: '',\n customercareContact: '',\n customercareEmail: '',\n customercarePhone: '',\n });\n course.addSession(selectedSession);\n return course;\n};\n\nexport const B2B_FONDO_NUOVE_COMPETENZE = {\n productPage: '/b2b/opportunita/b2b-fondo-nuove-competenze',\n model: buildB2BFondoNuoveCompetenze(),\n downloadBrochureConfirmationPath: '/b2b/opportunita/b2b-fondo-nuove-competenze/brochure_download_thankyou',\n};\n\nconst buildB2BFormazioneInteraziendaleACatalogo = () => {\n let course: CourseModel = new CourseModel();\n course.title = 'Formazione Interaziendale a catalogo';\n course.slug = 'b2b-offerta-formativa-a-catalogo-per-le-aziende';\n course.courseTypeFull = 'B2B Offerta';\n course.category = 'b2b-offerta';\n course.idMainSession = 10000;\n let selectedSession: SessionModel = new SessionModel();\n selectedSession.productCode = PUBLIC_FORMAZIONE_INTERAZIENDALE_A_CATALOGO;\n selectedSession.title = 'Formazione Interaziendale a catalogo';\n selectedSession.slug = 'b2b-offerta-formativa-a-catalogo-per-le-aziende';\n selectedSession.courseTypeFull = 'Offerta';\n selectedSession.category = 'b2b-offerta';\n selectedSession.idSession = 10000;\n selectedSession.price = 0;\n selectedSession.previewUrl = '/images/b2b/offerta_formativa_aziende.jpg';\n selectedSession.brochureBooking = false;\n selectedSession.brochureAvailable = true;\n selectedSession.brochureUrl = `${PUBLIC_BASE_URL}assets/b2b-brochure/offerta/FormazioneInteraziendaleACatalogo.pdf`;\n selectedSession.priceNoVat = 0;\n selectedSession.discountPrice = 0;\n //selectedSession.startDate = new Date();\n selectedSession.endDate = new Date();\n selectedSession.sessionContacts = SessioncontactModel.fromJson({\n editorialContact: 'B2B Sales',\n editorialEmail: 'b2b-info@24orebs.com',\n editorialPhone: '0237929700',\n marketingContact: '',\n marketingEmail: '',\n marketingPhone: '',\n customercareContact: '',\n customercareEmail: '',\n customercarePhone: '',\n });\n course.addSession(selectedSession);\n return course;\n};\n\nexport const B2B_FORMAZIONE_INTERAZIENDALE_A_CATALOGO = {\n productPage: '/b2b/offerta/b2b-offerta-formativa-a-catalogo-per-le-aziende',\n model: buildB2BFormazioneInteraziendaleACatalogo(),\n downloadBrochureConfirmationPath: '/b2b/offerta/b2b-offerta-formativa-a-catalogo-per-le-aziende/brochure_download_thankyou',\n};\n\nconst buildB2BFormazioneSuMisura = () => {\n let course: CourseModel = new CourseModel();\n course.title = 'Formazione su Misura';\n course.slug = 'b2b-formazione-su-misura';\n course.courseTypeFull = 'B2B Offerta';\n course.category = 'b2b-offerta';\n course.idMainSession = 10000;\n let selectedSession: SessionModel = new SessionModel();\n selectedSession.productCode = PUBLIC_FORMAZIONE_SU_MISURA;\n selectedSession.title = 'Formazione su Misura';\n selectedSession.slug = 'b2b-formazione-su-misura';\n selectedSession.courseTypeFull = 'Offerta';\n selectedSession.category = 'b2b-offerta';\n selectedSession.idSession = 10000;\n selectedSession.price = 0;\n selectedSession.previewUrl = '/images/b2b/offerta_formativa_aziende.jpg';\n selectedSession.brochureBooking = false;\n selectedSession.brochureAvailable = true;\n selectedSession.brochureUrl = `${PUBLIC_BASE_URL}assets/b2b-brochure/offerta/BrochureFormazioneSuMisura.pdf`;\n selectedSession.priceNoVat = 0;\n selectedSession.discountPrice = 0;\n //selectedSession.startDate = new Date();\n selectedSession.endDate = new Date();\n selectedSession.sessionContacts = SessioncontactModel.fromJson({\n editorialContact: 'B2B Sales',\n editorialEmail: 'b2b-info@24orebs.com',\n editorialPhone: '0237929700',\n marketingContact: '',\n marketingEmail: '',\n marketingPhone: '',\n customercareContact: '',\n customercareEmail: '',\n customercarePhone: '',\n });\n course.addSession(selectedSession);\n return course;\n};\n\nexport const B2B_FORMAZIONE_SU_MISURA = {\n productPage: '/b2b/offerta/b2b-formazione-su-misura',\n model: buildB2BFormazioneSuMisura(),\n downloadBrochureConfirmationPath: '/b2b/offerta/b2b-formazione-su-misura/brochure_download_thankyou',\n};\n\nconst buildB2BHRforBreakfast = () => {\n let course: CourseModel = new CourseModel();\n course.title = 'HR for Breakfast';\n course.slug = 'b2b-hr-for-breakfast';\n course.courseTypeFull = 'B2B Offerta';\n course.category = 'b2b-offerta';\n course.idMainSession = 10000;\n let selectedSession: SessionModel = new SessionModel();\n selectedSession.productCode = PUBLIC_HR_FOR_BREAKFAST;\n selectedSession.title = 'HR for Breakfast';\n selectedSession.slug = 'b2b-hr-for-breakfast';\n selectedSession.courseTypeFull = 'Offerta';\n selectedSession.category = 'b2b-offerta';\n selectedSession.idSession = 10000;\n selectedSession.price = 0;\n selectedSession.previewUrl = '/images/b2b/hr_for_breakfast_desktop.jpg';\n selectedSession.brochureBooking = false;\n selectedSession.brochureAvailable = true;\n selectedSession.brochureUrl = `${PUBLIC_BASE_URL}assets/b2b-brochure/offerta/HRforBreakfast.pdf`;\n selectedSession.priceNoVat = 0;\n selectedSession.discountPrice = 0;\n //selectedSession.startDate = new Date();\n selectedSession.endDate = new Date();\n selectedSession.sessionContacts = SessioncontactModel.fromJson({\n editorialContact: 'B2B Sales',\n editorialEmail: 'b2b-info@24orebs.com',\n editorialPhone: '0237929700',\n marketingContact: '',\n marketingEmail: '',\n marketingPhone: '',\n customercareContact: '',\n customercareEmail: '',\n customercarePhone: '',\n });\n course.addSession(selectedSession);\n return course;\n};\n\nexport const B2B_HR_FOR_BREAKFAST = {\n productPage: '/b2b/offerta/b2b-hr-for-breakfast',\n model: buildB2BHRforBreakfast(),\n downloadBrochureConfirmationPath: '/b2b/offerta/b2b-hr-for-breakfast/brochure_download_thankyou',\n};\n\nconst buildB2BLeMasterclass = () => {\n let course: CourseModel = new CourseModel();\n course.title = 'Le Masterclass';\n course.slug = 'b2b-le-masterclass';\n course.courseTypeFull = 'B2B Offerta';\n course.category = 'b2b-offerta';\n course.idMainSession = 10000;\n let selectedSession: SessionModel = new SessionModel();\n selectedSession.productCode = PUBLIC_LE_MASTERCLASS;\n selectedSession.title = 'Le Masterclass';\n selectedSession.slug = 'b2b-le-masterclass';\n selectedSession.courseTypeFull = 'Offerta';\n selectedSession.category = 'b2b-offerta';\n selectedSession.idSession = 10000;\n selectedSession.price = 0;\n selectedSession.previewUrl = '/images/b2b/le_masterclass_desktop.jpg';\n selectedSession.brochureBooking = false;\n selectedSession.brochureAvailable = true;\n selectedSession.brochureUrl = `${PUBLIC_BASE_URL}assets/b2b-brochure/offerta/BrochureLeMasterclass.pdf`;\n selectedSession.priceNoVat = 0;\n selectedSession.discountPrice = 0;\n //selectedSession.startDate = new Date();\n selectedSession.endDate = new Date();\n selectedSession.sessionContacts = SessioncontactModel.fromJson({\n editorialContact: 'B2B Sales',\n editorialEmail: 'b2b-info@24orebs.com',\n editorialPhone: '0237929700',\n marketingContact: '',\n marketingEmail: '',\n marketingPhone: '',\n customercareContact: '',\n customercareEmail: '',\n customercarePhone: '',\n });\n course.addSession(selectedSession);\n return course;\n};\n\nexport const B2B_LE_MASTERCLASS = {\n productPage: '/b2b/offerta/b2b-le-masterclass',\n model: buildB2BLeMasterclass(),\n downloadBrochureConfirmationPath: '/b2b/offerta/b2b-le-masterclass/brochure_download_thankyou',\n};"],"names":["unfetch_module","e","n","t","s","u","i","a","l","browser","require$$0","baseSlug_model_abstract","BaseSlugModelAbstract","model","session_model_abstract","baseSlug_model_abstract_1","SessionModelAbstract","sessionlight_model","session_model_abstract_1","SessionLightModel","obj","deepClone","deep","v","d","sessionInstance","instructor_model","sessionlight_model_1","require$$1","InstructorModel","exports","PartnerType","PartnerModel","sessioncontact_model","SessioncontactModel","package_model","PackageModel","packageData","instance","option_model","OptionTypeModel","_deep","OptionModel","ambassador_model","AmbassadorModel","session_model","instructor_model_1","partner_model_1","sessioncontact_model_1","require$$2","require$$3","package_model_1","require$$4","option_model_1","require$$5","ambassador_model_1","require$$6","SessionModel","sessionData","course_model","session_model_1","CourseModel","course","session","today","oldStart","newStart","newInstructor","item","newPartner","courseInstance","courseSessionCopy","sessionSerialized","instructorsCopy","instructorSerialized","instructor","contributorPartnersCopy","partnerSerialized","partner","collaborationPartnersCopy","assets","configureURL","baseUrl","dbUrl","forceToWebp","schemeRegex","appendExtension","str","extension","isFull","url","finalUrl","configureCourseAssets","assetsConfig","sessionId","configureSessionAssets","configureInstructorAssets","configurePartnerAssets","configureCourseLightAssets","configureSessionLightAssets","__importDefault","this","mod","coursedb","isomorphic_unfetch_1","course_model_1","assets_1","CourseDb","_a","slug","fetcher","force","localCoursesDb","CoursesDb","courseDbMapSerialized","serializedCourses","courseSerialized","productCode","r","courseDbSerialized","foundCourse","instructorsdb","InstructorDb","instructorDbMapSerialized","serializedInstructors","InstructorsDb","instructorDbSerialized","instructorId","partnersdb","PartnerDb","partnerDbMapSerialized","serializedPartners","PartnersDb","partnerDbSerialized","partnerId","courselight_model","CourseLightModel","courseLight","review_model","ReviewModel","stringToSlug_1","stringToSlug","_match","offset","original","before","after","needsSpaceBefore","needsSpaceAfter","from","to","serialization","replacer","key","value","reviver","encoder","encodeStr","originalStr","decodeStr","encodedStr","html","stripHtml","allowed","tags","commentsAndPhpTags","$0","$1","coursedb_1","instructorsdb_1","partnersdb_1","courselight_model_1","require$$7","require$$8","require$$9","require$$10","require$$11","review_model_1","require$$12","require$$13","slug_1","require$$14","serialization_1","require$$15","encoder_1","require$$16","html_1","require$$17","require$$18","buildB2BFondoNuoveCompetenze","selectedSession","PUBLIC_FONDO_NUOVE_COMPETENZE","PUBLIC_BASE_URL","B2B_FONDO_NUOVE_COMPETENZE","buildB2BFormazioneInteraziendaleACatalogo","PUBLIC_FORMAZIONE_INTERAZIENDALE_A_CATALOGO","B2B_FORMAZIONE_INTERAZIENDALE_A_CATALOGO","buildB2BFormazioneSuMisura","PUBLIC_FORMAZIONE_SU_MISURA","B2B_FORMAZIONE_SU_MISURA","buildB2BHRforBreakfast","PUBLIC_HR_FOR_BREAKFAST","B2B_HR_FOR_BREAKFAST","buildB2BLeMasterclass","PUBLIC_LE_MASTERCLASS","B2B_LE_MASTERCLASS"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23]}