feat(calendar): define picker UI capability

This commit is contained in:
2026-07-20 16:57:17 +02:00
parent 15596f0742
commit 78b4afdec4
2 changed files with 19 additions and 1 deletions

View File

@@ -5,6 +5,7 @@ const packageByModule = {
admin: "@govoplan/admin-webui", admin: "@govoplan/admin-webui",
addresses: "@govoplan/addresses-webui", addresses: "@govoplan/addresses-webui",
audit: "@govoplan/audit-webui", audit: "@govoplan/audit-webui",
calendar: "@govoplan/calendar-webui",
campaigns: "@govoplan/campaign-webui", campaigns: "@govoplan/campaign-webui",
dashboard: "@govoplan/dashboard-webui", dashboard: "@govoplan/dashboard-webui",
docs: "@govoplan/docs-webui", docs: "@govoplan/docs-webui",
@@ -25,6 +26,7 @@ const cases = [
{ name: "access-with-admin", modules: ["access", "admin"] }, { name: "access-with-admin", modules: ["access", "admin"] },
{ name: "admin-with-policy-and-audit", modules: ["access", "admin", "policy", "audit"] }, { name: "admin-with-policy-and-audit", modules: ["access", "admin", "policy", "audit"] },
{ name: "dashboard-only", modules: ["dashboard"] }, { name: "dashboard-only", modules: ["dashboard"] },
{ name: "calendar-only", modules: ["calendar"] },
{ name: "files-only", modules: ["files"] }, { name: "files-only", modules: ["files"] },
{ name: "mail-only", modules: ["mail"] }, { name: "mail-only", modules: ["mail"] },
{ name: "organizations-only", modules: ["organizations"] }, { name: "organizations-only", modules: ["organizations"] },
@@ -35,7 +37,7 @@ const cases = [
{ name: "scheduling-only", modules: ["scheduling"] }, { name: "scheduling-only", modules: ["scheduling"] },
{ name: "scheduling-with-calendar", modules: ["scheduling", "calendar"] }, { name: "scheduling-with-calendar", modules: ["scheduling", "calendar"] },
{ name: "docs-and-ops", modules: ["access", "docs", "ops"] }, { name: "docs-and-ops", modules: ["access", "docs", "ops"] },
{ name: "full-product", modules: ["access", "admin", "addresses", "policy", "audit", "dashboard", "organizations", "idm", "campaigns", "files", "mail", "docs", "ops", "scheduling"] } { name: "full-product", modules: ["access", "admin", "addresses", "policy", "audit", "dashboard", "organizations", "idm", "campaigns", "files", "mail", "docs", "ops", "calendar", "scheduling"] }
]; ];
const npmExec = process.env.npm_execpath; const npmExec = process.env.npm_execpath;

View File

@@ -402,6 +402,22 @@ export type OrganizationFunctionPickerUiCapability = {
renderLabel?: (context: OrganizationFunctionLabelContext) => ReactNode; renderLabel?: (context: OrganizationFunctionLabelContext) => ReactNode;
}; };
export type CalendarPickerProps = PlatformRouteContext & {
value: string;
onChange: (calendarId: string) => void;
id?: string;
name?: string;
label?: ReactNode;
emptyLabel?: ReactNode;
disabled?: boolean;
required?: boolean;
className?: string;
};
export type CalendarPickerUiCapability = {
CalendarPicker: ComponentType<CalendarPickerProps>;
};
export type MailSecurity = "plain" | "tls" | "starttls"; export type MailSecurity = "plain" | "tls" | "starttls";
export type MailProfileScope = "system" | "tenant" | "user" | "group" | "campaign"; export type MailProfileScope = "system" | "tenant" | "user" | "group" | "campaign";