@cratis/scene.model 4.11.0 → 4.13.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 (107) hide show
  1. package/descriptors/PackageDesignTimeMetadata.ts +7 -1
  2. package/dist/cjs/descriptors/PackageDesignTimeMetadata.js +2 -1
  3. package/dist/cjs/descriptors/PackageDesignTimeMetadata.js.map +1 -1
  4. package/dist/cjs/forms/CommandFormLayout.js +13 -0
  5. package/dist/cjs/forms/CommandFormLayout.js.map +1 -0
  6. package/dist/cjs/forms/Form.js +2 -0
  7. package/dist/cjs/forms/Form.js.map +1 -1
  8. package/dist/cjs/forms/FormColumn.js +13 -0
  9. package/dist/cjs/forms/FormColumn.js.map +1 -0
  10. package/dist/cjs/forms/FormField.js +3 -6
  11. package/dist/cjs/forms/FormField.js.map +1 -1
  12. package/dist/cjs/forms/FormFieldPlacement.js +15 -0
  13. package/dist/cjs/forms/FormFieldPlacement.js.map +1 -0
  14. package/dist/cjs/forms/FormGenerationMode.js +14 -0
  15. package/dist/cjs/forms/FormGenerationMode.js.map +1 -0
  16. package/dist/cjs/forms/FormWidth.js +11 -0
  17. package/dist/cjs/forms/FormWidth.js.map +1 -0
  18. package/dist/cjs/forms/FormWidthUnit.js +16 -0
  19. package/dist/cjs/forms/FormWidthUnit.js.map +1 -0
  20. package/dist/cjs/index.js +16 -0
  21. package/dist/cjs/index.js.map +1 -1
  22. package/dist/cjs/screens/Outlet.js +2 -1
  23. package/dist/cjs/screens/Outlet.js.map +1 -1
  24. package/dist/cjs/screens/TemplateAttribution.js +14 -0
  25. package/dist/cjs/screens/TemplateAttribution.js.map +1 -0
  26. package/dist/cjs/screens/TemplateCompatibility.js +11 -0
  27. package/dist/cjs/screens/TemplateCompatibility.js.map +1 -0
  28. package/dist/cjs/screens/TemplateMetadata.js +5 -1
  29. package/dist/cjs/screens/TemplateMetadata.js.map +1 -1
  30. package/dist/esm/descriptors/PackageDesignTimeMetadata.d.ts +1 -0
  31. package/dist/esm/descriptors/PackageDesignTimeMetadata.d.ts.map +1 -1
  32. package/dist/esm/descriptors/PackageDesignTimeMetadata.js +2 -1
  33. package/dist/esm/descriptors/PackageDesignTimeMetadata.js.map +1 -1
  34. package/dist/esm/forms/CommandFormLayout.d.ts +11 -0
  35. package/dist/esm/forms/CommandFormLayout.d.ts.map +1 -0
  36. package/dist/esm/forms/CommandFormLayout.js +11 -0
  37. package/dist/esm/forms/CommandFormLayout.js.map +1 -0
  38. package/dist/esm/forms/Form.d.ts +4 -0
  39. package/dist/esm/forms/Form.d.ts.map +1 -1
  40. package/dist/esm/forms/Form.js +2 -0
  41. package/dist/esm/forms/Form.js.map +1 -1
  42. package/dist/esm/forms/FormColumn.d.ts +9 -0
  43. package/dist/esm/forms/FormColumn.d.ts.map +1 -0
  44. package/dist/esm/forms/FormColumn.js +11 -0
  45. package/dist/esm/forms/FormColumn.js.map +1 -0
  46. package/dist/esm/forms/FormField.d.ts +2 -0
  47. package/dist/esm/forms/FormField.d.ts.map +1 -1
  48. package/dist/esm/forms/FormField.js +3 -6
  49. package/dist/esm/forms/FormField.js.map +1 -1
  50. package/dist/esm/forms/FormFieldPlacement.d.ts +11 -0
  51. package/dist/esm/forms/FormFieldPlacement.d.ts.map +1 -0
  52. package/dist/esm/forms/FormFieldPlacement.js +13 -0
  53. package/dist/esm/forms/FormFieldPlacement.js.map +1 -0
  54. package/dist/esm/forms/FormGenerationMode.d.ts +5 -0
  55. package/dist/esm/forms/FormGenerationMode.d.ts.map +1 -0
  56. package/dist/esm/forms/FormGenerationMode.js +12 -0
  57. package/dist/esm/forms/FormGenerationMode.js.map +1 -0
  58. package/dist/esm/forms/FormWidth.d.ts +7 -0
  59. package/dist/esm/forms/FormWidth.d.ts.map +1 -0
  60. package/dist/esm/forms/FormWidth.js +9 -0
  61. package/dist/esm/forms/FormWidth.js.map +1 -0
  62. package/dist/esm/forms/FormWidthUnit.d.ts +7 -0
  63. package/dist/esm/forms/FormWidthUnit.d.ts.map +1 -0
  64. package/dist/esm/forms/FormWidthUnit.js +14 -0
  65. package/dist/esm/forms/FormWidthUnit.js.map +1 -0
  66. package/dist/esm/forms/index.d.ts +6 -0
  67. package/dist/esm/forms/index.d.ts.map +1 -1
  68. package/dist/esm/forms/index.js +6 -0
  69. package/dist/esm/forms/index.js.map +1 -1
  70. package/dist/esm/index.js +8 -0
  71. package/dist/esm/index.js.map +1 -1
  72. package/dist/esm/screens/Outlet.d.ts +1 -0
  73. package/dist/esm/screens/Outlet.d.ts.map +1 -1
  74. package/dist/esm/screens/Outlet.js +2 -1
  75. package/dist/esm/screens/Outlet.js.map +1 -1
  76. package/dist/esm/screens/TemplateAttribution.d.ts +7 -0
  77. package/dist/esm/screens/TemplateAttribution.d.ts.map +1 -0
  78. package/dist/esm/screens/TemplateAttribution.js +12 -0
  79. package/dist/esm/screens/TemplateAttribution.js.map +1 -0
  80. package/dist/esm/screens/TemplateCompatibility.d.ts +7 -0
  81. package/dist/esm/screens/TemplateCompatibility.d.ts.map +1 -0
  82. package/dist/esm/screens/TemplateCompatibility.js +9 -0
  83. package/dist/esm/screens/TemplateCompatibility.js.map +1 -0
  84. package/dist/esm/screens/TemplateMetadata.d.ts +6 -0
  85. package/dist/esm/screens/TemplateMetadata.d.ts.map +1 -1
  86. package/dist/esm/screens/TemplateMetadata.js +5 -1
  87. package/dist/esm/screens/TemplateMetadata.js.map +1 -1
  88. package/dist/esm/screens/index.d.ts +2 -0
  89. package/dist/esm/screens/index.d.ts.map +1 -1
  90. package/dist/esm/screens/index.js +2 -0
  91. package/dist/esm/screens/index.js.map +1 -1
  92. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  93. package/forms/CommandFormLayout.ts +18 -0
  94. package/forms/Form.ts +5 -1
  95. package/forms/FormColumn.ts +16 -0
  96. package/forms/FormField.ts +4 -1
  97. package/forms/FormFieldPlacement.ts +18 -0
  98. package/forms/FormGenerationMode.ts +10 -0
  99. package/forms/FormWidth.ts +16 -0
  100. package/forms/FormWidthUnit.ts +12 -0
  101. package/forms/index.ts +6 -0
  102. package/package.json +1 -1
  103. package/screens/Outlet.ts +8 -1
  104. package/screens/TemplateAttribution.ts +18 -0
  105. package/screens/TemplateCompatibility.ts +21 -0
  106. package/screens/TemplateMetadata.ts +14 -1
  107. package/screens/index.ts +2 -0
