@cratis/scene.blueprint.components 1.1.0 → 3.0.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 +0 -7
- package/.storybook/preview.tsx +33 -13
- package/README.md +29 -2
- package/dist/esm/for_ArcPageHeader/when_rendering_a_gallery_screen.js +2 -1
- package/dist/esm/for_ArcPageHeader/when_rendering_a_gallery_screen.js.map +1 -1
- package/dist/esm/for_componentsBlueprint/when_resolving_its_dependencies.js +1 -1
- package/dist/esm/for_componentsBlueprint/when_resolving_its_dependencies.js.map +1 -1
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/for_ArcPageHeader/when_rendering_a_gallery_screen.tsx +12 -5
- package/for_componentsBlueprint/when_resolving_its_dependencies.ts +10 -2
- package/package.json +34 -18
package/.storybook/main.ts
CHANGED
|
@@ -44,13 +44,6 @@ const config: StorybookConfig = {
|
|
|
44
44
|
...(config.build.rollupOptions ?? {}),
|
|
45
45
|
external: [/^@cratis\/arc/, '@cratis/fundamentals'],
|
|
46
46
|
};
|
|
47
|
-
// Vite 8 minifies CSS with lightningcss, which rejects the whole bundle over one invalid file:
|
|
48
|
-
// `@cratis/components` ships `dist/esm/TimeMachine/Properties.css` with `//` line comments, which
|
|
49
|
-
// are not CSS. esbuild's minifier tolerates them. This blueprint is the first package here to place
|
|
50
|
-
// a `timeMachine` on a page, so it is the first to pull that file in. The same workaround is in the
|
|
51
|
-
// Cratis Components package's own preview tooling, and both come out once that file ships with
|
|
52
|
-
// `/* */` comments.
|
|
53
|
-
config.build.cssMinify = 'esbuild';
|
|
54
47
|
return config;
|
|
55
48
|
},
|
|
56
49
|
};
|
package/.storybook/preview.tsx
CHANGED
|
@@ -2,36 +2,56 @@
|
|
|
2
2
|
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
3
3
|
|
|
4
4
|
import type { Preview } from '@storybook/react';
|
|
5
|
+
import { PrimeReactProvider } from '@primereact/core';
|
|
5
6
|
import { CratisComponentsProvider } from '@cratis/components/Common';
|
|
6
7
|
|
|
7
|
-
// The stylesheet layers a page in this blueprint needs, in the order they resolve.
|
|
8
|
-
//
|
|
9
|
-
//
|
|
10
|
-
//
|
|
8
|
+
// The stylesheet layers a page in this blueprint needs, in the order they resolve. Components 4 owns its
|
|
9
|
+
// own CSS outright and keeps it out of the JavaScript module graph, so every sheet below is an explicit
|
|
10
|
+
// import rather than something a bundler injects behind an `import './Foo.css'`.
|
|
11
|
+
//
|
|
12
|
+
// `tokens` defines the `--cratis-*` layer, `styles` is every component stylesheet plus the Tailwind
|
|
13
|
+
// utilities that consume it, and `theme` is the Cratis-authored MIT baseline that assigns those tokens
|
|
14
|
+
// actual values. That order matters: the last two both read the first.
|
|
15
|
+
//
|
|
16
|
+
// The Scene package's bridge puts Scene's `--scene-*` tokens in front of that, and the default blueprint's
|
|
11
17
|
// `layout.css` draws the shell every one of these pages sits inside - which is the sheet this package does
|
|
12
18
|
// not have and does not want, because the shell is not its.
|
|
13
19
|
//
|
|
14
20
|
// The last two are reached by relative path rather than through their packages' `./styles` export,
|
|
15
21
|
// because `main.ts` aliases those package names to their sources and a Vite string alias matches by
|
|
16
22
|
// prefix - `@cratis/scene.components/styles` would be rewritten into a path inside `index.ts`.
|
|
17
|
-
import '
|
|
18
|
-
import 'primeicons/primeicons.css';
|
|
23
|
+
import '@cratis/components/tokens';
|
|
19
24
|
import '@cratis/components/styles';
|
|
25
|
+
import '@cratis/components/theme';
|
|
26
|
+
import 'primeicons/primeicons.css';
|
|
20
27
|
import '../../components/theme/sceneTokenBridge.css';
|
|
21
28
|
import '../../blueprint.default/shell/layout.css';
|
|
22
29
|
|
|
30
|
+
// The baseline theme is scoped to a `cratis-theme` ancestor rather than to `:root`, so something has to
|
|
31
|
+
// carry the class, and overlays portal to the body rather than into the story's subtree.
|
|
32
|
+
document.body.classList.add('cratis-theme');
|
|
33
|
+
|
|
23
34
|
/**
|
|
24
|
-
*
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
*
|
|
35
|
+
* Two providers, because these pages are two things at once.
|
|
36
|
+
*
|
|
37
|
+
* The page bodies are Components 4, which owns its own markup and configuration and no longer sits on
|
|
38
|
+
* PrimeReact at all - `CratisComponentsProvider` now carries only what the library itself owns.
|
|
39
|
+
*
|
|
40
|
+
* The shell they sit inside is the default blueprint's, and that reaches for PrimeReact directly in five
|
|
41
|
+
* places (`Topbar`, `Sidebar`, `Breadcrumb`, `UserMenu`, `ConfigPanel`). Every PrimeReact 11 component
|
|
42
|
+
* resolves its configuration, theme and z-index registry through `PrimeReactProvider` and throws without
|
|
43
|
+
* one. Until Components 3 that provider came for free, because `CratisComponentsProvider` wrapped it;
|
|
44
|
+
* under Components 4 it does not, so this preview supplies it explicitly. Dropping it would not degrade
|
|
45
|
+
* these stories - it would stop them rendering.
|
|
28
46
|
*/
|
|
29
47
|
const preview: Preview = {
|
|
30
48
|
decorators: [
|
|
31
49
|
Story => (
|
|
32
|
-
<
|
|
33
|
-
<
|
|
34
|
-
|
|
50
|
+
<PrimeReactProvider>
|
|
51
|
+
<CratisComponentsProvider value={{ locale: 'en-US' }}>
|
|
52
|
+
<Story />
|
|
53
|
+
</CratisComponentsProvider>
|
|
54
|
+
</PrimeReactProvider>
|
|
35
55
|
),
|
|
36
56
|
],
|
|
37
57
|
parameters: {
|
package/README.md
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
# Scene
|
|
2
2
|
|
|
3
|
+
**Describing a user interface without describing a platform** — Scene is the UI model of the Cratis
|
|
4
|
+
model-first layer (experimental).
|
|
5
|
+
|
|
3
6
|
The object model and runtime for Screenplay-based UIs: `Scene.Model` (platform-agnostic screens, layouts,
|
|
4
7
|
forms, contribution points, ui profiles and themes), `Scene.Engine` (binding/resolution runtime), and
|
|
5
8
|
`Scene.React` (the React renderer).
|
|
@@ -18,8 +21,13 @@ forms, contribution points, ui profiles and themes), `Scene.Engine` (binding/res
|
|
|
18
21
|
|
|
19
22
|
## Description
|
|
20
23
|
|
|
21
|
-
Scene owns the *object model and runtime* half of the Screenplay stack.
|
|
22
|
-
|
|
24
|
+
Scene owns the *object model and runtime* half of the Screenplay stack. In the model-first pipeline,
|
|
25
|
+
[Screenplay](https://github.com/Cratis/Screenplay) describes an event-sourced, CQRS system,
|
|
26
|
+
[Stage](https://github.com/Cratis/Stage) renders it into a running application, and Scene is how that
|
|
27
|
+
application's user interface is described — independently of any rendering platform.
|
|
28
|
+
|
|
29
|
+
`Scene.Model` is the platform-agnostic
|
|
30
|
+
C# object model that [Stage](https://github.com/Cratis/Stage) translates Screenplay's parsed language constructs into, and that [Studio](https://github.com/Cratis/Studio)'s
|
|
23
31
|
design-time tooling reads and writes. `Scene.Engine` walks that graph, resolves bindings (data, action, form,
|
|
24
32
|
navigation contribution) and drives whichever renderer is plugged in — it does not know React exists.
|
|
25
33
|
`Scene.React` is one renderer implementing the abstract vocabulary against real React/DOM; sibling positions
|
|
@@ -38,3 +46,22 @@ Cratis is an open community, and we are glad to help users, teams evaluating the
|
|
|
38
46
|
| Discord | Join the community on [Discord](https://discord.gg/kt4AMpV8WV) for questions and discussions |
|
|
39
47
|
| GitHub Issues | [Report bugs or request features](https://github.com/Cratis/Scene/issues) |
|
|
40
48
|
| Documentation | Read the docs at [cratis.io](https://cratis.io) |
|
|
49
|
+
|
|
50
|
+
## The Cratis ecosystem
|
|
51
|
+
|
|
52
|
+
This project is part of [Cratis](https://www.cratis.io) — free, MIT-licensed tools for building event-sourced and CQRS applications.
|
|
53
|
+
|
|
54
|
+
- **[Chronicle](https://github.com/Cratis/Chronicle)** — event-sourcing database and runtime. Orleans-based kernel, pluggable storage (MongoDB default; PostgreSQL, SQL Server, SQLite, in-memory), language-agnostic gRPC contracts. [Docs](https://www.cratis.io/chronicle/)
|
|
55
|
+
- **Chronicle clients** — first-class [.NET SDK](https://github.com/Cratis/Chronicle), plus [TypeScript](https://github.com/Cratis/Chronicle.TypeScript), [Kotlin/Java](https://github.com/Cratis/Chronicle.Kotlin), and [Elixir](https://github.com/Cratis/Chronicle.Elixir); [Python](https://github.com/Cratis/Chronicle.Python) coming soon (pre-alpha). AI agents connect through the [Chronicle MCP server](https://github.com/Cratis/Chronicle.Mcp).
|
|
56
|
+
- **[Arc](https://github.com/Cratis/Arc)** — opinionated CQRS framework for ASP.NET Core with commands, queries, validation, authorization, and TypeScript proxy generation. Works without event sourcing. [Docs](https://www.cratis.io/arc/)
|
|
57
|
+
- **[Components](https://github.com/Cratis/Components)** — React components aligned with Arc patterns. [Docs](https://www.cratis.io/components/)
|
|
58
|
+
- **[CLI](https://github.com/Cratis/cli) + Workbench** — inspect and diagnose Chronicle from the terminal or the browser. [Docs](https://www.cratis.io/cli/)
|
|
59
|
+
- **Model-first layer (experimental)** — [Studio](https://github.com/Cratis/Studio), [Screenplay](https://github.com/Cratis/Screenplay), [Stage](https://github.com/Cratis/Stage), Scene (this repository), [Prologue](https://github.com/Cratis/Prologue)
|
|
60
|
+
- **Supporting** — [Fundamentals](https://github.com/Cratis/Fundamentals), [Specifications](https://github.com/Cratis/Specifications), [Synopsis](https://github.com/Cratis/Synopsis), [Lens](https://github.com/Cratis/Lens), [Narrator](https://github.com/Cratis/Narrator), and free [AI tooling](https://github.com/Cratis/AI) (preview); [Ensemble](https://github.com/Cratis/Ensemble) coming soon (pre-release)
|
|
61
|
+
- **[Samples](https://github.com/Cratis/Samples)** — runnable event sourcing and CQRS samples for the whole stack
|
|
62
|
+
|
|
63
|
+
Everything Cratis publishes today is MIT licensed and free to use.
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
Part of the [Cratis](https://www.cratis.io) platform · [MIT](./LICENSE)
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { render, screen } from '@testing-library/react';
|
|
3
|
+
import { PrimeReactProvider } from '@primereact/core';
|
|
3
4
|
import { SceneElementView } from '@cratis/scene.react';
|
|
4
5
|
import { clearBindings, registerQuery } from '@cratis/scene.components';
|
|
5
6
|
import { composeScreenElement, resolveElementComponentNames } from '@cratis/scene.blueprint.default';
|
|
@@ -8,7 +9,7 @@ import { SampleBindingName, arcPageHeader } from '../templates';
|
|
|
8
9
|
class AllInvoices {
|
|
9
10
|
}
|
|
10
11
|
function renderElement(element) {
|
|
11
|
-
render(_jsx(SceneElementView, { element: resolveElementComponentNames(element, componentsBlueprintProfile, componentsBlueprintCatalog), registry: componentsPreviewRegistry, resolveBinding: () => undefined }));
|
|
12
|
+
render(_jsx(PrimeReactProvider, { children: _jsx(SceneElementView, { element: resolveElementComponentNames(element, componentsBlueprintProfile, componentsBlueprintCatalog), registry: componentsPreviewRegistry, resolveBinding: () => undefined }) }));
|
|
12
13
|
}
|
|
13
14
|
function has(selector) {
|
|
14
15
|
return document.querySelector(selector) !== null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"when_rendering_a_gallery_screen.js","sourceRoot":"","sources":["../../../for_ArcPageHeader/when_rendering_a_gallery_screen.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"when_rendering_a_gallery_screen.js","sourceRoot":"","sources":["../../../for_ArcPageHeader/when_rendering_a_gallery_screen.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,4BAA4B,EAAE,MAAM,iCAAiC,CAAC;AACrG,OAAO,EAAE,0BAA0B,EAAE,0BAA0B,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AACxI,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAEhE,MAAM,WAAW;CAAG;AAMpB,SAAS,aAAa,CAAC,OAAqB;IACxC,MAAM,CACF,KAAC,kBAAkB,cACf,KAAC,gBAAgB,IACb,OAAO,EAAE,4BAA4B,CAAC,OAAO,EAAE,0BAA0B,EAAE,0BAA0B,CAAC,EACtG,QAAQ,EAAE,yBAAyB,EACnC,cAAc,EAAE,GAAG,EAAE,CAAC,SAAS,GACjC,GACe,CACxB,CAAC;AACN,CAAC;AAED,SAAS,GAAG,CAAC,QAAgB;IACzB,OAAO,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC;AACrD,CAAC;AAED,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAC7C,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACvC,UAAU,CAAC,GAAG,EAAE;YACZ,aAAa,EAAE,CAAC;YAChB,aAAa,CAAC,oBAAoB,CAAC,uBAAuB,CAAC,cAAc,CAAE,CAAC,CAAC,CAAC;QAClF,CAAC,CAAC,CAAC;QAEH,SAAS,CAAC,GAAG,EAAE,CAAC,aAAa,EAAE,CAAC,CAAC;QAEjC,EAAE,CAAC,qEAAqE,EAAE,GAAG,EAAE;YAC3E,GAAG,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;YAChE,GAAG,CAAC,qBAAqB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;YACtE,MAAM,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,WAAW,KAAK,oBAAoB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5H,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;YAC3D,MAAM,CAAC,YAAY,CAAC,oCAAoC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAC9F,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mFAAmF,EAAE,GAAG,EAAE;YACzF,MAAM,CAAC,YAAY,CAAC,sEAAsE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAChI,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6FAA6F,EAAE,GAAG,EAAE;YACnG,GAAG,CAAC,mCAAmC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAClD,UAAU,CAAC,GAAG,EAAE;YACZ,aAAa,EAAE,CAAC;YAChB,aAAa,CAAC,iBAAiB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YAC1D,aAAa,CAAC,aAAa,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,iBAAiB,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QAClI,CAAC,CAAC,CAAC;QAEH,SAAS,CAAC,GAAG,EAAE,CAAC,aAAa,EAAE,CAAC,CAAC;QAEjC,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;YACjE,MAAM,CAAC,YAAY,CAAC,4BAA4B,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QACtF,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wFAAwF,EAAE,GAAG,EAAE;YAC9F,GAAG,CAAC,oCAAoC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"when_resolving_its_dependencies.js","sourceRoot":"","sources":["../../../for_componentsBlueprint/when_resolving_its_dependencies.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAgB,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAC3F,OAAO,EAAE,+BAA+B,EAAE,MAAM,0BAA0B,CAAC;AAC3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAGzD,MAAM,QAAQ,GAAiB;IAC3B,IAAI,EAAE,UAAU;IAChB,OAAO,EAAE,OAAO;IAChB,IAAI,EAAE,WAAW,CAAC,OAAO;IACzB,YAAY,EAAE,EAAE;IAChB,UAAU,EAAE,EAAE;IACd,OAAO,EAAE,EAAE;IACX,eAAe,EAAE,EAAE;IACnB,eAAe,EAAE,EAAE;IACnB,MAAM,EAAE,EAAE;CACb,CAAC;
|
|
1
|
+
{"version":3,"file":"when_resolving_its_dependencies.js","sourceRoot":"","sources":["../../../for_componentsBlueprint/when_resolving_its_dependencies.ts"],"names":[],"mappings":"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"}
|