@strapi/admin 4.15.3-alpha.3 → 4.15.4

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 (183) hide show
  1. package/dist/_chunks/{AuthenticatedApp-f7cd7740.mjs → AuthenticatedApp-5524c90a.mjs} +21 -21
  2. package/dist/_chunks/{AuthenticatedApp-f7cd7740.mjs.map → AuthenticatedApp-5524c90a.mjs.map} +1 -1
  3. package/dist/_chunks/{AuthenticatedApp-732676f8.js → AuthenticatedApp-96716173.js} +21 -21
  4. package/dist/_chunks/{AuthenticatedApp-732676f8.js.map → AuthenticatedApp-96716173.js.map} +1 -1
  5. package/dist/_chunks/{HomePage-3db125c5.js → HomePage-419bfd8c.js} +4 -4
  6. package/dist/_chunks/{HomePage-3db125c5.js.map → HomePage-419bfd8c.js.map} +1 -1
  7. package/dist/_chunks/{HomePage-6334e63e.js → HomePage-5a37e9c7.js} +4 -4
  8. package/dist/_chunks/{HomePage-6334e63e.js.map → HomePage-5a37e9c7.js.map} +1 -1
  9. package/dist/_chunks/{HomePage-ef2007da.mjs → HomePage-756a9c8e.mjs} +4 -4
  10. package/dist/_chunks/{HomePage-ef2007da.mjs.map → HomePage-756a9c8e.mjs.map} +1 -1
  11. package/dist/_chunks/{HomePage-08496460.mjs → HomePage-af8ae9d9.mjs} +4 -4
  12. package/dist/_chunks/{HomePage-08496460.mjs.map → HomePage-af8ae9d9.mjs.map} +1 -1
  13. package/dist/_chunks/{InstalledPluginsPage-4b69808f.js → InstalledPluginsPage-733c83cc.js} +3 -3
  14. package/dist/_chunks/{InstalledPluginsPage-4b69808f.js.map → InstalledPluginsPage-733c83cc.js.map} +1 -1
  15. package/dist/_chunks/{InstalledPluginsPage-34c3ff11.mjs → InstalledPluginsPage-922ee25b.mjs} +3 -3
  16. package/dist/_chunks/{InstalledPluginsPage-34c3ff11.mjs.map → InstalledPluginsPage-922ee25b.mjs.map} +1 -1
  17. package/dist/_chunks/{Login-26fb3f61.mjs → Login-54110b81.mjs} +2 -2
  18. package/dist/_chunks/{Login-26fb3f61.mjs.map → Login-54110b81.mjs.map} +1 -1
  19. package/dist/_chunks/{Login-e1d9c1b6.js → Login-a9414070.js} +2 -2
  20. package/dist/_chunks/{Login-e1d9c1b6.js.map → Login-a9414070.js.map} +1 -1
  21. package/dist/_chunks/{MarketplacePage-623d8f49.js → MarketplacePage-2bb9f6c8.js} +3 -3
  22. package/dist/_chunks/{MarketplacePage-623d8f49.js.map → MarketplacePage-2bb9f6c8.js.map} +1 -1
  23. package/dist/_chunks/{MarketplacePage-d9f38686.mjs → MarketplacePage-7827f842.mjs} +3 -3
  24. package/dist/_chunks/{MarketplacePage-d9f38686.mjs.map → MarketplacePage-7827f842.mjs.map} +1 -1
  25. package/dist/_chunks/{ProfilePage-c881cd02.js → ProfilePage-034b28a3.js} +3 -3
  26. package/dist/_chunks/{ProfilePage-c881cd02.js.map → ProfilePage-034b28a3.js.map} +1 -1
  27. package/dist/_chunks/{ProfilePage-e767dbed.mjs → ProfilePage-51b48d52.mjs} +3 -3
  28. package/dist/_chunks/{ProfilePage-e767dbed.mjs.map → ProfilePage-51b48d52.mjs.map} +1 -1
  29. package/dist/_chunks/{constants-99c11ca4.mjs → constants-06e9c997.mjs} +3 -3
  30. package/dist/_chunks/{constants-99c11ca4.mjs.map → constants-06e9c997.mjs.map} +1 -1
  31. package/dist/_chunks/{constants-7acf8ebd.js → constants-2d656503.js} +2 -2
  32. package/dist/_chunks/{constants-7acf8ebd.js.map → constants-2d656503.js.map} +1 -1
  33. package/dist/_chunks/{constants-52a46e11.mjs → constants-3fe806aa.mjs} +6 -6
  34. package/dist/_chunks/{constants-52a46e11.mjs.map → constants-3fe806aa.mjs.map} +1 -1
  35. package/dist/_chunks/{constants-bdeb8843.js → constants-45f7751c.js} +5 -5
  36. package/dist/_chunks/{constants-bdeb8843.js.map → constants-45f7751c.js.map} +1 -1
  37. package/dist/_chunks/{constants-0f990cf9.mjs → constants-89ae95c6.mjs} +2 -2
  38. package/dist/_chunks/{constants-0f990cf9.mjs.map → constants-89ae95c6.mjs.map} +1 -1
  39. package/dist/_chunks/{constants-8a54f247.js → constants-b19fe3c9.js} +3 -3
  40. package/dist/_chunks/{constants-8a54f247.js.map → constants-b19fe3c9.js.map} +1 -1
  41. package/dist/_chunks/{constants-ee9ffdba.js → constants-bdccd418.js} +6 -6
  42. package/dist/_chunks/{constants-ee9ffdba.js.map → constants-bdccd418.js.map} +1 -1
  43. package/dist/_chunks/{constants-4a139a28.mjs → constants-ea0a3cda.mjs} +5 -5
  44. package/dist/_chunks/{constants-4a139a28.mjs.map → constants-ea0a3cda.mjs.map} +1 -1
  45. package/dist/_chunks/{index-e4fb2fc4.js → index-02f58272.js} +5 -5
  46. package/dist/_chunks/{index-e4fb2fc4.js.map → index-02f58272.js.map} +1 -1
  47. package/dist/_chunks/{index-e8a9d281.js → index-04538774.js} +3 -3
  48. package/dist/_chunks/{index-e8a9d281.js.map → index-04538774.js.map} +1 -1
  49. package/dist/_chunks/{index-fce43a6e.js → index-09ae6db3.js} +3 -3
  50. package/dist/_chunks/{index-fce43a6e.js.map → index-09ae6db3.js.map} +1 -1
  51. package/dist/_chunks/{index-0de12f9b.js → index-10f599c1.js} +3 -3
  52. package/dist/_chunks/{index-0de12f9b.js.map → index-10f599c1.js.map} +1 -1
  53. package/dist/_chunks/{index-20c61a20.js → index-131e8a0f.js} +3 -3
  54. package/dist/_chunks/{index-20c61a20.js.map → index-131e8a0f.js.map} +1 -1
  55. package/dist/_chunks/{index-8f3e09e1.js → index-1368779e.js} +3 -3
  56. package/dist/_chunks/{index-8f3e09e1.js.map → index-1368779e.js.map} +1 -1
  57. package/dist/_chunks/{index-b0a2c097.js → index-15983380.js} +3 -3
  58. package/dist/_chunks/{index-b0a2c097.js.map → index-15983380.js.map} +1 -1
  59. package/dist/_chunks/{index-37826ae0.js → index-171f253e.js} +4 -4
  60. package/dist/_chunks/{index-37826ae0.js.map → index-171f253e.js.map} +1 -1
  61. package/dist/_chunks/{index-113a04f3.js → index-17faf42d.js} +3 -3
  62. package/dist/_chunks/{index-113a04f3.js.map → index-17faf42d.js.map} +1 -1
  63. package/dist/_chunks/{index-a3f12c0d.mjs → index-1df9f98e.mjs} +4 -4
  64. package/dist/_chunks/{index-a3f12c0d.mjs.map → index-1df9f98e.mjs.map} +1 -1
  65. package/dist/_chunks/{index-dc565615.mjs → index-2459dded.mjs} +4 -4
  66. package/dist/_chunks/{index-dc565615.mjs.map → index-2459dded.mjs.map} +1 -1
  67. package/dist/_chunks/{index-a534679d.mjs → index-3407e4e6.mjs} +6 -6
  68. package/dist/_chunks/{index-a534679d.mjs.map → index-3407e4e6.mjs.map} +1 -1
  69. package/dist/_chunks/{index-c10f36b7.js → index-35766285.js} +4 -4
  70. package/dist/_chunks/{index-c10f36b7.js.map → index-35766285.js.map} +1 -1
  71. package/dist/_chunks/{index-e51db7bc.js → index-37e364d9.js} +3 -3
  72. package/dist/_chunks/{index-e51db7bc.js.map → index-37e364d9.js.map} +1 -1
  73. package/dist/_chunks/{index-f0dade4f.mjs → index-37f67695.mjs} +5 -5
  74. package/dist/_chunks/{index-f0dade4f.mjs.map → index-37f67695.mjs.map} +1 -1
  75. package/dist/_chunks/{index-1e111031.mjs → index-3a75aa07.mjs} +5 -5
  76. package/dist/_chunks/{index-1e111031.mjs.map → index-3a75aa07.mjs.map} +1 -1
  77. package/dist/_chunks/{index-7fad37a1.js → index-3bfde142.js} +2 -2
  78. package/dist/_chunks/{index-7fad37a1.js.map → index-3bfde142.js.map} +1 -1
  79. package/dist/_chunks/{index-2997932a.js → index-414cde92.js} +4 -4
  80. package/dist/_chunks/{index-2997932a.js.map → index-414cde92.js.map} +1 -1
  81. package/dist/_chunks/{index-97507bd1.js → index-44c0c7bf.js} +3 -3
  82. package/dist/_chunks/{index-97507bd1.js.map → index-44c0c7bf.js.map} +1 -1
  83. package/dist/_chunks/{index-7595978f.js → index-4b209bd2.js} +3 -3
  84. package/dist/_chunks/{index-7595978f.js.map → index-4b209bd2.js.map} +1 -1
  85. package/dist/_chunks/{index-a0e45da0.mjs → index-4c3eb885.mjs} +4 -4
  86. package/dist/_chunks/{index-a0e45da0.mjs.map → index-4c3eb885.mjs.map} +1 -1
  87. package/dist/_chunks/{index-146e9340.mjs → index-4fa922cc.mjs} +3 -3
  88. package/dist/_chunks/{index-146e9340.mjs.map → index-4fa922cc.mjs.map} +1 -1
  89. package/dist/_chunks/{index-cb752a75.js → index-6298ffb7.js} +2 -2
  90. package/dist/_chunks/{index-cb752a75.js.map → index-6298ffb7.js.map} +1 -1
  91. package/dist/_chunks/{index-b2c380fe.mjs → index-696b3624.mjs} +2 -2
  92. package/dist/_chunks/{index-b2c380fe.mjs.map → index-696b3624.mjs.map} +1 -1
  93. package/dist/_chunks/{index-57f5316c.mjs → index-6eb4b9c5.mjs} +3 -3
  94. package/dist/_chunks/{index-57f5316c.mjs.map → index-6eb4b9c5.mjs.map} +1 -1
  95. package/dist/_chunks/{index-5a890d37.mjs → index-7182ce8e.mjs} +4 -4
  96. package/dist/_chunks/{index-5a890d37.mjs.map → index-7182ce8e.mjs.map} +1 -1
  97. package/dist/_chunks/{index-fa1bb3bb.mjs → index-72d81abf.mjs} +2 -2
  98. package/dist/_chunks/{index-fa1bb3bb.mjs.map → index-72d81abf.mjs.map} +1 -1
  99. package/dist/_chunks/{index-35a92909.mjs → index-7315d2b7.mjs} +5 -5
  100. package/dist/_chunks/{index-35a92909.mjs.map → index-7315d2b7.mjs.map} +1 -1
  101. package/dist/_chunks/{index-9ce19c23.mjs → index-7bb8a3f2.mjs} +4 -4
  102. package/dist/_chunks/{index-9ce19c23.mjs.map → index-7bb8a3f2.mjs.map} +1 -1
  103. package/dist/_chunks/{index-c195d4f7.js → index-83e78ac3.js} +4 -4
  104. package/dist/_chunks/{index-c195d4f7.js.map → index-83e78ac3.js.map} +1 -1
  105. package/dist/_chunks/{index-43453997.mjs → index-8c244057.mjs} +3 -3
  106. package/dist/_chunks/{index-43453997.mjs.map → index-8c244057.mjs.map} +1 -1
  107. package/dist/_chunks/{index-8110943c.js → index-8e785228.js} +20 -20
  108. package/dist/_chunks/{index-8110943c.js.map → index-8e785228.js.map} +1 -1
  109. package/dist/_chunks/{index-ab75b097.js → index-906e4561.js} +5 -5
  110. package/dist/_chunks/{index-ab75b097.js.map → index-906e4561.js.map} +1 -1
  111. package/dist/_chunks/{index-86010319.mjs → index-90ed6722.mjs} +8 -8
  112. package/dist/_chunks/{index-86010319.mjs.map → index-90ed6722.mjs.map} +1 -1
  113. package/dist/_chunks/{index-58bcca54.js → index-99e697a0.js} +3 -3
  114. package/dist/_chunks/{index-58bcca54.js.map → index-99e697a0.js.map} +1 -1
  115. package/dist/_chunks/{index-5aabaf9f.js → index-9d6849bf.js} +3 -3
  116. package/dist/_chunks/{index-5aabaf9f.js.map → index-9d6849bf.js.map} +1 -1
  117. package/dist/_chunks/{index-944a4552.js → index-a08ce4ed.js} +5 -5
  118. package/dist/_chunks/{index-944a4552.js.map → index-a08ce4ed.js.map} +1 -1
  119. package/dist/_chunks/{index-aad3ffae.mjs → index-a47f4f4e.mjs} +5 -5
  120. package/dist/_chunks/{index-aad3ffae.mjs.map → index-a47f4f4e.mjs.map} +1 -1
  121. package/dist/_chunks/{index-03436d85.mjs → index-a4d005f4.mjs} +3 -3
  122. package/dist/_chunks/{index-03436d85.mjs.map → index-a4d005f4.mjs.map} +1 -1
  123. package/dist/_chunks/{index-f803150c.mjs → index-a51a2eb8.mjs} +3 -3
  124. package/dist/_chunks/{index-f803150c.mjs.map → index-a51a2eb8.mjs.map} +1 -1
  125. package/dist/_chunks/{index-8c1b6735.mjs → index-a985e784.mjs} +3 -3
  126. package/dist/_chunks/{index-8c1b6735.mjs.map → index-a985e784.mjs.map} +1 -1
  127. package/dist/_chunks/{index-e29e4569.js → index-aa4ede2e.js} +4 -4
  128. package/dist/_chunks/{index-e29e4569.js.map → index-aa4ede2e.js.map} +1 -1
  129. package/dist/_chunks/{index-69fbff89.js → index-b171513f.js} +3 -3
  130. package/dist/_chunks/{index-69fbff89.js.map → index-b171513f.js.map} +1 -1
  131. package/dist/_chunks/{index-4ffd374a.mjs → index-b2883169.mjs} +5 -5
  132. package/dist/_chunks/{index-4ffd374a.mjs.map → index-b2883169.mjs.map} +1 -1
  133. package/dist/_chunks/{index-faca9325.mjs → index-b72c9b09.mjs} +3 -3
  134. package/dist/_chunks/{index-faca9325.mjs.map → index-b72c9b09.mjs.map} +1 -1
  135. package/dist/_chunks/{index-ca690343.js → index-bf66c659.js} +4 -4
  136. package/dist/_chunks/{index-ca690343.js.map → index-bf66c659.js.map} +1 -1
  137. package/dist/_chunks/{index-79bdcf33.js → index-c73f17d2.js} +5 -5
  138. package/dist/_chunks/{index-79bdcf33.js.map → index-c73f17d2.js.map} +1 -1
  139. package/dist/_chunks/{index-6492abdf.js → index-c7f06c75.js} +8 -8
  140. package/dist/_chunks/{index-6492abdf.js.map → index-c7f06c75.js.map} +1 -1
  141. package/dist/_chunks/{index-42478bbd.mjs → index-ceca4bd1.mjs} +3 -3
  142. package/dist/_chunks/{index-42478bbd.mjs.map → index-ceca4bd1.mjs.map} +1 -1
  143. package/dist/_chunks/{index-c3d9d030.mjs → index-cfb11e7f.mjs} +4 -4
  144. package/dist/_chunks/{index-c3d9d030.mjs.map → index-cfb11e7f.mjs.map} +1 -1
  145. package/dist/_chunks/{index-ce6b3c99.js → index-cfe5eadd.js} +2 -2
  146. package/dist/_chunks/{index-ce6b3c99.js.map → index-cfe5eadd.js.map} +1 -1
  147. package/dist/_chunks/{index-b026c6c1.mjs → index-d0efe393.mjs} +2 -2
  148. package/dist/_chunks/{index-b026c6c1.mjs.map → index-d0efe393.mjs.map} +1 -1
  149. package/dist/_chunks/{index-5a079422.mjs → index-d45547fd.mjs} +3 -3
  150. package/dist/_chunks/{index-5a079422.mjs.map → index-d45547fd.mjs.map} +1 -1
  151. package/dist/_chunks/{index-d57e2c0d.mjs → index-dafa7a27.mjs} +4 -4
  152. package/dist/_chunks/{index-d57e2c0d.mjs.map → index-dafa7a27.mjs.map} +1 -1
  153. package/dist/_chunks/{index-f39f6a6b.mjs → index-dfdb9e58.mjs} +3 -3
  154. package/dist/_chunks/{index-f39f6a6b.mjs.map → index-dfdb9e58.mjs.map} +1 -1
  155. package/dist/_chunks/{index-b2613666.mjs → index-e0bd1ac1.mjs} +20 -20
  156. package/dist/_chunks/{index-b2613666.mjs.map → index-e0bd1ac1.mjs.map} +1 -1
  157. package/dist/_chunks/{index-7a231fae.js → index-e412fafd.js} +6 -6
  158. package/dist/_chunks/{index-7a231fae.js.map → index-e412fafd.js.map} +1 -1
  159. package/dist/_chunks/{index-daa03795.js → index-e6916e51.js} +5 -5
  160. package/dist/_chunks/{index-daa03795.js.map → index-e6916e51.js.map} +1 -1
  161. package/dist/_chunks/{index-1129aa87.mjs → index-f122bd36.mjs} +5 -5
  162. package/dist/_chunks/{index-1129aa87.mjs.map → index-f122bd36.mjs.map} +1 -1
  163. package/dist/_chunks/{index-e16877ab.mjs → index-f2acdf04.mjs} +3 -3
  164. package/dist/_chunks/{index-e16877ab.mjs.map → index-f2acdf04.mjs.map} +1 -1
  165. package/dist/_chunks/{index-1af72b45.js → index-fa1850fa.js} +4 -4
  166. package/dist/_chunks/{index-1af72b45.js.map → index-fa1850fa.js.map} +1 -1
  167. package/dist/_chunks/{index-fff2189d.js → index-fa6a1d8a.js} +5 -5
  168. package/dist/_chunks/{index-fff2189d.js.map → index-fa6a1d8a.js.map} +1 -1
  169. package/dist/_chunks/{index-0cb3175e.mjs → index-fa82ab34.mjs} +3 -3
  170. package/dist/_chunks/{index-0cb3175e.mjs.map → index-fa82ab34.mjs.map} +1 -1
  171. package/dist/_chunks/{index-837c6050.mjs → index-fb6f634d.mjs} +3 -3
  172. package/dist/_chunks/{index-837c6050.mjs.map → index-fb6f634d.mjs.map} +1 -1
  173. package/dist/_chunks/{schema-efffd6be.mjs → schema-3e2e2e31.mjs} +2 -2
  174. package/dist/_chunks/{schema-efffd6be.mjs.map → schema-3e2e2e31.mjs.map} +1 -1
  175. package/dist/_chunks/{schema-08e285a2.js → schema-672225f4.js} +2 -2
  176. package/dist/_chunks/{schema-08e285a2.js.map → schema-672225f4.js.map} +1 -1
  177. package/dist/_chunks/{validateWorkflow-389d151e.js → validateWorkflow-9445bcae.js} +3 -3
  178. package/dist/_chunks/{validateWorkflow-389d151e.js.map → validateWorkflow-9445bcae.js.map} +1 -1
  179. package/dist/_chunks/{validateWorkflow-c6f1d9b2.mjs → validateWorkflow-f5a93683.mjs} +3 -3
  180. package/dist/_chunks/{validateWorkflow-c6f1d9b2.mjs.map → validateWorkflow-f5a93683.mjs.map} +1 -1
  181. package/dist/admin/index.js +1 -1
  182. package/dist/admin/index.mjs +1 -1
  183. package/package.json +12 -12
