@strapi/review-workflows 0.0.0-next.b558642be856459a3e6c076f5d76fffbfc5fc5a1 → 0.0.0-next.b8a93ec6cfca2f18075819bb617db6bca123b8e2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (102) hide show
  1. package/dist/admin/chunks/Layout-27uslS7w.mjs +265 -0
  2. package/dist/admin/chunks/Layout-27uslS7w.mjs.map +1 -0
  3. package/dist/admin/chunks/Layout-B4l91S3p.js +290 -0
  4. package/dist/admin/chunks/Layout-B4l91S3p.js.map +1 -0
  5. package/dist/admin/chunks/en-BixG7IBu.mjs +14 -0
  6. package/dist/admin/chunks/en-BixG7IBu.mjs.map +1 -0
  7. package/dist/admin/chunks/en-C6SESe-Y.js +16 -0
  8. package/dist/admin/chunks/en-C6SESe-Y.js.map +1 -0
  9. package/dist/admin/chunks/id-DnRGfGvc.js +1442 -0
  10. package/dist/admin/chunks/id-DnRGfGvc.js.map +1 -0
  11. package/dist/admin/chunks/id-LAMc9ydb.mjs +1420 -0
  12. package/dist/admin/chunks/id-LAMc9ydb.mjs.map +1 -0
  13. package/dist/admin/chunks/index-BiGArvbK.mjs +271 -0
  14. package/dist/admin/chunks/index-BiGArvbK.mjs.map +1 -0
  15. package/dist/admin/chunks/index-C5IeISWp.js +960 -0
  16. package/dist/admin/chunks/index-C5IeISWp.js.map +1 -0
  17. package/dist/admin/chunks/index-CSYOmjZt.mjs +926 -0
  18. package/dist/admin/chunks/index-CSYOmjZt.mjs.map +1 -0
  19. package/dist/admin/chunks/index-DZpcSUvc.js +293 -0
  20. package/dist/admin/chunks/index-DZpcSUvc.js.map +1 -0
  21. package/dist/admin/chunks/purchase-review-workflows-CEP8kvxZ.mjs +53 -0
  22. package/dist/admin/chunks/purchase-review-workflows-CEP8kvxZ.mjs.map +1 -0
  23. package/dist/admin/chunks/purchase-review-workflows-Drlxm8yP.js +55 -0
  24. package/dist/admin/chunks/purchase-review-workflows-Drlxm8yP.js.map +1 -0
  25. package/dist/admin/chunks/router-CrN8UbpP.js +30 -0
  26. package/dist/admin/chunks/router-CrN8UbpP.js.map +1 -0
  27. package/dist/admin/chunks/router-Z3AR7XZ7.mjs +28 -0
  28. package/dist/admin/chunks/router-Z3AR7XZ7.mjs.map +1 -0
  29. package/dist/admin/index.js +17 -2
  30. package/dist/admin/index.js.map +1 -1
  31. package/dist/admin/index.mjs +12 -4
  32. package/dist/admin/index.mjs.map +1 -1
  33. package/dist/admin/src/services/settings.d.ts +7 -3
  34. package/dist/server/index.js +2112 -7994
  35. package/dist/server/index.js.map +1 -1
  36. package/dist/server/index.mjs +2118 -8003
  37. package/dist/server/index.mjs.map +1 -1
  38. package/dist/server/src/bootstrap.d.ts.map +1 -1
  39. package/dist/server/src/constants/workflows.d.ts +1 -0
  40. package/dist/server/src/constants/workflows.d.ts.map +1 -1
  41. package/dist/server/src/content-types/index.d.ts +6 -0
  42. package/dist/server/src/content-types/index.d.ts.map +1 -1
  43. package/dist/server/src/content-types/workflow/index.d.ts +6 -0
  44. package/dist/server/src/content-types/workflow/index.d.ts.map +1 -1
  45. package/dist/server/src/controllers/assignees.d.ts.map +1 -1
  46. package/dist/server/src/controllers/stages.d.ts.map +1 -1
  47. package/dist/server/src/index.d.ts +28 -6
  48. package/dist/server/src/index.d.ts.map +1 -1
  49. package/dist/server/src/register.d.ts.map +1 -1
  50. package/dist/server/src/services/assignees.d.ts +8 -4
  51. package/dist/server/src/services/assignees.d.ts.map +1 -1
  52. package/dist/server/src/services/document-service-middleware.d.ts +2 -1
  53. package/dist/server/src/services/document-service-middleware.d.ts.map +1 -1
  54. package/dist/server/src/services/index.d.ts +16 -6
  55. package/dist/server/src/services/index.d.ts.map +1 -1
  56. package/dist/server/src/services/metrics/index.d.ts +4 -4
  57. package/dist/server/src/services/metrics/index.d.ts.map +1 -1
  58. package/dist/server/src/services/stages.d.ts +6 -1
  59. package/dist/server/src/services/stages.d.ts.map +1 -1
  60. package/dist/server/src/services/workflows.d.ts.map +1 -1
  61. package/dist/server/src/validation/review-workflows.d.ts +4 -0
  62. package/dist/server/src/validation/review-workflows.d.ts.map +1 -1
  63. package/dist/shared/contracts/review-workflows.d.ts +8 -4
  64. package/dist/shared/contracts/review-workflows.d.ts.map +1 -1
  65. package/package.json +17 -16
  66. package/dist/_chunks/Layout-8i0EXRRs.js +0 -251
  67. package/dist/_chunks/Layout-8i0EXRRs.js.map +0 -1
  68. package/dist/_chunks/Layout-C9m07iTY.mjs +0 -233
  69. package/dist/_chunks/Layout-C9m07iTY.mjs.map +0 -1
  70. package/dist/_chunks/en-D9ZrQAV6.mjs +0 -12
  71. package/dist/_chunks/en-D9ZrQAV6.mjs.map +0 -1
  72. package/dist/_chunks/en-xcewH2pC.js +0 -12
  73. package/dist/_chunks/en-xcewH2pC.js.map +0 -1
  74. package/dist/_chunks/id-CmtaTf1x.js +0 -1237
  75. package/dist/_chunks/id-CmtaTf1x.js.map +0 -1
  76. package/dist/_chunks/id-DV0Ndeav.mjs +0 -1217
  77. package/dist/_chunks/id-DV0Ndeav.mjs.map +0 -1
  78. package/dist/_chunks/index-B8WmHbCU.js +0 -233
  79. package/dist/_chunks/index-B8WmHbCU.js.map +0 -1
  80. package/dist/_chunks/index-BCUO98DV.js +0 -830
  81. package/dist/_chunks/index-BCUO98DV.js.map +0 -1
  82. package/dist/_chunks/index-CA5Axcoc.mjs +0 -214
  83. package/dist/_chunks/index-CA5Axcoc.mjs.map +0 -1
  84. package/dist/_chunks/index-CqYVkW3E.mjs +0 -812
  85. package/dist/_chunks/index-CqYVkW3E.mjs.map +0 -1
  86. package/dist/_chunks/purchase-review-workflows-BN-5Ube7.mjs +0 -52
  87. package/dist/_chunks/purchase-review-workflows-BN-5Ube7.mjs.map +0 -1
  88. package/dist/_chunks/purchase-review-workflows-DlCDg0fD.js +0 -52
  89. package/dist/_chunks/purchase-review-workflows-DlCDg0fD.js.map +0 -1
  90. package/dist/_chunks/router-BOXlNnrU.js +0 -24
  91. package/dist/_chunks/router-BOXlNnrU.js.map +0 -1
  92. package/dist/_chunks/router-Jdt6SbIA.mjs +0 -24
  93. package/dist/_chunks/router-Jdt6SbIA.mjs.map +0 -1
  94. /package/dist/admin/src/routes/content-manager/{[model] → model}/components/AssigneeFilter.d.ts +0 -0
  95. /package/dist/admin/src/routes/content-manager/{[model] → model}/components/StageFilter.d.ts +0 -0
  96. /package/dist/admin/src/routes/content-manager/{[model] → model}/components/TableColumns.d.ts +0 -0
  97. /package/dist/admin/src/routes/content-manager/{[model] → model}/configure/constants.d.ts +0 -0
  98. /package/dist/admin/src/routes/content-manager/{[model] → model}/constants.d.ts +0 -0
  99. /package/dist/admin/src/routes/content-manager/{[model]/[id] → model/id}/components/AssigneeSelect.d.ts +0 -0
  100. /package/dist/admin/src/routes/content-manager/{[model]/[id] → model/id}/components/Panel.d.ts +0 -0
  101. /package/dist/admin/src/routes/content-manager/{[model]/[id] → model/id}/components/StageSelect.d.ts +0 -0
  102. /package/dist/admin/src/routes/content-manager/{[model]/[id] → model/id}/components/constants.d.ts +0 -0
