@strapi/content-manager 5.28.0 → 5.30.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. package/dist/admin/components/ConfigurationForm/EditFieldForm.js +1 -1
  2. package/dist/admin/components/ConfigurationForm/EditFieldForm.js.map +1 -1
  3. package/dist/admin/components/ConfigurationForm/EditFieldForm.mjs +1 -1
  4. package/dist/admin/components/ConfigurationForm/EditFieldForm.mjs.map +1 -1
  5. package/dist/admin/components/LeftMenu.js +3 -3
  6. package/dist/admin/components/LeftMenu.js.map +1 -1
  7. package/dist/admin/components/LeftMenu.mjs +3 -3
  8. package/dist/admin/components/LeftMenu.mjs.map +1 -1
  9. package/dist/admin/pages/EditView/components/DocumentActions.js +6 -0
  10. package/dist/admin/pages/EditView/components/DocumentActions.js.map +1 -1
  11. package/dist/admin/pages/EditView/components/DocumentActions.mjs +6 -0
  12. package/dist/admin/pages/EditView/components/DocumentActions.mjs.map +1 -1
  13. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/Link.js +66 -2
  14. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/Link.js.map +1 -1
  15. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/Link.mjs +66 -2
  16. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/Link.mjs.map +1 -1
  17. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/utils/links.js +7 -3
  18. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/utils/links.js.map +1 -1
  19. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/utils/links.mjs +7 -3
  20. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/utils/links.mjs.map +1 -1
  21. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.js +2 -2
  22. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.js.map +1 -1
  23. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.mjs +2 -2
  24. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.mjs.map +1 -1
  25. package/dist/admin/pages/EditView/components/FormInputs/UID.js +2 -1
  26. package/dist/admin/pages/EditView/components/FormInputs/UID.js.map +1 -1
  27. package/dist/admin/pages/EditView/components/FormInputs/UID.mjs +2 -1
  28. package/dist/admin/pages/EditView/components/FormInputs/UID.mjs.map +1 -1
  29. package/dist/admin/pages/EditView/components/Header.js +70 -20
  30. package/dist/admin/pages/EditView/components/Header.js.map +1 -1
  31. package/dist/admin/pages/EditView/components/Header.mjs +72 -22
  32. package/dist/admin/pages/EditView/components/Header.mjs.map +1 -1
  33. package/dist/admin/pages/ListView/components/ViewSettingsMenu.js +5 -2
  34. package/dist/admin/pages/ListView/components/ViewSettingsMenu.js.map +1 -1
  35. package/dist/admin/pages/ListView/components/ViewSettingsMenu.mjs +5 -2
  36. package/dist/admin/pages/ListView/components/ViewSettingsMenu.mjs.map +1 -1
  37. package/dist/admin/services/api.js +2 -1
  38. package/dist/admin/services/api.js.map +1 -1
  39. package/dist/admin/services/api.mjs +2 -1
  40. package/dist/admin/services/api.mjs.map +1 -1
  41. package/dist/admin/services/documents.js +19 -3
  42. package/dist/admin/services/documents.js.map +1 -1
  43. package/dist/admin/services/documents.mjs +19 -3
  44. package/dist/admin/services/documents.mjs.map +1 -1
  45. package/dist/admin/src/history/services/historyVersion.d.ts +1 -1
  46. package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/utils/links.d.ts +2 -0
  47. package/dist/admin/src/pages/EditView/components/Header.d.ts +15 -0
  48. package/dist/admin/src/preview/services/preview.d.ts +1 -1
  49. package/dist/admin/src/services/api.d.ts +1 -1
  50. package/dist/admin/src/services/components.d.ts +2 -2
  51. package/dist/admin/src/services/contentTypes.d.ts +3 -3
  52. package/dist/admin/src/services/documents.d.ts +16 -16
  53. package/dist/admin/src/services/homepage.d.ts +1 -1
  54. package/dist/admin/src/services/init.d.ts +1 -1
  55. package/dist/admin/src/services/relations.d.ts +2 -2
  56. package/dist/admin/src/services/uid.d.ts +3 -3
  57. package/dist/server/controllers/collection-types.js +2 -1
  58. package/dist/server/controllers/collection-types.js.map +1 -1
  59. package/dist/server/controllers/collection-types.mjs +2 -1
  60. package/dist/server/controllers/collection-types.mjs.map +1 -1
  61. package/dist/server/controllers/single-types.js.map +1 -1
  62. package/dist/server/controllers/single-types.mjs.map +1 -1
  63. package/dist/server/preview/services/preview-config.js +8 -33
  64. package/dist/server/preview/services/preview-config.js.map +1 -1
  65. package/dist/server/preview/services/preview-config.mjs +9 -34
  66. package/dist/server/preview/services/preview-config.mjs.map +1 -1
  67. package/dist/server/src/controllers/collection-types.d.ts.map +1 -1
  68. package/dist/server/src/controllers/single-types.d.ts.map +1 -1
  69. package/dist/server/src/preview/services/preview-config.d.ts.map +1 -1
  70. package/package.json +5 -5