@@ -1 +1 @@
1
- {"version":3,"file":"constants-4a139a28.mjs","sources":["../../ee/admin/src/content-manager/components/Filter/CustomInputs/ReviewWorkflows/AssigneeFilter.js","../../ee/admin/src/content-manager/components/Filter/CustomInputs/ReviewWorkflows/StageFilter.js","../../ee/admin/src/content-manager/components/Filter/CustomInputs/ReviewWorkflows/constants.js"],"sourcesContent":["import React from 'react';\n\nimport { Combobox, ComboboxOption } from '@strapi/design-system';\nimport PropTypes from 'prop-types';\nimport { useIntl } from 'react-intl';\n\nimport { getDisplayName } from '../../../../../../../../admin/src/content-manager/utils/getDisplayName';\nimport { useAdminUsers } from '../../../../../../../../admin/src/hooks/useAdminUsers';\n\nexport const AssigneeFilter = ({ value, onChange }) => {\n const { formatMessage } = useIntl();\n const { users, isLoading } = useAdminUsers();\n\n return (\n <Combobox\n value={value}\n aria-label={formatMessage({\n id: 'content-manager.components.Filters.usersSelect.label',\n defaultMessage: 'Search and select an user to filter',\n })}\n onChange={onChange}\n loading={isLoading}\n >\n {users.map((user) => {\n return (\n <ComboboxOption key={user.id} value={user.id.toString()}>\n {getDisplayName(user, formatMessage)}\n </ComboboxOption>\n );\n })}\n </Combobox>\n );\n};\n\nAssigneeFilter.propTypes = {\n onChange: PropTypes.func.isRequired,\n value: PropTypes.string,\n};\n\nAssigneeFilter.defaultProps = {\n value: '',\n};\n","import * as React from 'react';\n\nimport { Flex, Loader, SingleSelect, SingleSelectOption, Typography } from '@strapi/design-system';\nimport PropTypes from 'prop-types';\nimport { useIntl } from 'react-intl';\n\nimport { useReviewWorkflows } from '../../../../../pages/SettingsPage/pages/ReviewWorkflows/hooks/useReviewWorkflows';\nimport { getStageColorByHex } from '../../../../../pages/SettingsPage/pages/ReviewWorkflows/utils/colors';\n\nexport const StageFilter = ({ value, onChange, uid }) => {\n const { formatMessage } = useIntl();\n const {\n workflows: [workflow],\n isLoading,\n } = useReviewWorkflows({ filters: { contentTypes: uid } });\n\n return (\n <SingleSelect\n aria-label={formatMessage({\n id: 'content-manager.components.Filters.reviewWorkflows.label',\n defaultMessage: 'Search and select an workflow stage to filter',\n })}\n value={value}\n onChange={onChange}\n loading={isLoading}\n // eslint-disable-next-line react/no-unstable-nested-components\n customizeContent={() => (\n <Flex as=\"span\" justifyContent=\"space-between\" alignItems=\"center\" width=\"100%\">\n <Typography textColor=\"neutral800\" ellipsis>\n {value}\n </Typography>\n {isLoading ? <Loader small style={{ display: 'flex' }} /> : null}\n </Flex>\n )}\n >\n {(workflow?.stages ?? []).map(({ id, color, name }) => {\n const { themeColorName } = getStageColorByHex(color);\n\n return (\n <SingleSelectOption\n key={id}\n startIcon={\n <Flex\n height={2}\n background={color}\n borderColor={themeColorName === 'neutral0' ? 'neutral150' : 'transparent'}\n hasRadius\n shrink={0}\n width={2}\n />\n }\n value={name}\n >\n {name}\n </SingleSelectOption>\n );\n })}\n </SingleSelect>\n );\n};\n\nStageFilter.defaultProps = {\n value: '',\n};\n\nStageFilter.propTypes = {\n onChange: PropTypes.func.isRequired,\n uid: PropTypes.string.isRequired,\n value: PropTypes.string,\n};\n","import { getTrad } from '../../../../../../../../admin/src/content-manager/utils';\n\nimport { AssigneeFilter } from './AssigneeFilter';\nimport { StageFilter } from './StageFilter';\n\nexport const REVIEW_WORKFLOW_FILTERS = [\n {\n fieldSchema: {\n type: 'relation',\n mainField: {\n name: 'name',\n\n schema: {\n type: 'string',\n },\n },\n },\n\n metadatas: {\n customInput: StageFilter,\n\n label: {\n id: getTrad(`containers.ListPage.table-headers.reviewWorkflows.stage`),\n defaultMessage: 'Review stage',\n },\n },\n\n name: 'strapi_stage',\n },\n\n {\n fieldSchema: {\n type: 'relation',\n mainField: {\n name: 'id',\n\n schema: {\n type: 'int',\n },\n },\n },\n\n metadatas: {\n customInput: AssigneeFilter,\n\n customOperators: [\n {\n intlLabel: {\n id: 'components.FilterOptions.FILTER_TYPES.$eq',\n defaultMessage: 'is',\n },\n value: '$eq',\n },\n {\n intlLabel: {\n id: 'components.FilterOptions.FILTER_TYPES.$ne',\n defaultMessage: 'is not',\n },\n value: '$ne',\n },\n ],\n\n label: {\n id: getTrad(`containers.ListPage.table-headers.reviewWorkflows.assignee.label`),\n defaultMessage: 'Assignee',\n },\n },\n\n name: 'strapi_assignee',\n },\n];\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants-ea0a3cda.mjs","sources":["../../ee/admin/src/content-manager/components/Filter/CustomInputs/ReviewWorkflows/AssigneeFilter.js","../../ee/admin/src/content-manager/components/Filter/CustomInputs/ReviewWorkflows/StageFilter.js","../../ee/admin/src/content-manager/components/Filter/CustomInputs/ReviewWorkflows/constants.js"],"sourcesContent":["import React from 'react';\n\nimport { Combobox, ComboboxOption } from '@strapi/design-system';\nimport PropTypes from 'prop-types';\nimport { useIntl } from 'react-intl';\n\nimport { getDisplayName } from '../../../../../../../../admin/src/content-manager/utils/getDisplayName';\nimport { useAdminUsers } from '../../../../../../../../admin/src/hooks/useAdminUsers';\n\nexport const AssigneeFilter = ({ value, onChange }) => {\n const { formatMessage } = useIntl();\n const { users, isLoading } = useAdminUsers();\n\n return (\n <Combobox\n value={value}\n aria-label={formatMessage({\n id: 'content-manager.components.Filters.usersSelect.label',\n defaultMessage: 'Search and select an user to filter',\n })}\n onChange={onChange}\n loading={isLoading}\n >\n {users.map((user) => {\n return (\n <ComboboxOption key={user.id} value={user.id.toString()}>\n {getDisplayName(user, formatMessage)}\n </ComboboxOption>\n );\n })}\n </Combobox>\n );\n};\n\nAssigneeFilter.propTypes = {\n onChange: PropTypes.func.isRequired,\n value: PropTypes.string,\n};\n\nAssigneeFilter.defaultProps = {\n value: '',\n};\n","import * as React from 'react';\n\nimport { Flex, Loader, SingleSelect, SingleSelectOption, Typography } from '@strapi/design-system';\nimport PropTypes from 'prop-types';\nimport { useIntl } from 'react-intl';\n\nimport { useReviewWorkflows } from '../../../../../pages/SettingsPage/pages/ReviewWorkflows/hooks/useReviewWorkflows';\nimport { getStageColorByHex } from '../../../../../pages/SettingsPage/pages/ReviewWorkflows/utils/colors';\n\nexport const StageFilter = ({ value, onChange, uid }) => {\n const { formatMessage } = useIntl();\n const {\n workflows: [workflow],\n isLoading,\n } = useReviewWorkflows({ filters: { contentTypes: uid } });\n\n return (\n <SingleSelect\n aria-label={formatMessage({\n id: 'content-manager.components.Filters.reviewWorkflows.label',\n defaultMessage: 'Search and select an workflow stage to filter',\n })}\n value={value}\n onChange={onChange}\n loading={isLoading}\n // eslint-disable-next-line react/no-unstable-nested-components\n customizeContent={() => (\n <Flex as=\"span\" justifyContent=\"space-between\" alignItems=\"center\" width=\"100%\">\n <Typography textColor=\"neutral800\" ellipsis>\n {value}\n </Typography>\n {isLoading ? <Loader small style={{ display: 'flex' }} /> : null}\n </Flex>\n )}\n >\n {(workflow?.stages ?? []).map(({ id, color, name }) => {\n const { themeColorName } = getStageColorByHex(color);\n\n return (\n <SingleSelectOption\n key={id}\n startIcon={\n <Flex\n height={2}\n background={color}\n borderColor={themeColorName === 'neutral0' ? 'neutral150' : 'transparent'}\n hasRadius\n shrink={0}\n width={2}\n />\n }\n value={name}\n >\n {name}\n </SingleSelectOption>\n );\n })}\n </SingleSelect>\n );\n};\n\nStageFilter.defaultProps = {\n value: '',\n};\n\nStageFilter.propTypes = {\n onChange: PropTypes.func.isRequired,\n uid: PropTypes.string.isRequired,\n value: PropTypes.string,\n};\n","import { getTrad } from '../../../../../../../../admin/src/content-manager/utils';\n\nimport { AssigneeFilter } from './AssigneeFilter';\nimport { StageFilter } from './StageFilter';\n\nexport const REVIEW_WORKFLOW_FILTERS = [\n {\n fieldSchema: {\n type: 'relation',\n mainField: {\n name: 'name',\n\n schema: {\n type: 'string',\n },\n },\n },\n\n metadatas: {\n customInput: StageFilter,\n\n label: {\n id: getTrad(`containers.ListPage.table-headers.reviewWorkflows.stage`),\n defaultMessage: 'Review stage',\n },\n },\n\n name: 'strapi_stage',\n },\n\n {\n fieldSchema: {\n type: 'relation',\n mainField: {\n name: 'id',\n\n schema: {\n type: 'int',\n },\n },\n },\n\n metadatas: {\n customInput: AssigneeFilter,\n\n customOperators: [\n {\n intlLabel: {\n id: 'components.FilterOptions.FILTER_TYPES.$eq',\n defaultMessage: 'is',\n },\n value: '$eq',\n },\n {\n intlLabel: {\n id: 'components.FilterOptions.FILTER_TYPES.$ne',\n defaultMessage: 'is not',\n },\n value: '$ne',\n },\n ],\n\n label: {\n id: getTrad(`containers.ListPage.table-headers.reviewWorkflows.assignee.label`),\n defaultMessage: 'Assignee',\n },\n },\n\n name: 'strapi_assignee',\n },\n];\n"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
4
  const helperPlugin = require("@strapi/helper-plugin");
5
- const index = require("./index-6492abdf.js");
5
+ const index = require("./index-c7f06c75.js");
6
6
  const designSystem = require("@strapi/design-system");
7
7
  const reactIntl = require("react-intl");
8
8
  const reactQuery = require("react-query");
@@ -11,11 +11,11 @@ require("lodash/cloneDeep");
11
11
  require("lodash/get");
12
12
  require("lodash/omit");
13
13
  require("lodash/isNaN");
14
- require("./schema-08e285a2.js");
14
+ require("./schema-672225f4.js");
15
15
  require("lodash/merge");
16
16
  require("lodash/set");
17
17
  const useAdminUsers = require("./useAdminUsers-05d6b26a.js");
18
- const AuthenticatedApp = require("./AuthenticatedApp-732676f8.js");
18
+ const AuthenticatedApp = require("./AuthenticatedApp-96716173.js");
19
19
  const constants = require("./constants-d5d67ca8.js");
20
20
  const React = require("react");
21
21
  const useLicenseLimits = require("./useLicenseLimits-81ef3cce.js");
@@ -39,7 +39,7 @@ require("lodash/upperFirst");
39
39
  require("@strapi/design-system/v2");
40
40
  require("react-dnd-html5-backend");
41
41
  require("styled-components");
42
- require("./index-c195d4f7.js");
42
+ require("./index-83e78ac3.js");
43
43
  require("react-dom/client");
44
44
  require("invariant");
45
45
  require("lodash/isFunction");
@@ -415,4 +415,4 @@ function InformationBoxEE() {
415
415
  ] });
416
416
  }
