@cratis/scene.model 4.8.0 → 4.9.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/common/BindingExpression.ts +47 -3
- package/common/BindingMode.ts +13 -0
- package/common/BindingNullBehavior.ts +16 -0
- package/common/BindingSourceKind.ts +19 -0
- package/common/DestinationKind.ts +11 -0
- package/common/DestinationReference.ts +33 -6
- package/common/index.ts +4 -0
- package/contributionPoints/NavigationItem.ts +19 -2
- package/descriptors/ComponentDescriptor.ts +11 -1
- package/descriptors/DesignTimeActionDescriptor.ts +28 -0
- package/descriptors/DesignTimeActionPlacement.ts +11 -0
- package/descriptors/PackageDesignTimeMetadata.ts +26 -0
- package/descriptors/PropertyDescriptor.ts +11 -0
- package/descriptors/index.ts +3 -0
- package/dist/cjs/common/BindingExpression.js +10 -5
- package/dist/cjs/common/BindingExpression.js.map +1 -1
- package/dist/cjs/common/BindingMode.js +14 -0
- package/dist/cjs/common/BindingMode.js.map +1 -0
- package/dist/cjs/common/BindingNullBehavior.js +15 -0
- package/dist/cjs/common/BindingNullBehavior.js.map +1 -0
- package/dist/cjs/common/BindingSourceKind.js +16 -0
- package/dist/cjs/common/BindingSourceKind.js.map +1 -0
- package/dist/cjs/common/DestinationKind.js +15 -0
- package/dist/cjs/common/DestinationKind.js.map +1 -0
- package/dist/cjs/common/DestinationReference.js +7 -0
- package/dist/cjs/common/DestinationReference.js.map +1 -1
- package/dist/cjs/contributionPoints/NavigationItem.js +4 -0
- package/dist/cjs/contributionPoints/NavigationItem.js.map +1 -1
- package/dist/cjs/descriptors/ComponentDescriptor.js +4 -1
- package/dist/cjs/descriptors/ComponentDescriptor.js.map +1 -1
- package/dist/cjs/descriptors/DesignTimeActionDescriptor.js +14 -0
- package/dist/cjs/descriptors/DesignTimeActionDescriptor.js.map +1 -0
- package/dist/cjs/descriptors/DesignTimeActionPlacement.js +15 -0
- package/dist/cjs/descriptors/DesignTimeActionPlacement.js.map +1 -0
- package/dist/cjs/descriptors/PackageDesignTimeMetadata.js +16 -0
- package/dist/cjs/descriptors/PackageDesignTimeMetadata.js.map +1 -0
- package/dist/cjs/descriptors/PropertyDescriptor.js +4 -1
- package/dist/cjs/descriptors/PropertyDescriptor.js.map +1 -1
- package/dist/cjs/index.js +16 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/layouts/Layout.js +1 -0
- package/dist/cjs/layouts/Layout.js.map +1 -1
- package/dist/cjs/packages/ScenePackage.js +4 -1
- package/dist/cjs/packages/ScenePackage.js.map +1 -1
- package/dist/cjs/screens/Outlet.js +13 -0
- package/dist/cjs/screens/Outlet.js.map +1 -0
- package/dist/cjs/screens/ScreenTemplate.js +1 -0
- package/dist/cjs/screens/ScreenTemplate.js.map +1 -1
- package/dist/esm/common/BindingExpression.d.ts +12 -0
- package/dist/esm/common/BindingExpression.d.ts.map +1 -1
- package/dist/esm/common/BindingExpression.js +10 -5
- package/dist/esm/common/BindingExpression.js.map +1 -1
- package/dist/esm/common/BindingMode.d.ts +5 -0
- package/dist/esm/common/BindingMode.d.ts.map +1 -0
- package/dist/esm/common/BindingMode.js +12 -0
- package/dist/esm/common/BindingMode.js.map +1 -0
- package/dist/esm/common/BindingNullBehavior.d.ts +6 -0
- package/dist/esm/common/BindingNullBehavior.d.ts.map +1 -0
- package/dist/esm/common/BindingNullBehavior.js +13 -0
- package/dist/esm/common/BindingNullBehavior.js.map +1 -0
- package/dist/esm/common/BindingSourceKind.d.ts +7 -0
- package/dist/esm/common/BindingSourceKind.d.ts.map +1 -0
- package/dist/esm/common/BindingSourceKind.js +14 -0
- package/dist/esm/common/BindingSourceKind.js.map +1 -0
- package/dist/esm/common/DestinationKind.d.ts +6 -0
- package/dist/esm/common/DestinationKind.d.ts.map +1 -0
- package/dist/esm/common/DestinationKind.js +13 -0
- package/dist/esm/common/DestinationKind.js.map +1 -0
- package/dist/esm/common/DestinationReference.d.ts +9 -1
- package/dist/esm/common/DestinationReference.d.ts.map +1 -1
- package/dist/esm/common/DestinationReference.js +7 -0
- package/dist/esm/common/DestinationReference.js.map +1 -1
- package/dist/esm/common/index.d.ts +4 -0
- package/dist/esm/common/index.d.ts.map +1 -1
- package/dist/esm/common/index.js +4 -0
- package/dist/esm/common/index.js.map +1 -1
- package/dist/esm/contributionPoints/NavigationItem.d.ts +5 -1
- package/dist/esm/contributionPoints/NavigationItem.d.ts.map +1 -1
- package/dist/esm/contributionPoints/NavigationItem.js +4 -0
- package/dist/esm/contributionPoints/NavigationItem.js.map +1 -1
- package/dist/esm/descriptors/ComponentDescriptor.d.ts +4 -0
- package/dist/esm/descriptors/ComponentDescriptor.d.ts.map +1 -1
- package/dist/esm/descriptors/ComponentDescriptor.js +4 -1
- package/dist/esm/descriptors/ComponentDescriptor.js.map +1 -1
- package/dist/esm/descriptors/DesignTimeActionDescriptor.d.ts +10 -0
- package/dist/esm/descriptors/DesignTimeActionDescriptor.d.ts.map +1 -0
- package/dist/esm/descriptors/DesignTimeActionDescriptor.js +12 -0
- package/dist/esm/descriptors/DesignTimeActionDescriptor.js.map +1 -0
- package/dist/esm/descriptors/DesignTimeActionPlacement.d.ts +6 -0
- package/dist/esm/descriptors/DesignTimeActionPlacement.d.ts.map +1 -0
- package/dist/esm/descriptors/DesignTimeActionPlacement.js +13 -0
- package/dist/esm/descriptors/DesignTimeActionPlacement.js.map +1 -0
- package/dist/esm/descriptors/PackageDesignTimeMetadata.d.ts +9 -0
- package/dist/esm/descriptors/PackageDesignTimeMetadata.d.ts.map +1 -0
- package/dist/esm/descriptors/PackageDesignTimeMetadata.js +14 -0
- package/dist/esm/descriptors/PackageDesignTimeMetadata.js.map +1 -0
- package/dist/esm/descriptors/PropertyDescriptor.d.ts +4 -0
- package/dist/esm/descriptors/PropertyDescriptor.d.ts.map +1 -1
- package/dist/esm/descriptors/PropertyDescriptor.js +4 -1
- package/dist/esm/descriptors/PropertyDescriptor.js.map +1 -1
- package/dist/esm/descriptors/index.d.ts +3 -0
- package/dist/esm/descriptors/index.d.ts.map +1 -1
- package/dist/esm/descriptors/index.js +3 -0
- package/dist/esm/descriptors/index.js.map +1 -1
- package/dist/esm/index.js +8 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/layouts/Layout.d.ts +2 -0
- package/dist/esm/layouts/Layout.d.ts.map +1 -1
- package/dist/esm/layouts/Layout.js +1 -0
- package/dist/esm/layouts/Layout.js.map +1 -1
- package/dist/esm/packages/ScenePackage.d.ts +4 -0
- package/dist/esm/packages/ScenePackage.d.ts.map +1 -1
- package/dist/esm/packages/ScenePackage.js +4 -1
- package/dist/esm/packages/ScenePackage.js.map +1 -1
- package/dist/esm/screens/Outlet.d.ts +6 -0
- package/dist/esm/screens/Outlet.d.ts.map +1 -0
- package/dist/esm/screens/Outlet.js +11 -0
- package/dist/esm/screens/Outlet.js.map +1 -0
- package/dist/esm/screens/ScreenTemplate.d.ts +2 -0
- package/dist/esm/screens/ScreenTemplate.d.ts.map +1 -1
- package/dist/esm/screens/ScreenTemplate.js +1 -0
- package/dist/esm/screens/ScreenTemplate.js.map +1 -1
- package/dist/esm/screens/index.d.ts +1 -0
- package/dist/esm/screens/index.d.ts.map +1 -1
- package/dist/esm/screens/index.js +1 -0
- package/dist/esm/screens/index.js.map +1 -1
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/layouts/Layout.ts +5 -1
- package/package.json +1 -1
- package/packages/ScenePackage.ts +13 -0
- package/screens/Outlet.ts +15 -0
- package/screens/ScreenTemplate.ts +5 -0
- package/screens/index.ts +1 -0
package/layouts/Layout.ts
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
import { Arrangement } from './Arrangement';
|
|
5
5
|
import { Slot } from './Slot';
|
|
6
6
|
import { Behavior } from '../interactions';
|
|
7
|
+
import { Outlet } from '../screens/Outlet';
|
|
7
8
|
import { TemplateMetadata } from '../screens/TemplateMetadata';
|
|
8
9
|
|
|
9
10
|
/**
|
|
@@ -29,8 +30,11 @@ export interface Layout {
|
|
|
29
30
|
*/
|
|
30
31
|
behaviors?: Behavior[];
|
|
31
32
|
|
|
33
|
+
/** Named routed replacement surfaces this layout owns. Static slots remain template composition surfaces. */
|
|
34
|
+
outlets?: Outlet[];
|
|
35
|
+
|
|
32
36
|
/** Optional browse metadata; ApplicationShell retains this existing Layout role. */
|
|
33
37
|
metadata?: TemplateMetadata;
|
|
34
38
|
}
|
|
35
39
|
|
|
36
|
-
export const LayoutPropertyNames: (keyof Layout)[] = ['name', 'slots', 'arrangement', 'behaviors', 'metadata'];
|
|
40
|
+
export const LayoutPropertyNames: (keyof Layout)[] = ['name', 'slots', 'arrangement', 'behaviors', 'outlets', 'metadata'];
|
package/package.json
CHANGED
package/packages/ScenePackage.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
// Copyright (c) Cratis. All rights reserved.
|
|
2
2
|
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
3
3
|
|
|
4
|
+
import { PackageDesignTimeMetadata } from '../descriptors';
|
|
4
5
|
import { IconLibrary } from '../icons';
|
|
5
6
|
import { PackageDependency } from './PackageDependency';
|
|
6
7
|
import { PackageKind } from './PackageKind';
|
|
@@ -92,6 +93,15 @@ export interface ScenePackage {
|
|
|
92
93
|
* What the package declares about its icons. Present exactly for a {@link PackageKind.IconLibrary}.
|
|
93
94
|
*/
|
|
94
95
|
iconLibrary?: IconLibrary;
|
|
96
|
+
|
|
97
|
+
/** Optional design-time extensions carried as metadata; runtime hosts do not load them unless approved. */
|
|
98
|
+
designTime?: PackageDesignTimeMetadata;
|
|
99
|
+
|
|
100
|
+
/** Asset URLs or package-relative asset entries (CSS, fonts, images) required by a web renderer. */
|
|
101
|
+
assets?: string[];
|
|
102
|
+
|
|
103
|
+
/** Runtime singleton dependency names that must not be duplicated across approved bundles. */
|
|
104
|
+
runtimeSingletons?: string[];
|
|
95
105
|
}
|
|
96
106
|
|
|
97
107
|
export const ScenePackagePropertyNames: (keyof ScenePackage)[] = [
|
|
@@ -110,4 +120,7 @@ export const ScenePackagePropertyNames: (keyof ScenePackage)[] = [
|
|
|
110
120
|
'license',
|
|
111
121
|
'licenseUrl',
|
|
112
122
|
'iconLibrary',
|
|
123
|
+
'designTime',
|
|
124
|
+
'assets',
|
|
125
|
+
'runtimeSingletons',
|
|
113
126
|
];
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
2
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* A named replacement surface for routed or nested screen content.
|
|
6
|
+
*/
|
|
7
|
+
export interface Outlet {
|
|
8
|
+
/** Stable outlet name used by destinations. */
|
|
9
|
+
name: string;
|
|
10
|
+
|
|
11
|
+
/** Optional description for designers. */
|
|
12
|
+
description?: string;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export const OutletPropertyNames: (keyof Outlet)[] = ['name', 'description'];
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
import { SceneElement } from '../elements';
|
|
5
5
|
import { Arrangement, Slot } from '../layouts';
|
|
6
6
|
import { Behavior } from '../interactions';
|
|
7
|
+
import { Outlet } from './Outlet';
|
|
7
8
|
import { TemplateMetadata } from './TemplateMetadata';
|
|
8
9
|
|
|
9
10
|
/**
|
|
@@ -65,6 +66,9 @@ export interface ScreenTemplate {
|
|
|
65
66
|
*/
|
|
66
67
|
behaviors?: Behavior[];
|
|
67
68
|
|
|
69
|
+
/** Named routed replacement surfaces this template owns. Static slots remain composition surfaces. */
|
|
70
|
+
outlets?: Outlet[];
|
|
71
|
+
|
|
68
72
|
/** Optional semantic type, browse category and scope restrictions. */
|
|
69
73
|
metadata?: TemplateMetadata;
|
|
70
74
|
}
|
|
@@ -78,5 +82,6 @@ export const ScreenTemplatePropertyNames: (keyof ScreenTemplate)[] = [
|
|
|
78
82
|
'displayName',
|
|
79
83
|
'description',
|
|
80
84
|
'behaviors',
|
|
85
|
+
'outlets',
|
|
81
86
|
'metadata',
|
|
82
87
|
];
|
package/screens/index.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
// Copyright (c) Cratis. All rights reserved.
|
|
2
2
|
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
3
3
|
|
|
4
|
+
export * from './Outlet';
|
|
4
5
|
export * from './Screen';
|
|
5
6
|
export * from './ScreenTemplate';
|
|
6
7
|
export * from './DialogTemplate';
|