@@ -1 +1 @@
1
- {"version":3,"file":"ViewSettingsMenu.mjs","sources":["../../../../../admin/src/pages/ListView/components/ViewSettingsMenu.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { useTracking, useRBAC, useQueryParams } from '@strapi/admin/strapi-admin';\nimport {\n Flex,\n IconButton,\n Popover,\n Checkbox,\n TextButton,\n Typography,\n useCollator,\n LinkButton,\n} from '@strapi/design-system';\nimport { Cog, ListPlus } from '@strapi/icons';\nimport { stringify } from 'qs';\nimport { useIntl } from 'react-intl';\nimport { NavLink } from 'react-router-dom';\n\nimport { useDoc } from '../../../hooks/useDocument';\nimport { useDocumentLayout } from '../../../hooks/useDocumentLayout';\nimport { useTypedSelector } from '../../../modules/hooks';\nimport { checkIfAttributeIsDisplayable } from '../../../utils/attributes';\n\ninterface ViewSettingsMenuProps extends FieldPickerProps {}\n\nconst ViewSettingsMenu = (props: ViewSettingsMenuProps) => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.contentManager?.collectionTypesConfigurations ?? []\n );\n const [{ query }] = useQueryParams<{ plugins?: Record<string, unknown> }>();\n const { formatMessage } = useIntl();\n const {\n allowedActions: { canConfigureView },\n } = useRBAC(permissions);\n\n return (\n <Popover.Root>\n <Popover.Trigger>\n <IconButton\n label={formatMessage({\n id: 'components.ViewSettings.tooltip',\n defaultMessage: 'View Settings',\n })}\n >\n <Cog />\n </IconButton>\n </Popover.Trigger>\n <Popover.Content side=\"bottom\" align=\"end\" sideOffset={4}>\n <Flex alignItems=\"stretch\" direction=\"column\" padding={3} gap={3}>\n {canConfigureView ? (\n <LinkButton\n size=\"S\"\n startIcon={<ListPlus />}\n variant=\"secondary\"\n tag={NavLink}\n to={{\n pathname: 'configurations/list',\n search: query.plugins\n ? stringify({ plugins: query.plugins }, { encode: false })\n : '',\n }}\n >\n {formatMessage({\n id: 'app.links.configure-view',\n defaultMessage: 'Configure the view',\n })}\n </LinkButton>\n ) : null}\n <FieldPicker {...props} />\n </Flex>\n </Popover.Content>\n </Popover.Root>\n );\n};\n\ninterface FieldPickerProps {\n headers?: string[];\n setHeaders: (headers: string[]) => void;\n resetHeaders: () => void;\n}\n\nconst FieldPicker = ({ headers = [], resetHeaders, setHeaders }: FieldPickerProps) => {\n const { trackUsage } = useTracking();\n const { formatMessage, locale } = useIntl();\n\n const { schema, model } = useDoc();\n const { list } = useDocumentLayout(model);\n\n const formatter = useCollator(locale, {\n sensitivity: 'base',\n });\n\n const attributes = schema?.attributes ?? {};\n\n const columns = Object.keys(attributes)\n .filter((name) => checkIfAttributeIsDisplayable(attributes[name]))\n .map((name) => ({\n name,\n label: list.metadatas[name]?.label ?? '',\n }))\n .sort((a, b) => formatter.compare(a.label, b.label));\n\n const handleChange = (name: string) => {\n trackUsage('didChangeDisplayedFields');\n\n /**\n * create an array of the new headers, if the new name exists it should be removed,\n * otherwise it should be added\n */\n const newHeaders = headers.includes(name)\n ? headers.filter((header) => header !== name)\n : [...headers, name];\n\n setHeaders(newHeaders);\n };\n\n const handleReset = () => {\n resetHeaders();\n };\n\n return (\n <Flex\n tag=\"fieldset\"\n direction=\"column\"\n alignItems=\"stretch\"\n gap={3}\n borderWidth={0}\n maxHeight={'240px'}\n overflow={'scroll'}\n >\n <Flex justifyContent=\"space-between\">\n <Typography tag=\"legend\" variant=\"pi\" fontWeight=\"bold\">\n {formatMessage({\n id: 'containers.list.displayedFields',\n defaultMessage: 'Displayed fields',\n })}\n </Typography>\n\n <TextButton onClick={handleReset}>\n {formatMessage({\n id: 'app.components.Button.reset',\n defaultMessage: 'Reset',\n })}\n </TextButton>\n </Flex>\n\n <Flex direction=\"column\" alignItems=\"stretch\">\n {columns.map((header) => {\n const isActive = headers.includes(header.name);\n\n return (\n <Flex\n wrap=\"wrap\"\n gap={2}\n background={isActive ? 'primary100' : 'transparent'}\n hasRadius\n padding={2}\n key={header.name}\n >\n <Checkbox\n onCheckedChange={() => handleChange(header.name)}\n checked={isActive}\n name={header.name}\n >\n <Typography fontSize={1}>{header.label}</Typography>\n </Checkbox>\n </Flex>\n );\n })}\n </Flex>\n </Flex>\n );\n};\n\nexport { ViewSettingsMenu };\nexport type { ViewSettingsMenuProps, FieldPickerProps };\n"],"names":["ViewSettingsMenu","props","permissions","useTypedSelector","state","admin_app","contentManager","collectionTypesConfigurations","query","useQueryParams","formatMessage","useIntl","allowedActions","canConfigureView","useRBAC","_jsxs","Popover","Root","_jsx","Trigger","IconButton","label","id","defaultMessage","Cog","Content","side","align","sideOffset","Flex","alignItems","direction","padding","gap","LinkButton","size","startIcon","ListPlus","variant","tag","NavLink","to","pathname","search","plugins","stringify","encode","FieldPicker","headers","resetHeaders","setHeaders","trackUsage","useTracking","locale","schema","model","useDoc","list","useDocumentLayout","formatter","useCollator","sensitivity","attributes","columns","Object","keys","filter","name","checkIfAttributeIsDisplayable","map","metadatas","sort","a","b","compare","handleChange","newHeaders","includes","header","handleReset","borderWidth","maxHeight","overflow","justifyContent","Typography","fontWeight","TextButton","onClick","isActive","wrap","background","hasRadius","Checkbox","onCheckedChange","checked","fontSize"],"mappings":"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"}
1
+ {"version":3,"file":"ViewSettingsMenu.mjs","sources":["../../../../../admin/src/pages/ListView/components/ViewSettingsMenu.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { useTracking, useRBAC, useQueryParams } from '@strapi/admin/strapi-admin';\nimport {\n Flex,\n IconButton,\n Popover,\n Checkbox,\n TextButton,\n Typography,\n useCollator,\n LinkButton,\n} from '@strapi/design-system';\nimport { Cog, ListPlus } from '@strapi/icons';\nimport { stringify } from 'qs';\nimport { useIntl } from 'react-intl';\nimport { NavLink } from 'react-router-dom';\n\nimport { useDoc } from '../../../hooks/useDocument';\nimport { useDocumentLayout } from '../../../hooks/useDocumentLayout';\nimport { useTypedSelector } from '../../../modules/hooks';\nimport { checkIfAttributeIsDisplayable } from '../../../utils/attributes';\n\ninterface ViewSettingsMenuProps extends FieldPickerProps {}\n\nconst ViewSettingsMenu = (props: ViewSettingsMenuProps) => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.contentManager?.collectionTypesConfigurations ?? []\n );\n const [{ query }] = useQueryParams<{ plugins?: Record<string, unknown> }>();\n const { formatMessage } = useIntl();\n const {\n allowedActions: { canConfigureView },\n } = useRBAC(permissions);\n\n return (\n <Popover.Root>\n <Popover.Trigger>\n <IconButton\n label={formatMessage({\n id: 'components.ViewSettings.tooltip',\n defaultMessage: 'View Settings',\n })}\n >\n <Cog />\n </IconButton>\n </Popover.Trigger>\n <Popover.Content side=\"bottom\" align=\"end\" sideOffset={4}>\n <Flex alignItems=\"stretch\" direction=\"column\" padding={3} gap={3}>\n {canConfigureView ? (\n <LinkButton\n size=\"S\"\n startIcon={<ListPlus />}\n variant=\"secondary\"\n tag={NavLink}\n to={{\n pathname: 'configurations/list',\n search: query.plugins\n ? stringify({ plugins: query.plugins }, { encode: false })\n : '',\n }}\n >\n {formatMessage({\n id: 'app.links.configure-view',\n defaultMessage: 'Configure the view',\n })}\n </LinkButton>\n ) : null}\n <FieldPicker {...props} />\n </Flex>\n </Popover.Content>\n </Popover.Root>\n );\n};\n\ninterface FieldPickerProps {\n headers?: string[];\n setHeaders: (headers: string[]) => void;\n resetHeaders: () => void;\n}\n\nconst FieldPicker = ({ headers = [], resetHeaders, setHeaders }: FieldPickerProps) => {\n const { trackUsage } = useTracking();\n const { formatMessage, locale } = useIntl();\n\n const { schema, model } = useDoc();\n const { list } = useDocumentLayout(model);\n\n const formatter = useCollator(locale, {\n sensitivity: 'base',\n });\n\n const attributes = schema?.attributes ?? {};\n\n const columns = Object.keys(attributes)\n .filter((name) => checkIfAttributeIsDisplayable(attributes[name]))\n .map((name) => ({\n name,\n label: list.metadatas[name]?.label ?? '',\n }))\n .sort((a, b) => formatter.compare(a.label, b.label));\n\n const handleChange = (name: string) => {\n trackUsage('didChangeDisplayedFields');\n\n /**\n * create an array of the new headers, if the new name exists it should be removed,\n * otherwise it should be added\n */\n const newHeaders = headers.includes(name)\n ? headers.filter((header) => header !== name)\n : [...headers, name];\n\n setHeaders(newHeaders);\n };\n\n const handleReset = () => {\n resetHeaders();\n };\n\n return (\n <Flex\n tag=\"fieldset\"\n direction=\"column\"\n alignItems=\"stretch\"\n gap={1}\n borderWidth={0}\n maxHeight={'240px'}\n padding={1}\n overflow={'auto'}\n >\n <Flex justifyContent=\"space-between\" gap={2}>\n <Typography tag=\"legend\" variant=\"pi\" fontWeight=\"bold\">\n {formatMessage({\n id: 'containers.list.displayedFields',\n defaultMessage: 'Displayed fields',\n })}\n </Typography>\n\n <TextButton onClick={handleReset}>\n {formatMessage({\n id: 'app.components.Button.reset',\n defaultMessage: 'Reset',\n })}\n </TextButton>\n </Flex>\n\n <Flex direction=\"column\" alignItems=\"stretch\">\n {columns.map((header) => {\n const isActive = headers.includes(header.name);\n\n return (\n <Flex\n wrap=\"wrap\"\n gap={2}\n background={isActive ? 'primary100' : 'transparent'}\n hasRadius\n padding={2}\n marginBottom={1}\n key={header.name}\n >\n <Checkbox\n onCheckedChange={() => handleChange(header.name)}\n checked={isActive}\n name={header.name}\n >\n <Typography fontSize={1}>{header.label}</Typography>\n </Checkbox>\n </Flex>\n );\n })}\n </Flex>\n </Flex>\n );\n};\n\nexport { ViewSettingsMenu };\nexport type { ViewSettingsMenuProps, FieldPickerProps };\n"],"names":["ViewSettingsMenu","props","permissions","useTypedSelector","state","admin_app","contentManager","collectionTypesConfigurations","query","useQueryParams","formatMessage","useIntl","allowedActions","canConfigureView","useRBAC","_jsxs","Popover","Root","_jsx","Trigger","IconButton","label","id","defaultMessage","Cog","Content","side","align","sideOffset","Flex","alignItems","direction","padding","gap","LinkButton","size","startIcon","ListPlus","variant","tag","NavLink","to","pathname","search","plugins","stringify","encode","FieldPicker","headers","resetHeaders","setHeaders","trackUsage","useTracking","locale","schema","model","useDoc","list","useDocumentLayout","formatter","useCollator","sensitivity","attributes","columns","Object","keys","filter","name","checkIfAttributeIsDisplayable","map","metadatas","sort","a","b","compare","handleChange","newHeaders","includes","header","handleReset","borderWidth","maxHeight","overflow","justifyContent","Typography","fontWeight","TextButton","onClick","isActive","wrap","background","hasRadius","marginBottom","Checkbox","onCheckedChange","checked","fontSize"],"mappings":";;;;;;;;;;;;;AAyBA,MAAMA,mBAAmB,CAACC,KAAAA,GAAAA;AACxB,IAAA,MAAMC,WAAcC,GAAAA,gBAAAA,CAClB,CAACC,KAAAA,GAAUA,KAAMC,CAAAA,SAAS,CAACH,WAAW,CAACI,cAAc,EAAEC,6BAAAA,IAAiC,EAAE,CAAA;AAE5F,IAAA,MAAM,CAAC,EAAEC,KAAK,EAAE,CAAC,GAAGC,cAAAA,EAAAA;IACpB,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;AAC1B,IAAA,MAAM,EACJC,cAAgB,EAAA,EAAEC,gBAAgB,EAAE,EACrC,GAAGC,OAAQZ,CAAAA,WAAAA,CAAAA;IAEZ,qBACEa,IAAA,CAACC,QAAQC,IAAI,EAAA;;AACX,0BAAAC,GAAA,CAACF,QAAQG,OAAO,EAAA;AACd,gBAAA,QAAA,gBAAAD,GAACE,CAAAA,UAAAA,EAAAA;AACCC,oBAAAA,KAAAA,EAAOX,aAAc,CAAA;wBACnBY,EAAI,EAAA,iCAAA;wBACJC,cAAgB,EAAA;AAClB,qBAAA,CAAA;AAEA,oBAAA,QAAA,gBAAAL,GAACM,CAAAA,GAAAA,EAAAA,EAAAA;;;AAGL,0BAAAN,GAAA,CAACF,QAAQS,OAAO,EAAA;gBAACC,IAAK,EAAA,QAAA;gBAASC,KAAM,EAAA,KAAA;gBAAMC,UAAY,EAAA,CAAA;AACrD,gBAAA,QAAA,gBAAAb,IAACc,CAAAA,IAAAA,EAAAA;oBAAKC,UAAW,EAAA,SAAA;oBAAUC,SAAU,EAAA,QAAA;oBAASC,OAAS,EAAA,CAAA;oBAAGC,GAAK,EAAA,CAAA;;AAC5DpB,wBAAAA,gBAAAA,iBACCK,GAACgB,CAAAA,UAAAA,EAAAA;4BACCC,IAAK,EAAA,GAAA;AACLC,4BAAAA,SAAAA,gBAAWlB,GAACmB,CAAAA,QAAAA,EAAAA,EAAAA,CAAAA;4BACZC,OAAQ,EAAA,WAAA;4BACRC,GAAKC,EAAAA,OAAAA;4BACLC,EAAI,EAAA;gCACFC,QAAU,EAAA,qBAAA;gCACVC,MAAQnC,EAAAA,KAAAA,CAAMoC,OAAO,GACjBC,SAAU,CAAA;AAAED,oCAAAA,OAAAA,EAASpC,MAAMoC;iCAAW,EAAA;oCAAEE,MAAQ,EAAA;iCAChD,CAAA,GAAA;AACN,6BAAA;sCAECpC,aAAc,CAAA;gCACbY,EAAI,EAAA,0BAAA;gCACJC,cAAgB,EAAA;AAClB,6BAAA;AAEA,yBAAA,CAAA,GAAA,IAAA;sCACJL,GAAC6B,CAAAA,WAAAA,EAAAA;AAAa,4BAAA,GAAG9C;;;;;;;AAK3B;AAQA,MAAM8C,WAAAA,GAAc,CAAC,EAAEC,OAAAA,GAAU,EAAE,EAAEC,YAAY,EAAEC,UAAU,EAAoB,GAAA;IAC/E,MAAM,EAAEC,UAAU,EAAE,GAAGC,WAAAA,EAAAA;AACvB,IAAA,MAAM,EAAE1C,aAAa,EAAE2C,MAAM,EAAE,GAAG1C,OAAAA,EAAAA;AAElC,IAAA,MAAM,EAAE2C,MAAM,EAAEC,KAAK,EAAE,GAAGC,MAAAA,EAAAA;AAC1B,IAAA,MAAM,EAAEC,IAAI,EAAE,GAAGC,iBAAkBH,CAAAA,KAAAA,CAAAA;IAEnC,MAAMI,SAAAA,GAAYC,YAAYP,MAAQ,EAAA;QACpCQ,WAAa,EAAA;AACf,KAAA,CAAA;IAEA,MAAMC,UAAAA,GAAaR,MAAQQ,EAAAA,UAAAA,IAAc,EAAC;AAE1C,IAAA,MAAMC,UAAUC,MAAOC,CAAAA,IAAI,CAACH,UACzBI,CAAAA,CAAAA,MAAM,CAAC,CAACC,IAAAA,GAASC,6BAA8BN,CAAAA,UAAU,CAACK,IAAK,CAAA,CAAA,CAAA,CAC/DE,GAAG,CAAC,CAACF,QAAU;AACdA,YAAAA,IAAAA;AACA9C,YAAAA,KAAAA,EAAOoC,IAAKa,CAAAA,SAAS,CAACH,IAAAA,CAAK,EAAE9C,KAAS,IAAA;AACxC,SAAA,CACCkD,CAAAA,CAAAA,IAAI,CAAC,CAACC,CAAGC,EAAAA,CAAAA,GAAMd,SAAUe,CAAAA,OAAO,CAACF,CAAAA,CAAEnD,KAAK,EAAEoD,EAAEpD,KAAK,CAAA,CAAA;AAEpD,IAAA,MAAMsD,eAAe,CAACR,IAAAA,GAAAA;QACpBhB,UAAW,CAAA,0BAAA,CAAA;AAEX;;;AAGC,QACD,MAAMyB,UAAAA,GAAa5B,OAAQ6B,CAAAA,QAAQ,CAACV,IAAAA,CAAAA,GAChCnB,OAAQkB,CAAAA,MAAM,CAAC,CAACY,MAAWA,GAAAA,MAAAA,KAAWX,IACtC,CAAA,GAAA;AAAInB,YAAAA,GAAAA,OAAAA;AAASmB,YAAAA;AAAK,SAAA;QAEtBjB,UAAW0B,CAAAA,UAAAA,CAAAA;AACb,KAAA;AAEA,IAAA,MAAMG,WAAc,GAAA,IAAA;AAClB9B,QAAAA,YAAAA,EAAAA;AACF,KAAA;AAEA,IAAA,qBACElC,IAACc,CAAAA,IAAAA,EAAAA;QACCU,GAAI,EAAA,UAAA;QACJR,SAAU,EAAA,QAAA;QACVD,UAAW,EAAA,SAAA;QACXG,GAAK,EAAA,CAAA;QACL+C,WAAa,EAAA,CAAA;QACbC,SAAW,EAAA,OAAA;QACXjD,OAAS,EAAA,CAAA;QACTkD,QAAU,EAAA,MAAA;;0BAEVnE,IAACc,CAAAA,IAAAA,EAAAA;gBAAKsD,cAAe,EAAA,eAAA;gBAAgBlD,GAAK,EAAA,CAAA;;kCACxCf,GAACkE,CAAAA,UAAAA,EAAAA;wBAAW7C,GAAI,EAAA,QAAA;wBAASD,OAAQ,EAAA,IAAA;wBAAK+C,UAAW,EAAA,MAAA;kCAC9C3E,aAAc,CAAA;4BACbY,EAAI,EAAA,iCAAA;4BACJC,cAAgB,EAAA;AAClB,yBAAA;;kCAGFL,GAACoE,CAAAA,UAAAA,EAAAA;wBAAWC,OAASR,EAAAA,WAAAA;kCAClBrE,aAAc,CAAA;4BACbY,EAAI,EAAA,6BAAA;4BACJC,cAAgB,EAAA;AAClB,yBAAA;;;;0BAIJL,GAACW,CAAAA,IAAAA,EAAAA;gBAAKE,SAAU,EAAA,QAAA;gBAASD,UAAW,EAAA,SAAA;0BACjCiC,OAAQM,CAAAA,GAAG,CAAC,CAACS,MAAAA,GAAAA;AACZ,oBAAA,MAAMU,QAAWxC,GAAAA,OAAAA,CAAQ6B,QAAQ,CAACC,OAAOX,IAAI,CAAA;AAE7C,oBAAA,qBACEjD,GAACW,CAAAA,IAAAA,EAAAA;wBACC4D,IAAK,EAAA,MAAA;wBACLxD,GAAK,EAAA,CAAA;AACLyD,wBAAAA,UAAAA,EAAYF,WAAW,YAAe,GAAA,aAAA;wBACtCG,SAAS,EAAA,IAAA;wBACT3D,OAAS,EAAA,CAAA;wBACT4D,YAAc,EAAA,CAAA;AAGd,wBAAA,QAAA,gBAAA1E,GAAC2E,CAAAA,QAAAA,EAAAA;4BACCC,eAAiB,EAAA,IAAMnB,YAAaG,CAAAA,MAAAA,CAAOX,IAAI,CAAA;4BAC/C4B,OAASP,EAAAA,QAAAA;AACTrB,4BAAAA,IAAAA,EAAMW,OAAOX,IAAI;AAEjB,4BAAA,QAAA,gBAAAjD,GAACkE,CAAAA,UAAAA,EAAAA;gCAAWY,QAAU,EAAA,CAAA;AAAIlB,gCAAAA,QAAAA,EAAAA,MAAAA,CAAOzD;;;AAP9ByD,qBAAAA,EAAAA,MAAAA,CAAOX,IAAI,CAAA;AAWtB,iBAAA;;;;AAIR,CAAA;;;;"}
@@ -15,7 +15,8 @@ const contentManagerApi = strapiAdmin.adminApi.enhanceEndpoints({
15
15
  'RecentDocumentList',
16
16
  'GuidedTourMeta',
17
17
  'CountDocuments',
18
- 'UpcomingReleasesList'
18
+ 'UpcomingReleasesList',
19
+ 'AILocalizationJobs'
19
20
  ]
20
21
  });
21
22
 
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sources":["../../../admin/src/services/api.ts"],"sourcesContent":["import { adminApi } from '@strapi/admin/strapi-admin';\n\nconst contentManagerApi = adminApi.enhanceEndpoints({\n addTagTypes: [\n 'ComponentConfiguration',\n 'ContentTypesConfiguration',\n 'ContentTypeSettings',\n 'Document',\n 'InitialData',\n 'HistoryVersion',\n 'Relations',\n 'UidAvailability',\n 'RecentDocumentList',\n 'GuidedTourMeta',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n});\n\nexport { contentManagerApi };\n"],"names":["contentManagerApi","adminApi","enhanceEndpoints","addTagTypes"],"mappings":";;;;AAEMA,MAAAA,iBAAAA,GAAoBC,oBAASC,CAAAA,gBAAgB,CAAC;IAClDC,WAAa,EAAA;AACX,QAAA,wBAAA;AACA,QAAA,2BAAA;AACA,QAAA,qBAAA;AACA,QAAA,UAAA;AACA,QAAA,aAAA;AACA,QAAA,gBAAA;AACA,QAAA,WAAA;AACA,QAAA,iBAAA;AACA,QAAA,oBAAA;AACA,QAAA,gBAAA;AACA,QAAA,gBAAA;AACA,QAAA;AACD;AACH,CAAA;;;;"}
1
+ {"version":3,"file":"api.js","sources":["../../../admin/src/services/api.ts"],"sourcesContent":["import { adminApi } from '@strapi/admin/strapi-admin';\n\nconst contentManagerApi = adminApi.enhanceEndpoints({\n addTagTypes: [\n 'ComponentConfiguration',\n 'ContentTypesConfiguration',\n 'ContentTypeSettings',\n 'Document',\n 'InitialData',\n 'HistoryVersion',\n 'Relations',\n 'UidAvailability',\n 'RecentDocumentList',\n 'GuidedTourMeta',\n 'CountDocuments',\n 'UpcomingReleasesList',\n 'AILocalizationJobs',\n ],\n});\n\nexport { contentManagerApi };\n"],"names":["contentManagerApi","adminApi","enhanceEndpoints","addTagTypes"],"mappings":";;;;AAEMA,MAAAA,iBAAAA,GAAoBC,oBAASC,CAAAA,gBAAgB,CAAC;IAClDC,WAAa,EAAA;AACX,QAAA,wBAAA;AACA,QAAA,2BAAA;AACA,QAAA,qBAAA;AACA,QAAA,UAAA;AACA,QAAA,aAAA;AACA,QAAA,gBAAA;AACA,QAAA,WAAA;AACA,QAAA,iBAAA;AACA,QAAA,oBAAA;AACA,QAAA,gBAAA;AACA,QAAA,gBAAA;AACA,QAAA,sBAAA;AACA,QAAA;AACD;AACH,CAAA;;;;"}
@@ -13,7 +13,8 @@ const contentManagerApi = adminApi.enhanceEndpoints({
13
13
  'RecentDocumentList',
14
14
  'GuidedTourMeta',
15
15
  'CountDocuments',
16
- 'UpcomingReleasesList'
16
+ 'UpcomingReleasesList',
17
+ 'AILocalizationJobs'
17
18
  ]
18
19
  });
19
20
 