@@ -0,0 +1,293 @@
1
+ 'use strict';
2
+
3
+ var jsxRuntime = require('react/jsx-runtime');
4
+ var React = require('react');
5
+ var strapiAdmin = require('@strapi/admin/strapi-admin');
6
+ var ee = require('@strapi/admin/strapi-admin/ee');
7
+ var designSystem = require('@strapi/design-system');
8
+ var icons = require('@strapi/icons');
9
+ var reactIntl = require('react-intl');
10
+ var reactRouterDom = require('react-router-dom');
11
+ var index = require('./index-C5IeISWp.js');
12
+ var Layout = require('./Layout-B4l91S3p.js');
13
+ require('@strapi/content-manager/strapi-admin');
14
+ require('react-redux');
15
+ require('styled-components');
16
+ require('react-dnd');
17
+
18
+ function _interopNamespaceDefault(e) {
19
+ var n = Object.create(null);
20
+ if (e) {
21
+ Object.keys(e).forEach(function (k) {
22
+ if (k !== 'default') {
23
+ var d = Object.getOwnPropertyDescriptor(e, k);
24
+ Object.defineProperty(n, k, d.get ? d : {
25
+ enumerable: true,
26
+ get: function () { return e[k]; }
27
+ });
28
+ }
29
+ });
30
+ }
31
+ n.default = e;
32
+ return Object.freeze(n);
33
+ }
34
+
35
+ var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
36
+
37
+ const ReviewWorkflowsListView = ()=>{
38
+ const { formatMessage } = reactIntl.useIntl();
39
+ const navigate = reactRouterDom.useNavigate();
40
+ const { trackUsage } = strapiAdmin.useTracking();
41
+ const [workflowToDelete, setWorkflowToDelete] = React__namespace.useState(null);
42
+ const [showLimitModal, setShowLimitModal] = React__namespace.useState(false);
43
+ const { data, isLoading: isLoadingModels } = index.useGetContentTypesQuery();
44
+ const { meta, workflows, isLoading, delete: deleteAction } = Layout.useReviewWorkflows();
45
+ const { getFeature, isLoading: isLicenseLoading } = ee.useLicenseLimits();
46
+ const permissions = index.useTypedSelector((state)=>state.admin_app.permissions.settings?.['review-workflows']);
47
+ const { allowedActions: { canCreate, canRead, canUpdate, canDelete } } = strapiAdmin.useRBAC(permissions);
48
+ const limits = getFeature('review-workflows');
49
+ const numberOfWorkflows = limits?.[index.CHARGEBEE_WORKFLOW_ENTITLEMENT_NAME];
50
+ const handleDeleteWorkflow = (workflowId)=>{
51
+ setWorkflowToDelete(workflowId);
52
+ };
53
+ const toggleConfirmDeleteDialog = ()=>{
54
+ setWorkflowToDelete(null);
55
+ };
56
+ const handleConfirmDeleteDialog = async ()=>{
57
+ if (!workflowToDelete) return;
58
+ await deleteAction(workflowToDelete);
59
+ setWorkflowToDelete(null);
60
+ };
61
+ const handleCreateClick = (event)=>{
62
+ event.preventDefault();
63
+ /**
64
+ * If the current license has a workflow limit:
65
+ * check if the total count of workflows exceeds that limit. If so,
66
+ * prevent the navigation and show the limits overlay.
67
+ *
68
+ * If the current license does not have a limit (e.g. offline license):
69
+ * allow the user to navigate to the create-view. In case they exceed the
70
+ * current hard-limit of 200 they will see an error thrown by the API.
71
+ */ if (numberOfWorkflows && meta && meta?.workflowCount >= parseInt(numberOfWorkflows, 10)) {
72
+ event.preventDefault();
73
+ setShowLimitModal(true);
74
+ } else {
75
+ navigate('create');
76
+ trackUsage('willCreateWorkflow');
77
+ }
78
+ };
79
+ /**
80
+ * If the current license has a limit:
81
+ * check if the total count of workflows or stages exceeds that limit and display
82
+ * the limits modal on page load. It can be closed by the user, but the
83
+ * API will throw an error in case they try to create a new workflow or update the
84
+ * stages.
85
+ *
86
+ * If the current license does not have a limit (e.g. offline license):
87
+ * do nothing (for now). In case they are trying to create the 201st workflow/ stage
88
+ * the API will throw an error.
89
+ *
90
+ */ React__namespace.useEffect(()=>{
91
+ if (!isLoading && !isLicenseLoading) {
92
+ if (numberOfWorkflows && meta && meta?.workflowCount > parseInt(numberOfWorkflows, 10)) {
93
+ setShowLimitModal(true);
94
+ }
95
+ }
96
+ }, [
97
+ isLicenseLoading,
98
+ isLoading,
99
+ meta,
100
+ meta?.workflowCount,
101
+ numberOfWorkflows
102
+ ]);
103
+ const headers = [
104
+ {
105
+ label: formatMessage({
106
+ id: 'Settings.review-workflows.list.page.list.column.name.title',
107
+ defaultMessage: 'Name'
108
+ }),
109
+ name: 'name'
110
+ },
111
+ {
112
+ label: formatMessage({
113
+ id: 'Settings.review-workflows.list.page.list.column.stages.title',
114
+ defaultMessage: 'Stages'
115
+ }),
116
+ name: 'stages'
117
+ },
118
+ {
119
+ label: formatMessage({
120
+ id: 'Settings.review-workflows.list.page.list.column.contentTypes.title',
121
+ defaultMessage: 'Content Types'
122
+ }),
123
+ name: 'content-types'
124
+ }
125
+ ];
126
+ if (isLoading || isLoadingModels) {
127
+ return /*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.Page.Loading, {});
128
+ }
129
+ const contentTypes = Object.values(data ?? {}).reduce((acc, curr)=>{
130
+ acc.push(...curr);
131
+ return acc;
132
+ }, []);
133
+ return /*#__PURE__*/ jsxRuntime.jsxs(jsxRuntime.Fragment, {
134
+ children: [
135
+ /*#__PURE__*/ jsxRuntime.jsx(Layout.Header, {
136
+ primaryAction: canCreate ? /*#__PURE__*/ jsxRuntime.jsx(designSystem.LinkButton, {
137
+ startIcon: /*#__PURE__*/ jsxRuntime.jsx(icons.Plus, {}),
138
+ size: "S",
139
+ tag: reactRouterDom.NavLink,
140
+ to: "create",
141
+ onClick: handleCreateClick,
142
+ children: formatMessage({
143
+ id: 'Settings.review-workflows.list.page.create',
144
+ defaultMessage: 'Create new workflow'
145
+ })
146
+ }) : null,
147
+ subtitle: formatMessage({
148
+ id: 'Settings.review-workflows.list.page.subtitle',
149
+ defaultMessage: 'Manage your content review process'
150
+ }),
151
+ title: formatMessage({
152
+ id: 'Settings.review-workflows.list.page.title',
153
+ defaultMessage: 'Review Workflows'
154
+ })
155
+ }),
156
+ /*#__PURE__*/ jsxRuntime.jsxs(Layout.Root, {
157
+ children: [
158
+ /*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.Table.Root, {
159
+ isLoading: isLoading,
160
+ rows: workflows,
161
+ footer: canCreate ? /*#__PURE__*/ jsxRuntime.jsx(designSystem.TFooter, {
162
+ cursor: "pointer",
163
+ icon: /*#__PURE__*/ jsxRuntime.jsx(icons.Plus, {}),
164
+ onClick: handleCreateClick,
165
+ children: formatMessage({
166
+ id: 'Settings.review-workflows.list.page.create',
167
+ defaultMessage: 'Create new workflow'
168
+ })
169
+ }) : null,
170
+ headers: headers,
171
+ children: /*#__PURE__*/ jsxRuntime.jsxs(strapiAdmin.Table.Content, {
172
+ children: [
173
+ /*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.Table.Head, {
174
+ children: headers.map((head)=>/*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.Table.HeaderCell, {
175
+ ...head
176
+ }, head.name))
177
+ }),
178
+ /*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.Table.Body, {
179
+ children: workflows.map((workflow)=>/*#__PURE__*/ jsxRuntime.jsxs(strapiAdmin.Table.Row, {
180
+ onClick: ()=>{
181
+ navigate(`${workflow.id}`);
182
+ },
183
+ children: [
184
+ /*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.Table.Cell, {
185
+ width: "25rem",
186
+ children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
187
+ textColor: "neutral800",
188
+ fontWeight: "bold",
189
+ ellipsis: true,
190
+ children: workflow.name
191
+ })
192
+ }),
193
+ /*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.Table.Cell, {
194
+ children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
195
+ textColor: "neutral800",
196
+ children: workflow.stages.length
197
+ })
198
+ }),
199
+ /*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.Table.Cell, {
200
+ children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
201
+ textColor: "neutral800",
202
+ children: workflow.contentTypes.map((uid)=>{
203
+ const contentType = contentTypes.find((contentType)=>contentType.uid === uid);
204
+ return contentType?.info.displayName ?? '';
205
+ }).join(', ')
206
+ })
207
+ }),
208
+ /*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.Table.Cell, {
209
+ children: /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Flex, {
210
+ alignItems: "center",
211
+ justifyContent: "end",
212
+ children: [
213
+ canRead || canUpdate ? /*#__PURE__*/ jsxRuntime.jsx(designSystem.IconButton, {
214
+ tag: reactRouterDom.Link,
215
+ to: workflow.id.toString(),
216
+ label: formatMessage({
217
+ id: 'Settings.review-workflows.list.page.list.column.actions.edit.label',
218
+ defaultMessage: 'Edit {name}'
219
+ }, {
220
+ name: workflow.name
221
+ }),
222
+ variant: "ghost",
223
+ children: /*#__PURE__*/ jsxRuntime.jsx(icons.Pencil, {})
224
+ }) : null,
225
+ workflows.length > 1 && canDelete ? /*#__PURE__*/ jsxRuntime.jsx(designSystem.IconButton, {
226
+ withTooltip: false,
227
+ label: formatMessage({
228
+ id: 'Settings.review-workflows.list.page.list.column.actions.delete.label',
229
+ defaultMessage: 'Delete {name}'
230
+ }, {
231
+ name: 'Default workflow'
232
+ }),
233
+ variant: "ghost",
234
+ onClick: (e)=>{
235
+ e.stopPropagation();
236
+ handleDeleteWorkflow(String(workflow.id));
237
+ },
238
+ children: /*#__PURE__*/ jsxRuntime.jsx(icons.Trash, {})
239
+ }) : null
240
+ ]
241
+ })
242
+ })
243
+ ]
244
+ }, workflow.id))
245
+ })
246
+ ]
247
+ })
248
+ }),
249
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Dialog.Root, {
250
+ open: !!workflowToDelete,
251
+ onOpenChange: toggleConfirmDeleteDialog,
252
+ children: /*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.ConfirmDialog, {
253
+ onConfirm: handleConfirmDeleteDialog,
254
+ children: formatMessage({
255
+ id: 'Settings.review-workflows.list.page.delete.confirm.body',
256
+ defaultMessage: 'If you remove this worfklow, all stage-related information will be removed for this content-type. Are you sure you want to remove it?'
257
+ })
258
+ })
259
+ }),
260
+ /*#__PURE__*/ jsxRuntime.jsxs(index.LimitsModal.Root, {
261
+ open: showLimitModal,
262
+ onOpenChange: ()=>setShowLimitModal(false),
263
+ children: [
264
+ /*#__PURE__*/ jsxRuntime.jsx(index.LimitsModal.Title, {
265
+ children: formatMessage({
266
+ id: 'Settings.review-workflows.list.page.workflows.limit.title',
267
+ defaultMessage: 'You’ve reached the limit of workflows in your plan'
268
+ })
269
+ }),
270
+ /*#__PURE__*/ jsxRuntime.jsx(index.LimitsModal.Body, {
271
+ children: formatMessage({
272
+ id: 'Settings.review-workflows.list.page.workflows.limit.body',
273
+ defaultMessage: 'Delete a workflow or contact Sales to enable more workflows.'
274
+ })
275
+ })
276
+ ]
277
+ })
278
+ ]
279
+ })
280
+ ]
281
+ });
282
+ };
283
+ const ProtectedListPage = ()=>{
284
+ const permissions = index.useTypedSelector((state)=>state.admin_app.permissions.settings?.['review-workflows']?.main);
285
+ return /*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.Page.Protect, {
286
+ permissions: permissions,
287
+ children: /*#__PURE__*/ jsxRuntime.jsx(ReviewWorkflowsListView, {})
288
+ });
289
+ };
290
+
291
+ exports.ProtectedListPage = ProtectedListPage;
292
+ exports.ReviewWorkflowsListView = ReviewWorkflowsListView;
293
+ //# sourceMappingURL=index-DZpcSUvc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-DZpcSUvc.js","sources":["../../../admin/src/routes/settings/index.tsx"],"sourcesContent":["/* eslint-disable check-file/no-index */\n/* eslint-disable check-file/filename-naming-convention */\nimport * as React from 'react';\n\nimport { Page, useTracking, ConfirmDialog, useRBAC, Table } from '@strapi/admin/strapi-admin';\nimport { useLicenseLimits } from '@strapi/admin/strapi-admin/ee';\nimport { Flex, IconButton, TFooter, Typography, LinkButton, Dialog } from '@strapi/design-system';\nimport { Pencil, Plus, Trash } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { NavLink, Link, useNavigate } from 'react-router-dom';\n\nimport { LimitsModal } from '../../components/LimitsModal';\nimport { CHARGEBEE_WORKFLOW_ENTITLEMENT_NAME } from '../../constants';\nimport { useTypedSelector } from '../../modules/hooks';\nimport { ContentType, useGetContentTypesQuery } from '../../services/content-manager';\n\nimport * as Layout from './components/Layout';\nimport { useReviewWorkflows } from './hooks/useReviewWorkflows';\n\nexport const ReviewWorkflowsListView = () => {\n const { formatMessage } = useIntl();\n const navigate = useNavigate();\n const { trackUsage } = useTracking();\n const [workflowToDelete, setWorkflowToDelete] = React.useState<string | null>(null);\n const [showLimitModal, setShowLimitModal] = React.useState<boolean>(false);\n const { data, isLoading: isLoadingModels } = useGetContentTypesQuery();\n const { meta, workflows, isLoading, delete: deleteAction } = useReviewWorkflows();\n const { getFeature, isLoading: isLicenseLoading } = useLicenseLimits();\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['review-workflows']\n );\n const {\n allowedActions: { canCreate, canRead, canUpdate, canDelete },\n } = useRBAC(permissions);\n\n const limits = getFeature('review-workflows');\n const numberOfWorkflows = limits?.[CHARGEBEE_WORKFLOW_ENTITLEMENT_NAME] as string;\n\n const handleDeleteWorkflow = (workflowId: string) => {\n setWorkflowToDelete(workflowId);\n };\n\n const toggleConfirmDeleteDialog = () => {\n setWorkflowToDelete(null);\n };\n\n const handleConfirmDeleteDialog = async () => {\n if (!workflowToDelete) return;\n\n await deleteAction(workflowToDelete);\n\n setWorkflowToDelete(null);\n };\n\n const handleCreateClick: React.MouseEventHandler<HTMLAnchorElement> &\n ((event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void) = (event) => {\n event.preventDefault();\n /**\n * If the current license has a workflow limit:\n * check if the total count of workflows exceeds that limit. If so,\n * prevent the navigation and show the limits overlay.\n *\n * If the current license does not have a limit (e.g. offline license):\n * allow the user to navigate to the create-view. In case they exceed the\n * current hard-limit of 200 they will see an error thrown by the API.\n */\n\n if (numberOfWorkflows && meta && meta?.workflowCount >= parseInt(numberOfWorkflows, 10)) {\n event.preventDefault();\n setShowLimitModal(true);\n } else {\n navigate('create');\n trackUsage('willCreateWorkflow');\n }\n };\n\n /**\n * If the current license has a limit:\n * check if the total count of workflows or stages exceeds that limit and display\n * the limits modal on page load. It can be closed by the user, but the\n * API will throw an error in case they try to create a new workflow or update the\n * stages.\n *\n * If the current license does not have a limit (e.g. offline license):\n * do nothing (for now). In case they are trying to create the 201st workflow/ stage\n * the API will throw an error.\n *\n */\n React.useEffect(() => {\n if (!isLoading && !isLicenseLoading) {\n if (numberOfWorkflows && meta && meta?.workflowCount > parseInt(numberOfWorkflows, 10)) {\n setShowLimitModal(true);\n }\n }\n }, [isLicenseLoading, isLoading, meta, meta?.workflowCount, numberOfWorkflows]);\n\n const headers = [\n {\n label: formatMessage({\n id: 'Settings.review-workflows.list.page.list.column.name.title',\n defaultMessage: 'Name',\n }),\n name: 'name',\n },\n {\n label: formatMessage({\n id: 'Settings.review-workflows.list.page.list.column.stages.title',\n defaultMessage: 'Stages',\n }),\n name: 'stages',\n },\n {\n label: formatMessage({\n id: 'Settings.review-workflows.list.page.list.column.contentTypes.title',\n defaultMessage: 'Content Types',\n }),\n name: 'content-types',\n },\n ];\n\n if (isLoading || isLoadingModels) {\n return <Page.Loading />;\n }\n\n const contentTypes = Object.values(data ?? {}).reduce<ContentType[]>((acc, curr) => {\n acc.push(...curr);\n return acc;\n }, []);\n\n return (\n <>\n <Layout.Header\n primaryAction={\n canCreate ? (\n <LinkButton\n startIcon={<Plus />}\n size=\"S\"\n tag={NavLink}\n to=\"create\"\n onClick={handleCreateClick}\n >\n {formatMessage({\n id: 'Settings.review-workflows.list.page.create',\n defaultMessage: 'Create new workflow',\n })}\n </LinkButton>\n ) : null\n }\n subtitle={formatMessage({\n id: 'Settings.review-workflows.list.page.subtitle',\n defaultMessage: 'Manage your content review process',\n })}\n title={formatMessage({\n id: 'Settings.review-workflows.list.page.title',\n defaultMessage: 'Review Workflows',\n })}\n />\n\n <Layout.Root>\n <Table.Root\n isLoading={isLoading}\n rows={workflows}\n footer={\n canCreate ? (\n <TFooter cursor=\"pointer\" icon={<Plus />} onClick={handleCreateClick}>\n {formatMessage({\n id: 'Settings.review-workflows.list.page.create',\n defaultMessage: 'Create new workflow',\n })}\n </TFooter>\n ) : null\n }\n headers={headers}\n >\n <Table.Content>\n <Table.Head>\n {headers.map((head) => (\n <Table.HeaderCell key={head.name} {...head} />\n ))}\n </Table.Head>\n\n <Table.Body>\n {workflows.map((workflow) => (\n <Table.Row\n onClick={() => {\n navigate(`${workflow.id}`);\n }}\n key={workflow.id}\n >\n <Table.Cell width=\"25rem\">\n <Typography textColor=\"neutral800\" fontWeight=\"bold\" ellipsis>\n {workflow.name}\n </Typography>\n </Table.Cell>\n <Table.Cell>\n <Typography textColor=\"neutral800\">{workflow.stages.length}</Typography>\n </Table.Cell>\n <Table.Cell>\n <Typography textColor=\"neutral800\">\n {workflow.contentTypes\n .map((uid: string) => {\n const contentType = contentTypes.find(\n (contentType) => contentType.uid === uid\n );\n\n return contentType?.info.displayName ?? '';\n })\n .join(', ')}\n </Typography>\n </Table.Cell>\n <Table.Cell>\n <Flex alignItems=\"center\" justifyContent=\"end\">\n {canRead || canUpdate ? (\n <IconButton\n tag={Link}\n to={workflow.id.toString()}\n label={formatMessage(\n {\n id: 'Settings.review-workflows.list.page.list.column.actions.edit.label',\n defaultMessage: 'Edit {name}',\n },\n { name: workflow.name }\n )}\n variant=\"ghost\"\n >\n <Pencil />\n </IconButton>\n ) : null}\n {workflows.length > 1 && canDelete ? (\n <IconButton\n withTooltip={false}\n label={formatMessage(\n {\n id: 'Settings.review-workflows.list.page.list.column.actions.delete.label',\n defaultMessage: 'Delete {name}',\n },\n { name: 'Default workflow' }\n )}\n variant=\"ghost\"\n onClick={(e) => {\n e.stopPropagation();\n handleDeleteWorkflow(String(workflow.id));\n }}\n >\n <Trash />\n </IconButton>\n ) : null}\n </Flex>\n </Table.Cell>\n </Table.Row>\n ))}\n </Table.Body>\n </Table.Content>\n </Table.Root>\n\n <Dialog.Root open={!!workflowToDelete} onOpenChange={toggleConfirmDeleteDialog}>\n <ConfirmDialog onConfirm={handleConfirmDeleteDialog}>\n {formatMessage({\n id: 'Settings.review-workflows.list.page.delete.confirm.body',\n defaultMessage:\n 'If you remove this worfklow, all stage-related information will be removed for this content-type. Are you sure you want to remove it?',\n })}\n </ConfirmDialog>\n </Dialog.Root>\n\n <LimitsModal.Root open={showLimitModal} onOpenChange={() => setShowLimitModal(false)}>\n <LimitsModal.Title>\n {formatMessage({\n id: 'Settings.review-workflows.list.page.workflows.limit.title',\n defaultMessage: 'You’ve reached the limit of workflows in your plan',\n })}\n </LimitsModal.Title>\n\n <LimitsModal.Body>\n {formatMessage({\n id: 'Settings.review-workflows.list.page.workflows.limit.body',\n defaultMessage: 'Delete a workflow or contact Sales to enable more workflows.',\n })}\n </LimitsModal.Body>\n </LimitsModal.Root>\n </Layout.Root>\n </>\n );\n};\n\nconst ProtectedListPage = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['review-workflows']?.main\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <ReviewWorkflowsListView />\n </Page.Protect>\n );\n};\n\nexport { ProtectedListPage };\n"],"names":["ReviewWorkflowsListView","formatMessage","useIntl","navigate","useNavigate","trackUsage","useTracking","workflowToDelete","setWorkflowToDelete","React","useState","showLimitModal","setShowLimitModal","data","isLoading","isLoadingModels","useGetContentTypesQuery","meta","workflows","delete","deleteAction","useReviewWorkflows","getFeature","isLicenseLoading","useLicenseLimits","permissions","useTypedSelector","state","admin_app","settings","allowedActions","canCreate","canRead","canUpdate","canDelete","useRBAC","limits","numberOfWorkflows","CHARGEBEE_WORKFLOW_ENTITLEMENT_NAME","handleDeleteWorkflow","workflowId","toggleConfirmDeleteDialog","handleConfirmDeleteDialog","handleCreateClick","event","preventDefault","workflowCount","parseInt","useEffect","headers","label","id","defaultMessage","name","_jsx","Page","Loading","contentTypes","Object","values","reduce","acc","curr","push","_jsxs","_Fragment","Layout","primaryAction","LinkButton","startIcon","Plus","size","tag","NavLink","to","onClick","subtitle","title","Table","Root","rows","footer","TFooter","cursor","icon","Content","Head","map","head","HeaderCell","Body","workflow","Row","Cell","width","Typography","textColor","fontWeight","ellipsis","stages","length","uid","contentType","find","info","displayName","join","Flex","alignItems","justifyContent","IconButton","Link","toString","variant","Pencil","withTooltip","e","stopPropagation","String","Trash","Dialog","open","onOpenChange","ConfirmDialog","onConfirm","LimitsModal","Title","ProtectedListPage","main","Protect"],"mappings":"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"}
@@ -0,0 +1,53 @@
1
+ import { jsx, jsxs } from 'react/jsx-runtime';
2
+ import { Layouts } from '@strapi/admin/strapi-admin';
3
+ import { Main, Box, EmptyStateLayout, LinkButton } from '@strapi/design-system';
4
+ import { ExternalLink } from '@strapi/icons';
5
+ import { EmptyPermissions } from '@strapi/icons/symbols';
6
+ import { useIntl } from 'react-intl';
7
+
8
+ const PurchaseReviewWorkflows = ()=>{
9
+ const { formatMessage } = useIntl();
10
+ return /*#__PURE__*/ jsx(Layouts.Root, {
11
+ children: /*#__PURE__*/ jsxs(Main, {
12
+ children: [
13
+ /*#__PURE__*/ jsx(Layouts.Header, {
14
+ title: formatMessage({
15
+ id: 'Settings.review-workflows.list.page.title',
16
+ defaultMessage: 'Review Workflows'
17
+ }),
18
+ subtitle: formatMessage({
19
+ id: 'Settings.review-workflows.list.page.subtitle',
20
+ defaultMessage: 'Manage your content review process'
21
+ })
22
+ }),
23
+ /*#__PURE__*/ jsx(Box, {
24
+ paddingLeft: 10,
25
+ paddingRight: 10,
26
+ children: /*#__PURE__*/ jsx(EmptyStateLayout, {
27
+ icon: /*#__PURE__*/ jsx(EmptyPermissions, {
28
+ width: "16rem"
29
+ }),
30
+ content: formatMessage({
31
+ id: 'Settings.review-workflows.not-available',
32
+ defaultMessage: 'Review Workflows is only available as part of a paid plan. Upgrade to create and manage workflows.'
33
+ }),
34
+ action: /*#__PURE__*/ jsx(LinkButton, {
35
+ variant: "default",
36
+ endIcon: /*#__PURE__*/ jsx(ExternalLink, {}),
37
+ href: "https://strapi.io/features/review-workflow?utm_campaign=In-Product-CTA&utm_source=Review%20Workflows",
38
+ isExternal: true,
39
+ target: "_blank",
40
+ children: formatMessage({
41
+ id: 'global.learn-more',
42
+ defaultMessage: 'Learn more'
43
+ })
44
+ })
45
+ })
46
+ })
47
+ ]
48
+ })
49
+ });
50
+ };
51
+
52
+ export { PurchaseReviewWorkflows };
53
+ //# sourceMappingURL=purchase-review-workflows-CEP8kvxZ.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"purchase-review-workflows-CEP8kvxZ.mjs","sources":["../../../admin/src/routes/purchase-review-workflows.tsx"],"sourcesContent":["import { Layouts } from '@strapi/admin/strapi-admin';\nimport { Box, Main, EmptyStateLayout, LinkButton } from '@strapi/design-system';\nimport { ExternalLink } from '@strapi/icons';\nimport { EmptyPermissions } from '@strapi/icons/symbols';\nimport { useIntl } from 'react-intl';\n\nconst PurchaseReviewWorkflows = () => {\n const { formatMessage } = useIntl();\n\n return (\n <Layouts.Root>\n <Main>\n <Layouts.Header\n title={formatMessage({\n id: 'Settings.review-workflows.list.page.title',\n defaultMessage: 'Review Workflows',\n })}\n subtitle={formatMessage({\n id: 'Settings.review-workflows.list.page.subtitle',\n defaultMessage: 'Manage your content review process',\n })}\n />\n <Box paddingLeft={10} paddingRight={10}>\n <EmptyStateLayout\n icon={<EmptyPermissions width=\"16rem\" />}\n content={formatMessage({\n id: 'Settings.review-workflows.not-available',\n defaultMessage:\n 'Review Workflows is only available as part of a paid plan. Upgrade to create and manage workflows.',\n })}\n action={\n <LinkButton\n variant=\"default\"\n endIcon={<ExternalLink />}\n href=\"https://strapi.io/features/review-workflow?utm_campaign=In-Product-CTA&utm_source=Review%20Workflows\"\n isExternal\n target=\"_blank\"\n >\n {formatMessage({\n id: 'global.learn-more',\n defaultMessage: 'Learn more',\n })}\n </LinkButton>\n }\n />\n </Box>\n </Main>\n </Layouts.Root>\n );\n};\n\nexport { PurchaseReviewWorkflows };\n"],"names":["PurchaseReviewWorkflows","formatMessage","useIntl","_jsx","Layouts","Root","_jsxs","Main","Header","title","id","defaultMessage","subtitle","Box","paddingLeft","paddingRight","EmptyStateLayout","icon","EmptyPermissions","width","content","action","LinkButton","variant","endIcon","ExternalLink","href","isExternal","target"],"mappings":";;;;;;;AAMA,MAAMA,uBAA0B,GAAA,IAAA;IAC9B,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;IAE1B,qBACEC,GAAA,CAACC,QAAQC,IAAI,EAAA;AACX,QAAA,QAAA,gBAAAC,IAACC,CAAAA,IAAAA,EAAAA;;AACC,8BAAAJ,GAAA,CAACC,QAAQI,MAAM,EAAA;AACbC,oBAAAA,KAAAA,EAAOR,aAAc,CAAA;wBACnBS,EAAI,EAAA,2CAAA;wBACJC,cAAgB,EAAA;AAClB,qBAAA,CAAA;AACAC,oBAAAA,QAAAA,EAAUX,aAAc,CAAA;wBACtBS,EAAI,EAAA,8CAAA;wBACJC,cAAgB,EAAA;AAClB,qBAAA;;8BAEFR,GAACU,CAAAA,GAAAA,EAAAA;oBAAIC,WAAa,EAAA,EAAA;oBAAIC,YAAc,EAAA,EAAA;AAClC,oBAAA,QAAA,gBAAAZ,GAACa,CAAAA,gBAAAA,EAAAA;AACCC,wBAAAA,IAAAA,gBAAMd,GAACe,CAAAA,gBAAAA,EAAAA;4BAAiBC,KAAM,EAAA;;AAC9BC,wBAAAA,OAAAA,EAASnB,aAAc,CAAA;4BACrBS,EAAI,EAAA,yCAAA;4BACJC,cACE,EAAA;AACJ,yBAAA,CAAA;AACAU,wBAAAA,MAAAA,gBACElB,GAACmB,CAAAA,UAAAA,EAAAA;4BACCC,OAAQ,EAAA,SAAA;AACRC,4BAAAA,OAAAA,gBAASrB,GAACsB,CAAAA,YAAAA,EAAAA,EAAAA,CAAAA;4BACVC,IAAK,EAAA,sGAAA;4BACLC,UAAU,EAAA,IAAA;4BACVC,MAAO,EAAA,QAAA;sCAEN3B,aAAc,CAAA;gCACbS,EAAI,EAAA,mBAAA;gCACJC,cAAgB,EAAA;AAClB,6BAAA;;;;;;;AAQhB;;;;"}
@@ -0,0 +1,55 @@
1
+ 'use strict';
2
+
3
+ var jsxRuntime = require('react/jsx-runtime');
4
+ var strapiAdmin = require('@strapi/admin/strapi-admin');
5
+ var designSystem = require('@strapi/design-system');
6
+ var icons = require('@strapi/icons');
7
+ var symbols = require('@strapi/icons/symbols');
8
+ var reactIntl = require('react-intl');
9
+
10
+ const PurchaseReviewWorkflows = ()=>{
11
+ const { formatMessage } = reactIntl.useIntl();
12
+ return /*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.Layouts.Root, {
13
+ children: /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Main, {
14
+ children: [
15
+ /*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.Layouts.Header, {
16
+ title: formatMessage({
17
+ id: 'Settings.review-workflows.list.page.title',
18
+ defaultMessage: 'Review Workflows'
19
+ }),
20
+ subtitle: formatMessage({
21
+ id: 'Settings.review-workflows.list.page.subtitle',
22
+ defaultMessage: 'Manage your content review process'
23
+ })
24
+ }),
25
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Box, {
26
+ paddingLeft: 10,
27
+ paddingRight: 10,
28
+ children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.EmptyStateLayout, {
29
+ icon: /*#__PURE__*/ jsxRuntime.jsx(symbols.EmptyPermissions, {
30
+ width: "16rem"
31
+ }),
32
+ content: formatMessage({
33
+ id: 'Settings.review-workflows.not-available',
34
+ defaultMessage: 'Review Workflows is only available as part of a paid plan. Upgrade to create and manage workflows.'
35
+ }),
36
+ action: /*#__PURE__*/ jsxRuntime.jsx(designSystem.LinkButton, {
37
+ variant: "default",
38
+ endIcon: /*#__PURE__*/ jsxRuntime.jsx(icons.ExternalLink, {}),
39
+ href: "https://strapi.io/features/review-workflow?utm_campaign=In-Product-CTA&utm_source=Review%20Workflows",
40
+ isExternal: true,
41
+ target: "_blank",
42
+ children: formatMessage({
43
+ id: 'global.learn-more',
44
+ defaultMessage: 'Learn more'
45
+ })
46
+ })
47
+ })
48
+ })
49
+ ]
50
+ })
51
+ });
52
+ };
53
+
54
+ exports.PurchaseReviewWorkflows = PurchaseReviewWorkflows;
55
+ //# sourceMappingURL=purchase-review-workflows-Drlxm8yP.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"purchase-review-workflows-Drlxm8yP.js","sources":["../../../admin/src/routes/purchase-review-workflows.tsx"],"sourcesContent":["import { Layouts } from '@strapi/admin/strapi-admin';\nimport { Box, Main, EmptyStateLayout, LinkButton } from '@strapi/design-system';\nimport { ExternalLink } from '@strapi/icons';\nimport { EmptyPermissions } from '@strapi/icons/symbols';\nimport { useIntl } from 'react-intl';\n\nconst PurchaseReviewWorkflows = () => {\n const { formatMessage } = useIntl();\n\n return (\n <Layouts.Root>\n <Main>\n <Layouts.Header\n title={formatMessage({\n id: 'Settings.review-workflows.list.page.title',\n defaultMessage: 'Review Workflows',\n })}\n subtitle={formatMessage({\n id: 'Settings.review-workflows.list.page.subtitle',\n defaultMessage: 'Manage your content review process',\n })}\n />\n <Box paddingLeft={10} paddingRight={10}>\n <EmptyStateLayout\n icon={<EmptyPermissions width=\"16rem\" />}\n content={formatMessage({\n id: 'Settings.review-workflows.not-available',\n defaultMessage:\n 'Review Workflows is only available as part of a paid plan. Upgrade to create and manage workflows.',\n })}\n action={\n <LinkButton\n variant=\"default\"\n endIcon={<ExternalLink />}\n href=\"https://strapi.io/features/review-workflow?utm_campaign=In-Product-CTA&utm_source=Review%20Workflows\"\n isExternal\n target=\"_blank\"\n >\n {formatMessage({\n id: 'global.learn-more',\n defaultMessage: 'Learn more',\n })}\n </LinkButton>\n }\n />\n </Box>\n </Main>\n </Layouts.Root>\n );\n};\n\nexport { PurchaseReviewWorkflows };\n"],"names":["PurchaseReviewWorkflows","formatMessage","useIntl","_jsx","Layouts","Root","_jsxs","Main","Header","title","id","defaultMessage","subtitle","Box","paddingLeft","paddingRight","EmptyStateLayout","icon","EmptyPermissions","width","content","action","LinkButton","variant","endIcon","ExternalLink","href","isExternal","target"],"mappings":";;;;;;;;;AAMA,MAAMA,uBAA0B,GAAA,IAAA;IAC9B,MAAM,EAAEC,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;IAE1B,qBACEC,cAAA,CAACC,oBAAQC,IAAI,EAAA;AACX,QAAA,QAAA,gBAAAC,eAACC,CAAAA,iBAAAA,EAAAA;;AACC,8BAAAJ,cAAA,CAACC,oBAAQI,MAAM,EAAA;AACbC,oBAAAA,KAAAA,EAAOR,aAAc,CAAA;wBACnBS,EAAI,EAAA,2CAAA;wBACJC,cAAgB,EAAA;AAClB,qBAAA,CAAA;AACAC,oBAAAA,QAAAA,EAAUX,aAAc,CAAA;wBACtBS,EAAI,EAAA,8CAAA;wBACJC,cAAgB,EAAA;AAClB,qBAAA;;8BAEFR,cAACU,CAAAA,gBAAAA,EAAAA;oBAAIC,WAAa,EAAA,EAAA;oBAAIC,YAAc,EAAA,EAAA;AAClC,oBAAA,QAAA,gBAAAZ,cAACa,CAAAA,6BAAAA,EAAAA;AACCC,wBAAAA,IAAAA,gBAAMd,cAACe,CAAAA,wBAAAA,EAAAA;4BAAiBC,KAAM,EAAA;;AAC9BC,wBAAAA,OAAAA,EAASnB,aAAc,CAAA;4BACrBS,EAAI,EAAA,yCAAA;4BACJC,cACE,EAAA;AACJ,yBAAA,CAAA;AACAU,wBAAAA,MAAAA,gBACElB,cAACmB,CAAAA,uBAAAA,EAAAA;4BACCC,OAAQ,EAAA,SAAA;AACRC,4BAAAA,OAAAA,gBAASrB,cAACsB,CAAAA,kBAAAA,EAAAA,EAAAA,CAAAA;4BACVC,IAAK,EAAA,sGAAA;4BACLC,UAAU,EAAA,IAAA;4BACVC,MAAO,EAAA,QAAA;sCAEN3B,aAAc,CAAA;gCACbS,EAAI,EAAA,mBAAA;gCACJC,cAAgB,EAAA;AAClB,6BAAA;;;;;;;AAQhB;;;;"}
@@ -0,0 +1,30 @@
1
+ 'use strict';
2
+
3
+ var jsxRuntime = require('react/jsx-runtime');
4
+ var React = require('react');
5
+ var reactRouterDom = require('react-router-dom');
6
+
7
+ const ProtectedListPage = /*#__PURE__*/ React.lazy(()=>Promise.resolve().then(function () { return require('./index-DZpcSUvc.js'); }).then((mod)=>({
8
+ default: mod.ProtectedListPage
9
+ })));
10
+ const ProtectedEditPage = /*#__PURE__*/ React.lazy(()=>Promise.resolve().then(function () { return require('./id-DnRGfGvc.js'); }).then((mod)=>({
11
+ default: mod.ProtectedEditPage
12
+ })));
13
+ const routes = [
14
+ {
15
+ path: '/',
16
+ Component: ProtectedListPage
17
+ },
18
+ {
19
+ path: ':id',
20
+ Component: ProtectedEditPage
21
+ }
22
+ ];
23
+ const Router = ()=>/*#__PURE__*/ jsxRuntime.jsx(reactRouterDom.Routes, {
24
+ children: routes.map((route)=>/*#__PURE__*/ jsxRuntime.jsx(reactRouterDom.Route, {
25
+ ...route
26
+ }, route.path))
27
+ });
28
+
29
+ exports.Router = Router;
30
+ //# sourceMappingURL=router-CrN8UbpP.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"router-CrN8UbpP.js","sources":["../../../admin/src/router.tsx"],"sourcesContent":["/* eslint-disable check-file/filename-naming-convention */\nimport { lazy } from 'react';\n\nimport { Routes, Route, PathRouteProps } from 'react-router-dom';\n\nconst ProtectedListPage = lazy(() =>\n import('./routes/settings').then((mod) => ({ default: mod.ProtectedListPage }))\n);\nconst ProtectedEditPage = lazy(() =>\n import('./routes/settings/id').then((mod) => ({ default: mod.ProtectedEditPage }))\n);\n\nconst routes: PathRouteProps[] = [\n {\n path: '/',\n Component: ProtectedListPage,\n },\n {\n path: ':id',\n Component: ProtectedEditPage,\n },\n];\n\nconst Router = () => (\n <Routes>\n {routes.map((route) => (\n <Route key={route.path} {...route} />\n ))}\n </Routes>\n);\n\nexport { Router };\n"],"names":["ProtectedListPage","lazy","then","mod","default","ProtectedEditPage","routes","path","Component","Router","_jsx","Routes","map","route","Route"],"mappings":";;;;;;AAKA,MAAMA,iBAAAA,iBAAoBC,UAAK,CAAA,IAC7B,oDAAO,2BAAqBC,IAAI,CAAC,CAACC,GAAAA,IAAS;AAAEC,YAAAA,OAAAA,EAASD,IAAIH;SAAkB,CAAA,CAAA,CAAA;AAE9E,MAAMK,iBAAAA,iBAAoBJ,UAAK,CAAA,IAC7B,oDAAO,wBAAwBC,IAAI,CAAC,CAACC,GAAAA,IAAS;AAAEC,YAAAA,OAAAA,EAASD,IAAIE;SAAkB,CAAA,CAAA,CAAA;AAGjF,MAAMC,MAA2B,GAAA;AAC/B,IAAA;QACEC,IAAM,EAAA,GAAA;QACNC,SAAWR,EAAAA;AACb,KAAA;AACA,IAAA;QACEO,IAAM,EAAA,KAAA;QACNC,SAAWH,EAAAA;AACb;AACD,CAAA;AAEKI,MAAAA,MAAAA,GAAS,kBACbC,cAACC,CAAAA,qBAAAA,EAAAA;AACEL,QAAAA,QAAAA,EAAAA,MAAAA,CAAOM,GAAG,CAAC,CAACC,KAAAA,iBACXH,cAACI,CAAAA,oBAAAA,EAAAA;AAAwB,gBAAA,GAAGD;AAAhBA,aAAAA,EAAAA,KAAAA,CAAMN,IAAI,CAAA;;;;;"}
@@ -0,0 +1,28 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import { lazy } from 'react';
3
+ import { Routes, Route } from 'react-router-dom';
4
+
5
+ const ProtectedListPage = /*#__PURE__*/ lazy(()=>import('./index-BiGArvbK.mjs').then((mod)=>({
6
+ default: mod.ProtectedListPage
7
+ })));
8
+ const ProtectedEditPage = /*#__PURE__*/ lazy(()=>import('./id-LAMc9ydb.mjs').then((mod)=>({
9
+ default: mod.ProtectedEditPage
10
+ })));
11
+ const routes = [
12
+ {
13
+ path: '/',
14
+ Component: ProtectedListPage
15
+ },
16
+ {
17
+ path: ':id',
18
+ Component: ProtectedEditPage
19
+ }
20
+ ];
21
+ const Router = ()=>/*#__PURE__*/ jsx(Routes, {
22
+ children: routes.map((route)=>/*#__PURE__*/ jsx(Route, {
23
+ ...route
24
+ }, route.path))
25
+ });
26
+
27
+ export { Router };
28
+ //# sourceMappingURL=router-Z3AR7XZ7.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"router-Z3AR7XZ7.mjs","sources":["../../../admin/src/router.tsx"],"sourcesContent":["/* eslint-disable check-file/filename-naming-convention */\nimport { lazy } from 'react';\n\nimport { Routes, Route, PathRouteProps } from 'react-router-dom';\n\nconst ProtectedListPage = lazy(() =>\n import('./routes/settings').then((mod) => ({ default: mod.ProtectedListPage }))\n);\nconst ProtectedEditPage = lazy(() =>\n import('./routes/settings/id').then((mod) => ({ default: mod.ProtectedEditPage }))\n);\n\nconst routes: PathRouteProps[] = [\n {\n path: '/',\n Component: ProtectedListPage,\n },\n {\n path: ':id',\n Component: ProtectedEditPage,\n },\n];\n\nconst Router = () => (\n <Routes>\n {routes.map((route) => (\n <Route key={route.path} {...route} />\n ))}\n </Routes>\n);\n\nexport { Router };\n"],"names":["ProtectedListPage","lazy","then","mod","default","ProtectedEditPage","routes","path","Component","Router","_jsx","Routes","map","route","Route"],"mappings":";;;;AAKA,MAAMA,iBAAAA,iBAAoBC,IAAK,CAAA,IAC7B,OAAO,wBAAqBC,IAAI,CAAC,CAACC,GAAAA,IAAS;AAAEC,YAAAA,OAAAA,EAASD,IAAIH;SAAkB,CAAA,CAAA,CAAA;AAE9E,MAAMK,iBAAAA,iBAAoBJ,IAAK,CAAA,IAC7B,OAAO,qBAAwBC,IAAI,CAAC,CAACC,GAAAA,IAAS;AAAEC,YAAAA,OAAAA,EAASD,IAAIE;SAAkB,CAAA,CAAA,CAAA;AAGjF,MAAMC,MAA2B,GAAA;AAC/B,IAAA;QACEC,IAAM,EAAA,GAAA;QACNC,SAAWR,EAAAA;AACb,KAAA;AACA,IAAA;QACEO,IAAM,EAAA,KAAA;QACNC,SAAWH,EAAAA;AACb;AACD,CAAA;AAEKI,MAAAA,MAAAA,GAAS,kBACbC,GAACC,CAAAA,MAAAA,EAAAA;AACEL,QAAAA,QAAAA,EAAAA,MAAAA,CAAOM,GAAG,CAAC,CAACC,KAAAA,iBACXH,GAACI,CAAAA,KAAAA,EAAAA;AAAwB,gBAAA,GAAGD;AAAhBA,aAAAA,EAAAA,KAAAA,CAAMN,IAAI,CAAA;;;;;"}
@@ -1,4 +1,19 @@
1
- "use strict";
2
- const index = require("../_chunks/index-BCUO98DV.js");
1
+ 'use strict';
2
+
3
+ var index = require('./chunks/index-C5IeISWp.js');
4
+ require('@strapi/design-system');
5
+ require('react/jsx-runtime');
6
+ require('@strapi/content-manager/strapi-admin');
7
+ require('react-intl');
8
+ require('react-router-dom');
9
+ require('react');
10
+ require('@strapi/admin/strapi-admin');
11
+ require('react-redux');
12
+ require('@strapi/admin/strapi-admin/ee');
13
+ require('@strapi/icons');
14
+ require('styled-components');
15
+
16
+
17
+
3
18
  module.exports = index.admin;
