Introduce standalone page (#19675)
Add support for standalone pages: a new `PageLayout` type (`STANDALONE_PAGE`) that can be rendered independently at `/page/:pageLayoutId`, not tied to any record or object context. - New `STANDALONE_PAGE` page layout type - New `PAGE_LAYOUT` navigation menu item type: adds a `pageLayoutId` foreign key to `NavigationMenuItemEntity`, allowing sidebar items to link directly to standalone pages - New `GLOBAL_OBJECT_CONTEXT` command menu availability type: separates object-context-dependent commands (Create Record, Import, Export, See Deleted, Create View, Hide Deleted) from truly global ones, so standalone pages only show relevant commands - Frontend routing & rendering: adds a `/page/:pageLayoutId` route with its own page component, header, and command menu - Widget rendering refactor - Instance commands: two fast 1.22 migrations: `pageLayoutId` column + `STANDALONE_PAGE` enum, and `GLOBAL_OBJECT_CONTEXT` availability type enum - Workspace command: backfills existing command menu items from `GLOBAL` to `GLOBAL_OBJECT_CONTEXT` where appropriate - Dev seeds: adds a sample "Star History" standalone page with an iframe widget for local development
This commit is contained in:
+1
@@ -9,6 +9,7 @@ const AVAILABILITY_TYPE_MAP: Record<
|
||||
CommandMenuItemAvailabilityType
|
||||
> = {
|
||||
GLOBAL: CommandMenuItemAvailabilityType.GLOBAL,
|
||||
GLOBAL_OBJECT_CONTEXT: CommandMenuItemAvailabilityType.GLOBAL_OBJECT_CONTEXT,
|
||||
RECORD_SELECTION: CommandMenuItemAvailabilityType.RECORD_SELECTION,
|
||||
FALLBACK: CommandMenuItemAvailabilityType.FALLBACK,
|
||||
};
|
||||
|
||||
+2
@@ -27,6 +27,8 @@ export const fromNavigationMenuItemManifestToUniversalFlatNavigationMenuItem =
|
||||
navigationMenuItemManifest.folderUniversalIdentifier ?? null,
|
||||
targetObjectMetadataUniversalIdentifier:
|
||||
navigationMenuItemManifest.targetObjectUniversalIdentifier ?? null,
|
||||
pageLayoutUniversalIdentifier:
|
||||
navigationMenuItemManifest.pageLayoutUniversalIdentifier ?? null,
|
||||
targetRecordId: null,
|
||||
userWorkspaceId: null,
|
||||
createdAt: now,
|
||||
|
||||
Reference in New Issue
Block a user