@webiny/app-headless-cms 6.0.0-rc.1 → 6.0.0-rc.3
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/admin/components/ContentEntries/Header/ButtonRefresh/ButtonRefresh.d.ts +2 -0
- package/admin/components/ContentEntries/Header/ButtonRefresh/ButtonRefresh.js +18 -0
- package/admin/components/ContentEntries/Header/ButtonRefresh/ButtonRefresh.js.map +1 -0
- package/admin/components/ContentEntries/Header/ButtonRefresh/index.d.ts +1 -0
- package/admin/components/ContentEntries/Header/ButtonRefresh/index.js +3 -0
- package/admin/components/ContentEntries/Header/ButtonRefresh/index.js.map +1 -0
- package/admin/components/ContentEntries/Header/Header.js +2 -1
- package/admin/components/ContentEntries/Header/Header.js.map +1 -1
- package/admin/components/ContentEntries/SidebarContent/SidebarContent.js +1 -1
- package/admin/components/ContentEntries/SidebarContent/SidebarContent.js.map +1 -1
- package/admin/components/ContentEntries/SidebarHeader/SidebarHeader.js +1 -1
- package/admin/components/ContentEntries/SidebarHeader/SidebarHeader.js.map +1 -1
- package/admin/components/ContentEntries/Table/Cells/CellLive.d.ts +2 -0
- package/admin/components/ContentEntries/Table/Cells/CellLive.js +26 -0
- package/admin/components/ContentEntries/Table/Cells/CellLive.js.map +1 -0
- package/admin/components/ContentEntries/Table/Cells/index.d.ts +1 -0
- package/admin/components/ContentEntries/Table/Cells/index.js +1 -0
- package/admin/components/ContentEntries/Table/Cells/index.js.map +1 -1
- package/admin/components/ContentModelEditor/ContentModelEditor.js +1 -6
- package/admin/components/ContentModelEditor/ContentModelEditor.js.map +1 -1
- package/admin/components/ContentModelEditor/ContentModelEditorProvider.d.ts +2 -0
- package/admin/components/ContentModelEditor/ContentModelEditorProvider.js +14 -2
- package/admin/components/ContentModelEditor/ContentModelEditorProvider.js.map +1 -1
- package/admin/components/ContentModelEditor/FieldsSidebar.js +51 -2
- package/admin/components/ContentModelEditor/FieldsSidebar.js.map +1 -1
- package/admin/components/Droppable.d.ts +1 -1
- package/admin/components/Droppable.js.map +1 -1
- package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.js +3 -3
- package/admin/components/FieldEditor/EditFieldDialog/AppearanceTab.js.map +1 -1
- package/admin/components/FieldEditor/EditFieldDialog/FieldSettingsTabs.d.ts +10 -0
- package/admin/components/FieldEditor/EditFieldDialog/FieldSettingsTabs.js +69 -0
- package/admin/components/FieldEditor/EditFieldDialog/FieldSettingsTabs.js.map +1 -0
- package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.js +27 -9
- package/admin/components/FieldEditor/EditFieldDialog/GeneralTab.js.map +1 -1
- package/admin/components/FieldEditor/EditFieldDialog/PermissionsTab/CannotUsePermissions.d.ts +2 -0
- package/admin/components/FieldEditor/EditFieldDialog/PermissionsTab/CannotUsePermissions.js +14 -0
- package/admin/components/FieldEditor/EditFieldDialog/PermissionsTab/CannotUsePermissions.js.map +1 -0
- package/admin/components/FieldEditor/EditFieldDialog/PermissionsTab/FieldPermissionsSelection.d.ts +15 -0
- package/admin/components/FieldEditor/EditFieldDialog/PermissionsTab/FieldPermissionsSelection.js +131 -0
- package/admin/components/FieldEditor/EditFieldDialog/PermissionsTab/FieldPermissionsSelection.js.map +1 -0
- package/admin/components/FieldEditor/EditFieldDialog/PermissionsTab/PermissionsTab.d.ts +4 -0
- package/admin/components/FieldEditor/EditFieldDialog/PermissionsTab/PermissionsTab.js +74 -0
- package/admin/components/FieldEditor/EditFieldDialog/PermissionsTab/PermissionsTab.js.map +1 -0
- package/admin/components/FieldEditor/EditFieldDialog/RulesTab/RulesTab.d.ts +13 -0
- package/admin/components/FieldEditor/EditFieldDialog/RulesTab/RulesTab.js +203 -0
- package/admin/components/FieldEditor/EditFieldDialog/RulesTab/RulesTab.js.map +1 -0
- package/admin/components/FieldEditor/EditFieldDialog/RulesTab/index.d.ts +1 -0
- package/admin/components/FieldEditor/EditFieldDialog/RulesTab/index.js +3 -0
- package/admin/components/FieldEditor/EditFieldDialog/RulesTab/index.js.map +1 -0
- package/admin/components/FieldEditor/EditFieldDialog.js +13 -56
- package/admin/components/FieldEditor/EditFieldDialog.js.map +1 -1
- package/admin/components/FieldEditor/EditFieldDialogContainer.d.ts +12 -0
- package/admin/components/FieldEditor/EditFieldDialogContainer.js +40 -0
- package/admin/components/FieldEditor/EditFieldDialogContainer.js.map +1 -0
- package/admin/components/FieldEditor/EditFieldDrawerContainer.d.ts +12 -0
- package/admin/components/FieldEditor/EditFieldDrawerContainer.js +40 -0
- package/admin/components/FieldEditor/EditFieldDrawerContainer.js.map +1 -0
- package/admin/components/FieldEditor/FieldEditor.js +148 -88
- package/admin/components/FieldEditor/FieldEditor.js.map +1 -1
- package/admin/components/FieldEditor/FieldEditorContext.d.ts +33 -3
- package/admin/components/FieldEditor/FieldEditorContext.js +225 -6
- package/admin/components/FieldEditor/FieldEditorContext.js.map +1 -1
- package/admin/components/FieldEditor/LayoutCell.d.ts +9 -0
- package/admin/components/FieldEditor/LayoutCell.js +33 -0
- package/admin/components/FieldEditor/LayoutCell.js.map +1 -0
- package/admin/components/FieldEditor/utils/deleteField.js +12 -4
- package/admin/components/FieldEditor/utils/deleteField.js.map +1 -1
- package/admin/components/FieldEditor/utils/getFieldPosition.js +6 -1
- package/admin/components/FieldEditor/utils/getFieldPosition.js.map +1 -1
- package/admin/graphql/contentModels.d.ts +2 -2
- package/admin/graphql/contentModels.js +7 -0
- package/admin/graphql/contentModels.js.map +1 -1
- package/admin/hooks/useModelFieldGraphqlContext.d.ts +1 -0
- package/admin/plugins/fieldRenderers/DynamicSection.d.ts +2 -1
- package/admin/plugins/fieldRenderers/DynamicSection.js +3 -1
- package/admin/plugins/fieldRenderers/DynamicSection.js.map +1 -1
- package/admin/plugins/fieldRenderers/boolean/booleanSwitch.js +7 -1
- package/admin/plugins/fieldRenderers/boolean/booleanSwitch.js.map +1 -1
- package/admin/plugins/fieldRenderers/checkboxes.js +7 -1
- package/admin/plugins/fieldRenderers/checkboxes.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/Input.js +9 -2
- package/admin/plugins/fieldRenderers/dateTime/Input.js.map +1 -1
- package/admin/plugins/fieldRenderers/dateTime/Select.js +7 -0
- package/admin/plugins/fieldRenderers/dateTime/Select.js.map +1 -1
- package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.d.ts +1 -0
- package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.js +9 -5
- package/admin/plugins/fieldRenderers/dynamicZone/MultiValueDynamicZone.js.map +1 -1
- package/admin/plugins/fieldRenderers/dynamicZone/SingleValueDynamicZone.d.ts +2 -1
- package/admin/plugins/fieldRenderers/dynamicZone/SingleValueDynamicZone.js +18 -10
- package/admin/plugins/fieldRenderers/dynamicZone/SingleValueDynamicZone.js.map +1 -1
- package/admin/plugins/fieldRenderers/lexicalText/lexicalTextInput.js +13 -4
- package/admin/plugins/fieldRenderers/lexicalText/lexicalTextInput.js.map +1 -1
- package/admin/plugins/fieldRenderers/lexicalText/lexicalTextInputs.js +10 -4
- package/admin/plugins/fieldRenderers/lexicalText/lexicalTextInputs.js.map +1 -1
- package/admin/plugins/fieldRenderers/longText/longText.js +7 -1
- package/admin/plugins/fieldRenderers/longText/longText.js.map +1 -1
- package/admin/plugins/fieldRenderers/longText/longTexts.js +12 -3
- package/admin/plugins/fieldRenderers/longText/longTexts.js.map +1 -1
- package/admin/plugins/fieldRenderers/number/numberInput.js +7 -1
- package/admin/plugins/fieldRenderers/number/numberInput.js.map +1 -1
- package/admin/plugins/fieldRenderers/number/numberInputs.js +11 -3
- package/admin/plugins/fieldRenderers/number/numberInputs.js.map +1 -1
- package/admin/plugins/fieldRenderers/object/FieldSettings.d.ts +2 -1
- package/admin/plugins/fieldRenderers/object/MultiValueContainer.js +5 -0
- package/admin/plugins/fieldRenderers/object/MultiValueContainer.js.map +1 -1
- package/admin/plugins/fieldRenderers/object/MultiValueItemContainer.d.ts +1 -0
- package/admin/plugins/fieldRenderers/object/MultiValueItemContainer.js +3 -2
- package/admin/plugins/fieldRenderers/object/MultiValueItemContainer.js.map +1 -1
- package/admin/plugins/fieldRenderers/radioButtons.js +7 -1
- package/admin/plugins/fieldRenderers/radioButtons.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/AdvancedMultipleReferenceField.js +15 -7
- package/admin/plugins/fieldRenderers/ref/advanced/components/AdvancedMultipleReferenceField.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/AdvancedSingleReferenceField.js +14 -7
- package/admin/plugins/fieldRenderers/ref/advanced/components/AdvancedSingleReferenceField.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/Entry.d.ts +3 -1
- package/admin/plugins/fieldRenderers/ref/advanced/components/Entry.js +7 -6
- package/admin/plugins/fieldRenderers/ref/advanced/components/Entry.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.d.ts +1 -1
- package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.js +9 -3
- package/admin/plugins/fieldRenderers/ref/components/ContentEntriesAutocomplete.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/components/ContentEntriesMultiAutoComplete.d.ts +1 -1
- package/admin/plugins/fieldRenderers/ref/components/ContentEntriesMultiAutoComplete.js +9 -3
- package/admin/plugins/fieldRenderers/ref/components/ContentEntriesMultiAutoComplete.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/simple/components/SimpleMultipleRenderer.js +7 -1
- package/admin/plugins/fieldRenderers/ref/simple/components/SimpleMultipleRenderer.js.map +1 -1
- package/admin/plugins/fieldRenderers/ref/simple/components/SimpleSingleRenderer.js +7 -1
- package/admin/plugins/fieldRenderers/ref/simple/components/SimpleSingleRenderer.js.map +1 -1
- package/admin/plugins/fieldRenderers/select.js +7 -1
- package/admin/plugins/fieldRenderers/select.js.map +1 -1
- package/admin/plugins/fieldRenderers/text/tags.js +7 -1
- package/admin/plugins/fieldRenderers/text/tags.js.map +1 -1
- package/admin/plugins/fieldRenderers/text/textInput.js +7 -1
- package/admin/plugins/fieldRenderers/text/textInput.js.map +1 -1
- package/admin/plugins/fieldRenderers/text/textInputs.js +12 -3
- package/admin/plugins/fieldRenderers/text/textInputs.js.map +1 -1
- package/admin/plugins/fields/ui/TabsLayoutEditor.d.ts +9 -0
- package/admin/plugins/fields/ui/TabsLayoutEditor.js +470 -0
- package/admin/plugins/fields/ui/TabsLayoutEditor.js.map +1 -0
- package/admin/plugins/fields/ui/alert.d.ts +2 -2
- package/admin/plugins/fields/ui/alert.js +144 -17
- package/admin/plugins/fields/ui/alert.js.map +1 -1
- package/admin/plugins/fields/ui/index.d.ts +1 -0
- package/admin/plugins/fields/ui/index.js +1 -0
- package/admin/plugins/fields/ui/index.js.map +1 -1
- package/admin/plugins/fields/ui/separator.d.ts +2 -2
- package/admin/plugins/fields/ui/separator.js +131 -17
- package/admin/plugins/fields/ui/separator.js.map +1 -1
- package/admin/plugins/fields/ui/tabs.d.ts +2 -0
- package/admin/plugins/fields/ui/tabs.js +89 -0
- package/admin/plugins/fields/ui/tabs.js.map +1 -0
- package/admin/plugins/index.d.ts +1 -0
- package/admin/views/contentEntries/ContentEntriesModule.js +6 -1
- package/admin/views/contentEntries/ContentEntriesModule.js.map +1 -1
- package/admin/views/contentEntries/hooks/useContentEntriesList.d.ts +1 -0
- package/admin/views/contentEntries/hooks/useContentEntriesList.js +8 -4
- package/admin/views/contentEntries/hooks/useContentEntriesList.js.map +1 -1
- package/admin/views/contentModels/importing/graphql.d.ts +2 -2
- package/admin/views/contentModels/importing/graphql.js.map +1 -1
- package/allPlugins.d.ts +2 -1
- package/allPlugins.js +2 -3
- package/allPlugins.js.map +1 -1
- package/exports/admin/cms/model.d.ts +1 -0
- package/exports/admin/cms/model.js +3 -0
- package/exports/admin/cms/model.js.map +1 -0
- package/package.json +24 -24
- package/types.d.ts +1 -0
- package/types.js +5 -1
- package/types.js.map +1 -1
- package/admin/plugins/fieldRenderers/ui/alert.d.ts +0 -2
- package/admin/plugins/fieldRenderers/ui/alert.js +0 -32
- package/admin/plugins/fieldRenderers/ui/alert.js.map +0 -1
- package/admin/plugins/fieldRenderers/ui/index.d.ts +0 -2
- package/admin/plugins/fieldRenderers/ui/index.js +0 -4
- package/admin/plugins/fieldRenderers/ui/index.js.map +0 -1
- package/admin/plugins/fieldRenderers/ui/separator.d.ts +0 -2
- package/admin/plugins/fieldRenderers/ui/separator.js +0 -31
- package/admin/plugins/fieldRenderers/ui/separator.js.map +0 -1
|
@@ -1,31 +1,158 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { ReactComponent as AlertIcon } from "@webiny/icons/warning.svg";
|
|
3
|
+
import { ReactComponent as EditIcon } from "@webiny/icons/edit.svg";
|
|
4
|
+
import { ReactComponent as DeleteIcon } from "@webiny/icons/delete.svg";
|
|
3
5
|
import { i18n } from "@webiny/app/i18n/index.js";
|
|
6
|
+
import { Alert, Grid, IconButton, Tabs, Textarea, Select, Text } from "@webiny/admin-ui";
|
|
7
|
+
import { useDialogs } from "@webiny/app-admin";
|
|
8
|
+
import { Bind } from "@webiny/form";
|
|
9
|
+
import { PermissionsTab } from "../../../components/FieldEditor/EditFieldDialog/PermissionsTab/PermissionsTab.js";
|
|
10
|
+
import { RulesTab } from "../../../components/FieldEditor/EditFieldDialog/RulesTab/RulesTab.js";
|
|
11
|
+
import { useModelEditor } from "../../../components/ContentModelEditor/useModelEditor.js";
|
|
4
12
|
const t = i18n.ns("app-headless-cms/admin/fields");
|
|
13
|
+
const AlertSettings = () => {
|
|
14
|
+
return /*#__PURE__*/React.createElement(Grid, {
|
|
15
|
+
className: "mt-md"
|
|
16
|
+
}, /*#__PURE__*/React.createElement(Grid.Column, {
|
|
17
|
+
span: 12
|
|
18
|
+
}, /*#__PURE__*/React.createElement(Bind, {
|
|
19
|
+
name: "label"
|
|
20
|
+
}, /*#__PURE__*/React.createElement(Textarea, {
|
|
21
|
+
label: "Message"
|
|
22
|
+
}))), /*#__PURE__*/React.createElement(Grid.Column, {
|
|
23
|
+
span: 12
|
|
24
|
+
}, /*#__PURE__*/React.createElement(Bind, {
|
|
25
|
+
name: "alertType",
|
|
26
|
+
defaultValue: "info"
|
|
27
|
+
}, /*#__PURE__*/React.createElement(Select, {
|
|
28
|
+
displayResetAction: false,
|
|
29
|
+
label: "Alert type",
|
|
30
|
+
options: [{
|
|
31
|
+
value: "info",
|
|
32
|
+
label: "Info"
|
|
33
|
+
}, {
|
|
34
|
+
value: "success",
|
|
35
|
+
label: "Success"
|
|
36
|
+
}, {
|
|
37
|
+
value: "warning",
|
|
38
|
+
label: "Warning"
|
|
39
|
+
}, {
|
|
40
|
+
value: "danger",
|
|
41
|
+
label: "Danger"
|
|
42
|
+
}]
|
|
43
|
+
}))));
|
|
44
|
+
};
|
|
45
|
+
const AlertDialogContent = ({
|
|
46
|
+
fieldOptions
|
|
47
|
+
}) => {
|
|
48
|
+
return /*#__PURE__*/React.createElement(Tabs, {
|
|
49
|
+
size: "md",
|
|
50
|
+
separator: true,
|
|
51
|
+
tabs: [/*#__PURE__*/React.createElement(Tabs.Tab, {
|
|
52
|
+
key: "alert",
|
|
53
|
+
trigger: "Alert",
|
|
54
|
+
value: "alert",
|
|
55
|
+
content: /*#__PURE__*/React.createElement(AlertSettings, null)
|
|
56
|
+
}), /*#__PURE__*/React.createElement(Tabs.Tab, {
|
|
57
|
+
key: "permissions",
|
|
58
|
+
trigger: "Permissions",
|
|
59
|
+
value: "permissions",
|
|
60
|
+
content: /*#__PURE__*/React.createElement(PermissionsTab, {
|
|
61
|
+
gridClassName: "mt-md"
|
|
62
|
+
})
|
|
63
|
+
}), /*#__PURE__*/React.createElement(Tabs.Tab, {
|
|
64
|
+
key: "rules",
|
|
65
|
+
trigger: "Rules",
|
|
66
|
+
value: "rules",
|
|
67
|
+
content: /*#__PURE__*/React.createElement(RulesTab, {
|
|
68
|
+
gridClassName: "mt-md",
|
|
69
|
+
fieldOptions: fieldOptions
|
|
70
|
+
})
|
|
71
|
+
})]
|
|
72
|
+
});
|
|
73
|
+
};
|
|
74
|
+
const AlertLayoutCell = ({
|
|
75
|
+
descriptor,
|
|
76
|
+
onUpdate,
|
|
77
|
+
onDelete
|
|
78
|
+
}) => {
|
|
79
|
+
const {
|
|
80
|
+
fieldOptions
|
|
81
|
+
} = useModelEditor();
|
|
82
|
+
const dialogs = useDialogs();
|
|
83
|
+
const openSettings = () => {
|
|
84
|
+
dialogs.showDialog({
|
|
85
|
+
title: "Alert Settings",
|
|
86
|
+
description: "Configure the alert and access permissions",
|
|
87
|
+
acceptLabel: "Save",
|
|
88
|
+
cancelLabel: "Cancel",
|
|
89
|
+
formData: {
|
|
90
|
+
label: descriptor.label,
|
|
91
|
+
alertType: descriptor.alertType,
|
|
92
|
+
rules: descriptor.rules ?? []
|
|
93
|
+
},
|
|
94
|
+
content: /*#__PURE__*/React.createElement(AlertDialogContent, {
|
|
95
|
+
fieldOptions: fieldOptions
|
|
96
|
+
}),
|
|
97
|
+
onAccept: data => {
|
|
98
|
+
onUpdate({
|
|
99
|
+
...descriptor,
|
|
100
|
+
label: data.label ?? "",
|
|
101
|
+
alertType: data.alertType ?? "info",
|
|
102
|
+
rules: data.rules ?? []
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
});
|
|
106
|
+
};
|
|
107
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
108
|
+
className: "flex items-center justify-between"
|
|
109
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
110
|
+
className: "flex-1"
|
|
111
|
+
}, descriptor.label ? /*#__PURE__*/React.createElement(Alert, {
|
|
112
|
+
type: descriptor.alertType
|
|
113
|
+
}, descriptor.label) : /*#__PURE__*/React.createElement(Text, {
|
|
114
|
+
size: "sm",
|
|
115
|
+
className: "text-neutral-strong italic"
|
|
116
|
+
}, "Alert (no message set)")), /*#__PURE__*/React.createElement("div", {
|
|
117
|
+
className: "flex items-center gap-xs ml-sm"
|
|
118
|
+
}, /*#__PURE__*/React.createElement(IconButton, {
|
|
119
|
+
icon: /*#__PURE__*/React.createElement(EditIcon, null),
|
|
120
|
+
onClick: openSettings,
|
|
121
|
+
variant: "ghost",
|
|
122
|
+
size: "sm"
|
|
123
|
+
}), /*#__PURE__*/React.createElement(IconButton, {
|
|
124
|
+
icon: /*#__PURE__*/React.createElement(DeleteIcon, null),
|
|
125
|
+
onClick: onDelete,
|
|
126
|
+
variant: "ghost",
|
|
127
|
+
size: "sm"
|
|
128
|
+
})));
|
|
129
|
+
};
|
|
5
130
|
export const uiAlertField = {
|
|
6
|
-
type: "cms-editor-field-type",
|
|
7
|
-
name: "cms-editor-field-type-
|
|
131
|
+
type: "cms-editor-layout-field-type",
|
|
132
|
+
name: "cms-editor-layout-field-type-alert",
|
|
8
133
|
field: {
|
|
9
|
-
type: "
|
|
134
|
+
type: "alert",
|
|
10
135
|
label: t`Alert`,
|
|
11
|
-
description: t`Show an alert
|
|
136
|
+
description: t`Show an alert message in the form.`,
|
|
12
137
|
icon: /*#__PURE__*/React.createElement(AlertIcon, null),
|
|
13
|
-
allowLayout: false,
|
|
14
|
-
hideInAdmin: false,
|
|
15
|
-
allowList: false,
|
|
16
138
|
canEditSettings: true,
|
|
17
|
-
|
|
18
|
-
tags: undefined,
|
|
19
|
-
createField() {
|
|
139
|
+
createDescriptor() {
|
|
20
140
|
return {
|
|
21
|
-
type: "
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
listValidation: undefined,
|
|
25
|
-
renderer: {
|
|
26
|
-
name: "uiAlert"
|
|
27
|
-
}
|
|
141
|
+
type: "alert",
|
|
142
|
+
label: "",
|
|
143
|
+
alertType: "info"
|
|
28
144
|
};
|
|
145
|
+
},
|
|
146
|
+
render({
|
|
147
|
+
descriptor,
|
|
148
|
+
onUpdate,
|
|
149
|
+
onDelete
|
|
150
|
+
}) {
|
|
151
|
+
return /*#__PURE__*/React.createElement(AlertLayoutCell, {
|
|
152
|
+
descriptor: descriptor,
|
|
153
|
+
onUpdate: onUpdate,
|
|
154
|
+
onDelete: onDelete
|
|
155
|
+
});
|
|
29
156
|
}
|
|
30
157
|
}
|
|
31
158
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","ReactComponent","AlertIcon","i18n","t","ns","uiAlertField","type","name","field","label","description","icon","createElement","allowLayout","hideInAdmin","allowList","canEditSettings","allowPredefinedValues","tags","undefined","createField","list","validation","listValidation","renderer"],"sources":["alert.tsx"],"sourcesContent":["import React from \"react\";\nimport type { CmsModelFieldTypePlugin } from \"@webiny/app-headless-cms-common/types/index.js\";\nimport { ReactComponent as AlertIcon } from \"@webiny/icons/warning.svg\";\nimport { i18n } from \"@webiny/app/i18n/index.js\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields\");\n\nexport const uiAlertField: CmsModelFieldTypePlugin = {\n type: \"cms-editor-field-type\",\n name: \"cms-editor-field-type-ui-alert\",\n field: {\n type: \"ui:alert\",\n label: t`Alert`,\n description: t`Show an alert field which is not stored in the database.`,\n icon: <AlertIcon />,\n allowLayout: false,\n hideInAdmin: false,\n allowList: false,\n canEditSettings: true,\n allowPredefinedValues: false,\n tags: undefined,\n createField() {\n return {\n type: \"ui:alert\",\n list: false,\n validation: undefined,\n listValidation: undefined,\n renderer: {\n name: \"uiAlert\"\n }\n };\n }\n }\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,cAAc,IAAIC,SAAS,QAAQ,2BAA2B;AACvE,SAASC,IAAI,QAAQ,2BAA2B;AAEhD,MAAMC,CAAC,GAAGD,IAAI,CAACE,EAAE,CAAC,+BAA+B,CAAC;AAElD,OAAO,MAAMC,YAAqC,GAAG;EACjDC,IAAI,EAAE,uBAAuB;EAC7BC,IAAI,EAAE,gCAAgC;EACtCC,KAAK,EAAE;IACHF,IAAI,EAAE,UAAU;IAChBG,KAAK,EAAEN,CAAC,OAAO;IACfO,WAAW,EAAEP,CAAC,0DAA0D;IACxEQ,IAAI,eAAEZ,KAAA,CAAAa,aAAA,CAACX,SAAS,MAAE,CAAC;IACnBY,WAAW,EAAE,KAAK;IAClBC,WAAW,EAAE,KAAK;IAClBC,SAAS,EAAE,KAAK;IAChBC,eAAe,EAAE,IAAI;IACrBC,qBAAqB,EAAE,KAAK;IAC5BC,IAAI,EAAEC,SAAS;IACfC,WAAWA,CAAA,EAAG;MACV,OAAO;QACHd,IAAI,EAAE,UAAU;QAChBe,IAAI,EAAE,KAAK;QACXC,UAAU,EAAEH,SAAS;QACrBI,cAAc,EAAEJ,SAAS;QACzBK,QAAQ,EAAE;UACNjB,IAAI,EAAE;QACV;MACJ,CAAC;IACL;EACJ;AACJ,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","ReactComponent","AlertIcon","EditIcon","DeleteIcon","i18n","Alert","Grid","IconButton","Tabs","Textarea","Select","Text","useDialogs","Bind","PermissionsTab","RulesTab","useModelEditor","t","ns","AlertSettings","createElement","className","Column","span","name","label","defaultValue","displayResetAction","options","value","AlertDialogContent","fieldOptions","size","separator","tabs","Tab","key","trigger","content","gridClassName","AlertLayoutCell","descriptor","onUpdate","onDelete","dialogs","openSettings","showDialog","title","description","acceptLabel","cancelLabel","formData","alertType","rules","onAccept","data","type","icon","onClick","variant","uiAlertField","field","canEditSettings","createDescriptor","render"],"sources":["alert.tsx"],"sourcesContent":["import React from \"react\";\nimport type { CmsLayoutFieldTypePlugin } from \"@webiny/app-headless-cms-common/types/index.js\";\nimport type {\n CmsAlertLayoutDescriptor,\n CmsLayoutDescriptor\n} from \"@webiny/app-headless-cms-common/types/model.js\";\nimport { ReactComponent as AlertIcon } from \"@webiny/icons/warning.svg\";\nimport { ReactComponent as EditIcon } from \"@webiny/icons/edit.svg\";\nimport { ReactComponent as DeleteIcon } from \"@webiny/icons/delete.svg\";\nimport { i18n } from \"@webiny/app/i18n/index.js\";\nimport { Alert, Grid, IconButton, Tabs, Textarea, Select, Text } from \"@webiny/admin-ui\";\nimport { useDialogs } from \"@webiny/app-admin\";\nimport { Bind } from \"@webiny/form\";\nimport { PermissionsTab } from \"~/admin/components/FieldEditor/EditFieldDialog/PermissionsTab/PermissionsTab.js\";\nimport { RulesTab } from \"~/admin/components/FieldEditor/EditFieldDialog/RulesTab/RulesTab.js\";\nimport { useModelEditor } from \"~/admin/components/ContentModelEditor/useModelEditor.js\";\nimport type { FieldOption } from \"@webiny/app-headless-cms-common/Fields/fieldOptions.js\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields\");\n\nconst AlertSettings = () => {\n return (\n <Grid className={\"mt-md\"}>\n <Grid.Column span={12}>\n <Bind name={\"label\"}>\n <Textarea label={\"Message\"} />\n </Bind>\n </Grid.Column>\n <Grid.Column span={12}>\n <Bind name={\"alertType\"} defaultValue={\"info\"}>\n <Select\n displayResetAction={false}\n label={\"Alert type\"}\n options={[\n { value: \"info\", label: \"Info\" },\n { value: \"success\", label: \"Success\" },\n { value: \"warning\", label: \"Warning\" },\n { value: \"danger\", label: \"Danger\" }\n ]}\n />\n </Bind>\n </Grid.Column>\n </Grid>\n );\n};\n\nconst AlertDialogContent = ({ fieldOptions }: { fieldOptions: FieldOption[] }) => {\n return (\n <Tabs\n size={\"md\"}\n separator\n tabs={[\n <Tabs.Tab\n key={\"alert\"}\n trigger={\"Alert\"}\n value={\"alert\"}\n content={<AlertSettings />}\n />,\n <Tabs.Tab\n key={\"permissions\"}\n trigger={\"Permissions\"}\n value={\"permissions\"}\n content={<PermissionsTab gridClassName={\"mt-md\"} />}\n />,\n <Tabs.Tab\n key={\"rules\"}\n trigger={\"Rules\"}\n value={\"rules\"}\n content={<RulesTab gridClassName={\"mt-md\"} fieldOptions={fieldOptions} />}\n />\n ]}\n />\n );\n};\n\ninterface AlertLayoutCellProps {\n descriptor: CmsAlertLayoutDescriptor;\n onUpdate: (d: CmsLayoutDescriptor) => void;\n onDelete: () => void;\n}\n\nconst AlertLayoutCell = ({ descriptor, onUpdate, onDelete }: AlertLayoutCellProps) => {\n const { fieldOptions } = useModelEditor();\n const dialogs = useDialogs();\n\n const openSettings = () => {\n dialogs.showDialog({\n title: \"Alert Settings\",\n description: \"Configure the alert and access permissions\",\n acceptLabel: \"Save\",\n cancelLabel: \"Cancel\",\n formData: {\n label: descriptor.label,\n alertType: descriptor.alertType,\n rules: descriptor.rules ?? []\n },\n content: <AlertDialogContent fieldOptions={fieldOptions} />,\n onAccept: data => {\n onUpdate({\n ...descriptor,\n label: data.label ?? \"\",\n alertType: (data.alertType as CmsAlertLayoutDescriptor[\"alertType\"]) ?? \"info\",\n rules: data.rules ?? []\n });\n }\n });\n };\n\n return (\n <div className={\"flex items-center justify-between\"}>\n <div className={\"flex-1\"}>\n {descriptor.label ? (\n <Alert type={descriptor.alertType}>{descriptor.label}</Alert>\n ) : (\n <Text size={\"sm\"} className={\"text-neutral-strong italic\"}>\n Alert (no message set)\n </Text>\n )}\n </div>\n <div className={\"flex items-center gap-xs ml-sm\"}>\n <IconButton\n icon={<EditIcon />}\n onClick={openSettings}\n variant={\"ghost\"}\n size={\"sm\"}\n />\n <IconButton\n icon={<DeleteIcon />}\n onClick={onDelete}\n variant={\"ghost\"}\n size={\"sm\"}\n />\n </div>\n </div>\n );\n};\n\nexport const uiAlertField: CmsLayoutFieldTypePlugin = {\n type: \"cms-editor-layout-field-type\",\n name: \"cms-editor-layout-field-type-alert\",\n field: {\n type: \"alert\",\n label: t`Alert`,\n description: t`Show an alert message in the form.`,\n icon: <AlertIcon />,\n canEditSettings: true,\n createDescriptor() {\n return { type: \"alert\", label: \"\", alertType: \"info\" };\n },\n render({ descriptor, onUpdate, onDelete }) {\n return (\n <AlertLayoutCell\n descriptor={descriptor as CmsAlertLayoutDescriptor}\n onUpdate={onUpdate}\n onDelete={onDelete}\n />\n );\n }\n }\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from \"./alert.js\";\nexport * from \"./separator.js\";\n"],"mappings":"AAAA;AACA","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from \"./alert.js\";\nexport * from \"./separator.js\";\nexport * from \"./tabs.js\";\n"],"mappings":"AAAA;AACA;AACA","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
export declare const uiSeparatorField:
|
|
1
|
+
import type { CmsLayoutFieldTypePlugin } from "@webiny/app-headless-cms-common/types/index.js";
|
|
2
|
+
export declare const uiSeparatorField: CmsLayoutFieldTypePlugin;
|
|
@@ -1,31 +1,145 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { ReactComponent as SeparatorIcon } from "@webiny/icons/line_style.svg";
|
|
3
|
+
import { ReactComponent as EditIcon } from "@webiny/icons/edit.svg";
|
|
4
|
+
import { ReactComponent as DeleteIcon } from "@webiny/icons/delete.svg";
|
|
3
5
|
import { i18n } from "@webiny/app/i18n/index.js";
|
|
6
|
+
import { Grid, IconButton, Input, Separator, Tabs, Text } from "@webiny/admin-ui";
|
|
7
|
+
import { useDialogs } from "@webiny/app-admin";
|
|
8
|
+
import { Bind } from "@webiny/form";
|
|
9
|
+
import { PermissionsTab } from "../../../components/FieldEditor/EditFieldDialog/PermissionsTab/PermissionsTab.js";
|
|
10
|
+
import { RulesTab } from "../../../components/FieldEditor/EditFieldDialog/RulesTab/RulesTab.js";
|
|
11
|
+
import { useModelEditor } from "../../../components/ContentModelEditor/useModelEditor.js";
|
|
4
12
|
const t = i18n.ns("app-headless-cms/admin/fields");
|
|
13
|
+
const SeparatorSettings = () => {
|
|
14
|
+
return /*#__PURE__*/React.createElement(Grid, {
|
|
15
|
+
className: "mt-md"
|
|
16
|
+
}, /*#__PURE__*/React.createElement(Grid.Column, {
|
|
17
|
+
span: 12
|
|
18
|
+
}, /*#__PURE__*/React.createElement(Bind, {
|
|
19
|
+
name: "label"
|
|
20
|
+
}, /*#__PURE__*/React.createElement(Input, {
|
|
21
|
+
label: "Label"
|
|
22
|
+
}))), /*#__PURE__*/React.createElement(Grid.Column, {
|
|
23
|
+
span: 12
|
|
24
|
+
}, /*#__PURE__*/React.createElement(Bind, {
|
|
25
|
+
name: "description"
|
|
26
|
+
}, /*#__PURE__*/React.createElement(Input, {
|
|
27
|
+
label: "Description"
|
|
28
|
+
}))));
|
|
29
|
+
};
|
|
30
|
+
const SeparatorDialogContent = ({
|
|
31
|
+
fieldOptions
|
|
32
|
+
}) => {
|
|
33
|
+
return /*#__PURE__*/React.createElement(Tabs, {
|
|
34
|
+
size: "md",
|
|
35
|
+
separator: true,
|
|
36
|
+
tabs: [/*#__PURE__*/React.createElement(Tabs.Tab, {
|
|
37
|
+
key: "separator",
|
|
38
|
+
trigger: "Separator",
|
|
39
|
+
value: "separator",
|
|
40
|
+
content: /*#__PURE__*/React.createElement(SeparatorSettings, null)
|
|
41
|
+
}), /*#__PURE__*/React.createElement(Tabs.Tab, {
|
|
42
|
+
key: "permissions",
|
|
43
|
+
trigger: "Permissions",
|
|
44
|
+
value: "permissions",
|
|
45
|
+
content: /*#__PURE__*/React.createElement(PermissionsTab, {
|
|
46
|
+
gridClassName: "mt-md"
|
|
47
|
+
})
|
|
48
|
+
}), /*#__PURE__*/React.createElement(Tabs.Tab, {
|
|
49
|
+
key: "rules",
|
|
50
|
+
trigger: "Rules",
|
|
51
|
+
value: "rules",
|
|
52
|
+
content: /*#__PURE__*/React.createElement(RulesTab, {
|
|
53
|
+
gridClassName: "mt-md",
|
|
54
|
+
fieldOptions: fieldOptions
|
|
55
|
+
})
|
|
56
|
+
})]
|
|
57
|
+
});
|
|
58
|
+
};
|
|
59
|
+
const SeparatorLayoutCell = ({
|
|
60
|
+
descriptor,
|
|
61
|
+
onUpdate,
|
|
62
|
+
onDelete
|
|
63
|
+
}) => {
|
|
64
|
+
const {
|
|
65
|
+
fieldOptions
|
|
66
|
+
} = useModelEditor();
|
|
67
|
+
const dialogs = useDialogs();
|
|
68
|
+
const openSettings = () => {
|
|
69
|
+
dialogs.showDialog({
|
|
70
|
+
title: "Separator Settings",
|
|
71
|
+
description: "Configure the separator and access permissions",
|
|
72
|
+
acceptLabel: "Save",
|
|
73
|
+
cancelLabel: "Cancel",
|
|
74
|
+
formData: {
|
|
75
|
+
label: descriptor.label,
|
|
76
|
+
description: descriptor.description ?? "",
|
|
77
|
+
rules: descriptor.rules ?? []
|
|
78
|
+
},
|
|
79
|
+
content: /*#__PURE__*/React.createElement(SeparatorDialogContent, {
|
|
80
|
+
fieldOptions: fieldOptions
|
|
81
|
+
}),
|
|
82
|
+
onAccept: data => {
|
|
83
|
+
onUpdate({
|
|
84
|
+
...descriptor,
|
|
85
|
+
label: data.label ?? "",
|
|
86
|
+
description: data.description ?? "",
|
|
87
|
+
rules: data.rules ?? []
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
});
|
|
91
|
+
};
|
|
92
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
93
|
+
className: "flex items-center gap-sm"
|
|
94
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
95
|
+
className: "flex-1"
|
|
96
|
+
}, /*#__PURE__*/React.createElement(Separator, {
|
|
97
|
+
variant: "accent",
|
|
98
|
+
labelPosition: "start"
|
|
99
|
+
}, descriptor.label), descriptor.description && /*#__PURE__*/React.createElement(Text, {
|
|
100
|
+
as: "div",
|
|
101
|
+
size: "sm",
|
|
102
|
+
className: "text-neutral-strong mt-sm"
|
|
103
|
+
}, descriptor.description)), /*#__PURE__*/React.createElement("div", {
|
|
104
|
+
className: "flex items-center gap-xs"
|
|
105
|
+
}, /*#__PURE__*/React.createElement(IconButton, {
|
|
106
|
+
icon: /*#__PURE__*/React.createElement(EditIcon, null),
|
|
107
|
+
onClick: openSettings,
|
|
108
|
+
variant: "ghost",
|
|
109
|
+
size: "sm"
|
|
110
|
+
}), /*#__PURE__*/React.createElement(IconButton, {
|
|
111
|
+
icon: /*#__PURE__*/React.createElement(DeleteIcon, null),
|
|
112
|
+
onClick: onDelete,
|
|
113
|
+
variant: "ghost",
|
|
114
|
+
size: "sm"
|
|
115
|
+
})));
|
|
116
|
+
};
|
|
5
117
|
export const uiSeparatorField = {
|
|
6
|
-
type: "cms-editor-field-type",
|
|
7
|
-
name: "cms-editor-field-type-
|
|
118
|
+
type: "cms-editor-layout-field-type",
|
|
119
|
+
name: "cms-editor-layout-field-type-separator",
|
|
8
120
|
field: {
|
|
9
|
-
type: "
|
|
121
|
+
type: "separator",
|
|
10
122
|
label: t`Separator`,
|
|
11
|
-
description: t`Show a separator
|
|
123
|
+
description: t`Show a visual separator between fields.`,
|
|
12
124
|
icon: /*#__PURE__*/React.createElement(SeparatorIcon, null),
|
|
13
|
-
allowLayout: false,
|
|
14
|
-
hideInAdmin: false,
|
|
15
|
-
allowList: false,
|
|
16
125
|
canEditSettings: true,
|
|
17
|
-
|
|
18
|
-
tags: undefined,
|
|
19
|
-
createField() {
|
|
126
|
+
createDescriptor() {
|
|
20
127
|
return {
|
|
21
|
-
type: "
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
listValidation: undefined,
|
|
25
|
-
renderer: {
|
|
26
|
-
name: "uiSeparator"
|
|
27
|
-
}
|
|
128
|
+
type: "separator",
|
|
129
|
+
label: "Section",
|
|
130
|
+
description: "Your description goes here"
|
|
28
131
|
};
|
|
132
|
+
},
|
|
133
|
+
render({
|
|
134
|
+
descriptor,
|
|
135
|
+
onUpdate,
|
|
136
|
+
onDelete
|
|
137
|
+
}) {
|
|
138
|
+
return /*#__PURE__*/React.createElement(SeparatorLayoutCell, {
|
|
139
|
+
descriptor: descriptor,
|
|
140
|
+
onUpdate: onUpdate,
|
|
141
|
+
onDelete: onDelete
|
|
142
|
+
});
|
|
29
143
|
}
|
|
30
144
|
}
|
|
31
145
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","ReactComponent","SeparatorIcon","i18n","t","ns","uiSeparatorField","type","name","field","label","description","icon","createElement","allowLayout","hideInAdmin","allowList","canEditSettings","allowPredefinedValues","tags","undefined","createField","list","validation","listValidation","renderer"],"sources":["separator.tsx"],"sourcesContent":["import React from \"react\";\nimport type { CmsModelFieldTypePlugin } from \"@webiny/app-headless-cms-common/types/index.js\";\nimport { ReactComponent as SeparatorIcon } from \"@webiny/icons/line_style.svg\";\nimport { i18n } from \"@webiny/app/i18n/index.js\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields\");\n\nexport const uiSeparatorField: CmsModelFieldTypePlugin = {\n type: \"cms-editor-field-type\",\n name: \"cms-editor-field-type-ui-separator\",\n field: {\n type: \"ui:separator\",\n label: t`Separator`,\n description: t`Show a separator field which is not stored in the database.`,\n icon: <SeparatorIcon />,\n allowLayout: false,\n hideInAdmin: false,\n allowList: false,\n canEditSettings: true,\n allowPredefinedValues: false,\n tags: undefined,\n createField() {\n return {\n type: \"ui:separator\",\n list: false,\n validation: undefined,\n listValidation: undefined,\n renderer: {\n name: \"uiSeparator\"\n }\n };\n }\n }\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,cAAc,IAAIC,aAAa,QAAQ,8BAA8B;AAC9E,SAASC,IAAI,QAAQ,2BAA2B;AAEhD,MAAMC,CAAC,GAAGD,IAAI,CAACE,EAAE,CAAC,+BAA+B,CAAC;AAElD,OAAO,MAAMC,gBAAyC,GAAG;EACrDC,IAAI,EAAE,uBAAuB;EAC7BC,IAAI,EAAE,oCAAoC;EAC1CC,KAAK,EAAE;IACHF,IAAI,EAAE,cAAc;IACpBG,KAAK,EAAEN,CAAC,WAAW;IACnBO,WAAW,EAAEP,CAAC,6DAA6D;IAC3EQ,IAAI,eAAEZ,KAAA,CAAAa,aAAA,CAACX,aAAa,MAAE,CAAC;IACvBY,WAAW,EAAE,KAAK;IAClBC,WAAW,EAAE,KAAK;IAClBC,SAAS,EAAE,KAAK;IAChBC,eAAe,EAAE,IAAI;IACrBC,qBAAqB,EAAE,KAAK;IAC5BC,IAAI,EAAEC,SAAS;IACfC,WAAWA,CAAA,EAAG;MACV,OAAO;QACHd,IAAI,EAAE,cAAc;QACpBe,IAAI,EAAE,KAAK;QACXC,UAAU,EAAEH,SAAS;QACrBI,cAAc,EAAEJ,SAAS;QACzBK,QAAQ,EAAE;UACNjB,IAAI,EAAE;QACV;MACJ,CAAC;IACL;EACJ;AACJ,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","ReactComponent","SeparatorIcon","EditIcon","DeleteIcon","i18n","Grid","IconButton","Input","Separator","Tabs","Text","useDialogs","Bind","PermissionsTab","RulesTab","useModelEditor","t","ns","SeparatorSettings","createElement","className","Column","span","name","label","SeparatorDialogContent","fieldOptions","size","separator","tabs","Tab","key","trigger","value","content","gridClassName","SeparatorLayoutCell","descriptor","onUpdate","onDelete","dialogs","openSettings","showDialog","title","description","acceptLabel","cancelLabel","formData","rules","onAccept","data","variant","labelPosition","as","icon","onClick","uiSeparatorField","type","field","canEditSettings","createDescriptor","render"],"sources":["separator.tsx"],"sourcesContent":["import React from \"react\";\nimport type { CmsLayoutFieldTypePlugin } from \"@webiny/app-headless-cms-common/types/index.js\";\nimport type {\n CmsSeparatorLayoutDescriptor,\n CmsLayoutDescriptor\n} from \"@webiny/app-headless-cms-common/types/model.js\";\nimport { ReactComponent as SeparatorIcon } from \"@webiny/icons/line_style.svg\";\nimport { ReactComponent as EditIcon } from \"@webiny/icons/edit.svg\";\nimport { ReactComponent as DeleteIcon } from \"@webiny/icons/delete.svg\";\nimport { i18n } from \"@webiny/app/i18n/index.js\";\nimport { Grid, IconButton, Input, Separator, Tabs, Text } from \"@webiny/admin-ui\";\nimport { useDialogs } from \"@webiny/app-admin\";\nimport { Bind } from \"@webiny/form\";\nimport { PermissionsTab } from \"~/admin/components/FieldEditor/EditFieldDialog/PermissionsTab/PermissionsTab.js\";\nimport { RulesTab } from \"~/admin/components/FieldEditor/EditFieldDialog/RulesTab/RulesTab.js\";\nimport { useModelEditor } from \"~/admin/components/ContentModelEditor/useModelEditor.js\";\nimport type { FieldOption } from \"@webiny/app-headless-cms-common/Fields/fieldOptions.js\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields\");\n\nconst SeparatorSettings = () => {\n return (\n <Grid className={\"mt-md\"}>\n <Grid.Column span={12}>\n <Bind name={\"label\"}>\n <Input label={\"Label\"} />\n </Bind>\n </Grid.Column>\n <Grid.Column span={12}>\n <Bind name={\"description\"}>\n <Input label={\"Description\"} />\n </Bind>\n </Grid.Column>\n </Grid>\n );\n};\n\nconst SeparatorDialogContent = ({ fieldOptions }: { fieldOptions: FieldOption[] }) => {\n return (\n <Tabs\n size={\"md\"}\n separator\n tabs={[\n <Tabs.Tab\n key={\"separator\"}\n trigger={\"Separator\"}\n value={\"separator\"}\n content={<SeparatorSettings />}\n />,\n <Tabs.Tab\n key={\"permissions\"}\n trigger={\"Permissions\"}\n value={\"permissions\"}\n content={<PermissionsTab gridClassName={\"mt-md\"} />}\n />,\n <Tabs.Tab\n key={\"rules\"}\n trigger={\"Rules\"}\n value={\"rules\"}\n content={<RulesTab gridClassName={\"mt-md\"} fieldOptions={fieldOptions} />}\n />\n ]}\n />\n );\n};\n\ninterface SeparatorLayoutCellProps {\n descriptor: CmsSeparatorLayoutDescriptor;\n onUpdate: (d: CmsLayoutDescriptor) => void;\n onDelete: () => void;\n}\n\nconst SeparatorLayoutCell = ({ descriptor, onUpdate, onDelete }: SeparatorLayoutCellProps) => {\n const { fieldOptions } = useModelEditor();\n const dialogs = useDialogs();\n\n const openSettings = () => {\n dialogs.showDialog({\n title: \"Separator Settings\",\n description: \"Configure the separator and access permissions\",\n acceptLabel: \"Save\",\n cancelLabel: \"Cancel\",\n formData: {\n label: descriptor.label,\n description: descriptor.description ?? \"\",\n rules: descriptor.rules ?? []\n },\n content: <SeparatorDialogContent fieldOptions={fieldOptions} />,\n onAccept: data => {\n onUpdate({\n ...descriptor,\n label: data.label ?? \"\",\n description: data.description ?? \"\",\n rules: data.rules ?? []\n });\n }\n });\n };\n\n return (\n <div className={\"flex items-center gap-sm\"}>\n <div className={\"flex-1\"}>\n <Separator variant={\"accent\"} labelPosition={\"start\"}>\n {descriptor.label}\n </Separator>\n {descriptor.description && (\n <Text as={\"div\"} size={\"sm\"} className={\"text-neutral-strong mt-sm\"}>\n {descriptor.description}\n </Text>\n )}\n </div>\n <div className={\"flex items-center gap-xs\"}>\n <IconButton\n icon={<EditIcon />}\n onClick={openSettings}\n variant={\"ghost\"}\n size={\"sm\"}\n />\n <IconButton\n icon={<DeleteIcon />}\n onClick={onDelete}\n variant={\"ghost\"}\n size={\"sm\"}\n />\n </div>\n </div>\n );\n};\n\nexport const uiSeparatorField: CmsLayoutFieldTypePlugin = {\n type: \"cms-editor-layout-field-type\",\n name: \"cms-editor-layout-field-type-separator\",\n field: {\n type: \"separator\",\n label: t`Separator`,\n description: t`Show a visual separator between fields.`,\n icon: <SeparatorIcon />,\n canEditSettings: true,\n createDescriptor() {\n return {\n type: \"separator\",\n label: \"Section\",\n description: \"Your description goes here\"\n };\n },\n render({ descriptor, onUpdate, onDelete }) {\n return (\n <SeparatorLayoutCell\n descriptor={descriptor as CmsSeparatorLayoutDescriptor}\n onUpdate={onUpdate}\n onDelete={onDelete}\n />\n );\n }\n }\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { ReactComponent as TabsIcon } from "@webiny/icons/tab.svg";
|
|
3
|
+
import { i18n } from "@webiny/app/i18n/index.js";
|
|
4
|
+
import { generateAlphaNumericLowerCaseId } from "@webiny/utils";
|
|
5
|
+
import { TabsLayoutEditor } from "./TabsLayoutEditor.js";
|
|
6
|
+
const t = i18n.ns("app-headless-cms/admin/fields");
|
|
7
|
+
export const uiTabsField = {
|
|
8
|
+
type: "cms-editor-layout-field-type",
|
|
9
|
+
name: "cms-editor-layout-field-type-tabs",
|
|
10
|
+
field: {
|
|
11
|
+
type: "tabs",
|
|
12
|
+
label: t`Tabs`,
|
|
13
|
+
description: t`Group fields into tabs.`,
|
|
14
|
+
icon: /*#__PURE__*/React.createElement(TabsIcon, null),
|
|
15
|
+
canEditSettings: true,
|
|
16
|
+
createDescriptor() {
|
|
17
|
+
return {
|
|
18
|
+
type: "tabs",
|
|
19
|
+
label: "Tabs",
|
|
20
|
+
description: null,
|
|
21
|
+
help: null,
|
|
22
|
+
tabs: [{
|
|
23
|
+
id: generateAlphaNumericLowerCaseId(8),
|
|
24
|
+
label: "Tab 1",
|
|
25
|
+
layout: []
|
|
26
|
+
}]
|
|
27
|
+
};
|
|
28
|
+
},
|
|
29
|
+
collectFields({
|
|
30
|
+
descriptor,
|
|
31
|
+
getField
|
|
32
|
+
}) {
|
|
33
|
+
const tabs = descriptor.tabs;
|
|
34
|
+
if (!tabs) {
|
|
35
|
+
return [];
|
|
36
|
+
}
|
|
37
|
+
const result = [];
|
|
38
|
+
for (const tab of tabs) {
|
|
39
|
+
for (const row of tab.layout) {
|
|
40
|
+
for (const cell of row) {
|
|
41
|
+
if (typeof cell === "string") {
|
|
42
|
+
const f = getField(cell);
|
|
43
|
+
if (f) {
|
|
44
|
+
result.push(f);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
return result;
|
|
51
|
+
},
|
|
52
|
+
getFieldLabelPrefixes({
|
|
53
|
+
descriptor
|
|
54
|
+
}) {
|
|
55
|
+
const tabsDescriptor = descriptor;
|
|
56
|
+
const tabs = tabsDescriptor.tabs;
|
|
57
|
+
if (!tabs) {
|
|
58
|
+
return {};
|
|
59
|
+
}
|
|
60
|
+
const descriptorLabel = tabsDescriptor.label || "Tabs";
|
|
61
|
+
const prefixes = {};
|
|
62
|
+
for (const tab of tabs) {
|
|
63
|
+
const tabLabel = tab.label || "Tab";
|
|
64
|
+
const prefix = `${descriptorLabel} › ${tabLabel}`;
|
|
65
|
+
for (const row of tab.layout) {
|
|
66
|
+
for (const cell of row) {
|
|
67
|
+
if (typeof cell === "string") {
|
|
68
|
+
prefixes[cell] = prefix;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
return prefixes;
|
|
74
|
+
},
|
|
75
|
+
render({
|
|
76
|
+
descriptor,
|
|
77
|
+
onUpdate,
|
|
78
|
+
onDelete
|
|
79
|
+
}) {
|
|
80
|
+
return /*#__PURE__*/React.createElement(TabsLayoutEditor, {
|
|
81
|
+
descriptor: descriptor,
|
|
82
|
+
onUpdate: onUpdate,
|
|
83
|
+
onDelete: onDelete
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
|
|
89
|
+
//# sourceMappingURL=tabs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","ReactComponent","TabsIcon","i18n","generateAlphaNumericLowerCaseId","TabsLayoutEditor","t","ns","uiTabsField","type","name","field","label","description","icon","createElement","canEditSettings","createDescriptor","help","tabs","id","layout","collectFields","descriptor","getField","result","tab","row","cell","f","push","getFieldLabelPrefixes","tabsDescriptor","descriptorLabel","prefixes","tabLabel","prefix","render","onUpdate","onDelete"],"sources":["tabs.tsx"],"sourcesContent":["import React from \"react\";\nimport type { CmsLayoutFieldTypePlugin } from \"@webiny/app-headless-cms-common/types/index.js\";\nimport type { CmsTabLayoutDescriptor } from \"@webiny/app-headless-cms-common/types/model.js\";\nimport { ReactComponent as TabsIcon } from \"@webiny/icons/tab.svg\";\nimport { i18n } from \"@webiny/app/i18n/index.js\";\nimport { generateAlphaNumericLowerCaseId } from \"@webiny/utils\";\nimport { TabsLayoutEditor } from \"./TabsLayoutEditor.js\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields\");\n\nexport const uiTabsField: CmsLayoutFieldTypePlugin = {\n type: \"cms-editor-layout-field-type\",\n name: \"cms-editor-layout-field-type-tabs\",\n field: {\n type: \"tabs\",\n label: t`Tabs`,\n description: t`Group fields into tabs.`,\n icon: <TabsIcon />,\n canEditSettings: true,\n createDescriptor() {\n return {\n type: \"tabs\",\n label: \"Tabs\",\n description: null,\n help: null,\n tabs: [{ id: generateAlphaNumericLowerCaseId(8), label: \"Tab 1\", layout: [] }]\n };\n },\n collectFields({ descriptor, getField }) {\n const tabs = (descriptor as CmsTabLayoutDescriptor).tabs;\n if (!tabs) {\n return [];\n }\n const result = [];\n for (const tab of tabs) {\n for (const row of tab.layout) {\n for (const cell of row) {\n if (typeof cell === \"string\") {\n const f = getField(cell);\n if (f) {\n result.push(f);\n }\n }\n }\n }\n }\n return result;\n },\n getFieldLabelPrefixes({ descriptor }) {\n const tabsDescriptor = descriptor as CmsTabLayoutDescriptor;\n const tabs = tabsDescriptor.tabs;\n if (!tabs) {\n return {};\n }\n const descriptorLabel = tabsDescriptor.label || \"Tabs\";\n const prefixes: Record<string, string> = {};\n for (const tab of tabs) {\n const tabLabel = tab.label || \"Tab\";\n const prefix = `${descriptorLabel} › ${tabLabel}`;\n for (const row of tab.layout) {\n for (const cell of row) {\n if (typeof cell === \"string\") {\n prefixes[cell] = prefix;\n }\n }\n }\n }\n return prefixes;\n },\n render({ descriptor, onUpdate, onDelete }) {\n return (\n <TabsLayoutEditor\n descriptor={descriptor as CmsTabLayoutDescriptor}\n onUpdate={onUpdate}\n onDelete={onDelete}\n />\n );\n }\n }\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAGzB,SAASC,cAAc,IAAIC,QAAQ,QAAQ,uBAAuB;AAClE,SAASC,IAAI,QAAQ,2BAA2B;AAChD,SAASC,+BAA+B,QAAQ,eAAe;AAC/D,SAASC,gBAAgB;AAEzB,MAAMC,CAAC,GAAGH,IAAI,CAACI,EAAE,CAAC,+BAA+B,CAAC;AAElD,OAAO,MAAMC,WAAqC,GAAG;EACjDC,IAAI,EAAE,8BAA8B;EACpCC,IAAI,EAAE,mCAAmC;EACzCC,KAAK,EAAE;IACHF,IAAI,EAAE,MAAM;IACZG,KAAK,EAAEN,CAAC,MAAM;IACdO,WAAW,EAAEP,CAAC,yBAAyB;IACvCQ,IAAI,eAAEd,KAAA,CAAAe,aAAA,CAACb,QAAQ,MAAE,CAAC;IAClBc,eAAe,EAAE,IAAI;IACrBC,gBAAgBA,CAAA,EAAG;MACf,OAAO;QACHR,IAAI,EAAE,MAAM;QACZG,KAAK,EAAE,MAAM;QACbC,WAAW,EAAE,IAAI;QACjBK,IAAI,EAAE,IAAI;QACVC,IAAI,EAAE,CAAC;UAAEC,EAAE,EAAEhB,+BAA+B,CAAC,CAAC,CAAC;UAAEQ,KAAK,EAAE,OAAO;UAAES,MAAM,EAAE;QAAG,CAAC;MACjF,CAAC;IACL,CAAC;IACDC,aAAaA,CAAC;MAAEC,UAAU;MAAEC;IAAS,CAAC,EAAE;MACpC,MAAML,IAAI,GAAII,UAAU,CAA4BJ,IAAI;MACxD,IAAI,CAACA,IAAI,EAAE;QACP,OAAO,EAAE;MACb;MACA,MAAMM,MAAM,GAAG,EAAE;MACjB,KAAK,MAAMC,GAAG,IAAIP,IAAI,EAAE;QACpB,KAAK,MAAMQ,GAAG,IAAID,GAAG,CAACL,MAAM,EAAE;UAC1B,KAAK,MAAMO,IAAI,IAAID,GAAG,EAAE;YACpB,IAAI,OAAOC,IAAI,KAAK,QAAQ,EAAE;cAC1B,MAAMC,CAAC,GAAGL,QAAQ,CAACI,IAAI,CAAC;cACxB,IAAIC,CAAC,EAAE;gBACHJ,MAAM,CAACK,IAAI,CAACD,CAAC,CAAC;cAClB;YACJ;UACJ;QACJ;MACJ;MACA,OAAOJ,MAAM;IACjB,CAAC;IACDM,qBAAqBA,CAAC;MAAER;IAAW,CAAC,EAAE;MAClC,MAAMS,cAAc,GAAGT,UAAoC;MAC3D,MAAMJ,IAAI,GAAGa,cAAc,CAACb,IAAI;MAChC,IAAI,CAACA,IAAI,EAAE;QACP,OAAO,CAAC,CAAC;MACb;MACA,MAAMc,eAAe,GAAGD,cAAc,CAACpB,KAAK,IAAI,MAAM;MACtD,MAAMsB,QAAgC,GAAG,CAAC,CAAC;MAC3C,KAAK,MAAMR,GAAG,IAAIP,IAAI,EAAE;QACpB,MAAMgB,QAAQ,GAAGT,GAAG,CAACd,KAAK,IAAI,KAAK;QACnC,MAAMwB,MAAM,GAAG,GAAGH,eAAe,MAAME,QAAQ,EAAE;QACjD,KAAK,MAAMR,GAAG,IAAID,GAAG,CAACL,MAAM,EAAE;UAC1B,KAAK,MAAMO,IAAI,IAAID,GAAG,EAAE;YACpB,IAAI,OAAOC,IAAI,KAAK,QAAQ,EAAE;cAC1BM,QAAQ,CAACN,IAAI,CAAC,GAAGQ,MAAM;YAC3B;UACJ;QACJ;MACJ;MACA,OAAOF,QAAQ;IACnB,CAAC;IACDG,MAAMA,CAAC;MAAEd,UAAU;MAAEe,QAAQ;MAAEC;IAAS,CAAC,EAAE;MACvC,oBACIvC,KAAA,CAAAe,aAAA,CAACV,gBAAgB;QACbkB,UAAU,EAAEA,UAAqC;QACjDe,QAAQ,EAAEA,QAAS;QACnBC,QAAQ,EAAEA;MAAS,CACtB,CAAC;IAEV;EACJ;AACJ,CAAC","ignoreList":[]}
|
package/admin/plugins/index.d.ts
CHANGED
|
@@ -18,6 +18,7 @@ declare const _default: () => (import("@webiny/app-headless-cms-common/types/ind
|
|
|
18
18
|
settings?: Record<string, any>;
|
|
19
19
|
} | import("@webiny/app-headless-cms-common/types/index.js").CmsModelFieldRendererPlugin["renderer"]["render"];
|
|
20
20
|
tags?: string[];
|
|
21
|
+
rules?: import("@webiny/app-headless-cms-common/types/model.js").FieldRule[];
|
|
21
22
|
}>[] | import("@webiny/app-headless-cms-common/types/index.js").CmsEditorFormSettingsPlugin<import("@webiny/app/types.js").GenericRecord> | import("@webiny/app/index.js").ApolloCacheObjectIdPlugin<import("@webiny/app/index.js").ApolloCacheObject> | {
|
|
22
23
|
name: string;
|
|
23
24
|
type: string;
|
|
@@ -5,7 +5,7 @@ import { FilterByStatus } from "../../components/ContentEntries/Filters/index.js
|
|
|
5
5
|
import { DeleteEntry as DeleteEntryMenuItem, SaveAndPublishButton, SaveContentButton } from "../../components/ContentEntryForm/Header/index.js";
|
|
6
6
|
import { DeleteFolder, EditFolder, SetFolderPermissions } from "@webiny/app-aco";
|
|
7
7
|
import { ChangeEntryStatus, DeleteEntry, EditEntry, MoveEntry } from "../../components/ContentEntries/Table/Actions/index.js";
|
|
8
|
-
import { CellActions, CellAuthor, CellCreated, CellModified, CellName, CellStatus } from "../../components/ContentEntries/Table/Cells/index.js";
|
|
8
|
+
import { CellActions, CellAuthor, CellCreated, CellModified, CellName, CellStatus, CellLive } from "../../components/ContentEntries/Table/Cells/index.js";
|
|
9
9
|
import { Ref } from "../../components/ContentEntries/Filters/RefFieldRenderer/index.js";
|
|
10
10
|
import { ShowConfirmationOnDelete } from "../../components/Decorators/ShowConfirmationOnDelete.js";
|
|
11
11
|
import { ShowConfirmationOnPublish } from "../../components/Decorators/ShowConfirmationOnPublish.js";
|
|
@@ -89,6 +89,11 @@ export const ContentEntriesModule = () => {
|
|
|
89
89
|
header: "Status",
|
|
90
90
|
cell: /*#__PURE__*/React.createElement(CellStatus, null),
|
|
91
91
|
className: "cms-aco-list-status"
|
|
92
|
+
}), /*#__PURE__*/React.createElement(Browser.Table.Column, {
|
|
93
|
+
name: "live",
|
|
94
|
+
header: "Live",
|
|
95
|
+
cell: /*#__PURE__*/React.createElement(CellLive, null),
|
|
96
|
+
className: "cms-aco-list-live"
|
|
92
97
|
})), /*#__PURE__*/React.createElement(Browser.Table.Column, {
|
|
93
98
|
name: "actions",
|
|
94
99
|
header: "",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","ContentEntryEditorConfig","InternalContentEntryListConfig","ActionDelete","ActionMove","ActionPublish","ActionUnpublish","FilterByStatus","DeleteEntry","DeleteEntryMenuItem","SaveAndPublishButton","SaveContentButton","DeleteFolder","EditFolder","SetFolderPermissions","ChangeEntryStatus","EditEntry","MoveEntry","CellActions","CellAuthor","CellCreated","CellModified","CellName","CellStatus","Ref","ShowConfirmationOnDelete","ShowConfirmationOnPublish","ShowConfirmationOnUnpublish","ShowConfirmationOnDeleteRevision","FullScreenContentEntry","ShowRevisionList","ScheduleEntryMenuItem","AdvancedSearchConfigs","IsModelPublishable","Browser","Actions","ContentEntriesModule","createElement","Fragment","Filter","name","element","BulkAction","Folder","Action","Entry","Table","Column","header","cell","sortable","hideable","size","className","resizable","AdvancedSearch","FieldRenderer","type","FieldType","REF","ButtonAction","MenuItemAction"],"sources":["ContentEntriesModule.tsx"],"sourcesContent":["import React from \"react\";\nimport {\n ContentEntryEditorConfig,\n InternalContentEntryListConfig\n} from \"~/admin/config/contentEntries/index.js\";\n\nimport {\n ActionDelete,\n ActionMove,\n ActionPublish,\n ActionUnpublish\n} from \"~/admin/components/ContentEntries/BulkActions/index.js\";\nimport { FilterByStatus } from \"~/admin/components/ContentEntries/Filters/index.js\";\nimport {\n DeleteEntry as DeleteEntryMenuItem,\n SaveAndPublishButton,\n SaveContentButton\n} from \"~/admin/components/ContentEntryForm/Header/index.js\";\nimport { DeleteFolder, EditFolder, SetFolderPermissions } from \"@webiny/app-aco\";\nimport {\n ChangeEntryStatus,\n DeleteEntry,\n EditEntry,\n MoveEntry\n} from \"~/admin/components/ContentEntries/Table/Actions/index.js\";\nimport {\n CellActions,\n CellAuthor,\n CellCreated,\n CellModified,\n CellName,\n CellStatus\n} from \"~/admin/components/ContentEntries/Table/Cells/index.js\";\nimport { Ref } from \"~/admin/components/ContentEntries/Filters/RefFieldRenderer/index.js\";\nimport { ShowConfirmationOnDelete } from \"~/admin/components/Decorators/ShowConfirmationOnDelete.js\";\nimport { ShowConfirmationOnPublish } from \"~/admin/components/Decorators/ShowConfirmationOnPublish.js\";\nimport { ShowConfirmationOnUnpublish } from \"~/admin/components/Decorators/ShowConfirmationOnUnpublish.js\";\nimport { ShowConfirmationOnDeleteRevision } from \"~/admin/components/Decorators/ShowConfirmationOnDeleteRevision.js\";\nimport { FullScreenContentEntry } from \"~/admin/views/contentEntries/ContentEntry/FullScreenContentEntry/index.js\";\nimport { ShowRevisionList } from \"~/admin/components/ContentEntryForm/Header/ShowRevisionsList/index.js\";\nimport { ScheduleEntryMenuItem } from \"~/admin/components/ContentEntries/Scheduler/actions/ScheduleEntryAction.js\";\nimport { AdvancedSearchConfigs } from \"@webiny/app-aco/components/AdvancedSearch/AdvancedSearchConfigs\";\nimport { IsModelPublishable } from \"~/admin/components/IsModelPublishable.js\";\n\nconst { Browser } = InternalContentEntryListConfig;\nconst { Actions } = ContentEntryEditorConfig;\n\nexport const ContentEntriesModule = () => {\n return (\n <>\n <InternalContentEntryListConfig>\n <AdvancedSearchConfigs />\n <IsModelPublishable>\n <Browser.Filter name={\"status\"} element={<FilterByStatus />} />\n <Browser.BulkAction name={\"publish\"} element={<ActionPublish />} />\n <Browser.BulkAction name={\"unpublish\"} element={<ActionUnpublish />} />\n </IsModelPublishable>\n <Browser.BulkAction name={\"move\"} element={<ActionMove />} />\n <Browser.BulkAction name={\"delete\"} element={<ActionDelete />} />\n <Browser.Folder.Action name={\"edit\"} element={<EditFolder />} />\n <Browser.Folder.Action name={\"permissions\"} element={<SetFolderPermissions />} />\n <Browser.Folder.Action name={\"delete\"} element={<DeleteFolder />} />\n <Browser.Entry.Action name={\"edit\"} element={<EditEntry />} />\n <IsModelPublishable>\n <Browser.Entry.Action name={\"status\"} element={<ChangeEntryStatus />} />\n </IsModelPublishable>\n <Browser.Entry.Action name={\"move\"} element={<MoveEntry />} />\n <Browser.Entry.Action name={\"delete\"} element={<DeleteEntry />} />\n <Browser.Table.Column\n name={\"name\"}\n header={\"Name\"}\n cell={<CellName />}\n sortable={true}\n hideable={false}\n size={200}\n className={\"cms-aco-list-title\"}\n />\n <Browser.Table.Column\n name={\"createdBy\"}\n header={\"Author\"}\n cell={<CellAuthor />}\n className={\"cms-aco-list-createdBy\"}\n />\n <Browser.Table.Column\n name={\"createdOn\"}\n header={\"Created\"}\n cell={<CellCreated />}\n sortable={true}\n className={\"cms-aco-list-createdOn\"}\n />\n <Browser.Table.Column\n name={\"savedOn\"}\n header={\"Modified\"}\n cell={<CellModified />}\n sortable={true}\n className={\"cms-aco-list-savedOn\"}\n />\n <IsModelPublishable>\n <Browser.Table.Column\n name={\"status\"}\n header={\"Status\"}\n cell={<CellStatus />}\n className={\"cms-aco-list-status\"}\n />\n </IsModelPublishable>\n <Browser.Table.Column\n name={\"actions\"}\n header={\"\"}\n cell={<CellActions />}\n size={56}\n resizable={false}\n hideable={false}\n className={\"cms-aco-list-actions text-right\"}\n />\n <Browser.AdvancedSearch.FieldRenderer\n name={\"ref\"}\n element={<Ref />}\n type={Browser.AdvancedSearch.FieldRenderer.FieldType.REF}\n />\n </InternalContentEntryListConfig>\n <ContentEntryEditorConfig>\n <ShowConfirmationOnPublish />\n <ShowConfirmationOnUnpublish />\n <ShowConfirmationOnDelete />\n <ShowConfirmationOnDeleteRevision />\n <Actions.ButtonAction name={\"save\"} element={<SaveContentButton />} />\n <IsModelPublishable>\n <Actions.ButtonAction name={\"publish\"} element={<SaveAndPublishButton />} />\n </IsModelPublishable>\n <Actions.MenuItemAction name={\"delete\"} element={<DeleteEntryMenuItem />} />\n <IsModelPublishable>\n <Actions.MenuItemAction name={\"schedule\"} element={<ScheduleEntryMenuItem />} />\n <Actions.MenuItemAction\n name={\"showRevisionsList\"}\n element={<ShowRevisionList />}\n />\n </IsModelPublishable>\n </ContentEntryEditorConfig>\n <FullScreenContentEntry />\n </>\n );\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","ContentEntryEditorConfig","InternalContentEntryListConfig","ActionDelete","ActionMove","ActionPublish","ActionUnpublish","FilterByStatus","DeleteEntry","DeleteEntryMenuItem","SaveAndPublishButton","SaveContentButton","DeleteFolder","EditFolder","SetFolderPermissions","ChangeEntryStatus","EditEntry","MoveEntry","CellActions","CellAuthor","CellCreated","CellModified","CellName","CellStatus","CellLive","Ref","ShowConfirmationOnDelete","ShowConfirmationOnPublish","ShowConfirmationOnUnpublish","ShowConfirmationOnDeleteRevision","FullScreenContentEntry","ShowRevisionList","ScheduleEntryMenuItem","AdvancedSearchConfigs","IsModelPublishable","Browser","Actions","ContentEntriesModule","createElement","Fragment","Filter","name","element","BulkAction","Folder","Action","Entry","Table","Column","header","cell","sortable","hideable","size","className","resizable","AdvancedSearch","FieldRenderer","type","FieldType","REF","ButtonAction","MenuItemAction"],"sources":["ContentEntriesModule.tsx"],"sourcesContent":["import React from \"react\";\nimport {\n ContentEntryEditorConfig,\n InternalContentEntryListConfig\n} from \"~/admin/config/contentEntries/index.js\";\n\nimport {\n ActionDelete,\n ActionMove,\n ActionPublish,\n ActionUnpublish\n} from \"~/admin/components/ContentEntries/BulkActions/index.js\";\nimport { FilterByStatus } from \"~/admin/components/ContentEntries/Filters/index.js\";\nimport {\n DeleteEntry as DeleteEntryMenuItem,\n SaveAndPublishButton,\n SaveContentButton\n} from \"~/admin/components/ContentEntryForm/Header/index.js\";\nimport { DeleteFolder, EditFolder, SetFolderPermissions } from \"@webiny/app-aco\";\nimport {\n ChangeEntryStatus,\n DeleteEntry,\n EditEntry,\n MoveEntry\n} from \"~/admin/components/ContentEntries/Table/Actions/index.js\";\nimport {\n CellActions,\n CellAuthor,\n CellCreated,\n CellModified,\n CellName,\n CellStatus,\n CellLive\n} from \"~/admin/components/ContentEntries/Table/Cells/index.js\";\nimport { Ref } from \"~/admin/components/ContentEntries/Filters/RefFieldRenderer/index.js\";\nimport { ShowConfirmationOnDelete } from \"~/admin/components/Decorators/ShowConfirmationOnDelete.js\";\nimport { ShowConfirmationOnPublish } from \"~/admin/components/Decorators/ShowConfirmationOnPublish.js\";\nimport { ShowConfirmationOnUnpublish } from \"~/admin/components/Decorators/ShowConfirmationOnUnpublish.js\";\nimport { ShowConfirmationOnDeleteRevision } from \"~/admin/components/Decorators/ShowConfirmationOnDeleteRevision.js\";\nimport { FullScreenContentEntry } from \"~/admin/views/contentEntries/ContentEntry/FullScreenContentEntry/index.js\";\nimport { ShowRevisionList } from \"~/admin/components/ContentEntryForm/Header/ShowRevisionsList/index.js\";\nimport { ScheduleEntryMenuItem } from \"~/admin/components/ContentEntries/Scheduler/actions/ScheduleEntryAction.js\";\nimport { AdvancedSearchConfigs } from \"@webiny/app-aco/components/AdvancedSearch/AdvancedSearchConfigs\";\nimport { IsModelPublishable } from \"~/admin/components/IsModelPublishable.js\";\n\nconst { Browser } = InternalContentEntryListConfig;\nconst { Actions } = ContentEntryEditorConfig;\n\nexport const ContentEntriesModule = () => {\n return (\n <>\n <InternalContentEntryListConfig>\n <AdvancedSearchConfigs />\n <IsModelPublishable>\n <Browser.Filter name={\"status\"} element={<FilterByStatus />} />\n <Browser.BulkAction name={\"publish\"} element={<ActionPublish />} />\n <Browser.BulkAction name={\"unpublish\"} element={<ActionUnpublish />} />\n </IsModelPublishable>\n <Browser.BulkAction name={\"move\"} element={<ActionMove />} />\n <Browser.BulkAction name={\"delete\"} element={<ActionDelete />} />\n <Browser.Folder.Action name={\"edit\"} element={<EditFolder />} />\n <Browser.Folder.Action name={\"permissions\"} element={<SetFolderPermissions />} />\n <Browser.Folder.Action name={\"delete\"} element={<DeleteFolder />} />\n <Browser.Entry.Action name={\"edit\"} element={<EditEntry />} />\n <IsModelPublishable>\n <Browser.Entry.Action name={\"status\"} element={<ChangeEntryStatus />} />\n </IsModelPublishable>\n <Browser.Entry.Action name={\"move\"} element={<MoveEntry />} />\n <Browser.Entry.Action name={\"delete\"} element={<DeleteEntry />} />\n <Browser.Table.Column\n name={\"name\"}\n header={\"Name\"}\n cell={<CellName />}\n sortable={true}\n hideable={false}\n size={200}\n className={\"cms-aco-list-title\"}\n />\n <Browser.Table.Column\n name={\"createdBy\"}\n header={\"Author\"}\n cell={<CellAuthor />}\n className={\"cms-aco-list-createdBy\"}\n />\n <Browser.Table.Column\n name={\"createdOn\"}\n header={\"Created\"}\n cell={<CellCreated />}\n sortable={true}\n className={\"cms-aco-list-createdOn\"}\n />\n <Browser.Table.Column\n name={\"savedOn\"}\n header={\"Modified\"}\n cell={<CellModified />}\n sortable={true}\n className={\"cms-aco-list-savedOn\"}\n />\n <IsModelPublishable>\n <Browser.Table.Column\n name={\"status\"}\n header={\"Status\"}\n cell={<CellStatus />}\n className={\"cms-aco-list-status\"}\n />\n <Browser.Table.Column\n name={\"live\"}\n header={\"Live\"}\n cell={<CellLive />}\n className={\"cms-aco-list-live\"}\n />\n </IsModelPublishable>\n <Browser.Table.Column\n name={\"actions\"}\n header={\"\"}\n cell={<CellActions />}\n size={56}\n resizable={false}\n hideable={false}\n className={\"cms-aco-list-actions text-right\"}\n />\n <Browser.AdvancedSearch.FieldRenderer\n name={\"ref\"}\n element={<Ref />}\n type={Browser.AdvancedSearch.FieldRenderer.FieldType.REF}\n />\n </InternalContentEntryListConfig>\n <ContentEntryEditorConfig>\n <ShowConfirmationOnPublish />\n <ShowConfirmationOnUnpublish />\n <ShowConfirmationOnDelete />\n <ShowConfirmationOnDeleteRevision />\n <Actions.ButtonAction name={\"save\"} element={<SaveContentButton />} />\n <IsModelPublishable>\n <Actions.ButtonAction name={\"publish\"} element={<SaveAndPublishButton />} />\n </IsModelPublishable>\n <Actions.MenuItemAction name={\"delete\"} element={<DeleteEntryMenuItem />} />\n <IsModelPublishable>\n <Actions.MenuItemAction name={\"schedule\"} element={<ScheduleEntryMenuItem />} />\n <Actions.MenuItemAction\n name={\"showRevisionsList\"}\n element={<ShowRevisionList />}\n />\n </IsModelPublishable>\n </ContentEntryEditorConfig>\n <FullScreenContentEntry />\n </>\n );\n};\n"],"mappings":"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","ignoreList":[]}
|