@@ -1 +1 @@
1
- {"version":3,"file":"api.mjs","sources":["../../../admin/src/services/api.ts"],"sourcesContent":["import { adminApi } from '@strapi/admin/strapi-admin';\n\nconst contentManagerApi = adminApi.enhanceEndpoints({\n addTagTypes: [\n 'ComponentConfiguration',\n 'ContentTypesConfiguration',\n 'ContentTypeSettings',\n 'Document',\n 'InitialData',\n 'HistoryVersion',\n 'Relations',\n 'UidAvailability',\n 'RecentDocumentList',\n 'GuidedTourMeta',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n});\n\nexport { contentManagerApi };\n"],"names":["contentManagerApi","adminApi","enhanceEndpoints","addTagTypes"],"mappings":";;AAEMA,MAAAA,iBAAAA,GAAoBC,QAASC,CAAAA,gBAAgB,CAAC;IAClDC,WAAa,EAAA;AACX,QAAA,wBAAA;AACA,QAAA,2BAAA;AACA,QAAA,qBAAA;AACA,QAAA,UAAA;AACA,QAAA,aAAA;AACA,QAAA,gBAAA;AACA,QAAA,WAAA;AACA,QAAA,iBAAA;AACA,QAAA,oBAAA;AACA,QAAA,gBAAA;AACA,QAAA,gBAAA;AACA,QAAA;AACD;AACH,CAAA;;;;"}
1
+ {"version":3,"file":"api.mjs","sources":["../../../admin/src/services/api.ts"],"sourcesContent":["import { adminApi } from '@strapi/admin/strapi-admin';\n\nconst contentManagerApi = adminApi.enhanceEndpoints({\n addTagTypes: [\n 'ComponentConfiguration',\n 'ContentTypesConfiguration',\n 'ContentTypeSettings',\n 'Document',\n 'InitialData',\n 'HistoryVersion',\n 'Relations',\n 'UidAvailability',\n 'RecentDocumentList',\n 'GuidedTourMeta',\n 'CountDocuments',\n 'UpcomingReleasesList',\n 'AILocalizationJobs',\n ],\n});\n\nexport { contentManagerApi };\n"],"names":["contentManagerApi","adminApi","enhanceEndpoints","addTagTypes"],"mappings":";;AAEMA,MAAAA,iBAAAA,GAAoBC,QAASC,CAAAA,gBAAgB,CAAC;IAClDC,WAAa,EAAA;AACX,QAAA,wBAAA;AACA,QAAA,2BAAA;AACA,QAAA,qBAAA;AACA,QAAA,UAAA;AACA,QAAA,aAAA;AACA,QAAA,gBAAA;AACA,QAAA,WAAA;AACA,QAAA,iBAAA;AACA,QAAA,oBAAA;AACA,QAAA,gBAAA;AACA,QAAA,gBAAA;AACA,QAAA,sBAAA;AACA,QAAA;AACD;AACH,CAAA;;;;"}
@@ -104,11 +104,19 @@ const documentApi = api.contentManagerApi.injectEndpoints({
104
104
  params
105
105
  }
106
106
  }),
107
- invalidatesTags: (_result, _error, { collectionType, model })=>[
107
+ invalidatesTags: (_result, _error, { collectionType, model, documentId })=>[
108
108
  {
109
109
  type: 'Document',
110
110
  id: collectionType !== collections.SINGLE_TYPES ? `${model}_LIST` : model
111
111
  },
112
+ {
113
+ type: 'Document',
114
+ id: collectionType !== collections.SINGLE_TYPES ? `${model}_${documentId}` : model
115
+ },
116
+ {
117
+ type: 'Document',
118
+ id: `${model}_ALL_ITEMS`
119
+ },
112
120
  'RecentDocumentList',
113
121
  'CountDocuments',
114
122
  'UpcomingReleasesList'
@@ -274,7 +282,11 @@ const documentApi = api.contentManagerApi.injectEndpoints({
274
282
  'Relations',
275
283
  'RecentDocumentList',
276
284
  'CountDocuments',
277
- 'UpcomingReleasesList'
285
+ 'UpcomingReleasesList',
286
+ {
287
+ type: 'AILocalizationJobs',
288
+ id: collectionType !== collections.SINGLE_TYPES ? `${model}_${documentId}` : model
289
+ }
278
290
  ];
279
291
  }
280
292
  }),
@@ -321,7 +333,11 @@ const documentApi = api.contentManagerApi.injectEndpoints({
321
333
  },
322
334
  'RecentDocumentList',
323
335
  'CountDocuments',
324
- 'UpcomingReleasesList'
336
+ 'UpcomingReleasesList',
337
+ {
338
+ type: 'AILocalizationJobs',
339
+ id: collectionType !== collections.SINGLE_TYPES ? `${model}_${documentId}` : model
340
+ }
325
341
  ];
326
342
  },