@@ -19,8 +19,14 @@ export interface PackageDesignTimeMetadata {
19
19
 
20
20
  /** Named design-time action handlers available in the package's design-time bundle. */
21
21
  actions: string[];
22
+
23
+ /**
24
+ * The design-time extension contract version (`major.minor`) the bundle was written against. Hosts load
25
+ * contributions only when the major version matches the one they implement; absent means `1.0`.
26
+ */
27
+ contractVersion?: string;
22
28
  }
23
29
 
24
30
  export const PackageDesignTimeMetadataPropertyNames: (keyof PackageDesignTimeMetadata)[] = [
25
- 'previews', 'designers', 'propertyEditors', 'propertyDisplays', 'actions',
31
+ 'previews', 'designers', 'propertyEditors', 'propertyDisplays', 'actions', 'contractVersion',
26
32
  ];
@@ -9,7 +9,8 @@
9
9
  'designers',
10
10
  'propertyEditors',
11
11
  'propertyDisplays',
12
- 'actions'
12
+ 'actions',
13
+ 'contractVersion'
13
14
  ];
14
15
 
15
16
  exports.PackageDesignTimeMetadataPropertyNames = PackageDesignTimeMetadataPropertyNames;
@@ -1 +1 @@
1
- {"version":3,"file":"PackageDesignTimeMetadata.js","sources":["../../../descriptors/PackageDesignTimeMetadata.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\n/**\n * Platform-neutral names of optional design-time extension points a package provides.\n */\nexport interface PackageDesignTimeMetadata {\n /** Named component preview renderers available in the package's design-time bundle. */\n previews: string[];\n\n /** Named full-component designers available in the package's design-time bundle. */\n designers: string[];\n\n /** Named property editors available in the package's design-time bundle. */\n propertyEditors: string[];\n\n /** Named property display renderers available in the package's design-time bundle. */\n propertyDisplays: string[];\n\n /** Named design-time action handlers available in the package's design-time bundle. */\n actions: string[];\n}\n\nexport const PackageDesignTimeMetadataPropertyNames: (keyof PackageDesignTimeMetadata)[] = [\n 'previews', 'designers', 'propertyEditors', 'propertyDisplays', 'actions',\n];\n"],"names":["PackageDesignTimeMetadataPropertyNames"],"mappings":";;AAAA;AACA;AAEA;;UAoBaA,sCAAAA,GAA8E;AACvF,IAAA,UAAA;AAAY,IAAA,WAAA;AAAa,IAAA,iBAAA;AAAmB,IAAA,kBAAA;AAAoB,IAAA;;;"}
1
+ {"version":3,"file":"PackageDesignTimeMetadata.js","sources":["../../../descriptors/PackageDesignTimeMetadata.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\n/**\n * Platform-neutral names of optional design-time extension points a package provides.\n */\nexport interface PackageDesignTimeMetadata {\n /** Named component preview renderers available in the package's design-time bundle. */\n previews: string[];\n\n /** Named full-component designers available in the package's design-time bundle. */\n designers: string[];\n\n /** Named property editors available in the package's design-time bundle. */\n propertyEditors: string[];\n\n /** Named property display renderers available in the package's design-time bundle. */\n propertyDisplays: string[];\n\n /** Named design-time action handlers available in the package's design-time bundle. */\n actions: string[];\n\n /**\n * The design-time extension contract version (`major.minor`) the bundle was written against. Hosts load\n * contributions only when the major version matches the one they implement; absent means `1.0`.\n */\n contractVersion?: string;\n}\n\nexport const PackageDesignTimeMetadataPropertyNames: (keyof PackageDesignTimeMetadata)[] = [\n 'previews', 'designers', 'propertyEditors', 'propertyDisplays', 'actions', 'contractVersion',\n];\n"],"names":["PackageDesignTimeMetadataPropertyNames"],"mappings":";;AAAA;AACA;AAEA;;UA0BaA,sCAAAA,GAA8E;AACvF,IAAA,UAAA;AAAY,IAAA,WAAA;AAAa,IAAA,iBAAA;AAAmB,IAAA,kBAAA;AAAoB,IAAA,SAAA;AAAW,IAAA;;;"}
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ // Copyright (c) Cratis. All rights reserved.
4
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
5
+ const CommandFormLayoutPropertyNames = [
6
+ 'columns',
7
+ 'placements',
8
+ 'columnGap',
9
+ 'rowGap'
10
+ ];
11
+
12
+ exports.CommandFormLayoutPropertyNames = CommandFormLayoutPropertyNames;
13
+ //# sourceMappingURL=CommandFormLayout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CommandFormLayout.js","sources":["../../../forms/CommandFormLayout.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 { FormColumn } from './FormColumn';\nimport { FormFieldPlacement } from './FormFieldPlacement';\nimport { FormWidth } from './FormWidth';\n\n/**\n * Platform-neutral command-form geometry. It is independent of auto/manual field generation mode.\n */\nexport interface CommandFormLayout {\n columns: FormColumn[];\n placements: FormFieldPlacement[];\n columnGap?: FormWidth;\n rowGap?: FormWidth;\n}\n\nexport const CommandFormLayoutPropertyNames: (keyof CommandFormLayout)[] = ['columns', 'placements', 'columnGap', 'rowGap'];\n"],"names":["CommandFormLayoutPropertyNames"],"mappings":";;AAAA;AACA;MAgBaA,8BAAAA,GAA8D;AAAC,IAAA,SAAA;AAAW,IAAA,YAAA;AAAc,IAAA,WAAA;AAAa,IAAA;;;"}
@@ -6,6 +6,8 @@ const FormPropertyNames = [
6
6
  'name',
7
7
  'forCommand',
8
8
  'populateSource',
9
+ 'generationMode',
10
+ 'layout',
9
11
  'fields',
10
12
  'behaviors'
11
13
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"Form.js","sources":["../../../forms/Form.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 { PopulateSource } from './PopulateSource';\nimport { FormField } from './FormField';\nimport { Behavior } from '../interactions';\n\n/**\n * The command-side counterpart to a table or summary: a named, typed form for one command.\n */\nexport interface Form {\n name: string;\n forCommand: string;\n populateSource?: PopulateSource;\n fields: FormField[];\n /**\n * The behaviors attached here - what happens when someone interacts with it. Additive with whatever is\n * attached further out or further in.\n */\n behaviors?: Behavior[];\n}\n\nexport const FormPropertyNames: (keyof Form)[] = ['name', 'forCommand', 'populateSource', 'fields', 'behaviors'];\n"],"names":["FormPropertyNames"],"mappings":";;AAAA;AACA;MAqBaA,iBAAAA,GAAoC;AAAC,IAAA,MAAA;AAAQ,IAAA,YAAA;AAAc,IAAA,gBAAA;AAAkB,IAAA,QAAA;AAAU,IAAA;;;"}
1
+ {"version":3,"file":"Form.js","sources":["../../../forms/Form.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 { CommandFormLayout } from './CommandFormLayout';\nimport { FormGenerationMode } from './FormGenerationMode';\nimport { PopulateSource } from './PopulateSource';\nimport { FormField } from './FormField';\nimport { Behavior } from '../interactions';\n\n/**\n * The command-side counterpart to a table or summary: a named, typed form for one command.\n */\nexport interface Form {\n name: string;\n forCommand: string;\n populateSource?: PopulateSource;\n generationMode?: FormGenerationMode;\n layout?: CommandFormLayout;\n fields: FormField[];\n /**\n * The behaviors attached here - what happens when someone interacts with it. Additive with whatever is\n * attached further out or further in.\n */\n behaviors?: Behavior[];\n}\n\nexport const FormPropertyNames: (keyof Form)[] = ['name', 'forCommand', 'populateSource', 'generationMode', 'layout', 'fields', 'behaviors'];\n"],"names":["FormPropertyNames"],"mappings":";;AAAA;AACA;MAyBaA,iBAAAA,GAAoC;AAAC,IAAA,MAAA;AAAQ,IAAA,YAAA;AAAc,IAAA,gBAAA;AAAkB,IAAA,gBAAA;AAAkB,IAAA,QAAA;AAAU,IAAA,QAAA;AAAU,IAAA;;;"}
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ // Copyright (c) Cratis. All rights reserved.
4
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
5
+ const FormColumnPropertyNames = [
6
+ 'index',
7
+ 'width',
8
+ 'minWidth',
9
+ 'maxWidth'
10
+ ];
11
+
12
+ exports.FormColumnPropertyNames = FormColumnPropertyNames;
13
+ //# sourceMappingURL=FormColumn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormColumn.js","sources":["../../../forms/FormColumn.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 { FormWidth } from './FormWidth';\n\n/**\n * One column in a command-form geometry grid. Indexes are one-based for authored stability.\n */\nexport interface FormColumn {\n index: number;\n width?: FormWidth;\n minWidth?: FormWidth;\n maxWidth?: FormWidth;\n}\n\nexport const FormColumnPropertyNames: (keyof FormColumn)[] = ['index', 'width', 'minWidth', 'maxWidth'];\n"],"names":["FormColumnPropertyNames"],"mappings":";;AAAA;AACA;MAcaA,uBAAAA,GAAgD;AAAC,IAAA,OAAA;AAAS,IAAA,OAAA;AAAS,IAAA,UAAA;AAAY,IAAA;;;"}
@@ -2,15 +2,12 @@
2
2
 
