@umbraco-cms/backoffice 14.0.0--preview005-f1b84a48 → 14.0.0--preview005-ca61ea2b
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/dist-cms/assets/lang/da-dk.js +1 -1
- package/dist-cms/assets/lang/da-dk.ts +1 -1
- package/dist-cms/assets/lang/en-us.js +1 -1
- package/dist-cms/assets/lang/en-us.ts +2 -2
- package/dist-cms/css/rte-content.css +49 -0
- package/dist-cms/custom-elements.json +27 -5
- package/dist-cms/libs/extension-api/controller/extensions-element-initializer.controller.d.ts +0 -1
- package/dist-cms/libs/extension-api/controller/extensions-element-initializer.controller.js +5 -4
- package/dist-cms/mocks/data/data-type/data-type.data.js +3 -3
- package/dist-cms/mocks/data/document/document.data.js +20 -2
- package/dist-cms/mocks/data/health-check.data.js +0 -25
- package/dist-cms/mocks/handlers/install.handlers.js +1 -1
- package/dist-cms/packages/block/block/conditions/block-workspace-has-settings.condition.d.ts +10 -0
- package/dist-cms/packages/block/block/conditions/block-workspace-has-settings.condition.js +37 -0
- package/dist-cms/packages/block/block/conditions/index.d.ts +1 -0
- package/dist-cms/packages/block/block/conditions/index.js +1 -0
- package/dist-cms/packages/block/block/context/{block.context.d.ts → block-entity.context.d.ts} +1 -1
- package/dist-cms/packages/block/block/context/{block.context.js → block-entity.context.js} +2 -2
- package/dist-cms/packages/block/block/context/index.d.ts +1 -1
- package/dist-cms/packages/block/block/context/index.js +1 -1
- package/dist-cms/packages/block/block/index.d.ts +2 -1
- package/dist-cms/packages/block/block/index.js +2 -1
- package/dist-cms/packages/block/block/manager/block-manager.context.js +1 -0
- package/dist-cms/packages/block/block/manifests.js +2 -1
- package/dist-cms/packages/block/block/workspace/block-workspace.context.d.ts +1 -0
- package/dist-cms/packages/block/block/workspace/block-workspace.element.js +1 -1
- package/dist-cms/packages/block/block/workspace/manifests.js +23 -0
- package/dist-cms/packages/block/block/workspace/views/edit/block-workspace-view-edit-no-router.element.js +0 -1
- package/dist-cms/packages/block/block/workspace/views/edit/block-workspace-view-edit-properties.element.d.ts +5 -3
- package/dist-cms/packages/block/block/workspace/views/edit/block-workspace-view-edit-properties.element.js +44 -9
- package/dist-cms/packages/block/block/workspace/views/edit/block-workspace-view-edit-tab.element.d.ts +4 -4
- package/dist-cms/packages/block/block/workspace/views/edit/block-workspace-view-edit-tab.element.js +43 -14
- package/dist-cms/packages/block/block/workspace/views/edit/block-workspace-view-edit.element.d.ts +4 -4
- package/dist-cms/packages/block/block/workspace/views/edit/block-workspace-view-edit.element.js +56 -21
- package/dist-cms/packages/block/block-list/components/block-list-block/block-list-block.element.d.ts +4 -0
- package/dist-cms/packages/block/block-list/components/block-list-block/block-list-block.element.js +26 -3
- package/dist-cms/packages/block/block-list/components/inline-list-block/inline-list-block.element.d.ts +1 -1
- package/dist-cms/packages/block/block-list/components/inline-list-block/inline-list-block.element.js +6 -8
- package/dist-cms/packages/block/block-list/components/ref-list-block/ref-list-block.element.d.ts +1 -1
- package/dist-cms/packages/block/block-list/components/ref-list-block/ref-list-block.element.js +3 -5
- package/dist-cms/packages/core/components/extension-slot/extension-slot.element.js +4 -2
- package/dist-cms/packages/core/components/input-tiny-mce/input-tiny-mce.defaults.js +0 -2
- package/dist-cms/packages/core/components/input-tiny-mce/input-tiny-mce.element.js +1 -0
- package/dist-cms/packages/core/extension-registry/conditions/manifests.js +3 -2
- package/dist-cms/packages/core/extension-registry/conditions/types.d.ts +2 -1
- package/dist-cms/packages/core/extension-registry/models/block-editor-custom-view.model.d.ts +5 -0
- package/dist-cms/packages/core/extension-registry/models/block-editor-custom-view.model.js +1 -0
- package/dist-cms/packages/core/extension-registry/models/index.d.ts +3 -1
- package/dist-cms/packages/core/index.d.ts +0 -1
- package/dist-cms/packages/core/index.js +0 -1
- package/dist-cms/packages/core/property-editor/uis/tiny-mce/plugins/manifests.js +0 -15
- package/dist-cms/packages/documents/documents/workspace/views/edit/document-workspace-view-edit.element.d.ts +1 -2
- package/dist-cms/packages/documents/documents/workspace/views/edit/document-workspace-view-edit.element.js +4 -0
- package/dist-cms/packages/templating/components/insert-menu/templating-insert-menu.element.js +1 -8
- package/dist-cms/packages/templating/modals/insert-choose-type-sidebar.element.d.ts +1 -2
- package/dist-cms/packages/templating/modals/insert-choose-type-sidebar.element.js +0 -1
- package/dist-cms/tsconfig.build.tsbuildinfo +1 -1
- package/dist-cms/umbraco-package-schema.json +74 -8
- package/dist-cms/vscode-html-custom-data.json +15 -9
- package/package.json +1 -2
- package/dist-cms/packages/core/macro/index.d.ts +0 -1
- package/dist-cms/packages/core/macro/index.js +0 -1
- package/dist-cms/packages/core/macro/macro.service.d.ts +0 -26
- package/dist-cms/packages/core/macro/macro.service.js +0 -116
- package/dist-cms/packages/core/property-editor/uis/tiny-mce/plugins/tiny-mce-macropicker.plugin.d.ts +0 -6
- package/dist-cms/packages/core/property-editor/uis/tiny-mce/plugins/tiny-mce-macropicker.plugin.js +0 -173
|
@@ -2968,7 +2968,7 @@ export default {
|
|
|
2968
2968
|
analyticsDescription: '\n In order to improve Umbraco and add new functionality based on as relevant information as possible,\n <br>we would like to collect system- and usage information from your installation.\n <br>Aggregate data will be shared on a regular basis as well as learnings from these metrics.\n <br>Hopefully, you will help us collect some valuable data.\n <br>\n <br>We <strong>WILL NOT</strong> collect any personal data such as content, code, user information, and all data will be fully anonymized.\n ',
|
|
2969
2969
|
minimalLevelDescription: 'We will only send an anonymized site ID to let us know that the site exists.',
|
|
2970
2970
|
basicLevelDescription: 'We will send an anonymized site ID, Umbraco version, and packages installed',
|
|
2971
|
-
detailedLevelDescription: '\n We will send:\n <ul>\n <li>Anonymized site ID, Umbraco version, and packages installed.</li>\n <li>Number of: Root nodes, Content nodes,
|
|
2971
|
+
detailedLevelDescription: '\n We will send:\n <ul>\n <li>Anonymized site ID, Umbraco version, and packages installed.</li>\n <li>Number of: Root nodes, Content nodes, Media, Document Types, Templates, Languages, Domains, User Group, Users, Members, Backoffice external login providers, and Property Editors in use.</li>\n <li>System information: Webserver, server OS, server framework, server OS language, and database provider.</li>\n <li>Configuration settings: Modelsbuilder mode, if custom Umbraco path exists, ASP environment, whether the delivery API is enabled, and allows public access, and if you are in debug mode.</li>\n </ul>\n <em>We might change what we send on the Detailed level in the future. If so, it will be listed above.\n <br>By choosing "Detailed" you agree to current and future anonymized information being collected.</em>\n ',
|
|
2972
2972
|
},
|
|
2973
2973
|
umbId: {
|
|
2974
2974
|
editProfile: 'Edit your Umbraco ID profile',
|
|
@@ -3217,7 +3217,7 @@ export default {
|
|
|
3217
3217
|
minimalLevelDescription: 'We will only send an anonymized site ID to let us know that the site exists.',
|
|
3218
3218
|
basicLevelDescription: 'We will send an anonymized site ID, Umbraco version, and packages installed',
|
|
3219
3219
|
detailedLevelDescription:
|
|
3220
|
-
'\n We will send:\n <ul>\n <li>Anonymized site ID, Umbraco version, and packages installed.</li>\n <li>Number of: Root nodes, Content nodes,
|
|
3220
|
+
'\n We will send:\n <ul>\n <li>Anonymized site ID, Umbraco version, and packages installed.</li>\n <li>Number of: Root nodes, Content nodes, Media, Document Types, Templates, Languages, Domains, User Group, Users, Members, Backoffice external login providers, and Property Editors in use.</li>\n <li>System information: Webserver, server OS, server framework, server OS language, and database provider.</li>\n <li>Configuration settings: Modelsbuilder mode, if custom Umbraco path exists, ASP environment, whether the delivery API is enabled, and allows public access, and if you are in debug mode.</li>\n </ul>\n <em>We might change what we send on the Detailed level in the future. If so, it will be listed above.\n <br>By choosing "Detailed" you agree to current and future anonymized information being collected.</em>\n ',
|
|
3221
3221
|
},
|
|
3222
3222
|
umbId: {
|
|
3223
3223
|
editProfile: 'Edit your Umbraco ID profile',
|
|
@@ -2266,7 +2266,7 @@ export default {
|
|
|
2266
2266
|
analyticsDescription: '\n In order to improve Umbraco and add new functionality based on as relevant information as possible,\n <br>we would like to collect system- and usage information from your installation.\n <br>Aggregate data will be shared on a regular basis as well as learnings from these metrics.\n <br>Hopefully, you will help us collect some valuable data.\n <br>\n <br>We <strong>WILL NOT</strong> collect any personal data such as content, code, user information, and all data will be fully anonymized.\n ',
|
|
2267
2267
|
minimalLevelDescription: 'We will only send an anonymized site ID to let us know that the site exists.',
|
|
2268
2268
|
basicLevelDescription: 'We will send an anonymized site ID, Umbraco version, and packages installed',
|
|
2269
|
-
detailedLevelDescription: '\n We will send:\n <ul>\n <li>Anonymized site ID, Umbraco version, and packages installed.</li>\n <li>Number of: Root nodes, Content nodes,
|
|
2269
|
+
detailedLevelDescription: '\n We will send:\n <ul>\n <li>Anonymized site ID, Umbraco version, and packages installed.</li>\n <li>Number of: Root nodes, Content nodes, Media, Document Types, Templates, Languages, Domains, User Group, Users, Members, Backoffice external login providers, and Property Editors in use.</li>\n <li>System information: Webserver, server OS, server framework, server OS language, and database provider.</li>\n <li>Configuration settings: Modelsbuilder mode, if custom Umbraco path exists, ASP environment, whether the delivery API is enabled, and allows public access, and if you are in debug mode.</li>\n </ul>\n <em>We might change what we send on the Detailed level in the future. If so, it will be listed above.\n <br>By choosing "Detailed" you agree to current and future anonymized information being collected.</em>\n ',
|
|
2270
2270
|
},
|
|
2271
2271
|
umbId: {
|
|
2272
2272
|
editProfile: 'Edit your Umbraco ID profile',
|
|
@@ -1522,7 +1522,7 @@ export default {
|
|
|
1522
1522
|
addGroup: 'Add group',
|
|
1523
1523
|
inheritedFrom: 'Inherited from',
|
|
1524
1524
|
addProperty: 'Add property',
|
|
1525
|
-
editProperty
|
|
1525
|
+
editProperty: 'Edit property',
|
|
1526
1526
|
requiredLabel: 'Required label',
|
|
1527
1527
|
enableListViewHeading: 'Enable list view',
|
|
1528
1528
|
enableListViewDescription:
|
|
@@ -2470,7 +2470,7 @@ export default {
|
|
|
2470
2470
|
minimalLevelDescription: 'We will only send an anonymized site ID to let us know that the site exists.',
|
|
2471
2471
|
basicLevelDescription: 'We will send an anonymized site ID, Umbraco version, and packages installed',
|
|
2472
2472
|
detailedLevelDescription:
|
|
2473
|
-
'\n We will send:\n <ul>\n <li>Anonymized site ID, Umbraco version, and packages installed.</li>\n <li>Number of: Root nodes, Content nodes,
|
|
2473
|
+
'\n We will send:\n <ul>\n <li>Anonymized site ID, Umbraco version, and packages installed.</li>\n <li>Number of: Root nodes, Content nodes, Media, Document Types, Templates, Languages, Domains, User Group, Users, Members, Backoffice external login providers, and Property Editors in use.</li>\n <li>System information: Webserver, server OS, server framework, server OS language, and database provider.</li>\n <li>Configuration settings: Modelsbuilder mode, if custom Umbraco path exists, ASP environment, whether the delivery API is enabled, and allows public access, and if you are in debug mode.</li>\n </ul>\n <em>We might change what we send on the Detailed level in the future. If so, it will be listed above.\n <br>By choosing "Detailed" you agree to current and future anonymized information being collected.</em>\n ',
|
|
2474
2474
|
},
|
|
2475
2475
|
umbId: {
|
|
2476
2476
|
editProfile: 'Edit your Umbraco ID profile',
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
.umb-macro-holder {
|
|
2
|
+
border: 3px dotted red;
|
|
3
|
+
padding: 7px;
|
|
4
|
+
margin: 3px;
|
|
5
|
+
display: block;
|
|
6
|
+
position: relative;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.umb-macro-holder::after {
|
|
10
|
+
content: 'Macros are no longer supported. Please use the block picker instead.';
|
|
11
|
+
position: absolute;
|
|
12
|
+
top: 50%;
|
|
13
|
+
left: 50%;
|
|
14
|
+
transform: translate(-50%, -50%);
|
|
15
|
+
color: white;
|
|
16
|
+
background-color: rgba(0, 0, 0, 0.7);
|
|
17
|
+
padding: 10px;
|
|
18
|
+
border-radius: 5px;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.umb-embed-holder {
|
|
22
|
+
position: relative;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.umb-embed-holder > * {
|
|
26
|
+
user-select: none;
|
|
27
|
+
pointer-events: none;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.umb-embed-holder[data-mce-selected] {
|
|
31
|
+
outline: 2px solid var(--uui-palette-spanish-pink-light);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
.umb-embed-holder::before {
|
|
35
|
+
z-index: 1000;
|
|
36
|
+
width: 100%;
|
|
37
|
+
height: 100%;
|
|
38
|
+
position: absolute;
|
|
39
|
+
content: ' ';
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.umb-embed-holder[data-mce-selected]::before {
|
|
43
|
+
background: rgba(0, 0, 0, 0.025);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
*[data-mce-selected='inline-boundary'] {
|
|
47
|
+
background: rgba(0, 0, 0, 0.025);
|
|
48
|
+
outline: 2px solid var(--uui-palette-spanish-pink-light);
|
|
49
|
+
}
|
|
@@ -643,11 +643,22 @@
|
|
|
643
643
|
{
|
|
644
644
|
"name": "umb-inline-list-block",
|
|
645
645
|
"path": "./../src/packages/block/block-list/components/inline-list-block/inline-list-block.element.ts",
|
|
646
|
+
"attributes": [
|
|
647
|
+
{
|
|
648
|
+
"name": "label",
|
|
649
|
+
"type": "string | undefined"
|
|
650
|
+
}
|
|
651
|
+
],
|
|
646
652
|
"properties": [
|
|
653
|
+
{
|
|
654
|
+
"name": "label",
|
|
655
|
+
"attribute": "label",
|
|
656
|
+
"type": "string | undefined"
|
|
657
|
+
},
|
|
647
658
|
{
|
|
648
659
|
"name": "styles",
|
|
649
660
|
"type": "array",
|
|
650
|
-
"default": "[null]"
|
|
661
|
+
"default": "[\"UmbTextStyles\",null]"
|
|
651
662
|
}
|
|
652
663
|
]
|
|
653
664
|
},
|
|
@@ -656,20 +667,20 @@
|
|
|
656
667
|
"path": "./../src/packages/block/block-list/components/ref-list-block/ref-list-block.element.ts",
|
|
657
668
|
"attributes": [
|
|
658
669
|
{
|
|
659
|
-
"name": "
|
|
670
|
+
"name": "label",
|
|
660
671
|
"type": "string | undefined"
|
|
661
672
|
}
|
|
662
673
|
],
|
|
663
674
|
"properties": [
|
|
664
675
|
{
|
|
665
|
-
"name": "
|
|
666
|
-
"attribute": "
|
|
676
|
+
"name": "label",
|
|
677
|
+
"attribute": "label",
|
|
667
678
|
"type": "string | undefined"
|
|
668
679
|
},
|
|
669
680
|
{
|
|
670
681
|
"name": "styles",
|
|
671
682
|
"type": "array",
|
|
672
|
-
"default": "[null
|
|
683
|
+
"default": "[null]"
|
|
673
684
|
}
|
|
674
685
|
]
|
|
675
686
|
},
|
|
@@ -899,6 +910,10 @@
|
|
|
899
910
|
}
|
|
900
911
|
],
|
|
901
912
|
"properties": [
|
|
913
|
+
{
|
|
914
|
+
"name": "managerName",
|
|
915
|
+
"type": "UmbBlockWorkspaceElementManagerNames | undefined"
|
|
916
|
+
},
|
|
902
917
|
{
|
|
903
918
|
"name": "containerName",
|
|
904
919
|
"attribute": "container-name",
|
|
@@ -939,6 +954,10 @@
|
|
|
939
954
|
}
|
|
940
955
|
],
|
|
941
956
|
"properties": [
|
|
957
|
+
{
|
|
958
|
+
"name": "managerName",
|
|
959
|
+
"type": "UmbBlockWorkspaceElementManagerNames | undefined"
|
|
960
|
+
},
|
|
942
961
|
{
|
|
943
962
|
"name": "tabName",
|
|
944
963
|
"attribute": "tabName",
|
|
@@ -972,6 +991,9 @@
|
|
|
972
991
|
"name": "umb-block-workspace-view-edit",
|
|
973
992
|
"path": "./../src/packages/block/block/workspace/views/edit/block-workspace-view-edit.element.ts",
|
|
974
993
|
"properties": [
|
|
994
|
+
{
|
|
995
|
+
"name": "manifest"
|
|
996
|
+
},
|
|
975
997
|
{
|
|
976
998
|
"name": "styles",
|
|
977
999
|
"type": "array",
|
package/dist-cms/libs/extension-api/controller/extensions-element-initializer.controller.d.ts
CHANGED
|
@@ -6,7 +6,6 @@ import type { UmbControllerHost } from '../../controller-api/index.js';
|
|
|
6
6
|
*/
|
|
7
7
|
export declare class UmbExtensionsElementInitializer<ManifestTypes extends ManifestBase, ManifestTypeName extends keyof ManifestTypeMap<ManifestTypes> | string = ManifestTypes['type'], ManifestType extends ManifestBase = SpecificManifestTypeOrManifestBase<ManifestTypes, ManifestTypeName>, ControllerType extends UmbExtensionElementInitializer<ManifestType> = UmbExtensionElementInitializer<ManifestType>, MyPermittedControllerType extends ControllerType = PermittedControllerType<ControllerType>> extends UmbBaseExtensionsInitializer<ManifestTypes, ManifestTypeName, ManifestType, ControllerType, MyPermittedControllerType> {
|
|
8
8
|
#private;
|
|
9
|
-
private _defaultElement?;
|
|
10
9
|
get properties(): Record<string, unknown> | undefined;
|
|
11
10
|
set properties(props: Record<string, unknown> | undefined);
|
|
12
11
|
constructor(host: UmbControllerHost, extensionRegistry: UmbExtensionRegistry<ManifestTypes>, type: ManifestTypeName | Array<ManifestTypeName>, filter: undefined | null | ((manifest: ManifestType) => boolean), onChange: (permittedManifests: Array<MyPermittedControllerType>) => void, defaultElement?: string);
|
|
@@ -9,7 +9,7 @@ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (
|
|
|
9
9
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
10
10
|
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
11
11
|
};
|
|
12
|
-
var _UmbExtensionsElementInitializer_extensionRegistry, _UmbExtensionsElementInitializer_props;
|
|
12
|
+
var _UmbExtensionsElementInitializer_extensionRegistry, _UmbExtensionsElementInitializer_defaultElement, _UmbExtensionsElementInitializer_props;
|
|
13
13
|
import { UmbBaseExtensionsInitializer, } from './base-extensions-initializer.controller.js';
|
|
14
14
|
import { UmbExtensionElementInitializer, } from '../index.js';
|
|
15
15
|
/**
|
|
@@ -28,15 +28,16 @@ export class UmbExtensionsElementInitializer extends UmbBaseExtensionsInitialize
|
|
|
28
28
|
super(host, extensionRegistry, type, filter, onChange);
|
|
29
29
|
//
|
|
30
30
|
_UmbExtensionsElementInitializer_extensionRegistry.set(this, void 0);
|
|
31
|
+
_UmbExtensionsElementInitializer_defaultElement.set(this, void 0);
|
|
31
32
|
_UmbExtensionsElementInitializer_props.set(this, void 0);
|
|
32
33
|
__classPrivateFieldSet(this, _UmbExtensionsElementInitializer_extensionRegistry, extensionRegistry, "f");
|
|
33
|
-
this
|
|
34
|
+
__classPrivateFieldSet(this, _UmbExtensionsElementInitializer_defaultElement, defaultElement, "f");
|
|
34
35
|
this._init();
|
|
35
36
|
}
|
|
36
37
|
_createController(manifest) {
|
|
37
|
-
const extController = new UmbExtensionElementInitializer(this, __classPrivateFieldGet(this, _UmbExtensionsElementInitializer_extensionRegistry, "f"), manifest.alias, this._extensionChanged, this
|
|
38
|
+
const extController = new UmbExtensionElementInitializer(this, __classPrivateFieldGet(this, _UmbExtensionsElementInitializer_extensionRegistry, "f"), manifest.alias, this._extensionChanged, __classPrivateFieldGet(this, _UmbExtensionsElementInitializer_defaultElement, "f"));
|
|
38
39
|
extController.properties = __classPrivateFieldGet(this, _UmbExtensionsElementInitializer_props, "f");
|
|
39
40
|
return extController;
|
|
40
41
|
}
|
|
41
42
|
}
|
|
42
|
-
_UmbExtensionsElementInitializer_extensionRegistry = new WeakMap(), _UmbExtensionsElementInitializer_props = new WeakMap();
|
|
43
|
+
_UmbExtensionsElementInitializer_extensionRegistry = new WeakMap(), _UmbExtensionsElementInitializer_defaultElement = new WeakMap(), _UmbExtensionsElementInitializer_props = new WeakMap();
|
|
@@ -500,6 +500,7 @@ export const data = [
|
|
|
500
500
|
{
|
|
501
501
|
label: 'Mocked Block Type for Block List',
|
|
502
502
|
contentElementTypeKey: '4f68ba66-6fb2-4778-83b8-6ab4ca3a7c5c',
|
|
503
|
+
settingsElementTypeKey: 'all-property-editors-document-type-id',
|
|
503
504
|
icon: 'icon-server-alt',
|
|
504
505
|
},
|
|
505
506
|
{
|
|
@@ -539,7 +540,7 @@ export const data = [
|
|
|
539
540
|
},
|
|
540
541
|
{
|
|
541
542
|
alias: 'useInlineEditingAsDefault',
|
|
542
|
-
value:
|
|
543
|
+
value: false,
|
|
543
544
|
},
|
|
544
545
|
{
|
|
545
546
|
alias: 'useLiveEditing',
|
|
@@ -716,7 +717,7 @@ export const data = [
|
|
|
716
717
|
value: '+a[id|style|rel|data-id|data-udi|rev|charset|hreflang|dir|lang|tabindex|accesskey|type|name|href|target|title|class|onfocus|onblur|onclick|ondblclick|onmousedown|onmouseup|onmouseover|onmousemove|onmouseout|onkeypress|onkeydown|onkeyup],-strong/-b[class|style],-em/-i[class|style],-strike[class|style],-s[class|style],-u[class|style],#p[id|style|dir|class|align],-ol[class|reversed|start|style|type],-ul[class|style],-li[class|style],br[class],img[id|dir|lang|longdesc|usemap|style|class|src|onmouseover|onmouseout|border|alt=|title|hspace|vspace|width|height|align|umbracoorgwidth|umbracoorgheight|onresize|onresizestart|onresizeend|rel|data-id],-sub[style|class],-sup[style|class],-blockquote[dir|style|class],-table[border=0|cellspacing|cellpadding|width|height|class|align|summary|style|dir|id|lang|bgcolor|background|bordercolor],-tr[id|lang|dir|class|rowspan|width|height|align|valign|style|bgcolor|background|bordercolor],tbody[id|class],thead[id|class],tfoot[id|class],#td[id|lang|dir|class|colspan|rowspan|width|height|align|valign|style|bgcolor|background|bordercolor|scope],-th[id|lang|dir|class|colspan|rowspan|width|height|align|valign|style|scope],caption[id|lang|dir|class|style],-div[id|dir|class|align|style],-span[class|align|style],-pre[class|align|style],address[class|align|style],-h1[id|dir|class|align|style],-h2[id|dir|class|align|style],-h3[id|dir|class|align|style],-h4[id|dir|class|align|style],-h5[id|dir|class|align|style],-h6[id|style|dir|class|align|style],hr[class|style],small[class|style],dd[id|class|title|style|dir|lang],dl[id|class|title|style|dir|lang],dt[id|class|title|style|dir|lang],object[class|id|width|height|codebase|*],param[name|value|_value|class],embed[type|width|height|src|class|*],map[name|class],area[shape|coords|href|alt|target|class],bdo[class],button[class],iframe[*],figure,figcaption,video[*],audio[*],picture[*],source[*],canvas[*]',
|
|
717
718
|
},
|
|
718
719
|
{ alias: 'invalidElements', value: 'font' },
|
|
719
|
-
|
|
720
|
+
{ alias: 'stylesheets', value: [] },
|
|
720
721
|
{
|
|
721
722
|
alias: 'toolbar',
|
|
722
723
|
value: [
|
|
@@ -738,7 +739,6 @@ export const data = [
|
|
|
738
739
|
'anchor',
|
|
739
740
|
'table',
|
|
740
741
|
'umbmediapicker',
|
|
741
|
-
'umbmacro',
|
|
742
742
|
'umbembeddialog',
|
|
743
743
|
],
|
|
744
744
|
},
|
|
@@ -24,7 +24,18 @@ export const data = [
|
|
|
24
24
|
alias: 'richTextEditor',
|
|
25
25
|
culture: null,
|
|
26
26
|
segment: null,
|
|
27
|
-
value:
|
|
27
|
+
value: {
|
|
28
|
+
blocks: {},
|
|
29
|
+
markup: `
|
|
30
|
+
<p>
|
|
31
|
+
Some value for the RTE with an <a href="https://google.com">external link</a> and an <a href="/{localLink:umb://document/c05da24d7740447b9cdcbd8ce2172e38}">internal link</a> foo foo
|
|
32
|
+
</p>
|
|
33
|
+
<div class="umb-macro-holder TestMacro umb-macro-mce_1 mceNonEditable"><!-- <?UMBRACO_MACRO macroAlias="TestMacro" /> --><ins>Macro alias: <strong>TestMacro</strong></ins></div>
|
|
34
|
+
<p>The following tests the embed plugin:</p>
|
|
35
|
+
<div class="mceNonEditable umb-embed-holder" data-embed-height="240" data-embed-width="360" data-embed-constrain="false"><iframe width="360" height="240" src="https://www.youtube.com/embed/QRIWz9SotY4?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen="allowfullscreen" title="Sleep Token - The Summoning"></iframe></div>
|
|
36
|
+
<p>End of test content</p>
|
|
37
|
+
`,
|
|
38
|
+
},
|
|
28
39
|
},
|
|
29
40
|
{
|
|
30
41
|
alias: 'email',
|
|
@@ -165,6 +176,7 @@ export const data = [
|
|
|
165
176
|
'Umbraco.BlockList': [
|
|
166
177
|
{
|
|
167
178
|
contentUdi: '1234',
|
|
179
|
+
settingsUdi: '5678',
|
|
168
180
|
},
|
|
169
181
|
],
|
|
170
182
|
},
|
|
@@ -175,7 +187,13 @@ export const data = [
|
|
|
175
187
|
elementProperty: 'Hello world',
|
|
176
188
|
},
|
|
177
189
|
],
|
|
178
|
-
settingsData: [
|
|
190
|
+
settingsData: [
|
|
191
|
+
{
|
|
192
|
+
udi: '5678',
|
|
193
|
+
contentTypeKey: 'all-property-editors-document-type-id',
|
|
194
|
+
elementProperty: 'Hello world',
|
|
195
|
+
},
|
|
196
|
+
],
|
|
179
197
|
},
|
|
180
198
|
},
|
|
181
199
|
{
|
|
@@ -9,26 +9,6 @@ export const healthGroups = [
|
|
|
9
9
|
{
|
|
10
10
|
name: 'Configuration',
|
|
11
11
|
checks: [
|
|
12
|
-
{
|
|
13
|
-
id: '1c6c0a39-d673-4794-b734-1bec45d6a363',
|
|
14
|
-
results: [
|
|
15
|
-
{
|
|
16
|
-
message: `MacroErrors are set to 'Throw' which will prevent some or all pages in your site from loading
|
|
17
|
-
completely if there are any errors in macros. Rectifying this will set the value to 'Inline'. `,
|
|
18
|
-
resultType: StatusResultTypeModel.ERROR,
|
|
19
|
-
readMoreLink: 'https://umbra.co/healthchecks-macro-errors',
|
|
20
|
-
actions: [
|
|
21
|
-
{
|
|
22
|
-
healthCheckId: 'id123',
|
|
23
|
-
name: 'Action name',
|
|
24
|
-
alias: 'Action alias',
|
|
25
|
-
description: 'Action description',
|
|
26
|
-
valueRequired: true,
|
|
27
|
-
},
|
|
28
|
-
],
|
|
29
|
-
},
|
|
30
|
-
],
|
|
31
|
-
},
|
|
32
12
|
{
|
|
33
13
|
id: '3e2f7b14-4b41-452b-9a30-e67fbc8e1206',
|
|
34
14
|
results: [
|
|
@@ -209,11 +189,6 @@ export const healthGroupsWithoutResult = [
|
|
|
209
189
|
{
|
|
210
190
|
name: 'Configuration',
|
|
211
191
|
checks: [
|
|
212
|
-
{
|
|
213
|
-
id: 'd0f7599e-9b2a-4d9e-9883-81c7edc5616f',
|
|
214
|
-
name: 'Macro errors',
|
|
215
|
-
description: 'Checks to make sure macro errors are not set to throw a YSOD (yellow screen of death), which would prevent certain or all pages from loading completely.',
|
|
216
|
-
},
|
|
217
192
|
{
|
|
218
193
|
id: '3e2f7b14-4b41-452b-9a30-e67fbc8e1206',
|
|
219
194
|
name: 'Notification Email Settings',
|
|
@@ -20,7 +20,7 @@ export const handlers = [
|
|
|
20
20
|
},
|
|
21
21
|
{
|
|
22
22
|
level: TelemetryLevelModel.DETAILED,
|
|
23
|
-
description: 'We will send:<ul><li>Anonymized site ID, umbraco version, and packages installed.</li><li>Number of: Root nodes, Content nodes,
|
|
23
|
+
description: 'We will send:<ul><li>Anonymized site ID, umbraco version, and packages installed.</li><li>Number of: Root nodes, Content nodes, Media, Document Types, Templates, Languages, Domains, User Group, Users, Members, and Property Editors in use.</li><li>System information: Webserver, server OS, server framework, server OS language, and database provider.</li><li>Configuration settings: Modelsbuilder mode, if custom Umbraco path exists, ASP environment, and if you are in debug mode.</li></ul><i>We might change what we send on the Detailed level in the future. If so, it will be listed above.<br>By choosing "Detailed" you agree to current and future anonymized information being collected.</i>',
|
|
24
24
|
},
|
|
25
25
|
],
|
|
26
26
|
},
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { UmbBaseController } from '../../../../libs/class-api/index.js';
|
|
2
|
+
import type { ManifestCondition, UmbConditionConfigBase, UmbConditionControllerArguments, UmbExtensionCondition } from '../../../../libs/extension-api/index.js';
|
|
3
|
+
export declare class UmbBlockWorkspaceHasSettingsCondition extends UmbBaseController implements UmbExtensionCondition {
|
|
4
|
+
#private;
|
|
5
|
+
config: BlockWorkspaceHasSettingsConditionConfig;
|
|
6
|
+
permitted: boolean;
|
|
7
|
+
constructor(args: UmbConditionControllerArguments<BlockWorkspaceHasSettingsConditionConfig>);
|
|
8
|
+
}
|
|
9
|
+
export type BlockWorkspaceHasSettingsConditionConfig = UmbConditionConfigBase<'Umb.Condition.BlockWorkspaceHasSettings'>;
|
|
10
|
+
export declare const manifest: ManifestCondition;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
2
|
+
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
3
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
4
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
5
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
6
|
+
};
|
|
7
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
8
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
9
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
10
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
|
+
};
|
|
12
|
+
var _UmbBlockWorkspaceHasSettingsCondition_onChange;
|
|
13
|
+
import { UMB_BLOCK_WORKSPACE_CONTEXT } from '../../index.js';
|
|
14
|
+
import { UmbBaseController } from '../../../../libs/class-api/index.js';
|
|
15
|
+
export class UmbBlockWorkspaceHasSettingsCondition extends UmbBaseController {
|
|
16
|
+
constructor(args) {
|
|
17
|
+
super(args.host);
|
|
18
|
+
this.permitted = false;
|
|
19
|
+
_UmbBlockWorkspaceHasSettingsCondition_onChange.set(this, void 0);
|
|
20
|
+
this.config = args.config;
|
|
21
|
+
__classPrivateFieldSet(this, _UmbBlockWorkspaceHasSettingsCondition_onChange, args.onChange, "f");
|
|
22
|
+
// TODO: Rename the Block Context, so it gets a name.. like Block Entry Context or something.
|
|
23
|
+
this.consumeContext(UMB_BLOCK_WORKSPACE_CONTEXT, (context) => {
|
|
24
|
+
this.observe(context.settings.contentTypeId, (settingsContentTypeId) => {
|
|
25
|
+
this.permitted = !!settingsContentTypeId;
|
|
26
|
+
__classPrivateFieldGet(this, _UmbBlockWorkspaceHasSettingsCondition_onChange, "f").call(this);
|
|
27
|
+
}, 'observeSettingsElementTypeId');
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
_UmbBlockWorkspaceHasSettingsCondition_onChange = new WeakMap();
|
|
32
|
+
export const manifest = {
|
|
33
|
+
type: 'condition',
|
|
34
|
+
name: 'Block Has Settings Condition',
|
|
35
|
+
alias: 'Umb.Condition.BlockWorkspaceHasSettings',
|
|
36
|
+
api: UmbBlockWorkspaceHasSettingsCondition,
|
|
37
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './block-workspace-has-settings.condition.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './block-workspace-has-settings.condition.js';
|
package/dist-cms/packages/block/block/context/{block.context.d.ts → block-entity.context.d.ts}
RENAMED
|
@@ -34,4 +34,4 @@ export declare abstract class UmbBlockContext<BlockManagerContextTokenType exten
|
|
|
34
34
|
_gotManager(): void;
|
|
35
35
|
delete(): void;
|
|
36
36
|
}
|
|
37
|
-
export declare const
|
|
37
|
+
export declare const UMB_BLOCK_ENTITY_CONTEXT: UmbContextToken<UmbBlockContext<UmbContextToken<UmbBlockManagerContext<UmbBlockTypeBaseModel, UmbBlockLayoutBaseModel>, UmbBlockManagerContext<UmbBlockTypeBaseModel, UmbBlockLayoutBaseModel>>, UmbBlockManagerContext<UmbBlockTypeBaseModel, UmbBlockLayoutBaseModel>, UmbBlockTypeBaseModel, UmbBlockLayoutBaseModel>, UmbBlockContext<UmbContextToken<UmbBlockManagerContext<UmbBlockTypeBaseModel, UmbBlockLayoutBaseModel>, UmbBlockManagerContext<UmbBlockTypeBaseModel, UmbBlockLayoutBaseModel>>, UmbBlockManagerContext<UmbBlockTypeBaseModel, UmbBlockLayoutBaseModel>, UmbBlockTypeBaseModel, UmbBlockLayoutBaseModel>>;
|
|
@@ -19,7 +19,7 @@ export class UmbBlockContext extends UmbContextBase {
|
|
|
19
19
|
__classPrivateFieldGet(this, _UmbBlockContext_layout, "f").setValue(layout);
|
|
20
20
|
}
|
|
21
21
|
constructor(host, blockManagerContextToken) {
|
|
22
|
-
super(host,
|
|
22
|
+
super(host, UMB_BLOCK_ENTITY_CONTEXT.toString());
|
|
23
23
|
_UmbBlockContext_instances.add(this);
|
|
24
24
|
_UmbBlockContext_blockTypeName.set(this, new UmbStringState(undefined));
|
|
25
25
|
this.blockTypeName = __classPrivateFieldGet(this, _UmbBlockContext_blockTypeName, "f").asObservable();
|
|
@@ -148,4 +148,4 @@ _UmbBlockContext_blockTypeName = new WeakMap(), _UmbBlockContext_label = new Wea
|
|
|
148
148
|
}, 'observeBlockTypeName');
|
|
149
149
|
}
|
|
150
150
|
};
|
|
151
|
-
export const
|
|
151
|
+
export const UMB_BLOCK_ENTITY_CONTEXT = new UmbContextToken('UmbBlockContext');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from './block.context.js';
|
|
1
|
+
export * from './block-entity.context.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from './block.context.js';
|
|
1
|
+
export * from './block-entity.context.js';
|
|
@@ -49,6 +49,7 @@ export class UmbBlockManagerContext extends UmbContextBase {
|
|
|
49
49
|
this.contents = __classPrivateFieldGet(this, _UmbBlockManagerContext_contents, "f").asObservable();
|
|
50
50
|
_UmbBlockManagerContext_settings.set(this, new UmbArrayState([], (x) => x.udi));
|
|
51
51
|
this.settings = __classPrivateFieldGet(this, _UmbBlockManagerContext_settings, "f").asObservable();
|
|
52
|
+
// TODO: This might will need the property alias as part of the URL, to avoid collision if multiple of these Editor on same Node.
|
|
52
53
|
// IDEA: Make a Workspace registration controller that can be used to register a workspace, which does both edit and create?.
|
|
53
54
|
new UmbModalRouteRegistrationController(this, UMB_BLOCK_WORKSPACE_MODAL)
|
|
54
55
|
.addAdditionalPath('block')
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { manifest as blockWorkspaceHasSettingsConditionManifest } from './conditions/block-workspace-has-settings.condition.js';
|
|
1
2
|
import { manifests as modalManifests } from './modals/manifests.js';
|
|
2
3
|
import { manifests as workspaceManifests } from './workspace/manifests.js';
|
|
3
|
-
export const manifests = [...modalManifests, ...workspaceManifests];
|
|
4
|
+
export const manifests = [...modalManifests, ...workspaceManifests, blockWorkspaceHasSettingsConditionManifest];
|
|
@@ -3,6 +3,7 @@ import { UmbBlockElementManager } from './block-element-manager.js';
|
|
|
3
3
|
import { UmbEditableWorkspaceContextBase } from '../../../core/workspace/index.js';
|
|
4
4
|
import type { UmbControllerHost } from '../../../../libs/controller-api/index.js';
|
|
5
5
|
import type { ManifestWorkspace } from '../../../core/extension-registry/index.js';
|
|
6
|
+
export type UmbBlockWorkspaceElementManagerNames = 'content' | 'settings';
|
|
6
7
|
export declare class UmbBlockWorkspaceContext<LayoutDataType extends UmbBlockLayoutBaseModel = UmbBlockLayoutBaseModel> extends UmbEditableWorkspaceContextBase<LayoutDataType> {
|
|
7
8
|
#private;
|
|
8
9
|
readonly IS_BLOCK_WORKSPACE_CONTEXT = true;
|
|
@@ -43,7 +43,7 @@ let UmbBlockWorkspaceElement = class UmbBlockWorkspaceElement extends UmbLitElem
|
|
|
43
43
|
createExtensionApi(manifest, [this, { manifest: manifest }]).then((context) => {
|
|
44
44
|
if (context) {
|
|
45
45
|
__classPrivateFieldGet(this, _UmbBlockWorkspaceElement_instances, "m", _UmbBlockWorkspaceElement_gotWorkspaceContext).call(this, context);
|
|
46
|
-
// TODO:
|
|
46
|
+
// TODO: Do we need to recreate when ID changed? Or is that a responsibility of the context it self?
|
|
47
47
|
new UmbExtensionsApiInitializer(this, umbExtensionsRegistry, 'workspaceContext', [
|
|
48
48
|
this,
|
|
49
49
|
__classPrivateFieldGet(this, _UmbBlockWorkspaceElement_workspaceContext, "f"),
|
|
@@ -39,6 +39,7 @@ export const manifests = [
|
|
|
39
39
|
label: 'Content',
|
|
40
40
|
pathname: 'content',
|
|
41
41
|
icon: 'icon-document',
|
|
42
|
+
blockElementManagerName: 'content',
|
|
42
43
|
},
|
|
43
44
|
conditions: [
|
|
44
45
|
{
|
|
@@ -47,4 +48,26 @@ export const manifests = [
|
|
|
47
48
|
},
|
|
48
49
|
],
|
|
49
50
|
},
|
|
51
|
+
{
|
|
52
|
+
type: 'workspaceView',
|
|
53
|
+
alias: 'Umb.WorkspaceView.Block.Settings',
|
|
54
|
+
name: 'Block Workspace Settings View',
|
|
55
|
+
js: () => import('./views/edit/block-workspace-view-edit.element.js'),
|
|
56
|
+
weight: 1000,
|
|
57
|
+
meta: {
|
|
58
|
+
label: 'Settings',
|
|
59
|
+
pathname: 'settings',
|
|
60
|
+
icon: 'icon-settings',
|
|
61
|
+
blockElementManagerName: 'settings',
|
|
62
|
+
},
|
|
63
|
+
conditions: [
|
|
64
|
+
{
|
|
65
|
+
alias: 'Umb.Condition.WorkspaceAlias',
|
|
66
|
+
match: UMB_BLOCK_WORKSPACE_ALIAS,
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
alias: 'Umb.Condition.BlockWorkspaceHasSettings',
|
|
70
|
+
},
|
|
71
|
+
],
|
|
72
|
+
},
|
|
50
73
|
];
|
|
@@ -32,7 +32,6 @@ let UmbBlockWorkspaceViewEditNoRouterElement = class UmbBlockWorkspaceViewEditNo
|
|
|
32
32
|
// _hasRootProperties can be gotten via _tabsStructureHelper.hasProperties. But we do not support root properties currently.
|
|
33
33
|
this.consumeContext(UMB_BLOCK_WORKSPACE_CONTEXT, (workspaceContext) => {
|
|
34
34
|
this._workspaceContext = workspaceContext;
|
|
35
|
-
console.log('workspaceContext.content.structure', workspaceContext.content.structure);
|
|
36
35
|
this._tabsStructureHelper.setStructureManager(workspaceContext.content.structure);
|
|
37
36
|
this._observeRootGroups();
|
|
38
37
|
});
|
|
@@ -1,12 +1,14 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { UmbBlockWorkspaceElementManagerNames } from '../../block-workspace.context.js';
|
|
2
|
+
import type { PropertyContainerTypes, UmbPropertyTypeModel } from '../../../../../core/content-type/index.js';
|
|
3
3
|
import { UmbLitElement } from '../../../../../../shared/lit-element/index.js';
|
|
4
4
|
export declare class UmbBlockWorkspaceViewEditPropertiesElement extends UmbLitElement {
|
|
5
|
+
#private;
|
|
6
|
+
get managerName(): UmbBlockWorkspaceElementManagerNames | undefined;
|
|
7
|
+
set managerName(value: UmbBlockWorkspaceElementManagerNames | undefined);
|
|
5
8
|
get containerName(): string | undefined;
|
|
6
9
|
set containerName(value: string | undefined);
|
|
7
10
|
get containerType(): PropertyContainerTypes | undefined;
|
|
8
11
|
set containerType(value: PropertyContainerTypes | undefined);
|
|
9
|
-
_propertyStructureHelper: UmbContentTypePropertyStructureHelper<UmbContentTypeModel>;
|
|
10
12
|
_propertyStructure: Array<UmbPropertyTypeModel>;
|
|
11
13
|
constructor();
|
|
12
14
|
render(): unknown;
|