"use strict";(self.webpackChunklernplattform_frontend=self.webpackChunklernplattform_frontend||[]).push([[86082],{"resources/pagesCourse/course-qr-scanner/course-qr-scanner.html":function(e,n,t){t.r(n),n.default='<template>\n  <div class="course-qr-scanner">\n    <main class="course-qr-scanner__main lp-site-content-small-no-padding-safe-area-right"\n          t="[aria-label]resources.pagesCourse.course-qr-scanner.routeTitle">\n      <qr-code-scanner class="course-qr-scanner__scanner"\n                       scan.trigger="handleScan($event)"></qr-scanner>\n    </main>\n  </div>\n</template>\n'},"resources/pagesCourse/course-road-sign-scanner/course-road-sign-scanner-result/course-road-sign-scanner-result.html":function(e,n,t){t.r(n),n.default='<template>\n  <div class="course-road-sign-scanner-result">\n    <h1 class="course-road-sign-scanner-result__heading"\n        t.to-view="headingTk"></h1>\n    <p class="course-road-sign-scanner-result__text"\n       t.to-view="textTk"></p>\n    <scroll-inset class="course-road-sign-scanner-result__signs-wrapper">\n      <list-standard class="course-road-sign-scanner-result__signs"\n                     items.to-view="roadSignList"></list-standard>\n    </scroll-inset>\n    <button-standard class="course-road-sign-scanner-result__scan-btn"\n                     btn-type="outlined"\n                     t="[btnText]roadSignScanner:resultPage.scan"\n                     click.delegate="onRescan()"></button-standard>\n  </div>\n</template>\n'},"resources/pagesCourse/course-road-sign-scanner/course-road-sign-scanner-sign-details/course-road-sign-scanner-sign-details.html":function(e,n,t){t.r(n),n.default='<template>\n  <div class="course-road-sign-scanner-sign-details">\n    <x-icon class="course-road-sign-scanner-sign-details__icon"\n            icon-name.to-view="iconName"\n            size="unspecified"\n            icon-type="custom"></x-icon>\n    <p class="course-road-sign-scanner-sign-details__text"\n       t.to-view="sign.textTk"></p>\n    <p if.to-view="hint"\n       class="course-road-sign-scanner-sign-details__hint"\n       t.to-view="sign.hintTk"></p>\n  </div>\n</template>\n'},"resources/pagesCourse/course-road-sign-scanner/course-road-sign-scanner.html":function(e,n,t){t.r(n),n.default='<template>\n  <div class="course-road-sign-scanner">\n    <scroll-inset class="course-road-sign-scanner__accordion-wrapper">\n      <x-accordion items.to-view="roadSigns"></x-accordion>\n    </scroll-inset>\n    <button-standard class="course-road-sign-scanner__scan-btn"\n                     t="[btnText]resources.pagesCourse.course-road-sign-scanner.scan"\n                     click.delegate="onStartScanning()"></button-standard>\n  </div>\n</template>'},"resources/pagesCourse/course-qr-scanner/course-qr-scanner":function(e,n,t){var r,s=this&&this.__decorate||function(e,n,t,r){var s,a=arguments.length,o=a<3?n:null===r?r=Object.getOwnPropertyDescriptor(n,t):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,n,t,r);else for(var i=e.length-1;i>=0;i--)(s=e[i])&&(o=(a<3?s(o):a>3?s(n,t,o):s(n,t))||o);return a>3&&o&&Object.defineProperty(n,t,o),o},a=this&&this.__metadata||function(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)};Object.defineProperty(n,"__esModule",{value:!0}),n.CourseQrScanner=void 0;const o=t("aurelia-framework"),i=t(718776),c=t(779617),u=t("resources/elements/course-main-header/course-main-header");let d=class{constructor(e){this.router=e}activate(){u.CourseMainHeader.configure(this,{titleText:{textTk:"resources.pagesCourse.course-qr-scanner.routeTitle"},backButton:{routeName:"course-start"}})}deactivate(){u.CourseMainHeader.resetConfiguration(this)}async handleScan(e){const n=new URL(e.detail.text);[location.origin,...(0,c.Config)().acceptedQrOrigins].includes(n.origin)&&(this.router.navigate(n.hash),e.detail.markAccepted())}};d=s([(0,o.autoinject)(),a("design:paramtypes",["function"==typeof(r=void 0!==i.Router&&i.Router)?r:Object])],d),n.CourseQrScanner=d},"resources/pagesCourse/course-road-sign-scanner/course-road-sign-scanner-result/course-road-sign-scanner-result":function(e,n,t){var r,s,a,o,i=this&&this.__decorate||function(e,n,t,r){var s,a=arguments.length,o=a<3?n:null===r?r=Object.getOwnPropertyDescriptor(n,t):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,n,t,r);else for(var i=e.length-1;i>=0;i--)(s=e[i])&&(o=(a<3?s(o):a>3?s(n,t,o):s(n,t))||o);return a>3&&o&&Object.defineProperty(n,t,o),o},c=this&&this.__metadata||function(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)};Object.defineProperty(n,"__esModule",{value:!0}),n.CourseRoadSignScannerResult=void 0;const u=t("aurelia-framework"),d=t(718776),l=t("common/aurelia-components/x-icon/x-icon"),g=t(729769),f=t(417279),p=t(283616),h=t(668414),m=t(121241),S=t("resources/elements/course-main-header/course-main-header"),v=t(123448),y=t(313912);let R=class{constructor(e,n,t){this.storeService=e,this.router=n,this.scannerService=t,this.perceivedRoadSigns=[]}async activate(e){if(null==e.key)return void this.router.navigateToRoute("road-sign-scanner");const{roadSignScanner:{scanResults:n}}=await this.storeService.getState(),t=n[e.key];(0,p.assertNotNullOrUndefined)(t,`couldn't find scan result with key ${e.key}`);const r=t.map((e=>{const n=f.roadSigns.find((n=>n.reference===e.id));return(0,p.assertNotNullOrUndefined)(n,`couldn't find sign with reference ${e.id}`),n}));r.length?m.MatomoAnalytics.addEvent(m.MatomoAnalyticsEvents.scannedSignFound):m.MatomoAnalytics.addEvent(m.MatomoAnalyticsEvents.scannedSignNotFound),this.perceivedRoadSigns=r}attached(){S.CourseMainHeader.configure(this,{backButton:{routeName:"road-sign-scanner"},titleText:{textTk:"roadSignScanner:resultPage.title"}})}detached(){S.CourseMainHeader.resetConfiguration(this)}get headingTk(){return`roadSignScanner:resultPage.${1===this.perceivedRoadSigns.length?"un":""}ambiguousHeading`}get textTk(){return`roadSignScanner:resultPage.${1===this.perceivedRoadSigns.length?"un":""}ambiguousText`}get roadSignList(){return this.perceivedRoadSigns.map((e=>({icons:[{name:"System/Arrow - Right",size:l.IconSize.normal,type:"custom"}],separatorAfter:!0,text:{primary:{textTk:e.titleTk}},graphic:{name:`Road Sign Scanner/${e.reference}`,size:l.IconSize.normal,type:"custom",safe:!0},click:{routeName:"road-sign-scanner/sign",routeParams:{signReference:e.reference}}})))}async onRescan(){const e=await this.scannerService.scan(),n=(0,h.v4)();await this.storeService.dispatch(y.setScanResult,n,e),this.router.navigateToRoute("road-sign-scanner/result",{key:n})}};i([(0,u.computedFrom)("perceivedRoadSigns.length"),c("design:type",String),c("design:paramtypes",[])],R.prototype,"headingTk",null),i([(0,u.computedFrom)("perceivedRoadSigns.length"),c("design:type",String),c("design:paramtypes",[])],R.prototype,"textTk",null),i([(0,u.computedFrom)("perceivedRoadSigns"),c("design:type","function"==typeof(o="undefined"!=typeof Array&&Array)?o:Object),c("design:paramtypes",[])],R.prototype,"roadSignList",null),R=i([(0,u.autoinject)(),c("design:paramtypes",["function"==typeof(r=void 0!==g.StoreService&&g.StoreService)?r:Object,"function"==typeof(s=void 0!==d.Router&&d.Router)?s:Object,"function"==typeof(a=void 0!==v.RoadSignScannerService&&v.RoadSignScannerService)?a:Object])],R),n.CourseRoadSignScannerResult=R},"resources/pagesCourse/course-road-sign-scanner/course-road-sign-scanner-sign-details/course-road-sign-scanner-sign-details":function(e,n,t){var r,s,a=this&&this.__decorate||function(e,n,t,r){var s,a=arguments.length,o=a<3?n:null===r?r=Object.getOwnPropertyDescriptor(n,t):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,n,t,r);else for(var i=e.length-1;i>=0;i--)(s=e[i])&&(o=(a<3?s(o):a>3?s(n,t,o):s(n,t))||o);return a>3&&o&&Object.defineProperty(n,t,o),o},o=this&&this.__metadata||function(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)};Object.defineProperty(n,"__esModule",{value:!0}),n.CourseRoadSignScannerSignDetails=void 0;const i=t("aurelia-framework"),c=t(417279),u=t(718776),d=t(283616),l=t("resources/elements/course-main-header/course-main-header"),g=t("aurelia-i18n");let f=class{constructor(e,n){this.router=e,this.i18n=n,this.sign=null,this.textTk=null,this.hintTk=null}activate(e){const n=c.roadSigns.find((n=>n.reference===e.signReference));(0,d.assertNotNullOrUndefined)(n,`no roadsign could be found for reference ${e.signReference}`),this.sign=n}attached(){var e,n,t;l.CourseMainHeader.configure(this,{backButton:{callback:()=>this.router.navigateBack()},titleText:{textTk:`roadSignScanner:signs.${null!==(n=null===(e=this.sign)||void 0===e?void 0:e.parentReference)&&void 0!==n?n:null===(t=this.sign)||void 0===t?void 0:t.reference}.title`}})}detached(){l.CourseMainHeader.resetConfiguration(this)}get iconName(){var e,n,t;return`Road Sign Scanner/${null!==(n=null===(e=this.sign)||void 0===e?void 0:e.parentReference)&&void 0!==n?n:null===(t=this.sign)||void 0===t?void 0:t.reference}`}get hint(){return null==this.sign?null:this.i18n.tr(this.sign.hintTk,{defaultValue:null})}};a([(0,i.computedFrom)("sign.reference","sign.parentReference"),o("design:type",String),o("design:paramtypes",[])],f.prototype,"iconName",null),a([(0,i.computedFrom)("sign.hintTk"),o("design:type",Object),o("design:paramtypes",[])],f.prototype,"hint",null),f=a([(0,i.autoinject)(),o("design:paramtypes",["function"==typeof(r=void 0!==u.Router&&u.Router)?r:Object,"function"==typeof(s=void 0!==g.I18N&&g.I18N)?s:Object])],f),n.CourseRoadSignScannerSignDetails=f},"resources/pagesCourse/course-road-sign-scanner/course-road-sign-scanner":function(e,n,t){var r,s,a,o=this&&this.__decorate||function(e,n,t,r){var s,a=arguments.length,o=a<3?n:null===r?r=Object.getOwnPropertyDescriptor(n,t):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,n,t,r);else for(var i=e.length-1;i>=0;i--)(s=e[i])&&(o=(a<3?s(o):a>3?s(n,t,o):s(n,t))||o);return a>3&&o&&Object.defineProperty(n,t,o),o},i=this&&this.__metadata||function(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)};Object.defineProperty(n,"__esModule",{value:!0}),n.CourseRoadSignScanner=void 0;const c=t("aurelia-framework"),u=t(718776),d=t("common/aurelia-components/list-standard/list-standard"),l=t("common/aurelia-components/x-accordion/x-accordion-list-content/x-accordion-list-content"),g=t("common/aurelia-components/x-icon/x-icon"),f=t(729769),p=t(417279),h=t(668414),m=t("resources/elements/course-main-header/course-main-header"),S=t(123448),v=t(313912);let y=class{constructor(e,n,t){this.storeService=e,this.router=n,this.scannerService=t,this.roadSigns=[]}attached(){m.CourseMainHeader.configure(this,{titleText:{textTk:"roadSignScanner:scanner"},backButton:{routeName:"course-start"}}),this.roadSigns=p.groups.map((e=>({title:{tk:e.titleTk},collapsed:!0,contentViewModel:l.XAccordionListContent,contentModel:{listTheme:d.ListTheme.Standard,columnizeItems:!1,enumeration:!1,items:p.roadSigns.filter((n=>n.groupId===e.id)).map((e=>({icons:[{name:"System/Arrow - Right",size:g.IconSize.normal,type:"custom"}],separatorAfter:!0,text:{primary:{textTk:e.titleTk}},graphic:{name:`Road Sign Scanner/${e.reference}`,size:g.IconSize.normal,type:"custom",safe:!0},click:{routeName:"road-sign-scanner/sign",routeParams:{signReference:e.reference}}})))}})))}detached(){m.CourseMainHeader.resetConfiguration(this)}async onStartScanning(){const e=await this.scannerService.scan(),n=(0,h.v4)();await this.storeService.dispatch(v.setScanResult,n,e),this.router.navigateToRoute("road-sign-scanner/result",{key:n})}};y=o([(0,c.autoinject)(),i("design:paramtypes",["function"==typeof(r=void 0!==f.StoreService&&f.StoreService)?r:Object,"function"==typeof(s=void 0!==u.Router&&u.Router)?s:Object,"function"==typeof(a=void 0!==S.RoadSignScannerService&&S.RoadSignScannerService)?a:Object])],y),n.CourseRoadSignScanner=y}}]);