move property editor UI manifests to its own file

This commit is contained in:
Mads Rasmussen
2022-09-30 10:16:40 +02:00
parent 14ef96076d
commit f9cfcd5ccf
2 changed files with 135 additions and 129 deletions

View File

@@ -1,14 +1,16 @@
import type { ManifestTypes } from './core/models';
import type { ManifestTypes } from '../core/models';
import { manifests as propertyEditorUIManifests } from './property-editor-ui';
// TODO: consider moving weight from meta to the main part of the manifest. We need it for every extension.
// TODO: consider adding a label property as part of the meta. It might make sense to have an "extension" name label where one is needed.
export const internalManifests: Array<ManifestTypes & { loader: () => Promise<object | HTMLElement> }> = [
...propertyEditorUIManifests,
{
type: 'section',
alias: 'Umb.Section.Content',
name: 'Content',
elementName: 'umb-content-section',
loader: () => import('./backoffice/sections/content/content-section.element'),
loader: () => import('../backoffice/sections/content/content-section.element'),
meta: {
pathname: 'content', // TODO: how to we want to support pretty urls?
weight: 50,
@@ -19,7 +21,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
alias: 'Umb.Section.Media',
name: 'Media',
elementName: 'umb-media-section',
loader: () => import('./backoffice/sections/media/media-section.element'),
loader: () => import('../backoffice/sections/media/media-section.element'),
meta: {
pathname: 'media', // TODO: how to we want to support pretty urls?
weight: 50,
@@ -30,7 +32,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
alias: 'Umb.Section.Members',
name: 'Members',
elementName: 'umb-section-members',
loader: () => import('./backoffice/sections/members/section-members.element'),
loader: () => import('../backoffice/sections/members/section-members.element'),
meta: {
pathname: 'members',
weight: 30,
@@ -40,7 +42,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
type: 'section',
alias: 'Umb.Section.Settings',
name: 'Settings',
loader: () => import('./backoffice/sections/settings/settings-section.element'),
loader: () => import('../backoffice/sections/settings/settings-section.element'),
meta: {
pathname: 'settings', // TODO: how to we want to support pretty urls?
weight: 20,
@@ -51,7 +53,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
alias: 'Umb.Section.Packages',
name: 'Packages',
elementName: 'umb-packages-section',
loader: () => import('./backoffice/sections/packages/packages-section.element'),
loader: () => import('../backoffice/sections/packages/packages-section.element'),
meta: {
pathname: 'packages',
weight: 20,
@@ -62,7 +64,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
alias: 'Umb.Dashboard.Welcome',
name: 'Welcome',
elementName: 'umb-dashboard-welcome',
loader: () => import('./backoffice/dashboards/welcome/dashboard-welcome.element'),
loader: () => import('../backoffice/dashboards/welcome/dashboard-welcome.element'),
meta: {
sections: ['Umb.Section.Content'],
pathname: 'welcome', // TODO: how to we want to support pretty urls?
@@ -74,7 +76,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
alias: 'Umb.Dashboard.RedirectManagement',
name: 'Redirect Management',
elementName: 'umb-dashboard-redirect-management',
loader: () => import('./backoffice/dashboards/redirect-management/dashboard-redirect-management.element'),
loader: () => import('../backoffice/dashboards/redirect-management/dashboard-redirect-management.element'),
meta: {
sections: ['Umb.Section.Content'],
pathname: 'redirect-management', // TODO: how to we want to support pretty urls?
@@ -86,7 +88,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
alias: 'Umb.Dashboard.SettingsAbout',
name: 'Settings About',
elementName: 'umb-dashboard-settings-about',
loader: () => import('./backoffice/dashboards/settings-about/dashboard-settings-about.element'),
loader: () => import('../backoffice/dashboards/settings-about/dashboard-settings-about.element'),
meta: {
label: 'About',
sections: ['Umb.Section.Settings'],
@@ -99,7 +101,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
alias: 'Umb.Dashboard.ExamineManagement',
name: 'Examine Management',
elementName: 'umb-dashboard-examine-management',
loader: () => import('./backoffice/dashboards/examine-management/dashboard-examine-management.element'),
loader: () => import('../backoffice/dashboards/examine-management/dashboard-examine-management.element'),
meta: {
sections: ['Umb.Section.Settings'],
pathname: 'examine-management', // TODO: how to we want to support pretty urls?
@@ -111,7 +113,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
alias: 'Umb.Dashboard.ModelsBuilder',
name: 'Models Builder',
elementName: 'umb-dashboard-models-builder',
loader: () => import('./backoffice/dashboards/models-builder/dashboard-models-builder.element'),
loader: () => import('../backoffice/dashboards/models-builder/dashboard-models-builder.element'),
meta: {
sections: ['Umb.Section.Settings'],
pathname: 'models-builder', // TODO: how to we want to support pretty urls?
@@ -123,7 +125,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
alias: 'Umb.Dashboard.PublishedStatus',
name: 'Published Status',
elementName: 'umb-dashboard-published-status',
loader: () => import('./backoffice/dashboards/published-status/dashboard-published-status.element'),
loader: () => import('../backoffice/dashboards/published-status/dashboard-published-status.element'),
meta: {
sections: ['Umb.Section.Settings'],
pathname: 'published-status', // TODO: how to we want to support pretty urls?
@@ -135,93 +137,19 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
alias: 'Umb.Dashboard.MediaManagement',
name: 'Media',
elementName: 'umb-dashboard-media-management',
loader: () => import('./backoffice/dashboards/media-management/dashboard-media-management.element'),
loader: () => import('../backoffice/dashboards/media-management/dashboard-media-management.element'),
meta: {
sections: ['Umb.Section.Media'],
pathname: 'media-management', // TODO: how to we want to support pretty urls?
weight: 10,
},
},
{
type: 'propertyEditorUI',
alias: 'Umb.PropertyEditorUI.Text',
name: 'Text Property Editor UI',
loader: () => import('./backoffice/property-editors/text/property-editor-text.element'),
meta: {
label: 'Text',
icon: 'umb:edit',
group: 'Common',
propertyEditor: 'Umbraco.TextBox',
},
},
{
type: 'propertyEditorUI',
alias: 'Umb.PropertyEditorUI.Textarea',
name: 'Textarea Property Editor UI',
elementName: 'umb-property-editor-textarea',
loader: () => import('./backoffice/property-editors/textarea/property-editor-textarea.element'),
meta: {
label: 'Textarea',
icon: 'umb:edit',
group: 'Common',
propertyEditor: 'Umbraco.TextArea',
config: {
properties: [
{
alias: 'rows',
label: 'Number of rows',
description: 'If empty - 10 rows would be set as the default value',
propertyEditorUI: 'Umb.PropertyEditorUI.Number',
},
],
},
},
},
{
type: 'propertyEditorUI',
alias: 'Umb.PropertyEditorUI.ContextExample',
name: 'Context Example Property Editor UI',
loader: () => import('./backoffice/property-editors/context-example/property-editor-context-example.element'),
meta: {
label: 'Context Example',
icon: 'umb:favorite',
group: 'Common',
propertyEditor: 'Umbraco.Custom',
config: {
properties: [
{
label: 'Some Configuration',
alias: 'someConfiguration',
propertyEditorUI: 'Umb.PropertyEditorUI.Text',
},
],
defaultData: [
{
alias: 'someConfiguration',
value: 'Some default value',
},
],
},
},
},
{
type: 'propertyEditorUI',
alias: 'Umb.PropertyEditorUI.Number',
name: 'Number Property Editor UI',
loader: () => import('./backoffice/property-editors/number/property-editor-number.element'),
meta: {
label: 'Number',
icon: 'umb:autofill',
group: 'Common',
propertyEditor: 'Umbraco.Integer',
},
},
{
type: 'editorView',
alias: 'Umb.EditorView.Content.Edit',
name: 'Content Editor Edit View',
elementName: 'umb-editor-view-node-edit',
loader: () => import('./backoffice/editors/shared/node/views/edit/editor-view-node-edit.element'),
loader: () => import('../backoffice/editors/shared/node/views/edit/editor-view-node-edit.element'),
meta: {
// TODO: how do we want to filter where editor views are shown? https://our.umbraco.com/documentation/extending/Content-Apps/#setting-up-the-plugin
// this is a temp solution
@@ -237,7 +165,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
alias: 'Umb.EditorView.Content.Info',
name: 'Content Editor Info View',
elementName: 'umb-editor-view-node-info',
loader: () => import('./backoffice/editors/shared/node/views/info/editor-view-node-info.element'),
loader: () => import('../backoffice/editors/shared/node/views/info/editor-view-node-info.element'),
meta: {
// TODO: how do we want to filter where editor views are shown? https://our.umbraco.com/documentation/extending/Content-Apps/#setting-up-the-plugin
// this is a temp solution
@@ -252,7 +180,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
type: 'editorView',
alias: 'Umb.EditorView.DataType.Edit',
name: 'Data Type Editor Edit View',
loader: () => import('./backoffice/editors/data-type/views/edit/editor-view-data-type-edit.element'),
loader: () => import('../backoffice/editors/data-type/views/edit/editor-view-data-type-edit.element'),
meta: {
// TODO: how do we want to filter where editor views are shown? https://our.umbraco.com/documentation/extending/Content-Apps/#setting-up-the-plugin
// this is a temp solution
@@ -267,7 +195,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
type: 'editorView',
alias: 'Umb.EditorView.DataType.Info',
name: 'Data Type Editor Info View',
loader: () => import('./backoffice/editors/data-type/views/info/editor-view-data-type-info.element'),
loader: () => import('../backoffice/editors/data-type/views/info/editor-view-data-type-info.element'),
meta: {
// TODO: how do we want to filter where editor views are shown? https://our.umbraco.com/documentation/extending/Content-Apps/#setting-up-the-plugin
// this is a temp solution
@@ -283,7 +211,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
alias: 'Umb.EditorView.DocumentType.Design',
name: 'Document Type Editor Design View',
elementName: 'umb-editor-view-document-type-design',
loader: () => import('./backoffice/editors/document-type/views/editor-view-document-type-design.element'),
loader: () => import('../backoffice/editors/document-type/views/editor-view-document-type-design.element'),
meta: {
// TODO: how do we want to filter where editor views are shown? https://our.umbraco.com/documentation/extending/Content-Apps/#setting-up-the-plugin
// this is a temp solution
@@ -299,7 +227,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
alias: 'Umb.Editor.Packages.Overview',
name: 'Packages Editor Overview View',
elementName: 'umb-packages-overview',
loader: () => import('./backoffice/sections/packages/packages-overview.element'),
loader: () => import('../backoffice/sections/packages/packages-overview.element'),
meta: {
icon: 'document',
label: 'Packages',
@@ -313,7 +241,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
alias: 'Umb.Editor.Packages.Installed',
name: 'Packages Editor Installed View',
elementName: 'umb-packages-installed',
loader: () => import('./backoffice/sections/packages/packages-installed.element'),
loader: () => import('../backoffice/sections/packages/packages-installed.element'),
meta: {
icon: 'document',
label: 'Installed',
@@ -327,7 +255,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
alias: 'Umb.PropertyAction.Copy',
name: 'Copy',
elementName: 'umb-property-action-copy',
loader: () => import('./backoffice/property-actions/copy/property-action-copy.element'),
loader: () => import('../backoffice/property-actions/copy/property-action-copy.element'),
meta: {
propertyEditors: ['Umb.PropertyEditorUI.Text'],
},
@@ -337,29 +265,16 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
alias: 'Umb.PropertyAction.Clear',
name: 'Clear',
elementName: 'umb-property-action-clear',
loader: () => import('./backoffice/property-actions/clear/property-action-clear.element'),
loader: () => import('../backoffice/property-actions/clear/property-action-clear.element'),
meta: {
propertyEditors: ['Umb.PropertyEditorUI.Text'],
},
},
{
type: 'propertyEditorUI',
alias: 'Umb.PropertyEditorUI.ContentPicker',
name: 'Content Picker Property Editor UI',
elementName: 'umb-property-editor-content-picker',
loader: () => import('./backoffice/property-editors/content-picker/property-editor-content-picker.element'),
meta: {
label: 'Content Picker',
propertyEditor: 'Umbraco.ContentPicker',
icon: 'umb:document',
group: 'Common',
},
},
{
type: 'tree',
alias: 'Umb.Tree.DataTypes',
name: 'Data Types Tree',
loader: () => import('./backoffice/trees/data-types/tree-data-types.element'),
loader: () => import('../backoffice/trees/data-types/tree-data-types.element'),
meta: {
weight: 1,
sections: ['Umb.Section.Settings'],
@@ -369,7 +284,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
type: 'tree',
alias: 'Umb.Tree.DocumentTypes',
name: 'Document Types Tree',
loader: () => import('./backoffice/trees/document-types/tree-document-types.element'),
loader: () => import('../backoffice/trees/document-types/tree-document-types.element'),
meta: {
weight: 2,
sections: ['Umb.Section.Settings'],
@@ -380,7 +295,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
alias: 'Umb.Dashboard.MembersTest',
name: 'Members Test',
elementName: 'umb-dashboard-welcome',
loader: () => import('./backoffice/dashboards/welcome/dashboard-welcome.element'),
loader: () => import('../backoffice/dashboards/welcome/dashboard-welcome.element'),
meta: {
weight: -10,
pathname: 'welcome',
@@ -391,7 +306,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
type: 'tree',
alias: 'Umb.Tree.Members',
name: 'Members Tree',
loader: () => import('./backoffice/trees/members/tree-members.element'),
loader: () => import('../backoffice/trees/members/tree-members.element'),
meta: {
weight: 0,
sections: ['Umb.Section.Members'],
@@ -401,7 +316,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
type: 'tree',
alias: 'Umb.Tree.MemberGroups',
name: 'Members Groups Tree',
loader: () => import('./backoffice/trees/member-groups/tree-member-groups.element'),
loader: () => import('../backoffice/trees/member-groups/tree-member-groups.element'),
meta: {
weight: 1,
sections: ['Umb.Section.Members'],
@@ -411,7 +326,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
type: 'tree',
alias: 'Umb.Tree.Extensions',
name: 'Extensions Tree',
loader: () => import('./backoffice/trees/extensions/tree-extensions.element'),
loader: () => import('../backoffice/trees/extensions/tree-extensions.element'),
meta: {
weight: 3,
sections: ['Umb.Section.Settings'],
@@ -421,7 +336,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
type: 'tree',
alias: 'Umb.Tree.Media',
name: 'Media Tree',
loader: () => import('./backoffice/trees/media/tree-media.element'),
loader: () => import('../backoffice/trees/media/tree-media.element'),
meta: {
weight: 100,
sections: ['Umb.Section.Media'],
@@ -431,7 +346,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
type: 'tree',
alias: 'Umb.Tree.Content',
name: 'Content Tree',
loader: () => import('./backoffice/trees/documents/tree-documents.element'),
loader: () => import('../backoffice/trees/documents/tree-documents.element'),
meta: {
weight: 100,
sections: ['Umb.Section.Content'],
@@ -441,7 +356,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
type: 'editor',
alias: 'Umb.Editor.Member',
name: 'Member Editor',
loader: () => import('./backoffice/editors/member/editor-member.element'),
loader: () => import('../backoffice/editors/member/editor-member.element'),
meta: {
entityType: 'member',
},
@@ -450,7 +365,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
type: 'editor',
alias: 'Umb.Editor.MemberGroup',
name: 'Member Group Editor',
loader: () => import('./backoffice/editors/member-group/editor-member-group.element'),
loader: () => import('../backoffice/editors/member-group/editor-member-group.element'),
meta: {
entityType: 'memberGroup',
},
@@ -459,7 +374,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
type: 'editor',
alias: 'Umb.Editor.DataType',
name: 'Data Type Editor',
loader: () => import('./backoffice/editors/data-type/editor-data-type.element'),
loader: () => import('../backoffice/editors/data-type/editor-data-type.element'),
meta: {
entityType: 'dataType',
},
@@ -468,7 +383,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
type: 'editor',
alias: 'Umb.Editor.DocumentType',
name: 'Document Type Editor',
loader: () => import('./backoffice/editors/document-type/editor-document-type.element'),
loader: () => import('../backoffice/editors/document-type/editor-document-type.element'),
meta: {
entityType: 'documentType',
},
@@ -477,7 +392,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
type: 'editor',
alias: 'Umb.Editor.Extensions',
name: 'Extensions Editor',
loader: () => import('./backoffice/editors/extensions/editor-extensions.element'),
loader: () => import('../backoffice/editors/extensions/editor-extensions.element'),
meta: {
entityType: 'extensionsList',
},
@@ -486,7 +401,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
type: 'editor',
alias: 'Umb.Editor.Media',
name: 'Media Editor',
loader: () => import('./backoffice/editors/media/editor-media.element'),
loader: () => import('../backoffice/editors/media/editor-media.element'),
meta: {
entityType: 'media',
},
@@ -495,7 +410,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
type: 'editor',
alias: 'Umb.Editor.Document',
name: 'Content Editor',
loader: () => import('./backoffice/editors/document/editor-document.element'),
loader: () => import('../backoffice/editors/document/editor-document.element'),
meta: {
entityType: 'document',
},
@@ -504,7 +419,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
type: 'treeItemAction',
alias: 'Umb.TreeItemAction.Document.Create',
name: 'Document Tree Item Action Create',
loader: () => import('./backoffice/trees/documents/actions/action-document-create.element'),
loader: () => import('../backoffice/trees/documents/actions/action-document-create.element'),
meta: {
trees: ['Umb.Tree.Content'],
label: 'Create',
@@ -516,7 +431,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
type: 'treeItemAction',
alias: 'Umb.TreeItemAction.Document.Delete',
name: 'Document Tree Item Action Delete',
loader: () => import('./backoffice/trees/documents/actions/action-document-delete.element'),
loader: () => import('../backoffice/trees/documents/actions/action-document-delete.element'),
meta: {
trees: ['Umb.Tree.Content'],
label: 'Delete',
@@ -528,7 +443,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
type: 'treeItemAction',
alias: 'Umb.TreeItemAction.Document.Paged',
name: 'Document Tree Item Action Paged',
loader: () => import('./backoffice/trees/documents/actions/action-document-paged.element'),
loader: () => import('../backoffice/trees/documents/actions/action-document-paged.element'),
meta: {
trees: ['Umb.Tree.Content'],
label: 'Paged',
@@ -540,7 +455,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
type: 'treeItemAction',
alias: 'Umb.TreeItemAction.DataType.Create',
name: 'Tree Item Action Create',
loader: () => import('./backoffice/trees/data-types/actions/action-data-type-create.element'),
loader: () => import('../backoffice/trees/data-types/actions/action-data-type-create.element'),
meta: {
trees: ['Umb.Tree.DataTypes'],
label: 'Create',
@@ -552,7 +467,7 @@ export const internalManifests: Array<ManifestTypes & { loader: () => Promise<ob
type: 'treeItemAction',
alias: 'Umb.TreeItemAction.DataType.Delete',
name: 'Tree Item Action Delete',
loader: () => import('./backoffice/trees/data-types/actions/action-data-type-delete.element'),
loader: () => import('../backoffice/trees/data-types/actions/action-data-type-delete.element'),
meta: {
trees: ['Umb.Tree.DataTypes'],
label: 'Delete',

View File

@@ -0,0 +1,91 @@
import type { ManifestTypes } from '../core/models';
export const manifests: Array<ManifestTypes & { loader: () => Promise<object | HTMLElement> }> = [
{
type: 'propertyEditorUI',
alias: 'Umb.PropertyEditorUI.Text',
name: 'Text Property Editor UI',
loader: () => import('../backoffice/property-editors/text/property-editor-text.element'),
meta: {
label: 'Text',
icon: 'umb:edit',
group: 'Common',
propertyEditor: 'Umbraco.TextBox',
},
},
{
type: 'propertyEditorUI',
alias: 'Umb.PropertyEditorUI.Textarea',
name: 'Textarea Property Editor UI',
elementName: 'umb-property-editor-textarea',
loader: () => import('../backoffice/property-editors/textarea/property-editor-textarea.element'),
meta: {
label: 'Textarea',
icon: 'umb:edit',
group: 'Common',
propertyEditor: 'Umbraco.TextArea',
config: {
properties: [
{
alias: 'rows',
label: 'Number of rows',
description: 'If empty - 10 rows would be set as the default value',
propertyEditorUI: 'Umb.PropertyEditorUI.Number',
},
],
},
},
},
{
type: 'propertyEditorUI',
alias: 'Umb.PropertyEditorUI.ContextExample',
name: 'Context Example Property Editor UI',
loader: () => import('../backoffice/property-editors/context-example/property-editor-context-example.element'),
meta: {
label: 'Context Example',
icon: 'umb:favorite',
group: 'Common',
propertyEditor: 'Umbraco.Custom',
config: {
properties: [
{
label: 'Some Configuration',
alias: 'someConfiguration',
propertyEditorUI: 'Umb.PropertyEditorUI.Text',
},
],
defaultData: [
{
alias: 'someConfiguration',
value: 'Some default value',
},
],
},
},
},
{
type: 'propertyEditorUI',
alias: 'Umb.PropertyEditorUI.Number',
name: 'Number Property Editor UI',
loader: () => import('../backoffice/property-editors/number/property-editor-number.element'),
meta: {
label: 'Number',
icon: 'umb:autofill',
group: 'Common',
propertyEditor: 'Umbraco.Integer',
},
},
{
type: 'propertyEditorUI',
alias: 'Umb.PropertyEditorUI.ContentPicker',
name: 'Content Picker Property Editor UI',
elementName: 'umb-property-editor-content-picker',
loader: () => import('../backoffice/property-editors/content-picker/property-editor-content-picker.element'),
meta: {
label: 'Content Picker',
propertyEditor: 'Umbraco.ContentPicker',
icon: 'umb:document',
group: 'Common',
},
},
];