Skip to content

Release v4.41.0

Choose a tag to compare

@github-actions github-actions released this 15 Oct 18:17
93d219a

The foundation screen set of Part B 2.1-2.9, with the reusable per-template definition of done.

Added

  • Eight foundation screen templates in @cratis/scene.blueprint.default under foundation/templates, category Foundation / <type>: WorkspaceScreen (moduleNav, moduleContent), DashboardScreen, ListScreen (header, toolbar, filters, list, bulkBar, footer), BoardScreen, MasterDetailScreen (fits the qualified slot WorkspaceScreen.moduleContent, offers the master-detail.detail outlet), RecordPage (tabs, related, activity, aside), FormScreen and WizardScreen. Each fits the AppShell content slot (or its container's qualified slot), so any of them is placed in the shell without per-template shell code; each carries a compact arrangement (list to cards, master/detail to a stack, section rail to tabs), the five standard states through the foundation components, permission rules on action controls, address-reflected filters/sort/page/selection/step, and a keyboard alternative on the board.
  • Preview data is the sample-data pack sampleData/foundation-en.json (templates only declare query bindings), a thumbnail for each in thumbnails/, and the pack and thumbnails ship in the package.
  • verifyTemplateDefinitionOfDone in @cratis/scene.engine: the Part B 6 per-template checklist (metadata, type, category, one-sentence description, thumbnail in the package, every slot arranged and none undeclared, placed by the slot resolver, no inline sample rows, every bound query answered by the pack), with specs and used for each foundation template.
  • Gallery screens for the eight templates (breadcrumbs, nesting through the workspace for the qualified slot), the preview host takes a sample-data pack and forced state.
  • Docs: blueprints/foundation-templates.md, template-set.md and pattern-coverage.md (Board, Record page and Wizard no longer deferred).

Changed

  • Existing templates (Dashboard, CrudList, MasterDetail, DetailView, FormPage, ModuleWorkspace, ...) are unchanged and keep their names: the foundation set is added alongside rather than renamed, so nothing breaks. As with the components (see #105) the set lives in the published blueprint.default rather than a new package (a new npm package cannot be published until a trusted publisher exists).

Part of #107