@cratis/scene.model 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.
Files changed (92) hide show
  1. package/README.md +29 -2
  2. package/common/Dock.ts +12 -0
  3. package/common/GridLength.ts +15 -0
  4. package/common/GridUnitType.ts +11 -0
  5. package/common/Orientation.ts +10 -0
  6. package/common/index.ts +4 -0
  7. package/dist/cjs/common/Dock.js +16 -0
  8. package/dist/cjs/common/Dock.js.map +1 -0
  9. package/dist/cjs/common/GridLength.js +11 -0
  10. package/dist/cjs/common/GridLength.js.map +1 -0
  11. package/dist/cjs/common/GridUnitType.js +15 -0
  12. package/dist/cjs/common/GridUnitType.js.map +1 -0
  13. package/dist/cjs/common/Orientation.js +14 -0
  14. package/dist/cjs/common/Orientation.js.map +1 -0
  15. package/dist/cjs/elements/panels/ColumnDefinition.js +12 -0
  16. package/dist/cjs/elements/panels/ColumnDefinition.js.map +1 -0
  17. package/dist/cjs/elements/panels/DockPanel.js +10 -0
  18. package/dist/cjs/elements/panels/DockPanel.js.map +1 -0
  19. package/dist/cjs/elements/panels/Grid.js +11 -0
  20. package/dist/cjs/elements/panels/Grid.js.map +1 -0
  21. package/dist/cjs/elements/panels/RowDefinition.js +12 -0
  22. package/dist/cjs/elements/panels/RowDefinition.js.map +1 -0
  23. package/dist/cjs/elements/panels/StackPanel.js +11 -0
  24. package/dist/cjs/elements/panels/StackPanel.js.map +1 -0
  25. package/dist/cjs/elements/panels/WrapPanel.js +12 -0
  26. package/dist/cjs/elements/panels/WrapPanel.js.map +1 -0
  27. package/dist/cjs/index.js +20 -0
  28. package/dist/cjs/index.js.map +1 -1
  29. package/dist/esm/common/Dock.d.ts +7 -0
  30. package/dist/esm/common/Dock.d.ts.map +1 -0
  31. package/dist/esm/common/Dock.js +14 -0
  32. package/dist/esm/common/Dock.js.map +1 -0
  33. package/dist/esm/common/GridLength.d.ts +7 -0
  34. package/dist/esm/common/GridLength.d.ts.map +1 -0
  35. package/dist/esm/common/GridLength.js +9 -0
  36. package/dist/esm/common/GridLength.js.map +1 -0
  37. package/dist/esm/common/GridUnitType.d.ts +6 -0
  38. package/dist/esm/common/GridUnitType.d.ts.map +1 -0
  39. package/dist/esm/common/GridUnitType.js +13 -0
  40. package/dist/esm/common/GridUnitType.js.map +1 -0
  41. package/dist/esm/common/Orientation.d.ts +5 -0
  42. package/dist/esm/common/Orientation.d.ts.map +1 -0
  43. package/dist/esm/common/Orientation.js +12 -0
  44. package/dist/esm/common/Orientation.js.map +1 -0
  45. package/dist/esm/common/index.d.ts +4 -0
  46. package/dist/esm/common/index.d.ts.map +1 -1
  47. package/dist/esm/common/index.js +4 -0
  48. package/dist/esm/common/index.js.map +1 -1
  49. package/dist/esm/elements/index.d.ts +1 -0
  50. package/dist/esm/elements/index.d.ts.map +1 -1
  51. package/dist/esm/elements/index.js +1 -0
  52. package/dist/esm/elements/index.js.map +1 -1
  53. package/dist/esm/elements/panels/ColumnDefinition.d.ts +8 -0
  54. package/dist/esm/elements/panels/ColumnDefinition.d.ts.map +1 -0
  55. package/dist/esm/elements/panels/ColumnDefinition.js +10 -0
  56. package/dist/esm/elements/panels/ColumnDefinition.js.map +1 -0
  57. package/dist/esm/elements/panels/DockPanel.d.ts +6 -0
  58. package/dist/esm/elements/panels/DockPanel.d.ts.map +1 -0
  59. package/dist/esm/elements/panels/DockPanel.js +8 -0
  60. package/dist/esm/elements/panels/DockPanel.js.map +1 -0
  61. package/dist/esm/elements/panels/Grid.d.ts +9 -0
  62. package/dist/esm/elements/panels/Grid.d.ts.map +1 -0
  63. package/dist/esm/elements/panels/Grid.js +9 -0
  64. package/dist/esm/elements/panels/Grid.js.map +1 -0
  65. package/dist/esm/elements/panels/RowDefinition.d.ts +8 -0
  66. package/dist/esm/elements/panels/RowDefinition.d.ts.map +1 -0
  67. package/dist/esm/elements/panels/RowDefinition.js +10 -0
  68. package/dist/esm/elements/panels/RowDefinition.js.map +1 -0
  69. package/dist/esm/elements/panels/StackPanel.d.ts +8 -0
  70. package/dist/esm/elements/panels/StackPanel.d.ts.map +1 -0
  71. package/dist/esm/elements/panels/StackPanel.js +9 -0
  72. package/dist/esm/elements/panels/StackPanel.js.map +1 -0
  73. package/dist/esm/elements/panels/WrapPanel.d.ts +9 -0
  74. package/dist/esm/elements/panels/WrapPanel.d.ts.map +1 -0
  75. package/dist/esm/elements/panels/WrapPanel.js +10 -0
  76. package/dist/esm/elements/panels/WrapPanel.js.map +1 -0
  77. package/dist/esm/elements/panels/index.d.ts +7 -0
  78. package/dist/esm/elements/panels/index.d.ts.map +1 -0
  79. package/dist/esm/elements/panels/index.js +7 -0
  80. package/dist/esm/elements/panels/index.js.map +1 -0
  81. package/dist/esm/index.js +10 -0
  82. package/dist/esm/index.js.map +1 -1
  83. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  84. package/elements/index.ts +1 -0
  85. package/elements/panels/ColumnDefinition.ts +15 -0
  86. package/elements/panels/DockPanel.ts +14 -0
  87. package/elements/panels/Grid.ts +17 -0
  88. package/elements/panels/RowDefinition.ts +15 -0
  89. package/elements/panels/StackPanel.ts +15 -0
  90. package/elements/panels/WrapPanel.ts +16 -0
  91. package/elements/panels/index.ts +9 -0
  92. package/package.json +11 -1