3
3
  // Copyright (c) Cratis. All rights reserved.
4
4
  // Licensed under the MIT license. See LICENSE file in the project root for full license information.
5
- /**
6
- * One field of a {@link Form}. Mirrors the three population tiers Screenplay's `form` construct
7
- * establishes: auto-mapped by name (`sourceProperty` and `composeUsing` both undefined), explicitly
8
- * renamed (`sourceProperty` set), or computed by a callback (`composeUsing` set).
9
- */ const FormFieldPropertyNames = [
5
+ const FormFieldPropertyNames = [
10
6
  'name',
11
7
  'sourceProperty',
12
8
  'composeUsing',
13
- 'label'
9
+ 'label',
10
+ 'placement'
14
11
  ];
15
12
 
16
13
  exports.FormFieldPropertyNames = FormFieldPropertyNames;
@@ -1 +1 @@
1
- {"version":3,"file":"FormField.js","sources":["../../../forms/FormField.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\n/**\n * One field of a {@link Form}. Mirrors the three population tiers Screenplay's `form` construct\n * establishes: auto-mapped by name (`sourceProperty` and `composeUsing` both undefined), explicitly\n * renamed (`sourceProperty` set), or computed by a callback (`composeUsing` set).\n */\nexport interface FormField {\n name: string;\n sourceProperty?: string;\n composeUsing?: string;\n label?: string;\n}\n\nexport const FormFieldPropertyNames: (keyof FormField)[] = ['name', 'sourceProperty', 'composeUsing', 'label'];\n"],"names":["FormFieldPropertyNames"],"mappings":";;AAAA;AACA;AAEA;;;;UAYaA,sBAAAA,GAA8C;AAAC,IAAA,MAAA;AAAQ,IAAA,gBAAA;AAAkB,IAAA,cAAA;AAAgB,IAAA;;;"}
1
+ {"version":3,"file":"FormField.js","sources":["../../../forms/FormField.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 { FormFieldPlacement } from './FormFieldPlacement';\n\n/**\n * One field of a {@link Form}. Mirrors the three population tiers Screenplay's `form` construct\n * establishes: auto-mapped by name (`sourceProperty` and `composeUsing` both undefined), explicitly\n * renamed (`sourceProperty` set), or computed by a callback (`composeUsing` set).\n */\nexport interface FormField {\n name: string;\n sourceProperty?: string;\n composeUsing?: string;\n label?: string;\n placement?: FormFieldPlacement;\n}\n\nexport const FormFieldPropertyNames: (keyof FormField)[] = ['name', 'sourceProperty', 'composeUsing', 'label', 'placement'];\n"],"names":["FormFieldPropertyNames"],"mappings":";;AAAA;AACA;MAiBaA,sBAAAA,GAA8C;AAAC,IAAA,MAAA;AAAQ,IAAA,gBAAA;AAAkB,IAAA,cAAA;AAAgB,IAAA,OAAA;AAAS,IAAA;;;"}
@@ -0,0 +1,15 @@
1
+ 'use strict';
2
+
3
+ // Copyright (c) Cratis. All rights reserved.
4
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
5
+ const FormFieldPlacementPropertyNames = [
6
+ 'field',
7
+ 'row',
8
+ 'column',
9
+ 'rowSpan',
10
+ 'columnSpan',
11
+ 'width'
12
+ ];
13
+
14
+ exports.FormFieldPlacementPropertyNames = FormFieldPlacementPropertyNames;
15
+ //# sourceMappingURL=FormFieldPlacement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormFieldPlacement.js","sources":["../../../forms/FormFieldPlacement.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 { FormWidth } from './FormWidth';\n\n/**\n * Authored placement for one command-form field in a platform-neutral grid. Row and column are one-based.\n */\nexport interface FormFieldPlacement {\n field: string;\n row: number;\n column: number;\n rowSpan?: number;\n columnSpan?: number;\n width?: FormWidth;\n}\n\nexport const FormFieldPlacementPropertyNames: (keyof FormFieldPlacement)[] = ['field', 'row', 'column', 'rowSpan', 'columnSpan', 'width'];\n"],"names":["FormFieldPlacementPropertyNames"],"mappings":";;AAAA;AACA;MAgBaA,+BAAAA,GAAgE;AAAC,IAAA,OAAA;AAAS,IAAA,KAAA;AAAO,IAAA,QAAA;AAAU,IAAA,SAAA;AAAW,IAAA,YAAA;AAAc,IAAA;;;"}
@@ -0,0 +1,14 @@
1
+ 'use strict';
2
+
3
+ // Copyright (c) Cratis. All rights reserved.
4
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
5
+ /**
6
+ * How a command form's fields are generated.
7
+ */ var FormGenerationMode = /*#__PURE__*/ function(FormGenerationMode) {
8
+ FormGenerationMode["Auto"] = "auto";
9
+ FormGenerationMode["Manual"] = "manual";
10
+ return FormGenerationMode;
11
+ }({});
12
+
13
+ exports.FormGenerationMode = FormGenerationMode;
14
+ //# sourceMappingURL=FormGenerationMode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormGenerationMode.js","sources":["../../../forms/FormGenerationMode.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\n/**\n * How a command form's fields are generated.\n */\nexport enum FormGenerationMode {\n Auto = 'auto',\n Manual = 'manual',\n}\n"],"names":["FormGenerationMode"],"mappings":";;AAAA;AACA;AAEA;;IAGO,IAAKA,kBAAAA,iBAAAA,SAAAA,kBAAAA,EAAAA;;;AAAAA,IAAAA,OAAAA,kBAAAA;AAGX,CAAA,CAAA,EAAA;;"}
@@ -0,0 +1,11 @@
1
+ 'use strict';
2
+
3
+ // Copyright (c) Cratis. All rights reserved.
4
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
5
+ const FormWidthPropertyNames = [
6
+ 'unit',
7
+ 'value'
8
+ ];
9
+
10
+ exports.FormWidthPropertyNames = FormWidthPropertyNames;
11
+ //# sourceMappingURL=FormWidth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormWidth.js","sources":["../../../forms/FormWidth.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 { FormWidthUnit } from './FormWidthUnit';\n\n/**\n * A platform-neutral width value for form geometry.\n */\nexport interface FormWidth {\n unit: FormWidthUnit;\n\n /** The numeric value for fraction, pixel and percent widths. Omitted for `auto`. */\n value?: number;\n}\n\nexport const FormWidthPropertyNames: (keyof FormWidth)[] = ['unit', 'value'];\n"],"names":["FormWidthPropertyNames"],"mappings":";;AAAA;AACA;MAcaA,sBAAAA,GAA8C;AAAC,IAAA,MAAA;AAAQ,IAAA;;;"}
@@ -0,0 +1,16 @@
1
+ 'use strict';
2
+
3
+ // Copyright (c) Cratis. All rights reserved.
4
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
5
+ /**
6
+ * The unit used by a command-form column, gap or field width.
7
+ */ var FormWidthUnit = /*#__PURE__*/ function(FormWidthUnit) {
8
+ FormWidthUnit["Fraction"] = "fraction";
9
+ FormWidthUnit["Pixels"] = "pixels";
10
+ FormWidthUnit["Percent"] = "percent";
11
+ FormWidthUnit["Auto"] = "auto";
12
+ return FormWidthUnit;
13
+ }({});
14
+
15
+ exports.FormWidthUnit = FormWidthUnit;
16
+ //# sourceMappingURL=FormWidthUnit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormWidthUnit.js","sources":["../../../forms/FormWidthUnit.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\n/**\n * The unit used by a command-form column, gap or field width.\n */\nexport enum FormWidthUnit {\n Fraction = 'fraction',\n Pixels = 'pixels',\n Percent = 'percent',\n Auto = 'auto',\n}\n"],"names":["FormWidthUnit"],"mappings":";;AAAA;AACA;AAEA;;IAGO,IAAKA,aAAAA,iBAAAA,SAAAA,aAAAA,EAAAA;;;;;AAAAA,IAAAA,OAAAA,aAAAA;AAKX,CAAA,CAAA,EAAA;;"}
package/dist/cjs/index.js CHANGED
@@ -53,8 +53,14 @@ var ElementPlacement = require('./layouts/ElementPlacement.js');
53
53
  var FreeformSlotArrangement = require('./layouts/FreeformSlotArrangement.js');
54
54
  var FreeformSlotVariant = require('./layouts/FreeformSlotVariant.js');
55
55
  var SlotPlacement = require('./layouts/SlotPlacement.js');
56
+ var CommandFormLayout = require('./forms/CommandFormLayout.js');
56
57
  var Form = require('./forms/Form.js');
58
+ var FormColumn = require('./forms/FormColumn.js');
57
59
  var FormField = require('./forms/FormField.js');
60
+ var FormFieldPlacement = require('./forms/FormFieldPlacement.js');
61
+ var FormGenerationMode = require('./forms/FormGenerationMode.js');
62
+ var FormWidth = require('./forms/FormWidth.js');
63
+ var FormWidthUnit = require('./forms/FormWidthUnit.js');
58
64
  var PopulateViaQuery = require('./forms/PopulateViaQuery.js');
59
65
  var PopulateFromItem = require('./forms/PopulateFromItem.js');
60
66
  var ContributionPoint = require('./contributionPoints/ContributionPoint.js');
@@ -95,6 +101,8 @@ var Outlet = require('./screens/Outlet.js');
95
101
  var Screen = require('./screens/Screen.js');
96
102
  var ScreenTemplate = require('./screens/ScreenTemplate.js');
97
103
  var DialogTemplate = require('./screens/DialogTemplate.js');
104
+ var TemplateAttribution = require('./screens/TemplateAttribution.js');
105
+ var TemplateCompatibility = require('./screens/TemplateCompatibility.js');
98
106
  var TemplateMetadata = require('./screens/TemplateMetadata.js');
99
107
  var UiStarter = require('./starters/UiStarter.js');
100
108
  var QueryResultShape = require('./queries/QueryResultShape.js');
@@ -213,8 +221,14 @@ exports.ElementPlacementPropertyNames = ElementPlacement.ElementPlacementPropert
213
221
  exports.FreeformSlotArrangementPropertyNames = FreeformSlotArrangement.FreeformSlotArrangementPropertyNames;
214
222
  exports.FreeformSlotVariantPropertyNames = FreeformSlotVariant.FreeformSlotVariantPropertyNames;
215
223
  exports.SlotPlacementPropertyNames = SlotPlacement.SlotPlacementPropertyNames;
224
+ exports.CommandFormLayoutPropertyNames = CommandFormLayout.CommandFormLayoutPropertyNames;
216
225
  exports.FormPropertyNames = Form.FormPropertyNames;
226
+ exports.FormColumnPropertyNames = FormColumn.FormColumnPropertyNames;
217
227
  exports.FormFieldPropertyNames = FormField.FormFieldPropertyNames;
228
+ exports.FormFieldPlacementPropertyNames = FormFieldPlacement.FormFieldPlacementPropertyNames;
229
+ exports.FormGenerationMode = FormGenerationMode.FormGenerationMode;
230
+ exports.FormWidthPropertyNames = FormWidth.FormWidthPropertyNames;
231
+ exports.FormWidthUnit = FormWidthUnit.FormWidthUnit;
218
232
  exports.PopulateViaQueryPropertyNames = PopulateViaQuery.PopulateViaQueryPropertyNames;
219
233
  exports.PopulateFromItemPropertyNames = PopulateFromItem.PopulateFromItemPropertyNames;
220
234
  exports.ContributionPointPropertyNames = ContributionPoint.ContributionPointPropertyNames;
@@ -258,6 +272,8 @@ exports.OutletPropertyNames = Outlet.OutletPropertyNames;
258
272
  exports.ScreenPropertyNames = Screen.ScreenPropertyNames;
259
273
  exports.ScreenTemplatePropertyNames = ScreenTemplate.ScreenTemplatePropertyNames;
260
274
  exports.DialogTemplatePropertyNames = DialogTemplate.DialogTemplatePropertyNames;
275
+ exports.TemplateAttributionPropertyNames = TemplateAttribution.TemplateAttributionPropertyNames;
276
+ exports.TemplateCompatibilityPropertyNames = TemplateCompatibility.TemplateCompatibilityPropertyNames;
261
277
  exports.TemplateMetadataPropertyNames = TemplateMetadata.TemplateMetadataPropertyNames;
262
278
  exports.TemplateScope = TemplateMetadata.TemplateScope;
263
279
  exports.UiStarterPropertyNames = UiStarter.UiStarterPropertyNames;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -6,7 +6,8 @@
6
6
  * A named replacement surface for routed or nested screen content.
7
7
  */ const OutletPropertyNames = [
8
8
  'name',
9
- 'description'
9
+ 'description',
10
+ 'accepts'
10
11
  ];
11
12
 
12
13
  exports.OutletPropertyNames = OutletPropertyNames;
@@ -1 +1 @@
1
- {"version":3,"file":"Outlet.js","sources":["../../../screens/Outlet.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\n/**\n * A named replacement surface for routed or nested screen content.\n */\nexport interface Outlet {\n /** Stable outlet name used by destinations. */\n name: string;\n\n /** Optional description for designers. */\n description?: string;\n}\n\nexport const OutletPropertyNames: (keyof Outlet)[] = ['name', 'description'];\n"],"names":["OutletPropertyNames"],"mappings":";;AAAA;AACA;AAEA;;UAWaA,mBAAAA,GAAwC;AAAC,IAAA,MAAA;AAAQ,IAAA;;;"}
1
+ {"version":3,"file":"Outlet.js","sources":["../../../screens/Outlet.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\n/**\n * A named replacement surface for routed or nested screen content.\n */\nexport interface Outlet {\n /** Stable outlet name used by destinations. */\n name: string;\n\n /** Optional description for designers. */\n description?: string;\n\n /**\n * The semantic template types (`TemplateMetadata.type`) a screen must have to be placed in this outlet,\n * such as `Detail` or `Form`. Absent accepts any screen. A destination that places a screen of another\n * type here is diagnosed as an incompatible outlet rather than rendered somewhere it was not designed for.\n */\n accepts?: string[];\n}\n\nexport const OutletPropertyNames: (keyof Outlet)[] = ['name', 'description', 'accepts'];\n"],"names":["OutletPropertyNames"],"mappings":";;AAAA;AACA;AAEA;;UAkBaA,mBAAAA,GAAwC;AAAC,IAAA,MAAA;AAAQ,IAAA,aAAA;AAAe,IAAA;;;"}
@@ -0,0 +1,14 @@
1
+ 'use strict';
2
+
3
+ // Copyright (c) Cratis. All rights reserved.
4
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
5
+ /**
6
+ * Who authored a template and what must accompany it when it is reused.
7
+ */ const TemplateAttributionPropertyNames = [
8
+ 'author',
9
+ 'url',
10
+ 'notice'
11
+ ];
12
+
13
+ exports.TemplateAttributionPropertyNames = TemplateAttributionPropertyNames;
14
+ //# sourceMappingURL=TemplateAttribution.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TemplateAttribution.js","sources":["../../../screens/TemplateAttribution.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\n/**\n * Who authored a template and what must accompany it when it is reused.\n */\nexport interface TemplateAttribution {\n /** The person or organization that authored the template. */\n author: string;\n\n /** An absolute `https` URL where the template's source or documentation lives. */\n url?: string;\n\n /** An attribution notice a license requires to travel with the template, shown by a template browser. */\n notice?: string;\n}\n\nexport const TemplateAttributionPropertyNames: (keyof TemplateAttribution)[] = ['author', 'url', 'notice'];\n"],"names":["TemplateAttributionPropertyNames"],"mappings":";;AAAA;AACA;AAEA;;UAcaA,gCAAAA,GAAkE;AAAC,IAAA,QAAA;AAAU,IAAA,KAAA;AAAO,IAAA;;;"}
@@ -0,0 +1,11 @@
1
+ 'use strict';
2
+
3
+ // Copyright (c) Cratis. All rights reserved.
4
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
5
+ const TemplateCompatibilityPropertyNames = [
6
+ 'scene',
7
+ 'packages'
8
+ ];
9
+
10
+ exports.TemplateCompatibilityPropertyNames = TemplateCompatibilityPropertyNames;
11
+ //# sourceMappingURL=TemplateCompatibility.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TemplateCompatibility.js","sources":["../../../screens/TemplateCompatibility.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 { PackageDependency } from '../packages/PackageDependency';\n\n/**\n * Which Scene and package versions a template was authored and verified against.\n *\n * A template names components, slots and bindings that only exist in particular versions of Scene and of\n * the packages that provide them. Declaring the ranges lets a catalog mark a template as incompatible with\n * the active package set before an author picks it, instead of rendering placeholders after they have.\n */\nexport interface TemplateCompatibility {\n /** The Scene model version range the template requires, such as `^4.13.0`. */\n scene: string;\n\n /** The packages, and their version ranges, whose components or layouts the template uses. */\n packages?: PackageDependency[];\n}\n\nexport const TemplateCompatibilityPropertyNames: (keyof TemplateCompatibility)[] = ['scene', 'packages'];\n"],"names":["TemplateCompatibilityPropertyNames"],"mappings":";;AAAA;AACA;MAmBaA,kCAAAA,GAAsE;AAAC,IAAA,OAAA;AAAS,IAAA;;;"}
@@ -13,7 +13,11 @@
13
13
  const TemplateMetadataPropertyNames = [
14
14
  'type',
15
15
  'category',
16
- 'scopes'
16
+ 'scopes',
17
+ 'compatibility',
18
+ 'attribution',
19
+ 'license',
20
+ 'licenseUrl'
17
21
  ];
18
22
 
19
23
  exports.TemplateMetadataPropertyNames = TemplateMetadataPropertyNames;
@@ -1 +1 @@
1
- {"version":3,"file":"TemplateMetadata.js","sources":["../../../screens/TemplateMetadata.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\n/** The application hierarchy at which a reusable template is selected. */\nexport enum TemplateScope {\n Application = 'Application',\n Module = 'Module',\n Feature = 'Feature',\n Subfeature = 'Subfeature',\n Slice = 'Slice',\n}\n\n/**\n * Optional semantic and browsing metadata. Type and category are open strings so packages can\n * introduce their own vocabulary without a Scene release. Category never determines applicability.\n */\nexport interface TemplateMetadata {\n /** Semantic role; built-in roles are ApplicationShell, Workspace, List, Detail, Form and Dialog. */\n type?: string;\n /** A package-defined browse category, preserved even when the host does not recognize it. */\n category?: string;\n /** Explicit scope restriction. Absent uses the structural role; an empty list allows no scope. */\n scopes?: TemplateScope[];\n}\n\nexport const TemplateMetadataPropertyNames: (keyof TemplateMetadata)[] = ['type', 'category', 'scopes'];\n"],"names":["TemplateScope","TemplateMetadataPropertyNames"],"mappings":";;AAAA;AACA;AAEA,2EACO,IAAKA,aAAAA,iBAAAA,SAAAA,aAAAA,EAAAA;;;;;;AAAAA,IAAAA,OAAAA,aAAAA;AAMX,CAAA,CAAA,EAAA;MAeYC,6BAAAA,GAA4D;AAAC,IAAA,MAAA;AAAQ,IAAA,UAAA;AAAY,IAAA;;;;"}
1
+ {"version":3,"file":"TemplateMetadata.js","sources":["../../../screens/TemplateMetadata.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 { TemplateAttribution } from './TemplateAttribution';\nimport { TemplateCompatibility } from './TemplateCompatibility';\n\n/** The application hierarchy at which a reusable template is selected. */\nexport enum TemplateScope {\n Application = 'Application',\n Module = 'Module',\n Feature = 'Feature',\n Subfeature = 'Subfeature',\n Slice = 'Slice',\n}\n\n/**\n * Optional semantic and browsing metadata. Type and category are open strings so packages can\n * introduce their own vocabulary without a Scene release. Category never determines applicability.\n */\nexport interface TemplateMetadata {\n /** Semantic role; built-in roles are ApplicationShell, Workspace, List, Detail, Form and Dialog. */\n type?: string;\n /** A package-defined browse category, preserved even when the host does not recognize it. */\n category?: string;\n /** Explicit scope restriction. Absent uses the structural role; an empty list allows no scope. */\n scopes?: TemplateScope[];\n /** The Scene and package versions the template requires. Required for every shipped template. */\n compatibility?: TemplateCompatibility;\n /** Who authored the template. Required for every shipped template. */\n attribution?: TemplateAttribution;\n /** The SPDX license identifier the template is available under, such as `MIT`. Required for every shipped template. */\n license?: string;\n /** An absolute `https` URL to the license terms. */\n licenseUrl?: string;\n}\n\nexport const TemplateMetadataPropertyNames: (keyof TemplateMetadata)[] = [\n 'type', 'category', 'scopes', 'compatibility', 'attribution', 'license', 'licenseUrl',\n];\n"],"names":["TemplateScope","TemplateMetadataPropertyNames"],"mappings":";;AAAA;AACA;AAKA,2EACO,IAAKA,aAAAA,iBAAAA,SAAAA,aAAAA,EAAAA;;;;;;AAAAA,IAAAA,OAAAA,aAAAA;AAMX,CAAA,CAAA,EAAA;MAuBYC,6BAAAA,GAA4D;AACrE,IAAA,MAAA;AAAQ,IAAA,UAAA;AAAY,IAAA,QAAA;AAAU,IAAA,eAAA;AAAiB,IAAA,aAAA;AAAe,IAAA,SAAA;AAAW,IAAA;;;;"}
@@ -4,6 +4,7 @@ export interface PackageDesignTimeMetadata {
4
4
  propertyEditors: string[];
5
5
  propertyDisplays: string[];
6
6
  actions: string[];
7
+ contractVersion?: string;
7
8
  }
8
9
  export declare const PackageDesignTimeMetadataPropertyNames: (keyof PackageDesignTimeMetadata)[];
9
10
  //# sourceMappingURL=PackageDesignTimeMetadata.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PackageDesignTimeMetadata.d.ts","sourceRoot":"","sources":["../../../descriptors/PackageDesignTimeMetadata.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,yBAAyB;IAEtC,QAAQ,EAAE,MAAM,EAAE,CAAC;IAGnB,SAAS,EAAE,MAAM,EAAE,CAAC;IAGpB,eAAe,EAAE,MAAM,EAAE,CAAC;IAG1B,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAG3B,OAAO,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,eAAO,MAAM,sCAAsC,EAAE,CAAC,MAAM,yBAAyB,CAAC,EAErF,CAAC"}
1
+ {"version":3,"file":"PackageDesignTimeMetadata.d.ts","sourceRoot":"","sources":["../../../descriptors/PackageDesignTimeMetadata.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,yBAAyB;IAEtC,QAAQ,EAAE,MAAM,EAAE,CAAC;IAGnB,SAAS,EAAE,MAAM,EAAE,CAAC;IAGpB,eAAe,EAAE,MAAM,EAAE,CAAC;IAG1B,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAG3B,OAAO,EAAE,MAAM,EAAE,CAAC;IAMlB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,eAAO,MAAM,sCAAsC,EAAE,CAAC,MAAM,yBAAyB,CAAC,EAErF,CAAC"}
@@ -7,7 +7,8 @@
7
7
  'designers',
8
8
  'propertyEditors',
9
9
  'propertyDisplays',
10
- 'actions'
10
+ 'actions',
11
+ 'contractVersion'
11
12
  ];
12
13
 
13
14
  export { PackageDesignTimeMetadataPropertyNames };
@@ -1 +1 @@
1
- {"version":3,"file":"PackageDesignTimeMetadata.js","sources":["../../../descriptors/PackageDesignTimeMetadata.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\n/**\n * Platform-neutral names of optional design-time extension points a package provides.\n */\nexport interface PackageDesignTimeMetadata {\n /** Named component preview renderers available in the package's design-time bundle. */\n previews: string[];\n\n /** Named full-component designers available in the package's design-time bundle. */\n designers: string[];\n\n /** Named property editors available in the package's design-time bundle. */\n propertyEditors: string[];\n\n /** Named property display renderers available in the package's design-time bundle. */\n propertyDisplays: string[];\n\n /** Named design-time action handlers available in the package's design-time bundle. */\n actions: string[];\n}\n\nexport const PackageDesignTimeMetadataPropertyNames: (keyof PackageDesignTimeMetadata)[] = [\n 'previews', 'designers', 'propertyEditors', 'propertyDisplays', 'actions',\n];\n"],"names":["PackageDesignTimeMetadataPropertyNames"],"mappings":"AAAA;AACA;AAEA;;UAoBaA,sCAAAA,GAA8E;AACvF,IAAA,UAAA;AAAY,IAAA,WAAA;AAAa,IAAA,iBAAA;AAAmB,IAAA,kBAAA;AAAoB,IAAA;;;"}
1
+ {"version":3,"file":"PackageDesignTimeMetadata.js","sources":["../../../descriptors/PackageDesignTimeMetadata.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\n/**\n * Platform-neutral names of optional design-time extension points a package provides.\n */\nexport interface PackageDesignTimeMetadata {\n /** Named component preview renderers available in the package's design-time bundle. */\n previews: string[];\n\n /** Named full-component designers available in the package's design-time bundle. */\n designers: string[];\n\n /** Named property editors available in the package's design-time bundle. */\n propertyEditors: string[];\n\n /** Named property display renderers available in the package's design-time bundle. */\n propertyDisplays: string[];\n\n /** Named design-time action handlers available in the package's design-time bundle. */\n actions: string[];\n\n /**\n * The design-time extension contract version (`major.minor`) the bundle was written against. Hosts load\n * contributions only when the major version matches the one they implement; absent means `1.0`.\n */\n contractVersion?: string;\n}\n\nexport const PackageDesignTimeMetadataPropertyNames: (keyof PackageDesignTimeMetadata)[] = [\n 'previews', 'designers', 'propertyEditors', 'propertyDisplays', 'actions', 'contractVersion',\n];\n"],"names":["PackageDesignTimeMetadataPropertyNames"],"mappings":"AAAA;AACA;AAEA;;UA0BaA,sCAAAA,GAA8E;AACvF,IAAA,UAAA;AAAY,IAAA,WAAA;AAAa,IAAA,iBAAA;AAAmB,IAAA,kBAAA;AAAoB,IAAA,SAAA;AAAW,IAAA;;;"}
@@ -0,0 +1,11 @@
1
+ import { FormColumn } from './FormColumn';
2
+ import { FormFieldPlacement } from './FormFieldPlacement';
3
+ import { FormWidth } from './FormWidth';
4
+ export interface CommandFormLayout {
5
+ columns: FormColumn[];
6
+ placements: FormFieldPlacement[];
7
+ columnGap?: FormWidth;
8
+ rowGap?: FormWidth;
9
+ }
10
+ export declare const CommandFormLayoutPropertyNames: (keyof CommandFormLayout)[];
11
+ //# sourceMappingURL=CommandFormLayout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CommandFormLayout.d.ts","sourceRoot":"","sources":["../../../forms/CommandFormLayout.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAKxC,MAAM,WAAW,iBAAiB;IAC9B,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,UAAU,EAAE,kBAAkB,EAAE,CAAC;IACjC,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,MAAM,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,eAAO,MAAM,8BAA8B,EAAE,CAAC,MAAM,iBAAiB,CAAC,EAAqD,CAAC"}
@@ -0,0 +1,11 @@
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
+ const CommandFormLayoutPropertyNames = [
4
+ 'columns',
5
+ 'placements',
6
+ 'columnGap',
7
+ 'rowGap'
8
+ ];
9
+
10
+ export { CommandFormLayoutPropertyNames };
11
+ //# sourceMappingURL=CommandFormLayout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CommandFormLayout.js","sources":["../../../forms/CommandFormLayout.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 { FormColumn } from './FormColumn';\nimport { FormFieldPlacement } from './FormFieldPlacement';\nimport { FormWidth } from './FormWidth';\n\n/**\n * Platform-neutral command-form geometry. It is independent of auto/manual field generation mode.\n */\nexport interface CommandFormLayout {\n columns: FormColumn[];\n placements: FormFieldPlacement[];\n columnGap?: FormWidth;\n rowGap?: FormWidth;\n}\n\nexport const CommandFormLayoutPropertyNames: (keyof CommandFormLayout)[] = ['columns', 'placements', 'columnGap', 'rowGap'];\n"],"names":["CommandFormLayoutPropertyNames"],"mappings":"AAAA;AACA;MAgBaA,8BAAAA,GAA8D;AAAC,IAAA,SAAA;AAAW,IAAA,YAAA;AAAc,IAAA,WAAA;AAAa,IAAA;;;"}
@@ -1,3 +1,5 @@
1
+ import { CommandFormLayout } from './CommandFormLayout';
2
+ import { FormGenerationMode } from './FormGenerationMode';
1
3
  import { PopulateSource } from './PopulateSource';
2
4
  import { FormField } from './FormField';
3
5
  import { Behavior } from '../interactions';
@@ -5,6 +7,8 @@ export interface Form {
5
7
  name: string;
6
8
  forCommand: string;
7
9
  populateSource?: PopulateSource;
10
+ generationMode?: FormGenerationMode;
11
+ layout?: CommandFormLayout;
8
12
  fields: FormField[];
9
13
  behaviors?: Behavior[];
10
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Form.d.ts","sourceRoot":"","sources":["../../../forms/Form.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAK3C,MAAM,WAAW,IAAI;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,MAAM,EAAE,SAAS,EAAE,CAAC;IAKpB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;CAC1B;AAED,eAAO,MAAM,iBAAiB,EAAE,CAAC,MAAM,IAAI,CAAC,EAAoE,CAAC"}
1
+ {"version":3,"file":"Form.d.ts","sourceRoot":"","sources":["../../../forms/Form.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAK3C,MAAM,WAAW,IAAI;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,cAAc,CAAC,EAAE,kBAAkB,CAAC;IACpC,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,MAAM,EAAE,SAAS,EAAE,CAAC;IAKpB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;CAC1B;AAED,eAAO,MAAM,iBAAiB,EAAE,CAAC,MAAM,IAAI,CAAC,EAAgG,CAAC"}
@@ -4,6 +4,8 @@ const FormPropertyNames = [
4
4
  'name',
5
5
  'forCommand',
6
6
  'populateSource',
7
+ 'generationMode',
8
+ 'layout',
7
9
  'fields',
8
10
  'behaviors'
9
11
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"Form.js","sources":["../../../forms/Form.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 { PopulateSource } from './PopulateSource';\nimport { FormField } from './FormField';\nimport { Behavior } from '../interactions';\n\n/**\n * The command-side counterpart to a table or summary: a named, typed form for one command.\n */\nexport interface Form {\n name: string;\n forCommand: string;\n populateSource?: PopulateSource;\n fields: FormField[];\n /**\n * The behaviors attached here - what happens when someone interacts with it. Additive with whatever is\n * attached further out or further in.\n */\n behaviors?: Behavior[];\n}\n\nexport const FormPropertyNames: (keyof Form)[] = ['name', 'forCommand', 'populateSource', 'fields', 'behaviors'];\n"],"names":["FormPropertyNames"],"mappings":"AAAA;AACA;MAqBaA,iBAAAA,GAAoC;AAAC,IAAA,MAAA;AAAQ,IAAA,YAAA;AAAc,IAAA,gBAAA;AAAkB,IAAA,QAAA;AAAU,IAAA;;;"}
1
+ {"version":3,"file":"Form.js","sources":["../../../forms/Form.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 { CommandFormLayout } from './CommandFormLayout';\nimport { FormGenerationMode } from './FormGenerationMode';\nimport { PopulateSource } from './PopulateSource';\nimport { FormField } from './FormField';\nimport { Behavior } from '../interactions';\n\n/**\n * The command-side counterpart to a table or summary: a named, typed form for one command.\n */\nexport interface Form {\n name: string;\n forCommand: string;\n populateSource?: PopulateSource;\n generationMode?: FormGenerationMode;\n layout?: CommandFormLayout;\n fields: FormField[];\n /**\n * The behaviors attached here - what happens when someone interacts with it. Additive with whatever is\n * attached further out or further in.\n */\n behaviors?: Behavior[];\n}\n\nexport const FormPropertyNames: (keyof Form)[] = ['name', 'forCommand', 'populateSource', 'generationMode', 'layout', 'fields', 'behaviors'];\n"],"names":["FormPropertyNames"],"mappings":"AAAA;AACA;MAyBaA,iBAAAA,GAAoC;AAAC,IAAA,MAAA;AAAQ,IAAA,YAAA;AAAc,IAAA,gBAAA;AAAkB,IAAA,gBAAA;AAAkB,IAAA,QAAA;AAAU,IAAA,QAAA;AAAU,IAAA;;;"}
@@ -0,0 +1,9 @@
1
+ import { FormWidth } from './FormWidth';
2
+ export interface FormColumn {
3
+ index: number;
4
+ width?: FormWidth;
5
+ minWidth?: FormWidth;
6
+ maxWidth?: FormWidth;
7
+ }
8
+ export declare const FormColumnPropertyNames: (keyof FormColumn)[];
9
+ //# sourceMappingURL=FormColumn.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormColumn.d.ts","sourceRoot":"","sources":["../../../forms/FormColumn.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAKxC,MAAM,WAAW,UAAU;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACxB;AAED,eAAO,MAAM,uBAAuB,EAAE,CAAC,MAAM,UAAU,CAAC,EAA+C,CAAC"}
@@ -0,0 +1,11 @@
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
+ const FormColumnPropertyNames = [
4
+ 'index',
5
+ 'width',
6
+ 'minWidth',
7
+ 'maxWidth'
8
+ ];
9
+
10
+ export { FormColumnPropertyNames };
11
+ //# sourceMappingURL=FormColumn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormColumn.js","sources":["../../../forms/FormColumn.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 { FormWidth } from './FormWidth';\n\n/**\n * One column in a command-form geometry grid. Indexes are one-based for authored stability.\n */\nexport interface FormColumn {\n index: number;\n width?: FormWidth;\n minWidth?: FormWidth;\n maxWidth?: FormWidth;\n}\n\nexport const FormColumnPropertyNames: (keyof FormColumn)[] = ['index', 'width', 'minWidth', 'maxWidth'];\n"],"names":["FormColumnPropertyNames"],"mappings":"AAAA;AACA;MAcaA,uBAAAA,GAAgD;AAAC,IAAA,OAAA;AAAS,IAAA,OAAA;AAAS,IAAA,UAAA;AAAY,IAAA;;;"}
@@ -1,8 +1,10 @@
1
+ import { FormFieldPlacement } from './FormFieldPlacement';
1
2
  export interface FormField {
2
3
  name: string;
3
4
  sourceProperty?: string;
4
5
  composeUsing?: string;
5
6
  label?: string;
7
+ placement?: FormFieldPlacement;
6
8
  }
7
9
  export declare const FormFieldPropertyNames: (keyof FormField)[];
8
10
  //# sourceMappingURL=FormField.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FormField.d.ts","sourceRoot":"","sources":["../../../forms/FormField.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,SAAS;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,sBAAsB,EAAE,CAAC,MAAM,SAAS,CAAC,EAAwD,CAAC"}
1
+ {"version":3,"file":"FormField.d.ts","sourceRoot":"","sources":["../../../forms/FormField.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAO1D,MAAM,WAAW,SAAS;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,kBAAkB,CAAC;CAClC;AAED,eAAO,MAAM,sBAAsB,EAAE,CAAC,MAAM,SAAS,CAAC,EAAqE,CAAC"}
@@ -1,14 +1,11 @@
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
- /**
4
- * One field of a {@link Form}. Mirrors the three population tiers Screenplay's `form` construct
5
- * establishes: auto-mapped by name (`sourceProperty` and `composeUsing` both undefined), explicitly
6
- * renamed (`sourceProperty` set), or computed by a callback (`composeUsing` set).
7
- */ const FormFieldPropertyNames = [
3
+ const FormFieldPropertyNames = [
8
4
  'name',
9
5
  'sourceProperty',
10
6
  'composeUsing',
11
- 'label'
7
+ 'label',
8
+ 'placement'
12
9
  ];
13
10
 
14
11
  export { FormFieldPropertyNames };
@@ -1 +1 @@
1
- {"version":3,"file":"FormField.js","sources":["../../../forms/FormField.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\n/**\n * One field of a {@link Form}. Mirrors the three population tiers Screenplay's `form` construct\n * establishes: auto-mapped by name (`sourceProperty` and `composeUsing` both undefined), explicitly\n * renamed (`sourceProperty` set), or computed by a callback (`composeUsing` set).\n */\nexport interface FormField {\n name: string;\n sourceProperty?: string;\n composeUsing?: string;\n label?: string;\n}\n\nexport const FormFieldPropertyNames: (keyof FormField)[] = ['name', 'sourceProperty', 'composeUsing', 'label'];\n"],"names":["FormFieldPropertyNames"],"mappings":"AAAA;AACA;AAEA;;;;UAYaA,sBAAAA,GAA8C;AAAC,IAAA,MAAA;AAAQ,IAAA,gBAAA;AAAkB,IAAA,cAAA;AAAgB,IAAA;;;"}
1
+ {"version":3,"file":"FormField.js","sources":["../../../forms/FormField.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 { FormFieldPlacement } from './FormFieldPlacement';\n\n/**\n * One field of a {@link Form}. Mirrors the three population tiers Screenplay's `form` construct\n * establishes: auto-mapped by name (`sourceProperty` and `composeUsing` both undefined), explicitly\n * renamed (`sourceProperty` set), or computed by a callback (`composeUsing` set).\n */\nexport interface FormField {\n name: string;\n sourceProperty?: string;\n composeUsing?: string;\n label?: string;\n placement?: FormFieldPlacement;\n}\n\nexport const FormFieldPropertyNames: (keyof FormField)[] = ['name', 'sourceProperty', 'composeUsing', 'label', 'placement'];\n"],"names":["FormFieldPropertyNames"],"mappings":"AAAA;AACA;MAiBaA,sBAAAA,GAA8C;AAAC,IAAA,MAAA;AAAQ,IAAA,gBAAA;AAAkB,IAAA,cAAA;AAAgB,IAAA,OAAA;AAAS,IAAA;;;"}
@@ -0,0 +1,11 @@
1
+ import { FormWidth } from './FormWidth';
2
+ export interface FormFieldPlacement {
3
+ field: string;
4
+ row: number;
5
+ column: number;
6
+ rowSpan?: number;
7
+ columnSpan?: number;
8
+ width?: FormWidth;
9
+ }
10
+ export declare const FormFieldPlacementPropertyNames: (keyof FormFieldPlacement)[];
11
+ //# sourceMappingURL=FormFieldPlacement.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormFieldPlacement.d.ts","sourceRoot":"","sources":["../../../forms/FormFieldPlacement.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAKxC,MAAM,WAAW,kBAAkB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,SAAS,CAAC;CACrB;AAED,eAAO,MAAM,+BAA+B,EAAE,CAAC,MAAM,kBAAkB,CAAC,EAAiE,CAAC"}
@@ -0,0 +1,13 @@
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
+ const FormFieldPlacementPropertyNames = [
4
+ 'field',
5
+ 'row',
6
+ 'column',
7
+ 'rowSpan',
8
+ 'columnSpan',
9
+ 'width'
10
+ ];
11
+
12
+ export { FormFieldPlacementPropertyNames };
13
+ //# sourceMappingURL=FormFieldPlacement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormFieldPlacement.js","sources":["../../../forms/FormFieldPlacement.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 { FormWidth } from './FormWidth';\n\n/**\n * Authored placement for one command-form field in a platform-neutral grid. Row and column are one-based.\n */\nexport interface FormFieldPlacement {\n field: string;\n row: number;\n column: number;\n rowSpan?: number;\n columnSpan?: number;\n width?: FormWidth;\n}\n\nexport const FormFieldPlacementPropertyNames: (keyof FormFieldPlacement)[] = ['field', 'row', 'column', 'rowSpan', 'columnSpan', 'width'];\n"],"names":["FormFieldPlacementPropertyNames"],"mappings":"AAAA;AACA;MAgBaA,+BAAAA,GAAgE;AAAC,IAAA,OAAA;AAAS,IAAA,KAAA;AAAO,IAAA,QAAA;AAAU,IAAA,SAAA;AAAW,IAAA,YAAA;AAAc,IAAA;;;"}
@@ -0,0 +1,5 @@
1
+ export declare enum FormGenerationMode {
2
+ Auto = "auto",
3
+ Manual = "manual"
4
+ }
5
+ //# sourceMappingURL=FormGenerationMode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormGenerationMode.d.ts","sourceRoot":"","sources":["../../../forms/FormGenerationMode.ts"],"names":[],"mappings":"AAMA,oBAAY,kBAAkB;IAC1B,IAAI,SAAS;IACb,MAAM,WAAW;CACpB"}
@@ -0,0 +1,12 @@
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
+ * How a command form's fields are generated.
5
+ */ var FormGenerationMode = /*#__PURE__*/ function(FormGenerationMode) {
6
+ FormGenerationMode["Auto"] = "auto";
7
+ FormGenerationMode["Manual"] = "manual";
8
+ return FormGenerationMode;
9
+ }({});
10
+
11
+ export { FormGenerationMode };
12
+ //# sourceMappingURL=FormGenerationMode.js.map