@cratis/scene.blueprint.default 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.storybook/main.ts +32 -0
- package/.storybook/preview.ts +20 -0
- package/ComponentName.ts +60 -0
- package/README.md +204 -0
- package/configuration/ColorScheme.ts +17 -0
- package/configuration/LayoutConfigProvider.tsx +182 -0
- package/configuration/LayoutConfigState.ts +46 -0
- package/configuration/LayoutMode.ts +50 -0
- package/configuration/MenuTheme.ts +24 -0
- package/configuration/index.ts +11 -0
- package/configuration/layoutConfigStorage.ts +102 -0
- package/configuration/layoutConfigTransitions.ts +150 -0
- package/configuration/layoutWrapperClasses.ts +68 -0
- package/defaultBlueprint.ts +66 -0
- package/defaultBlueprintComponents.ts +51 -0
- package/dist/cjs/ComponentName.js +33 -0
- package/dist/cjs/ComponentName.js.map +1 -0
- package/dist/cjs/configuration/ColorScheme.js +23 -0
- package/dist/cjs/configuration/ColorScheme.js.map +1 -0
- package/dist/cjs/configuration/LayoutConfigProvider.js +96 -0
- package/dist/cjs/configuration/LayoutConfigProvider.js.map +1 -0
- package/dist/cjs/configuration/LayoutMode.js +38 -0
- package/dist/cjs/configuration/LayoutMode.js.map +1 -0
- package/dist/cjs/configuration/MenuTheme.js +26 -0
- package/dist/cjs/configuration/MenuTheme.js.map +1 -0
- package/dist/cjs/configuration/layoutConfigStorage.js +85 -0
- package/dist/cjs/configuration/layoutConfigStorage.js.map +1 -0
- package/dist/cjs/configuration/layoutConfigTransitions.js +158 -0
- package/dist/cjs/configuration/layoutConfigTransitions.js.map +1 -0
- package/dist/cjs/configuration/layoutWrapperClasses.js +62 -0
- package/dist/cjs/configuration/layoutWrapperClasses.js.map +1 -0
- package/dist/cjs/defaultBlueprint.js +92 -0
- package/dist/cjs/defaultBlueprint.js.map +1 -0
- package/dist/cjs/defaultBlueprintComponents.js +54 -0
- package/dist/cjs/defaultBlueprintComponents.js.map +1 -0
- package/dist/cjs/gallery/GalleryScreenPreview.js +63 -0
- package/dist/cjs/gallery/GalleryScreenPreview.js.map +1 -0
- package/dist/cjs/gallery/TemplateSlotName.js +25 -0
- package/dist/cjs/gallery/TemplateSlotName.js.map +1 -0
- package/dist/cjs/gallery/applicationChrome.js +134 -0
- package/dist/cjs/gallery/applicationChrome.js.map +1 -0
- package/dist/cjs/gallery/authTemplates.js +234 -0
- package/dist/cjs/gallery/authTemplates.js.map +1 -0
- package/dist/cjs/gallery/componentNames.js +53 -0
- package/dist/cjs/gallery/componentNames.js.map +1 -0
- package/dist/cjs/gallery/composeScreen.js +99 -0
- package/dist/cjs/gallery/composeScreen.js.map +1 -0
- package/dist/cjs/gallery/dependencyComponentNames.js +72 -0
- package/dist/cjs/gallery/dependencyComponentNames.js.map +1 -0
- package/dist/cjs/gallery/dialogTemplates.js +161 -0
- package/dist/cjs/gallery/dialogTemplates.js.map +1 -0
- package/dist/cjs/gallery/elements.js +80 -0
- package/dist/cjs/gallery/elements.js.map +1 -0
- package/dist/cjs/gallery/navigation.js +129 -0
- package/dist/cjs/gallery/navigation.js.map +1 -0
- package/dist/cjs/gallery/nesting.js +129 -0
- package/dist/cjs/gallery/nesting.js.map +1 -0
- package/dist/cjs/gallery/previewProfile.js +68 -0
- package/dist/cjs/gallery/previewProfile.js.map +1 -0
- package/dist/cjs/gallery/resolveElementNames.js +63 -0
- package/dist/cjs/gallery/resolveElementNames.js.map +1 -0
- package/dist/cjs/gallery/screens.js +222 -0
- package/dist/cjs/gallery/screens.js.map +1 -0
- package/dist/cjs/gallery/statusTemplates.js +190 -0
- package/dist/cjs/gallery/statusTemplates.js.map +1 -0
- package/dist/cjs/gallery/supportTemplates.js +319 -0
- package/dist/cjs/gallery/supportTemplates.js.map +1 -0
- package/dist/cjs/gallery/widgets.js +94 -0
- package/dist/cjs/gallery/widgets.js.map +1 -0
- package/dist/cjs/gallery/workspaceTemplates.js +395 -0
- package/dist/cjs/gallery/workspaceTemplates.js.map +1 -0
- package/dist/cjs/index.js +220 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/layouts/LayoutName.js +19 -0
- package/dist/cjs/layouts/LayoutName.js.map +1 -0
- package/dist/cjs/layouts/SlotName.js +31 -0
- package/dist/cjs/layouts/SlotName.js.map +1 -0
- package/dist/cjs/layouts/appShell.js +160 -0
- package/dist/cjs/layouts/appShell.js.map +1 -0
- package/dist/cjs/layouts/defaultLayouts.js +20 -0
- package/dist/cjs/layouts/defaultLayouts.js.map +1 -0
- package/dist/cjs/layouts/flowBuilders.js +66 -0
- package/dist/cjs/layouts/flowBuilders.js.map +1 -0
- package/dist/cjs/layouts/fullPage.js +78 -0
- package/dist/cjs/layouts/fullPage.js.map +1 -0
- package/dist/cjs/layouts/shellComponents.js +29 -0
- package/dist/cjs/layouts/shellComponents.js.map +1 -0
- package/dist/cjs/package.json +3 -0
- package/dist/cjs/packageName.js +15 -0
- package/dist/cjs/packageName.js.map +1 -0
- package/dist/cjs/shell/AppShell.js +88 -0
- package/dist/cjs/shell/AppShell.js.map +1 -0
- package/dist/cjs/shell/Breadcrumb.js +33 -0
- package/dist/cjs/shell/Breadcrumb.js.map +1 -0
- package/dist/cjs/shell/ConfigPanel.js +128 -0
- package/dist/cjs/shell/ConfigPanel.js.map +1 -0
- package/dist/cjs/shell/Footer.js +28 -0
- package/dist/cjs/shell/Footer.js.map +1 -0
- package/dist/cjs/shell/FullPageShell.js +53 -0
- package/dist/cjs/shell/FullPageShell.js.map +1 -0
- package/dist/cjs/shell/LayoutModeSwitcher.js +58 -0
- package/dist/cjs/shell/LayoutModeSwitcher.js.map +1 -0
- package/dist/cjs/shell/Logo.js +44 -0
- package/dist/cjs/shell/Logo.js.map +1 -0
- package/dist/cjs/shell/Mask.js +34 -0
- package/dist/cjs/shell/Mask.js.map +1 -0
- package/dist/cjs/shell/Menu.js +36 -0
- package/dist/cjs/shell/Menu.js.map +1 -0
- package/dist/cjs/shell/MenuItem.js +65 -0
- package/dist/cjs/shell/MenuItem.js.map +1 -0
- package/dist/cjs/shell/PageHeader.js +43 -0
- package/dist/cjs/shell/PageHeader.js.map +1 -0
- package/dist/cjs/shell/RightPanel.js +30 -0
- package/dist/cjs/shell/RightPanel.js.map +1 -0
- package/dist/cjs/shell/Sidebar.js +51 -0
- package/dist/cjs/shell/Sidebar.js.map +1 -0
- package/dist/cjs/shell/ThemeOption.js +42 -0
- package/dist/cjs/shell/ThemeOption.js.map +1 -0
- package/dist/cjs/shell/ThemeSwitcher.js +50 -0
- package/dist/cjs/shell/ThemeSwitcher.js.map +1 -0
- package/dist/cjs/shell/Topbar.js +54 -0
- package/dist/cjs/shell/Topbar.js.map +1 -0
- package/dist/cjs/shell/UserMenu.js +68 -0
- package/dist/cjs/shell/UserMenu.js.map +1 -0
- package/dist/cjs/shell/elementProperties.js +56 -0
- package/dist/cjs/shell/elementProperties.js.map +1 -0
- package/dist/cjs/themes/LayoutThemeProvider.js +33 -0
- package/dist/cjs/themes/LayoutThemeProvider.js.map +1 -0
- package/dist/cjs/themes/blueprintThemeCompatibility.js +28 -0
- package/dist/cjs/themes/blueprintThemeCompatibility.js.map +1 -0
- package/dist/cjs/themes/dark.js +40 -0
- package/dist/cjs/themes/dark.js.map +1 -0
- package/dist/cjs/themes/defaultBlueprintThemes.js +19 -0
- package/dist/cjs/themes/defaultBlueprintThemes.js.map +1 -0
- package/dist/cjs/themes/light.js +43 -0
- package/dist/cjs/themes/light.js.map +1 -0
- package/dist/esm/ComponentName.d.ts +19 -0
- package/dist/esm/ComponentName.d.ts.map +1 -0
- package/dist/esm/ComponentName.js +31 -0
- package/dist/esm/ComponentName.js.map +1 -0
- package/dist/esm/configuration/ColorScheme.d.ts +6 -0
- package/dist/esm/configuration/ColorScheme.d.ts.map +1 -0
- package/dist/esm/configuration/ColorScheme.js +20 -0
- package/dist/esm/configuration/ColorScheme.js.map +1 -0
- package/dist/esm/configuration/LayoutConfigProvider.d.ts +29 -0
- package/dist/esm/configuration/LayoutConfigProvider.d.ts.map +1 -0
- package/dist/esm/configuration/LayoutConfigProvider.js +92 -0
- package/dist/esm/configuration/LayoutConfigProvider.js.map +1 -0
- package/dist/esm/configuration/LayoutConfigState.d.ts +14 -0
- package/dist/esm/configuration/LayoutConfigState.d.ts.map +1 -0
- package/dist/esm/configuration/LayoutConfigState.js +2 -0
- package/dist/esm/configuration/LayoutConfigState.js.map +1 -0
- package/dist/esm/configuration/LayoutMode.d.ts +12 -0
- package/dist/esm/configuration/LayoutMode.d.ts.map +1 -0
- package/dist/esm/configuration/LayoutMode.js +35 -0
- package/dist/esm/configuration/LayoutMode.js.map +1 -0
- package/dist/esm/configuration/MenuTheme.d.ts +7 -0
- package/dist/esm/configuration/MenuTheme.d.ts.map +1 -0
- package/dist/esm/configuration/MenuTheme.js +23 -0
- package/dist/esm/configuration/MenuTheme.js.map +1 -0
- package/dist/esm/configuration/index.d.ts +9 -0
- package/dist/esm/configuration/index.d.ts.map +1 -0
- package/dist/esm/configuration/index.js +9 -0
- package/dist/esm/configuration/index.js.map +1 -0
- package/dist/esm/configuration/layoutConfigStorage.d.ts +6 -0
- package/dist/esm/configuration/layoutConfigStorage.d.ts.map +1 -0
- package/dist/esm/configuration/layoutConfigStorage.js +81 -0
- package/dist/esm/configuration/layoutConfigStorage.js.map +1 -0
- package/dist/esm/configuration/layoutConfigTransitions.d.ts +22 -0
- package/dist/esm/configuration/layoutConfigTransitions.d.ts.map +1 -0
- package/dist/esm/configuration/layoutConfigTransitions.js +140 -0
- package/dist/esm/configuration/layoutConfigTransitions.js.map +1 -0
- package/dist/esm/configuration/layoutWrapperClasses.d.ts +4 -0
- package/dist/esm/configuration/layoutWrapperClasses.d.ts.map +1 -0
- package/dist/esm/configuration/layoutWrapperClasses.js +59 -0
- package/dist/esm/configuration/layoutWrapperClasses.js.map +1 -0
- package/dist/esm/defaultBlueprint.d.ts +5 -0
- package/dist/esm/defaultBlueprint.d.ts.map +1 -0
- package/dist/esm/defaultBlueprint.js +89 -0
- package/dist/esm/defaultBlueprint.js.map +1 -0
- package/dist/esm/defaultBlueprintComponents.d.ts +3 -0
- package/dist/esm/defaultBlueprintComponents.d.ts.map +1 -0
- package/dist/esm/defaultBlueprintComponents.js +52 -0
- package/dist/esm/defaultBlueprintComponents.js.map +1 -0
- package/dist/esm/for_AppShell/when_rendering_a_gallery_screen.d.ts +2 -0
- package/dist/esm/for_AppShell/when_rendering_a_gallery_screen.d.ts.map +1 -0
- package/dist/esm/for_AppShell/when_rendering_a_gallery_screen.js +60 -0
- package/dist/esm/for_AppShell/when_rendering_a_gallery_screen.js.map +1 -0
- package/dist/esm/for_LayoutConfigProvider/when_switching_mode_and_reloading.d.ts +2 -0
- package/dist/esm/for_LayoutConfigProvider/when_switching_mode_and_reloading.d.ts.map +1 -0
- package/dist/esm/for_LayoutConfigProvider/when_switching_mode_and_reloading.js +60 -0
- package/dist/esm/for_LayoutConfigProvider/when_switching_mode_and_reloading.js.map +1 -0
- package/dist/esm/for_appShellLayout/when_evaluating_the_arrangement_at_each_size_class.d.ts +2 -0
- package/dist/esm/for_appShellLayout/when_evaluating_the_arrangement_at_each_size_class.d.ts.map +1 -0
- package/dist/esm/for_appShellLayout/when_evaluating_the_arrangement_at_each_size_class.js +26 -0
- package/dist/esm/for_appShellLayout/when_evaluating_the_arrangement_at_each_size_class.js.map +1 -0
- package/dist/esm/for_defaultBlueprint/when_validating_the_bundle.d.ts +2 -0
- package/dist/esm/for_defaultBlueprint/when_validating_the_bundle.d.ts.map +1 -0
- package/dist/esm/for_defaultBlueprint/when_validating_the_bundle.js +32 -0
- package/dist/esm/for_defaultBlueprint/when_validating_the_bundle.js.map +1 -0
- package/dist/esm/for_defaultBlueprintThemes/when_checking_attribution_and_tokens.d.ts +2 -0
- package/dist/esm/for_defaultBlueprintThemes/when_checking_attribution_and_tokens.d.ts.map +1 -0
- package/dist/esm/for_defaultBlueprintThemes/when_checking_attribution_and_tokens.js +40 -0
- package/dist/esm/for_defaultBlueprintThemes/when_checking_attribution_and_tokens.js.map +1 -0
- package/dist/esm/for_fullPageLayout/when_evaluating_the_arrangement_at_each_size_class.d.ts +2 -0
- package/dist/esm/for_fullPageLayout/when_evaluating_the_arrangement_at_each_size_class.d.ts.map +1 -0
- package/dist/esm/for_fullPageLayout/when_evaluating_the_arrangement_at_each_size_class.js +27 -0
- package/dist/esm/for_fullPageLayout/when_evaluating_the_arrangement_at_each_size_class.js.map +1 -0
- package/dist/esm/for_galleryScreenTemplates/when_checking_that_arrangements_reference_declared_slots.d.ts +2 -0
- package/dist/esm/for_galleryScreenTemplates/when_checking_that_arrangements_reference_declared_slots.d.ts.map +1 -0
- package/dist/esm/for_galleryScreenTemplates/when_checking_that_arrangements_reference_declared_slots.js +41 -0
- package/dist/esm/for_galleryScreenTemplates/when_checking_that_arrangements_reference_declared_slots.js.map +1 -0
- package/dist/esm/for_galleryScreenTemplates/when_following_the_nesting_chain.d.ts +2 -0
- package/dist/esm/for_galleryScreenTemplates/when_following_the_nesting_chain.d.ts.map +1 -0
- package/dist/esm/for_galleryScreenTemplates/when_following_the_nesting_chain.js +31 -0
- package/dist/esm/for_galleryScreenTemplates/when_following_the_nesting_chain.js.map +1 -0
- package/dist/esm/for_galleryScreens/when_checking_the_layouts_and_slots_they_fill.d.ts +2 -0
- package/dist/esm/for_galleryScreens/when_checking_the_layouts_and_slots_they_fill.d.ts.map +1 -0
- package/dist/esm/for_galleryScreens/when_checking_the_layouts_and_slots_they_fill.js +33 -0
- package/dist/esm/for_galleryScreens/when_checking_the_layouts_and_slots_they_fill.js.map +1 -0
- package/dist/esm/for_galleryScreens/when_resolving_the_component_names_they_reference.d.ts +2 -0
- package/dist/esm/for_galleryScreens/when_resolving_the_component_names_they_reference.d.ts.map +1 -0
- package/dist/esm/for_galleryScreens/when_resolving_the_component_names_they_reference.js +44 -0
- package/dist/esm/for_galleryScreens/when_resolving_the_component_names_they_reference.js.map +1 -0
- package/dist/esm/for_layoutConfigStorage/when_restoring_a_persisted_configuration.d.ts +2 -0
- package/dist/esm/for_layoutConfigStorage/when_restoring_a_persisted_configuration.d.ts.map +1 -0
- package/dist/esm/for_layoutConfigStorage/when_restoring_a_persisted_configuration.js +60 -0
- package/dist/esm/for_layoutConfigStorage/when_restoring_a_persisted_configuration.js.map +1 -0
- package/dist/esm/for_layoutConfigTransitions/when_anchoring_a_reveal_sidebar.d.ts +2 -0
- package/dist/esm/for_layoutConfigTransitions/when_anchoring_a_reveal_sidebar.d.ts.map +1 -0
- package/dist/esm/for_layoutConfigTransitions/when_anchoring_a_reveal_sidebar.js +28 -0
- package/dist/esm/for_layoutConfigTransitions/when_anchoring_a_reveal_sidebar.js.map +1 -0
- package/dist/esm/for_layoutConfigTransitions/when_the_viewport_crosses_the_mobile_breakpoint.d.ts +2 -0
- package/dist/esm/for_layoutConfigTransitions/when_the_viewport_crosses_the_mobile_breakpoint.d.ts.map +1 -0
- package/dist/esm/for_layoutConfigTransitions/when_the_viewport_crosses_the_mobile_breakpoint.js +38 -0
- package/dist/esm/for_layoutConfigTransitions/when_the_viewport_crosses_the_mobile_breakpoint.js.map +1 -0
- package/dist/esm/for_layoutWrapperClasses/when_rendering_each_mode.d.ts +2 -0
- package/dist/esm/for_layoutWrapperClasses/when_rendering_each_mode.d.ts.map +1 -0
- package/dist/esm/for_layoutWrapperClasses/when_rendering_each_mode.js +39 -0
- package/dist/esm/for_layoutWrapperClasses/when_rendering_each_mode.js.map +1 -0
- package/dist/esm/for_navigation/when_aggregating_the_navigation_contributions.d.ts +2 -0
- package/dist/esm/for_navigation/when_aggregating_the_navigation_contributions.d.ts.map +1 -0
- package/dist/esm/for_navigation/when_aggregating_the_navigation_contributions.js +37 -0
- package/dist/esm/for_navigation/when_aggregating_the_navigation_contributions.js.map +1 -0
- package/dist/esm/gallery/ApplicationScreens.stories.d.ts +31 -0
- package/dist/esm/gallery/ApplicationScreens.stories.d.ts.map +1 -0
- package/dist/esm/gallery/ApplicationScreens.stories.js +29 -0
- package/dist/esm/gallery/ApplicationScreens.stories.js.map +1 -0
- package/dist/esm/gallery/FullPageScreens.stories.d.ts +28 -0
- package/dist/esm/gallery/FullPageScreens.stories.d.ts.map +1 -0
- package/dist/esm/gallery/FullPageScreens.stories.js +26 -0
- package/dist/esm/gallery/FullPageScreens.stories.js.map +1 -0
- package/dist/esm/gallery/GalleryScreenPreview.d.ts +12 -0
- package/dist/esm/gallery/GalleryScreenPreview.d.ts.map +1 -0
- package/dist/esm/gallery/GalleryScreenPreview.js +60 -0
- package/dist/esm/gallery/GalleryScreenPreview.js.map +1 -0
- package/dist/esm/gallery/NavigationEntry.d.ts +8 -0
- package/dist/esm/gallery/NavigationEntry.d.ts.map +1 -0
- package/dist/esm/gallery/NavigationEntry.js +2 -0
- package/dist/esm/gallery/NavigationEntry.js.map +1 -0
- package/dist/esm/gallery/TemplateSlotName.d.ts +11 -0
- package/dist/esm/gallery/TemplateSlotName.d.ts.map +1 -0
- package/dist/esm/gallery/TemplateSlotName.js +23 -0
- package/dist/esm/gallery/TemplateSlotName.js.map +1 -0
- package/dist/esm/gallery/applicationChrome.d.ts +8 -0
- package/dist/esm/gallery/applicationChrome.d.ts.map +1 -0
- package/dist/esm/gallery/applicationChrome.js +131 -0
- package/dist/esm/gallery/applicationChrome.js.map +1 -0
- package/dist/esm/gallery/authTemplates.d.ts +9 -0
- package/dist/esm/gallery/authTemplates.d.ts.map +1 -0
- package/dist/esm/gallery/authTemplates.js +226 -0
- package/dist/esm/gallery/authTemplates.js.map +1 -0
- package/dist/esm/gallery/componentNames.d.ts +4 -0
- package/dist/esm/gallery/componentNames.d.ts.map +1 -0
- package/dist/esm/gallery/componentNames.js +50 -0
- package/dist/esm/gallery/componentNames.js.map +1 -0
- package/dist/esm/gallery/composeScreen.d.ts +5 -0
- package/dist/esm/gallery/composeScreen.d.ts.map +1 -0
- package/dist/esm/gallery/composeScreen.js +95 -0
- package/dist/esm/gallery/composeScreen.js.map +1 -0
- package/dist/esm/gallery/dependencyComponentNames.d.ts +4 -0
- package/dist/esm/gallery/dependencyComponentNames.d.ts.map +1 -0
- package/dist/esm/gallery/dependencyComponentNames.js +68 -0
- package/dist/esm/gallery/dependencyComponentNames.js.map +1 -0
- package/dist/esm/gallery/dialogTemplates.d.ts +6 -0
- package/dist/esm/gallery/dialogTemplates.d.ts.map +1 -0
- package/dist/esm/gallery/dialogTemplates.js +156 -0
- package/dist/esm/gallery/dialogTemplates.js.map +1 -0
- package/dist/esm/gallery/elements.d.ts +7 -0
- package/dist/esm/gallery/elements.d.ts.map +1 -0
- package/dist/esm/gallery/elements.js +74 -0
- package/dist/esm/gallery/elements.js.map +1 -0
- package/dist/esm/gallery/index.d.ts +20 -0
- package/dist/esm/gallery/index.d.ts.map +1 -0
- package/dist/esm/gallery/index.js +20 -0
- package/dist/esm/gallery/index.js.map +1 -0
- package/dist/esm/gallery/navigation.d.ts +9 -0
- package/dist/esm/gallery/navigation.d.ts.map +1 -0
- package/dist/esm/gallery/navigation.js +122 -0
- package/dist/esm/gallery/navigation.js.map +1 -0
- package/dist/esm/gallery/nesting.d.ts +6 -0
- package/dist/esm/gallery/nesting.d.ts.map +1 -0
- package/dist/esm/gallery/nesting.js +124 -0
- package/dist/esm/gallery/nesting.js.map +1 -0
- package/dist/esm/gallery/previewProfile.d.ts +6 -0
- package/dist/esm/gallery/previewProfile.d.ts.map +1 -0
- package/dist/esm/gallery/previewProfile.js +64 -0
- package/dist/esm/gallery/previewProfile.js.map +1 -0
- package/dist/esm/gallery/resolveElementNames.d.ts +4 -0
- package/dist/esm/gallery/resolveElementNames.d.ts.map +1 -0
- package/dist/esm/gallery/resolveElementNames.js +61 -0
- package/dist/esm/gallery/resolveElementNames.js.map +1 -0
- package/dist/esm/gallery/screens.d.ts +5 -0
- package/dist/esm/gallery/screens.d.ts.map +1 -0
- package/dist/esm/gallery/screens.js +218 -0
- package/dist/esm/gallery/screens.js.map +1 -0
- package/dist/esm/gallery/statusTemplates.d.ts +7 -0
- package/dist/esm/gallery/statusTemplates.d.ts.map +1 -0
- package/dist/esm/gallery/statusTemplates.js +184 -0
- package/dist/esm/gallery/statusTemplates.js.map +1 -0
- package/dist/esm/gallery/supportTemplates.d.ts +8 -0
- package/dist/esm/gallery/supportTemplates.d.ts.map +1 -0
- package/dist/esm/gallery/supportTemplates.js +312 -0
- package/dist/esm/gallery/supportTemplates.js.map +1 -0
- package/dist/esm/gallery/widgets.d.ts +12 -0
- package/dist/esm/gallery/widgets.d.ts.map +1 -0
- package/dist/esm/gallery/widgets.js +86 -0
- package/dist/esm/gallery/widgets.js.map +1 -0
- package/dist/esm/gallery/workspaceTemplates.d.ts +8 -0
- package/dist/esm/gallery/workspaceTemplates.d.ts.map +1 -0
- package/dist/esm/gallery/workspaceTemplates.js +388 -0
- package/dist/esm/gallery/workspaceTemplates.js.map +1 -0
- package/dist/esm/index.d.ts +10 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +60 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/layouts/LayoutName.d.ts +5 -0
- package/dist/esm/layouts/LayoutName.d.ts.map +1 -0
- package/dist/esm/layouts/LayoutName.js +17 -0
- package/dist/esm/layouts/LayoutName.js.map +1 -0
- package/dist/esm/layouts/SlotName.d.ts +12 -0
- package/dist/esm/layouts/SlotName.d.ts.map +1 -0
- package/dist/esm/layouts/SlotName.js +29 -0
- package/dist/esm/layouts/SlotName.js.map +1 -0
- package/dist/esm/layouts/appShell.d.ts +8 -0
- package/dist/esm/layouts/appShell.d.ts.map +1 -0
- package/dist/esm/layouts/appShell.js +153 -0
- package/dist/esm/layouts/appShell.js.map +1 -0
- package/dist/esm/layouts/defaultLayouts.d.ts +3 -0
- package/dist/esm/layouts/defaultLayouts.d.ts.map +1 -0
- package/dist/esm/layouts/defaultLayouts.js +18 -0
- package/dist/esm/layouts/defaultLayouts.js.map +1 -0
- package/dist/esm/layouts/flowBuilders.d.ts +6 -0
- package/dist/esm/layouts/flowBuilders.d.ts.map +1 -0
- package/dist/esm/layouts/flowBuilders.js +61 -0
- package/dist/esm/layouts/flowBuilders.js.map +1 -0
- package/dist/esm/layouts/fullPage.d.ts +6 -0
- package/dist/esm/layouts/fullPage.d.ts.map +1 -0
- package/dist/esm/layouts/fullPage.js +73 -0
- package/dist/esm/layouts/fullPage.js.map +1 -0
- package/dist/esm/layouts/index.d.ts +8 -0
- package/dist/esm/layouts/index.d.ts.map +1 -0
- package/dist/esm/layouts/index.js +8 -0
- package/dist/esm/layouts/index.js.map +1 -0
- package/dist/esm/layouts/shellComponents.d.ts +3 -0
- package/dist/esm/layouts/shellComponents.d.ts.map +1 -0
- package/dist/esm/layouts/shellComponents.js +27 -0
- package/dist/esm/layouts/shellComponents.js.map +1 -0
- package/dist/esm/package.json +3 -0
- package/dist/esm/packageName.d.ts +2 -0
- package/dist/esm/packageName.d.ts.map +1 -0
- package/dist/esm/packageName.js +13 -0
- package/dist/esm/packageName.js.map +1 -0
- package/dist/esm/shell/AppShell.d.ts +3 -0
- package/dist/esm/shell/AppShell.d.ts.map +1 -0
- package/dist/esm/shell/AppShell.js +86 -0
- package/dist/esm/shell/AppShell.js.map +1 -0
- package/dist/esm/shell/Breadcrumb.d.ts +3 -0
- package/dist/esm/shell/Breadcrumb.d.ts.map +1 -0
- package/dist/esm/shell/Breadcrumb.js +31 -0
- package/dist/esm/shell/Breadcrumb.js.map +1 -0
- package/dist/esm/shell/ConfigPanel.d.ts +3 -0
- package/dist/esm/shell/ConfigPanel.d.ts.map +1 -0
- package/dist/esm/shell/ConfigPanel.js +126 -0
- package/dist/esm/shell/ConfigPanel.js.map +1 -0
- package/dist/esm/shell/Footer.d.ts +3 -0
- package/dist/esm/shell/Footer.d.ts.map +1 -0
- package/dist/esm/shell/Footer.js +26 -0
- package/dist/esm/shell/Footer.js.map +1 -0
- package/dist/esm/shell/FullPageShell.d.ts +3 -0
- package/dist/esm/shell/FullPageShell.d.ts.map +1 -0
- package/dist/esm/shell/FullPageShell.js +51 -0
- package/dist/esm/shell/FullPageShell.js.map +1 -0
- package/dist/esm/shell/LayoutModeSwitcher.d.ts +3 -0
- package/dist/esm/shell/LayoutModeSwitcher.d.ts.map +1 -0
- package/dist/esm/shell/LayoutModeSwitcher.js +56 -0
- package/dist/esm/shell/LayoutModeSwitcher.js.map +1 -0
- package/dist/esm/shell/LayoutModes.stories.d.ts +29 -0
- package/dist/esm/shell/LayoutModes.stories.d.ts.map +1 -0
- package/dist/esm/shell/LayoutModes.stories.js +43 -0
- package/dist/esm/shell/LayoutModes.stories.js.map +1 -0
- package/dist/esm/shell/Logo.d.ts +3 -0
- package/dist/esm/shell/Logo.d.ts.map +1 -0
- package/dist/esm/shell/Logo.js +42 -0
- package/dist/esm/shell/Logo.js.map +1 -0
- package/dist/esm/shell/Mask.d.ts +3 -0
- package/dist/esm/shell/Mask.d.ts.map +1 -0
- package/dist/esm/shell/Mask.js +31 -0
- package/dist/esm/shell/Mask.js.map +1 -0
- package/dist/esm/shell/Menu.d.ts +3 -0
- package/dist/esm/shell/Menu.d.ts.map +1 -0
- package/dist/esm/shell/Menu.js +34 -0
- package/dist/esm/shell/Menu.js.map +1 -0
- package/dist/esm/shell/MenuItem.d.ts +3 -0
- package/dist/esm/shell/MenuItem.d.ts.map +1 -0
- package/dist/esm/shell/MenuItem.js +63 -0
- package/dist/esm/shell/MenuItem.js.map +1 -0
- package/dist/esm/shell/PageHeader.d.ts +3 -0
- package/dist/esm/shell/PageHeader.d.ts.map +1 -0
- package/dist/esm/shell/PageHeader.js +41 -0
- package/dist/esm/shell/PageHeader.js.map +1 -0
- package/dist/esm/shell/RightPanel.d.ts +3 -0
- package/dist/esm/shell/RightPanel.d.ts.map +1 -0
- package/dist/esm/shell/RightPanel.js +28 -0
- package/dist/esm/shell/RightPanel.js.map +1 -0
- package/dist/esm/shell/Sidebar.d.ts +3 -0
- package/dist/esm/shell/Sidebar.d.ts.map +1 -0
- package/dist/esm/shell/Sidebar.js +49 -0
- package/dist/esm/shell/Sidebar.js.map +1 -0
- package/dist/esm/shell/ThemeOption.d.ts +10 -0
- package/dist/esm/shell/ThemeOption.d.ts.map +1 -0
- package/dist/esm/shell/ThemeOption.js +39 -0
- package/dist/esm/shell/ThemeOption.js.map +1 -0
- package/dist/esm/shell/ThemeSwitcher.d.ts +3 -0
- package/dist/esm/shell/ThemeSwitcher.d.ts.map +1 -0
- package/dist/esm/shell/ThemeSwitcher.js +48 -0
- package/dist/esm/shell/ThemeSwitcher.js.map +1 -0
- package/dist/esm/shell/Topbar.d.ts +3 -0
- package/dist/esm/shell/Topbar.d.ts.map +1 -0
- package/dist/esm/shell/Topbar.js +52 -0
- package/dist/esm/shell/Topbar.js.map +1 -0
- package/dist/esm/shell/UserMenu.d.ts +3 -0
- package/dist/esm/shell/UserMenu.d.ts.map +1 -0
- package/dist/esm/shell/UserMenu.js +66 -0
- package/dist/esm/shell/UserMenu.js.map +1 -0
- package/dist/esm/shell/elementProperties.d.ts +9 -0
- package/dist/esm/shell/elementProperties.d.ts.map +1 -0
- package/dist/esm/shell/elementProperties.js +48 -0
- package/dist/esm/shell/elementProperties.js.map +1 -0
- package/dist/esm/shell/index.d.ts +19 -0
- package/dist/esm/shell/index.d.ts.map +1 -0
- package/dist/esm/shell/index.js +19 -0
- package/dist/esm/shell/index.js.map +1 -0
- package/dist/esm/themes/LayoutThemeProvider.d.ts +9 -0
- package/dist/esm/themes/LayoutThemeProvider.d.ts.map +1 -0
- package/dist/esm/themes/LayoutThemeProvider.js +31 -0
- package/dist/esm/themes/LayoutThemeProvider.js.map +1 -0
- package/dist/esm/themes/Theming.stories.d.ts +21 -0
- package/dist/esm/themes/Theming.stories.d.ts.map +1 -0
- package/dist/esm/themes/Theming.stories.js +54 -0
- package/dist/esm/themes/Theming.stories.js.map +1 -0
- package/dist/esm/themes/blueprintThemeCompatibility.d.ts +2 -0
- package/dist/esm/themes/blueprintThemeCompatibility.d.ts.map +1 -0
- package/dist/esm/themes/blueprintThemeCompatibility.js +26 -0
- package/dist/esm/themes/blueprintThemeCompatibility.js.map +1 -0
- package/dist/esm/themes/dark.d.ts +3 -0
- package/dist/esm/themes/dark.d.ts.map +1 -0
- package/dist/esm/themes/dark.js +38 -0
- package/dist/esm/themes/dark.js.map +1 -0
- package/dist/esm/themes/defaultBlueprintThemes.d.ts +3 -0
- package/dist/esm/themes/defaultBlueprintThemes.d.ts.map +1 -0
- package/dist/esm/themes/defaultBlueprintThemes.js +17 -0
- package/dist/esm/themes/defaultBlueprintThemes.js.map +1 -0
- package/dist/esm/themes/index.d.ts +6 -0
- package/dist/esm/themes/index.d.ts.map +1 -0
- package/dist/esm/themes/index.js +6 -0
- package/dist/esm/themes/index.js.map +1 -0
- package/dist/esm/themes/light.d.ts +3 -0
- package/dist/esm/themes/light.d.ts.map +1 -0
- package/dist/esm/themes/light.js +41 -0
- package/dist/esm/themes/light.js.map +1 -0
- package/dist/esm/tsconfig.tsbuildinfo +1 -0
- package/for_AppShell/when_rendering_a_gallery_screen.tsx +76 -0
- package/for_LayoutConfigProvider/when_switching_mode_and_reloading.tsx +77 -0
- package/for_appShellLayout/when_evaluating_the_arrangement_at_each_size_class.ts +42 -0
- package/for_defaultBlueprint/when_validating_the_bundle.ts +43 -0
- package/for_defaultBlueprintThemes/when_checking_attribution_and_tokens.ts +50 -0
- package/for_fullPageLayout/when_evaluating_the_arrangement_at_each_size_class.ts +36 -0
- package/for_galleryScreenTemplates/when_checking_that_arrangements_reference_declared_slots.ts +53 -0
- package/for_galleryScreenTemplates/when_following_the_nesting_chain.ts +41 -0
- package/for_galleryScreens/when_checking_the_layouts_and_slots_they_fill.ts +44 -0
- package/for_galleryScreens/when_resolving_the_component_names_they_reference.ts +60 -0
- package/for_layoutConfigStorage/when_restoring_a_persisted_configuration.ts +76 -0
- package/for_layoutConfigTransitions/when_anchoring_a_reveal_sidebar.ts +44 -0
- package/for_layoutConfigTransitions/when_the_viewport_crosses_the_mobile_breakpoint.ts +61 -0
- package/for_layoutWrapperClasses/when_rendering_each_mode.ts +63 -0
- package/for_navigation/when_aggregating_the_navigation_contributions.ts +50 -0
- package/gallery/ApplicationScreens.stories.tsx +70 -0
- package/gallery/FullPageScreens.stories.tsx +60 -0
- package/gallery/GalleryScreenPreview.tsx +68 -0
- package/gallery/NavigationEntry.ts +27 -0
- package/gallery/TemplateSlotName.ts +36 -0
- package/gallery/applicationChrome.ts +110 -0
- package/gallery/authTemplates.ts +161 -0
- package/gallery/componentNames.ts +55 -0
- package/gallery/composeScreen.ts +95 -0
- package/gallery/dependencyComponentNames.ts +64 -0
- package/gallery/dialogTemplates.ts +79 -0
- package/gallery/elements.ts +65 -0
- package/gallery/index.ts +22 -0
- package/gallery/navigation.ts +71 -0
- package/gallery/nesting.ts +82 -0
- package/gallery/previewProfile.ts +59 -0
- package/gallery/resolveElementNames.ts +55 -0
- package/gallery/screens.ts +111 -0
- package/gallery/statusTemplates.ts +118 -0
- package/gallery/supportTemplates.ts +164 -0
- package/gallery/widgets.ts +63 -0
- package/gallery/workspaceTemplates.ts +198 -0
- package/index.ts +12 -0
- package/layouts/LayoutName.ts +18 -0
- package/layouts/SlotName.ts +44 -0
- package/layouts/appShell.ts +106 -0
- package/layouts/defaultLayouts.ts +15 -0
- package/layouts/flowBuilders.ts +49 -0
- package/layouts/fullPage.ts +48 -0
- package/layouts/index.ts +10 -0
- package/layouts/shellComponents.ts +28 -0
- package/package.json +68 -0
- package/packageName.ts +12 -0
- package/shell/AppShell.tsx +66 -0
- package/shell/Breadcrumb.tsx +31 -0
- package/shell/ConfigPanel.tsx +105 -0
- package/shell/Footer.tsx +23 -0
- package/shell/FullPageShell.tsx +41 -0
- package/shell/LayoutModeSwitcher.tsx +50 -0
- package/shell/LayoutModes.stories.tsx +83 -0
- package/shell/Logo.tsx +30 -0
- package/shell/Mask.tsx +29 -0
- package/shell/Menu.tsx +26 -0
- package/shell/MenuItem.tsx +39 -0
- package/shell/PageHeader.tsx +28 -0
- package/shell/RightPanel.tsx +23 -0
- package/shell/Sidebar.tsx +45 -0
- package/shell/ThemeOption.ts +60 -0
- package/shell/ThemeSwitcher.tsx +42 -0
- package/shell/Topbar.tsx +49 -0
- package/shell/UserMenu.tsx +53 -0
- package/shell/elementProperties.ts +64 -0
- package/shell/index.ts +21 -0
- package/shell/layout.css +821 -0
- package/themes/LayoutThemeProvider.tsx +41 -0
- package/themes/Theming.stories.tsx +89 -0
- package/themes/blueprintThemeCompatibility.ts +19 -0
- package/themes/dark.ts +38 -0
- package/themes/defaultBlueprintThemes.ts +14 -0
- package/themes/index.ts +8 -0
- package/themes/light.ts +41 -0
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
import { ComponentName } from '../ComponentName.js';
|
|
2
|
+
import { SlotName } from '../layouts/SlotName.js';
|
|
3
|
+
import '@cratis/scene.model';
|
|
4
|
+
import '../layouts/shellComponents.js';
|
|
5
|
+
import '../layouts/appShell.js';
|
|
6
|
+
import '../layouts/fullPage.js';
|
|
7
|
+
import { TemplateSlotName } from './TemplateSlotName.js';
|
|
8
|
+
import { card, externalComponent, text, panel, button } from './elements.js';
|
|
9
|
+
import { widget } from './widgets.js';
|
|
10
|
+
|
|
11
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
12
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
13
|
+
/**
|
|
14
|
+
* The four screens that are not part of anyone's plan: a server error, a refusal, a wrong address, and the
|
|
15
|
+
* page that has to sell the product before any of the others exist.
|
|
16
|
+
*
|
|
17
|
+
* They use the full-page layout for the same reason the sign-in screens do - none of them has navigation
|
|
18
|
+
* to render - and they matter more than their frequency suggests. An error page is the screen most likely
|
|
19
|
+
* to be someone's first impression of how carefully an application was built.
|
|
20
|
+
*/ /** Something broke on our side. */ const errorTemplate = {
|
|
21
|
+
name: 'Error',
|
|
22
|
+
fitsSlot: SlotName.Content,
|
|
23
|
+
slots: [
|
|
24
|
+
{
|
|
25
|
+
name: TemplateSlotName.Body
|
|
26
|
+
}
|
|
27
|
+
],
|
|
28
|
+
content: {
|
|
29
|
+
[TemplateSlotName.Body]: [
|
|
30
|
+
card('error-card', [
|
|
31
|
+
externalComponent('error-tag', 'tag', {
|
|
32
|
+
value: '500',
|
|
33
|
+
severity: 'danger'
|
|
34
|
+
}),
|
|
35
|
+
text('error-title', 'Something went wrong on our side'),
|
|
36
|
+
text('error-message', 'The team has been told. Try again in a moment - nothing you were working on was lost.'),
|
|
37
|
+
panel('error-actions', [
|
|
38
|
+
button('error-retry', 'Try again', {
|
|
39
|
+
severity: 'primary'
|
|
40
|
+
}),
|
|
41
|
+
button('error-home', 'Back to the dashboard', {
|
|
42
|
+
severity: 'secondary',
|
|
43
|
+
targetScreen: 'Dashboard'
|
|
44
|
+
})
|
|
45
|
+
])
|
|
46
|
+
])
|
|
47
|
+
]
|
|
48
|
+
},
|
|
49
|
+
displayName: 'Error',
|
|
50
|
+
description: 'A server-side failure, said plainly, with a way onward.'
|
|
51
|
+
};
|
|
52
|
+
/** Signed in, and still not allowed. */ const accessDeniedTemplate = {
|
|
53
|
+
name: 'AccessDenied',
|
|
54
|
+
fitsSlot: SlotName.Content,
|
|
55
|
+
slots: [
|
|
56
|
+
{
|
|
57
|
+
name: TemplateSlotName.Body
|
|
58
|
+
}
|
|
59
|
+
],
|
|
60
|
+
content: {
|
|
61
|
+
[TemplateSlotName.Body]: [
|
|
62
|
+
card('denied-card', [
|
|
63
|
+
externalComponent('denied-tag', 'tag', {
|
|
64
|
+
value: '403',
|
|
65
|
+
severity: 'warning'
|
|
66
|
+
}),
|
|
67
|
+
text('denied-title', 'You do not have access to this'),
|
|
68
|
+
text('denied-message', 'Your account is signed in, but it is not allowed here. An administrator can change that.'),
|
|
69
|
+
panel('denied-actions', [
|
|
70
|
+
button('denied-request', 'Request access', {
|
|
71
|
+
severity: 'primary'
|
|
72
|
+
}),
|
|
73
|
+
button('denied-home', 'Back to the dashboard', {
|
|
74
|
+
severity: 'secondary',
|
|
75
|
+
targetScreen: 'Dashboard'
|
|
76
|
+
})
|
|
77
|
+
])
|
|
78
|
+
])
|
|
79
|
+
]
|
|
80
|
+
},
|
|
81
|
+
displayName: 'Access denied',
|
|
82
|
+
description: 'A refusal that distinguishes "not signed in" from "not allowed".'
|
|
83
|
+
};
|
|
84
|
+
/** No such address. */ const notFoundTemplate = {
|
|
85
|
+
name: 'NotFound',
|
|
86
|
+
fitsSlot: SlotName.Content,
|
|
87
|
+
slots: [
|
|
88
|
+
{
|
|
89
|
+
name: TemplateSlotName.Body
|
|
90
|
+
}
|
|
91
|
+
],
|
|
92
|
+
content: {
|
|
93
|
+
[TemplateSlotName.Body]: [
|
|
94
|
+
card('not-found-card', [
|
|
95
|
+
externalComponent('not-found-tag', 'tag', {
|
|
96
|
+
value: '404',
|
|
97
|
+
severity: 'info'
|
|
98
|
+
}),
|
|
99
|
+
text('not-found-title', 'That page is not here'),
|
|
100
|
+
text('not-found-message', 'The link may be old, or the thing it pointed at may have been removed.'),
|
|
101
|
+
externalComponent('not-found-search', 'inputText', {
|
|
102
|
+
placeholder: 'Search instead'
|
|
103
|
+
}),
|
|
104
|
+
button('not-found-home', 'Back to the dashboard', {
|
|
105
|
+
severity: 'secondary',
|
|
106
|
+
targetScreen: 'Dashboard'
|
|
107
|
+
})
|
|
108
|
+
])
|
|
109
|
+
]
|
|
110
|
+
},
|
|
111
|
+
displayName: 'Not found',
|
|
112
|
+
description: 'A wrong address, with a search box rather than a dead end.'
|
|
113
|
+
};
|
|
114
|
+
/** The page that has to do the selling. */ const landingTemplate = {
|
|
115
|
+
name: 'Landing',
|
|
116
|
+
fitsSlot: SlotName.Content,
|
|
117
|
+
slots: [
|
|
118
|
+
{
|
|
119
|
+
name: TemplateSlotName.Header
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
name: TemplateSlotName.Body
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
name: TemplateSlotName.Actions
|
|
126
|
+
}
|
|
127
|
+
],
|
|
128
|
+
content: {
|
|
129
|
+
[TemplateSlotName.Header]: [
|
|
130
|
+
panel('landing-nav', [
|
|
131
|
+
externalComponent('landing-logo', ComponentName.Logo, {
|
|
132
|
+
label: 'Contoso',
|
|
133
|
+
initials: 'C'
|
|
134
|
+
}),
|
|
135
|
+
button('landing-signin', 'Sign in', {
|
|
136
|
+
severity: 'secondary',
|
|
137
|
+
targetScreen: 'Login'
|
|
138
|
+
}),
|
|
139
|
+
button('landing-start', 'Start free', {
|
|
140
|
+
severity: 'primary',
|
|
141
|
+
targetScreen: 'Register'
|
|
142
|
+
})
|
|
143
|
+
])
|
|
144
|
+
],
|
|
145
|
+
[TemplateSlotName.Body]: [
|
|
146
|
+
card('landing-hero', [
|
|
147
|
+
text('landing-headline', 'Ship the shell on day one'),
|
|
148
|
+
text('landing-subhead', 'Eight menu modes, twenty screen templates and two themes, in one blueprint an application picks once.'),
|
|
149
|
+
button('landing-cta', 'Start free', {
|
|
150
|
+
severity: 'primary',
|
|
151
|
+
targetScreen: 'Register'
|
|
152
|
+
})
|
|
153
|
+
]),
|
|
154
|
+
widget('landing-feature-modes', 'Every mode people expect', [
|
|
155
|
+
text('landing-modes-text', 'Static, overlay, slim, slim+, compact, horizontal, reveal and drawer.')
|
|
156
|
+
]),
|
|
157
|
+
widget('landing-feature-themes', 'Themeable to the token', [
|
|
158
|
+
text('landing-themes-text', 'Ten semantic tokens define the whole shell. Swap them and everything follows.')
|
|
159
|
+
]),
|
|
160
|
+
widget('landing-feature-templates', 'The pages you were going to build anyway', [
|
|
161
|
+
text('landing-templates-text', 'Dashboard, list, detail, form, invoice, settings, help - and every screen around signing in.')
|
|
162
|
+
])
|
|
163
|
+
],
|
|
164
|
+
[TemplateSlotName.Actions]: [
|
|
165
|
+
panel('landing-footer', [
|
|
166
|
+
text('landing-copyright', '© Contoso'),
|
|
167
|
+
button('landing-contact', 'Talk to us', {
|
|
168
|
+
severity: 'secondary'
|
|
169
|
+
})
|
|
170
|
+
])
|
|
171
|
+
]
|
|
172
|
+
},
|
|
173
|
+
displayName: 'Landing',
|
|
174
|
+
description: 'The marketing front door, with its own navigation because it has no application chrome.'
|
|
175
|
+
};
|
|
176
|
+
/** The four status and marketing templates. */ const statusTemplates = [
|
|
177
|
+
errorTemplate,
|
|
178
|
+
accessDeniedTemplate,
|
|
179
|
+
notFoundTemplate,
|
|
180
|
+
landingTemplate
|
|
181
|
+
];
|
|
182
|
+
|
|
183
|
+
export { accessDeniedTemplate, errorTemplate, landingTemplate, notFoundTemplate, statusTemplates };
|
|
184
|
+
//# sourceMappingURL=statusTemplates.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"statusTemplates.js","sources":["../../../gallery/statusTemplates.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { ScreenTemplate } from '@cratis/scene.model';\nimport { ComponentName } from '../ComponentName';\nimport { SlotName } from '../layouts';\nimport { TemplateSlotName } from './TemplateSlotName';\nimport { button, card, externalComponent, panel, text } from './elements';\nimport { widget } from './widgets';\n\n/**\n * The four screens that are not part of anyone's plan: a server error, a refusal, a wrong address, and the\n * page that has to sell the product before any of the others exist.\n *\n * They use the full-page layout for the same reason the sign-in screens do - none of them has navigation\n * to render - and they matter more than their frequency suggests. An error page is the screen most likely\n * to be someone's first impression of how carefully an application was built.\n */\n\n/** Something broke on our side. */\nexport const errorTemplate: ScreenTemplate = {\n name: 'Error',\n fitsSlot: SlotName.Content,\n slots: [{ name: TemplateSlotName.Body }],\n content: {\n [TemplateSlotName.Body]: [\n card('error-card', [\n externalComponent('error-tag', 'tag', { value: '500', severity: 'danger' }),\n text('error-title', 'Something went wrong on our side'),\n text('error-message', 'The team has been told. Try again in a moment - nothing you were working on was lost.'),\n panel('error-actions', [\n button('error-retry', 'Try again', { severity: 'primary' }),\n button('error-home', 'Back to the dashboard', { severity: 'secondary', targetScreen: 'Dashboard' }),\n ]),\n ]),\n ],\n },\n displayName: 'Error',\n description: 'A server-side failure, said plainly, with a way onward.',\n};\n\n/** Signed in, and still not allowed. */\nexport const accessDeniedTemplate: ScreenTemplate = {\n name: 'AccessDenied',\n fitsSlot: SlotName.Content,\n slots: [{ name: TemplateSlotName.Body }],\n content: {\n [TemplateSlotName.Body]: [\n card('denied-card', [\n externalComponent('denied-tag', 'tag', { value: '403', severity: 'warning' }),\n text('denied-title', 'You do not have access to this'),\n text('denied-message', 'Your account is signed in, but it is not allowed here. An administrator can change that.'),\n panel('denied-actions', [\n button('denied-request', 'Request access', { severity: 'primary' }),\n button('denied-home', 'Back to the dashboard', { severity: 'secondary', targetScreen: 'Dashboard' }),\n ]),\n ]),\n ],\n },\n displayName: 'Access denied',\n description: 'A refusal that distinguishes \"not signed in\" from \"not allowed\".',\n};\n\n/** No such address. */\nexport const notFoundTemplate: ScreenTemplate = {\n name: 'NotFound',\n fitsSlot: SlotName.Content,\n slots: [{ name: TemplateSlotName.Body }],\n content: {\n [TemplateSlotName.Body]: [\n card('not-found-card', [\n externalComponent('not-found-tag', 'tag', { value: '404', severity: 'info' }),\n text('not-found-title', 'That page is not here'),\n text('not-found-message', 'The link may be old, or the thing it pointed at may have been removed.'),\n externalComponent('not-found-search', 'inputText', { placeholder: 'Search instead' }),\n button('not-found-home', 'Back to the dashboard', { severity: 'secondary', targetScreen: 'Dashboard' }),\n ]),\n ],\n },\n displayName: 'Not found',\n description: 'A wrong address, with a search box rather than a dead end.',\n};\n\n/** The page that has to do the selling. */\nexport const landingTemplate: ScreenTemplate = {\n name: 'Landing',\n fitsSlot: SlotName.Content,\n slots: [{ name: TemplateSlotName.Header }, { name: TemplateSlotName.Body }, { name: TemplateSlotName.Actions }],\n content: {\n [TemplateSlotName.Header]: [\n panel('landing-nav', [\n externalComponent('landing-logo', ComponentName.Logo, { label: 'Contoso', initials: 'C' }),\n button('landing-signin', 'Sign in', { severity: 'secondary', targetScreen: 'Login' }),\n button('landing-start', 'Start free', { severity: 'primary', targetScreen: 'Register' }),\n ]),\n ],\n [TemplateSlotName.Body]: [\n card('landing-hero', [\n text('landing-headline', 'Ship the shell on day one'),\n text('landing-subhead', 'Eight menu modes, twenty screen templates and two themes, in one blueprint an application picks once.'),\n button('landing-cta', 'Start free', { severity: 'primary', targetScreen: 'Register' }),\n ]),\n widget('landing-feature-modes', 'Every mode people expect', [text('landing-modes-text', 'Static, overlay, slim, slim+, compact, horizontal, reveal and drawer.')]),\n widget('landing-feature-themes', 'Themeable to the token', [text('landing-themes-text', 'Ten semantic tokens define the whole shell. Swap them and everything follows.')]),\n widget('landing-feature-templates', 'The pages you were going to build anyway', [\n text('landing-templates-text', 'Dashboard, list, detail, form, invoice, settings, help - and every screen around signing in.'),\n ]),\n ],\n [TemplateSlotName.Actions]: [\n panel('landing-footer', [text('landing-copyright', '© Contoso'), button('landing-contact', 'Talk to us', { severity: 'secondary' })]),\n ],\n },\n displayName: 'Landing',\n description: 'The marketing front door, with its own navigation because it has no application chrome.',\n};\n\n/** The four status and marketing templates. */\nexport const statusTemplates: ScreenTemplate[] = [errorTemplate, accessDeniedTemplate, notFoundTemplate, landingTemplate];\n"],"names":["errorTemplate","name","fitsSlot","SlotName","Content","slots","TemplateSlotName","Body","content","card","externalComponent","value","severity","text","panel","button","targetScreen","displayName","description","accessDeniedTemplate","notFoundTemplate","placeholder","landingTemplate","Header","Actions","ComponentName","Logo","label","initials","widget","statusTemplates"],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ScreenTemplate } from '@cratis/scene.model';
|
|
2
|
+
export declare const documentationTemplate: ScreenTemplate;
|
|
3
|
+
export declare const profileSettingsTemplate: ScreenTemplate;
|
|
4
|
+
export declare const userManagementTemplate: ScreenTemplate;
|
|
5
|
+
export declare const invoiceTemplate: ScreenTemplate;
|
|
6
|
+
export declare const helpTemplate: ScreenTemplate;
|
|
7
|
+
export declare const supportTemplates: ScreenTemplate[];
|
|
8
|
+
//# sourceMappingURL=supportTemplates.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"supportTemplates.d.ts","sourceRoot":"","sources":["../../../gallery/supportTemplates.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAgBrD,eAAO,MAAM,qBAAqB,EAAE,cAuBnC,CAAC;AAGF,eAAO,MAAM,uBAAuB,EAAE,cAwBrC,CAAC;AAGF,eAAO,MAAM,sBAAsB,EAAE,cA6BpC,CAAC;AAGF,eAAO,MAAM,eAAe,EAAE,cAiC7B,CAAC;AAGF,eAAO,MAAM,YAAY,EAAE,cAoB1B,CAAC;AAGF,eAAO,MAAM,gBAAgB,EAAE,cAAc,EAA4G,CAAC"}
|
|
@@ -0,0 +1,312 @@
|
|
|
1
|
+
import { SlotName } from '../layouts/SlotName.js';
|
|
2
|
+
import '@cratis/scene.model';
|
|
3
|
+
import '../layouts/shellComponents.js';
|
|
4
|
+
import '../layouts/appShell.js';
|
|
5
|
+
import '../layouts/fullPage.js';
|
|
6
|
+
import { TemplateSlotName } from './TemplateSlotName.js';
|
|
7
|
+
import { card, text, externalComponent, button } from './elements.js';
|
|
8
|
+
import { pageHeader, widget, formActions, field, table } from './widgets.js';
|
|
9
|
+
|
|
10
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
11
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
12
|
+
/**
|
|
13
|
+
* The five shapes an application needs that are not the CRUD loop: documentation, the signed-in user's own
|
|
14
|
+
* settings, user administration, a printable document, and help.
|
|
15
|
+
*
|
|
16
|
+
* They are in the set because leaving them out is what makes a template line feel thin. Every real
|
|
17
|
+
* application grows all five, and the ones that were never designed are the ones that end up looking like
|
|
18
|
+
* a different product.
|
|
19
|
+
*/ /** Documentation: a table of contents beside prose. */ const documentationTemplate = {
|
|
20
|
+
name: 'Documentation',
|
|
21
|
+
fitsSlot: SlotName.Content,
|
|
22
|
+
slots: [
|
|
23
|
+
{
|
|
24
|
+
name: TemplateSlotName.SidePanel
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
name: TemplateSlotName.Body
|
|
28
|
+
}
|
|
29
|
+
],
|
|
30
|
+
content: {
|
|
31
|
+
[TemplateSlotName.SidePanel]: [
|
|
32
|
+
widget('docs-toc', 'On this page', [
|
|
33
|
+
text('docs-toc-1', 'Getting started'),
|
|
34
|
+
text('docs-toc-2', 'Configuring the shell'),
|
|
35
|
+
text('docs-toc-3', 'Themes'),
|
|
36
|
+
text('docs-toc-4', 'Publishing a blueprint')
|
|
37
|
+
])
|
|
38
|
+
],
|
|
39
|
+
[TemplateSlotName.Body]: [
|
|
40
|
+
pageHeader('docs-header', 'Getting started', 'Everything you need to run the blueprint locally'),
|
|
41
|
+
card('docs-body', [
|
|
42
|
+
text('docs-intro', 'Install the blueprint, add it to a ui profile, and pick a layout. The shell reads its mode from the configurator and remembers it.'),
|
|
43
|
+
externalComponent('docs-note', 'message', {
|
|
44
|
+
severity: 'info',
|
|
45
|
+
text: 'The shell needs its stylesheet imported once, at the host.'
|
|
46
|
+
})
|
|
47
|
+
])
|
|
48
|
+
]
|
|
49
|
+
},
|
|
50
|
+
displayName: 'Documentation',
|
|
51
|
+
description: 'Prose with a table of contents beside it.'
|
|
52
|
+
};
|
|
53
|
+
/** Profile settings: the signed-in user editing their own account. */ const profileSettingsTemplate = {
|
|
54
|
+
name: 'ProfileSettings',
|
|
55
|
+
fitsSlot: SlotName.Content,
|
|
56
|
+
slots: [
|
|
57
|
+
{
|
|
58
|
+
name: TemplateSlotName.Header
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
name: TemplateSlotName.Body
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
name: TemplateSlotName.Actions
|
|
65
|
+
}
|
|
66
|
+
],
|
|
67
|
+
content: {
|
|
68
|
+
[TemplateSlotName.Header]: [
|
|
69
|
+
pageHeader('profile-header', 'Your profile', 'How you appear to everyone else in the workspace')
|
|
70
|
+
],
|
|
71
|
+
[TemplateSlotName.Body]: [
|
|
72
|
+
card('profile-identity', [
|
|
73
|
+
externalComponent('profile-avatar', 'avatar', {
|
|
74
|
+
label: 'AN',
|
|
75
|
+
size: 'large',
|
|
76
|
+
shape: 'circle'
|
|
77
|
+
}),
|
|
78
|
+
field('profile-name', 'Display name', 'inputText', {
|
|
79
|
+
value: 'Amelia Nyquist'
|
|
80
|
+
}),
|
|
81
|
+
field('profile-email', 'Email', 'inputText', {
|
|
82
|
+
value: 'amelia@contoso.com'
|
|
83
|
+
}),
|
|
84
|
+
externalComponent('profile-photo', 'image', {
|
|
85
|
+
alt: 'Your current photo'
|
|
86
|
+
}),
|
|
87
|
+
button('profile-photo-change', 'Change photo', {
|
|
88
|
+
severity: 'secondary'
|
|
89
|
+
})
|
|
90
|
+
]),
|
|
91
|
+
card('profile-security', [
|
|
92
|
+
field('profile-current', 'Current password', 'password', {}),
|
|
93
|
+
field('profile-new', 'New password', 'password', {
|
|
94
|
+
feedback: true
|
|
95
|
+
}),
|
|
96
|
+
field('profile-notify', 'Email me about mentions', 'checkbox', {
|
|
97
|
+
checked: true
|
|
98
|
+
})
|
|
99
|
+
])
|
|
100
|
+
],
|
|
101
|
+
[TemplateSlotName.Actions]: [
|
|
102
|
+
formActions('profile-actions', 'Save changes')
|
|
103
|
+
]
|
|
104
|
+
},
|
|
105
|
+
displayName: 'Profile settings',
|
|
106
|
+
description: 'The signed-in user editing their own name, photo, password and notifications.'
|
|
107
|
+
};
|
|
108
|
+
/** User management: administering everybody else. */ const userManagementTemplate = {
|
|
109
|
+
name: 'UserManagement',
|
|
110
|
+
fitsSlot: SlotName.Content,
|
|
111
|
+
slots: [
|
|
112
|
+
{
|
|
113
|
+
name: TemplateSlotName.Toolbar
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
name: TemplateSlotName.Body
|
|
117
|
+
}
|
|
118
|
+
],
|
|
119
|
+
content: {
|
|
120
|
+
[TemplateSlotName.Toolbar]: [
|
|
121
|
+
pageHeader('users-header', 'Users', '34 people, 3 pending invitations', [
|
|
122
|
+
button('users-invite', 'Invite people', {
|
|
123
|
+
severity: 'primary',
|
|
124
|
+
icon: 'pi pi-user-plus'
|
|
125
|
+
})
|
|
126
|
+
])
|
|
127
|
+
],
|
|
128
|
+
[TemplateSlotName.Body]: [
|
|
129
|
+
table('users-table', [
|
|
130
|
+
{
|
|
131
|
+
field: 'name',
|
|
132
|
+
header: 'Name'
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
field: 'email',
|
|
136
|
+
header: 'Email'
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
field: 'role',
|
|
140
|
+
header: 'Role'
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
field: 'status',
|
|
144
|
+
header: 'Status'
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
field: 'lastSeen',
|
|
148
|
+
header: 'Last seen'
|
|
149
|
+
}
|
|
150
|
+
], [
|
|
151
|
+
{
|
|
152
|
+
name: 'Amelia Nyquist',
|
|
153
|
+
email: 'amelia@contoso.com',
|
|
154
|
+
role: 'Owner',
|
|
155
|
+
status: 'Active',
|
|
156
|
+
lastSeen: '2 minutes ago'
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
name: 'Bjørn Holt',
|
|
160
|
+
email: 'bjorn@contoso.com',
|
|
161
|
+
role: 'Administrator',
|
|
162
|
+
status: 'Active',
|
|
163
|
+
lastSeen: 'Yesterday'
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
name: 'Chidi Okafor',
|
|
167
|
+
email: 'chidi@contoso.com',
|
|
168
|
+
role: 'Editor',
|
|
169
|
+
status: 'Active',
|
|
170
|
+
lastSeen: '3 days ago'
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
name: 'Dana Whitfield',
|
|
174
|
+
email: 'dana@contoso.com',
|
|
175
|
+
role: 'Viewer',
|
|
176
|
+
status: 'Invited',
|
|
177
|
+
lastSeen: 'Never'
|
|
178
|
+
}
|
|
179
|
+
])
|
|
180
|
+
]
|
|
181
|
+
},
|
|
182
|
+
displayName: 'User management',
|
|
183
|
+
description: 'The people table, with roles, status and an invitation action.'
|
|
184
|
+
};
|
|
185
|
+
/** Invoice: a printable document, which is a different shape from a screen. */ const invoiceTemplate = {
|
|
186
|
+
name: 'Invoice',
|
|
187
|
+
fitsSlot: SlotName.Content,
|
|
188
|
+
slots: [
|
|
189
|
+
{
|
|
190
|
+
name: TemplateSlotName.Header
|
|
191
|
+
},
|
|
192
|
+
{
|
|
193
|
+
name: TemplateSlotName.Body
|
|
194
|
+
},
|
|
195
|
+
{
|
|
196
|
+
name: TemplateSlotName.Actions
|
|
197
|
+
}
|
|
198
|
+
],
|
|
199
|
+
content: {
|
|
200
|
+
[TemplateSlotName.Header]: [
|
|
201
|
+
pageHeader('invoice-header', 'Invoice INV-2043', 'Issued 4 March · Due 3 April', [
|
|
202
|
+
button('invoice-print', 'Print', {
|
|
203
|
+
severity: 'secondary',
|
|
204
|
+
icon: 'pi pi-print'
|
|
205
|
+
})
|
|
206
|
+
])
|
|
207
|
+
],
|
|
208
|
+
[TemplateSlotName.Body]: [
|
|
209
|
+
card('invoice-parties', [
|
|
210
|
+
text('invoice-from', 'From: Contoso Ltd, 4 Chandler Street, Dublin'),
|
|
211
|
+
text('invoice-to', 'To: Northwind Traders, 18 Quay Road, Cork')
|
|
212
|
+
]),
|
|
213
|
+
table('invoice-lines', [
|
|
214
|
+
{
|
|
215
|
+
field: 'description',
|
|
216
|
+
header: 'Description'
|
|
217
|
+
},
|
|
218
|
+
{
|
|
219
|
+
field: 'quantity',
|
|
220
|
+
header: 'Quantity'
|
|
221
|
+
},
|
|
222
|
+
{
|
|
223
|
+
field: 'unitPrice',
|
|
224
|
+
header: 'Unit price'
|
|
225
|
+
},
|
|
226
|
+
{
|
|
227
|
+
field: 'amount',
|
|
228
|
+
header: 'Amount'
|
|
229
|
+
}
|
|
230
|
+
], [
|
|
231
|
+
{
|
|
232
|
+
description: 'Bamboo Watch',
|
|
233
|
+
quantity: 12,
|
|
234
|
+
unitPrice: '$65.00',
|
|
235
|
+
amount: '$780.00'
|
|
236
|
+
},
|
|
237
|
+
{
|
|
238
|
+
description: 'Blue Band',
|
|
239
|
+
quantity: 4,
|
|
240
|
+
unitPrice: '$79.00',
|
|
241
|
+
amount: '$316.00'
|
|
242
|
+
},
|
|
243
|
+
{
|
|
244
|
+
description: 'Expedited shipping',
|
|
245
|
+
quantity: 1,
|
|
246
|
+
unitPrice: '$144.00',
|
|
247
|
+
amount: '$144.00'
|
|
248
|
+
}
|
|
249
|
+
]),
|
|
250
|
+
card('invoice-total', [
|
|
251
|
+
text('invoice-subtotal', 'Subtotal: $1,240.00'),
|
|
252
|
+
text('invoice-vat', 'VAT (23%): $285.20'),
|
|
253
|
+
text('invoice-due', 'Total due: $1,525.20')
|
|
254
|
+
])
|
|
255
|
+
],
|
|
256
|
+
[TemplateSlotName.Actions]: [
|
|
257
|
+
formActions('invoice-actions', 'Mark as paid', 'Send reminder')
|
|
258
|
+
]
|
|
259
|
+
},
|
|
260
|
+
displayName: 'Invoice',
|
|
261
|
+
description: 'A printable document: parties, line items and totals.'
|
|
262
|
+
};
|
|
263
|
+
/** Help: the answers, and a way to ask when they are not there. */ const helpTemplate = {
|
|
264
|
+
name: 'Help',
|
|
265
|
+
fitsSlot: SlotName.Content,
|
|
266
|
+
slots: [
|
|
267
|
+
{
|
|
268
|
+
name: TemplateSlotName.Header
|
|
269
|
+
},
|
|
270
|
+
{
|
|
271
|
+
name: TemplateSlotName.Body
|
|
272
|
+
},
|
|
273
|
+
{
|
|
274
|
+
name: TemplateSlotName.SidePanel
|
|
275
|
+
}
|
|
276
|
+
],
|
|
277
|
+
content: {
|
|
278
|
+
[TemplateSlotName.Header]: [
|
|
279
|
+
pageHeader('help-header', 'Help', 'Search the answers, or ask us directly')
|
|
280
|
+
],
|
|
281
|
+
[TemplateSlotName.Body]: [
|
|
282
|
+
externalComponent('help-search', 'inputText', {
|
|
283
|
+
placeholder: 'Search help'
|
|
284
|
+
}),
|
|
285
|
+
widget('help-popular', 'Popular answers', [
|
|
286
|
+
text('help-1', 'How do I invite someone to the workspace?'),
|
|
287
|
+
text('help-2', 'Why can I not see the sidebar on my phone?'),
|
|
288
|
+
text('help-3', 'How do I change the theme?')
|
|
289
|
+
])
|
|
290
|
+
],
|
|
291
|
+
[TemplateSlotName.SidePanel]: [
|
|
292
|
+
widget('help-contact', 'Still stuck?', [
|
|
293
|
+
text('help-contact-text', 'We answer within one working day.'),
|
|
294
|
+
button('help-contact-button', 'Contact support', {
|
|
295
|
+
severity: 'primary'
|
|
296
|
+
})
|
|
297
|
+
])
|
|
298
|
+
]
|
|
299
|
+
},
|
|
300
|
+
displayName: 'Help',
|
|
301
|
+
description: 'Searchable answers with a route to a human.'
|
|
302
|
+
};
|
|
303
|
+
/** The five support templates. */ const supportTemplates = [
|
|
304
|
+
documentationTemplate,
|
|
305
|
+
profileSettingsTemplate,
|
|
306
|
+
userManagementTemplate,
|
|
307
|
+
invoiceTemplate,
|
|
308
|
+
helpTemplate
|
|
309
|
+
];
|
|
310
|
+
|
|
311
|
+
export { documentationTemplate, helpTemplate, invoiceTemplate, profileSettingsTemplate, supportTemplates, userManagementTemplate };
|
|
312
|
+
//# sourceMappingURL=supportTemplates.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"supportTemplates.js","sources":["../../../gallery/supportTemplates.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { ScreenTemplate } from '@cratis/scene.model';\nimport { SlotName } from '../layouts';\nimport { TemplateSlotName } from './TemplateSlotName';\nimport { button, card, externalComponent, text } from './elements';\nimport { field, formActions, pageHeader, table, widget } from './widgets';\n\n/**\n * The five shapes an application needs that are not the CRUD loop: documentation, the signed-in user's own\n * settings, user administration, a printable document, and help.\n *\n * They are in the set because leaving them out is what makes a template line feel thin. Every real\n * application grows all five, and the ones that were never designed are the ones that end up looking like\n * a different product.\n */\n\n/** Documentation: a table of contents beside prose. */\nexport const documentationTemplate: ScreenTemplate = {\n name: 'Documentation',\n fitsSlot: SlotName.Content,\n slots: [{ name: TemplateSlotName.SidePanel }, { name: TemplateSlotName.Body }],\n content: {\n [TemplateSlotName.SidePanel]: [\n widget('docs-toc', 'On this page', [\n text('docs-toc-1', 'Getting started'),\n text('docs-toc-2', 'Configuring the shell'),\n text('docs-toc-3', 'Themes'),\n text('docs-toc-4', 'Publishing a blueprint'),\n ]),\n ],\n [TemplateSlotName.Body]: [\n pageHeader('docs-header', 'Getting started', 'Everything you need to run the blueprint locally'),\n card('docs-body', [\n text('docs-intro', 'Install the blueprint, add it to a ui profile, and pick a layout. The shell reads its mode from the configurator and remembers it.'),\n externalComponent('docs-note', 'message', { severity: 'info', text: 'The shell needs its stylesheet imported once, at the host.' }),\n ]),\n ],\n },\n displayName: 'Documentation',\n description: 'Prose with a table of contents beside it.',\n};\n\n/** Profile settings: the signed-in user editing their own account. */\nexport const profileSettingsTemplate: ScreenTemplate = {\n name: 'ProfileSettings',\n fitsSlot: SlotName.Content,\n slots: [{ name: TemplateSlotName.Header }, { name: TemplateSlotName.Body }, { name: TemplateSlotName.Actions }],\n content: {\n [TemplateSlotName.Header]: [pageHeader('profile-header', 'Your profile', 'How you appear to everyone else in the workspace')],\n [TemplateSlotName.Body]: [\n card('profile-identity', [\n externalComponent('profile-avatar', 'avatar', { label: 'AN', size: 'large', shape: 'circle' }),\n field('profile-name', 'Display name', 'inputText', { value: 'Amelia Nyquist' }),\n field('profile-email', 'Email', 'inputText', { value: 'amelia@contoso.com' }),\n externalComponent('profile-photo', 'image', { alt: 'Your current photo' }),\n button('profile-photo-change', 'Change photo', { severity: 'secondary' }),\n ]),\n card('profile-security', [\n field('profile-current', 'Current password', 'password', {}),\n field('profile-new', 'New password', 'password', { feedback: true }),\n field('profile-notify', 'Email me about mentions', 'checkbox', { checked: true }),\n ]),\n ],\n [TemplateSlotName.Actions]: [formActions('profile-actions', 'Save changes')],\n },\n displayName: 'Profile settings',\n description: 'The signed-in user editing their own name, photo, password and notifications.',\n};\n\n/** User management: administering everybody else. */\nexport const userManagementTemplate: ScreenTemplate = {\n name: 'UserManagement',\n fitsSlot: SlotName.Content,\n slots: [{ name: TemplateSlotName.Toolbar }, { name: TemplateSlotName.Body }],\n content: {\n [TemplateSlotName.Toolbar]: [\n pageHeader('users-header', 'Users', '34 people, 3 pending invitations', [button('users-invite', 'Invite people', { severity: 'primary', icon: 'pi pi-user-plus' })]),\n ],\n [TemplateSlotName.Body]: [\n table(\n 'users-table',\n [\n { field: 'name', header: 'Name' },\n { field: 'email', header: 'Email' },\n { field: 'role', header: 'Role' },\n { field: 'status', header: 'Status' },\n { field: 'lastSeen', header: 'Last seen' },\n ],\n [\n { name: 'Amelia Nyquist', email: 'amelia@contoso.com', role: 'Owner', status: 'Active', lastSeen: '2 minutes ago' },\n { name: 'Bjørn Holt', email: 'bjorn@contoso.com', role: 'Administrator', status: 'Active', lastSeen: 'Yesterday' },\n { name: 'Chidi Okafor', email: 'chidi@contoso.com', role: 'Editor', status: 'Active', lastSeen: '3 days ago' },\n { name: 'Dana Whitfield', email: 'dana@contoso.com', role: 'Viewer', status: 'Invited', lastSeen: 'Never' },\n ],\n ),\n ],\n },\n displayName: 'User management',\n description: 'The people table, with roles, status and an invitation action.',\n};\n\n/** Invoice: a printable document, which is a different shape from a screen. */\nexport const invoiceTemplate: ScreenTemplate = {\n name: 'Invoice',\n fitsSlot: SlotName.Content,\n slots: [{ name: TemplateSlotName.Header }, { name: TemplateSlotName.Body }, { name: TemplateSlotName.Actions }],\n content: {\n [TemplateSlotName.Header]: [\n pageHeader('invoice-header', 'Invoice INV-2043', 'Issued 4 March · Due 3 April', [button('invoice-print', 'Print', { severity: 'secondary', icon: 'pi pi-print' })]),\n ],\n [TemplateSlotName.Body]: [\n card('invoice-parties', [\n text('invoice-from', 'From: Contoso Ltd, 4 Chandler Street, Dublin'),\n text('invoice-to', 'To: Northwind Traders, 18 Quay Road, Cork'),\n ]),\n table(\n 'invoice-lines',\n [\n { field: 'description', header: 'Description' },\n { field: 'quantity', header: 'Quantity' },\n { field: 'unitPrice', header: 'Unit price' },\n { field: 'amount', header: 'Amount' },\n ],\n [\n { description: 'Bamboo Watch', quantity: 12, unitPrice: '$65.00', amount: '$780.00' },\n { description: 'Blue Band', quantity: 4, unitPrice: '$79.00', amount: '$316.00' },\n { description: 'Expedited shipping', quantity: 1, unitPrice: '$144.00', amount: '$144.00' },\n ],\n ),\n card('invoice-total', [text('invoice-subtotal', 'Subtotal: $1,240.00'), text('invoice-vat', 'VAT (23%): $285.20'), text('invoice-due', 'Total due: $1,525.20')]),\n ],\n [TemplateSlotName.Actions]: [formActions('invoice-actions', 'Mark as paid', 'Send reminder')],\n },\n displayName: 'Invoice',\n description: 'A printable document: parties, line items and totals.',\n};\n\n/** Help: the answers, and a way to ask when they are not there. */\nexport const helpTemplate: ScreenTemplate = {\n name: 'Help',\n fitsSlot: SlotName.Content,\n slots: [{ name: TemplateSlotName.Header }, { name: TemplateSlotName.Body }, { name: TemplateSlotName.SidePanel }],\n content: {\n [TemplateSlotName.Header]: [pageHeader('help-header', 'Help', 'Search the answers, or ask us directly')],\n [TemplateSlotName.Body]: [\n externalComponent('help-search', 'inputText', { placeholder: 'Search help' }),\n widget('help-popular', 'Popular answers', [\n text('help-1', 'How do I invite someone to the workspace?'),\n text('help-2', 'Why can I not see the sidebar on my phone?'),\n text('help-3', 'How do I change the theme?'),\n ]),\n ],\n [TemplateSlotName.SidePanel]: [\n widget('help-contact', 'Still stuck?', [text('help-contact-text', 'We answer within one working day.'), button('help-contact-button', 'Contact support', { severity: 'primary' })]),\n ],\n },\n displayName: 'Help',\n description: 'Searchable answers with a route to a human.',\n};\n\n/** The five support templates. */\nexport const supportTemplates: ScreenTemplate[] = [documentationTemplate, profileSettingsTemplate, userManagementTemplate, invoiceTemplate, helpTemplate];\n"],"names":["documentationTemplate","name","fitsSlot","SlotName","Content","slots","TemplateSlotName","SidePanel","Body","content","widget","text","pageHeader","card","externalComponent","severity","displayName","description","profileSettingsTemplate","Header","Actions","label","size","shape","field","value","alt","button","feedback","checked","formActions","userManagementTemplate","Toolbar","icon","table","header","email","role","status","lastSeen","invoiceTemplate","quantity","unitPrice","amount","helpTemplate","placeholder","supportTemplates"],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { SceneElement } from '@cratis/scene.model';
|
|
2
|
+
export declare function pageHeader(id: string, title: string, subtitle: string, actions?: SceneElement[]): SceneElement;
|
|
3
|
+
export declare function statCard(id: string, label: string, value: string, delta: string, icon: string): SceneElement;
|
|
4
|
+
export declare function widget(id: string, title: string, content: SceneElement[]): SceneElement;
|
|
5
|
+
export declare function table(id: string, columns: {
|
|
6
|
+
field: string;
|
|
7
|
+
header: string;
|
|
8
|
+
}[], rows: Record<string, unknown>[]): SceneElement;
|
|
9
|
+
export declare function field(id: string, label: string, componentName: string, properties?: Record<string, unknown>): SceneElement;
|
|
10
|
+
export declare function formActions(id: string, confirmLabel: string, cancelLabel?: string): SceneElement;
|
|
11
|
+
export declare function emptyState(id: string, title: string, message: string, actionLabel: string): SceneElement;
|
|
12
|
+
//# sourceMappingURL=widgets.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"widgets.d.ts","sourceRoot":"","sources":["../../../gallery/widgets.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAcnD,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,YAAY,EAAO,GAAG,YAAY,CAElH;AAMD,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,YAAY,CAE5G;AAGD,wBAAgB,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,YAAY,CAEvF;AAGD,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,YAAY,CAO7H;AAGD,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,UAAU,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,YAAY,CAE9H;AAGD,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,SAAW,GAAG,YAAY,CAElG;AAGD,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,YAAY,CAOxG"}
|