package/elements/index.ts CHANGED
@@ -9,3 +9,4 @@ export * from './Panel';
9
9
  export * from './ItemsControl';
10
10
  export * from './ContentControl';
11
11
  export * from './ExternalComponent';
12
+ export * from './panels';
@@ -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
+ import { GridLength } from '../../common';
5
+
6
+ /**
7
+ * One column of a {@link Grid}.
8
+ */
9
+ export interface ColumnDefinition {
10
+ width: GridLength;
11
+ minimumWidth: number;
12
+ maximumWidth: number;
13
+ }
14
+
15
+ export const ColumnDefinitionPropertyNames: (keyof ColumnDefinition)[] = ['width', 'minimumWidth', 'maximumWidth'];
@@ -0,0 +1,14 @@
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
+ import { Panel } from '../Panel';
5
+
6
+ /**
7
+ * Lays its children out against its edges, each child stating which edge through the `Dock` key
8
+ * of its `properties`.
9
+ */
10
+ export interface DockPanel extends Panel {
11
+ lastChildFill: boolean;
12
+ }
13
+
14
+ export const DockPanelPropertyNames: (keyof DockPanel)[] = ['lastChildFill'];
@@ -0,0 +1,17 @@
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
+ import { Panel } from '../Panel';
5
+ import { RowDefinition } from './RowDefinition';
6
+ import { ColumnDefinition } from './ColumnDefinition';
7
+
8
+ /**
9
+ * Lays its children out in rows and columns. A child states which cell it occupies through the
10
+ * `Grid.Row`, `Grid.Column`, `Grid.RowSpan` and `Grid.ColumnSpan` keys of its `properties`.
11
+ */
12
+ export interface Grid extends Panel {
13
+ rows: RowDefinition[];
14
+ columns: ColumnDefinition[];
15
+ }
16
+
17
+ export const GridPropertyNames: (keyof Grid)[] = ['rows', 'columns'];
@@ -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
+ import { GridLength } from '../../common';
5
+
6
+ /**
7
+ * One row of a {@link Grid}.
8
+ */
9
+ export interface RowDefinition {
10
+ height: GridLength;
11
+ minimumHeight: number;
12
+ maximumHeight: number;
13
+ }
14
+
15
+ export const RowDefinitionPropertyNames: (keyof RowDefinition)[] = ['height', 'minimumHeight', 'maximumHeight'];
@@ -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
+ import { Panel } from '../Panel';
5
+ import { Orientation } from '../../common';
6
+
7
+ /**
8
+ * Lays its children out in a single line.
9
+ */
10
+ export interface StackPanel extends Panel {
11
+ orientation: Orientation;
12
+ spacing: number;
13
+ }
14
+
15
+ export const StackPanelPropertyNames: (keyof StackPanel)[] = ['orientation', 'spacing'];
@@ -0,0 +1,16 @@
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
+ import { Panel } from '../Panel';
5
+ import { Orientation } from '../../common';
6
+
7
+ /**
8
+ * Lays its children out in a line and starts a new one whenever the current line runs out of room.
9
+ */
10
+ export interface WrapPanel extends Panel {
11
+ orientation: Orientation;
12
+ itemWidth?: number;
13
+ itemHeight?: number;
14
+ }
15
+
16
+ export const WrapPanelPropertyNames: (keyof WrapPanel)[] = ['orientation', 'itemWidth', 'itemHeight'];
@@ -0,0 +1,9 @@
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
+ export * from './StackPanel';
5
+ export * from './DockPanel';
6
+ export * from './WrapPanel';
7
+ export * from './RowDefinition';
8
+ export * from './ColumnDefinition';
9
+ export * from './Grid';
package/package.json CHANGED
@@ -1,7 +1,17 @@
1
1
  {
2
2
  "name": "@cratis/scene.model",
3
- "version": "1.1.0",
3
+ "version": "3.0.0",
4
4
  "description": "The TypeScript mirror of Cratis.Scene.Model — the platform-agnostic Screen object model.",
5
+ "keywords": [
6
+ "cratis",
7
+ "scene",
8
+ "ui",
9
+ "ui-model",
10
+ "event-modeling",
11
+ "event-sourcing",
12
+ "cqrs",
13
+ "low-code"
14
+ ],
5
15
  "author": "Cratis",
6
16
  "license": "MIT",
7
17
  "repository": {