@strapi/review-workflows 0.0.0-next.990615b2ed4dd2f0589b4fda91418246d7b9450e → 0.0.0-next.9c630ba4333dffc2c1c8150d9226dfbb67b02e09
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/admin/components/Widgets.js +142 -0
- package/dist/admin/components/Widgets.js.map +1 -0
- package/dist/admin/components/Widgets.mjs +140 -0
- package/dist/admin/components/Widgets.mjs.map +1 -0
- package/dist/admin/index.js +26 -2
- package/dist/admin/index.js.map +1 -1
- package/dist/admin/index.mjs +26 -2
- package/dist/admin/index.mjs.map +1 -1
- package/dist/admin/routes/purchase-review-workflows.js +3 -3
- package/dist/admin/routes/purchase-review-workflows.js.map +1 -1
- package/dist/admin/routes/purchase-review-workflows.mjs +5 -5
- package/dist/admin/routes/purchase-review-workflows.mjs.map +1 -1
- package/dist/admin/routes/settings/components/Stages.js +3 -5
- package/dist/admin/routes/settings/components/Stages.js.map +1 -1
- package/dist/admin/routes/settings/components/Stages.mjs +4 -6
- package/dist/admin/routes/settings/components/Stages.mjs.map +1 -1
- package/dist/admin/routes/settings/components/WorkflowAttributes.js +1 -1
- package/dist/admin/routes/settings/components/WorkflowAttributes.js.map +1 -1
- package/dist/admin/routes/settings/components/WorkflowAttributes.mjs +1 -1
- package/dist/admin/routes/settings/components/WorkflowAttributes.mjs.map +1 -1
- package/dist/admin/services/content-manager.js +18 -3
- package/dist/admin/services/content-manager.js.map +1 -1
- package/dist/admin/services/content-manager.mjs +18 -4
- package/dist/admin/services/content-manager.mjs.map +1 -1
- package/dist/admin/src/components/Widgets.d.ts +2 -0
- package/dist/admin/src/services/admin.d.ts +1 -1
- package/dist/admin/src/services/api.d.ts +1 -1
- package/dist/admin/src/services/content-manager.d.ts +6 -5
- package/dist/admin/src/services/settings.d.ts +3 -3
- package/dist/admin/translations/en.json.js +3 -1
- package/dist/admin/translations/en.json.js.map +1 -1
- package/dist/admin/translations/en.json.mjs +3 -1
- package/dist/admin/translations/en.json.mjs.map +1 -1
- package/dist/server/controllers/index.js +3 -1
- package/dist/server/controllers/index.js.map +1 -1
- package/dist/server/controllers/index.mjs +3 -1
- package/dist/server/controllers/index.mjs.map +1 -1
- package/dist/server/homepage/controllers/homepage.js +15 -0
- package/dist/server/homepage/controllers/homepage.js.map +1 -0
- package/dist/server/homepage/controllers/homepage.mjs +13 -0
- package/dist/server/homepage/controllers/homepage.mjs.map +1 -0
- package/dist/server/homepage/controllers/index.js +10 -0
- package/dist/server/homepage/controllers/index.js.map +1 -0
- package/dist/server/homepage/controllers/index.mjs +8 -0
- package/dist/server/homepage/controllers/index.mjs.map +1 -0
- package/dist/server/homepage/index.js +14 -0
- package/dist/server/homepage/index.js.map +1 -0
- package/dist/server/homepage/index.mjs +12 -0
- package/dist/server/homepage/index.mjs.map +1 -0
- package/dist/server/homepage/routes/homepage.js +25 -0
- package/dist/server/homepage/routes/homepage.js.map +1 -0
- package/dist/server/homepage/routes/homepage.mjs +23 -0
- package/dist/server/homepage/routes/homepage.mjs.map +1 -0
- package/dist/server/homepage/routes/index.js +10 -0
- package/dist/server/homepage/routes/index.js.map +1 -0
- package/dist/server/homepage/routes/index.mjs +8 -0
- package/dist/server/homepage/routes/index.mjs.map +1 -0
- package/dist/server/homepage/services/homepage.js +24 -0
- package/dist/server/homepage/services/homepage.js.map +1 -0
- package/dist/server/homepage/services/homepage.mjs +22 -0
- package/dist/server/homepage/services/homepage.mjs.map +1 -0
- package/dist/server/homepage/services/index.js +10 -0
- package/dist/server/homepage/services/index.js.map +1 -0
- package/dist/server/homepage/services/index.mjs +8 -0
- package/dist/server/homepage/services/index.mjs.map +1 -0
- package/dist/server/routes/index.js +3 -1
- package/dist/server/routes/index.js.map +1 -1
- package/dist/server/routes/index.mjs +3 -1
- package/dist/server/routes/index.mjs.map +1 -1
- package/dist/server/services/index.js +3 -1
- package/dist/server/services/index.js.map +1 -1
- package/dist/server/services/index.mjs +3 -1
- package/dist/server/services/index.mjs.map +1 -1
- package/dist/server/src/controllers/index.d.ts.map +1 -1
- package/dist/server/src/homepage/controllers/homepage.d.ts +6 -0
- package/dist/server/src/homepage/controllers/homepage.d.ts.map +1 -0
- package/dist/server/src/homepage/controllers/index.d.ts +2 -0
- package/dist/server/src/homepage/controllers/index.d.ts.map +1 -0
- package/dist/server/src/homepage/index.d.ts +15 -0
- package/dist/server/src/homepage/index.d.ts.map +1 -0
- package/dist/server/src/homepage/routes/homepage.d.ts +4 -0
- package/dist/server/src/homepage/routes/homepage.d.ts.map +1 -0
- package/dist/server/src/homepage/routes/index.d.ts +4 -0
- package/dist/server/src/homepage/routes/index.d.ts.map +1 -0
- package/dist/server/src/homepage/services/homepage.d.ts +9 -0
- package/dist/server/src/homepage/services/homepage.d.ts.map +1 -0
- package/dist/server/src/homepage/services/index.d.ts +8 -0
- package/dist/server/src/homepage/services/index.d.ts.map +1 -0
- package/dist/server/src/index.d.ts +6 -0
- package/dist/server/src/index.d.ts.map +1 -1
- package/dist/server/src/routes/index.d.ts +1 -0
- package/dist/server/src/routes/index.d.ts.map +1 -1
- package/dist/server/src/services/index.d.ts +5 -0
- package/dist/server/src/services/index.d.ts.map +1 -1
- package/dist/shared/contracts/homepage.d.ts +26 -0
- package/dist/shared/contracts/homepage.d.ts.map +1 -0
- package/package.json +7 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkflowAttributes.js","sources":["../../../../../admin/src/routes/settings/components/WorkflowAttributes.tsx"],"sourcesContent":["import { InputRenderer, useField, useForm } from '@strapi/admin/strapi-admin';\nimport {\n Field,\n Grid,\n MultiSelect,\n MultiSelectGroup,\n MultiSelectOption,\n Typography,\n useCollator,\n SingleSelect,\n SingleSelectOption,\n} from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { useGetContentTypesQuery } from '../../../services/content-manager';\nimport { useReviewWorkflows } from '../hooks/useReviewWorkflows';\n\nimport type { WorkflowStage } from './Stages';\n\n/* -------------------------------------------------------------------------------------------------\n * WorkflowAttributes\n * -----------------------------------------------------------------------------------------------*/\ninterface WorkflowAttributesProps {\n canUpdate?: boolean;\n}\n\nconst WorkflowAttributes = ({ canUpdate = true }: WorkflowAttributesProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <Grid.Root background=\"neutral0\" hasRadius gap={4} padding={6} shadow=\"tableShadow\">\n <Grid.Item col={6} direction=\"column\" alignItems=\"stretch\">\n <InputRenderer\n disabled={!canUpdate}\n label={formatMessage({\n id: 'Settings.review-workflows.workflow.name.label',\n defaultMessage: 'Workflow Name',\n })}\n name=\"name\"\n required\n type=\"string\"\n />\n </Grid.Item>\n <Grid.Item col={6} direction=\"column\" alignItems=\"stretch\">\n <ContentTypesSelector disabled={!canUpdate} />\n </Grid.Item>\n <Grid.Item col={6} direction=\"column\" alignItems=\"stretch\">\n <StageSelector disabled={!canUpdate} />\n </Grid.Item>\n </Grid.Root>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * ContentTypesSelector\n * -----------------------------------------------------------------------------------------------*/\ninterface ContentTypesSelectorProps {\n disabled?: boolean;\n}\n\nconst ContentTypesSelector = ({ disabled }: ContentTypesSelectorProps) => {\n const { formatMessage, locale } = useIntl();\n const { data: contentTypes, isLoading } = useGetContentTypesQuery();\n const { workflows } = useReviewWorkflows();\n const currentWorkflow = useForm('ContentTypesSelector', (state) => state.values);\n\n const { error, value, onChange } = useField('contentTypes');\n\n const formatter = useCollator(locale, {\n sensitivity: 'base',\n });\n\n const isDisabled =\n disabled ||\n isLoading ||\n !contentTypes ||\n (contentTypes.collectionType.length === 0 && contentTypes.singleType.length === 0);\n\n const collectionTypes = (contentTypes?.collectionType ?? [])\n .toSorted((a, b) => formatter.compare(a.info.displayName, b.info.displayName))\n .map((contentType) => ({\n label: contentType.info.displayName,\n value: contentType.uid,\n }));\n\n const singleTypes = (contentTypes?.singleType ?? []).map((contentType) => ({\n label: contentType.info.displayName,\n value: contentType.uid,\n }));\n\n return (\n <Field.Root error={error} name={'contentTypes'}>\n <Field.Label>\n {formatMessage({\n id: 'Settings.review-workflows.workflow.contentTypes.label',\n defaultMessage: 'Associated to',\n })}\n </Field.Label>\n <MultiSelect\n customizeContent={(value) =>\n formatMessage(\n {\n id: 'Settings.review-workflows.workflow.contentTypes.displayValue',\n defaultMessage:\n '{count} {count, plural, one {content type} other {content types}} selected',\n },\n { count: value?.length }\n )\n }\n disabled={isDisabled}\n onChange={(values) => {\n onChange('contentTypes', values);\n }}\n value={value}\n placeholder={formatMessage({\n id: 'Settings.review-workflows.workflow.contentTypes.placeholder',\n defaultMessage: 'Select',\n })}\n >\n {[\n ...(collectionTypes.length > 0\n ? [\n {\n label: formatMessage({\n id: 'Settings.review-workflows.workflow.contentTypes.collectionTypes.label',\n defaultMessage: 'Collection Types',\n }),\n children: collectionTypes,\n },\n ]\n : []),\n\n ...(singleTypes.length > 0\n ? [\n {\n label: formatMessage({\n id: 'Settings.review-workflows.workflow.contentTypes.singleTypes.label',\n defaultMessage: 'Single Types',\n }),\n children: singleTypes,\n },\n ]\n : []),\n ].map((opt) => {\n return (\n <MultiSelectGroup\n key={opt.label}\n label={opt.label}\n values={opt.children.map((child) => child.value.toString())}\n >\n {opt.children.map((child) => {\n const { name: assignedWorkflowName } =\n workflows?.find(\n (workflow) =>\n ((currentWorkflow && workflow.id !== currentWorkflow.id) ||\n !currentWorkflow) &&\n workflow.contentTypes.includes(child.value)\n ) ?? {};\n\n return (\n <NestedOption key={child.value} value={child.value}>\n <Typography>\n {\n // @ts-expect-error - formatMessage options doesn't expect to be a React component but that's what we need actually for the <i> and <em> components\n formatMessage(\n {\n id: 'Settings.review-workflows.workflow.contentTypes.assigned.notice',\n defaultMessage:\n '{label} {name, select, undefined {} other {<i>(assigned to <em>{name}</em> workflow)</i>}}',\n },\n {\n label: child.label,\n name: assignedWorkflowName,\n em: (...children) => (\n <Typography tag=\"em\" fontWeight=\"bold\">\n {children}\n </Typography>\n ),\n i: (...children) => (\n <ContentTypeTakeNotice>{children}</ContentTypeTakeNotice>\n ),\n }\n )\n }\n </Typography>\n </NestedOption>\n );\n })}\n </MultiSelectGroup>\n );\n })}\n </MultiSelect>\n </Field.Root>\n );\n};\n\nconst NestedOption = styled(MultiSelectOption)`\n padding-left: ${({ theme }) => theme.spaces[7]};\n`;\n\nconst ContentTypeTakeNotice = styled(Typography)`\n font-style: italic;\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * StageSelector\n * -----------------------------------------------------------------------------------------------*/\ninterface StageSelectorProps {\n disabled?: boolean;\n}\n\nconst StageSelector = ({ disabled }: StageSelectorProps) => {\n const { value: stages = [] } = useField<WorkflowStage[]>('stages');\n const { formatMessage } = useIntl();\n\n const { error, value, onChange } = useField('stageRequiredToPublish');\n\n // stages with empty names are not valid, so we avoid them from being used to avoid errors\n const validStages = stages.filter((stage) => stage.name);\n\n return (\n <Field.Root\n error={error}\n name=\"stageRequiredToPublish\"\n hint={formatMessage({\n id: 'settings.review-workflows.workflow.stageRequiredToPublish.hint',\n defaultMessage:\n 'Prevents entries from being published if they are not at the required stage.',\n })}\n >\n <Field.Label>\n {formatMessage({\n id: 'settings.review-workflows.workflow.stageRequiredToPublish.label',\n defaultMessage: 'Required stage for publishing',\n })}\n </Field.Label>\n <SingleSelect\n disabled={disabled}\n onChange={(value) => {\n onChange('stageRequiredToPublish', value);\n }}\n value={value}\n >\n <SingleSelectOption value={''}>\n {formatMessage({\n id: 'settings.review-workflows.workflow.stageRequiredToPublish.any',\n defaultMessage: 'Any stage',\n })}\n </SingleSelectOption>\n {validStages.map((stage, i) => (\n <SingleSelectOption\n key={`requiredToPublishStage-${stage.id || stage.__temp_key__}`}\n value={stage.id?.toString() || stage.__temp_key__}\n >\n {stage.name}\n </SingleSelectOption>\n ))}\n </SingleSelect>\n <Field.Hint />\n </Field.Root>\n );\n};\n\nexport { WorkflowAttributes };\nexport type { WorkflowAttributesProps };\n"],"names":["WorkflowAttributes","canUpdate","formatMessage","useIntl","_jsxs","Grid","Root","background","hasRadius","gap","padding","shadow","_jsx","Item","col","direction","alignItems","InputRenderer","disabled","label","id","defaultMessage","name","required","type","ContentTypesSelector","StageSelector","locale","data","contentTypes","isLoading","useGetContentTypesQuery","workflows","useReviewWorkflows","currentWorkflow","useForm","state","values","error","value","onChange","useField","formatter","useCollator","sensitivity","isDisabled","collectionType","length","singleType","collectionTypes","toSorted","a","b","compare","info","displayName","map","contentType","uid","singleTypes","Field","Label","MultiSelect","customizeContent","count","placeholder","children","opt","MultiSelectGroup","child","toString","assignedWorkflowName","find","workflow","includes","NestedOption","Typography","em","tag","fontWeight","i","ContentTypeTakeNotice","styled","MultiSelectOption","theme","spaces","stages","validStages","filter","stage","hint","SingleSelect","SingleSelectOption","__temp_key__","Hint"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"WorkflowAttributes.js","sources":["../../../../../admin/src/routes/settings/components/WorkflowAttributes.tsx"],"sourcesContent":["import { InputRenderer, useField, useForm } from '@strapi/admin/strapi-admin';\nimport {\n Field,\n Grid,\n MultiSelect,\n MultiSelectGroup,\n MultiSelectOption,\n Typography,\n useCollator,\n SingleSelect,\n SingleSelectOption,\n} from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { useGetContentTypesQuery } from '../../../services/content-manager';\nimport { useReviewWorkflows } from '../hooks/useReviewWorkflows';\n\nimport type { WorkflowStage } from './Stages';\n\n/* -------------------------------------------------------------------------------------------------\n * WorkflowAttributes\n * -----------------------------------------------------------------------------------------------*/\ninterface WorkflowAttributesProps {\n canUpdate?: boolean;\n}\n\nconst WorkflowAttributes = ({ canUpdate = true }: WorkflowAttributesProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <Grid.Root background=\"neutral0\" hasRadius gap={4} padding={6} shadow=\"tableShadow\">\n <Grid.Item col={6} direction=\"column\" alignItems=\"stretch\">\n <InputRenderer\n disabled={!canUpdate}\n label={formatMessage({\n id: 'Settings.review-workflows.workflow.name.label',\n defaultMessage: 'Workflow Name',\n })}\n name=\"name\"\n required\n type=\"text\"\n />\n </Grid.Item>\n <Grid.Item col={6} direction=\"column\" alignItems=\"stretch\">\n <ContentTypesSelector disabled={!canUpdate} />\n </Grid.Item>\n <Grid.Item col={6} direction=\"column\" alignItems=\"stretch\">\n <StageSelector disabled={!canUpdate} />\n </Grid.Item>\n </Grid.Root>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * ContentTypesSelector\n * -----------------------------------------------------------------------------------------------*/\ninterface ContentTypesSelectorProps {\n disabled?: boolean;\n}\n\nconst ContentTypesSelector = ({ disabled }: ContentTypesSelectorProps) => {\n const { formatMessage, locale } = useIntl();\n const { data: contentTypes, isLoading } = useGetContentTypesQuery();\n const { workflows } = useReviewWorkflows();\n const currentWorkflow = useForm('ContentTypesSelector', (state) => state.values);\n\n const { error, value, onChange } = useField('contentTypes');\n\n const formatter = useCollator(locale, {\n sensitivity: 'base',\n });\n\n const isDisabled =\n disabled ||\n isLoading ||\n !contentTypes ||\n (contentTypes.collectionType.length === 0 && contentTypes.singleType.length === 0);\n\n const collectionTypes = (contentTypes?.collectionType ?? [])\n .toSorted((a, b) => formatter.compare(a.info.displayName, b.info.displayName))\n .map((contentType) => ({\n label: contentType.info.displayName,\n value: contentType.uid,\n }));\n\n const singleTypes = (contentTypes?.singleType ?? []).map((contentType) => ({\n label: contentType.info.displayName,\n value: contentType.uid,\n }));\n\n return (\n <Field.Root error={error} name={'contentTypes'}>\n <Field.Label>\n {formatMessage({\n id: 'Settings.review-workflows.workflow.contentTypes.label',\n defaultMessage: 'Associated to',\n })}\n </Field.Label>\n <MultiSelect\n customizeContent={(value) =>\n formatMessage(\n {\n id: 'Settings.review-workflows.workflow.contentTypes.displayValue',\n defaultMessage:\n '{count} {count, plural, one {content type} other {content types}} selected',\n },\n { count: value?.length }\n )\n }\n disabled={isDisabled}\n onChange={(values) => {\n onChange('contentTypes', values);\n }}\n value={value}\n placeholder={formatMessage({\n id: 'Settings.review-workflows.workflow.contentTypes.placeholder',\n defaultMessage: 'Select',\n })}\n >\n {[\n ...(collectionTypes.length > 0\n ? [\n {\n label: formatMessage({\n id: 'Settings.review-workflows.workflow.contentTypes.collectionTypes.label',\n defaultMessage: 'Collection Types',\n }),\n children: collectionTypes,\n },\n ]\n : []),\n\n ...(singleTypes.length > 0\n ? [\n {\n label: formatMessage({\n id: 'Settings.review-workflows.workflow.contentTypes.singleTypes.label',\n defaultMessage: 'Single Types',\n }),\n children: singleTypes,\n },\n ]\n : []),\n ].map((opt) => {\n return (\n <MultiSelectGroup\n key={opt.label}\n label={opt.label}\n values={opt.children.map((child) => child.value.toString())}\n >\n {opt.children.map((child) => {\n const { name: assignedWorkflowName } =\n workflows?.find(\n (workflow) =>\n ((currentWorkflow && workflow.id !== currentWorkflow.id) ||\n !currentWorkflow) &&\n workflow.contentTypes.includes(child.value)\n ) ?? {};\n\n return (\n <NestedOption key={child.value} value={child.value}>\n <Typography>\n {\n // @ts-expect-error - formatMessage options doesn't expect to be a React component but that's what we need actually for the <i> and <em> components\n formatMessage(\n {\n id: 'Settings.review-workflows.workflow.contentTypes.assigned.notice',\n defaultMessage:\n '{label} {name, select, undefined {} other {<i>(assigned to <em>{name}</em> workflow)</i>}}',\n },\n {\n label: child.label,\n name: assignedWorkflowName,\n em: (...children) => (\n <Typography tag=\"em\" fontWeight=\"bold\">\n {children}\n </Typography>\n ),\n i: (...children) => (\n <ContentTypeTakeNotice>{children}</ContentTypeTakeNotice>\n ),\n }\n )\n }\n </Typography>\n </NestedOption>\n );\n })}\n </MultiSelectGroup>\n );\n })}\n </MultiSelect>\n </Field.Root>\n );\n};\n\nconst NestedOption = styled(MultiSelectOption)`\n padding-left: ${({ theme }) => theme.spaces[7]};\n`;\n\nconst ContentTypeTakeNotice = styled(Typography)`\n font-style: italic;\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * StageSelector\n * -----------------------------------------------------------------------------------------------*/\ninterface StageSelectorProps {\n disabled?: boolean;\n}\n\nconst StageSelector = ({ disabled }: StageSelectorProps) => {\n const { value: stages = [] } = useField<WorkflowStage[]>('stages');\n const { formatMessage } = useIntl();\n\n const { error, value, onChange } = useField('stageRequiredToPublish');\n\n // stages with empty names are not valid, so we avoid them from being used to avoid errors\n const validStages = stages.filter((stage) => stage.name);\n\n return (\n <Field.Root\n error={error}\n name=\"stageRequiredToPublish\"\n hint={formatMessage({\n id: 'settings.review-workflows.workflow.stageRequiredToPublish.hint',\n defaultMessage:\n 'Prevents entries from being published if they are not at the required stage.',\n })}\n >\n <Field.Label>\n {formatMessage({\n id: 'settings.review-workflows.workflow.stageRequiredToPublish.label',\n defaultMessage: 'Required stage for publishing',\n })}\n </Field.Label>\n <SingleSelect\n disabled={disabled}\n onChange={(value) => {\n onChange('stageRequiredToPublish', value);\n }}\n value={value}\n >\n <SingleSelectOption value={''}>\n {formatMessage({\n id: 'settings.review-workflows.workflow.stageRequiredToPublish.any',\n defaultMessage: 'Any stage',\n })}\n </SingleSelectOption>\n {validStages.map((stage, i) => (\n <SingleSelectOption\n key={`requiredToPublishStage-${stage.id || stage.__temp_key__}`}\n value={stage.id?.toString() || stage.__temp_key__}\n >\n {stage.name}\n </SingleSelectOption>\n ))}\n </SingleSelect>\n <Field.Hint />\n </Field.Root>\n );\n};\n\nexport { WorkflowAttributes };\nexport type { WorkflowAttributesProps };\n"],"names":["WorkflowAttributes","canUpdate","formatMessage","useIntl","_jsxs","Grid","Root","background","hasRadius","gap","padding","shadow","_jsx","Item","col","direction","alignItems","InputRenderer","disabled","label","id","defaultMessage","name","required","type","ContentTypesSelector","StageSelector","locale","data","contentTypes","isLoading","useGetContentTypesQuery","workflows","useReviewWorkflows","currentWorkflow","useForm","state","values","error","value","onChange","useField","formatter","useCollator","sensitivity","isDisabled","collectionType","length","singleType","collectionTypes","toSorted","a","b","compare","info","displayName","map","contentType","uid","singleTypes","Field","Label","MultiSelect","customizeContent","count","placeholder","children","opt","MultiSelectGroup","child","toString","assignedWorkflowName","find","workflow","includes","NestedOption","Typography","em","tag","fontWeight","i","ContentTypeTakeNotice","styled","MultiSelectOption","theme","spaces","stages","validStages","filter","stage","hint","SingleSelect","SingleSelectOption","__temp_key__","Hint"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkflowAttributes.mjs","sources":["../../../../../admin/src/routes/settings/components/WorkflowAttributes.tsx"],"sourcesContent":["import { InputRenderer, useField, useForm } from '@strapi/admin/strapi-admin';\nimport {\n Field,\n Grid,\n MultiSelect,\n MultiSelectGroup,\n MultiSelectOption,\n Typography,\n useCollator,\n SingleSelect,\n SingleSelectOption,\n} from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { useGetContentTypesQuery } from '../../../services/content-manager';\nimport { useReviewWorkflows } from '../hooks/useReviewWorkflows';\n\nimport type { WorkflowStage } from './Stages';\n\n/* -------------------------------------------------------------------------------------------------\n * WorkflowAttributes\n * -----------------------------------------------------------------------------------------------*/\ninterface WorkflowAttributesProps {\n canUpdate?: boolean;\n}\n\nconst WorkflowAttributes = ({ canUpdate = true }: WorkflowAttributesProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <Grid.Root background=\"neutral0\" hasRadius gap={4} padding={6} shadow=\"tableShadow\">\n <Grid.Item col={6} direction=\"column\" alignItems=\"stretch\">\n <InputRenderer\n disabled={!canUpdate}\n label={formatMessage({\n id: 'Settings.review-workflows.workflow.name.label',\n defaultMessage: 'Workflow Name',\n })}\n name=\"name\"\n required\n type=\"string\"\n />\n </Grid.Item>\n <Grid.Item col={6} direction=\"column\" alignItems=\"stretch\">\n <ContentTypesSelector disabled={!canUpdate} />\n </Grid.Item>\n <Grid.Item col={6} direction=\"column\" alignItems=\"stretch\">\n <StageSelector disabled={!canUpdate} />\n </Grid.Item>\n </Grid.Root>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * ContentTypesSelector\n * -----------------------------------------------------------------------------------------------*/\ninterface ContentTypesSelectorProps {\n disabled?: boolean;\n}\n\nconst ContentTypesSelector = ({ disabled }: ContentTypesSelectorProps) => {\n const { formatMessage, locale } = useIntl();\n const { data: contentTypes, isLoading } = useGetContentTypesQuery();\n const { workflows } = useReviewWorkflows();\n const currentWorkflow = useForm('ContentTypesSelector', (state) => state.values);\n\n const { error, value, onChange } = useField('contentTypes');\n\n const formatter = useCollator(locale, {\n sensitivity: 'base',\n });\n\n const isDisabled =\n disabled ||\n isLoading ||\n !contentTypes ||\n (contentTypes.collectionType.length === 0 && contentTypes.singleType.length === 0);\n\n const collectionTypes = (contentTypes?.collectionType ?? [])\n .toSorted((a, b) => formatter.compare(a.info.displayName, b.info.displayName))\n .map((contentType) => ({\n label: contentType.info.displayName,\n value: contentType.uid,\n }));\n\n const singleTypes = (contentTypes?.singleType ?? []).map((contentType) => ({\n label: contentType.info.displayName,\n value: contentType.uid,\n }));\n\n return (\n <Field.Root error={error} name={'contentTypes'}>\n <Field.Label>\n {formatMessage({\n id: 'Settings.review-workflows.workflow.contentTypes.label',\n defaultMessage: 'Associated to',\n })}\n </Field.Label>\n <MultiSelect\n customizeContent={(value) =>\n formatMessage(\n {\n id: 'Settings.review-workflows.workflow.contentTypes.displayValue',\n defaultMessage:\n '{count} {count, plural, one {content type} other {content types}} selected',\n },\n { count: value?.length }\n )\n }\n disabled={isDisabled}\n onChange={(values) => {\n onChange('contentTypes', values);\n }}\n value={value}\n placeholder={formatMessage({\n id: 'Settings.review-workflows.workflow.contentTypes.placeholder',\n defaultMessage: 'Select',\n })}\n >\n {[\n ...(collectionTypes.length > 0\n ? [\n {\n label: formatMessage({\n id: 'Settings.review-workflows.workflow.contentTypes.collectionTypes.label',\n defaultMessage: 'Collection Types',\n }),\n children: collectionTypes,\n },\n ]\n : []),\n\n ...(singleTypes.length > 0\n ? [\n {\n label: formatMessage({\n id: 'Settings.review-workflows.workflow.contentTypes.singleTypes.label',\n defaultMessage: 'Single Types',\n }),\n children: singleTypes,\n },\n ]\n : []),\n ].map((opt) => {\n return (\n <MultiSelectGroup\n key={opt.label}\n label={opt.label}\n values={opt.children.map((child) => child.value.toString())}\n >\n {opt.children.map((child) => {\n const { name: assignedWorkflowName } =\n workflows?.find(\n (workflow) =>\n ((currentWorkflow && workflow.id !== currentWorkflow.id) ||\n !currentWorkflow) &&\n workflow.contentTypes.includes(child.value)\n ) ?? {};\n\n return (\n <NestedOption key={child.value} value={child.value}>\n <Typography>\n {\n // @ts-expect-error - formatMessage options doesn't expect to be a React component but that's what we need actually for the <i> and <em> components\n formatMessage(\n {\n id: 'Settings.review-workflows.workflow.contentTypes.assigned.notice',\n defaultMessage:\n '{label} {name, select, undefined {} other {<i>(assigned to <em>{name}</em> workflow)</i>}}',\n },\n {\n label: child.label,\n name: assignedWorkflowName,\n em: (...children) => (\n <Typography tag=\"em\" fontWeight=\"bold\">\n {children}\n </Typography>\n ),\n i: (...children) => (\n <ContentTypeTakeNotice>{children}</ContentTypeTakeNotice>\n ),\n }\n )\n }\n </Typography>\n </NestedOption>\n );\n })}\n </MultiSelectGroup>\n );\n })}\n </MultiSelect>\n </Field.Root>\n );\n};\n\nconst NestedOption = styled(MultiSelectOption)`\n padding-left: ${({ theme }) => theme.spaces[7]};\n`;\n\nconst ContentTypeTakeNotice = styled(Typography)`\n font-style: italic;\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * StageSelector\n * -----------------------------------------------------------------------------------------------*/\ninterface StageSelectorProps {\n disabled?: boolean;\n}\n\nconst StageSelector = ({ disabled }: StageSelectorProps) => {\n const { value: stages = [] } = useField<WorkflowStage[]>('stages');\n const { formatMessage } = useIntl();\n\n const { error, value, onChange } = useField('stageRequiredToPublish');\n\n // stages with empty names are not valid, so we avoid them from being used to avoid errors\n const validStages = stages.filter((stage) => stage.name);\n\n return (\n <Field.Root\n error={error}\n name=\"stageRequiredToPublish\"\n hint={formatMessage({\n id: 'settings.review-workflows.workflow.stageRequiredToPublish.hint',\n defaultMessage:\n 'Prevents entries from being published if they are not at the required stage.',\n })}\n >\n <Field.Label>\n {formatMessage({\n id: 'settings.review-workflows.workflow.stageRequiredToPublish.label',\n defaultMessage: 'Required stage for publishing',\n })}\n </Field.Label>\n <SingleSelect\n disabled={disabled}\n onChange={(value) => {\n onChange('stageRequiredToPublish', value);\n }}\n value={value}\n >\n <SingleSelectOption value={''}>\n {formatMessage({\n id: 'settings.review-workflows.workflow.stageRequiredToPublish.any',\n defaultMessage: 'Any stage',\n })}\n </SingleSelectOption>\n {validStages.map((stage, i) => (\n <SingleSelectOption\n key={`requiredToPublishStage-${stage.id || stage.__temp_key__}`}\n value={stage.id?.toString() || stage.__temp_key__}\n >\n {stage.name}\n </SingleSelectOption>\n ))}\n </SingleSelect>\n <Field.Hint />\n </Field.Root>\n );\n};\n\nexport { WorkflowAttributes };\nexport type { WorkflowAttributesProps };\n"],"names":["WorkflowAttributes","canUpdate","formatMessage","useIntl","_jsxs","Grid","Root","background","hasRadius","gap","padding","shadow","_jsx","Item","col","direction","alignItems","InputRenderer","disabled","label","id","defaultMessage","name","required","type","ContentTypesSelector","StageSelector","locale","data","contentTypes","isLoading","useGetContentTypesQuery","workflows","useReviewWorkflows","currentWorkflow","useForm","state","values","error","value","onChange","useField","formatter","useCollator","sensitivity","isDisabled","collectionType","length","singleType","collectionTypes","toSorted","a","b","compare","info","displayName","map","contentType","uid","singleTypes","Field","Label","MultiSelect","customizeContent","count","placeholder","children","opt","MultiSelectGroup","child","toString","assignedWorkflowName","find","workflow","includes","NestedOption","Typography","em","tag","fontWeight","i","ContentTypeTakeNotice","styled","MultiSelectOption","theme","spaces","stages","validStages","filter","stage","hint","SingleSelect","SingleSelectOption","__temp_key__","Hint"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"WorkflowAttributes.mjs","sources":["../../../../../admin/src/routes/settings/components/WorkflowAttributes.tsx"],"sourcesContent":["import { InputRenderer, useField, useForm } from '@strapi/admin/strapi-admin';\nimport {\n Field,\n Grid,\n MultiSelect,\n MultiSelectGroup,\n MultiSelectOption,\n Typography,\n useCollator,\n SingleSelect,\n SingleSelectOption,\n} from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { useGetContentTypesQuery } from '../../../services/content-manager';\nimport { useReviewWorkflows } from '../hooks/useReviewWorkflows';\n\nimport type { WorkflowStage } from './Stages';\n\n/* -------------------------------------------------------------------------------------------------\n * WorkflowAttributes\n * -----------------------------------------------------------------------------------------------*/\ninterface WorkflowAttributesProps {\n canUpdate?: boolean;\n}\n\nconst WorkflowAttributes = ({ canUpdate = true }: WorkflowAttributesProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <Grid.Root background=\"neutral0\" hasRadius gap={4} padding={6} shadow=\"tableShadow\">\n <Grid.Item col={6} direction=\"column\" alignItems=\"stretch\">\n <InputRenderer\n disabled={!canUpdate}\n label={formatMessage({\n id: 'Settings.review-workflows.workflow.name.label',\n defaultMessage: 'Workflow Name',\n })}\n name=\"name\"\n required\n type=\"text\"\n />\n </Grid.Item>\n <Grid.Item col={6} direction=\"column\" alignItems=\"stretch\">\n <ContentTypesSelector disabled={!canUpdate} />\n </Grid.Item>\n <Grid.Item col={6} direction=\"column\" alignItems=\"stretch\">\n <StageSelector disabled={!canUpdate} />\n </Grid.Item>\n </Grid.Root>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * ContentTypesSelector\n * -----------------------------------------------------------------------------------------------*/\ninterface ContentTypesSelectorProps {\n disabled?: boolean;\n}\n\nconst ContentTypesSelector = ({ disabled }: ContentTypesSelectorProps) => {\n const { formatMessage, locale } = useIntl();\n const { data: contentTypes, isLoading } = useGetContentTypesQuery();\n const { workflows } = useReviewWorkflows();\n const currentWorkflow = useForm('ContentTypesSelector', (state) => state.values);\n\n const { error, value, onChange } = useField('contentTypes');\n\n const formatter = useCollator(locale, {\n sensitivity: 'base',\n });\n\n const isDisabled =\n disabled ||\n isLoading ||\n !contentTypes ||\n (contentTypes.collectionType.length === 0 && contentTypes.singleType.length === 0);\n\n const collectionTypes = (contentTypes?.collectionType ?? [])\n .toSorted((a, b) => formatter.compare(a.info.displayName, b.info.displayName))\n .map((contentType) => ({\n label: contentType.info.displayName,\n value: contentType.uid,\n }));\n\n const singleTypes = (contentTypes?.singleType ?? []).map((contentType) => ({\n label: contentType.info.displayName,\n value: contentType.uid,\n }));\n\n return (\n <Field.Root error={error} name={'contentTypes'}>\n <Field.Label>\n {formatMessage({\n id: 'Settings.review-workflows.workflow.contentTypes.label',\n defaultMessage: 'Associated to',\n })}\n </Field.Label>\n <MultiSelect\n customizeContent={(value) =>\n formatMessage(\n {\n id: 'Settings.review-workflows.workflow.contentTypes.displayValue',\n defaultMessage:\n '{count} {count, plural, one {content type} other {content types}} selected',\n },\n { count: value?.length }\n )\n }\n disabled={isDisabled}\n onChange={(values) => {\n onChange('contentTypes', values);\n }}\n value={value}\n placeholder={formatMessage({\n id: 'Settings.review-workflows.workflow.contentTypes.placeholder',\n defaultMessage: 'Select',\n })}\n >\n {[\n ...(collectionTypes.length > 0\n ? [\n {\n label: formatMessage({\n id: 'Settings.review-workflows.workflow.contentTypes.collectionTypes.label',\n defaultMessage: 'Collection Types',\n }),\n children: collectionTypes,\n },\n ]\n : []),\n\n ...(singleTypes.length > 0\n ? [\n {\n label: formatMessage({\n id: 'Settings.review-workflows.workflow.contentTypes.singleTypes.label',\n defaultMessage: 'Single Types',\n }),\n children: singleTypes,\n },\n ]\n : []),\n ].map((opt) => {\n return (\n <MultiSelectGroup\n key={opt.label}\n label={opt.label}\n values={opt.children.map((child) => child.value.toString())}\n >\n {opt.children.map((child) => {\n const { name: assignedWorkflowName } =\n workflows?.find(\n (workflow) =>\n ((currentWorkflow && workflow.id !== currentWorkflow.id) ||\n !currentWorkflow) &&\n workflow.contentTypes.includes(child.value)\n ) ?? {};\n\n return (\n <NestedOption key={child.value} value={child.value}>\n <Typography>\n {\n // @ts-expect-error - formatMessage options doesn't expect to be a React component but that's what we need actually for the <i> and <em> components\n formatMessage(\n {\n id: 'Settings.review-workflows.workflow.contentTypes.assigned.notice',\n defaultMessage:\n '{label} {name, select, undefined {} other {<i>(assigned to <em>{name}</em> workflow)</i>}}',\n },\n {\n label: child.label,\n name: assignedWorkflowName,\n em: (...children) => (\n <Typography tag=\"em\" fontWeight=\"bold\">\n {children}\n </Typography>\n ),\n i: (...children) => (\n <ContentTypeTakeNotice>{children}</ContentTypeTakeNotice>\n ),\n }\n )\n }\n </Typography>\n </NestedOption>\n );\n })}\n </MultiSelectGroup>\n );\n })}\n </MultiSelect>\n </Field.Root>\n );\n};\n\nconst NestedOption = styled(MultiSelectOption)`\n padding-left: ${({ theme }) => theme.spaces[7]};\n`;\n\nconst ContentTypeTakeNotice = styled(Typography)`\n font-style: italic;\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * StageSelector\n * -----------------------------------------------------------------------------------------------*/\ninterface StageSelectorProps {\n disabled?: boolean;\n}\n\nconst StageSelector = ({ disabled }: StageSelectorProps) => {\n const { value: stages = [] } = useField<WorkflowStage[]>('stages');\n const { formatMessage } = useIntl();\n\n const { error, value, onChange } = useField('stageRequiredToPublish');\n\n // stages with empty names are not valid, so we avoid them from being used to avoid errors\n const validStages = stages.filter((stage) => stage.name);\n\n return (\n <Field.Root\n error={error}\n name=\"stageRequiredToPublish\"\n hint={formatMessage({\n id: 'settings.review-workflows.workflow.stageRequiredToPublish.hint',\n defaultMessage:\n 'Prevents entries from being published if they are not at the required stage.',\n })}\n >\n <Field.Label>\n {formatMessage({\n id: 'settings.review-workflows.workflow.stageRequiredToPublish.label',\n defaultMessage: 'Required stage for publishing',\n })}\n </Field.Label>\n <SingleSelect\n disabled={disabled}\n onChange={(value) => {\n onChange('stageRequiredToPublish', value);\n }}\n value={value}\n >\n <SingleSelectOption value={''}>\n {formatMessage({\n id: 'settings.review-workflows.workflow.stageRequiredToPublish.any',\n defaultMessage: 'Any stage',\n })}\n </SingleSelectOption>\n {validStages.map((stage, i) => (\n <SingleSelectOption\n key={`requiredToPublishStage-${stage.id || stage.__temp_key__}`}\n value={stage.id?.toString() || stage.__temp_key__}\n >\n {stage.name}\n </SingleSelectOption>\n ))}\n </SingleSelect>\n <Field.Hint />\n </Field.Root>\n );\n};\n\nexport { WorkflowAttributes };\nexport type { WorkflowAttributesProps };\n"],"names":["WorkflowAttributes","canUpdate","formatMessage","useIntl","_jsxs","Grid","Root","background","hasRadius","gap","padding","shadow","_jsx","Item","col","direction","alignItems","InputRenderer","disabled","label","id","defaultMessage","name","required","type","ContentTypesSelector","StageSelector","locale","data","contentTypes","isLoading","useGetContentTypesQuery","workflows","useReviewWorkflows","currentWorkflow","useForm","state","values","error","value","onChange","useField","formatter","useCollator","sensitivity","isDisabled","collectionType","length","singleType","collectionTypes","toSorted","a","b","compare","info","displayName","map","contentType","uid","singleTypes","Field","Label","MultiSelect","customizeContent","count","placeholder","children","opt","MultiSelectGroup","child","toString","assignedWorkflowName","find","workflow","includes","NestedOption","Typography","em","tag","fontWeight","i","ContentTypeTakeNotice","styled","MultiSelectOption","theme","spaces","stages","validStages","filter","stage","hint","SingleSelect","SingleSelectOption","__temp_key__","Hint"],"mappings":"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"}
|
|
@@ -3,7 +3,12 @@
|
|
|
3
3
|
var api = require('./api.js');
|
|
4
4
|
|
|
5
5
|
const SINGLE_TYPES = 'single-types';
|
|
6
|
-
const contentManagerApi = api.reviewWorkflowsApi.
|
|
6
|
+
const contentManagerApi = api.reviewWorkflowsApi.enhanceEndpoints({
|
|
7
|
+
addTagTypes: [
|
|
8
|
+
'RecentlyAssignedList',
|
|
9
|
+
'RecentDocumentList'
|
|
10
|
+
]
|
|
11
|
+
}).injectEndpoints({
|
|
7
12
|
endpoints: (builder)=>({
|
|
8
13
|
getStages: builder.query({
|
|
9
14
|
query: ({ model, slug, id, params })=>({
|
|
@@ -68,7 +73,8 @@ const contentManagerApi = api.reviewWorkflowsApi.injectEndpoints({
|
|
|
68
73
|
{
|
|
69
74
|
type: 'Document',
|
|
70
75
|
id: `${model}_LIST`
|
|
71
|
-
}
|
|
76
|
+
},
|
|
77
|
+
'RecentlyAssignedList'
|
|
72
78
|
];
|
|
73
79
|
}
|
|
74
80
|
}),
|
|
@@ -88,13 +94,22 @@ const contentManagerApi = api.reviewWorkflowsApi.injectEndpoints({
|
|
|
88
94
|
singleType: []
|
|
89
95
|
});
|
|
90
96
|
}
|
|
97
|
+
}),
|
|
98
|
+
getRecentlyAssignedDocuments: builder.query({
|
|
99
|
+
query: ()=>'/review-workflows/homepage/recently-assigned-documents',
|
|
100
|
+
transformResponse: (response)=>response.data,
|
|
101
|
+
providesTags: (_, _err)=>[
|
|
102
|
+
'RecentlyAssignedList',
|
|
103
|
+
'RecentDocumentList'
|
|
104
|
+
]
|
|
91
105
|
})
|
|
92
106
|
}),
|
|
93
107
|
overrideExisting: true
|
|
94
108
|
});
|
|
95
|
-
const { useGetStagesQuery, useUpdateStageMutation, useUpdateAssigneeMutation, useGetContentTypesQuery } = contentManagerApi;
|
|
109
|
+
const { useGetStagesQuery, useUpdateStageMutation, useUpdateAssigneeMutation, useGetContentTypesQuery, useGetRecentlyAssignedDocumentsQuery } = contentManagerApi;
|
|
96
110
|
|
|
97
111
|
exports.useGetContentTypesQuery = useGetContentTypesQuery;
|
|
112
|
+
exports.useGetRecentlyAssignedDocumentsQuery = useGetRecentlyAssignedDocumentsQuery;
|
|
98
113
|
exports.useGetStagesQuery = useGetStagesQuery;
|
|
99
114
|
exports.useUpdateAssigneeMutation = useUpdateAssigneeMutation;
|
|
100
115
|
exports.useUpdateStageMutation = useUpdateStageMutation;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"content-manager.js","sources":["../../../admin/src/services/content-manager.ts"],"sourcesContent":["/* eslint-disable check-file/filename-naming-convention */\nimport { reviewWorkflowsApi } from './api';\n\nimport type {\n GetStages,\n UpdateStage,\n UpdateAssignee,\n} from '../../../shared/contracts/review-workflows';\nimport type { Contracts } from '@strapi/content-manager/_internal/shared';\n\ntype ContentType = Contracts.ContentTypes.ContentType;\ninterface ContentTypes {\n collectionType: ContentType[];\n singleType: ContentType[];\n}\n\nconst SINGLE_TYPES = 'single-types';\n\nconst contentManagerApi = reviewWorkflowsApi.injectEndpoints({\n
|
|
1
|
+
{"version":3,"file":"content-manager.js","sources":["../../../admin/src/services/content-manager.ts"],"sourcesContent":["import * as Homepage from '../../../shared/contracts/homepage';\n\n/* eslint-disable check-file/filename-naming-convention */\nimport { reviewWorkflowsApi } from './api';\n\nimport type {\n GetStages,\n UpdateStage,\n UpdateAssignee,\n} from '../../../shared/contracts/review-workflows';\nimport type { Contracts } from '@strapi/content-manager/_internal/shared';\n\ntype ContentType = Contracts.ContentTypes.ContentType;\ninterface ContentTypes {\n collectionType: ContentType[];\n singleType: ContentType[];\n}\n\nconst SINGLE_TYPES = 'single-types';\n\nconst contentManagerApi = reviewWorkflowsApi\n .enhanceEndpoints({\n addTagTypes: ['RecentlyAssignedList', 'RecentDocumentList'],\n })\n .injectEndpoints({\n endpoints: (builder) => ({\n getStages: builder.query<\n {\n stages: NonNullable<GetStages.Response['data']>;\n meta: NonNullable<GetStages.Response['meta']>;\n },\n GetStages.Params & { slug: string; params?: object }\n >({\n query: ({ model, slug, id, params }) => ({\n url: `/review-workflows/content-manager/${slug}/${model}/${id}/stages`,\n method: 'GET',\n config: {\n params,\n },\n }),\n transformResponse: (res: GetStages.Response) => {\n return {\n meta: res.meta ?? { workflowCount: 0 },\n stages: res.data ?? [],\n };\n },\n providesTags: ['ReviewWorkflowStages'],\n }),\n updateStage: builder.mutation<\n UpdateStage.Response['data'],\n UpdateStage.Request['body'] & UpdateStage.Params & { slug: string; params?: object }\n >({\n query: ({ model, slug, id, params, ...data }) => ({\n url: `/review-workflows/content-manager/${slug}/${model}/${id}/stage`,\n method: 'PUT',\n data,\n config: {\n params,\n },\n }),\n transformResponse: (res: UpdateStage.Response) => res.data,\n invalidatesTags: (_result, _error, { slug, id, model }) => {\n return [\n {\n type: 'Document',\n id: slug !== SINGLE_TYPES ? `${model}_${id}` : model,\n },\n { type: 'Document', id: `${model}_LIST` },\n 'ReviewWorkflowStages',\n ];\n },\n }),\n updateAssignee: builder.mutation<\n UpdateAssignee.Response['data'],\n UpdateAssignee.Request['body'] & UpdateAssignee.Params & { slug: string; params?: object }\n >({\n query: ({ model, slug, id, params, ...data }) => ({\n url: `/review-workflows/content-manager/${slug}/${model}/${id}/assignee`,\n method: 'PUT',\n data,\n config: {\n params,\n },\n }),\n transformResponse: (res: UpdateAssignee.Response) => res.data,\n invalidatesTags: (_result, _error, { slug, id, model }) => {\n return [\n {\n type: 'Document',\n id: slug !== SINGLE_TYPES ? `${model}_${id}` : model,\n },\n { type: 'Document', id: `${model}_LIST` },\n 'RecentlyAssignedList',\n ];\n },\n }),\n getContentTypes: builder.query<ContentTypes, void>({\n query: () => ({\n url: `/content-manager/content-types`,\n method: 'GET',\n }),\n transformResponse: (res: { data: Contracts.ContentTypes.ContentType[] }) => {\n return res.data.reduce<ContentTypes>(\n (acc, curr) => {\n if (curr.isDisplayed) {\n acc[curr.kind].push(curr);\n }\n return acc;\n },\n {\n collectionType: [],\n singleType: [],\n }\n );\n },\n }),\n getRecentlyAssignedDocuments: builder.query<\n Homepage.GetRecentlyAssignedDocuments.Response['data'],\n void\n >({\n query: () => '/review-workflows/homepage/recently-assigned-documents',\n transformResponse: (response: Homepage.GetRecentlyAssignedDocuments.Response) =>\n response.data,\n providesTags: (_, _err) => ['RecentlyAssignedList', 'RecentDocumentList'],\n }),\n }),\n overrideExisting: true,\n });\n\nconst {\n useGetStagesQuery,\n useUpdateStageMutation,\n useUpdateAssigneeMutation,\n useGetContentTypesQuery,\n useGetRecentlyAssignedDocumentsQuery,\n} = contentManagerApi;\n\nexport {\n useGetStagesQuery,\n useUpdateStageMutation,\n useUpdateAssigneeMutation,\n useGetContentTypesQuery,\n useGetRecentlyAssignedDocumentsQuery,\n};\nexport type { ContentTypes, ContentType };\n"],"names":["SINGLE_TYPES","contentManagerApi","reviewWorkflowsApi","enhanceEndpoints","addTagTypes","injectEndpoints","endpoints","builder","getStages","query","model","slug","id","params","url","method","config","transformResponse","res","meta","workflowCount","stages","data","providesTags","updateStage","mutation","invalidatesTags","_result","_error","type","updateAssignee","getContentTypes","reduce","acc","curr","isDisplayed","kind","push","collectionType","singleType","getRecentlyAssignedDocuments","response","_","_err","overrideExisting","useGetStagesQuery","useUpdateStageMutation","useUpdateAssigneeMutation","useGetContentTypesQuery","useGetRecentlyAssignedDocumentsQuery"],"mappings":"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"}
|
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
import { reviewWorkflowsApi } from './api.mjs';
|
|
2
2
|
|
|
3
3
|
const SINGLE_TYPES = 'single-types';
|
|
4
|
-
const contentManagerApi = reviewWorkflowsApi.
|
|
4
|
+
const contentManagerApi = reviewWorkflowsApi.enhanceEndpoints({
|
|
5
|
+
addTagTypes: [
|
|
6
|
+
'RecentlyAssignedList',
|
|
7
|
+
'RecentDocumentList'
|
|
8
|
+
]
|
|
9
|
+
}).injectEndpoints({
|
|
5
10
|
endpoints: (builder)=>({
|
|
6
11
|
getStages: builder.query({
|
|
7
12
|
query: ({ model, slug, id, params })=>({
|
|
@@ -66,7 +71,8 @@ const contentManagerApi = reviewWorkflowsApi.injectEndpoints({
|
|
|
66
71
|
{
|
|
67
72
|
type: 'Document',
|
|
68
73
|
id: `${model}_LIST`
|
|
69
|
-
}
|
|
74
|
+
},
|
|
75
|
+
'RecentlyAssignedList'
|
|
70
76
|
];
|
|
71
77
|
}
|
|
72
78
|
}),
|
|
@@ -86,11 +92,19 @@ const contentManagerApi = reviewWorkflowsApi.injectEndpoints({
|
|
|
86
92
|
singleType: []
|
|
87
93
|
});
|
|
88
94
|
}
|
|
95
|
+
}),
|
|
96
|
+
getRecentlyAssignedDocuments: builder.query({
|
|
97
|
+
query: ()=>'/review-workflows/homepage/recently-assigned-documents',
|
|
98
|
+
transformResponse: (response)=>response.data,
|
|
99
|
+
providesTags: (_, _err)=>[
|
|
100
|
+
'RecentlyAssignedList',
|
|
101
|
+
'RecentDocumentList'
|
|
102
|
+
]
|
|
89
103
|
})
|
|
90
104
|
}),
|
|
91
105
|
overrideExisting: true
|
|
92
106
|
});
|
|
93
|
-
const { useGetStagesQuery, useUpdateStageMutation, useUpdateAssigneeMutation, useGetContentTypesQuery } = contentManagerApi;
|
|
107
|
+
const { useGetStagesQuery, useUpdateStageMutation, useUpdateAssigneeMutation, useGetContentTypesQuery, useGetRecentlyAssignedDocumentsQuery } = contentManagerApi;
|
|
94
108
|
|
|
95
|
-
export { useGetContentTypesQuery, useGetStagesQuery, useUpdateAssigneeMutation, useUpdateStageMutation };
|
|
109
|
+
export { useGetContentTypesQuery, useGetRecentlyAssignedDocumentsQuery, useGetStagesQuery, useUpdateAssigneeMutation, useUpdateStageMutation };
|
|
96
110
|
//# sourceMappingURL=content-manager.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"content-manager.mjs","sources":["../../../admin/src/services/content-manager.ts"],"sourcesContent":["/* eslint-disable check-file/filename-naming-convention */\nimport { reviewWorkflowsApi } from './api';\n\nimport type {\n GetStages,\n UpdateStage,\n UpdateAssignee,\n} from '../../../shared/contracts/review-workflows';\nimport type { Contracts } from '@strapi/content-manager/_internal/shared';\n\ntype ContentType = Contracts.ContentTypes.ContentType;\ninterface ContentTypes {\n collectionType: ContentType[];\n singleType: ContentType[];\n}\n\nconst SINGLE_TYPES = 'single-types';\n\nconst contentManagerApi = reviewWorkflowsApi.injectEndpoints({\n
|
|
1
|
+
{"version":3,"file":"content-manager.mjs","sources":["../../../admin/src/services/content-manager.ts"],"sourcesContent":["import * as Homepage from '../../../shared/contracts/homepage';\n\n/* eslint-disable check-file/filename-naming-convention */\nimport { reviewWorkflowsApi } from './api';\n\nimport type {\n GetStages,\n UpdateStage,\n UpdateAssignee,\n} from '../../../shared/contracts/review-workflows';\nimport type { Contracts } from '@strapi/content-manager/_internal/shared';\n\ntype ContentType = Contracts.ContentTypes.ContentType;\ninterface ContentTypes {\n collectionType: ContentType[];\n singleType: ContentType[];\n}\n\nconst SINGLE_TYPES = 'single-types';\n\nconst contentManagerApi = reviewWorkflowsApi\n .enhanceEndpoints({\n addTagTypes: ['RecentlyAssignedList', 'RecentDocumentList'],\n })\n .injectEndpoints({\n endpoints: (builder) => ({\n getStages: builder.query<\n {\n stages: NonNullable<GetStages.Response['data']>;\n meta: NonNullable<GetStages.Response['meta']>;\n },\n GetStages.Params & { slug: string; params?: object }\n >({\n query: ({ model, slug, id, params }) => ({\n url: `/review-workflows/content-manager/${slug}/${model}/${id}/stages`,\n method: 'GET',\n config: {\n params,\n },\n }),\n transformResponse: (res: GetStages.Response) => {\n return {\n meta: res.meta ?? { workflowCount: 0 },\n stages: res.data ?? [],\n };\n },\n providesTags: ['ReviewWorkflowStages'],\n }),\n updateStage: builder.mutation<\n UpdateStage.Response['data'],\n UpdateStage.Request['body'] & UpdateStage.Params & { slug: string; params?: object }\n >({\n query: ({ model, slug, id, params, ...data }) => ({\n url: `/review-workflows/content-manager/${slug}/${model}/${id}/stage`,\n method: 'PUT',\n data,\n config: {\n params,\n },\n }),\n transformResponse: (res: UpdateStage.Response) => res.data,\n invalidatesTags: (_result, _error, { slug, id, model }) => {\n return [\n {\n type: 'Document',\n id: slug !== SINGLE_TYPES ? `${model}_${id}` : model,\n },\n { type: 'Document', id: `${model}_LIST` },\n 'ReviewWorkflowStages',\n ];\n },\n }),\n updateAssignee: builder.mutation<\n UpdateAssignee.Response['data'],\n UpdateAssignee.Request['body'] & UpdateAssignee.Params & { slug: string; params?: object }\n >({\n query: ({ model, slug, id, params, ...data }) => ({\n url: `/review-workflows/content-manager/${slug}/${model}/${id}/assignee`,\n method: 'PUT',\n data,\n config: {\n params,\n },\n }),\n transformResponse: (res: UpdateAssignee.Response) => res.data,\n invalidatesTags: (_result, _error, { slug, id, model }) => {\n return [\n {\n type: 'Document',\n id: slug !== SINGLE_TYPES ? `${model}_${id}` : model,\n },\n { type: 'Document', id: `${model}_LIST` },\n 'RecentlyAssignedList',\n ];\n },\n }),\n getContentTypes: builder.query<ContentTypes, void>({\n query: () => ({\n url: `/content-manager/content-types`,\n method: 'GET',\n }),\n transformResponse: (res: { data: Contracts.ContentTypes.ContentType[] }) => {\n return res.data.reduce<ContentTypes>(\n (acc, curr) => {\n if (curr.isDisplayed) {\n acc[curr.kind].push(curr);\n }\n return acc;\n },\n {\n collectionType: [],\n singleType: [],\n }\n );\n },\n }),\n getRecentlyAssignedDocuments: builder.query<\n Homepage.GetRecentlyAssignedDocuments.Response['data'],\n void\n >({\n query: () => '/review-workflows/homepage/recently-assigned-documents',\n transformResponse: (response: Homepage.GetRecentlyAssignedDocuments.Response) =>\n response.data,\n providesTags: (_, _err) => ['RecentlyAssignedList', 'RecentDocumentList'],\n }),\n }),\n overrideExisting: true,\n });\n\nconst {\n useGetStagesQuery,\n useUpdateStageMutation,\n useUpdateAssigneeMutation,\n useGetContentTypesQuery,\n useGetRecentlyAssignedDocumentsQuery,\n} = contentManagerApi;\n\nexport {\n useGetStagesQuery,\n useUpdateStageMutation,\n useUpdateAssigneeMutation,\n useGetContentTypesQuery,\n useGetRecentlyAssignedDocumentsQuery,\n};\nexport type { ContentTypes, ContentType };\n"],"names":["SINGLE_TYPES","contentManagerApi","reviewWorkflowsApi","enhanceEndpoints","addTagTypes","injectEndpoints","endpoints","builder","getStages","query","model","slug","id","params","url","method","config","transformResponse","res","meta","workflowCount","stages","data","providesTags","updateStage","mutation","invalidatesTags","_result","_error","type","updateAssignee","getContentTypes","reduce","acc","curr","isDisplayed","kind","push","collectionType","singleType","getRecentlyAssignedDocuments","response","_","_err","overrideExisting","useGetStagesQuery","useUpdateStageMutation","useUpdateAssigneeMutation","useGetContentTypesQuery","useGetRecentlyAssignedDocumentsQuery"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SanitizedAdminUser } from '@strapi/admin/strapi-admin';
|
|
2
2
|
type Roles = SanitizedAdminUser['roles'];
|
|
3
|
-
declare const useGetAdminRolesQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "ReviewWorkflow" | "ReviewWorkflowStages" | "Document" | "ContentTypeSettings", import("@strapi/admin/strapi-admin").SanitizedAdminRole[], "adminApi">>;
|
|
3
|
+
declare const useGetAdminRolesQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ReviewWorkflow" | "ReviewWorkflowStages" | "Document" | "ContentTypeSettings", import("@strapi/admin/strapi-admin").SanitizedAdminRole[], "adminApi">>;
|
|
4
4
|
export { useGetAdminRolesQuery };
|
|
5
5
|
export type { SanitizedAdminUser, Roles };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare const reviewWorkflowsApi: import("@reduxjs/toolkit/query").Api<import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, import("@reduxjs/toolkit/dist/query/endpointDefinitions").UpdateDefinitions<{}, "ReviewWorkflow" | "ReviewWorkflowStages" | "Document" | "ContentTypeSettings", never>, "adminApi", "ReviewWorkflow" | "ReviewWorkflowStages" | "Document" | "ContentTypeSettings", typeof import("@reduxjs/toolkit/query").coreModuleName | typeof import("@reduxjs/toolkit/dist/query/react").reactHooksModuleName>;
|
|
1
|
+
declare const reviewWorkflowsApi: import("@reduxjs/toolkit/query").Api<import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, import("@reduxjs/toolkit/dist/query/endpointDefinitions").UpdateDefinitions<{}, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ReviewWorkflow" | "ReviewWorkflowStages" | "Document" | "ContentTypeSettings", never>, "adminApi", "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ReviewWorkflow" | "ReviewWorkflowStages" | "Document" | "ContentTypeSettings", typeof import("@reduxjs/toolkit/query").coreModuleName | typeof import("@reduxjs/toolkit/dist/query/react").reactHooksModuleName>;
|
|
2
2
|
export { reviewWorkflowsApi };
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import * as Homepage from '../../../shared/contracts/homepage';
|
|
1
2
|
import type { GetStages, UpdateStage, UpdateAssignee } from '../../../shared/contracts/review-workflows';
|
|
2
3
|
import type { Contracts } from '@strapi/content-manager/_internal/shared';
|
|
3
4
|
type ContentType = Contracts.ContentTypes.ContentType;
|
|
@@ -8,7 +9,7 @@ interface ContentTypes {
|
|
|
8
9
|
declare const useGetStagesQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<GetStages.Params & {
|
|
9
10
|
slug: string;
|
|
10
11
|
params?: object | undefined;
|
|
11
|
-
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "ReviewWorkflow" | "ReviewWorkflowStages" | "Document" | "ContentTypeSettings", {
|
|
12
|
+
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ReviewWorkflow" | "ReviewWorkflowStages" | "Document" | "ContentTypeSettings" | "RecentlyAssignedList" | "RecentDocumentList", {
|
|
12
13
|
stages: NonNullable<GetStages.Response['data']>;
|
|
13
14
|
meta: NonNullable<GetStages.Response['meta']>;
|
|
14
15
|
}, "adminApi">>, useUpdateStageMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<{
|
|
@@ -18,7 +19,7 @@ declare const useGetStagesQuery: import("@reduxjs/toolkit/dist/query/react/build
|
|
|
18
19
|
} & UpdateStage.Params & {
|
|
19
20
|
slug: string;
|
|
20
21
|
params?: object | undefined;
|
|
21
|
-
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "ReviewWorkflow" | "ReviewWorkflowStages" | "Document" | "ContentTypeSettings", {
|
|
22
|
+
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ReviewWorkflow" | "ReviewWorkflowStages" | "Document" | "ContentTypeSettings" | "RecentlyAssignedList" | "RecentDocumentList", {
|
|
22
23
|
id: import("@strapi/types/dist/data").ID;
|
|
23
24
|
} & {
|
|
24
25
|
[key: string]: any;
|
|
@@ -29,10 +30,10 @@ declare const useGetStagesQuery: import("@reduxjs/toolkit/dist/query/react/build
|
|
|
29
30
|
} & UpdateAssignee.Params & {
|
|
30
31
|
slug: string;
|
|
31
32
|
params?: object | undefined;
|
|
32
|
-
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "ReviewWorkflow" | "ReviewWorkflowStages" | "Document" | "ContentTypeSettings", {
|
|
33
|
+
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ReviewWorkflow" | "ReviewWorkflowStages" | "Document" | "ContentTypeSettings" | "RecentlyAssignedList" | "RecentDocumentList", {
|
|
33
34
|
id: import("@strapi/types/dist/data").ID;
|
|
34
35
|
} & {
|
|
35
36
|
[key: string]: any;
|
|
36
|
-
}, "adminApi">>, useGetContentTypesQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "ReviewWorkflow" | "ReviewWorkflowStages" | "Document" | "ContentTypeSettings", ContentTypes, "adminApi">>;
|
|
37
|
-
export { useGetStagesQuery, useUpdateStageMutation, useUpdateAssigneeMutation, useGetContentTypesQuery, };
|
|
37
|
+
}, "adminApi">>, useGetContentTypesQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ReviewWorkflow" | "ReviewWorkflowStages" | "Document" | "ContentTypeSettings" | "RecentlyAssignedList" | "RecentDocumentList", ContentTypes, "adminApi">>, useGetRecentlyAssignedDocumentsQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ReviewWorkflow" | "ReviewWorkflowStages" | "Document" | "ContentTypeSettings" | "RecentlyAssignedList" | "RecentDocumentList", Homepage.RecentDocument[], "adminApi">>;
|
|
38
|
+
export { useGetStagesQuery, useUpdateStageMutation, useUpdateAssigneeMutation, useGetContentTypesQuery, useGetRecentlyAssignedDocumentsQuery, };
|
|
38
39
|
export type { ContentTypes, ContentType };
|
|
@@ -1728,16 +1728,16 @@ declare const useGetWorkflowsQuery: import("@reduxjs/toolkit/dist/query/react/bu
|
|
|
1728
1728
|
} & import("@strapi/types/dist/modules/entity-service/params/filters").AbstractAttributesFiltering<"admin::review-workflow">) | undefined;
|
|
1729
1729
|
} & {
|
|
1730
1730
|
populate?: import("@strapi/types/dist/modules/entity-service/params/populate").ArrayNotation<"admin::review-workflow"> | undefined;
|
|
1731
|
-
}), import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "ReviewWorkflow" | "ReviewWorkflowStages" | "Document" | "ContentTypeSettings", {
|
|
1731
|
+
}), import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "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
1735
|
data: Omit<import("../../../shared/contracts/review-workflows").Workflow, "id" | "createdAt" | "updatedAt"> & {
|
|
1736
1736
|
stageRequiredToPublishName?: string | null | undefined;
|
|
1737
1737
|
};
|
|
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<{
|
|
1738
|
+
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "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, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "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<{
|
|
1739
1739
|
data: Partial<Omit<import("../../../shared/contracts/review-workflows").Workflow, "stageRequiredToPublish">> & {
|
|
1740
1740
|
stageRequiredToPublishName?: string | null | undefined;
|
|
1741
1741
|
};
|
|
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">>;
|
|
1742
|
+
} & Update.Params, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ReviewWorkflow" | "ReviewWorkflowStages" | "Document" | "ContentTypeSettings", import("../../../shared/contracts/review-workflows").Workflow, "adminApi">>;
|
|
1743
1743
|
export { useGetWorkflowsQuery, useCreateWorkflowMutation, useDeleteWorkflowMutation, useUpdateWorkflowMutation, type GetWorkflowsParams, };
|
|
@@ -13,7 +13,9 @@ var en = {
|
|
|
13
13
|
"settings.page.purchase.description": "Manage your content review process",
|
|
14
14
|
"settings.page.purchase.perks1": "Customizable review stages",
|
|
15
15
|
"settings.page.purchase.perks2": "Manage user permissions",
|
|
16
|
-
"settings.page.purchase.perks3": "Support for webhooks"
|
|
16
|
+
"settings.page.purchase.perks3": "Support for webhooks",
|
|
17
|
+
"widget.assigned.title": "Assigned to me",
|
|
18
|
+
"widget.assigned.no-data": "No entries"
|
|
17
19
|
};
|
|
18
20
|
|
|
19
21
|
module.exports = en;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"en.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"en.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -11,7 +11,9 @@ var en = {
|
|
|
11
11
|
"settings.page.purchase.description": "Manage your content review process",
|
|
12
12
|
"settings.page.purchase.perks1": "Customizable review stages",
|
|
13
13
|
"settings.page.purchase.perks2": "Manage user permissions",
|
|
14
|
-
"settings.page.purchase.perks3": "Support for webhooks"
|
|
14
|
+
"settings.page.purchase.perks3": "Support for webhooks",
|
|
15
|
+
"widget.assigned.title": "Assigned to me",
|
|
16
|
+
"widget.assigned.no-data": "No entries"
|
|
15
17
|
};
|
|
16
18
|
|
|
17
19
|
export { en as default };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"en.json.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"en.json.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -3,11 +3,13 @@
|
|
|
3
3
|
var workflows = require('./workflows.js');
|
|
4
4
|
var stages = require('./stages.js');
|
|
5
5
|
var assignees = require('./assignees.js');
|
|
6
|
+
var index = require('../homepage/index.js');
|
|
6
7
|
|
|
7
8
|
var controllers = {
|
|
8
9
|
workflows,
|
|
9
10
|
stages,
|
|
10
|
-
assignees
|
|
11
|
+
assignees,
|
|
12
|
+
...index.controllers
|
|
11
13
|
};
|
|
12
14
|
|
|
13
15
|
module.exports = controllers;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../server/src/controllers/index.ts"],"sourcesContent":["import type {} from 'koa-body';\n\nimport workflows from './workflows';\nimport stages from './stages';\nimport assignees from './assignees';\n\nexport default {\n workflows,\n stages,\n assignees,\n};\n"],"names":["workflows","stages","assignees"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../server/src/controllers/index.ts"],"sourcesContent":["import type {} from 'koa-body';\n\nimport workflows from './workflows';\nimport stages from './stages';\nimport assignees from './assignees';\nimport homepage from '../homepage';\n\nexport default {\n workflows,\n stages,\n assignees,\n ...homepage.controllers,\n};\n"],"names":["workflows","stages","assignees","homepage","controllers"],"mappings":";;;;;;;AAOA,kBAAe;AACbA,IAAAA,SAAAA;AACAC,IAAAA,MAAAA;AACAC,IAAAA,SAAAA;AACA,IAAA,GAAGC,MAASC;AACd,CAAE;;;;"}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import workflows from './workflows.mjs';
|
|
2
2
|
import stages from './stages.mjs';
|
|
3
3
|
import assignees from './assignees.mjs';
|
|
4
|
+
import homepage from '../homepage/index.mjs';
|
|
4
5
|
|
|
5
6
|
var controllers = {
|
|
6
7
|
workflows,
|
|
7
8
|
stages,
|
|
8
|
-
assignees
|
|
9
|
+
assignees,
|
|
10
|
+
...homepage.controllers
|
|
9
11
|
};
|
|
10
12
|
|
|
11
13
|
export { controllers as default };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../server/src/controllers/index.ts"],"sourcesContent":["import type {} from 'koa-body';\n\nimport workflows from './workflows';\nimport stages from './stages';\nimport assignees from './assignees';\n\nexport default {\n workflows,\n stages,\n assignees,\n};\n"],"names":["workflows","stages","assignees"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../server/src/controllers/index.ts"],"sourcesContent":["import type {} from 'koa-body';\n\nimport workflows from './workflows';\nimport stages from './stages';\nimport assignees from './assignees';\nimport homepage from '../homepage';\n\nexport default {\n workflows,\n stages,\n assignees,\n ...homepage.controllers,\n};\n"],"names":["workflows","stages","assignees","homepage","controllers"],"mappings":";;;;;AAOA,kBAAe;AACbA,IAAAA,SAAAA;AACAC,IAAAA,MAAAA;AACAC,IAAAA,SAAAA;AACA,IAAA,GAAGC,SAASC;AACd,CAAE;;;;"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const createHomepageController = ()=>{
|
|
4
|
+
const homepageService = strapi.plugin('review-workflows').service('homepage');
|
|
5
|
+
return {
|
|
6
|
+
async getRecentlyAssignedDocuments () {
|
|
7
|
+
return {
|
|
8
|
+
data: await homepageService.getRecentlyAssignedDocuments()
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
exports.createHomepageController = createHomepageController;
|
|
15
|
+
//# sourceMappingURL=homepage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"homepage.js","sources":["../../../../server/src/homepage/controllers/homepage.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\nimport type { GetRecentlyAssignedDocuments } from '../../../../shared/contracts/homepage';\n\nconst createHomepageController = () => {\n const homepageService = strapi.plugin('review-workflows').service('homepage');\n\n return {\n async getRecentlyAssignedDocuments(): Promise<GetRecentlyAssignedDocuments.Response> {\n return { data: await homepageService.getRecentlyAssignedDocuments() };\n },\n } satisfies Core.Controller;\n};\n\nexport { createHomepageController };\n"],"names":["createHomepageController","homepageService","strapi","plugin","service","getRecentlyAssignedDocuments","data"],"mappings":";;AAGA,MAAMA,wBAA2B,GAAA,IAAA;AAC/B,IAAA,MAAMC,kBAAkBC,MAAOC,CAAAA,MAAM,CAAC,kBAAA,CAAA,CAAoBC,OAAO,CAAC,UAAA,CAAA;IAElE,OAAO;QACL,MAAMC,4BAAAA,CAAAA,GAAAA;YACJ,OAAO;gBAAEC,IAAM,EAAA,MAAML,gBAAgBI,4BAA4B;AAAG,aAAA;AACtE;AACF,KAAA;AACF;;;;"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
const createHomepageController = ()=>{
|
|
2
|
+
const homepageService = strapi.plugin('review-workflows').service('homepage');
|
|
3
|
+
return {
|
|
4
|
+
async getRecentlyAssignedDocuments () {
|
|
5
|
+
return {
|
|
6
|
+
data: await homepageService.getRecentlyAssignedDocuments()
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
};
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
export { createHomepageController };
|
|
13
|
+
//# sourceMappingURL=homepage.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"homepage.mjs","sources":["../../../../server/src/homepage/controllers/homepage.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\nimport type { GetRecentlyAssignedDocuments } from '../../../../shared/contracts/homepage';\n\nconst createHomepageController = () => {\n const homepageService = strapi.plugin('review-workflows').service('homepage');\n\n return {\n async getRecentlyAssignedDocuments(): Promise<GetRecentlyAssignedDocuments.Response> {\n return { data: await homepageService.getRecentlyAssignedDocuments() };\n },\n } satisfies Core.Controller;\n};\n\nexport { createHomepageController };\n"],"names":["createHomepageController","homepageService","strapi","plugin","service","getRecentlyAssignedDocuments","data"],"mappings":"AAGA,MAAMA,wBAA2B,GAAA,IAAA;AAC/B,IAAA,MAAMC,kBAAkBC,MAAOC,CAAAA,MAAM,CAAC,kBAAA,CAAA,CAAoBC,OAAO,CAAC,UAAA,CAAA;IAElE,OAAO;QACL,MAAMC,4BAAAA,CAAAA,GAAAA;YACJ,OAAO;gBAAEC,IAAM,EAAA,MAAML,gBAAgBI,4BAA4B;AAAG,aAAA;AACtE;AACF,KAAA;AACF;;;;"}
|