327
343
  async onQueryStarted ({ data, ...patch }, { dispatch, queryFulfilled }) {
@@ -1 +1 @@
1
- {"version":3,"file":"documents.js","sources":["../../../admin/src/services/documents.ts"],"sourcesContent":["/**\n * Related to fetching the actual content of a collection type or single type.\n */\nimport { stringify } from 'qs';\n\nimport { SINGLE_TYPES } from '../constants/collections';\n\nimport { contentManagerApi } from './api';\n\nimport type {\n Clone,\n Create,\n Delete,\n Find,\n FindOne,\n BulkDelete,\n BulkPublish,\n BulkUnpublish,\n Discard,\n CountDraftRelations,\n CountManyEntriesDraftRelations,\n Publish,\n Unpublish,\n Update,\n} from '../../../shared/contracts/collection-types';\n\nconst documentApi = contentManagerApi.injectEndpoints({\n overrideExisting: true,\n endpoints: (builder) => ({\n autoCloneDocument: builder.mutation<\n Clone.Response,\n Clone.Params & {\n params?: Find.Request['query'] & Clone.Request['query'];\n }\n >({\n query: ({ model, sourceId, params }) => ({\n url: `/content-manager/collection-types/${model}/auto-clone/${sourceId}`,\n method: 'POST',\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, error, { model }) => {\n if (error) {\n return [];\n }\n\n return [\n { type: 'Document', id: `${model}_LIST` },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n cloneDocument: builder.mutation<\n Clone.Response,\n Clone.Params & {\n data: Clone.Request['body'];\n params?: Clone.Request['query'];\n }\n >({\n query: ({ model, sourceId, data, params }) => ({\n url: `/content-manager/collection-types/${model}/clone/${sourceId}`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { model }) => [\n { type: 'Document', id: `${model}_LIST` },\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n /**\n * Creates a new collection-type document. This should ONLY be used for collection-types.\n * single-types should always be using `updateDocument` since they always exist.\n */\n createDocument: builder.mutation<\n Create.Response,\n Create.Params & {\n data: Create.Request['body'];\n params?: Create.Request['query'];\n }\n >({\n query: ({ model, data, params }) => ({\n url: `/content-manager/collection-types/${model}`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (result, _error, { model }) => [\n { type: 'Document', id: `${model}_LIST` },\n 'Relations',\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n transformResponse: (response: Create.Response, meta, arg): Create.Response => {\n /**\n * TODO v6\n * Adapt plugin:users-permissions.user to return the same response\n * shape as all other requests. The error is returned as expected.\n */\n if (!('data' in response) && arg.model === 'plugin::users-permissions.user') {\n return {\n data: response,\n meta: {\n availableStatus: [],\n availableLocales: [],\n },\n };\n }\n\n return response;\n },\n }),\n deleteDocument: builder.mutation<\n Delete.Response,\n Pick<Delete.Params, 'model'> &\n Pick<Partial<Delete.Params>, 'documentId'> & {\n collectionType: string;\n params?: Find.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, params }) => ({\n url: `/content-manager/${collectionType}/${model}${\n collectionType !== SINGLE_TYPES && documentId ? `/${documentId}` : ''\n }`,\n method: 'DELETE',\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model }) => [\n { type: 'Document', id: collectionType !== SINGLE_TYPES ? `${model}_LIST` : model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n deleteManyDocuments: builder.mutation<\n BulkDelete.Response,\n BulkDelete.Params & BulkDelete.Request['body'] & { params?: Find.Request['query'] }\n >({\n query: ({ model, params, ...body }) => ({\n url: `/content-manager/collection-types/${model}/actions/bulkDelete`,\n method: 'POST',\n data: body,\n config: {\n params,\n },\n }),\n invalidatesTags: (_res, _error, { model }) => [\n { type: 'Document', id: `${model}_LIST` },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n discardDocument: builder.mutation<\n Discard.Response,\n Pick<Discard.Params, 'model'> &\n Partial<Pick<Discard.Params, 'documentId'>> & {\n collectionType: string;\n params?: Find.Request['query'] & {\n [key: string]: any;\n };\n }\n >({\n query: ({ collectionType, model, documentId, params }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/discard`\n : `/content-manager/${collectionType}/${model}/actions/discard`,\n method: 'POST',\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n { type: 'Document', id: `${model}_LIST` },\n 'Relations',\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n /**\n * Gets all documents of a collection type or single type.\n * By passing different params you can get different results e.g. only published documents or 'es' documents.\n */\n getAllDocuments: builder.query<\n Find.Response,\n Find.Params & {\n params?: Find.Request['query'] & {\n [key: string]: any;\n };\n }\n >({\n query: ({ model, params }) => ({\n url: `/content-manager/collection-types/${model}`,\n method: 'GET',\n config: {\n params: stringify(params, { encode: true }),\n },\n }),\n providesTags: (result, _error, arg) => {\n return [\n { type: 'Document', id: `ALL_LIST` },\n { type: 'Document', id: `${arg.model}_LIST` },\n ...(result?.results.map(({ documentId }) => ({\n type: 'Document' as const,\n id: `${arg.model}_${documentId}`,\n })) ?? []),\n ];\n },\n }),\n getDraftRelationCount: builder.query<\n CountDraftRelations.Response,\n {\n collectionType: string;\n model: string;\n /**\n * You don't pass the documentId if the document is a single-type\n */\n documentId?: string;\n params?: CountDraftRelations.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, params }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/countDraftRelations`\n : `/content-manager/${collectionType}/${model}/actions/countDraftRelations`,\n method: 'GET',\n config: {\n params,\n },\n }),\n }),\n getDocument: builder.query<\n FindOne.Response,\n Pick<FindOne.Params, 'model'> &\n Partial<Pick<FindOne.Params, 'documentId'>> & {\n collectionType: string;\n params?: FindOne.Request['query'];\n }\n >({\n // @ts-expect-error – TODO: fix ts error where data unknown doesn't work with response via an assertion?\n queryFn: async (\n { collectionType, model, documentId, params },\n _api,\n _extraOpts,\n baseQuery\n ) => {\n const res = await baseQuery({\n url: `/content-manager/${collectionType}/${model}${documentId ? `/${documentId}` : ''}`,\n method: 'GET',\n config: {\n params,\n },\n });\n\n /**\n * To stop the query from locking itself in multiple retries, we intercept the error here and manage correctly.\n * This is because single-types don't have a list view and fetching them with the route `/single-types/:model`\n * never returns a list, just a single document but this won't exist if you've not made one before.\n */\n if (res.error && res.error.name === 'NotFoundError' && collectionType === SINGLE_TYPES) {\n return { data: { document: undefined }, error: undefined };\n }\n\n return res;\n },\n providesTags: (result, _error, { collectionType, model, documentId }) => {\n return [\n // we prefer the result's id because we don't fetch single-types with an ID.\n {\n type: 'Document',\n id:\n collectionType !== SINGLE_TYPES\n ? `${model}_${result && 'documentId' in result ? result.documentId : documentId}`\n : model,\n },\n // Make it easy to invalidate all individual documents queries for a model\n {\n type: 'Document',\n id: `${model}_ALL_ITEMS`,\n },\n ];\n },\n }),\n getManyDraftRelationCount: builder.query<\n CountManyEntriesDraftRelations.Response['data'],\n CountManyEntriesDraftRelations.Request['query'] & {\n model: string;\n }\n >({\n query: ({ model, ...params }) => ({\n url: `/content-manager/collection-types/${model}/actions/countManyEntriesDraftRelations`,\n method: 'GET',\n config: {\n params,\n },\n }),\n transformResponse: (response: CountManyEntriesDraftRelations.Response) => response.data,\n }),\n /**\n * This endpoint will either create or update documents at the same time as publishing.\n */\n publishDocument: builder.mutation<\n Publish.Response,\n Pick<Publish.Params, 'model'> &\n Partial<Pick<Publish.Params, 'documentId'>> & {\n collectionType: string;\n data: Publish.Request['body'];\n params?: Publish.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, params, data }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/publish`\n : `/content-manager/${collectionType}/${model}/actions/publish`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n { type: 'Document', id: `${model}_LIST` },\n 'Relations',\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n publishManyDocuments: builder.mutation<\n BulkPublish.Response,\n BulkPublish.Params & BulkPublish.Request['body'] & { params?: BulkPublish.Request['query'] }\n >({\n query: ({ model, params, ...body }) => ({\n url: `/content-manager/collection-types/${model}/actions/bulkPublish`,\n method: 'POST',\n data: body,\n config: {\n params,\n },\n }),\n invalidatesTags: (_res, _error, { model, documentIds }) => {\n return [\n ...documentIds.map((id) => ({ type: 'Document' as const, id: `${model}_${id}` })),\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n updateDocument: builder.mutation<\n Update.Response,\n Pick<Update.Params, 'model'> &\n Partial<Pick<Update.Params, 'documentId'>> & {\n collectionType: string;\n data: Update.Request['body'];\n params?: Update.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, data, params }) => ({\n url: `/content-manager/${collectionType}/${model}${documentId ? `/${documentId}` : ''}`,\n method: 'PUT',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n 'Relations',\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n async onQueryStarted({ data, ...patch }, { dispatch, queryFulfilled }) {\n // Optimistically update the cache with the new data\n const patchResult = dispatch(\n documentApi.util.updateQueryData('getDocument', patch, (draft) => {\n Object.assign(draft.data, data);\n })\n );\n try {\n await queryFulfilled;\n } catch {\n // Rollback the optimistic update if there's an error\n patchResult.undo();\n }\n },\n transformResponse: (response: Update.Response, meta, arg): Update.Response => {\n /**\n * TODO v6\n * Adapt plugin:users-permissions.user to return the same response\n * shape as all other requests. The error is returned as expected.\n */\n if (!('data' in response) && arg.model === 'plugin::users-permissions.user') {\n return {\n data: response,\n meta: {\n availableStatus: [],\n availableLocales: [],\n },\n };\n }\n\n return response;\n },\n }),\n unpublishDocument: builder.mutation<\n Unpublish.Response,\n Pick<Unpublish.Params, 'model'> &\n Partial<Pick<Unpublish.Params, 'documentId'>> & {\n collectionType: string;\n params?: Unpublish.Request['query'];\n data: Unpublish.Request['body'];\n }\n >({\n query: ({ collectionType, model, documentId, params, data }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/unpublish`\n : `/content-manager/${collectionType}/${model}/actions/unpublish`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n unpublishManyDocuments: builder.mutation<\n BulkUnpublish.Response,\n Pick<BulkUnpublish.Params, 'model'> &\n BulkUnpublish.Request['body'] & {\n params?: BulkUnpublish.Request['query'];\n }\n >({\n query: ({ model, params, ...body }) => ({\n url: `/content-manager/collection-types/${model}/actions/bulkUnpublish`,\n method: 'POST',\n data: body,\n config: {\n params,\n },\n }),\n invalidatesTags: (_res, _error, { model, documentIds }) => [\n ...documentIds.map((id) => ({ type: 'Document' as const, id: `${model}_${id}` })),\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n }),\n});\n\nconst {\n useAutoCloneDocumentMutation,\n useCloneDocumentMutation,\n useCreateDocumentMutation,\n useDeleteDocumentMutation,\n useDeleteManyDocumentsMutation,\n useDiscardDocumentMutation,\n useGetAllDocumentsQuery,\n useLazyGetDocumentQuery,\n useGetDocumentQuery,\n useLazyGetDraftRelationCountQuery,\n useGetManyDraftRelationCountQuery,\n usePublishDocumentMutation,\n usePublishManyDocumentsMutation,\n useUpdateDocumentMutation,\n useUnpublishDocumentMutation,\n useUnpublishManyDocumentsMutation,\n} = documentApi;\n\nexport {\n useAutoCloneDocumentMutation,\n useCloneDocumentMutation,\n useCreateDocumentMutation,\n useDeleteDocumentMutation,\n useDeleteManyDocumentsMutation,\n useDiscardDocumentMutation,\n useGetAllDocumentsQuery,\n useLazyGetDocumentQuery,\n useGetDocumentQuery,\n useLazyGetDraftRelationCountQuery as useGetDraftRelationCountQuery,\n useGetManyDraftRelationCountQuery,\n usePublishDocumentMutation,\n usePublishManyDocumentsMutation,\n useUpdateDocumentMutation,\n useUnpublishDocumentMutation,\n useUnpublishManyDocumentsMutation,\n};\n"],"names":["documentApi","contentManagerApi","injectEndpoints","overrideExisting","endpoints","builder","autoCloneDocument","mutation","query","model","sourceId","params","url","method","config","invalidatesTags","_result","error","type","id","cloneDocument","data","_error","createDocument","result","transformResponse","response","meta","arg","availableStatus","availableLocales","deleteDocument","collectionType","documentId","SINGLE_TYPES","deleteManyDocuments","body","_res","discardDocument","getAllDocuments","stringify","encode","providesTags","results","map","getDraftRelationCount","getDocument","queryFn","_api","_extraOpts","baseQuery","res","name","document","undefined","getManyDraftRelationCount","publishDocument","publishManyDocuments","documentIds","updateDocument","onQueryStarted","patch","dispatch","queryFulfilled","patchResult","util","updateQueryData","draft","Object","assign","undo","unpublishDocument","unpublishManyDocuments","useAutoCloneDocumentMutation","useCloneDocumentMutation","useCreateDocumentMutation","useDeleteDocumentMutation","useDeleteManyDocumentsMutation","useDiscardDocumentMutation","useGetAllDocumentsQuery","useLazyGetDocumentQuery","useGetDocumentQuery","useLazyGetDraftRelationCountQuery","useGetManyDraftRelationCountQuery","usePublishDocumentMutation","usePublishManyDocumentsMutation","useUpdateDocumentMutation","useUnpublishDocumentMutation","useUnpublishManyDocumentsMutation"],"mappings":"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"}
1
+ {"version":3,"file":"documents.js","sources":["../../../admin/src/services/documents.ts"],"sourcesContent":["/**\n * Related to fetching the actual content of a collection type or single type.\n */\nimport { stringify } from 'qs';\n\nimport { SINGLE_TYPES } from '../constants/collections';\n\nimport { contentManagerApi } from './api';\n\nimport type {\n Clone,\n Create,\n Delete,\n Find,\n FindOne,\n BulkDelete,\n BulkPublish,\n BulkUnpublish,\n Discard,\n CountDraftRelations,\n CountManyEntriesDraftRelations,\n Publish,\n Unpublish,\n Update,\n} from '../../../shared/contracts/collection-types';\n\nconst documentApi = contentManagerApi.injectEndpoints({\n overrideExisting: true,\n endpoints: (builder) => ({\n autoCloneDocument: builder.mutation<\n Clone.Response,\n Clone.Params & {\n params?: Find.Request['query'] & Clone.Request['query'];\n }\n >({\n query: ({ model, sourceId, params }) => ({\n url: `/content-manager/collection-types/${model}/auto-clone/${sourceId}`,\n method: 'POST',\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, error, { model }) => {\n if (error) {\n return [];\n }\n\n return [\n { type: 'Document', id: `${model}_LIST` },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n cloneDocument: builder.mutation<\n Clone.Response,\n Clone.Params & {\n data: Clone.Request['body'];\n params?: Clone.Request['query'];\n }\n >({\n query: ({ model, sourceId, data, params }) => ({\n url: `/content-manager/collection-types/${model}/clone/${sourceId}`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { model }) => [\n { type: 'Document', id: `${model}_LIST` },\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n /**\n * Creates a new collection-type document. This should ONLY be used for collection-types.\n * single-types should always be using `updateDocument` since they always exist.\n */\n createDocument: builder.mutation<\n Create.Response,\n Create.Params & {\n data: Create.Request['body'];\n params?: Create.Request['query'];\n }\n >({\n query: ({ model, data, params }) => ({\n url: `/content-manager/collection-types/${model}`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (result, _error, { model }) => [\n { type: 'Document', id: `${model}_LIST` },\n 'Relations',\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n transformResponse: (response: Create.Response, meta, arg): Create.Response => {\n /**\n * TODO v6\n * Adapt plugin:users-permissions.user to return the same response\n * shape as all other requests. The error is returned as expected.\n */\n if (!('data' in response) && arg.model === 'plugin::users-permissions.user') {\n return {\n data: response,\n meta: {\n availableStatus: [],\n availableLocales: [],\n },\n };\n }\n\n return response;\n },\n }),\n deleteDocument: builder.mutation<\n Delete.Response,\n Pick<Delete.Params, 'model'> &\n Pick<Partial<Delete.Params>, 'documentId'> & {\n collectionType: string;\n params?: Find.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, params }) => ({\n url: `/content-manager/${collectionType}/${model}${\n collectionType !== SINGLE_TYPES && documentId ? `/${documentId}` : ''\n }`,\n method: 'DELETE',\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => [\n { type: 'Document', id: collectionType !== SINGLE_TYPES ? `${model}_LIST` : model },\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n { type: 'Document', id: `${model}_ALL_ITEMS` },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n deleteManyDocuments: builder.mutation<\n BulkDelete.Response,\n BulkDelete.Params & BulkDelete.Request['body'] & { params?: Find.Request['query'] }\n >({\n query: ({ model, params, ...body }) => ({\n url: `/content-manager/collection-types/${model}/actions/bulkDelete`,\n method: 'POST',\n data: body,\n config: {\n params,\n },\n }),\n invalidatesTags: (_res, _error, { model }) => [\n { type: 'Document', id: `${model}_LIST` },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n discardDocument: builder.mutation<\n Discard.Response,\n Pick<Discard.Params, 'model'> &\n Partial<Pick<Discard.Params, 'documentId'>> & {\n collectionType: string;\n params?: Find.Request['query'] & {\n [key: string]: any;\n };\n }\n >({\n query: ({ collectionType, model, documentId, params }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/discard`\n : `/content-manager/${collectionType}/${model}/actions/discard`,\n method: 'POST',\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n { type: 'Document', id: `${model}_LIST` },\n 'Relations',\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n /**\n * Gets all documents of a collection type or single type.\n * By passing different params you can get different results e.g. only published documents or 'es' documents.\n */\n getAllDocuments: builder.query<\n Find.Response,\n Find.Params & {\n params?: Find.Request['query'] & {\n [key: string]: any;\n };\n }\n >({\n query: ({ model, params }) => ({\n url: `/content-manager/collection-types/${model}`,\n method: 'GET',\n config: {\n params: stringify(params, { encode: true }),\n },\n }),\n providesTags: (result, _error, arg) => {\n return [\n { type: 'Document', id: `ALL_LIST` },\n { type: 'Document', id: `${arg.model}_LIST` },\n ...(result?.results.map(({ documentId }) => ({\n type: 'Document' as const,\n id: `${arg.model}_${documentId}`,\n })) ?? []),\n ];\n },\n }),\n getDraftRelationCount: builder.query<\n CountDraftRelations.Response,\n {\n collectionType: string;\n model: string;\n /**\n * You don't pass the documentId if the document is a single-type\n */\n documentId?: string;\n params?: CountDraftRelations.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, params }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/countDraftRelations`\n : `/content-manager/${collectionType}/${model}/actions/countDraftRelations`,\n method: 'GET',\n config: {\n params,\n },\n }),\n }),\n getDocument: builder.query<\n FindOne.Response,\n Pick<FindOne.Params, 'model'> &\n Partial<Pick<FindOne.Params, 'documentId'>> & {\n collectionType: string;\n params?: FindOne.Request['query'];\n }\n >({\n // @ts-expect-error – TODO: fix ts error where data unknown doesn't work with response via an assertion?\n queryFn: async (\n { collectionType, model, documentId, params },\n _api,\n _extraOpts,\n baseQuery\n ) => {\n const res = await baseQuery({\n url: `/content-manager/${collectionType}/${model}${documentId ? `/${documentId}` : ''}`,\n method: 'GET',\n config: {\n params,\n },\n });\n\n /**\n * To stop the query from locking itself in multiple retries, we intercept the error here and manage correctly.\n * This is because single-types don't have a list view and fetching them with the route `/single-types/:model`\n * never returns a list, just a single document but this won't exist if you've not made one before.\n */\n if (res.error && res.error.name === 'NotFoundError' && collectionType === SINGLE_TYPES) {\n return { data: { document: undefined }, error: undefined };\n }\n\n return res;\n },\n providesTags: (result, _error, { collectionType, model, documentId }) => {\n return [\n // we prefer the result's id because we don't fetch single-types with an ID.\n {\n type: 'Document',\n id:\n collectionType !== SINGLE_TYPES\n ? `${model}_${result && 'documentId' in result ? result.documentId : documentId}`\n : model,\n },\n // Make it easy to invalidate all individual documents queries for a model\n {\n type: 'Document',\n id: `${model}_ALL_ITEMS`,\n },\n ];\n },\n }),\n getManyDraftRelationCount: builder.query<\n CountManyEntriesDraftRelations.Response['data'],\n CountManyEntriesDraftRelations.Request['query'] & {\n model: string;\n }\n >({\n query: ({ model, ...params }) => ({\n url: `/content-manager/collection-types/${model}/actions/countManyEntriesDraftRelations`,\n method: 'GET',\n config: {\n params,\n },\n }),\n transformResponse: (response: CountManyEntriesDraftRelations.Response) => response.data,\n }),\n /**\n * This endpoint will either create or update documents at the same time as publishing.\n */\n publishDocument: builder.mutation<\n Publish.Response,\n Pick<Publish.Params, 'model'> &\n Partial<Pick<Publish.Params, 'documentId'>> & {\n collectionType: string;\n data: Publish.Request['body'];\n params?: Publish.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, params, data }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/publish`\n : `/content-manager/${collectionType}/${model}/actions/publish`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n { type: 'Document', id: `${model}_LIST` },\n 'Relations',\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n {\n type: 'AILocalizationJobs',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n ];\n },\n }),\n publishManyDocuments: builder.mutation<\n BulkPublish.Response,\n BulkPublish.Params & BulkPublish.Request['body'] & { params?: BulkPublish.Request['query'] }\n >({\n query: ({ model, params, ...body }) => ({\n url: `/content-manager/collection-types/${model}/actions/bulkPublish`,\n method: 'POST',\n data: body,\n config: {\n params,\n },\n }),\n invalidatesTags: (_res, _error, { model, documentIds }) => {\n return [\n ...documentIds.map((id) => ({ type: 'Document' as const, id: `${model}_${id}` })),\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n updateDocument: builder.mutation<\n Update.Response,\n Pick<Update.Params, 'model'> &\n Partial<Pick<Update.Params, 'documentId'>> & {\n collectionType: string;\n data: Update.Request['body'];\n params?: Update.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, data, params }) => ({\n url: `/content-manager/${collectionType}/${model}${documentId ? `/${documentId}` : ''}`,\n method: 'PUT',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n 'Relations',\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n {\n type: 'AILocalizationJobs',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n ];\n },\n async onQueryStarted({ data, ...patch }, { dispatch, queryFulfilled }) {\n // Optimistically update the cache with the new data\n const patchResult = dispatch(\n documentApi.util.updateQueryData('getDocument', patch, (draft) => {\n Object.assign(draft.data, data);\n })\n );\n try {\n await queryFulfilled;\n } catch {\n // Rollback the optimistic update if there's an error\n patchResult.undo();\n }\n },\n transformResponse: (response: Update.Response, meta, arg): Update.Response => {\n /**\n * TODO v6\n * Adapt plugin:users-permissions.user to return the same response\n * shape as all other requests. The error is returned as expected.\n */\n if (!('data' in response) && arg.model === 'plugin::users-permissions.user') {\n return {\n data: response,\n meta: {\n availableStatus: [],\n availableLocales: [],\n },\n };\n }\n\n return response;\n },\n }),\n unpublishDocument: builder.mutation<\n Unpublish.Response,\n Pick<Unpublish.Params, 'model'> &\n Partial<Pick<Unpublish.Params, 'documentId'>> & {\n collectionType: string;\n params?: Unpublish.Request['query'];\n data: Unpublish.Request['body'];\n }\n >({\n query: ({ collectionType, model, documentId, params, data }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/unpublish`\n : `/content-manager/${collectionType}/${model}/actions/unpublish`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n unpublishManyDocuments: builder.mutation<\n BulkUnpublish.Response,\n Pick<BulkUnpublish.Params, 'model'> &\n BulkUnpublish.Request['body'] & {\n params?: BulkUnpublish.Request['query'];\n }\n >({\n query: ({ model, params, ...body }) => ({\n url: `/content-manager/collection-types/${model}/actions/bulkUnpublish`,\n method: 'POST',\n data: body,\n config: {\n params,\n },\n }),\n invalidatesTags: (_res, _error, { model, documentIds }) => [\n ...documentIds.map((id) => ({ type: 'Document' as const, id: `${model}_${id}` })),\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n }),\n});\n\nconst {\n useAutoCloneDocumentMutation,\n useCloneDocumentMutation,\n useCreateDocumentMutation,\n useDeleteDocumentMutation,\n useDeleteManyDocumentsMutation,\n useDiscardDocumentMutation,\n useGetAllDocumentsQuery,\n useLazyGetDocumentQuery,\n useGetDocumentQuery,\n useLazyGetDraftRelationCountQuery,\n useGetManyDraftRelationCountQuery,\n usePublishDocumentMutation,\n usePublishManyDocumentsMutation,\n useUpdateDocumentMutation,\n useUnpublishDocumentMutation,\n useUnpublishManyDocumentsMutation,\n} = documentApi;\n\nexport {\n useAutoCloneDocumentMutation,\n useCloneDocumentMutation,\n useCreateDocumentMutation,\n useDeleteDocumentMutation,\n useDeleteManyDocumentsMutation,\n useDiscardDocumentMutation,\n useGetAllDocumentsQuery,\n useLazyGetDocumentQuery,\n useGetDocumentQuery,\n useLazyGetDraftRelationCountQuery as useGetDraftRelationCountQuery,\n useGetManyDraftRelationCountQuery,\n usePublishDocumentMutation,\n usePublishManyDocumentsMutation,\n useUpdateDocumentMutation,\n useUnpublishDocumentMutation,\n useUnpublishManyDocumentsMutation,\n};\n"],"names":["documentApi","contentManagerApi","injectEndpoints","overrideExisting","endpoints","builder","autoCloneDocument","mutation","query","model","sourceId","params","url","method","config","invalidatesTags","_result","error","type","id","cloneDocument","data","_error","createDocument","result","transformResponse","response","meta","arg","availableStatus","availableLocales","deleteDocument","collectionType","documentId","SINGLE_TYPES","deleteManyDocuments","body","_res","discardDocument","getAllDocuments","stringify","encode","providesTags","results","map","getDraftRelationCount","getDocument","queryFn","_api","_extraOpts","baseQuery","res","name","document","undefined","getManyDraftRelationCount","publishDocument","publishManyDocuments","documentIds","updateDocument","onQueryStarted","patch","dispatch","queryFulfilled","patchResult","util","updateQueryData","draft","Object","assign","undo","unpublishDocument","unpublishManyDocuments","useAutoCloneDocumentMutation","useCloneDocumentMutation","useCreateDocumentMutation","useDeleteDocumentMutation","useDeleteManyDocumentsMutation","useDiscardDocumentMutation","useGetAllDocumentsQuery","useLazyGetDocumentQuery","useGetDocumentQuery","useLazyGetDraftRelationCountQuery","useGetManyDraftRelationCountQuery","usePublishDocumentMutation","usePublishManyDocumentsMutation","useUpdateDocumentMutation","useUnpublishDocumentMutation","useUnpublishManyDocumentsMutation"],"mappings":"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"}
@@ -102,11 +102,19 @@ const documentApi = contentManagerApi.injectEndpoints({
102
102
  params
103
103
  }
104
104
  }),