417
417
  exports.InformationBoxEE = InformationBoxEE;
418
- //# sourceMappingURL=index-e4fb2fc4.js.map
418
+ //# sourceMappingURL=index-02f58272.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-e4fb2fc4.js","sources":["../../ee/admin/src/content-manager/pages/EditView/InformationBox/components/AssigneeSelect/AssigneeSelect.js","../../ee/admin/src/pages/SettingsPage/pages/ReviewWorkflows/hooks/useReviewWorkflowsStages.js","../../ee/admin/src/content-manager/pages/EditView/InformationBox/components/StageSelect/StageSelect.js","../../ee/admin/src/content-manager/pages/EditView/InformationBox/InformationBoxEE.js"],"sourcesContent":["import * as React from 'react';\n\nimport { Combobox, ComboboxOption, Field, Flex } from '@strapi/design-system';\nimport {\n useCMEditViewDataManager,\n useAPIErrorHandler,\n useFetchClient,\n useNotification,\n useRBAC,\n} from '@strapi/helper-plugin';\nimport { useIntl } from 'react-intl';\nimport { useMutation } from 'react-query';\nimport { useSelector } from 'react-redux';\n\nimport { getDisplayName } from '../../../../../../../../../admin/src/content-manager/utils';\nimport { useAdminUsers } from '../../../../../../../../../admin/src/hooks/useAdminUsers';\nimport { selectAdminPermissions } from '../../../../../../../../../admin/src/selectors';\nimport { ASSIGNEE_ATTRIBUTE_NAME } from '../../constants';\n\nexport function AssigneeSelect() {\n const {\n initialData,\n layout: { uid },\n isSingleType,\n onChange,\n } = useCMEditViewDataManager();\n const permissions = useSelector(selectAdminPermissions);\n const { formatMessage } = useIntl();\n const { formatAPIError } = useAPIErrorHandler();\n const toggleNotification = useNotification();\n const { put } = useFetchClient();\n const {\n allowedActions: { canReadUsers },\n isLoading: isLoadingPermissions,\n } = useRBAC({\n readUsers: permissions.settings.users.read,\n });\n const { users, isLoading, isError } = useAdminUsers(\n {},\n {\n enabled: !isLoadingPermissions && canReadUsers,\n }\n );\n\n const currentAssignee = initialData?.[ASSIGNEE_ATTRIBUTE_NAME] ?? null;\n\n const handleChange = async ({ value: assigneeId }) => {\n mutation.mutate({\n entityId: initialData.id,\n assigneeId: parseInt(assigneeId, 10),\n uid,\n });\n };\n\n const mutation = useMutation(\n async ({ entityId, assigneeId, uid }) => {\n const typeSlug = isSingleType ? 'single-types' : 'collection-types';\n\n const {\n data: { data: createdEntity },\n } = await put(`/admin/content-manager/${typeSlug}/${uid}/${entityId}/assignee`, {\n data: { id: assigneeId },\n });\n\n // initialData and modifiedData have to stay in sync, otherwise the entity would be flagged\n // as modified, which is what the boolean flag is for\n onChange(\n {\n target: { name: ASSIGNEE_ATTRIBUTE_NAME, value: createdEntity[ASSIGNEE_ATTRIBUTE_NAME] },\n },\n true\n );\n\n return createdEntity;\n },\n {\n onSuccess() {\n toggleNotification({\n type: 'success',\n message: {\n id: 'content-manager.reviewWorkflows.assignee.notification.saved',\n defaultMessage: 'Assignee updated',\n },\n });\n },\n }\n );\n\n return (\n <Field name={ASSIGNEE_ATTRIBUTE_NAME} id={ASSIGNEE_ATTRIBUTE_NAME}>\n <Flex direction=\"column\" gap={2} alignItems=\"stretch\">\n <Combobox\n clearLabel={formatMessage({\n id: 'content-manager.reviewWorkflows.assignee.clear',\n defaultMessage: 'Clear assignee',\n })}\n error={\n (isError &&\n canReadUsers &&\n formatMessage({\n id: 'content-manager.reviewWorkflows.assignee.error',\n defaultMessage: 'An error occurred while fetching users',\n })) ||\n (mutation.error && formatAPIError(mutation.error))\n }\n disabled={!isLoadingPermissions && !isLoading && users.length === 0}\n name={ASSIGNEE_ATTRIBUTE_NAME}\n id={ASSIGNEE_ATTRIBUTE_NAME}\n value={currentAssignee ? currentAssignee.id : null}\n onChange={(value) => handleChange({ value })}\n onClear={() => handleChange({ value: null })}\n placeholder={formatMessage({\n id: 'content-manager.reviewWorkflows.assignee.placeholder',\n defaultMessage: 'Select …',\n })}\n label={formatMessage({\n id: 'content-manager.reviewWorkflows.assignee.label',\n defaultMessage: 'Assignee',\n })}\n loading={isLoading || isLoadingPermissions || mutation.isLoading}\n >\n {users.map((user) => {\n return (\n <ComboboxOption\n key={user.id}\n value={user.id}\n textValue={getDisplayName(user, formatMessage)}\n >\n {getDisplayName(user, formatMessage)}\n </ComboboxOption>\n );\n })}\n </Combobox>\n </Flex>\n </Field>\n );\n}\n","import * as React from 'react';\n\nimport { useFetchClient } from '@strapi/helper-plugin';\nimport { useQuery } from 'react-query';\n\nexport function useReviewWorkflowsStages({ id, layout } = {}, queryOptions = {}) {\n const { kind, uid } = layout;\n const slug = kind === 'collectionType' ? 'collection-types' : 'single-types';\n\n const { get } = useFetchClient();\n\n const { data, isLoading, refetch } = useQuery(\n ['content-manager', slug, layout.uid, id, 'stages'],\n async () => {\n const { data } = await get(`/admin/content-manager/${slug}/${uid}/${id}/stages`);\n\n return data;\n },\n queryOptions\n );\n\n // these return values need to be memoized, because the default value\n // would lead to infinite rendering loops when used in a dependency array\n // on an effect\n const meta = React.useMemo(() => data?.meta ?? {}, [data?.meta]);\n const stages = React.useMemo(() => data?.data ?? [], [data?.data]);\n\n return {\n // meta contains e.g. the total of all workflows. we can not use\n // the pagination object here, because the list is not paginated.\n meta,\n stages,\n isLoading,\n refetch,\n };\n}\n","import * as React from 'react';\n\nimport {\n SingleSelect,\n SingleSelectOption,\n Field,\n FieldError,\n FieldHint,\n Flex,\n Loader,\n Typography,\n} from '@strapi/design-system';\nimport {\n useCMEditViewDataManager,\n useAPIErrorHandler,\n useFetchClient,\n useNotification,\n} from '@strapi/helper-plugin';\nimport { useIntl } from 'react-intl';\nimport { useMutation } from 'react-query';\n\nimport { useLicenseLimits } from '../../../../../../hooks/useLicenseLimits';\nimport * as LimitsModal from '../../../../../../pages/SettingsPage/pages/ReviewWorkflows/components/LimitsModal';\nimport {\n CHARGEBEE_STAGES_PER_WORKFLOW_ENTITLEMENT_NAME,\n CHARGEBEE_WORKFLOW_ENTITLEMENT_NAME,\n} from '../../../../../../pages/SettingsPage/pages/ReviewWorkflows/constants';\nimport { useReviewWorkflowsStages } from '../../../../../../pages/SettingsPage/pages/ReviewWorkflows/hooks/useReviewWorkflowsStages';\nimport { getStageColorByHex } from '../../../../../../pages/SettingsPage/pages/ReviewWorkflows/utils/colors';\nimport { STAGE_ATTRIBUTE_NAME } from '../../constants';\n\nexport function StageSelect() {\n const { initialData, layout: contentType, isSingleType, onChange } = useCMEditViewDataManager();\n const { put } = useFetchClient();\n const { formatMessage } = useIntl();\n const { formatAPIError } = useAPIErrorHandler();\n const toggleNotification = useNotification();\n const { meta, stages, isLoading, refetch } = useReviewWorkflowsStages(\n { id: initialData.id, layout: contentType },\n {\n enabled: !!initialData?.id,\n }\n );\n const { getFeature } = useLicenseLimits();\n const [showLimitModal, setShowLimitModal] = React.useState(false);\n\n const limits = getFeature('review-workflows');\n // it is possible to rely on initialData here, because it always will\n // be updated at the same time when modifiedData is updated, otherwise\n // the entity is flagged as modified\n const activeWorkflowStage = initialData?.[STAGE_ATTRIBUTE_NAME] ?? null;\n\n const mutation = useMutation(\n async ({ entityId, stageId, uid }) => {\n const typeSlug = isSingleType ? 'single-types' : 'collection-types';\n\n const {\n data: { data: createdEntity },\n } = await put(`/admin/content-manager/${typeSlug}/${uid}/${entityId}/stage`, {\n data: { id: stageId },\n });\n\n // initialData and modifiedData have to stay in sync, otherwise the entity would be flagged\n // as modified, which is what the boolean flag is for\n onChange(\n { target: { name: STAGE_ATTRIBUTE_NAME, value: createdEntity[STAGE_ATTRIBUTE_NAME] } },\n true\n );\n\n await refetch();\n\n return createdEntity;\n },\n {\n onSuccess() {\n toggleNotification({\n type: 'success',\n message: {\n id: 'content-manager.reviewWorkflows.stage.notification.saved',\n defaultMessage: 'Review stage updated',\n },\n });\n },\n }\n );\n\n const handleChange = async ({ value: stageId }) => {\n try {\n /**\n * If the current license has a limit:\n * check if the total count of workflows exceeds that limit and display\n * the limits modal.\n *\n * If the current license does not have a limit (e.g. offline license):\n * do nothing (for now).\n *\n */\n\n if (\n limits?.[CHARGEBEE_WORKFLOW_ENTITLEMENT_NAME] &&\n parseInt(limits[CHARGEBEE_WORKFLOW_ENTITLEMENT_NAME], 10) < meta.workflowCount\n ) {\n setShowLimitModal('workflow');\n\n /**\n * If the current license has a limit:\n * check if the total count of stages exceeds that limit and display\n * the limits modal.\n *\n * If the current license does not have a limit (e.g. offline license):\n * do nothing (for now).\n *\n */\n } else if (\n limits?.[CHARGEBEE_STAGES_PER_WORKFLOW_ENTITLEMENT_NAME] &&\n parseInt(limits[CHARGEBEE_STAGES_PER_WORKFLOW_ENTITLEMENT_NAME], 10) < stages.length\n ) {\n setShowLimitModal('stage');\n } else {\n mutation.mutateAsync({\n entityId: initialData.id,\n stageId,\n uid: contentType.uid,\n });\n }\n } catch (error) {\n // react-query@v3: the error doesn't have to be handled here\n // see: https://github.com/TanStack/query/issues/121\n }\n };\n\n const { themeColorName } = activeWorkflowStage?.color\n ? getStageColorByHex(activeWorkflowStage?.color)\n : {};\n\n return (\n <>\n <Field\n hint={\n stages.length === 0 &&\n formatMessage({\n id: 'content-manager.reviewWorkflows.stages.no-transition',\n defaultMessage: 'You don’t have the permission to update this stage.',\n })\n }\n name={STAGE_ATTRIBUTE_NAME}\n id={STAGE_ATTRIBUTE_NAME}\n >\n <Flex direction=\"column\" gap={2} alignItems=\"stretch\">\n <SingleSelect\n disabled={stages.length === 0}\n error={(mutation.error && formatAPIError(mutation.error)) || null}\n name={STAGE_ATTRIBUTE_NAME}\n id={STAGE_ATTRIBUTE_NAME}\n value={activeWorkflowStage?.id}\n onChange={(value) => handleChange({ value })}\n label={formatMessage({\n id: 'content-manager.reviewWorkflows.stage.label',\n defaultMessage: 'Review stage',\n })}\n startIcon={\n activeWorkflowStage && (\n <Flex\n as=\"span\"\n height={2}\n background={activeWorkflowStage?.color}\n borderColor={themeColorName === 'neutral0' ? 'neutral150' : 'transparent'}\n hasRadius\n shrink={0}\n width={2}\n marginRight=\"-3px\"\n />\n )\n }\n // eslint-disable-next-line react/no-unstable-nested-components\n customizeContent={() => (\n <Flex as=\"span\" justifyContent=\"space-between\" alignItems=\"center\" width=\"100%\">\n <Typography textColor=\"neutral800\" ellipsis>\n {activeWorkflowStage?.name ?? ''}\n </Typography>\n {isLoading ? (\n <Loader small style={{ display: 'flex' }} data-testid=\"loader\" />\n ) : null}\n </Flex>\n )}\n >\n {stages.map(({ id, color, name }) => {\n const { themeColorName } = getStageColorByHex(color);\n\n return (\n <SingleSelectOption\n key={id}\n startIcon={\n <Flex\n height={2}\n background={color}\n borderColor={themeColorName === 'neutral0' ? 'neutral150' : 'transparent'}\n hasRadius\n shrink={0}\n width={2}\n />\n }\n value={id}\n textValue={name}\n >\n {name}\n </SingleSelectOption>\n );\n })}\n </SingleSelect>\n <FieldHint />\n <FieldError />\n </Flex>\n </Field>\n\n <LimitsModal.Root\n isOpen={showLimitModal === 'workflow'}\n onClose={() => setShowLimitModal(false)}\n >\n <LimitsModal.Title>\n {formatMessage({\n id: 'content-manager.reviewWorkflows.workflows.limit.title',\n defaultMessage: 'You’ve reached the limit of workflows in your plan',\n })}\n </LimitsModal.Title>\n\n <LimitsModal.Body>\n {formatMessage({\n id: 'content-manager.reviewWorkflows.workflows.limit.body',\n defaultMessage: 'Delete a workflow or contact Sales to enable more workflows.',\n })}\n </LimitsModal.Body>\n </LimitsModal.Root>\n\n <LimitsModal.Root\n isOpen={showLimitModal === 'stage'}\n onClose={() => setShowLimitModal(false)}\n >\n <LimitsModal.Title>\n {formatMessage({\n id: 'content-manager.reviewWorkflows.stages.limit.title',\n defaultMessage: 'You have reached the limit of stages for this workflow in your plan',\n })}\n </LimitsModal.Title>\n\n <LimitsModal.Body>\n {formatMessage({\n id: 'content-manager.reviewWorkflows.stages.limit.body',\n defaultMessage: 'Try deleting some stages or contact Sales to enable more stages.',\n })}\n </LimitsModal.Body>\n </LimitsModal.Root>\n </>\n );\n}\n","import React from 'react';\n\nimport { useCMEditViewDataManager } from '@strapi/helper-plugin';\n\nimport { Information } from '../../../../../../../admin/src/content-manager/pages/EditView/Information';\n\nimport { AssigneeSelect } from './components/AssigneeSelect';\nimport { StageSelect } from './components/StageSelect';\n\nexport function InformationBoxEE() {\n const {\n isCreatingEntry,\n layout: { options },\n } = useCMEditViewDataManager();\n\n const hasReviewWorkflowsEnabled = options?.reviewWorkflows ?? false;\n\n return (\n <Information.Root>\n <Information.Title />\n {hasReviewWorkflowsEnabled && !isCreatingEntry && (\n <>\n <StageSelect />\n <AssigneeSelect />\n </>\n )}\n <Information.Body />\n </Information.Root>\n );\n}\n"],"names":["useCMEditViewDataManager","useSelector","selectAdminPermissions","useIntl","useAPIErrorHandler","useNotification","useFetchClient","useRBAC","useAdminUsers","ASSIGNEE_ATTRIBUTE_NAME","useMutation","uid","jsx","Field","Flex","Combobox","ComboboxOption","getDisplayName","useQuery","data","React","useLicenseLimits","STAGE_ATTRIBUTE_NAME","CHARGEBEE_WORKFLOW_ENTITLEMENT_NAME","CHARGEBEE_STAGES_PER_WORKFLOW_ENTITLEMENT_NAME","getStageColorByHex","jsxs","Fragment","SingleSelect","Typography","Loader","themeColorName","SingleSelectOption","FieldHint","FieldError","LimitsModal.Root","LimitsModal.Title","LimitsModal.Body","Information"],"mappings":"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"}
1
+ {"version":3,"file":"index-02f58272.js","sources":["../../ee/admin/src/content-manager/pages/EditView/InformationBox/components/AssigneeSelect/AssigneeSelect.js","../../ee/admin/src/pages/SettingsPage/pages/ReviewWorkflows/hooks/useReviewWorkflowsStages.js","../../ee/admin/src/content-manager/pages/EditView/InformationBox/components/StageSelect/StageSelect.js","../../ee/admin/src/content-manager/pages/EditView/InformationBox/InformationBoxEE.js"],"sourcesContent":["import * as React from 'react';\n\nimport { Combobox, ComboboxOption, Field, Flex } from '@strapi/design-system';\nimport {\n useCMEditViewDataManager,\n useAPIErrorHandler,\n useFetchClient,\n useNotification,\n useRBAC,\n} from '@strapi/helper-plugin';\nimport { useIntl } from 'react-intl';\nimport { useMutation } from 'react-query';\nimport { useSelector } from 'react-redux';\n\nimport { getDisplayName } from '../../../../../../../../../admin/src/content-manager/utils';\nimport { useAdminUsers } from '../../../../../../../../../admin/src/hooks/useAdminUsers';\nimport { selectAdminPermissions } from '../../../../../../../../../admin/src/selectors';\nimport { ASSIGNEE_ATTRIBUTE_NAME } from '../../constants';\n\nexport function AssigneeSelect() {\n const {\n initialData,\n layout: { uid },\n isSingleType,\n onChange,\n } = useCMEditViewDataManager();\n const permissions = useSelector(selectAdminPermissions);\n const { formatMessage } = useIntl();\n const { formatAPIError } = useAPIErrorHandler();\n const toggleNotification = useNotification();\n const { put } = useFetchClient();\n const {\n allowedActions: { canReadUsers },\n isLoading: isLoadingPermissions,\n } = useRBAC({\n readUsers: permissions.settings.users.read,\n });\n const { users, isLoading, isError } = useAdminUsers(\n {},\n {\n enabled: !isLoadingPermissions && canReadUsers,\n }\n );\n\n const currentAssignee = initialData?.[ASSIGNEE_ATTRIBUTE_NAME] ?? null;\n\n const handleChange = async ({ value: assigneeId }) => {\n mutation.mutate({\n entityId: initialData.id,\n assigneeId: parseInt(assigneeId, 10),\n uid,\n });\n };\n\n const mutation = useMutation(\n async ({ entityId, assigneeId, uid }) => {\n const typeSlug = isSingleType ? 'single-types' : 'collection-types';\n\n const {\n data: { data: createdEntity },\n } = await put(`/admin/content-manager/${typeSlug}/${uid}/${entityId}/assignee`, {\n data: { id: assigneeId },\n });\n\n // initialData and modifiedData have to stay in sync, otherwise the entity would be flagged\n // as modified, which is what the boolean flag is for\n onChange(\n {\n target: { name: ASSIGNEE_ATTRIBUTE_NAME, value: createdEntity[ASSIGNEE_ATTRIBUTE_NAME] },\n },\n true\n );\n\n return createdEntity;\n },\n {\n onSuccess() {\n toggleNotification({\n type: 'success',\n message: {\n id: 'content-manager.reviewWorkflows.assignee.notification.saved',\n defaultMessage: 'Assignee updated',\n },\n });\n },\n }\n );\n\n return (\n <Field name={ASSIGNEE_ATTRIBUTE_NAME} id={ASSIGNEE_ATTRIBUTE_NAME}>\n <Flex direction=\"column\" gap={2} alignItems=\"stretch\">\n <Combobox\n clearLabel={formatMessage({\n id: 'content-manager.reviewWorkflows.assignee.clear',\n defaultMessage: 'Clear assignee',\n })}\n error={\n (isError &&\n canReadUsers &&\n formatMessage({\n id: 'content-manager.reviewWorkflows.assignee.error',\n defaultMessage: 'An error occurred while fetching users',\n })) ||\n (mutation.error && formatAPIError(mutation.error))\n }\n disabled={!isLoadingPermissions && !isLoading && users.length === 0}\n name={ASSIGNEE_ATTRIBUTE_NAME}\n id={ASSIGNEE_ATTRIBUTE_NAME}\n value={currentAssignee ? currentAssignee.id : null}\n onChange={(value) => handleChange({ value })}\n onClear={() => handleChange({ value: null })}\n placeholder={formatMessage({\n id: 'content-manager.reviewWorkflows.assignee.placeholder',\n defaultMessage: 'Select …',\n })}\n label={formatMessage({\n id: 'content-manager.reviewWorkflows.assignee.label',\n defaultMessage: 'Assignee',\n })}\n loading={isLoading || isLoadingPermissions || mutation.isLoading}\n >\n {users.map((user) => {\n return (\n <ComboboxOption\n key={user.id}\n value={user.id}\n textValue={getDisplayName(user, formatMessage)}\n >\n {getDisplayName(user, formatMessage)}\n </ComboboxOption>\n );\n })}\n </Combobox>\n </Flex>\n </Field>\n );\n}\n","import * as React from 'react';\n\nimport { useFetchClient } from '@strapi/helper-plugin';\nimport { useQuery } from 'react-query';\n\nexport function useReviewWorkflowsStages({ id, layout } = {}, queryOptions = {}) {\n const { kind, uid } = layout;\n const slug = kind === 'collectionType' ? 'collection-types' : 'single-types';\n\n const { get } = useFetchClient();\n\n const { data, isLoading, refetch } = useQuery(\n ['content-manager', slug, layout.uid, id, 'stages'],\n async () => {\n const { data } = await get(`/admin/content-manager/${slug}/${uid}/${id}/stages`);\n\n return data;\n },\n queryOptions\n );\n\n // these return values need to be memoized, because the default value\n // would lead to infinite rendering loops when used in a dependency array\n // on an effect\n const meta = React.useMemo(() => data?.meta ?? {}, [data?.meta]);\n const stages = React.useMemo(() => data?.data ?? [], [data?.data]);\n\n return {\n // meta contains e.g. the total of all workflows. we can not use\n // the pagination object here, because the list is not paginated.\n meta,\n stages,\n isLoading,\n refetch,\n };\n}\n","import * as React from 'react';\n\nimport {\n SingleSelect,\n SingleSelectOption,\n Field,\n FieldError,\n FieldHint,\n Flex,\n Loader,\n Typography,\n} from '@strapi/design-system';\nimport {\n useCMEditViewDataManager,\n useAPIErrorHandler,\n useFetchClient,\n useNotification,\n} from '@strapi/helper-plugin';\nimport { useIntl } from 'react-intl';\nimport { useMutation } from 'react-query';\n\nimport { useLicenseLimits } from '../../../../../../hooks/useLicenseLimits';\nimport * as LimitsModal from '../../../../../../pages/SettingsPage/pages/ReviewWorkflows/components/LimitsModal';\nimport {\n CHARGEBEE_STAGES_PER_WORKFLOW_ENTITLEMENT_NAME,\n CHARGEBEE_WORKFLOW_ENTITLEMENT_NAME,\n} from '../../../../../../pages/SettingsPage/pages/ReviewWorkflows/constants';\nimport { useReviewWorkflowsStages } from '../../../../../../pages/SettingsPage/pages/ReviewWorkflows/hooks/useReviewWorkflowsStages';\nimport { getStageColorByHex } from '../../../../../../pages/SettingsPage/pages/ReviewWorkflows/utils/colors';\nimport { STAGE_ATTRIBUTE_NAME } from '../../constants';\n\nexport function StageSelect() {\n const { initialData, layout: contentType, isSingleType, onChange } = useCMEditViewDataManager();\n const { put } = useFetchClient();\n const { formatMessage } = useIntl();\n const { formatAPIError } = useAPIErrorHandler();\n const toggleNotification = useNotification();\n const { meta, stages, isLoading, refetch } = useReviewWorkflowsStages(\n { id: initialData.id, layout: contentType },\n {\n enabled: !!initialData?.id,\n }\n );\n const { getFeature } = useLicenseLimits();\n const [showLimitModal, setShowLimitModal] = React.useState(false);\n\n const limits = getFeature('review-workflows');\n // it is possible to rely on initialData here, because it always will\n // be updated at the same time when modifiedData is updated, otherwise\n // the entity is flagged as modified\n const activeWorkflowStage = initialData?.[STAGE_ATTRIBUTE_NAME] ?? null;\n\n const mutation = useMutation(\n async ({ entityId, stageId, uid }) => {\n const typeSlug = isSingleType ? 'single-types' : 'collection-types';\n\n const {\n data: { data: createdEntity },\n } = await put(`/admin/content-manager/${typeSlug}/${uid}/${entityId}/stage`, {\n data: { id: stageId },\n });\n\n // initialData and modifiedData have to stay in sync, otherwise the entity would be flagged\n // as modified, which is what the boolean flag is for\n onChange(\n { target: { name: STAGE_ATTRIBUTE_NAME, value: createdEntity[STAGE_ATTRIBUTE_NAME] } },\n true\n );\n\n await refetch();\n\n return createdEntity;\n },\n {\n onSuccess() {\n toggleNotification({\n type: 'success',\n message: {\n id: 'content-manager.reviewWorkflows.stage.notification.saved',\n defaultMessage: 'Review stage updated',\n },\n });\n },\n }\n );\n\n const handleChange = async ({ value: stageId }) => {\n try {\n /**\n * If the current license has a limit:\n * check if the total count of workflows exceeds that limit and display\n * the limits modal.\n *\n * If the current license does not have a limit (e.g. offline license):\n * do nothing (for now).\n *\n */\n\n if (\n limits?.[CHARGEBEE_WORKFLOW_ENTITLEMENT_NAME] &&\n parseInt(limits[CHARGEBEE_WORKFLOW_ENTITLEMENT_NAME], 10) < meta.workflowCount\n ) {\n setShowLimitModal('workflow');\n\n /**\n * If the current license has a limit:\n * check if the total count of stages exceeds that limit and display\n * the limits modal.\n *\n * If the current license does not have a limit (e.g. offline license):\n * do nothing (for now).\n *\n */\n } else if (\n limits?.[CHARGEBEE_STAGES_PER_WORKFLOW_ENTITLEMENT_NAME] &&\n parseInt(limits[CHARGEBEE_STAGES_PER_WORKFLOW_ENTITLEMENT_NAME], 10) < stages.length\n ) {\n setShowLimitModal('stage');\n } else {\n mutation.mutateAsync({\n entityId: initialData.id,\n stageId,\n uid: contentType.uid,\n });\n }\n } catch (error) {\n // react-query@v3: the error doesn't have to be handled here\n // see: https://github.com/TanStack/query/issues/121\n }\n };\n\n const { themeColorName } = activeWorkflowStage?.color\n ? getStageColorByHex(activeWorkflowStage?.color)\n : {};\n\n return (\n <>\n <Field\n hint={\n stages.length === 0 &&\n formatMessage({\n id: 'content-manager.reviewWorkflows.stages.no-transition',\n defaultMessage: 'You don’t have the permission to update this stage.',\n })\n }\n name={STAGE_ATTRIBUTE_NAME}\n id={STAGE_ATTRIBUTE_NAME}\n >\n <Flex direction=\"column\" gap={2} alignItems=\"stretch\">\n <SingleSelect\n disabled={stages.length === 0}\n error={(mutation.error && formatAPIError(mutation.error)) || null}\n name={STAGE_ATTRIBUTE_NAME}\n id={STAGE_ATTRIBUTE_NAME}\n value={activeWorkflowStage?.id}\n onChange={(value) => handleChange({ value })}\n label={formatMessage({\n id: 'content-manager.reviewWorkflows.stage.label',\n defaultMessage: 'Review stage',\n })}\n startIcon={\n activeWorkflowStage && (\n <Flex\n as=\"span\"\n height={2}\n background={activeWorkflowStage?.color}\n borderColor={themeColorName === 'neutral0' ? 'neutral150' : 'transparent'}\n hasRadius\n shrink={0}\n width={2}\n marginRight=\"-3px\"\n />\n )\n }\n // eslint-disable-next-line react/no-unstable-nested-components\n customizeContent={() => (\n <Flex as=\"span\" justifyContent=\"space-between\" alignItems=\"center\" width=\"100%\">\n <Typography textColor=\"neutral800\" ellipsis>\n {activeWorkflowStage?.name ?? ''}\n </Typography>\n {isLoading ? (\n <Loader small style={{ display: 'flex' }} data-testid=\"loader\" />\n ) : null}\n </Flex>\n )}\n >\n {stages.map(({ id, color, name }) => {\n const { themeColorName } = getStageColorByHex(color);\n\n return (\n <SingleSelectOption\n key={id}\n startIcon={\n <Flex\n height={2}\n background={color}\n borderColor={themeColorName === 'neutral0' ? 'neutral150' : 'transparent'}\n hasRadius\n shrink={0}\n width={2}\n />\n }\n value={id}\n textValue={name}\n >\n {name}\n </SingleSelectOption>\n );\n })}\n </SingleSelect>\n <FieldHint />\n <FieldError />\n </Flex>\n </Field>\n\n <LimitsModal.Root\n isOpen={showLimitModal === 'workflow'}\n onClose={() => setShowLimitModal(false)}\n >\n <LimitsModal.Title>\n {formatMessage({\n id: 'content-manager.reviewWorkflows.workflows.limit.title',\n defaultMessage: 'You’ve reached the limit of workflows in your plan',\n })}\n </LimitsModal.Title>\n\n <LimitsModal.Body>\n {formatMessage({\n id: 'content-manager.reviewWorkflows.workflows.limit.body',\n defaultMessage: 'Delete a workflow or contact Sales to enable more workflows.',\n })}\n </LimitsModal.Body>\n </LimitsModal.Root>\n\n <LimitsModal.Root\n isOpen={showLimitModal === 'stage'}\n onClose={() => setShowLimitModal(false)}\n >\n <LimitsModal.Title>\n {formatMessage({\n id: 'content-manager.reviewWorkflows.stages.limit.title',\n defaultMessage: 'You have reached the limit of stages for this workflow in your plan',\n })}\n </LimitsModal.Title>\n\n <LimitsModal.Body>\n {formatMessage({\n id: 'content-manager.reviewWorkflows.stages.limit.body',\n defaultMessage: 'Try deleting some stages or contact Sales to enable more stages.',\n })}\n </LimitsModal.Body>\n </LimitsModal.Root>\n </>\n );\n}\n","import React from 'react';\n\nimport { useCMEditViewDataManager } from '@strapi/helper-plugin';\n\nimport { Information } from '../../../../../../../admin/src/content-manager/pages/EditView/Information';\n\nimport { AssigneeSelect } from './components/AssigneeSelect';\nimport { StageSelect } from './components/StageSelect';\n\nexport function InformationBoxEE() {\n const {\n isCreatingEntry,\n layout: { options },\n } = useCMEditViewDataManager();\n\n const hasReviewWorkflowsEnabled = options?.reviewWorkflows ?? false;\n\n return (\n <Information.Root>\n <Information.Title />\n {hasReviewWorkflowsEnabled && !isCreatingEntry && (\n <>\n <StageSelect />\n <AssigneeSelect />\n </>\n )}\n <Information.Body />\n </Information.Root>\n );\n}\n"],"names":["useCMEditViewDataManager","useSelector","selectAdminPermissions","useIntl","useAPIErrorHandler","useNotification","useFetchClient","useRBAC","useAdminUsers","ASSIGNEE_ATTRIBUTE_NAME","useMutation","uid","jsx","Field","Flex","Combobox","ComboboxOption","getDisplayName","useQuery","data","React","useLicenseLimits","STAGE_ATTRIBUTE_NAME","CHARGEBEE_WORKFLOW_ENTITLEMENT_NAME","CHARGEBEE_STAGES_PER_WORKFLOW_ENTITLEMENT_NAME","getStageColorByHex","jsxs","Fragment","SingleSelect","Typography","Loader","themeColorName","SingleSelectOption","FieldHint","FieldError","LimitsModal.Root","LimitsModal.Title","LimitsModal.Body","Information"],"mappings":"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"}
@@ -3,8 +3,8 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
4
  const PropTypes = require("prop-types");
