import { createElement, lazy } from "react"; import type { PlatformWebModule } from "@govoplan/core-webui"; import { generatedTranslations } from "./i18n/generatedTranslations"; import "./styles/scheduling.css"; const SchedulingPage = lazy(() => import("./features/scheduling/SchedulingPage")); const SchedulingPublicPage = lazy(() => import("./features/scheduling/SchedulingPublicPage")); const scheduleRead = ["scheduling:schedule:read"]; export const schedulingModule: PlatformWebModule = { id: "scheduling", label: "Scheduling", version: "0.1.11", dependencies: ["poll"], optionalDependencies: ["access", "calendar", "mail", "notifications", "workflow", "appointments", "addresses"], translations: generatedTranslations, navItems: [{ to: "/scheduling", label: "Scheduling", iconName: "calendar-clock", anyOf: scheduleRead, order: 56 }], routes: [ { path: "/scheduling", anyOf: scheduleRead, order: 56, render: ({ settings, auth }) => createElement(SchedulingPage, { settings, auth }) } ], publicRoutes: [ { path: "/scheduling/public/:requestId/:token", order: 10, render: ({ settings, auth }) => createElement(SchedulingPublicPage, { settings, auth }) } ] }; export default schedulingModule;