105
- invalidatesTags: (_result, _error, { collectionType, model })=>[
105
+ invalidatesTags: (_result, _error, { collectionType, model, documentId })=>[
106
106
  {
107
107
  type: 'Document',
108
108
  id: collectionType !== SINGLE_TYPES ? `${model}_LIST` : model
109
109
  },
110
+ {
111
+ type: 'Document',
112
+ id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model
113
+ },
114
+ {
115
+ type: 'Document',
116
+ id: `${model}_ALL_ITEMS`
117
+ },
110
118
  'RecentDocumentList',
111
119
  'CountDocuments',
112
120
  'UpcomingReleasesList'
@@ -272,7 +280,11 @@ const documentApi = contentManagerApi.injectEndpoints({
272
280
  'Relations',
273
281
  'RecentDocumentList',
274
282
  'CountDocuments',
275
- 'UpcomingReleasesList'
283
+ 'UpcomingReleasesList',
284
+ {
285
+ type: 'AILocalizationJobs',
286
+ id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model
287
+ }
276
288
  ];
277
289
  }
278
290
  }),
@@ -319,7 +331,11 @@ const documentApi = contentManagerApi.injectEndpoints({
319
331
  },
320
332
  'RecentDocumentList',
321
333
  'CountDocuments',
322
- 'UpcomingReleasesList'
334
+ 'UpcomingReleasesList',
335
+ {
336
+ type: 'AILocalizationJobs',
337
+ id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model
338
+ }
323
339
  ];
324
340
  },