4
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;"}
@@ -1,5 +1,13 @@
1
- import { h } from "../_chunks/index-CqYVkW3E.mjs";
2
- export {
3
- h as default
4
- };
1
+ export { h as default } from './chunks/index-CSYOmjZt.mjs';
2
+ import '@strapi/design-system';
3
+ import 'react/jsx-runtime';
4
+ import '@strapi/content-manager/strapi-admin';
5
+ import 'react-intl';
6
+ import 'react-router-dom';
7
+ import 'react';
8
+ import '@strapi/admin/strapi-admin';
9
+ import 'react-redux';
10
+ import '@strapi/admin/strapi-admin/ee';
11
+ import '@strapi/icons';
12
+ import 'styled-components';
5
13
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}
@@ -1727,13 +1727,17 @@ declare const useGetWorkflowsQuery: import("@reduxjs/toolkit/dist/query/react/bu
1727
1727
  }) | undefined;
1728
1728
  } & import("@strapi/types/dist/modules/entity-service/params/filters").AbstractAttributesFiltering<"admin::review-workflow">) | undefined;
1729
1729
  } & {
1730
- populate?: string | undefined;
1730
+ populate?: import("@strapi/types/dist/modules/entity-service/params/populate").ArrayNotation<"admin::review-workflow"> | undefined;
1731
1731
  }), import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "ReviewWorkflow" | "ReviewWorkflowStages" | "Document" | "ContentTypeSettings", {
1732
1732
  workflows: GetAll.Response['data'];
1733
1733
  meta?: GetAll.Response['meta'];
1734
1734
  }, "adminApi">>, useCreateWorkflowMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<{
1735
- data: Omit<import("../../../shared/contracts/review-workflows").Workflow, "id" | "createdAt" | "updatedAt">;
1735
+ data: Omit<import("../../../shared/contracts/review-workflows").Workflow, "id" | "createdAt" | "updatedAt"> & {
1736
+ stageRequiredToPublishName?: string | null | undefined;
1737
+ };
1736
1738
  }, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "ReviewWorkflow" | "ReviewWorkflowStages" | "Document" | "ContentTypeSettings", import("../../../shared/contracts/review-workflows").Workflow, "adminApi">>, useDeleteWorkflowMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<Delete.Params, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "ReviewWorkflow" | "ReviewWorkflowStages" | "Document" | "ContentTypeSettings", import("../../../shared/contracts/review-workflows").Workflow, "adminApi">>, useUpdateWorkflowMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<{
1737
- data: Partial<import("../../../shared/contracts/review-workflows").Workflow>;
1739
+ data: Partial<Omit<import("../../../shared/contracts/review-workflows").Workflow, "stageRequiredToPublish">> & {
1740
+ stageRequiredToPublishName?: string | null | undefined;
1741
+ };
1738
1742
  } & Update.Params, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "ReviewWorkflow" | "ReviewWorkflowStages" | "Document" | "ContentTypeSettings", import("../../../shared/contracts/review-workflows").Workflow, "adminApi">>;
1739
1743
  export { useGetWorkflowsQuery, useCreateWorkflowMutation, useDeleteWorkflowMutation, useUpdateWorkflowMutation, type GetWorkflowsParams, };