{"version":3,"file":"app-352df2fe.f584a1446b2fc034d810.bundle.js","mappings":"AAAA","sources":["webpack://lernplattform-admin-frontend/./src/router/AuthorizeStep.ts","webpack://lernplattform-admin-frontend/./src/router/configure.ts","webpack://lernplattform-admin-frontend/./src/router/routes.ts"],"sourcesContent":["import { autoinject } from 'aurelia-framework';\nimport { NavigationInstruction, RedirectToRoute } from 'aurelia-router';\nimport { Store } from 'aurelia-store';\nimport { SeparateWindowService } from 'services/SeparateWindowService';\nimport { IState } from 'store/state';\n\n@autoinject()\nexport class AuthorizeStep {\n  private state: IState | null = null;\n\n  constructor(\n    private store: Store<IState>,\n    private separateWindowService: SeparateWindowService,\n  ) {\n    this.store.state.subscribe(\n      state => { this.state = state; }\n    );\n  }\n\n  public run(navigationInstruction: NavigationInstruction, next: any): any {\n    if(navigationInstruction.getAllInstructions().some((i: any) => !i.config.settings.public)) {\n      const isLoggedIn = this.state?.isLoggedIn;\n      if(!isLoggedIn) {\n        return next.cancel(new RedirectToRoute('login', { ref: navigationInstruction.fragment }));\n      }\n      const role = this.state?.currentRole?.role;\n      if(navigationInstruction.getAllInstructions().some((i: any) => i.config.settings.limitAccess && !i.config.settings.limitAccess.includes(role))) {\n        return next.cancel(new RedirectToRoute('error/404'));\n      }\n    }\n\n    const activeDistinarRequired = !!navigationInstruction.config.settings?.activeLectureRequired;\n\n    if(activeDistinarRequired && this.state?.distinarConnectionData == null) {\n      return next.cancel();\n    }\n\n    if(\n      !activeDistinarRequired\n      && this.separateWindowService.getSeparateWindowType() == null\n      && this.state?.distinarConnectionData != null\n    ) {\n      return next.cancel(new RedirectToRoute('distinar'));\n    }\n\n    return next();\n  }\n}\n","import { RouterConfiguration } from 'aurelia-router';\nimport { routes } from './routes';\nimport { AuthorizeStep } from './AuthorizeStep';\n\nexport function configureRouter(config: RouterConfiguration): void {\n  config.map(routes);\n  config.options.pushState = true;\n  config.addAuthorizeStep(AuthorizeStep);\n  config.mapUnknownRoutes({ redirect: 'error/404' });\n}\n","import { PLATFORM } from 'aurelia-pal';\nimport { Permission } from 'common/enum/role.enums';\nimport { Config } from 'common/fe-config/config';\nimport { AppUtils } from 'common/utils/AppUtils';\nimport { IRouteConfig } from './IRouteConfig';\n\nexport const routes: Array<IRouteConfig> = [\n  {\n    route: ['', '/', 'home'],\n    name: 'home',\n    moduleId: PLATFORM.moduleName('resources/pages/home-page/home-page'),\n    title: 'pages.home.title',\n    nav: false,\n    settings: {\n      isTopLevel: true,\n    },\n  },\n  {\n    route: ['login'],\n    name: 'login',\n    layoutView: PLATFORM.moduleName('layout-full.html'),\n    moduleId: PLATFORM.moduleName('resources/pages/login-page/login-page'),\n    title: 'pages.login.title',\n    nav: false,\n    settings: { public: true }\n  },\n  {\n    route: ['login/external'],\n    name: 'login/external',\n    layoutView: PLATFORM.moduleName('layout-full.html'),\n    moduleId: PLATFORM.moduleName('resources/pages/login-page/login-page-external'),\n    title: 'pages.login.title',\n    nav: false,\n    settings: { public: true }\n  },\n  {\n    route: ['login/data-protection'],\n    name: 'login/data-protection',\n    layoutView: PLATFORM.moduleName('layout.html'),\n    moduleId: PLATFORM.moduleName('resources/pages/data-protection-page/data-protection-page'),\n    title: 'globals.termsOfUse',\n    nav: false,\n    settings: { public: true }\n  },\n  {\n    route: ['courses'],\n    name: 'courses',\n    moduleId: PLATFORM.moduleName('resources/pages/course-overview-page/course-overview-page'),\n    title: 'pages.courses.title',\n    nav: false,\n    settings: {\n      limitAccess: [Permission.Provider],\n      isTopLevel: true,\n    }\n  },\n  {\n    route: ['events'],\n    name: 'events',\n    moduleId: PLATFORM.moduleName('resources/pages/events-page/events-page'),\n    title: 'pages.events.title',\n    nav: false,\n    settings: {\n      limitAccess: AppUtils.isFrp ? [] : [Permission.Operator, Permission.PowerUser],\n      isTopLevel: true,\n    }\n  },\n  {\n    route: ['course/new'],\n    name: 'courses/new',\n    moduleId: PLATFORM.moduleName('resources/pages/course-new-course-page/course-new-course-page'),\n    title: 'pages.course.title',\n    nav: false,\n    settings: {\n      limitAccess: [Permission.Provider]\n    }\n  },\n  {\n    route: ['course/:id/:subPage?'],\n    name: 'courses/id',\n    moduleId: PLATFORM.moduleName('resources/pages/course-page/course-page'),\n    title: 'pages.course.title',\n    nav: false,\n    settings: {\n      limitAccess: [Permission.Provider]\n    }\n  },\n  {\n    route: ['tenants'],\n    name: 'tenants',\n    moduleId: PLATFORM.moduleName('resources/pages/tenants-overview-page/tenants-overview-page'),\n    title: 'pages.tenants.title',\n    nav: false,\n    settings: {\n      limitAccess: [Permission.Provider],\n      isTopLevel: true,\n    }\n  },\n  {\n    route: ['tenants/:id'],\n    name: 'tenants/id',\n    moduleId: PLATFORM.moduleName('resources/pages/tenant-page/tenant-page'),\n    title: 'pages.tenant.title',\n    nav: false,\n    settings: {\n      limitAccess: [Permission.Provider]\n    }\n  },\n  {\n    route: ['tenants/:tenantId/operator/:userId'],\n    name: 'tenants/id/operator/id',\n    moduleId: PLATFORM.moduleName('resources/pages/user-editor-page/user-editor-page'),\n    title: 'pages.userEditor.title',\n    nav: false,\n    settings: {\n      limitAccess: [Permission.Provider]\n    }\n  },\n  {\n    route: ['employees'],\n    name: 'employees',\n    moduleId: PLATFORM.moduleName('resources/pages/employees-page/employees-page'),\n    title: 'pages.employees.title',\n    nav: false,\n    settings: {\n      limitAccess: AppUtils.isFrp ? [] : [Permission.Operator],\n      isTopLevel: true,\n    }\n  },\n  {\n    route: ['employees/:id'],\n    name: 'employees/id',\n    moduleId: PLATFORM.moduleName('resources/pages/employee-page/employee-page'),\n    title: 'pages.employee.title',\n    nav: false,\n    settings: {\n      limitAccess: AppUtils.isFrp ? [] : [Permission.Operator]\n    }\n  },\n  {\n    route: ['addresses'],\n    name: 'addresses',\n    moduleId: PLATFORM.moduleName('resources/pages/tenant-addresses-page/tenant-addresses-page'),\n    title: 'pages.tenantAddresses.title',\n    nav: false,\n    settings: {\n      limitAccess: AppUtils.isFrp ? [] : [Permission.Operator],\n      isTopLevel: true,\n    }\n  },\n  {\n    route: ['student-list/:tab?/:tenantId?'],\n    name: 'tenant-student-list',\n    moduleId: PLATFORM.moduleName('resources/pages/tenant-student-list-page/tenant-student-list-page'),\n    title: 'pages.tenantStudentList.title',\n    layoutView: PLATFORM.moduleName('layout-no-container.html'),\n    nav: false,\n    settings: {\n      limitAccess: AppUtils.isFrp ? [Permission.Provider] : [Permission.Provider, Permission.Operator, Permission.PowerUser, Permission.Lecturer],\n      isTopLevel: true,\n    }\n  },\n  {\n    route: ['group-list'],\n    name: 'tenant-group-list',\n    moduleId: PLATFORM.moduleName('resources/pages/tenant-group-list-page/tenant-group-list-page'),\n    title: 'pages.tenantgrouplist.title',\n    settings: {\n      limitAccess: AppUtils.isFrp ? [] : [Permission.Provider, Permission.Operator, Permission.PowerUser, Permission.Lecturer],\n      isTopLevel: true,\n    }\n  },\n  {\n    route: ['blocklist'],\n    name: 'blocklist',\n    moduleId: PLATFORM.moduleName('resources/pages/blocklist-page/blocklist-page'),\n    title: 'pages.blocklist.title',\n    nav: false,\n    settings: {\n      limitAccess: [Permission.Provider],\n      isTopLevel: true,\n    }\n  },\n  {\n    route: ['billing-csv-export'],\n    name: 'billing-csv-export',\n    moduleId: PLATFORM.moduleName('resources/pages/billing-csv-export-page/billing-csv-export-page'),\n    title: 'pages.billing-csv-export.title',\n    nav: false,\n    settings: {\n      limitAccess: AppUtils.isFrp ? [] : [Permission.Provider, Permission.Operator],\n      isTopLevel: true,\n    }\n  },\n  {\n    route: ['student-invitations/:id/:tab/:accessCodeId?'],\n    name: 'student-invitations/id/tab',\n    moduleId: PLATFORM.moduleName('resources/pages/student-invitations-page/student-invitations-page'),\n    title: 'pages.studentInvitations.title',\n    nav: false,\n    settings: {\n      scrollToTop: true,\n      limitAccess: AppUtils.isFrp ? [Permission.Provider] : [Permission.Provider, Permission.Operator, Permission.PowerUser, Permission.Lecturer],\n    }\n  },\n  {\n    route: ['messages/:chatRoomId?'],\n    name: 'messages/id',\n    moduleId: PLATFORM.moduleName('resources/pages/messages-page/messages-page'),\n    title: 'pages.messages.title',\n    nav: false,\n    settings: {\n      isTopLevel: true,\n      limitAccess: AppUtils.isFrp ? [Permission.Provider] : [Permission.Provider, Permission.Operator, Permission.PowerUser, Permission.Lecturer],\n    }\n  },\n  {\n    route: ['settings'],\n    name: 'settings',\n    moduleId: PLATFORM.moduleName('resources/pages/settings-page/settings-page'),\n    title: 'pages.settings.title',\n    nav: false,\n    settings: {\n      isTopLevel: true,\n      limitAccess: AppUtils.isFrp ? [Permission.Provider] : [Permission.Provider, Permission.Operator, Permission.PowerUser, Permission.Lecturer],\n    }\n  },\n  {\n    route: ['invites'],\n    name: 'invites',\n    moduleId: PLATFORM.moduleName('resources/pages/invites-page/invites-page'),\n    title: 'pages.invites.title',\n    nav: false,\n    settings: {\n      isTopLevel: true,\n      limitAccess: [Permission.Provider, Permission.Operator, Permission.PowerUser, Permission.Lecturer],\n    }\n  },\n  ...Config().statistics.enabled ? [\n    {\n      route: ['statistics-events'],\n      name: 'statistics-events',\n      moduleId: PLATFORM.moduleName('resources/pages/statistics-events-page/statistics-events-page'),\n      title: 'pages.statisticsEvents.title',\n      nav: false,\n      settings: {\n        isTopLevel: true,\n        limitAccess: [Permission.Provider, Permission.Operator],\n      }\n    },\n    {\n      route: ['statistics-testexam'],\n      name: 'statistics-testexam',\n      moduleId: PLATFORM.moduleName('resources/pages/statistics-testexam-page/statistics-testexam-page'),\n      title: 'pages.statisticsTestexams.title',\n      nav: false,\n      settings: {\n        isTopLevel: true,\n        limitAccess: [Permission.Provider, Permission.Operator],\n      }\n    },\n    ...AppUtils.isFrp ? [{\n      route: ['stats/statistics-assessments'],\n      name: 'statistics-assessments',\n      moduleId: PLATFORM.moduleName('resources/pages/statistics-assessments-page/statistics-assessments-page'),\n      title: 'pages.assessment-stats.title',\n      nav: false,\n      settings: {\n        isTopLevel: true,\n        limitAccess: [Permission.Provider],\n      }\n    }] : [],\n    {\n      route: ['stats/statistics-course-progress'],\n      name: 'statistics-course-progress',\n      moduleId: PLATFORM.moduleName('resources/pages/statistics-course-progress-page/statistics-course-progress-page'),\n      title: 'pages.statisticsCourseProgress.title',\n      nav: false,\n      settings: {\n        isTopLevel: true,\n        limitAccess: [Permission.Provider],\n      }\n    },\n    {\n      route: ['stats/statistics-access-codes'],\n      name: 'statistics-access-codes',\n      moduleId: PLATFORM.moduleName('resources/pages/statistics-access-codes-page/statistics-access-codes-page'),\n      title: 'pages.statisticsAccessCodes.title',\n      nav: false,\n      settings: {\n        isTopLevel: true,\n        limitAccess: [Permission.Provider],\n      }\n    },\n  ] : [],\n  {\n    route: ['user-settings'],\n    name: 'user-settings',\n    moduleId: PLATFORM.moduleName('resources/pages/user-settings-page/user-settings-page'),\n    title: 'pages.userSettings.title',\n    nav: false,\n    settings: {\n      isTopLevel: true,\n      limitAccess: [Permission.Provider, Permission.Operator, Permission.PowerUser, Permission.Lecturer],\n    }\n  },\n  {\n    route: ['tenant-settings'],\n    name: 'tenant-settings',\n    moduleId: PLATFORM.moduleName('resources/pages/tenant-settings-page/tenant-settings-page'),\n    title: 'pages.tenantSettings.title',\n    nav: false,\n    settings: {\n      isTopLevel: true,\n      limitAccess: AppUtils.isFrp ? [Permission.Provider] : [Permission.Provider, Permission.Operator, Permission.PowerUser, Permission.Lecturer],\n    }\n  },\n  {\n    route: ['logs'],\n    name: 'logs',\n    moduleId: PLATFORM.moduleName('resources/pages/logs-page/logs-page'),\n    title: 'pages.logs.title',\n    nav: false,\n    settings: {\n      isTopLevel: true,\n      limitAccess: AppUtils.isFrp ? [Permission.Provider] : [Permission.Provider, Permission.Operator, Permission.PowerUser, Permission.Lecturer],\n    }\n  },\n  {\n    route: ['myaccount/tfa'],\n    name: 'myaccount/tfa',\n    moduleId: PLATFORM.moduleName('resources/pages/tfa-page/tfa-page'),\n    title: 'pages.tfa.title',\n    nav: false,\n    settings: {\n      isTopLevel: true,\n    }\n  },\n  {\n    route: ['myaccount/link'],\n    name: 'myaccount/link',\n    moduleId: PLATFORM.moduleName('resources/pages/link-accounts-page/link-accounts-page'),\n    title: 'pages.linkAccounts.title',\n    nav: false,\n    settings: {\n      isTopLevel: true,\n    }\n  },\n  {\n    route: ['error/404'],\n    name: 'error/404',\n    layoutView: PLATFORM.moduleName('layout-full.html'),\n    moduleId: PLATFORM.moduleName('resources/pages/error/not-found-page'),\n    title: 'pages.error.404.title',\n    nav: false,\n    settings: { public: true }\n  },\n  {\n    route: ['error/login'],\n    name: 'error/login',\n    layoutView: PLATFORM.moduleName('layout-full.html'),\n    moduleId: PLATFORM.moduleName('resources/pages/error/login-error-page'),\n    title: 'pages.login.title',\n    nav: false,\n    settings: { public: true }\n  },\n  {\n    route: ['error/link'],\n    name: 'error/link',\n    moduleId: PLATFORM.moduleName('resources/pages/error/link-error-page'),\n    title: 'pages.linkAccounts.title',\n    nav: false,\n    settings: { public: false }\n  },\n  {\n    route: ['password-reset'],\n    name: 'password-reset',\n    layoutView: PLATFORM.moduleName('layout-full.html'),\n    moduleId: PLATFORM.moduleName('resources/pages/password-reset-page/password-reset-page'),\n    title: 'pages.passwordReset.title',\n    nav: false,\n    settings: { public: true }\n  },\n  {\n    route: ['gallery'],\n    name: 'gallery',\n    moduleId: PLATFORM.moduleName('resources/pages/gallery-page/gallery-page'),\n    title: 'pages.gallery.title',\n    nav: false,\n    settings: {\n      isTopLevel: true,\n      limitAccess: AppUtils.isFrp ? [Permission.Provider] : [Permission.Provider, Permission.Operator, Permission.PowerUser, Permission.Lecturer],\n    },\n  },\n  {\n    route: ['lecturer-events'],\n    name: 'lecturer-events',\n    moduleId: PLATFORM.moduleName('resources/pages/lecturer-events-page/lecturer-events-page'),\n    title: 'pages.lecturerEvents.title',\n    nav: false,\n    settings: {\n      limitAccess: AppUtils.isFrp ? [] : [Permission.Operator, Permission.PowerUser, Permission.Lecturer],\n      isTopLevel: true,\n    }\n  },\n  {\n    route: ['distinar'],\n    name: 'distinar',\n    layoutView: PLATFORM.moduleName('layout-distinar.html'),\n    layoutViewModel: PLATFORM.moduleName('layout-distinar'),\n    moduleId: PLATFORM.moduleName('resources/pages/distinar-page/distinar-page'),\n    title: 'pages.distinar.title',\n    nav: false,\n    settings: {\n      activeLectureRequired: true,\n      limitAccess: AppUtils.isFrp ? [] : [Permission.Operator, Permission.PowerUser, Permission.Lecturer],\n      isTopLevel: true,\n    }\n  },\n  {\n    route: ['distinar/separate-window'],\n    name: 'distinar/separate-window',\n    moduleId: PLATFORM.moduleName('resources/pages/distinar-separate-window/distinar-separate-window'),\n    title: 'pages.lectureSeparateWindow.title',\n    nav: false,\n    layoutView: PLATFORM.moduleName('separate-window-layout.html'),\n    settings: {\n      activeLectureRequired: true,\n      limitAccess: AppUtils.isFrp ? [] : [Permission.Operator, Permission.PowerUser, Permission.Lecturer],\n    }\n  },\n  {\n    route: ['quiz-attempt/:quizAttemptId'],\n    name: 'quiz-attempt/id',\n    moduleId: PLATFORM.moduleName('resources/pages/quiz-attempt-page/quiz-attempt-page'),\n    title: 'pages.quiz-attempt-page.title',\n    nav: false,\n    settings: {\n      activeLectureRequired: false,\n      limitAccess: [Permission.Provider, Permission.Operator, Permission.PowerUser, Permission.Lecturer],\n      scrollToTop: true,\n    }\n  },\n  {\n    route: ['training-result/:invitationId/:quizSessionId/'],\n    name: 'training-result/id/id',\n    moduleId: PLATFORM.moduleName('resources/pages/training-result-page/training-result-page'),\n    title: 'pages.training-result-page.title',\n    nav: false,\n    settings: {\n      activeLectureRequired: false,\n      limitAccess: [Permission.Provider, Permission.Operator, Permission.PowerUser, Permission.Lecturer],\n      scrollToTop: true,\n    }\n  },\n  {\n    route: ['event-attendants/:eventId'],\n    name: 'event-attendants/id',\n    moduleId: PLATFORM.moduleName('resources/pages/tenant-event-attendants-page/tenant-event-attendants-page'),\n    title: 'pages.event-attendants.routeTitle',\n    nav: false,\n    settings: {\n      activeLectureRequired: false,\n      limitAccess: AppUtils.isFrp ? [] : [Permission.Operator, Permission.Lecturer, Permission.PowerUser]\n    },\n  },\n  {\n    route: ['group-events/:courseGroupId'],\n    name: 'group-events/id',\n    moduleId: PLATFORM.moduleName('resources/pages/tenant-group-events-page/tenant-group-events-page'),\n    title: 'pages.group-events.routeTitle',\n    nav: false,\n    settings: {\n      activeLectureRequired: false,\n      limitAccess: AppUtils.isFrp ? [] : [Permission.Operator, Permission.PowerUser]\n    }\n  },\n  {\n    route: ['presentations/:presentationId?'],\n    name: 'presentations/id',\n    layoutView: PLATFORM.moduleName('layout-fill-no-container.html'),\n    moduleId: PLATFORM.moduleName('resources/pages/presentation-slides-page/presentation-slides-page'),\n    title: 'pages.presentation-slides.title',\n    nav: false,\n    settings: {\n      activeLectureRequired: false,\n      limitAccess: AppUtils.isFrp ? [Permission.Provider] : [Permission.Lecturer, Permission.PowerUser, Permission.Operator, Permission.Provider],\n      isTopLevel: true,\n    }\n  },\n  {\n    route: ['presentation-overview'],\n    name: 'presentation-overview',\n    moduleId: PLATFORM.moduleName('resources/pages/presentation-overview-page/presentation-overview-page'),\n    title: 'pages.presentation-overview.title',\n    nav: false,\n    settings: {\n      activeLectureRequired: false,\n      limitAccess: AppUtils.isFrp ? [Permission.Provider] : [Permission.Lecturer, Permission.PowerUser, Permission.Operator, Permission.Provider],\n      isTopLevel: true,\n    }\n  },\n  {\n    route: ['quiz-templates'],\n    name: 'quiz-templates',\n    moduleId: PLATFORM.moduleName('resources/pages/quiz-templates-page/quiz-templates-page'),\n    title: 'pages.quiz-templates.title',\n    nav: false,\n    settings: {\n      activeLectureRequired: false,\n      limitAccess: AppUtils.isFrp ? [Permission.Provider] : [Permission.Lecturer, Permission.Provider, Permission.Operator, Permission.PowerUser],\n      isTopLevel: true,\n    }\n  },\n  {\n    route: ['quiz-template/:quizTemplateId'],\n    name: 'quiz-template/id',\n    moduleId: PLATFORM.moduleName('resources/pages/quiz-template-page/quiz-template-page'),\n    title: 'pages.quiz-templates.title',\n    nav: false,\n    settings: {\n      activeLectureRequired: false,\n      limitAccess: AppUtils.isFrp ? [Permission.Provider] : [Permission.Lecturer, Permission.Provider, Permission.Operator, Permission.PowerUser]\n    }\n  },\n  {\n    route: ['block-overview-page/:courseId'],\n    name: 'block-overview/id',\n    moduleId: PLATFORM.moduleName('resources/pages/block-overview-page/block-overview-page'),\n    title: 'pages.block-overview.routeTitle',\n    nav: false,\n    settings: {\n      limitAccess: [Permission.Provider]\n    }\n  },\n  {\n    route: ['announcements'],\n    name: 'announcements',\n    moduleId: PLATFORM.moduleName('resources/pages/announcements-page/announcements-page'),\n    title: 'pages.announcements.routeTitle',\n    nav: false,\n    settings: {\n      limitAccess: AppUtils.isFrp ? [Permission.Provider] : [Permission.Provider, Permission.Operator],\n      isTopLevel: true,\n    }\n  },\n  {\n    route: ['uce-demo'],\n    name: 'uce-demo',\n    moduleId: PLATFORM.moduleName('resources/pages/uce-demo-page/uce-demo-page'),\n    title: 'UCE DEMO',\n    nav: false,\n  },\n  {\n    route: ['content-editor/presentation/:presentationId'],\n    name: 'content-editor-presentation',\n    layoutView: PLATFORM.moduleName('layout-empty.html'),\n    moduleId: PLATFORM.moduleName('resources/pages/content-editor/content-editor'),\n    title: 'pages.content-editor.presentationRouteTitle',\n    nav: false,\n    settings: {\n      limitAccess: AppUtils.isFrp ? [Permission.Provider] : [Permission.Operator, Permission.PowerUser, Permission.Lecturer, Permission.Provider],\n      isTopLevel: true,\n    }\n  },\n  {\n    route: ['content-editor/course/:courseId'],\n    name: 'content-editor-course',\n    layoutView: PLATFORM.moduleName('layout-empty.html'),\n    moduleId: PLATFORM.moduleName('resources/pages/content-editor/content-editor'),\n    title: 'pages.content-editor.courseRouteTitle',\n    nav: false,\n    settings: {\n      limitAccess: [Permission.Provider],\n      isTopLevel: true,\n    },\n  },\n  {\n    route: ['content-editor/course/:courseId/page/:pageId'],\n    name: 'content-editor-course-page',\n    layoutView: PLATFORM.moduleName('layout-empty.html'),\n    moduleId: PLATFORM.moduleName('resources/pages/content-editor/content-editor'),\n    title: 'pages.content-editor.courseRouteTitle',\n    nav: false,\n    settings: {\n      limitAccess: [Permission.Provider],\n      isTopLevel: true,\n    },\n  },\n  {\n    route: ['content-editor/preview/frame'],\n    name: 'content-editor-course-preview-frame',\n    layoutView: PLATFORM.moduleName('layout-empty.html'),\n    moduleId: PLATFORM.moduleName('resources/pages/content-editor-preview-frame/content-editor-preview-frame'),\n    title: 'pages.content-editor.coursePreviewRouteTitle',\n    nav: false,\n    settings: {\n      limitAccess: [Permission.Provider],\n      helpDisabled: true\n    }\n  },\n  {\n    route: ['content-editor/preview'],\n    name: 'content-editor-course-preview-window',\n    layoutView: PLATFORM.moduleName('layout-empty.html'),\n    moduleId: PLATFORM.moduleName('resources/pages/content-editor-preview-window/content-editor-preview-window'),\n    title: 'pages.content-editor.coursePreviewRouteTitle',\n    nav: false,\n    settings: {\n      limitAccess: [Permission.Provider],\n    }\n  },\n  {\n    route: ['presentation/print/:presentationId'],\n    name: 'presentation-print',\n    layoutView: PLATFORM.moduleName('layout-empty.html'),\n    moduleId: PLATFORM.moduleName('resources/pages/presentation-print-page/presentation-print-page'),\n    title: 'pages.course.presentationPrintRouteTitle',\n    nav: false,\n    settings: {\n      limitAccess: AppUtils.isFrp ? [Permission.Provider] : [Permission.Operator, Permission.PowerUser, Permission.Lecturer, Permission.Provider],\n      helpDisabled: true\n    }\n  },\n  {\n    route: ['avatar-component-sets'],\n    name: 'avatar-component-sets',\n    moduleId: PLATFORM.moduleName('resources/pages/avatar-component-sets-page/avatar-component-sets-page'),\n    title: 'pages.avatar-component-sets.routeTitle',\n    nav: false,\n    settings: {\n      limitAccess: [Permission.Provider],\n      isTopLevel: true,\n    }\n  },\n  {\n    route: ['avatar-component-sets/:setId'],\n    name: 'avatar-component-set',\n    moduleId: PLATFORM.moduleName('resources/pages/avatar-component-set-page/avatar-component-set-page'),\n    title: 'pages.avatar-component-set.routeTitle',\n    nav: false,\n    settings: {\n      limitAccess: [Permission.Provider],\n    }\n  },\n  ...Config().syncApi.enabled ? [\n    {\n      route: ['external-api'],\n      name: 'external-api',\n      moduleId: PLATFORM.moduleName('resources/pages/external-api-page/external-api-page'),\n      title: 'pages.external-api.title',\n      nav: false,\n      settings: {\n        limitAccess: [Permission.Provider, Permission.Operator, Permission.PowerUser],\n        isTopLevel: true,\n      },\n    },\n  ] : [],\n  {\n    route: ['administrative-staff'],\n    name: 'administrative-staff',\n    moduleId: PLATFORM.moduleName('resources/pages/administrative-staff-page/administrative-staff-page'),\n    title: 'pages.administrative-staff.title',\n    nav: false,\n    settings: {\n      limitAccess: [Permission.Provider],\n      isTopLevel: true,\n    }\n  },\n  {\n    route: ['page-help'],\n    name: 'page-help',\n    moduleId: PLATFORM.moduleName('resources/pages/page-help-overview-page/page-help-overview-page'),\n    title: 'pages.pageHelp.title',\n    nav: false,\n    settings: {\n      limitAccess: [Permission.Provider],\n      isTopLevel: true,\n    }\n  },\n  {\n    route: ['page-help-edit'],\n    name: 'page-help-edit',\n    moduleId: PLATFORM.moduleName('resources/pages/page-help-edit-page/page-help-edit-page'),\n    title: 'pages.pageHelp.editTitle',\n    nav: false,\n    settings: {\n      limitAccess: [Permission.Provider]\n    }\n  },\n  {\n    route: ['share'],\n    name: 'media-share',\n    moduleId: PLATFORM.moduleName('resources/pages/media-share-page/media-share-page'),\n    title: 'globals.shares',\n    nav: false,\n    settings: {\n      activeLectureRequired: false,\n      limitAccess: AppUtils.isFrp ? [Permission.Provider] : [Permission.Lecturer, Permission.PowerUser, Permission.Operator, Permission.Provider],\n      isTopLevel: true,\n    },\n  },\n  {\n    route: ['group-shares/:courseGroupId'],\n    name: 'group-shares/id',\n    moduleId: PLATFORM.moduleName('resources/pages/tenant-group-media-share-page/tenant-group-media-share-page'),\n    title: 'globals.shares',\n    nav: false,\n    settings: {\n      activeLectureRequired: false,\n      limitAccess: AppUtils.isFrp ? [] : [Permission.PowerUser, Permission.Operator, Permission.Provider],\n    }\n  },\n  {\n    route: ['tenant-courses'],\n    name: 'tenant-courses',\n    moduleId: PLATFORM.moduleName('resources/pages/tenant-courses-page/tenant-courses-page'),\n    title: 'globals.assignedCourses',\n    nav: false,\n    settings: {\n      limitAccess: AppUtils.isFrp ? [] : [Permission.Operator],\n      isTopLevel: true,\n    },\n  },\n  ...Config().learningJourney.enabled ? [\n    {\n      route: ['skill-matrix'],\n      name: 'skill-matrix',\n      moduleId: PLATFORM.moduleName('resources/pages/skill-matrix-page/skill-matrix-page'),\n      title: 'pages.skill-matrix.title',\n      nav: false,\n      settings: {\n        limitAccess: [Permission.Operator],\n        isTopLevel: true,\n      },\n    },\n    {\n      route: ['learning-journeys'],\n      name: 'learning-journeys',\n      moduleId: PLATFORM.moduleName('resources/pages/learning-journeys-page/learning-journeys-page'),\n      title: 'globals.learningJourneys',\n      nav: false,\n      settings: {\n        limitAccess: [Permission.Operator],\n        isTopLevel: true,\n      },\n    },\n    {\n      route: ['learning-journey/:learningJourneyId/:tab'],\n      name: 'learning-journey/id/tab',\n      moduleId: PLATFORM.moduleName('resources/pages/learning-journey-edit-page/learning-journey-edit-page'),\n      title: 'pages.learning-journey-edit.title',\n      nav: false,\n      settings: {\n        limitAccess: [Permission.Operator]\n      },\n    },\n    {\n      route: ['skills'],\n      name: 'skills',\n      moduleId: PLATFORM.moduleName('resources/pages/skills-page/skills-page'),\n      title: 'globals.skills',\n      nav: false,\n      settings: {\n        limitAccess: [Permission.Operator],\n        isTopLevel: true,\n      },\n    },\n    {\n      route: ['skills-edit/:skillId?'],\n      name: 'skills-edit/id',\n      moduleId: PLATFORM.moduleName('resources/pages/skills-edit-page/skills-edit-page'),\n      title: 'globals.skill',\n      nav: false,\n      settings: {\n        limitAccess: [Permission.Operator]\n      },\n    },\n    {\n      route: ['tenant-courses/:courseId/:tab'],\n      name: 'tenant-course/id/tab',\n      moduleId: PLATFORM.moduleName('resources/pages/tenant-course-page/tenant-course-page'),\n      title: 'globals.course',\n      nav: false,\n      settings: {\n        limitAccess: AppUtils.isFrp ? [] : [Permission.Operator]\n      },\n    },\n  ] : [],\n  ...AppUtils.isFrp ? [\n    {\n      route: ['user-administration'],\n      name: 'user-administration',\n      moduleId: PLATFORM.moduleName('resources/pages/user-administration-page/user-administration-page'),\n      title: 'pages.user-administration.title',\n      nav: false,\n      settings: {\n        limitAccess: [Permission.Operator, Permission.PowerUser],\n        isTopLevel: true,\n      },\n    },\n    {\n      route: ['teacher-registrations'],\n      name: 'teacher-registrations',\n      moduleId: PLATFORM.moduleName('resources/pages/teacher-registrations-page/teacher-registrations-page'),\n      title: 'pages.teacher-registrations.title',\n      nav: false,\n      settings: {\n        limitAccess: [Permission.Operator, Permission.PowerUser],\n        isTopLevel: true,\n      },\n    },\n    {\n      route: ['user-details'],\n      name: 'user-details/id',\n      moduleId: PLATFORM.moduleName('resources/pages/user-details-page/user-details-page'),\n      title: 'pages.user-details.title',\n      nav: false,\n      settings: {\n        limitAccess: [Permission.Operator, Permission.PowerUser],\n      },\n    },\n    {\n      route: ['teacher-registration-details'],\n      name: 'teacher-registration-details/id',\n      moduleId: PLATFORM.moduleName('resources/pages/teacher-registration-details-page/teacher-registration-details-page'),\n      title: 'pages.teacher-registration-details.title',\n      nav: false,\n      settings: {\n        limitAccess: [Permission.Operator, Permission.PowerUser],\n      },\n    },\n    {\n      route: ['assessments'],\n      name: 'assessments',\n      moduleId: PLATFORM.moduleName('resources/pages/assessments-page/assessments-page'),\n      title: 'pages.assessments.title',\n      nav: false,\n      settings: {\n        limitAccess: [Permission.Lecturer],\n        isTopLevel: true,\n      },\n    },\n    {\n      route: ['assessment-details'],\n      name: 'assessment-details/id',\n      moduleId: PLATFORM.moduleName('resources/pages/assessment-details-page/assessment-details-page'),\n      title: 'pages.assessment-details.title',\n      nav: false,\n      settings: {\n        limitAccess: [Permission.Lecturer],\n      },\n    }, {\n      route: ['assessment-code-details'],\n      name: 'assessment-code-details/id/id',\n      moduleId: PLATFORM.moduleName('resources/pages/assessment-code-details-page/assessment-code-details-page'),\n      title: 'globals.assessment',\n      nav: false,\n      settings: {\n        limitAccess: [Permission.Lecturer],\n      },\n    }, {\n      route: ['teacher-registration'],\n      name: 'teacher-registration',\n      layoutView: PLATFORM.moduleName('layout-full.html'),\n      moduleId: PLATFORM.moduleName('resources/pages/teacher-registration-page/teacher-registration-page'),\n      title: 'pages.teacher-registration.title',\n      nav: false,\n      settings: { public: true }\n    }, {\n      route: ['assessment-code-protocol-print'],\n      name: 'assessment-code-protocol-print/id',\n      layoutView: PLATFORM.moduleName('layout-empty.html'),\n      moduleId: PLATFORM.moduleName('resources/pages/assessment-code-protocol-print-page/assessment-code-protocol-print-page'),\n      title: 'pages.assessment-code-details.assessmentProtocol',\n      nav: false,\n      settings: {\n        limitAccess: [Permission.Lecturer],\n        helpDisabled: true\n      }\n    }, {\n      route: ['assessment-code-print'],\n      name: 'assessment-code-print',\n      layoutView: PLATFORM.moduleName('layout-empty.html'),\n      moduleId: PLATFORM.moduleName('resources/pages/assessment-code-print-page/assessment-code-print-page'),\n      title: 'pages.assessment-details.downloadCodesPdf',\n      nav: false,\n      settings: {\n        limitAccess: [Permission.Lecturer],\n        helpDisabled: true\n      }\n    }\n  ] : [],\n];\n"],"names":[],"sourceRoot":""}