@strapi/plugin-documentation 4.20.5 → 5.0.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/admin/src/hooks/useDocumentation.js +10 -7
- package/admin/src/index.js +4 -18
- package/admin/src/pages/PluginPage/index.jsx +10 -24
- package/admin/src/pages/PluginPage/tests/index.test.jsx +13 -14
- package/admin/src/pages/SettingsPage/index.jsx +138 -142
- package/admin/src/pages/SettingsPage/tests/index.test.jsx +6 -13
- package/dist/_chunks/EditViewPage-xYzUSAwS-NigDiZi1.js +84396 -0
- package/dist/_chunks/EditViewPage-xYzUSAwS-NigDiZi1.js.map +1 -0
- package/dist/_chunks/EditViewPage-xYzUSAwS-OCSjk-Vt.mjs +84368 -0
- package/dist/_chunks/EditViewPage-xYzUSAwS-OCSjk-Vt.mjs.map +1 -0
- package/dist/_chunks/ListViewPage-xOVa04T_-JQSQJ0aH.js +1618 -0
- package/dist/_chunks/ListViewPage-xOVa04T_-JQSQJ0aH.js.map +1 -0
- package/dist/_chunks/ListViewPage-xOVa04T_-MAsyJIvQ.mjs +1595 -0
- package/dist/_chunks/ListViewPage-xOVa04T_-MAsyJIvQ.mjs.map +1 -0
- package/dist/_chunks/ReviewWorkflowsColumn-FDxVKdto-9EdyIGCi.js +33 -0
- package/dist/_chunks/ReviewWorkflowsColumn-FDxVKdto-9EdyIGCi.js.map +1 -0
- package/dist/_chunks/ReviewWorkflowsColumn-FDxVKdto-E7QaAVIp.mjs +33 -0
- package/dist/_chunks/ReviewWorkflowsColumn-FDxVKdto-E7QaAVIp.mjs.map +1 -0
- package/dist/_chunks/constants-WjN6I3sL-1yTyGpl5.mjs +190 -0
- package/dist/_chunks/constants-WjN6I3sL-1yTyGpl5.mjs.map +1 -0
- package/dist/_chunks/constants-WjN6I3sL-5vTd1Y1g.js +209 -0
- package/dist/_chunks/constants-WjN6I3sL-5vTd1Y1g.js.map +1 -0
- package/dist/_chunks/index--rtz8bZh.mjs +17798 -0
- package/dist/_chunks/index--rtz8bZh.mjs.map +1 -0
- package/dist/_chunks/index-FiShd2zI.js +17823 -0
- package/dist/_chunks/index-FiShd2zI.js.map +1 -0
- package/dist/_chunks/{index-SdK6c8ae.mjs → index-Qt8XLNQZ.mjs} +11 -8
- package/dist/_chunks/index-Qt8XLNQZ.mjs.map +1 -0
- package/dist/_chunks/{index-6c_gUVrM.mjs → index-h-OcS50W.mjs} +17 -23
- package/dist/_chunks/index-h-OcS50W.mjs.map +1 -0
- package/dist/_chunks/{index-8QCog8RN.js → index-m8HLcGmV.js} +15 -12
- package/dist/_chunks/index-m8HLcGmV.js.map +1 -0
- package/dist/_chunks/{index-r8UM9pKc.js → index-vWzO1snG.js} +19 -25
- package/dist/_chunks/index-vWzO1snG.js.map +1 -0
- package/dist/_chunks/{useDocumentation-DcjdYl47.mjs → useDocumentation-EsufCjtn.mjs} +12 -9
- package/dist/_chunks/useDocumentation-EsufCjtn.mjs.map +1 -0
- package/dist/_chunks/{useDocumentation-uuvchj5L.js → useDocumentation-hOQyphRS.js} +14 -11
- package/dist/_chunks/useDocumentation-hOQyphRS.js.map +1 -0
- package/dist/_chunks/useSyncRbac-Kt8Li0Yf-f6LRUqJf.js +57 -0
- package/dist/_chunks/useSyncRbac-Kt8Li0Yf-f6LRUqJf.js.map +1 -0
- package/dist/_chunks/useSyncRbac-Kt8Li0Yf-mDaHJCOQ.mjs +39 -0
- package/dist/_chunks/useSyncRbac-Kt8Li0Yf-mDaHJCOQ.mjs.map +1 -0
- package/dist/admin/index.js +1 -1
- package/dist/admin/index.mjs +1 -1
- package/dist/style.css +84 -0
- package/package.json +13 -13
- package/server/controllers/documentation.js +2 -2
- package/server/middlewares/restrict-access.js +1 -1
- package/server/services/__mocks__/mock-content-types.js +0 -5
- package/server/services/documentation.js +2 -3
- package/server/services/override.js +1 -1
- package/dist/_chunks/index-6c_gUVrM.mjs.map +0 -1
- package/dist/_chunks/index-8QCog8RN.js.map +0 -1
- package/dist/_chunks/index-SdK6c8ae.mjs.map +0 -1
- package/dist/_chunks/index-iIEENwT0.js +0 -169
- package/dist/_chunks/index-iIEENwT0.js.map +0 -1
- package/dist/_chunks/index-r8UM9pKc.js.map +0 -1
- package/dist/_chunks/index-uTcHJZnf.mjs +0 -167
- package/dist/_chunks/index-uTcHJZnf.mjs.map +0 -1
- package/dist/_chunks/useDocumentation-DcjdYl47.mjs.map +0 -1
- package/dist/_chunks/useDocumentation-uuvchj5L.js.map +0 -1
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const index = require("./index-FiShd2zI.js");
|
|
4
|
+
const jsxRuntime = require("react/jsx-runtime");
|
|
5
|
+
const React = require("react");
|
|
6
|
+
const designSystem = require("@strapi/design-system");
|
|
7
|
+
const reactIntl = require("react-intl");
|
|
8
|
+
function _interopNamespace(e) {
|
|
9
|
+
if (e && e.__esModule)
|
|
10
|
+
return e;
|
|
11
|
+
const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
|
|
12
|
+
if (e) {
|
|
13
|
+
for (const k in e) {
|
|
14
|
+
if (k !== "default") {
|
|
15
|
+
const d = Object.getOwnPropertyDescriptor(e, k);
|
|
16
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
17
|
+
enumerable: true,
|
|
18
|
+
get: () => e[k]
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
n.default = e;
|
|
24
|
+
return Object.freeze(n);
|
|
25
|
+
}
|
|
26
|
+
const React__namespace = /* @__PURE__ */ _interopNamespace(React);
|
|
27
|
+
function useReviewWorkflows(params = {}) {
|
|
28
|
+
const { id = "", ...queryParams } = params;
|
|
29
|
+
const { data, isLoading } = index.useGetWorkflowsQuery({
|
|
30
|
+
id,
|
|
31
|
+
populate: "stages",
|
|
32
|
+
...queryParams
|
|
33
|
+
});
|
|
34
|
+
const [createWorkflow] = index.useCreateWorkflowMutation();
|
|
35
|
+
const [updateWorkflow] = index.useUpdateWorkflowMutation();
|
|
36
|
+
const [deleteWorkflow] = index.useDeleteWorkflowMutation();
|
|
37
|
+
const { workflows, meta } = data ?? {};
|
|
38
|
+
return {
|
|
39
|
+
// meta contains e.g. the total of all workflows. we can not use
|
|
40
|
+
// the pagination object here, because the list is not paginated.
|
|
41
|
+
meta,
|
|
42
|
+
workflows,
|
|
43
|
+
isLoading,
|
|
44
|
+
createWorkflow,
|
|
45
|
+
updateWorkflow,
|
|
46
|
+
deleteWorkflow
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
const AssigneeFilter = ({ name }) => {
|
|
50
|
+
const [page, setPage] = React__namespace.useState(1);
|
|
51
|
+
const { formatMessage } = reactIntl.useIntl();
|
|
52
|
+
const { data, isLoading } = index.useAdminUsers({
|
|
53
|
+
page
|
|
54
|
+
});
|
|
55
|
+
const users = data?.users || [];
|
|
56
|
+
const field = index.useField(name);
|
|
57
|
+
const handleChange = (value) => {
|
|
58
|
+
setPage(1);
|
|
59
|
+
field.onChange(name, value);
|
|
60
|
+
};
|
|
61
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
62
|
+
designSystem.Combobox,
|
|
63
|
+
{
|
|
64
|
+
value: field.value,
|
|
65
|
+
"aria-label": formatMessage({
|
|
66
|
+
id: "content-manager.components.Filters.usersSelect.label",
|
|
67
|
+
defaultMessage: "Search and select an user to filter"
|
|
68
|
+
}),
|
|
69
|
+
onChange: handleChange,
|
|
70
|
+
loading: isLoading,
|
|
71
|
+
onLoadMore: () => setPage((prev) => prev + 1),
|
|
72
|
+
children: users.map((user) => {
|
|
73
|
+
return /* @__PURE__ */ jsxRuntime.jsx(designSystem.ComboboxOption, { value: user.id.toString(), children: index.getDisplayName(user, formatMessage) }, user.id);
|
|
74
|
+
})
|
|
75
|
+
}
|
|
76
|
+
);
|
|
77
|
+
};
|
|
78
|
+
const StageFilter = (props) => {
|
|
79
|
+
const { model } = index.useDoc();
|
|
80
|
+
const { formatMessage } = reactIntl.useIntl();
|
|
81
|
+
const { workflows, isLoading } = useReviewWorkflows({ filters: { contentTypes: model } });
|
|
82
|
+
const field = index.useField(props.name);
|
|
83
|
+
const [workflow] = workflows ?? [];
|
|
84
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
85
|
+
designSystem.SingleSelect,
|
|
86
|
+
{
|
|
87
|
+
"aria-label": formatMessage({
|
|
88
|
+
id: "content-manager.components.Filters.reviewWorkflows.label",
|
|
89
|
+
defaultMessage: "Search and select an workflow stage to filter"
|
|
90
|
+
}),
|
|
91
|
+
value: field.value,
|
|
92
|
+
onChange: (value) => {
|
|
93
|
+
field.onChange(props.name, value);
|
|
94
|
+
},
|
|
95
|
+
loading: isLoading,
|
|
96
|
+
customizeContent: () => /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Flex, { as: "span", justifyContent: "space-between", alignItems: "center", width: "100%", children: [
|
|
97
|
+
/* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { textColor: "neutral800", ellipsis: true, children: field.value }),
|
|
98
|
+
isLoading ? /* @__PURE__ */ jsxRuntime.jsx(designSystem.Loader, { small: true, style: { display: "flex" } }) : null
|
|
99
|
+
] }),
|
|
100
|
+
children: (workflow?.stages ?? []).map(({ id, color, name }) => {
|
|
101
|
+
const { themeColorName } = index.getStageColorByHex(color) ?? {};
|
|
102
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
103
|
+
designSystem.SingleSelectOption,
|
|
104
|
+
{
|
|
105
|
+
startIcon: /* @__PURE__ */ jsxRuntime.jsx(
|
|
106
|
+
designSystem.Flex,
|
|
107
|
+
{
|
|
108
|
+
height: 2,
|
|
109
|
+
background: color,
|
|
110
|
+
borderColor: themeColorName === "neutral0" ? "neutral150" : void 0,
|
|
111
|
+
hasRadius: true,
|
|
112
|
+
shrink: 0,
|
|
113
|
+
width: 2
|
|
114
|
+
}
|
|
115
|
+
),
|
|
116
|
+
value: name,
|
|
117
|
+
children: name
|
|
118
|
+
},
|
|
119
|
+
id
|
|
120
|
+
);
|
|
121
|
+
})
|
|
122
|
+
}
|
|
123
|
+
);
|
|
124
|
+
};
|
|
125
|
+
const REVIEW_WORKFLOW_COLUMNS_EE = [
|
|
126
|
+
{
|
|
127
|
+
name: index.STAGE_ATTRIBUTE_NAME,
|
|
128
|
+
attribute: {
|
|
129
|
+
type: "relation",
|
|
130
|
+
relation: "oneToMany",
|
|
131
|
+
target: "admin::review-workflow-stage"
|
|
132
|
+
},
|
|
133
|
+
label: {
|
|
134
|
+
id: index.getTranslation(`containers.list.table-headers.reviewWorkflows.stage`),
|
|
135
|
+
defaultMessage: "Review stage"
|
|
136
|
+
},
|
|
137
|
+
searchable: false,
|
|
138
|
+
sortable: true,
|
|
139
|
+
mainField: {
|
|
140
|
+
name: "name",
|
|
141
|
+
type: "string"
|
|
142
|
+
}
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
name: index.ASSIGNEE_ATTRIBUTE_NAME,
|
|
146
|
+
attribute: {
|
|
147
|
+
type: "relation",
|
|
148
|
+
target: "admin::user",
|
|
149
|
+
relation: "oneToMany"
|
|
150
|
+
},
|
|
151
|
+
label: {
|
|
152
|
+
id: index.getTranslation(`containers.list.table-headers.reviewWorkflows.assignee`),
|
|
153
|
+
defaultMessage: "Assignee"
|
|
154
|
+
},
|
|
155
|
+
searchable: false,
|
|
156
|
+
sortable: true,
|
|
157
|
+
mainField: {
|
|
158
|
+
name: "firstname",
|
|
159
|
+
type: "string"
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
];
|
|
163
|
+
const REVIEW_WORKFLOW_FILTERS = [
|
|
164
|
+
{
|
|
165
|
+
mainField: {
|
|
166
|
+
name: "name",
|
|
167
|
+
type: "string"
|
|
168
|
+
},
|
|
169
|
+
input: StageFilter,
|
|
170
|
+
label: {
|
|
171
|
+
id: index.getTranslation(`containers.list.table-headers.reviewWorkflows.stage`),
|
|
172
|
+
defaultMessage: "Review stage"
|
|
173
|
+
},
|
|
174
|
+
name: "strapi_stage",
|
|
175
|
+
type: "relation"
|
|
176
|
+
},
|
|
177
|
+
{
|
|
178
|
+
type: "relation",
|
|
179
|
+
mainField: {
|
|
180
|
+
name: "id",
|
|
181
|
+
type: "integer"
|
|
182
|
+
},
|
|
183
|
+
input: AssigneeFilter,
|
|
184
|
+
operators: [
|
|
185
|
+
{
|
|
186
|
+
label: {
|
|
187
|
+
id: "components.FilterOptions.FILTER_TYPES.$eq",
|
|
188
|
+
defaultMessage: "is"
|
|
189
|
+
},
|
|
190
|
+
value: "$eq"
|
|
191
|
+
},
|
|
192
|
+
{
|
|
193
|
+
label: {
|
|
194
|
+
id: "components.FilterOptions.FILTER_TYPES.$ne",
|
|
195
|
+
defaultMessage: "is not"
|
|
196
|
+
},
|
|
197
|
+
value: "$ne"
|
|
198
|
+
}
|
|
199
|
+
],
|
|
200
|
+
label: {
|
|
201
|
+
id: index.getTranslation(`containers.list.table-headers.reviewWorkflows.assignee.label`),
|
|
202
|
+
defaultMessage: "Assignee"
|
|
203
|
+
},
|
|
204
|
+
name: "strapi_assignee"
|
|
205
|
+
}
|
|
206
|
+
];
|
|
207
|
+
exports.REVIEW_WORKFLOW_COLUMNS_EE = REVIEW_WORKFLOW_COLUMNS_EE;
|
|
208
|
+
exports.REVIEW_WORKFLOW_FILTERS = REVIEW_WORKFLOW_FILTERS;
|
|
209
|
+
//# sourceMappingURL=constants-WjN6I3sL-5vTd1Y1g.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants-WjN6I3sL-5vTd1Y1g.js","sources":["../../../../core/admin/dist/_chunks/useReviewWorkflows-PAvhwNm3.mjs","../../../../core/admin/dist/_chunks/constants-WjN6I3sL.mjs"],"sourcesContent":["import { Q as useGetWorkflowsQuery, V as useCreateWorkflowMutation, W as useUpdateWorkflowMutation, X as useDeleteWorkflowMutation } from \"./index-5ZvCaCyY.mjs\";\nfunction useReviewWorkflows(params = {}) {\n const { id = \"\", ...queryParams } = params;\n const { data, isLoading } = useGetWorkflowsQuery({\n id,\n populate: \"stages\",\n ...queryParams\n });\n const [createWorkflow] = useCreateWorkflowMutation();\n const [updateWorkflow] = useUpdateWorkflowMutation();\n const [deleteWorkflow] = useDeleteWorkflowMutation();\n const { workflows, meta } = data ?? {};\n return {\n // meta contains e.g. the total of all workflows. we can not use\n // the pagination object here, because the list is not paginated.\n meta,\n workflows,\n isLoading,\n createWorkflow,\n updateWorkflow,\n deleteWorkflow\n };\n}\nexport {\n useReviewWorkflows as u\n};\n//# sourceMappingURL=useReviewWorkflows-PAvhwNm3.mjs.map\n","import { B as useAdminUsers, C as useField, g as getDisplayName, ak as useDoc, ah as getStageColorByHex, bk as STAGE_ATTRIBUTE_NAME, ap as getTranslation, bl as ASSIGNEE_ATTRIBUTE_NAME } from \"./index-5ZvCaCyY.mjs\";\nimport { jsx, jsxs } from \"react/jsx-runtime\";\nimport * as React from \"react\";\nimport { Combobox, ComboboxOption, SingleSelect, Flex, Typography, Loader, SingleSelectOption } from \"@strapi/design-system\";\nimport { useIntl } from \"react-intl\";\nimport { u as useReviewWorkflows } from \"./useReviewWorkflows-PAvhwNm3.mjs\";\nconst AssigneeFilter = ({ name }) => {\n const [page, setPage] = React.useState(1);\n const { formatMessage } = useIntl();\n const { data, isLoading } = useAdminUsers({\n page\n });\n const users = data?.users || [];\n const field = useField(name);\n const handleChange = (value) => {\n setPage(1);\n field.onChange(name, value);\n };\n return /* @__PURE__ */ jsx(\n Combobox,\n {\n value: field.value,\n \"aria-label\": formatMessage({\n id: \"content-manager.components.Filters.usersSelect.label\",\n defaultMessage: \"Search and select an user to filter\"\n }),\n onChange: handleChange,\n loading: isLoading,\n onLoadMore: () => setPage((prev) => prev + 1),\n children: users.map((user) => {\n return /* @__PURE__ */ jsx(ComboboxOption, { value: user.id.toString(), children: getDisplayName(user, formatMessage) }, user.id);\n })\n }\n );\n};\nconst StageFilter = (props) => {\n const { model } = useDoc();\n const { formatMessage } = useIntl();\n const { workflows, isLoading } = useReviewWorkflows({ filters: { contentTypes: model } });\n const field = useField(props.name);\n const [workflow] = workflows ?? [];\n return /* @__PURE__ */ jsx(\n SingleSelect,\n {\n \"aria-label\": formatMessage({\n id: \"content-manager.components.Filters.reviewWorkflows.label\",\n defaultMessage: \"Search and select an workflow stage to filter\"\n }),\n value: field.value,\n onChange: (value) => {\n field.onChange(props.name, value);\n },\n loading: isLoading,\n customizeContent: () => /* @__PURE__ */ jsxs(Flex, { as: \"span\", justifyContent: \"space-between\", alignItems: \"center\", width: \"100%\", children: [\n /* @__PURE__ */ jsx(Typography, { textColor: \"neutral800\", ellipsis: true, children: field.value }),\n isLoading ? /* @__PURE__ */ jsx(Loader, { small: true, style: { display: \"flex\" } }) : null\n ] }),\n children: (workflow?.stages ?? []).map(({ id, color, name }) => {\n const { themeColorName } = getStageColorByHex(color) ?? {};\n return /* @__PURE__ */ jsx(\n SingleSelectOption,\n {\n startIcon: /* @__PURE__ */ jsx(\n Flex,\n {\n height: 2,\n background: color,\n borderColor: themeColorName === \"neutral0\" ? \"neutral150\" : void 0,\n hasRadius: true,\n shrink: 0,\n width: 2\n }\n ),\n value: name,\n children: name\n },\n id\n );\n })\n }\n );\n};\nconst REVIEW_WORKFLOW_COLUMNS_EE = [\n {\n name: STAGE_ATTRIBUTE_NAME,\n attribute: {\n type: \"relation\",\n relation: \"oneToMany\",\n target: \"admin::review-workflow-stage\"\n },\n label: {\n id: getTranslation(`containers.list.table-headers.reviewWorkflows.stage`),\n defaultMessage: \"Review stage\"\n },\n searchable: false,\n sortable: true,\n mainField: {\n name: \"name\",\n type: \"string\"\n }\n },\n {\n name: ASSIGNEE_ATTRIBUTE_NAME,\n attribute: {\n type: \"relation\",\n target: \"admin::user\",\n relation: \"oneToMany\"\n },\n label: {\n id: getTranslation(`containers.list.table-headers.reviewWorkflows.assignee`),\n defaultMessage: \"Assignee\"\n },\n searchable: false,\n sortable: true,\n mainField: {\n name: \"firstname\",\n type: \"string\"\n }\n }\n];\nconst REVIEW_WORKFLOW_FILTERS = [\n {\n mainField: {\n name: \"name\",\n type: \"string\"\n },\n input: StageFilter,\n label: {\n id: getTranslation(`containers.list.table-headers.reviewWorkflows.stage`),\n defaultMessage: \"Review stage\"\n },\n name: \"strapi_stage\",\n type: \"relation\"\n },\n {\n type: \"relation\",\n mainField: {\n name: \"id\",\n type: \"integer\"\n },\n input: AssigneeFilter,\n operators: [\n {\n label: {\n id: \"components.FilterOptions.FILTER_TYPES.$eq\",\n defaultMessage: \"is\"\n },\n value: \"$eq\"\n },\n {\n label: {\n id: \"components.FilterOptions.FILTER_TYPES.$ne\",\n defaultMessage: \"is not\"\n },\n value: \"$ne\"\n }\n ],\n label: {\n id: getTranslation(`containers.list.table-headers.reviewWorkflows.assignee.label`),\n defaultMessage: \"Assignee\"\n },\n name: \"strapi_assignee\"\n }\n];\nexport {\n REVIEW_WORKFLOW_COLUMNS_EE,\n REVIEW_WORKFLOW_FILTERS\n};\n//# sourceMappingURL=constants-WjN6I3sL.mjs.map\n"],"names":["useGetWorkflowsQuery","useCreateWorkflowMutation","useUpdateWorkflowMutation","useDeleteWorkflowMutation","React","useIntl","useAdminUsers","useField","jsx","Combobox","ComboboxOption","getDisplayName","useDoc","SingleSelect","jsxs","Flex","Typography","Loader","getStageColorByHex","SingleSelectOption","STAGE_ATTRIBUTE_NAME","getTranslation","ASSIGNEE_ATTRIBUTE_NAME"],"mappings":"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"}
|