5
5
  const reactIntl = require("react-intl");
6
- const index$1 = require("./index-c195d4f7.js");
7
- const index = require("./index-cb752a75.js");
6
+ const index$1 = require("./index-83e78ac3.js");
7
+ const index = require("./index-6298ffb7.js");
8
8
  require("@strapi/helper-plugin");
9
9
  require("react-dom/client");
10
10
  require("@strapi/design-system");
@@ -59,4 +59,4 @@ MagicLinkEE.propTypes = {
59
59
  registrationToken: PropTypes__default.default.string
60
60
  };
61
61
  exports.MagicLinkEE = MagicLinkEE;
62
- //# sourceMappingURL=index-e8a9d281.js.map
62
+ //# sourceMappingURL=index-04538774.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-e8a9d281.js","sources":["../../ee/admin/src/pages/SettingsPage/pages/Users/components/MagicLink/index.js"],"sourcesContent":["import React from 'react';\n\nimport PropTypes from 'prop-types';\nimport { useIntl } from 'react-intl';\n\nimport { getBasename } from '../../../../../../../../../admin/src/core/utils/basename';\nimport MagicLinkWrapper from '../../../../../../../../../admin/src/pages/SettingsPage/pages/Users/components/MagicLink/MagicLinkWrapper';\n\n// FIXME replace with parts compo when ready\nexport const MagicLinkEE = ({ registrationToken }) => {\n const { formatMessage } = useIntl();\n\n if (registrationToken) {\n return (\n <MagicLinkWrapper\n target={`${\n window.location.origin\n }${getBasename()}/auth/register?registrationToken=${registrationToken}`}\n >\n {formatMessage({\n id: 'app.components.Users.MagicLink.connect',\n defaultMessage: 'Copy and share this link to give access to this user',\n })}\n </MagicLinkWrapper>\n );\n }\n\n return (\n <MagicLinkWrapper target={`${window.location.origin}${getBasename()}auth/login`}>\n {formatMessage({\n id: 'app.components.Users.MagicLink.connect.sso',\n defaultMessage:\n 'Send this link to the user, the first login can be made via a SSO provider.',\n })}\n </MagicLinkWrapper>\n );\n};\n\nMagicLinkEE.defaultProps = {\n registrationToken: '',\n};\n\nMagicLinkEE.propTypes = {\n registrationToken: PropTypes.string,\n};\n"],"names":["useIntl","jsx","MagicLinkWrapper","getBasename","PropTypes"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASO,MAAM,cAAc,CAAC,EAAE,wBAAwB;AAC9C,QAAA,EAAE,kBAAkBA,UAAAA;AAE1B,MAAI,mBAAmB;AAEnB,WAAAC,2BAAA;AAAA,MAACC,MAAA;AAAA,MAAA;AAAA,QACC,QAAQ,GACN,OAAO,SAAS,MAClB,GAAGC,oBAAa,CAAA,oCAAoC,iBAAiB;AAAA,QAEpE,UAAc,cAAA;AAAA,UACb,IAAI;AAAA,UACJ,gBAAgB;AAAA,QAAA,CACjB;AAAA,MAAA;AAAA,IAAA;AAAA,EAGP;AAGE,SAAAF,2BAAA,IAACC,MAAiB,kBAAA,EAAA,QAAQ,GAAG,OAAO,SAAS,MAAM,GAAGC,QAAAA,YAAa,CAAA,cAChE,UAAc,cAAA;AAAA,IACb,IAAI;AAAA,IACJ,gBACE;AAAA,EACH,CAAA,EACH,CAAA;AAEJ;AAEA,YAAY,eAAe;AAAA,EACzB,mBAAmB;AACrB;AAEA,YAAY,YAAY;AAAA,EACtB,mBAAmBC,mBAAU,QAAA;AAC/B;;"}
1
+ {"version":3,"file":"index-04538774.js","sources":["../../ee/admin/src/pages/SettingsPage/pages/Users/components/MagicLink/index.js"],"sourcesContent":["import React from 'react';\n\nimport PropTypes from 'prop-types';\nimport { useIntl } from 'react-intl';\n\nimport { getBasename } from '../../../../../../../../../admin/src/core/utils/basename';\nimport MagicLinkWrapper from '../../../../../../../../../admin/src/pages/SettingsPage/pages/Users/components/MagicLink/MagicLinkWrapper';\n\n// FIXME replace with parts compo when ready\nexport const MagicLinkEE = ({ registrationToken }) => {\n const { formatMessage } = useIntl();\n\n if (registrationToken) {\n return (\n <MagicLinkWrapper\n target={`${\n window.location.origin\n }${getBasename()}/auth/register?registrationToken=${registrationToken}`}\n >\n {formatMessage({\n id: 'app.components.Users.MagicLink.connect',\n defaultMessage: 'Copy and share this link to give access to this user',\n })}\n </MagicLinkWrapper>\n );\n }\n\n return (\n <MagicLinkWrapper target={`${window.location.origin}${getBasename()}auth/login`}>\n {formatMessage({\n id: 'app.components.Users.MagicLink.connect.sso',\n defaultMessage:\n 'Send this link to the user, the first login can be made via a SSO provider.',\n })}\n </MagicLinkWrapper>\n );\n};\n\nMagicLinkEE.defaultProps = {\n registrationToken: '',\n};\n\nMagicLinkEE.propTypes = {\n registrationToken: PropTypes.string,\n};\n"],"names":["useIntl","jsx","MagicLinkWrapper","getBasename","PropTypes"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASO,MAAM,cAAc,CAAC,EAAE,wBAAwB;AAC9C,QAAA,EAAE,kBAAkBA,UAAAA;AAE1B,MAAI,mBAAmB;AAEnB,WAAAC,2BAAA;AAAA,MAACC,MAAA;AAAA,MAAA;AAAA,QACC,QAAQ,GACN,OAAO,SAAS,MAClB,GAAGC,oBAAa,CAAA,oCAAoC,iBAAiB;AAAA,QAEpE,UAAc,cAAA;AAAA,UACb,IAAI;AAAA,UACJ,gBAAgB;AAAA,QAAA,CACjB;AAAA,MAAA;AAAA,IAAA;AAAA,EAGP;AAGE,SAAAF,2BAAA,IAACC,MAAiB,kBAAA,EAAA,QAAQ,GAAG,OAAO,SAAS,MAAM,GAAGC,QAAAA,YAAa,CAAA,cAChE,UAAc,cAAA;AAAA,IACb,IAAI;AAAA,IACJ,gBACE;AAAA,EACH,CAAA,EACH,CAAA;AAEJ;AAEA,YAAY,eAAe;AAAA,EACzB,mBAAmB;AACrB;AAEA,YAAY,YAAY;AAAA,EACtB,mBAAmBC,mBAAU,QAAA;AAC/B;;"}
@@ -3,7 +3,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
4
  const helperPlugin = require("@strapi/helper-plugin");
5
5
  const reactRedux = require("react-redux");
6
- const AuthenticatedApp = require("./AuthenticatedApp-732676f8.js");
6
+ const AuthenticatedApp = require("./AuthenticatedApp-96716173.js");
7
7
  const React = require("react");
8
8
  const designSystem = require("@strapi/design-system");
9
9
  const Icons = require("@strapi/icons");
@@ -12,7 +12,7 @@ const reactQuery = require("react-query");
12
12
  const reactRouterDom = require("react-router-dom");
13
13
  require("semver/functions/lt");
14
14
  require("semver/functions/valid");
15
- require("./index-c195d4f7.js");
15
+ require("./index-83e78ac3.js");
16
16
  require("react-dom/client");
17
17
  require("invariant");
18
18
  require("lodash/isFunction");
@@ -335,4 +335,4 @@ const ProtectedListView = () => {
335
335
  return /* @__PURE__ */ jsxRuntime.jsx(helperPlugin.CheckPagePermissions, { permissions: permissions.settings.webhooks.main, children: /* @__PURE__ */ jsxRuntime.jsx(ListView, {}) });
336
336
  };
337
337
  exports.default = ProtectedListView;
338
- //# sourceMappingURL=index-fce43a6e.js.map
338
+ //# sourceMappingURL=index-09ae6db3.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-fce43a6e.js","sources":["../../admin/src/pages/SettingsPage/pages/Webhooks/ListView/index.js","../../admin/src/pages/SettingsPage/pages/Webhooks/ProtectedListView/index.js"],"sourcesContent":["/* eslint-disable no-nested-ternary */\nimport React, { useEffect, useState } from 'react';\n\nimport {\n ActionLayout,\n BaseCheckbox,\n Box,\n Button,\n ContentLayout,\n EmptyStateLayout,\n Flex,\n HeaderLayout,\n IconButton,\n Layout,\n Main,\n Switch,\n Table,\n Tbody,\n Td,\n TFooter,\n Th,\n Thead,\n Tr,\n Typography,\n useNotifyAT,\n VisuallyHidden,\n} from '@strapi/design-system';\nimport {\n ConfirmDialog,\n LinkButton,\n LoadingIndicatorPage,\n onRowClick,\n SettingsPageTitle,\n stopPropagation,\n useAPIErrorHandler,\n useFetchClient,\n useFocusWhenNavigate,\n useNotification,\n useRBAC,\n} from '@strapi/helper-plugin';\nimport { EmptyDocuments, Pencil, Plus, Trash } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { useMutation, useQuery } from 'react-query';\nimport { useSelector } from 'react-redux';\nimport { useHistory, useLocation } from 'react-router-dom';\n\nimport { selectAdminPermissions } from '../../../../../selectors';\n\nconst ListView = () => {\n const [showModal, setShowModal] = useState(false);\n const [webhooksToDelete, setWebhooksToDelete] = useState([]);\n const permissions = useSelector(selectAdminPermissions);\n const { formatMessage } = useIntl();\n const { formatAPIError } = useAPIErrorHandler();\n const toggleNotification = useNotification();\n useFocusWhenNavigate();\n const { push } = useHistory();\n const { pathname } = useLocation();\n\n const {\n isLoading: isRBACLoading,\n allowedActions: { canCreate, canUpdate, canDelete },\n } = useRBAC(permissions.settings.webhooks);\n const { get, post, put } = useFetchClient();\n const { notifyStatus } = useNotifyAT();\n\n const QUERY_KEY = 'webhooks';\n const {\n isLoading: isWebhooksLoading,\n data: webhooks,\n error: webhooksError,\n refetch: refetchWebhooks,\n } = useQuery(QUERY_KEY, async () => {\n const {\n data: { data },\n } = await get('/admin/webhooks');\n\n return data;\n });\n\n useEffect(() => {\n if (webhooksError) {\n toggleNotification({\n type: 'warning',\n message: formatAPIError(webhooksError),\n });\n\n return;\n }\n if (webhooks) {\n notifyStatus(\n formatMessage({\n id: 'Settings.webhooks.list.loading.success',\n defaultMessage: 'Webhooks have been loaded',\n })\n );\n }\n }, [webhooks, webhooksError, toggleNotification, formatMessage, notifyStatus, formatAPIError]);\n\n const deleteMutation = useMutation(\n async () => {\n await post('/admin/webhooks/batch-delete', {\n ids: webhooksToDelete,\n });\n },\n {\n onError(error) {\n toggleNotification({\n type: 'warning',\n message: formatAPIError(error),\n });\n setShowModal(false);\n },\n onSuccess() {\n setWebhooksToDelete([]);\n setShowModal(false);\n refetchWebhooks();\n },\n }\n );\n\n const enabledMutation = useMutation(\n async ({ isEnabled, id }) => {\n const { id: _, ...webhook } = webhooks.find((webhook) => webhook.id === id) ?? {};\n const body = {\n ...webhook,\n isEnabled,\n };\n\n await put(`/admin/webhooks/${id}`, body);\n },\n {\n onError(error) {\n toggleNotification({\n type: 'warning',\n message: formatAPIError(error),\n });\n },\n onSuccess() {\n refetchWebhooks();\n },\n }\n );\n\n const confirmDelete = () => deleteMutation.mutate();\n\n const selectAllCheckbox = (selected) =>\n selected ? setWebhooksToDelete(webhooks.map((webhook) => webhook.id)) : setWebhooksToDelete([]);\n\n const selectOneCheckbox = (selected, id) =>\n selected\n ? setWebhooksToDelete((prev) => [...prev, id])\n : setWebhooksToDelete((prev) => prev.filter((webhookId) => webhookId !== id));\n\n const goTo = (to) => push(`${pathname}/${to}`);\n\n const isLoading = isRBACLoading || isWebhooksLoading;\n const numberOfWebhooks = webhooks?.length ?? 0;\n const webhooksToDeleteLength = webhooksToDelete.length;\n\n return (\n <Layout>\n <SettingsPageTitle name=\"Webhooks\" />\n <Main aria-busy={isLoading}>\n <HeaderLayout\n title={formatMessage({ id: 'Settings.webhooks.title', defaultMessage: 'Webhooks' })}\n subtitle={formatMessage({\n id: 'Settings.webhooks.list.description',\n defaultMessage: 'Get POST changes notifications',\n })}\n primaryAction={\n canCreate &&\n !isLoading && (\n <LinkButton startIcon={<Plus />} variant=\"default\" to={`${pathname}/create`} size=\"S\">\n {formatMessage({\n id: 'Settings.webhooks.list.button.add',\n defaultMessage: 'Create new webhook',\n })}\n </LinkButton>\n )\n }\n />\n {webhooksToDeleteLength > 0 && canDelete && (\n <ActionLayout\n startActions={\n <>\n <Typography variant=\"epsilon\" textColor=\"neutral600\">\n {formatMessage(\n {\n id: 'Settings.webhooks.to.delete',\n defaultMessage:\n '{webhooksToDeleteLength, plural, one {# webhook} other {# webhooks}} selected',\n },\n { webhooksToDeleteLength }\n )}\n </Typography>\n <Button\n onClick={() => setShowModal(true)}\n startIcon={<Trash />}\n size=\"L\"\n variant=\"danger-light\"\n >\n {formatMessage({\n id: 'global.delete',\n defaultMessage: 'Delete',\n })}\n </Button>\n </>\n }\n />\n )}\n <ContentLayout>\n {isLoading ? (\n <Box background=\"neutral0\" padding={6} shadow=\"filterShadow\" hasRadius>\n <LoadingIndicatorPage />\n </Box>\n ) : numberOfWebhooks > 0 ? (\n <Table\n colCount={5}\n rowCount={numberOfWebhooks + 1}\n footer={\n <TFooter onClick={() => (canCreate ? goTo('create') : {})} icon={<Plus />}>\n {formatMessage({\n id: 'Settings.webhooks.list.button.add',\n defaultMessage: 'Create new webhook',\n })}\n </TFooter>\n }\n >\n <Thead>\n <Tr>\n <Th>\n <BaseCheckbox\n aria-label={formatMessage({\n id: 'global.select-all-entries',\n defaultMessage: 'Select all entries',\n })}\n indeterminate={\n webhooksToDeleteLength > 0 && webhooksToDeleteLength < numberOfWebhooks\n }\n value={webhooksToDeleteLength === numberOfWebhooks}\n onValueChange={selectAllCheckbox}\n />\n </Th>\n <Th width=\"20%\">\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.name',\n defaultMessage: 'Name',\n })}\n </Typography>\n </Th>\n <Th width=\"60%\">\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'Settings.webhooks.form.url',\n defaultMessage: 'URL',\n })}\n </Typography>\n </Th>\n <Th width=\"20%\">\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'Settings.webhooks.list.th.status',\n defaultMessage: 'Status',\n })}\n </Typography>\n </Th>\n <Th>\n <VisuallyHidden>\n {formatMessage({\n id: 'Settings.webhooks.list.th.actions',\n defaultMessage: 'Actions',\n })}\n </VisuallyHidden>\n </Th>\n </Tr>\n </Thead>\n <Tbody>\n {webhooks.map((webhook) => (\n <Tr\n key={webhook.id}\n {...onRowClick({\n fn: () => goTo(webhook.id),\n condition: canUpdate,\n })}\n >\n <Td {...stopPropagation}>\n <BaseCheckbox\n aria-label={`${formatMessage({\n id: 'global.select',\n defaultMessage: 'Select',\n })} ${webhook.name}`}\n value={webhooksToDelete?.includes(webhook.id)}\n onValueChange={(selected) => selectOneCheckbox(selected, webhook.id)}\n name=\"select\"\n />\n </Td>\n <Td>\n <Typography fontWeight=\"semiBold\" textColor=\"neutral800\">\n {webhook.name}\n </Typography>\n </Td>\n <Td>\n <Typography textColor=\"neutral800\">{webhook.url}</Typography>\n </Td>\n <Td>\n <Flex>\n <Switch\n onLabel={formatMessage({\n id: 'global.enabled',\n defaultMessage: 'Enabled',\n })}\n offLabel={formatMessage({\n id: 'global.disabled',\n defaultMessage: 'Disabled',\n })}\n label={`${webhook.name} ${formatMessage({\n id: 'Settings.webhooks.list.th.status',\n defaultMessage: 'Status',\n })}`}\n selected={webhook.isEnabled}\n onChange={(e) => {\n e.stopPropagation();\n enabledMutation.mutate({\n isEnabled: !webhook.isEnabled,\n id: webhook.id,\n });\n }}\n visibleLabels\n />\n </Flex>\n </Td>\n <Td>\n <Flex gap={1}>\n {canUpdate && (\n <IconButton\n label={formatMessage({\n id: 'Settings.webhooks.events.update',\n defaultMessage: 'Update',\n })}\n icon={<Pencil />}\n noBorder\n />\n )}\n {canDelete && (\n <IconButton\n onClick={(e) => {\n e.stopPropagation();\n setWebhooksToDelete([webhook.id]);\n setShowModal(true);\n }}\n label={formatMessage({\n id: 'Settings.webhooks.events.delete',\n defaultMessage: 'Delete webhook',\n })}\n icon={<Trash />}\n noBorder\n />\n )}\n </Flex>\n </Td>\n </Tr>\n ))}\n </Tbody>\n </Table>\n ) : (\n <EmptyStateLayout\n icon={<EmptyDocuments width=\"160px\" />}\n content={formatMessage({\n id: 'Settings.webhooks.list.empty.description',\n defaultMessage: 'No webhooks found',\n })}\n action={\n <Button\n variant=\"secondary\"\n startIcon={<Plus />}\n onClick={() => (canCreate ? goTo('create') : {})}\n >\n {formatMessage({\n id: 'Settings.webhooks.list.button.add',\n defaultMessage: 'Create new webhook',\n })}\n </Button>\n }\n />\n )}\n </ContentLayout>\n </Main>\n <ConfirmDialog\n isOpen={showModal}\n onToggleDialog={() => setShowModal((prev) => !prev)}\n onConfirm={confirmDelete}\n isConfirmButtonLoading={deleteMutation.isLoading}\n />\n </Layout>\n );\n};\n\nexport default ListView;\n","import React from 'react';\n\nimport { CheckPagePermissions } from '@strapi/helper-plugin';\nimport { useSelector } from 'react-redux';\n\nimport { selectAdminPermissions } from '../../../../../selectors';\nimport ListView from '../ListView';\n\nconst ProtectedListView = () => {\n const permissions = useSelector(selectAdminPermissions);\n\n return (\n <CheckPagePermissions permissions={permissions.settings.webhooks.main}>\n <ListView />\n </CheckPagePermissions>\n );\n};\n\nexport default ProtectedListView;\n"],"names":["useState","useSelector","selectAdminPermissions","useIntl","useAPIErrorHandler","useNotification","useFocusWhenNavigate","useHistory","useLocation","useRBAC","useFetchClient","useNotifyAT","useQuery","useEffect","useMutation","webhook","Layout","jsx","SettingsPageTitle","jsxs","Main","HeaderLayout","LinkButton","Plus","ActionLayout","Fragment","Typography","Button","Trash","ContentLayout","Box","LoadingIndicatorPage","Table","TFooter","Thead","Tr","Th","BaseCheckbox","VisuallyHidden","Tbody","onRowClick","Td","stopPropagation","Flex","Switch","IconButton","Pencil","EmptyStateLayout","EmptyDocuments","ConfirmDialog","CheckPagePermissions"],"mappings":"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"}
1
+ {"version":3,"file":"index-09ae6db3.js","sources":["../../admin/src/pages/SettingsPage/pages/Webhooks/ListView/index.js","../../admin/src/pages/SettingsPage/pages/Webhooks/ProtectedListView/index.js"],"sourcesContent":["/* eslint-disable no-nested-ternary */\nimport React, { useEffect, useState } from 'react';\n\nimport {\n ActionLayout,\n BaseCheckbox,\n Box,\n Button,\n ContentLayout,\n EmptyStateLayout,\n Flex,\n HeaderLayout,\n IconButton,\n Layout,\n Main,\n Switch,\n Table,\n Tbody,\n Td,\n TFooter,\n Th,\n Thead,\n Tr,\n Typography,\n useNotifyAT,\n VisuallyHidden,\n} from '@strapi/design-system';\nimport {\n ConfirmDialog,\n LinkButton,\n LoadingIndicatorPage,\n onRowClick,\n SettingsPageTitle,\n stopPropagation,\n useAPIErrorHandler,\n useFetchClient,\n useFocusWhenNavigate,\n useNotification,\n useRBAC,\n} from '@strapi/helper-plugin';\nimport { EmptyDocuments, Pencil, Plus, Trash } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { useMutation, useQuery } from 'react-query';\nimport { useSelector } from 'react-redux';\nimport { useHistory, useLocation } from 'react-router-dom';\n\nimport { selectAdminPermissions } from '../../../../../selectors';\n\nconst ListView = () => {\n const [showModal, setShowModal] = useState(false);\n const [webhooksToDelete, setWebhooksToDelete] = useState([]);\n const permissions = useSelector(selectAdminPermissions);\n const { formatMessage } = useIntl();\n const { formatAPIError } = useAPIErrorHandler();\n const toggleNotification = useNotification();\n useFocusWhenNavigate();\n const { push } = useHistory();\n const { pathname } = useLocation();\n\n const {\n isLoading: isRBACLoading,\n allowedActions: { canCreate, canUpdate, canDelete },\n } = useRBAC(permissions.settings.webhooks);\n const { get, post, put } = useFetchClient();\n const { notifyStatus } = useNotifyAT();\n\n const QUERY_KEY = 'webhooks';\n const {\n isLoading: isWebhooksLoading,\n data: webhooks,\n error: webhooksError,\n refetch: refetchWebhooks,\n } = useQuery(QUERY_KEY, async () => {\n const {\n data: { data },\n } = await get('/admin/webhooks');\n\n return data;\n });\n\n useEffect(() => {\n if (webhooksError) {\n toggleNotification({\n type: 'warning',\n message: formatAPIError(webhooksError),\n });\n\n return;\n }\n if (webhooks) {\n notifyStatus(\n formatMessage({\n id: 'Settings.webhooks.list.loading.success',\n defaultMessage: 'Webhooks have been loaded',\n })\n );\n }\n }, [webhooks, webhooksError, toggleNotification, formatMessage, notifyStatus, formatAPIError]);\n\n const deleteMutation = useMutation(\n async () => {\n await post('/admin/webhooks/batch-delete', {\n ids: webhooksToDelete,\n });\n },\n {\n onError(error) {\n toggleNotification({\n type: 'warning',\n message: formatAPIError(error),\n });\n setShowModal(false);\n },\n onSuccess() {\n setWebhooksToDelete([]);\n setShowModal(false);\n refetchWebhooks();\n },\n }\n );\n\n const enabledMutation = useMutation(\n async ({ isEnabled, id }) => {\n const { id: _, ...webhook } = webhooks.find((webhook) => webhook.id === id) ?? {};\n const body = {\n ...webhook,\n isEnabled,\n };\n\n await put(`/admin/webhooks/${id}`, body);\n },\n {\n onError(error) {\n toggleNotification({\n type: 'warning',\n message: formatAPIError(error),\n });\n },\n onSuccess() {\n refetchWebhooks();\n },\n }\n );\n\n const confirmDelete = () => deleteMutation.mutate();\n\n const selectAllCheckbox = (selected) =>\n selected ? setWebhooksToDelete(webhooks.map((webhook) => webhook.id)) : setWebhooksToDelete([]);\n\n const selectOneCheckbox = (selected, id) =>\n selected\n ? setWebhooksToDelete((prev) => [...prev, id])\n : setWebhooksToDelete((prev) => prev.filter((webhookId) => webhookId !== id));\n\n const goTo = (to) => push(`${pathname}/${to}`);\n\n const isLoading = isRBACLoading || isWebhooksLoading;\n const numberOfWebhooks = webhooks?.length ?? 0;\n const webhooksToDeleteLength = webhooksToDelete.length;\n\n return (\n <Layout>\n <SettingsPageTitle name=\"Webhooks\" />\n <Main aria-busy={isLoading}>\n <HeaderLayout\n title={formatMessage({ id: 'Settings.webhooks.title', defaultMessage: 'Webhooks' })}\n subtitle={formatMessage({\n id: 'Settings.webhooks.list.description',\n defaultMessage: 'Get POST changes notifications',\n })}\n primaryAction={\n canCreate &&\n !isLoading && (\n <LinkButton startIcon={<Plus />} variant=\"default\" to={`${pathname}/create`} size=\"S\">\n {formatMessage({\n id: 'Settings.webhooks.list.button.add',\n defaultMessage: 'Create new webhook',\n })}\n </LinkButton>\n )\n }\n />\n {webhooksToDeleteLength > 0 && canDelete && (\n <ActionLayout\n startActions={\n <>\n <Typography variant=\"epsilon\" textColor=\"neutral600\">\n {formatMessage(\n {\n id: 'Settings.webhooks.to.delete',\n defaultMessage:\n '{webhooksToDeleteLength, plural, one {# webhook} other {# webhooks}} selected',\n },\n { webhooksToDeleteLength }\n )}\n </Typography>\n <Button\n onClick={() => setShowModal(true)}\n startIcon={<Trash />}\n size=\"L\"\n variant=\"danger-light\"\n >\n {formatMessage({\n id: 'global.delete',\n defaultMessage: 'Delete',\n })}\n </Button>\n </>\n }\n />\n )}\n <ContentLayout>\n {isLoading ? (\n <Box background=\"neutral0\" padding={6} shadow=\"filterShadow\" hasRadius>\n <LoadingIndicatorPage />\n </Box>\n ) : numberOfWebhooks > 0 ? (\n <Table\n colCount={5}\n rowCount={numberOfWebhooks + 1}\n footer={\n <TFooter onClick={() => (canCreate ? goTo('create') : {})} icon={<Plus />}>\n {formatMessage({\n id: 'Settings.webhooks.list.button.add',\n defaultMessage: 'Create new webhook',\n })}\n </TFooter>\n }\n >\n <Thead>\n <Tr>\n <Th>\n <BaseCheckbox\n aria-label={formatMessage({\n id: 'global.select-all-entries',\n defaultMessage: 'Select all entries',\n })}\n indeterminate={\n webhooksToDeleteLength > 0 && webhooksToDeleteLength < numberOfWebhooks\n }\n value={webhooksToDeleteLength === numberOfWebhooks}\n onValueChange={selectAllCheckbox}\n />\n </Th>\n <Th width=\"20%\">\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.name',\n defaultMessage: 'Name',\n })}\n </Typography>\n </Th>\n <Th width=\"60%\">\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'Settings.webhooks.form.url',\n defaultMessage: 'URL',\n })}\n </Typography>\n </Th>\n <Th width=\"20%\">\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'Settings.webhooks.list.th.status',\n defaultMessage: 'Status',\n })}\n </Typography>\n </Th>\n <Th>\n <VisuallyHidden>\n {formatMessage({\n id: 'Settings.webhooks.list.th.actions',\n defaultMessage: 'Actions',\n })}\n </VisuallyHidden>\n </Th>\n </Tr>\n </Thead>\n <Tbody>\n {webhooks.map((webhook) => (\n <Tr\n key={webhook.id}\n {...onRowClick({\n fn: () => goTo(webhook.id),\n condition: canUpdate,\n })}\n >\n <Td {...stopPropagation}>\n <BaseCheckbox\n aria-label={`${formatMessage({\n id: 'global.select',\n defaultMessage: 'Select',\n })} ${webhook.name}`}\n value={webhooksToDelete?.includes(webhook.id)}\n onValueChange={(selected) => selectOneCheckbox(selected, webhook.id)}\n name=\"select\"\n />\n </Td>\n <Td>\n <Typography fontWeight=\"semiBold\" textColor=\"neutral800\">\n {webhook.name}\n </Typography>\n </Td>\n <Td>\n <Typography textColor=\"neutral800\">{webhook.url}</Typography>\n </Td>\n <Td>\n <Flex>\n <Switch\n onLabel={formatMessage({\n id: 'global.enabled',\n defaultMessage: 'Enabled',\n })}\n offLabel={formatMessage({\n id: 'global.disabled',\n defaultMessage: 'Disabled',\n })}\n label={`${webhook.name} ${formatMessage({\n id: 'Settings.webhooks.list.th.status',\n defaultMessage: 'Status',\n })}`}\n selected={webhook.isEnabled}\n onChange={(e) => {\n e.stopPropagation();\n enabledMutation.mutate({\n isEnabled: !webhook.isEnabled,\n id: webhook.id,\n });\n }}\n visibleLabels\n />\n </Flex>\n </Td>\n <Td>\n <Flex gap={1}>\n {canUpdate && (\n <IconButton\n label={formatMessage({\n id: 'Settings.webhooks.events.update',\n defaultMessage: 'Update',\n })}\n icon={<Pencil />}\n noBorder\n />\n )}\n {canDelete && (\n <IconButton\n onClick={(e) => {\n e.stopPropagation();\n setWebhooksToDelete([webhook.id]);\n setShowModal(true);\n }}\n label={formatMessage({\n id: 'Settings.webhooks.events.delete',\n defaultMessage: 'Delete webhook',\n })}\n icon={<Trash />}\n noBorder\n />\n )}\n </Flex>\n </Td>\n </Tr>\n ))}\n </Tbody>\n </Table>\n ) : (\n <EmptyStateLayout\n icon={<EmptyDocuments width=\"160px\" />}\n content={formatMessage({\n id: 'Settings.webhooks.list.empty.description',\n defaultMessage: 'No webhooks found',\n })}\n action={\n <Button\n variant=\"secondary\"\n startIcon={<Plus />}\n onClick={() => (canCreate ? goTo('create') : {})}\n >\n {formatMessage({\n id: 'Settings.webhooks.list.button.add',\n defaultMessage: 'Create new webhook',\n })}\n </Button>\n }\n />\n )}\n </ContentLayout>\n </Main>\n <ConfirmDialog\n isOpen={showModal}\n onToggleDialog={() => setShowModal((prev) => !prev)}\n onConfirm={confirmDelete}\n isConfirmButtonLoading={deleteMutation.isLoading}\n />\n </Layout>\n );\n};\n\nexport default ListView;\n","import React from 'react';\n\nimport { CheckPagePermissions } from '@strapi/helper-plugin';\nimport { useSelector } from 'react-redux';\n\nimport { selectAdminPermissions } from '../../../../../selectors';\nimport ListView from '../ListView';\n\nconst ProtectedListView = () => {\n const permissions = useSelector(selectAdminPermissions);\n\n return (\n <CheckPagePermissions permissions={permissions.settings.webhooks.main}>\n <ListView />\n </CheckPagePermissions>\n );\n};\n\nexport default ProtectedListView;\n"],"names":["useState","useSelector","selectAdminPermissions","useIntl","useAPIErrorHandler","useNotification","useFocusWhenNavigate","useHistory","useLocation","useRBAC","useFetchClient","useNotifyAT","useQuery","useEffect","useMutation","webhook","Layout","jsx","SettingsPageTitle","jsxs","Main","HeaderLayout","LinkButton","Plus","ActionLayout","Fragment","Typography","Button","Trash","ContentLayout","Box","LoadingIndicatorPage","Table","TFooter","Thead","Tr","Th","BaseCheckbox","VisuallyHidden","Tbody","onRowClick","Td","stopPropagation","Flex","Switch","IconButton","Pencil","EmptyStateLayout","EmptyDocuments","ConfirmDialog","CheckPagePermissions"],"mappings":"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"}
@@ -10,7 +10,7 @@ const Icons = require("@strapi/icons");
10
10
  const formik = require("formik");
11
11
  const PropTypes = require("prop-types");
12
12
  const reactIntl = require("react-intl");
13
- const index = require("./index-c195d4f7.js");
13
+ const index = require("./index-83e78ac3.js");
14
14
  const styled = require("styled-components");
15
15
  const yup = require("yup");
16
16
  const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
@@ -593,7 +593,7 @@ const WebhookForm = ({
593
593
  const [showTriggerResponse, setShowTriggerResponse] = React.useState(false);
594
594
  const EventTable2 = index.useEnterprise(
595
595
  EventTableCE,
596
- async () => (await Promise.resolve().then(() => require("./index-b0a2c097.js"))).EventTableEE
596
+ async () => (await Promise.resolve().then(() => require("./index-15983380.js"))).EventTableEE
597
597
  );
598
598
  const mapHeaders = (headers) => {
599
599
  if (!Object.keys(headers).length) {
@@ -844,4 +844,4 @@ const EditView = () => {
844
844
  };
845
845
  exports.EditView = EditView;
846
846
  exports.EventTable = EventTable;
847
- //# sourceMappingURL=index-0de12f9b.js.map
847
+ //# sourceMappingURL=index-10f599c1.js.map