325
341
  async onQueryStarted ({ data, ...patch }, { dispatch, queryFulfilled }) {
@@ -1 +1 @@
1
- {"version":3,"file":"documents.mjs","sources":["../../../admin/src/services/documents.ts"],"sourcesContent":["/**\n * Related to fetching the actual content of a collection type or single type.\n */\nimport { stringify } from 'qs';\n\nimport { SINGLE_TYPES } from '../constants/collections';\n\nimport { contentManagerApi } from './api';\n\nimport type {\n Clone,\n Create,\n Delete,\n Find,\n FindOne,\n BulkDelete,\n BulkPublish,\n BulkUnpublish,\n Discard,\n CountDraftRelations,\n CountManyEntriesDraftRelations,\n Publish,\n Unpublish,\n Update,\n} from '../../../shared/contracts/collection-types';\n\nconst documentApi = contentManagerApi.injectEndpoints({\n overrideExisting: true,\n endpoints: (builder) => ({\n autoCloneDocument: builder.mutation<\n Clone.Response,\n Clone.Params & {\n params?: Find.Request['query'] & Clone.Request['query'];\n }\n >({\n query: ({ model, sourceId, params }) => ({\n url: `/content-manager/collection-types/${model}/auto-clone/${sourceId}`,\n method: 'POST',\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, error, { model }) => {\n if (error) {\n return [];\n }\n\n return [\n { type: 'Document', id: `${model}_LIST` },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n cloneDocument: builder.mutation<\n Clone.Response,\n Clone.Params & {\n data: Clone.Request['body'];\n params?: Clone.Request['query'];\n }\n >({\n query: ({ model, sourceId, data, params }) => ({\n url: `/content-manager/collection-types/${model}/clone/${sourceId}`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { model }) => [\n { type: 'Document', id: `${model}_LIST` },\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n /**\n * Creates a new collection-type document. This should ONLY be used for collection-types.\n * single-types should always be using `updateDocument` since they always exist.\n */\n createDocument: builder.mutation<\n Create.Response,\n Create.Params & {\n data: Create.Request['body'];\n params?: Create.Request['query'];\n }\n >({\n query: ({ model, data, params }) => ({\n url: `/content-manager/collection-types/${model}`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (result, _error, { model }) => [\n { type: 'Document', id: `${model}_LIST` },\n 'Relations',\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n transformResponse: (response: Create.Response, meta, arg): Create.Response => {\n /**\n * TODO v6\n * Adapt plugin:users-permissions.user to return the same response\n * shape as all other requests. The error is returned as expected.\n */\n if (!('data' in response) && arg.model === 'plugin::users-permissions.user') {\n return {\n data: response,\n meta: {\n availableStatus: [],\n availableLocales: [],\n },\n };\n }\n\n return response;\n },\n }),\n deleteDocument: builder.mutation<\n Delete.Response,\n Pick<Delete.Params, 'model'> &\n Pick<Partial<Delete.Params>, 'documentId'> & {\n collectionType: string;\n params?: Find.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, params }) => ({\n url: `/content-manager/${collectionType}/${model}${\n collectionType !== SINGLE_TYPES && documentId ? `/${documentId}` : ''\n }`,\n method: 'DELETE',\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model }) => [\n { type: 'Document', id: collectionType !== SINGLE_TYPES ? `${model}_LIST` : model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n deleteManyDocuments: builder.mutation<\n BulkDelete.Response,\n BulkDelete.Params & BulkDelete.Request['body'] & { params?: Find.Request['query'] }\n >({\n query: ({ model, params, ...body }) => ({\n url: `/content-manager/collection-types/${model}/actions/bulkDelete`,\n method: 'POST',\n data: body,\n config: {\n params,\n },\n }),\n invalidatesTags: (_res, _error, { model }) => [\n { type: 'Document', id: `${model}_LIST` },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n discardDocument: builder.mutation<\n Discard.Response,\n Pick<Discard.Params, 'model'> &\n Partial<Pick<Discard.Params, 'documentId'>> & {\n collectionType: string;\n params?: Find.Request['query'] & {\n [key: string]: any;\n };\n }\n >({\n query: ({ collectionType, model, documentId, params }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/discard`\n : `/content-manager/${collectionType}/${model}/actions/discard`,\n method: 'POST',\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n { type: 'Document', id: `${model}_LIST` },\n 'Relations',\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n /**\n * Gets all documents of a collection type or single type.\n * By passing different params you can get different results e.g. only published documents or 'es' documents.\n */\n getAllDocuments: builder.query<\n Find.Response,\n Find.Params & {\n params?: Find.Request['query'] & {\n [key: string]: any;\n };\n }\n >({\n query: ({ model, params }) => ({\n url: `/content-manager/collection-types/${model}`,\n method: 'GET',\n config: {\n params: stringify(params, { encode: true }),\n },\n }),\n providesTags: (result, _error, arg) => {\n return [\n { type: 'Document', id: `ALL_LIST` },\n { type: 'Document', id: `${arg.model}_LIST` },\n ...(result?.results.map(({ documentId }) => ({\n type: 'Document' as const,\n id: `${arg.model}_${documentId}`,\n })) ?? []),\n ];\n },\n }),\n getDraftRelationCount: builder.query<\n CountDraftRelations.Response,\n {\n collectionType: string;\n model: string;\n /**\n * You don't pass the documentId if the document is a single-type\n */\n documentId?: string;\n params?: CountDraftRelations.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, params }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/countDraftRelations`\n : `/content-manager/${collectionType}/${model}/actions/countDraftRelations`,\n method: 'GET',\n config: {\n params,\n },\n }),\n }),\n getDocument: builder.query<\n FindOne.Response,\n Pick<FindOne.Params, 'model'> &\n Partial<Pick<FindOne.Params, 'documentId'>> & {\n collectionType: string;\n params?: FindOne.Request['query'];\n }\n >({\n // @ts-expect-error – TODO: fix ts error where data unknown doesn't work with response via an assertion?\n queryFn: async (\n { collectionType, model, documentId, params },\n _api,\n _extraOpts,\n baseQuery\n ) => {\n const res = await baseQuery({\n url: `/content-manager/${collectionType}/${model}${documentId ? `/${documentId}` : ''}`,\n method: 'GET',\n config: {\n params,\n },\n });\n\n /**\n * To stop the query from locking itself in multiple retries, we intercept the error here and manage correctly.\n * This is because single-types don't have a list view and fetching them with the route `/single-types/:model`\n * never returns a list, just a single document but this won't exist if you've not made one before.\n */\n if (res.error && res.error.name === 'NotFoundError' && collectionType === SINGLE_TYPES) {\n return { data: { document: undefined }, error: undefined };\n }\n\n return res;\n },\n providesTags: (result, _error, { collectionType, model, documentId }) => {\n return [\n // we prefer the result's id because we don't fetch single-types with an ID.\n {\n type: 'Document',\n id:\n collectionType !== SINGLE_TYPES\n ? `${model}_${result && 'documentId' in result ? result.documentId : documentId}`\n : model,\n },\n // Make it easy to invalidate all individual documents queries for a model\n {\n type: 'Document',\n id: `${model}_ALL_ITEMS`,\n },\n ];\n },\n }),\n getManyDraftRelationCount: builder.query<\n CountManyEntriesDraftRelations.Response['data'],\n CountManyEntriesDraftRelations.Request['query'] & {\n model: string;\n }\n >({\n query: ({ model, ...params }) => ({\n url: `/content-manager/collection-types/${model}/actions/countManyEntriesDraftRelations`,\n method: 'GET',\n config: {\n params,\n },\n }),\n transformResponse: (response: CountManyEntriesDraftRelations.Response) => response.data,\n }),\n /**\n * This endpoint will either create or update documents at the same time as publishing.\n */\n publishDocument: builder.mutation<\n Publish.Response,\n Pick<Publish.Params, 'model'> &\n Partial<Pick<Publish.Params, 'documentId'>> & {\n collectionType: string;\n data: Publish.Request['body'];\n params?: Publish.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, params, data }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/publish`\n : `/content-manager/${collectionType}/${model}/actions/publish`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n { type: 'Document', id: `${model}_LIST` },\n 'Relations',\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n publishManyDocuments: builder.mutation<\n BulkPublish.Response,\n BulkPublish.Params & BulkPublish.Request['body'] & { params?: BulkPublish.Request['query'] }\n >({\n query: ({ model, params, ...body }) => ({\n url: `/content-manager/collection-types/${model}/actions/bulkPublish`,\n method: 'POST',\n data: body,\n config: {\n params,\n },\n }),\n invalidatesTags: (_res, _error, { model, documentIds }) => {\n return [\n ...documentIds.map((id) => ({ type: 'Document' as const, id: `${model}_${id}` })),\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n updateDocument: builder.mutation<\n Update.Response,\n Pick<Update.Params, 'model'> &\n Partial<Pick<Update.Params, 'documentId'>> & {\n collectionType: string;\n data: Update.Request['body'];\n params?: Update.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, data, params }) => ({\n url: `/content-manager/${collectionType}/${model}${documentId ? `/${documentId}` : ''}`,\n method: 'PUT',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n 'Relations',\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n async onQueryStarted({ data, ...patch }, { dispatch, queryFulfilled }) {\n // Optimistically update the cache with the new data\n const patchResult = dispatch(\n documentApi.util.updateQueryData('getDocument', patch, (draft) => {\n Object.assign(draft.data, data);\n })\n );\n try {\n await queryFulfilled;\n } catch {\n // Rollback the optimistic update if there's an error\n patchResult.undo();\n }\n },\n transformResponse: (response: Update.Response, meta, arg): Update.Response => {\n /**\n * TODO v6\n * Adapt plugin:users-permissions.user to return the same response\n * shape as all other requests. The error is returned as expected.\n */\n if (!('data' in response) && arg.model === 'plugin::users-permissions.user') {\n return {\n data: response,\n meta: {\n availableStatus: [],\n availableLocales: [],\n },\n };\n }\n\n return response;\n },\n }),\n unpublishDocument: builder.mutation<\n Unpublish.Response,\n Pick<Unpublish.Params, 'model'> &\n Partial<Pick<Unpublish.Params, 'documentId'>> & {\n collectionType: string;\n params?: Unpublish.Request['query'];\n data: Unpublish.Request['body'];\n }\n >({\n query: ({ collectionType, model, documentId, params, data }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/unpublish`\n : `/content-manager/${collectionType}/${model}/actions/unpublish`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n unpublishManyDocuments: builder.mutation<\n BulkUnpublish.Response,\n Pick<BulkUnpublish.Params, 'model'> &\n BulkUnpublish.Request['body'] & {\n params?: BulkUnpublish.Request['query'];\n }\n >({\n query: ({ model, params, ...body }) => ({\n url: `/content-manager/collection-types/${model}/actions/bulkUnpublish`,\n method: 'POST',\n data: body,\n config: {\n params,\n },\n }),\n invalidatesTags: (_res, _error, { model, documentIds }) => [\n ...documentIds.map((id) => ({ type: 'Document' as const, id: `${model}_${id}` })),\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n }),\n});\n\nconst {\n useAutoCloneDocumentMutation,\n useCloneDocumentMutation,\n useCreateDocumentMutation,\n useDeleteDocumentMutation,\n useDeleteManyDocumentsMutation,\n useDiscardDocumentMutation,\n useGetAllDocumentsQuery,\n useLazyGetDocumentQuery,\n useGetDocumentQuery,\n useLazyGetDraftRelationCountQuery,\n useGetManyDraftRelationCountQuery,\n usePublishDocumentMutation,\n usePublishManyDocumentsMutation,\n useUpdateDocumentMutation,\n useUnpublishDocumentMutation,\n useUnpublishManyDocumentsMutation,\n} = documentApi;\n\nexport {\n useAutoCloneDocumentMutation,\n useCloneDocumentMutation,\n useCreateDocumentMutation,\n useDeleteDocumentMutation,\n useDeleteManyDocumentsMutation,\n useDiscardDocumentMutation,\n useGetAllDocumentsQuery,\n useLazyGetDocumentQuery,\n useGetDocumentQuery,\n useLazyGetDraftRelationCountQuery as useGetDraftRelationCountQuery,\n useGetManyDraftRelationCountQuery,\n usePublishDocumentMutation,\n usePublishManyDocumentsMutation,\n useUpdateDocumentMutation,\n useUnpublishDocumentMutation,\n useUnpublishManyDocumentsMutation,\n};\n"],"names":["documentApi","contentManagerApi","injectEndpoints","overrideExisting","endpoints","builder","autoCloneDocument","mutation","query","model","sourceId","params","url","method","config","invalidatesTags","_result","error","type","id","cloneDocument","data","_error","createDocument","result","transformResponse","response","meta","arg","availableStatus","availableLocales","deleteDocument","collectionType","documentId","SINGLE_TYPES","deleteManyDocuments","body","_res","discardDocument","getAllDocuments","stringify","encode","providesTags","results","map","getDraftRelationCount","getDocument","queryFn","_api","_extraOpts","baseQuery","res","name","document","undefined","getManyDraftRelationCount","publishDocument","publishManyDocuments","documentIds","updateDocument","onQueryStarted","patch","dispatch","queryFulfilled","patchResult","util","updateQueryData","draft","Object","assign","undo","unpublishDocument","unpublishManyDocuments","useAutoCloneDocumentMutation","useCloneDocumentMutation","useCreateDocumentMutation","useDeleteDocumentMutation","useDeleteManyDocumentsMutation","useDiscardDocumentMutation","useGetAllDocumentsQuery","useLazyGetDocumentQuery","useGetDocumentQuery","useLazyGetDraftRelationCountQuery","useGetManyDraftRelationCountQuery","usePublishDocumentMutation","usePublishManyDocumentsMutation","useUpdateDocumentMutation","useUnpublishDocumentMutation","useUnpublishManyDocumentsMutation"],"mappings":";;;;AA0BA,MAAMA,WAAAA,GAAcC,iBAAkBC,CAAAA,eAAe,CAAC;IACpDC,gBAAkB,EAAA,IAAA;IAClBC,SAAW,EAAA,CAACC,WAAa;YACvBC,iBAAmBD,EAAAA,OAAAA,CAAQE,QAAQ,CAKjC;gBACAC,KAAO,EAAA,CAAC,EAAEC,KAAK,EAAEC,QAAQ,EAAEC,MAAM,EAAE,IAAM;AACvCC,wBAAAA,GAAAA,EAAK,CAAC,kCAAkC,EAAEH,MAAM,YAAY,EAAEC,SAAS,CAAC;wBACxEG,MAAQ,EAAA,MAAA;wBACRC,MAAQ,EAAA;AACNH,4BAAAA;AACF;qBACF,CAAA;AACAI,gBAAAA,eAAAA,EAAiB,CAACC,OAAAA,EAASC,KAAO,EAAA,EAAER,KAAK,EAAE,GAAA;AACzC,oBAAA,IAAIQ,KAAO,EAAA;AACT,wBAAA,OAAO,EAAE;AACX;oBAEA,OAAO;AACL,wBAAA;4BAAEC,IAAM,EAAA,UAAA;AAAYC,4BAAAA,EAAAA,EAAI,CAAC,EAAEV,KAAM,CAAA,KAAK;AAAE,yBAAA;AACxC,wBAAA,oBAAA;AACA,wBAAA,gBAAA;AACA,wBAAA;AACD,qBAAA;AACH;AACF,aAAA,CAAA;YACAW,aAAef,EAAAA,OAAAA,CAAQE,QAAQ,CAM7B;gBACAC,KAAO,EAAA,CAAC,EAAEC,KAAK,EAAEC,QAAQ,EAAEW,IAAI,EAAEV,MAAM,EAAE,IAAM;AAC7CC,wBAAAA,GAAAA,EAAK,CAAC,kCAAkC,EAAEH,MAAM,OAAO,EAAEC,SAAS,CAAC;wBACnEG,MAAQ,EAAA,MAAA;AACRQ,wBAAAA,IAAAA;wBACAP,MAAQ,EAAA;AACNH,4BAAAA;AACF;qBACF,CAAA;AACAI,gBAAAA,eAAAA,EAAiB,CAACC,OAASM,EAAAA,MAAAA,EAAQ,EAAEb,KAAK,EAAE,GAAK;AAC/C,wBAAA;4BAAES,IAAM,EAAA,UAAA;AAAYC,4BAAAA,EAAAA,EAAI,CAAC,EAAEV,KAAM,CAAA,KAAK;AAAE,yBAAA;AACxC,wBAAA;4BAAES,IAAM,EAAA,iBAAA;4BAAmBC,EAAIV,EAAAA;AAAM,yBAAA;AACrC,wBAAA,oBAAA;AACA,wBAAA,gBAAA;AACA,wBAAA;AACD;AACH,aAAA,CAAA;AACA;;;QAIAc,cAAAA,EAAgBlB,OAAQE,CAAAA,QAAQ,CAM9B;gBACAC,KAAO,EAAA,CAAC,EAAEC,KAAK,EAAEY,IAAI,EAAEV,MAAM,EAAE,IAAM;AACnCC,wBAAAA,GAAAA,EAAK,CAAC,kCAAkC,EAAEH,KAAAA,CAAM,CAAC;wBACjDI,MAAQ,EAAA,MAAA;AACRQ,wBAAAA,IAAAA;wBACAP,MAAQ,EAAA;AACNH,4BAAAA;AACF;qBACF,CAAA;AACAI,gBAAAA,eAAAA,EAAiB,CAACS,MAAQF,EAAAA,MAAAA,EAAQ,EAAEb,KAAK,EAAE,GAAK;AAC9C,wBAAA;4BAAES,IAAM,EAAA,UAAA;AAAYC,4BAAAA,EAAAA,EAAI,CAAC,EAAEV,KAAM,CAAA,KAAK;AAAE,yBAAA;AACxC,wBAAA,WAAA;AACA,wBAAA;4BAAES,IAAM,EAAA,iBAAA;4BAAmBC,EAAIV,EAAAA;AAAM,yBAAA;AACrC,wBAAA,oBAAA;AACA,wBAAA,gBAAA;AACA,wBAAA;AACD,qBAAA;gBACDgB,iBAAmB,EAAA,CAACC,UAA2BC,IAAMC,EAAAA,GAAAA,GAAAA;AACnD;;;;YAKA,IAAI,EAAE,MAAA,IAAUF,QAAO,CAAME,IAAAA,GAAAA,CAAInB,KAAK,KAAK,gCAAkC,EAAA;wBAC3E,OAAO;4BACLY,IAAMK,EAAAA,QAAAA;4BACNC,IAAM,EAAA;AACJE,gCAAAA,eAAAA,EAAiB,EAAE;AACnBC,gCAAAA,gBAAAA,EAAkB;AACpB;AACF,yBAAA;AACF;oBAEA,OAAOJ,QAAAA;AACT;AACF,aAAA,CAAA;YACAK,cAAgB1B,EAAAA,OAAAA,CAAQE,QAAQ,CAO9B;gBACAC,KAAO,EAAA,CAAC,EAAEwB,cAAc,EAAEvB,KAAK,EAAEwB,UAAU,EAAEtB,MAAM,EAAE,IAAM;AACzDC,wBAAAA,GAAAA,EAAK,CAAC,iBAAiB,EAAEoB,eAAe,CAAC,EAAEvB,MAAM,EAC/CuB,cAAAA,KAAmBE,YAAgBD,IAAAA,UAAAA,GAAa,CAAC,CAAC,EAAEA,WAAW,CAAC,GAAG,GACpE,CAAC;wBACFpB,MAAQ,EAAA,QAAA;wBACRC,MAAQ,EAAA;AACNH,4BAAAA;AACF;qBACF,CAAA;gBACAI,eAAiB,EAAA,CAACC,SAASM,MAAQ,EAAA,EAAEU,cAAc,EAAEvB,KAAK,EAAE,GAAK;AAC/D,wBAAA;4BAAES,IAAM,EAAA,UAAA;AAAYC,4BAAAA,EAAAA,EAAIa,mBAAmBE,YAAe,GAAA,CAAC,EAAEzB,KAAM,CAAA,KAAK,CAAC,GAAGA;AAAM,yBAAA;AAClF,wBAAA,oBAAA;AACA,wBAAA,gBAAA;AACA,wBAAA;AACD;AACH,aAAA,CAAA;YACA0B,mBAAqB9B,EAAAA,OAAAA,CAAQE,QAAQ,CAGnC;gBACAC,KAAO,EAAA,CAAC,EAAEC,KAAK,EAAEE,MAAM,EAAE,GAAGyB,IAAM,EAAA,IAAM;AACtCxB,wBAAAA,GAAAA,EAAK,CAAC,kCAAkC,EAAEH,KAAAA,CAAM,mBAAmB,CAAC;wBACpEI,MAAQ,EAAA,MAAA;wBACRQ,IAAMe,EAAAA,IAAAA;wBACNtB,MAAQ,EAAA;AACNH,4BAAAA;AACF;qBACF,CAAA;AACAI,gBAAAA,eAAAA,EAAiB,CAACsB,IAAMf,EAAAA,MAAAA,EAAQ,EAAEb,KAAK,EAAE,GAAK;AAC5C,wBAAA;4BAAES,IAAM,EAAA,UAAA;AAAYC,4BAAAA,EAAAA,EAAI,CAAC,EAAEV,KAAM,CAAA,KAAK;AAAE,yBAAA;AACxC,wBAAA,oBAAA;AACA,wBAAA,gBAAA;AACA,wBAAA;AACD;AACH,aAAA,CAAA;YACA6B,eAAiBjC,EAAAA,OAAAA,CAAQE,QAAQ,CAS/B;gBACAC,KAAO,EAAA,CAAC,EAAEwB,cAAc,EAAEvB,KAAK,EAAEwB,UAAU,EAAEtB,MAAM,EAAE,IAAM;wBACzDC,GAAKqB,EAAAA,UAAAA,GACD,CAAC,iBAAiB,EAAED,eAAe,CAAC,EAAEvB,KAAM,CAAA,CAAC,EAAEwB,UAAAA,CAAW,gBAAgB,CAAC,GAC3E,CAAC,iBAAiB,EAAED,eAAe,CAAC,EAAEvB,KAAM,CAAA,gBAAgB,CAAC;wBACjEI,MAAQ,EAAA,MAAA;wBACRC,MAAQ,EAAA;AACNH,4BAAAA;AACF;qBACF,CAAA;gBACAI,eAAiB,EAAA,CAACC,SAASM,MAAQ,EAAA,EAAEU,cAAc,EAAEvB,KAAK,EAAEwB,UAAU,EAAE,GAAA;oBACtE,OAAO;AACL,wBAAA;4BACEf,IAAM,EAAA,UAAA;4BACNC,EAAIa,EAAAA,cAAAA,KAAmBE,eAAe,CAAC,EAAEzB,MAAM,CAAC,EAAEwB,UAAW,CAAA,CAAC,GAAGxB;AACnE,yBAAA;AACA,wBAAA;4BAAES,IAAM,EAAA,UAAA;AAAYC,4BAAAA,EAAAA,EAAI,CAAC,EAAEV,KAAM,CAAA,KAAK;AAAE,yBAAA;AACxC,wBAAA,WAAA;AACA,wBAAA;4BAAES,IAAM,EAAA,iBAAA;4BAAmBC,EAAIV,EAAAA;AAAM,yBAAA;AACrC,wBAAA,oBAAA;AACA,wBAAA,gBAAA;AACA,wBAAA;AACD,qBAAA;AACH;AACF,aAAA,CAAA;AACA;;;QAIA8B,eAAAA,EAAiBlC,OAAQG,CAAAA,KAAK,CAO5B;AACAA,gBAAAA,KAAAA,EAAO,CAAC,EAAEC,KAAK,EAAEE,MAAM,EAAE,IAAM;AAC7BC,wBAAAA,GAAAA,EAAK,CAAC,kCAAkC,EAAEH,KAAAA,CAAM,CAAC;wBACjDI,MAAQ,EAAA,KAAA;wBACRC,MAAQ,EAAA;AACNH,4BAAAA,MAAAA,EAAQ6B,UAAU7B,MAAQ,EAAA;gCAAE8B,MAAQ,EAAA;AAAK,6BAAA;AAC3C;qBACF,CAAA;gBACAC,YAAc,EAAA,CAAClB,QAAQF,MAAQM,EAAAA,GAAAA,GAAAA;oBAC7B,OAAO;AACL,wBAAA;4BAAEV,IAAM,EAAA,UAAA;4BAAYC,EAAI,EAAA,CAAC,QAAQ;AAAE,yBAAA;AACnC,wBAAA;4BAAED,IAAM,EAAA,UAAA;AAAYC,4BAAAA,EAAAA,EAAI,CAAC,EAAES,GAAAA,CAAInB,KAAK,CAAC,KAAK;AAAE,yBAAA;AACxCe,wBAAAA,GAAAA,MAAAA,EAAQmB,QAAQC,GAAI,CAAA,CAAC,EAAEX,UAAU,EAAE,IAAM;gCAC3Cf,IAAM,EAAA,UAAA;gCACNC,EAAI,EAAA,CAAC,EAAES,GAAInB,CAAAA,KAAK,CAAC,CAAC,EAAEwB,WAAW;AACjC,6BAAA,MAAO;AACR,qBAAA;AACH;AACF,aAAA,CAAA;YACAY,qBAAuBxC,EAAAA,OAAAA,CAAQG,KAAK,CAWlC;gBACAA,KAAO,EAAA,CAAC,EAAEwB,cAAc,EAAEvB,KAAK,EAAEwB,UAAU,EAAEtB,MAAM,EAAE,IAAM;wBACzDC,GAAKqB,EAAAA,UAAAA,GACD,CAAC,iBAAiB,EAAED,eAAe,CAAC,EAAEvB,KAAM,CAAA,CAAC,EAAEwB,UAAAA,CAAW,4BAA4B,CAAC,GACvF,CAAC,iBAAiB,EAAED,eAAe,CAAC,EAAEvB,KAAM,CAAA,4BAA4B,CAAC;wBAC7EI,MAAQ,EAAA,KAAA;wBACRC,MAAQ,EAAA;AACNH,4BAAAA;AACF;qBACF;AACF,aAAA,CAAA;YACAmC,WAAazC,EAAAA,OAAAA,CAAQG,KAAK,CAOxB;;AAEAuC,gBAAAA,OAAAA,EAAS,OACP,EAAEf,cAAc,EAAEvB,KAAK,EAAEwB,UAAU,EAAEtB,MAAM,EAAE,EAC7CqC,IAAAA,EACAC,UACAC,EAAAA,SAAAA,GAAAA;oBAEA,MAAMC,GAAAA,GAAM,MAAMD,SAAU,CAAA;AAC1BtC,wBAAAA,GAAAA,EAAK,CAAC,iBAAiB,EAAEoB,cAAe,CAAA,CAAC,EAAEvB,KAAM,CAAA,EAAEwB,UAAa,GAAA,CAAC,CAAC,EAAEA,UAAAA,CAAW,CAAC,GAAG,GAAG,CAAC;wBACvFpB,MAAQ,EAAA,KAAA;wBACRC,MAAQ,EAAA;AACNH,4BAAAA;AACF;AACF,qBAAA,CAAA;AAEA;;;;YAKA,IAAIwC,GAAIlC,CAAAA,KAAK,IAAIkC,GAAAA,CAAIlC,KAAK,CAACmC,IAAI,KAAK,eAAmBpB,IAAAA,cAAAA,KAAmBE,YAAc,EAAA;wBACtF,OAAO;4BAAEb,IAAM,EAAA;gCAAEgC,QAAUC,EAAAA;AAAU,6BAAA;4BAAGrC,KAAOqC,EAAAA;AAAU,yBAAA;AAC3D;oBAEA,OAAOH,GAAAA;AACT,iBAAA;gBACAT,YAAc,EAAA,CAAClB,QAAQF,MAAQ,EAAA,EAAEU,cAAc,EAAEvB,KAAK,EAAEwB,UAAU,EAAE,GAAA;oBAClE,OAAO;;AAEL,wBAAA;4BACEf,IAAM,EAAA,UAAA;AACNC,4BAAAA,EAAAA,EACEa,cAAmBE,KAAAA,YAAAA,GACf,CAAC,EAAEzB,MAAM,CAAC,EAAEe,MAAU,IAAA,YAAA,IAAgBA,SAASA,MAAOS,CAAAA,UAAU,GAAGA,UAAAA,CAAW,CAAC,GAC/ExB;AACR,yBAAA;;AAEA,wBAAA;4BACES,IAAM,EAAA,UAAA;AACNC,4BAAAA,EAAAA,EAAI,CAAC,EAAEV,KAAM,CAAA,UAAU;AACzB;AACD,qBAAA;AACH;AACF,aAAA,CAAA;YACA8C,yBAA2BlD,EAAAA,OAAAA,CAAQG,KAAK,CAKtC;AACAA,gBAAAA,KAAAA,EAAO,CAAC,EAAEC,KAAK,EAAE,GAAGE,MAAAA,EAAQ,IAAM;AAChCC,wBAAAA,GAAAA,EAAK,CAAC,kCAAkC,EAAEH,KAAAA,CAAM,uCAAuC,CAAC;wBACxFI,MAAQ,EAAA,KAAA;wBACRC,MAAQ,EAAA;AACNH,4BAAAA;AACF;qBACF,CAAA;gBACAc,iBAAmB,EAAA,CAACC,QAAsDA,GAAAA,QAAAA,CAASL;AACrF,aAAA,CAAA;AACA;;QAGAmC,eAAAA,EAAiBnD,OAAQE,CAAAA,QAAQ,CAQ/B;AACAC,gBAAAA,KAAAA,EAAO,CAAC,EAAEwB,cAAc,EAAEvB,KAAK,EAAEwB,UAAU,EAAEtB,MAAM,EAAEU,IAAI,EAAE,IAAM;wBAC/DT,GAAKqB,EAAAA,UAAAA,GACD,CAAC,iBAAiB,EAAED,eAAe,CAAC,EAAEvB,KAAM,CAAA,CAAC,EAAEwB,UAAAA,CAAW,gBAAgB,CAAC,GAC3E,CAAC,iBAAiB,EAAED,eAAe,CAAC,EAAEvB,KAAM,CAAA,gBAAgB,CAAC;wBACjEI,MAAQ,EAAA,MAAA;AACRQ,wBAAAA,IAAAA;wBACAP,MAAQ,EAAA;AACNH,4BAAAA;AACF;qBACF,CAAA;gBACAI,eAAiB,EAAA,CAACC,SAASM,MAAQ,EAAA,EAAEU,cAAc,EAAEvB,KAAK,EAAEwB,UAAU,EAAE,GAAA;oBACtE,OAAO;AACL,wBAAA;4BACEf,IAAM,EAAA,UAAA;4BACNC,EAAIa,EAAAA,cAAAA,KAAmBE,eAAe,CAAC,EAAEzB,MAAM,CAAC,EAAEwB,UAAW,CAAA,CAAC,GAAGxB;AACnE,yBAAA;AACA,wBAAA;4BAAES,IAAM,EAAA,UAAA;AAAYC,4BAAAA,EAAAA,EAAI,CAAC,EAAEV,KAAM,CAAA,KAAK;AAAE,yBAAA;AACxC,wBAAA,WAAA;AACA,wBAAA,oBAAA;AACA,wBAAA,gBAAA;AACA,wBAAA;AACD,qBAAA;AACH;AACF,aAAA,CAAA;YACAgD,oBAAsBpD,EAAAA,OAAAA,CAAQE,QAAQ,CAGpC;gBACAC,KAAO,EAAA,CAAC,EAAEC,KAAK,EAAEE,MAAM,EAAE,GAAGyB,IAAM,EAAA,IAAM;AACtCxB,wBAAAA,GAAAA,EAAK,CAAC,kCAAkC,EAAEH,KAAAA,CAAM,oBAAoB,CAAC;wBACrEI,MAAQ,EAAA,MAAA;wBACRQ,IAAMe,EAAAA,IAAAA;wBACNtB,MAAQ,EAAA;AACNH,4BAAAA;AACF;qBACF,CAAA;AACAI,gBAAAA,eAAAA,EAAiB,CAACsB,IAAMf,EAAAA,MAAAA,EAAQ,EAAEb,KAAK,EAAEiD,WAAW,EAAE,GAAA;oBACpD,OAAO;AACFA,wBAAAA,GAAAA,WAAAA,CAAYd,GAAG,CAAC,CAACzB,EAAAA,IAAQ;gCAAED,IAAM,EAAA,UAAA;AAAqBC,gCAAAA,EAAAA,EAAI,CAAC,EAAEV,KAAAA,CAAM,CAAC,EAAEU,GAAG;6BAAE,CAAA,CAAA;AAC9E,wBAAA,oBAAA;AACA,wBAAA,gBAAA;AACA,wBAAA;AACD,qBAAA;AACH;AACF,aAAA,CAAA;YACAwC,cAAgBtD,EAAAA,OAAAA,CAAQE,QAAQ,CAQ9B;AACAC,gBAAAA,KAAAA,EAAO,CAAC,EAAEwB,cAAc,EAAEvB,KAAK,EAAEwB,UAAU,EAAEZ,IAAI,EAAEV,MAAM,EAAE,IAAM;AAC/DC,wBAAAA,GAAAA,EAAK,CAAC,iBAAiB,EAAEoB,cAAe,CAAA,CAAC,EAAEvB,KAAM,CAAA,EAAEwB,UAAa,GAAA,CAAC,CAAC,EAAEA,UAAAA,CAAW,CAAC,GAAG,GAAG,CAAC;wBACvFpB,MAAQ,EAAA,KAAA;AACRQ,wBAAAA,IAAAA;wBACAP,MAAQ,EAAA;AACNH,4BAAAA;AACF;qBACF,CAAA;gBACAI,eAAiB,EAAA,CAACC,SAASM,MAAQ,EAAA,EAAEU,cAAc,EAAEvB,KAAK,EAAEwB,UAAU,EAAE,GAAA;oBACtE,OAAO;AACL,wBAAA;4BACEf,IAAM,EAAA,UAAA;4BACNC,EAAIa,EAAAA,cAAAA,KAAmBE,eAAe,CAAC,EAAEzB,MAAM,CAAC,EAAEwB,UAAW,CAAA,CAAC,GAAGxB;AACnE,yBAAA;AACA,wBAAA,WAAA;AACA,wBAAA;4BAAES,IAAM,EAAA,iBAAA;4BAAmBC,EAAIV,EAAAA;AAAM,yBAAA;AACrC,wBAAA,oBAAA;AACA,wBAAA,gBAAA;AACA,wBAAA;AACD,qBAAA;AACH,iBAAA;gBACA,MAAMmD,cAAAA,CAAAA,CAAe,EAAEvC,IAAI,EAAE,GAAGwC,KAAO,EAAA,EAAE,EAAEC,QAAQ,EAAEC,cAAc,EAAE,EAAA;;oBAEnE,MAAMC,WAAAA,GAAcF,SAClB9D,WAAYiE,CAAAA,IAAI,CAACC,eAAe,CAAC,aAAeL,EAAAA,KAAAA,EAAO,CAACM,KAAAA,GAAAA;AACtDC,wBAAAA,MAAAA,CAAOC,MAAM,CAACF,KAAM9C,CAAAA,IAAI,EAAEA,IAAAA,CAAAA;AAC5B,qBAAA,CAAA,CAAA;oBAEF,IAAI;wBACF,MAAM0C,cAAAA;AACR,qBAAA,CAAE,OAAM;;AAENC,wBAAAA,WAAAA,CAAYM,IAAI,EAAA;AAClB;AACF,iBAAA;gBACA7C,iBAAmB,EAAA,CAACC,UAA2BC,IAAMC,EAAAA,GAAAA,GAAAA;AACnD;;;;YAKA,IAAI,EAAE,MAAA,IAAUF,QAAO,CAAME,IAAAA,GAAAA,CAAInB,KAAK,KAAK,gCAAkC,EAAA;wBAC3E,OAAO;4BACLY,IAAMK,EAAAA,QAAAA;4BACNC,IAAM,EAAA;AACJE,gCAAAA,eAAAA,EAAiB,EAAE;AACnBC,gCAAAA,gBAAAA,EAAkB;AACpB;AACF,yBAAA;AACF;oBAEA,OAAOJ,QAAAA;AACT;AACF,aAAA,CAAA;YACA6C,iBAAmBlE,EAAAA,OAAAA,CAAQE,QAAQ,CAQjC;AACAC,gBAAAA,KAAAA,EAAO,CAAC,EAAEwB,cAAc,EAAEvB,KAAK,EAAEwB,UAAU,EAAEtB,MAAM,EAAEU,IAAI,EAAE,IAAM;wBAC/DT,GAAKqB,EAAAA,UAAAA,GACD,CAAC,iBAAiB,EAAED,eAAe,CAAC,EAAEvB,KAAM,CAAA,CAAC,EAAEwB,UAAAA,CAAW,kBAAkB,CAAC,GAC7E,CAAC,iBAAiB,EAAED,eAAe,CAAC,EAAEvB,KAAM,CAAA,kBAAkB,CAAC;wBACnEI,MAAQ,EAAA,MAAA;AACRQ,wBAAAA,IAAAA;wBACAP,MAAQ,EAAA;AACNH,4BAAAA;AACF;qBACF,CAAA;gBACAI,eAAiB,EAAA,CAACC,SAASM,MAAQ,EAAA,EAAEU,cAAc,EAAEvB,KAAK,EAAEwB,UAAU,EAAE,GAAA;oBACtE,OAAO;AACL,wBAAA;4BACEf,IAAM,EAAA,UAAA;4BACNC,EAAIa,EAAAA,cAAAA,KAAmBE,eAAe,CAAC,EAAEzB,MAAM,CAAC,EAAEwB,UAAW,CAAA,CAAC,GAAGxB;AACnE,yBAAA;AACA,wBAAA,oBAAA;AACA,wBAAA,gBAAA;AACA,wBAAA;AACD,qBAAA;AACH;AACF,aAAA,CAAA;YACA+D,sBAAwBnE,EAAAA,OAAAA,CAAQE,QAAQ,CAMtC;gBACAC,KAAO,EAAA,CAAC,EAAEC,KAAK,EAAEE,MAAM,EAAE,GAAGyB,IAAM,EAAA,IAAM;AACtCxB,wBAAAA,GAAAA,EAAK,CAAC,kCAAkC,EAAEH,KAAAA,CAAM,sBAAsB,CAAC;wBACvEI,MAAQ,EAAA,MAAA;wBACRQ,IAAMe,EAAAA,IAAAA;wBACNtB,MAAQ,EAAA;AACNH,4BAAAA;AACF;qBACF,CAAA;gBACAI,eAAiB,EAAA,CAACsB,MAAMf,MAAQ,EAAA,EAAEb,KAAK,EAAEiD,WAAW,EAAE,GAAK;AACtDA,wBAAAA,GAAAA,WAAAA,CAAYd,GAAG,CAAC,CAACzB,EAAAA,IAAQ;gCAAED,IAAM,EAAA,UAAA;AAAqBC,gCAAAA,EAAAA,EAAI,CAAC,EAAEV,KAAAA,CAAM,CAAC,EAAEU,GAAG;6BAAE,CAAA,CAAA;AAC9E,wBAAA,oBAAA;AACA,wBAAA,gBAAA;AACA,wBAAA;AACD;AACH,aAAA;SACF;AACF,CAAA,CAAA;AAEA,MAAM,EACJsD,4BAA4B,EAC5BC,wBAAwB,EACxBC,yBAAyB,EACzBC,yBAAyB,EACzBC,8BAA8B,EAC9BC,0BAA0B,EAC1BC,uBAAuB,EACvBC,uBAAuB,EACvBC,mBAAmB,EACnBC,iCAAiC,EACjCC,iCAAiC,EACjCC,0BAA0B,EAC1BC,+BAA+B,EAC/BC,yBAAyB,EACzBC,4BAA4B,EAC5BC,iCAAiC,EAClC,GAAGxF;;;;"}
1
+ {"version":3,"file":"documents.mjs","sources":["../../../admin/src/services/documents.ts"],"sourcesContent":["/**\n * Related to fetching the actual content of a collection type or single type.\n */\nimport { stringify } from 'qs';\n\nimport { SINGLE_TYPES } from '../constants/collections';\n\nimport { contentManagerApi } from './api';\n\nimport type {\n Clone,\n Create,\n Delete,\n Find,\n FindOne,\n BulkDelete,\n BulkPublish,\n BulkUnpublish,\n Discard,\n CountDraftRelations,\n CountManyEntriesDraftRelations,\n Publish,\n Unpublish,\n Update,\n} from '../../../shared/contracts/collection-types';\n\nconst documentApi = contentManagerApi.injectEndpoints({\n overrideExisting: true,\n endpoints: (builder) => ({\n autoCloneDocument: builder.mutation<\n Clone.Response,\n Clone.Params & {\n params?: Find.Request['query'] & Clone.Request['query'];\n }\n >({\n query: ({ model, sourceId, params }) => ({\n url: `/content-manager/collection-types/${model}/auto-clone/${sourceId}`,\n method: 'POST',\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, error, { model }) => {\n if (error) {\n return [];\n }\n\n return [\n { type: 'Document', id: `${model}_LIST` },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n cloneDocument: builder.mutation<\n Clone.Response,\n Clone.Params & {\n data: Clone.Request['body'];\n params?: Clone.Request['query'];\n }\n >({\n query: ({ model, sourceId, data, params }) => ({\n url: `/content-manager/collection-types/${model}/clone/${sourceId}`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { model }) => [\n { type: 'Document', id: `${model}_LIST` },\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n /**\n * Creates a new collection-type document. This should ONLY be used for collection-types.\n * single-types should always be using `updateDocument` since they always exist.\n */\n createDocument: builder.mutation<\n Create.Response,\n Create.Params & {\n data: Create.Request['body'];\n params?: Create.Request['query'];\n }\n >({\n query: ({ model, data, params }) => ({\n url: `/content-manager/collection-types/${model}`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (result, _error, { model }) => [\n { type: 'Document', id: `${model}_LIST` },\n 'Relations',\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n transformResponse: (response: Create.Response, meta, arg): Create.Response => {\n /**\n * TODO v6\n * Adapt plugin:users-permissions.user to return the same response\n * shape as all other requests. The error is returned as expected.\n */\n if (!('data' in response) && arg.model === 'plugin::users-permissions.user') {\n return {\n data: response,\n meta: {\n availableStatus: [],\n availableLocales: [],\n },\n };\n }\n\n return response;\n },\n }),\n deleteDocument: builder.mutation<\n Delete.Response,\n Pick<Delete.Params, 'model'> &\n Pick<Partial<Delete.Params>, 'documentId'> & {\n collectionType: string;\n params?: Find.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, params }) => ({\n url: `/content-manager/${collectionType}/${model}${\n collectionType !== SINGLE_TYPES && documentId ? `/${documentId}` : ''\n }`,\n method: 'DELETE',\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => [\n { type: 'Document', id: collectionType !== SINGLE_TYPES ? `${model}_LIST` : model },\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n { type: 'Document', id: `${model}_ALL_ITEMS` },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n deleteManyDocuments: builder.mutation<\n BulkDelete.Response,\n BulkDelete.Params & BulkDelete.Request['body'] & { params?: Find.Request['query'] }\n >({\n query: ({ model, params, ...body }) => ({\n url: `/content-manager/collection-types/${model}/actions/bulkDelete`,\n method: 'POST',\n data: body,\n config: {\n params,\n },\n }),\n invalidatesTags: (_res, _error, { model }) => [\n { type: 'Document', id: `${model}_LIST` },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n discardDocument: builder.mutation<\n Discard.Response,\n Pick<Discard.Params, 'model'> &\n Partial<Pick<Discard.Params, 'documentId'>> & {\n collectionType: string;\n params?: Find.Request['query'] & {\n [key: string]: any;\n };\n }\n >({\n query: ({ collectionType, model, documentId, params }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/discard`\n : `/content-manager/${collectionType}/${model}/actions/discard`,\n method: 'POST',\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n { type: 'Document', id: `${model}_LIST` },\n 'Relations',\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n /**\n * Gets all documents of a collection type or single type.\n * By passing different params you can get different results e.g. only published documents or 'es' documents.\n */\n getAllDocuments: builder.query<\n Find.Response,\n Find.Params & {\n params?: Find.Request['query'] & {\n [key: string]: any;\n };\n }\n >({\n query: ({ model, params }) => ({\n url: `/content-manager/collection-types/${model}`,\n method: 'GET',\n config: {\n params: stringify(params, { encode: true }),\n },\n }),\n providesTags: (result, _error, arg) => {\n return [\n { type: 'Document', id: `ALL_LIST` },\n { type: 'Document', id: `${arg.model}_LIST` },\n ...(result?.results.map(({ documentId }) => ({\n type: 'Document' as const,\n id: `${arg.model}_${documentId}`,\n })) ?? []),\n ];\n },\n }),\n getDraftRelationCount: builder.query<\n CountDraftRelations.Response,\n {\n collectionType: string;\n model: string;\n /**\n * You don't pass the documentId if the document is a single-type\n */\n documentId?: string;\n params?: CountDraftRelations.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, params }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/countDraftRelations`\n : `/content-manager/${collectionType}/${model}/actions/countDraftRelations`,\n method: 'GET',\n config: {\n params,\n },\n }),\n }),\n getDocument: builder.query<\n FindOne.Response,\n Pick<FindOne.Params, 'model'> &\n Partial<Pick<FindOne.Params, 'documentId'>> & {\n collectionType: string;\n params?: FindOne.Request['query'];\n }\n >({\n // @ts-expect-error – TODO: fix ts error where data unknown doesn't work with response via an assertion?\n queryFn: async (\n { collectionType, model, documentId, params },\n _api,\n _extraOpts,\n baseQuery\n ) => {\n const res = await baseQuery({\n url: `/content-manager/${collectionType}/${model}${documentId ? `/${documentId}` : ''}`,\n method: 'GET',\n config: {\n params,\n },\n });\n\n /**\n * To stop the query from locking itself in multiple retries, we intercept the error here and manage correctly.\n * This is because single-types don't have a list view and fetching them with the route `/single-types/:model`\n * never returns a list, just a single document but this won't exist if you've not made one before.\n */\n if (res.error && res.error.name === 'NotFoundError' && collectionType === SINGLE_TYPES) {\n return { data: { document: undefined }, error: undefined };\n }\n\n return res;\n },\n providesTags: (result, _error, { collectionType, model, documentId }) => {\n return [\n // we prefer the result's id because we don't fetch single-types with an ID.\n {\n type: 'Document',\n id:\n collectionType !== SINGLE_TYPES\n ? `${model}_${result && 'documentId' in result ? result.documentId : documentId}`\n : model,\n },\n // Make it easy to invalidate all individual documents queries for a model\n {\n type: 'Document',\n id: `${model}_ALL_ITEMS`,\n },\n ];\n },\n }),\n getManyDraftRelationCount: builder.query<\n CountManyEntriesDraftRelations.Response['data'],\n CountManyEntriesDraftRelations.Request['query'] & {\n model: string;\n }\n >({\n query: ({ model, ...params }) => ({\n url: `/content-manager/collection-types/${model}/actions/countManyEntriesDraftRelations`,\n method: 'GET',\n config: {\n params,\n },\n }),\n transformResponse: (response: CountManyEntriesDraftRelations.Response) => response.data,\n }),\n /**\n * This endpoint will either create or update documents at the same time as publishing.\n */\n publishDocument: builder.mutation<\n Publish.Response,\n Pick<Publish.Params, 'model'> &\n Partial<Pick<Publish.Params, 'documentId'>> & {\n collectionType: string;\n data: Publish.Request['body'];\n params?: Publish.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, params, data }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/publish`\n : `/content-manager/${collectionType}/${model}/actions/publish`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n { type: 'Document', id: `${model}_LIST` },\n 'Relations',\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n {\n type: 'AILocalizationJobs',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n ];\n },\n }),\n publishManyDocuments: builder.mutation<\n BulkPublish.Response,\n BulkPublish.Params & BulkPublish.Request['body'] & { params?: BulkPublish.Request['query'] }\n >({\n query: ({ model, params, ...body }) => ({\n url: `/content-manager/collection-types/${model}/actions/bulkPublish`,\n method: 'POST',\n data: body,\n config: {\n params,\n },\n }),\n invalidatesTags: (_res, _error, { model, documentIds }) => {\n return [\n ...documentIds.map((id) => ({ type: 'Document' as const, id: `${model}_${id}` })),\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n updateDocument: builder.mutation<\n Update.Response,\n Pick<Update.Params, 'model'> &\n Partial<Pick<Update.Params, 'documentId'>> & {\n collectionType: string;\n data: Update.Request['body'];\n params?: Update.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, data, params }) => ({\n url: `/content-manager/${collectionType}/${model}${documentId ? `/${documentId}` : ''}`,\n method: 'PUT',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n 'Relations',\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n {\n type: 'AILocalizationJobs',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n ];\n },\n async onQueryStarted({ data, ...patch }, { dispatch, queryFulfilled }) {\n // Optimistically update the cache with the new data\n const patchResult = dispatch(\n documentApi.util.updateQueryData('getDocument', patch, (draft) => {\n Object.assign(draft.data, data);\n })\n );\n try {\n await queryFulfilled;\n } catch {\n // Rollback the optimistic update if there's an error\n patchResult.undo();\n }\n },\n transformResponse: (response: Update.Response, meta, arg): Update.Response => {\n /**\n * TODO v6\n * Adapt plugin:users-permissions.user to return the same response\n * shape as all other requests. The error is returned as expected.\n */\n if (!('data' in response) && arg.model === 'plugin::users-permissions.user') {\n return {\n data: response,\n meta: {\n availableStatus: [],\n availableLocales: [],\n },\n };\n }\n\n return response;\n },\n }),\n unpublishDocument: builder.mutation<\n Unpublish.Response,\n Pick<Unpublish.Params, 'model'> &\n Partial<Pick<Unpublish.Params, 'documentId'>> & {\n collectionType: string;\n params?: Unpublish.Request['query'];\n data: Unpublish.Request['body'];\n }\n >({\n query: ({ collectionType, model, documentId, params, data }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/unpublish`\n : `/content-manager/${collectionType}/${model}/actions/unpublish`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n unpublishManyDocuments: builder.mutation<\n BulkUnpublish.Response,\n Pick<BulkUnpublish.Params, 'model'> &\n BulkUnpublish.Request['body'] & {\n params?: BulkUnpublish.Request['query'];\n }\n >({\n query: ({ model, params, ...body }) => ({\n url: `/content-manager/collection-types/${model}/actions/bulkUnpublish`,\n method: 'POST',\n data: body,\n config: {\n params,\n },\n }),\n invalidatesTags: (_res, _error, { model, documentIds }) => [\n ...documentIds.map((id) => ({ type: 'Document' as const, id: `${model}_${id}` })),\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n }),\n});\n\nconst {\n useAutoCloneDocumentMutation,\n useCloneDocumentMutation,\n useCreateDocumentMutation,\n useDeleteDocumentMutation,\n useDeleteManyDocumentsMutation,\n useDiscardDocumentMutation,\n useGetAllDocumentsQuery,\n useLazyGetDocumentQuery,\n useGetDocumentQuery,\n useLazyGetDraftRelationCountQuery,\n useGetManyDraftRelationCountQuery,\n usePublishDocumentMutation,\n usePublishManyDocumentsMutation,\n useUpdateDocumentMutation,\n useUnpublishDocumentMutation,\n useUnpublishManyDocumentsMutation,\n} = documentApi;\n\nexport {\n useAutoCloneDocumentMutation,\n useCloneDocumentMutation,\n useCreateDocumentMutation,\n useDeleteDocumentMutation,\n useDeleteManyDocumentsMutation,\n useDiscardDocumentMutation,\n useGetAllDocumentsQuery,\n useLazyGetDocumentQuery,\n useGetDocumentQuery,\n useLazyGetDraftRelationCountQuery as useGetDraftRelationCountQuery,\n useGetManyDraftRelationCountQuery,\n usePublishDocumentMutation,\n usePublishManyDocumentsMutation,\n useUpdateDocumentMutation,\n useUnpublishDocumentMutation,\n useUnpublishManyDocumentsMutation,\n};\n"],"names":["documentApi","contentManagerApi","injectEndpoints","overrideExisting","endpoints","builder","autoCloneDocument","mutation","query","model","sourceId","params","url","method","config","invalidatesTags","_result","error","type","id","cloneDocument","data","_error","createDocument","result","transformResponse","response","meta","arg","availableStatus","availableLocales","deleteDocument","collectionType","documentId","SINGLE_TYPES","deleteManyDocuments","body","_res","discardDocument","getAllDocuments","stringify","encode","providesTags","results","map","getDraftRelationCount","getDocument","queryFn","_api","_extraOpts","baseQuery","res","name","document","undefined","getManyDraftRelationCount","publishDocument","publishManyDocuments","documentIds","updateDocument","onQueryStarted","patch","dispatch","queryFulfilled","patchResult","util","updateQueryData","draft","Object","assign","undo","unpublishDocument","unpublishManyDocuments","useAutoCloneDocumentMutation","useCloneDocumentMutation","useCreateDocumentMutation","useDeleteDocumentMutation","useDeleteManyDocumentsMutation","useDiscardDocumentMutation","useGetAllDocumentsQuery","useLazyGetDocumentQuery","useGetDocumentQuery","useLazyGetDraftRelationCountQuery","useGetManyDraftRelationCountQuery","usePublishDocumentMutation","usePublishManyDocumentsMutation","useUpdateDocumentMutation","useUnpublishDocumentMutation","useUnpublishManyDocumentsMutation"],"mappings":"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"}
@@ -8,5 +8,5 @@ declare const useGetHistoryVersionsQuery: import("@reduxjs/toolkit/dist/query/re
8
8
  contentType: import("@strapi/types/dist/uid").ContentType;
9
9
  documentId?: Data.ID | undefined;
10
10
  locale?: string | undefined;
11
- } & Partial<Pick<import("../../../../shared/contracts/history-versions").Pagination, "page" | "pageSize">>, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList", GetHistoryVersions.Response, "adminApi">>, useRestoreVersionMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<RestoreVersion, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList", RestoreHistoryVersion.Response, "adminApi">>;
11
+ } & Partial<Pick<import("../../../../shared/contracts/history-versions").Pagination, "page" | "pageSize">>, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", GetHistoryVersions.Response, "adminApi">>, useRestoreVersionMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<RestoreVersion, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", RestoreHistoryVersion.Response, "adminApi">>;
12
12
  export { useGetHistoryVersionsQuery, useRestoreVersionMutation };
@@ -6,5 +6,7 @@ declare const insertLink: (editor: Editor, { url }: {
6
6
  declare const editLink: (editor: Editor, link: {
7
7
  url: string;
8
8
  text: string;
9
+ rel: string;
10
+ target: string;
9
11
  }) => void;
10
12
  export { insertLink, editLink, removeLink };
@@ -25,7 +25,22 @@ interface HeaderActionDescription {
25
25
  startIcon?: React.ReactNode;
26
26
  textValue?: string;
27
27
  value: string;
28
+ /**
29
+ * @internal
30
+ * @description
31
+ * Internal SelectOption renderer used to display the status of AI translation background jobs
32
+ */
33
+ _render?: () => React.ReactNode;
28
34
  }>;
35
+ /**
36
+ * @internal
37
+ * @description
38
+ * Internal document header action to display the status of AI translation background jobs
39
+ */
40
+ _status?: {
41
+ message: React.ReactNode;
42
+ tooltip?: React.ReactNode;
43
+ };
29
44
  onSelect?: (value: string) => void;
30
45
  value?: string;
31
46
  customizeContent?: (value: string) => React.ReactNode;
@@ -1,3 +1,3 @@
1
1
  import { GetPreviewUrl } from '../../../../shared/contracts/preview';
2
- declare const useGetPreviewUrlQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<GetPreviewUrl.Request, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList", GetPreviewUrl.Response, "adminApi">>;
2
+ declare const useGetPreviewUrlQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<GetPreviewUrl.Request, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", GetPreviewUrl.Response, "adminApi">>;
3
3
  export { useGetPreviewUrlQuery };
@@ -1,2 +1,2 @@
1
- declare const contentManagerApi: 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" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList", never>, "adminApi", "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList", typeof import("@reduxjs/toolkit/query").coreModuleName | typeof import("@reduxjs/toolkit/dist/query/react").reactHooksModuleName>;
1
+ declare const contentManagerApi: 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" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", never>, "adminApi", "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", typeof import("@reduxjs/toolkit/query").coreModuleName | typeof import("@reduxjs/toolkit/dist/query/react").reactHooksModuleName>;
2
2
  export { contentManagerApi };
@@ -1,5 +1,5 @@
1
- declare const useGetComponentConfigurationQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<string, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList", {
1
+ declare const useGetComponentConfigurationQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<string, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", {
2
2
  component: import("../../../shared/contracts/components").ComponentConfiguration;
3
3
  components: Record<string, import("../../../shared/contracts/components").ComponentConfiguration>;
4
- }, "adminApi">>, useUpdateComponentConfigurationMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<any, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList", import("../../../shared/contracts/components").ComponentConfiguration, "adminApi">>;
4
+ }, "adminApi">>, useUpdateComponentConfigurationMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<any, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", import("../../../shared/contracts/components").ComponentConfiguration, "adminApi">>;
5
5
  export { useGetComponentConfigurationQuery, useUpdateComponentConfigurationMutation };