@strapi/admin 4.6.0 → 4.7.0-beta.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 (211) hide show
  1. package/.browserslistrc +2 -1
  2. package/admin/src/assets/images/onboarding-preview.png +0 -0
  3. package/admin/src/components/AuthenticatedApp/utils/api.js +5 -4
  4. package/admin/src/components/LeftMenu/index.js +9 -3
  5. package/admin/src/content-manager/components/CollectionTypeFormWrapper/index.js +18 -16
  6. package/admin/src/content-manager/components/DynamicTable/CellContent/RelationMultiple/index.js +5 -5
  7. package/admin/src/content-manager/components/EditViewDataManagerProvider/utils/findLeafByPathAndReplace.js +1 -3
  8. package/admin/src/content-manager/components/EditViewDataManagerProvider/utils/schema.js +6 -5
  9. package/admin/src/content-manager/components/InputUID/index.js +4 -4
  10. package/admin/src/content-manager/components/Inputs/index.js +0 -2
  11. package/admin/src/content-manager/components/SingleTypeFormWrapper/index.js +35 -14
  12. package/admin/src/content-manager/hooks/useFetchContentTypeLayout/index.js +4 -3
  13. package/admin/src/content-manager/hooks/useLazyComponents/index.js +9 -13
  14. package/admin/src/content-manager/hooks/useRelation/useRelation.js +4 -4
  15. package/admin/src/content-manager/pages/App/useModels.js +8 -3
  16. package/admin/src/content-manager/pages/App/utils/getContentTypeLinks.js +3 -2
  17. package/admin/src/content-manager/pages/ComponentSetttingsView/index.js +4 -4
  18. package/admin/src/content-manager/pages/EditSettingsView/utils/api.js +4 -2
  19. package/admin/src/content-manager/pages/ListSettingsView/utils/api.js +4 -2
  20. package/admin/src/content-manager/pages/ListView/index.js +9 -9
  21. package/admin/src/core/utils/index.js +0 -1
  22. package/admin/src/hooks/useFetchEnabledPlugins/utils/api.js +3 -2
  23. package/admin/src/hooks/useInjectReducer/index.js +1 -0
  24. package/admin/src/hooks/useInjectReducer/useInjectReducer.js +19 -0
  25. package/admin/src/hooks/useRegenerate/index.js +4 -4
  26. package/admin/src/hooks/useRolesList/index.js +5 -3
  27. package/admin/src/hooks/useSettingsMenu/utils/defaultGlobalLinks.js +7 -0
  28. package/admin/src/index.js +4 -3
  29. package/admin/src/pages/Admin/Onboarding/constants.js +46 -0
  30. package/admin/src/pages/Admin/Onboarding/index.js +161 -89
  31. package/admin/src/pages/Admin/index.js +5 -2
  32. package/admin/src/pages/ProfilePage/utils/api.js +5 -3
  33. package/admin/src/pages/SettingsPage/{pages/Users/ListPage → components}/Filters/index.js +0 -0
  34. package/admin/src/pages/SettingsPage/{pages/ApiTokens/EditView/components → components/Tokens}/FormHead/index.js +36 -19
  35. package/admin/src/pages/SettingsPage/components/Tokens/FormiTokenContainer/LifeSpanInput.js +96 -0
  36. package/admin/src/pages/SettingsPage/components/Tokens/LifeSpanInput/index.js +98 -0
  37. package/admin/src/pages/SettingsPage/components/Tokens/Regenerate/index.js +73 -0
  38. package/admin/src/pages/SettingsPage/{pages/ApiTokens/ListView/DynamicTable → components/Tokens/Table}/DefaultButton/index.js +1 -1
  39. package/admin/src/pages/SettingsPage/{pages/ApiTokens/ListView/DynamicTable → components/Tokens/Table}/DeleteButton/index.js +1 -1
  40. package/admin/src/pages/SettingsPage/{pages/ApiTokens/ListView/DynamicTable → components/Tokens/Table}/ReadButton/index.js +0 -0
  41. package/admin/src/pages/SettingsPage/{pages/ApiTokens/ListView/DynamicTable → components/Tokens/Table}/UpdateButton/index.js +0 -0
  42. package/admin/src/pages/SettingsPage/components/Tokens/Table/index.js +135 -0
  43. package/admin/src/pages/SettingsPage/{pages/ApiTokens/EditView/components/ContentBox → components/Tokens/TokenBox}/index.js +17 -17
  44. package/admin/src/pages/SettingsPage/components/Tokens/TokenDescription/index.js +51 -0
  45. package/admin/src/pages/SettingsPage/components/Tokens/TokenName/index.js +46 -0
  46. package/admin/src/pages/SettingsPage/components/Tokens/TokenTypeSelect/index.js +69 -0
  47. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/CollapsableContentType/index.js +5 -3
  48. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/FormApiTokenContainer/index.js +52 -142
  49. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/Regenerate/index.js +5 -1
  50. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/index.js +43 -19
  51. package/admin/src/pages/SettingsPage/pages/ApiTokens/ListView/index.js +9 -16
  52. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/utils/api.js +5 -3
  53. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/components/FormTransferTokenContainer/index.js +105 -0
  54. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/components/LoadingView/index.js +50 -0
  55. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/index.js +201 -0
  56. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/utils/getDateOfExpiration.js +16 -0
  57. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/utils/index.js +4 -0
  58. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/utils/schema.js +10 -0
  59. package/admin/src/pages/SettingsPage/pages/TransferTokens/ListView/index.js +182 -0
  60. package/admin/src/pages/SettingsPage/pages/TransferTokens/ListView/utils/tableHeaders.js +48 -0
  61. package/admin/src/pages/SettingsPage/pages/TransferTokens/ProtectedCreateView/index.js +14 -0
  62. package/admin/src/pages/SettingsPage/pages/TransferTokens/ProtectedEditView/index.js +14 -0
  63. package/admin/src/pages/SettingsPage/pages/TransferTokens/ProtectedListView/index.js +12 -0
  64. package/admin/src/pages/SettingsPage/pages/Users/EditPage/utils/api.js +6 -3
  65. package/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/index.js +9 -3
  66. package/admin/src/pages/SettingsPage/pages/Users/ListPage/index.js +1 -1
  67. package/admin/src/pages/SettingsPage/pages/Users/ListPage/utils/api.js +6 -3
  68. package/admin/src/pages/SettingsPage/pages/Users/components/SelectRoles/index.js +3 -2
  69. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/index.js +3 -2
  70. package/admin/src/pages/SettingsPage/utils/defaultRoutes.js +33 -0
  71. package/admin/src/permissions/defaultPermissions.js +8 -0
  72. package/admin/src/translations/en.json +25 -6
  73. package/admin/src/translations/eu.json +796 -0
  74. package/admin/src/translations/languageNativeNames.js +1 -0
  75. package/admin/src/translations/ru.json +9 -9
  76. package/build/1412.936ed920.chunk.js +159 -0
  77. package/build/1683.c8aa7b7c.chunk.js +268 -0
  78. package/build/19eb2dfcf2603eb55733.png +0 -0
  79. package/build/2607.2e48dbf8.chunk.js +66 -0
  80. package/build/2743.6d1632f9.chunk.js +45 -0
  81. package/build/3075.dc3894fe.chunk.js +108 -0
  82. package/build/3632.0317b618.chunk.js +138 -0
  83. package/build/4649.15cc0afe.chunk.js +30 -0
  84. package/build/{5910.a5374848.chunk.js → 4855.bd092921.chunk.js} +65 -65
  85. package/build/7259.aa68d808.chunk.js +1 -0
  86. package/build/7407.883fb1f5.chunk.js +1 -0
  87. package/build/9707.7290fd92.chunk.js +96 -0
  88. package/build/Admin-authenticatedApp.f29f6021.chunk.js +79 -0
  89. package/build/{Admin_homePage.79ab880c.chunk.js → Admin_homePage.b1730882.chunk.js} +1 -1
  90. package/build/{Admin_marketplace.eabf21b2.chunk.js → Admin_marketplace.ea0316c2.chunk.js} +2 -2
  91. package/build/Admin_pluginsPage.5c24f963.chunk.js +6 -0
  92. package/build/Admin_profilePage.59af1978.chunk.js +15 -0
  93. package/build/Admin_settingsPage.178dc6e3.chunk.js +178 -0
  94. package/build/admin-app.77a50e1f.chunk.js +112 -0
  95. package/build/admin-edit-roles-page.446b69dc.chunk.js +1 -0
  96. package/build/admin-edit-users.2ed69bfd.chunk.js +10 -0
  97. package/build/admin-users.fc003b10.chunk.js +11 -0
  98. package/build/{api-tokens-create-page.0e686c30.chunk.js → api-tokens-create-page.0db3aec1.chunk.js} +1 -1
  99. package/build/{api-tokens-edit-page.d6c7487b.chunk.js → api-tokens-edit-page.671e0e26.chunk.js} +1 -1
  100. package/build/api-tokens-list-page.7387102c.chunk.js +16 -0
  101. package/build/audit-logs-settings-page.c3dce30d.chunk.js +1 -0
  102. package/build/content-manager.42b24d46.chunk.js +1139 -0
  103. package/build/{content-type-builder-list-view.4243b2b1.chunk.js → content-type-builder-list-view.79e84b36.chunk.js} +1 -6
  104. package/build/{content-type-builder.365b6bf4.chunk.js → content-type-builder.855db321.chunk.js} +16 -15
  105. package/build/{email-settings-page.379552b1.chunk.js → email-settings-page.d1fcc7a3.chunk.js} +4 -9
  106. package/build/en-json.b0748970.chunk.js +1 -0
  107. package/build/eu-json.fceecd8b.chunk.js +1 -0
  108. package/build/i18n-settings-page.b8d8753e.chunk.js +60 -0
  109. package/build/index.html +1 -1
  110. package/build/main.1022ed01.js +4393 -0
  111. package/build/ru-json.aa5cd123.chunk.js +1 -0
  112. package/build/runtime~main.84941a97.js +2 -0
  113. package/build/sso-settings-page.b85ad080.chunk.js +41 -0
  114. package/build/transfer-tokens-create-page.16e23791.chunk.js +1 -0
  115. package/build/transfer-tokens-edit-page.3886c973.chunk.js +1 -0
  116. package/build/transfer-tokens-list-page.e8010a89.chunk.js +16 -0
  117. package/build/upload-settings.ef64bbf9.chunk.js +84 -0
  118. package/build/upload.c5730dfa.chunk.js +33 -0
  119. package/build/users-advanced-settings-page.fce9908e.chunk.js +8 -0
  120. package/build/users-email-settings-page.343d0ad2.chunk.js +23 -0
  121. package/build/users-providers-settings-page.e5a9a3f1.chunk.js +99 -0
  122. package/build/users-roles-settings-page.66312f31.chunk.js +30 -0
  123. package/build/webhook-edit-page.73e51e64.chunk.js +75 -0
  124. package/build/{webhook-list-page.f75ba3f2.chunk.js → webhook-list-page.1134f130.chunk.js} +1 -1
  125. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/ComboboxFilter/index.js +41 -0
  126. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/Modal/ActionBody.js +1 -3
  127. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/TableRows/index.js +1 -1
  128. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/hooks/useAuditLogsData.js +47 -0
  129. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/index.js +30 -31
  130. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/utils/getActionTypesDefaultMessages.js +7 -9
  131. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/utils/getDisplayedFilters.js +88 -0
  132. package/ee/admin/pages/SettingsPage/pages/Roles/ListPage/index.js +4 -2
  133. package/ee/server/migrations/audit-logs-table.js +45 -0
  134. package/ee/server/register.js +2 -0
  135. package/ee/server/services/audit-logs.js +11 -1
  136. package/package.json +30 -30
  137. package/server/bootstrap.js +2 -0
  138. package/server/config/admin-actions.js +48 -0
  139. package/server/content-types/index.js +2 -0
  140. package/server/content-types/transfer-token-permission.js +36 -0
  141. package/server/content-types/transfer-token.js +66 -0
  142. package/server/controllers/admin.js +16 -0
  143. package/server/controllers/api-token.js +4 -5
  144. package/server/controllers/index.js +1 -0
  145. package/server/controllers/transfer/index.js +13 -0
  146. package/server/controllers/transfer/runner.js +24 -0
  147. package/server/controllers/transfer/token.js +131 -0
  148. package/server/register.js +2 -9
  149. package/server/routes/index.js +2 -0
  150. package/server/routes/transfer.js +95 -0
  151. package/server/services/api-token.js +2 -3
  152. package/server/services/constants.js +6 -0
  153. package/server/services/index.js +1 -0
  154. package/server/services/transfer/index.js +6 -0
  155. package/server/services/transfer/permission.js +22 -0
  156. package/server/services/transfer/token.js +409 -0
  157. package/server/strategies/api-token.js +4 -2
  158. package/server/strategies/data-transfer.js +107 -0
  159. package/server/strategies/index.js +1 -0
  160. package/server/utils/index.d.ts +2 -0
  161. package/server/validation/api-tokens.js +1 -6
  162. package/server/validation/transfer/index.js +5 -0
  163. package/server/validation/transfer/token.js +34 -0
  164. package/admin/src/content-manager/components/InputJSON/FieldWrapper.js +0 -40
  165. package/admin/src/content-manager/components/InputJSON/Label.js +0 -35
  166. package/admin/src/content-manager/components/InputJSON/components.js +0 -36
  167. package/admin/src/content-manager/components/InputJSON/index.js +0 -223
  168. package/admin/src/content-manager/components/InputJSON/jsonlint.js +0 -680
  169. package/admin/src/core/utils/axiosInstance.js +0 -40
  170. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/FormBody/index.js +0 -78
  171. package/admin/src/pages/SettingsPage/pages/ApiTokens/ListView/DynamicTable/index.js +0 -112
  172. package/build/2607.ce06608e.chunk.js +0 -66
  173. package/build/2743.dea372fb.chunk.js +0 -42
  174. package/build/3075.03ebe93d.chunk.js +0 -115
  175. package/build/3632.963ac97d.chunk.js +0 -138
  176. package/build/4318.8cb388a5.chunk.js +0 -30
  177. package/build/4656.a0d43cca.chunk.js +0 -159
  178. package/build/8633.4af74a50.chunk.js +0 -1
  179. package/build/9641.a311b612.chunk.js +0 -276
  180. package/build/9707.62831b4d.chunk.js +0 -101
  181. package/build/Admin-authenticatedApp.50dc27f9.chunk.js +0 -75
  182. package/build/Admin_pluginsPage.953e796b.chunk.js +0 -6
  183. package/build/Admin_profilePage.5c2efda5.chunk.js +0 -15
  184. package/build/Admin_settingsPage.19cfb9ca.chunk.js +0 -178
  185. package/build/admin-app.34295b50.chunk.js +0 -112
  186. package/build/admin-edit-roles-page.d50d9654.chunk.js +0 -1
  187. package/build/admin-edit-users.912b856d.chunk.js +0 -10
  188. package/build/admin-users.e36e7111.chunk.js +0 -11
  189. package/build/api-tokens-list-page.1cd86136.chunk.js +0 -16
  190. package/build/audit-logs-settings-page.308a6250.chunk.js +0 -1
  191. package/build/codemirror-addon-closebrackets.71aa4bbd.chunk.js +0 -2
  192. package/build/codemirror-addon-lint-js.405f70fb.chunk.js +0 -1
  193. package/build/codemirror-addon-lint.8487ad3d.chunk.js +0 -1
  194. package/build/codemirror-addon-mark-selection.1928c849.chunk.js +0 -1
  195. package/build/codemirror-css.359a2a4b.chunk.js +0 -345
  196. package/build/codemirror-javacript.af237b68.chunk.js +0 -1
  197. package/build/codemirror-theme.2fe63a16.chunk.js +0 -33
  198. package/build/content-manager.851f40ce.chunk.js +0 -1170
  199. package/build/en-json.38d182e5.chunk.js +0 -1
  200. package/build/i18n-settings-page.3ab28b1a.chunk.js +0 -65
  201. package/build/main.9f31732e.js +0 -4454
  202. package/build/ru-json.3b411a39.chunk.js +0 -1
  203. package/build/runtime~main.2b8e2318.js +0 -2
  204. package/build/sso-settings-page.b64a44e8.chunk.js +0 -41
  205. package/build/upload-settings.6c26ff37.chunk.js +0 -89
  206. package/build/upload.2c69d238.chunk.js +0 -38
  207. package/build/users-advanced-settings-page.c4270682.chunk.js +0 -13
  208. package/build/users-email-settings-page.60422a2f.chunk.js +0 -28
  209. package/build/users-providers-settings-page.e1834060.chunk.js +0 -104
  210. package/build/users-roles-settings-page.3ef35132.chunk.js +0 -30
  211. package/build/webhook-edit-page.c0080dc1.chunk.js +0 -75
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[7259],{30493:function(L,y,e){e.d(y,{Z:function(){return v}});var t=e(32735),p=e(5636),n=e(60216),s=e.n(n),u=e(88425),a=e(29439),i=e(66456),E=e(41415),g=e(28356),M=e(27677),o=e(44647),m=e(8888);const c=({onRegenerate:R,idToRegenerate:r,backUrl:A})=>{const{formatMessage:U}=(0,p.useIntl)(),[S,D]=(0,t.useState)(!1),{regenerateData:W,isLoadingConfirmation:O}=(0,m.rW)(A,r,R),B=async()=>{W(),D(!1)};return t.createElement(t.Fragment,null,t.createElement(E.z,{startIcon:t.createElement(o.Z,null),type:"button",size:"S",variant:"tertiary",onClick:()=>D(!0),name:"regenerate"},U({id:"Settings.apiTokens.regenerate",defaultMessage:"Regenerate"})),t.createElement(u.ConfirmDialog,{bodyText:{id:"Settings.apiTokens.popUpWarning.message",defaultMessage:"Are you sure you want to regenerate this token?"},iconRightButton:t.createElement(o.Z,null),isConfirmButtonLoading:O,isOpen:S,onToggleDialog:()=>D(!1),onConfirm:B,leftButtonText:{id:"Settings.apiTokens.Button.cancel",defaultMessage:"Cancel"},rightButtonText:{id:"Settings.apiTokens.Button.regenerate",defaultMessage:"Regenerate"},title:{id:"Settings.apiTokens.RegenerateDialog.title",defaultMessage:"Regenerate token"}}))};c.defaultProps={onRegenerate(){}},c.propTypes={onRegenerate:s().func,idToRegenerate:s().oneOfType([s().number,s().string]).isRequired,backUrl:s().string.isRequired};var l=c;const d=({title:R,token:r,setToken:A,canEditInputs:U,canRegenerate:S,isSubmitting:D,backUrl:W,regenerateUrl:O})=>{const{formatMessage:B}=(0,p.useIntl)(),F=V=>{A({...r,accessKey:V})};return t.createElement(g.T,{title:r?.name||B(R),primaryAction:U?t.createElement(M.K,{horizontal:!0,spacing:2},S&&r?.id&&t.createElement(l,{backUrl:O,onRegenerate:F,idToRegenerate:r?.id}),t.createElement(E.z,{disabled:D,loading:D,startIcon:t.createElement(i.Z,null),type:"submit",size:"S"},B({id:"global.save",defaultMessage:"Save"}))):S&&r?.id&&t.createElement(l,{onRegenerate:F,idToRegenerate:r?.id,backUrl:O}),navigationAction:t.createElement(u.Link,{startIcon:t.createElement(a.Z,null),to:W},B({id:"global.back",defaultMessage:"Back"}))})};d.propTypes={token:s().shape({id:s().oneOfType([s().number,s().string]),type:s().string,lifespan:s().oneOfType([s().number,s().string]),name:s().string,accessKey:s().string,permissions:s().array,description:s().string,createdAt:s().string}),canEditInputs:s().bool.isRequired,canRegenerate:s().bool.isRequired,setToken:s().func.isRequired,isSubmitting:s().bool.isRequired,backUrl:s().string.isRequired,title:s().shape({id:s().string,label:s().string}).isRequired,regenerateUrl:s().string.isRequired},d.defaultProps={token:void 0};var v=d},4321:function(L,y,e){var t=e(32735),p=e(60216),n=e.n(p),s=e(5636),u=e(70218),a=e(84967),i=e(49372),E=e(37944);const g=({token:M,errors:o,values:m,onChange:c,isCreating:l})=>{const{formatMessage:d}=(0,s.useIntl)();return t.createElement(t.Fragment,null,t.createElement(u.P,{name:"lifespan",label:d({id:"Settings.apiTokens.form.duration",defaultMessage:"Token duration"}),value:m.lifespan!==null?m.lifespan:"0",error:o.lifespan?d(o.lifespan?.id?o.lifespan:{id:o.lifespan,defaultMessage:o.lifespan}):null,onChange:v=>{c({target:{name:"lifespan",value:v}})},required:!0,disabled:!l,placeholder:"Select"},t.createElement(a.W,{value:"604800000"},d({id:"Settings.tokens.duration.7-days",defaultMessage:"7 days"})),t.createElement(a.W,{value:"2592000000"},d({id:"Settings.tokens.duration.30-days",defaultMessage:"30 days"})),t.createElement(a.W,{value:"7776000000"},d({id:"Settings.tokens.duration.90-days",defaultMessage:"90 days"})),t.createElement(a.W,{value:"0"},d({id:"Settings.tokens.duration.unlimited",defaultMessage:"Unlimited"}))),t.createElement(i.Z,{variant:"pi",textColor:"neutral600"},!l&&`${d({id:"Settings.tokens.duration.expiration-date",defaultMessage:"Expiration date"})}: ${(0,E.IX)(M?.createdAt,parseInt(m.lifespan,10))}`))};g.propTypes={errors:n().shape({lifespan:n().string}),onChange:n().func.isRequired,values:n().shape({lifespan:n().oneOfType([n().number,n().string])}).isRequired,isCreating:n().bool.isRequired,token:n().shape({id:n().oneOfType([n().number,n().string]),type:n().string,lifespan:n().string,name:n().string,accessKey:n().string,permissions:n().array,description:n().string,createdAt:n().string})},g.defaultProps={errors:{},token:{}},y.Z=g},93682:function(L,y,e){var t=e(32735),p=e(5636),n=e(60216),s=e.n(n),u=e(59087),a=e.n(u),i=e(88425),E=e.n(i),g=e(50563),M=e(47765),o=e(11631);const m=({token:c})=>{const{formatMessage:l}=(0,p.useIntl)(),d=(0,i.useNotification)(),{trackUsage:v}=(0,i.useTracking)(),R=(0,t.useRef)(v);return t.createElement(i.ContentBox,{endAction:c&&t.createElement("span",{style:{alignSelf:"start"}},t.createElement(u.CopyToClipboard,{onCopy:()=>{R.current("didCopyTokenKey"),d({type:"success",message:{id:"Settings.tokens.notification.copied"}})},text:c},t.createElement(g.h,{label:l({id:"app.component.CopyToClipboard.label",defaultMessage:"Copy to clipboard"}),noBorder:!0,icon:t.createElement(M.Z,null),style:{padding:0,height:"1rem"}}))),title:c||l({id:"Settings.tokens.copy.editTitle",defaultMessage:"This token isn\u2019t accessible anymore."}),subtitle:l(c?{id:"Settings.tokens.copy.lastWarning",defaultMessage:"Make sure to copy this token, you won\u2019t be able to see it again!"}:{id:"Settings.tokens.copy.editMessage",defaultMessage:"For security reasons, you can only see your token once."}),icon:t.createElement(o.Z,null),iconBackground:"neutral100"})};m.defaultProps={token:null},m.propTypes={token:s().string},y.Z=m},42789:function(L,y,e){var t=e(32735),p=e(60216),n=e.n(p),s=e(5636),u=e(10508);const a=({errors:i,values:E,onChange:g,canEditInputs:M})=>{const{formatMessage:o}=(0,s.useIntl)();return t.createElement(u.g,{label:o({id:"Settings.tokens.form.description",defaultMessage:"Description"}),name:"description",error:i.description?o(i.description?.id?i.description:{id:i.description,defaultMessage:i.description}):null,onChange:g,disabled:!M},E.description)};a.propTypes={errors:n().shape({description:n().string}),onChange:n().func.isRequired,canEditInputs:n().bool.isRequired,values:n().shape({description:n().string}).isRequired},a.defaultProps={errors:{}},y.Z=a},8377:function(L,y,e){var t=e(32735),p=e(60216),n=e.n(p),s=e(5636),u=e(10369);const a=({errors:i,values:E,onChange:g,canEditInputs:M})=>{const{formatMessage:o}=(0,s.useIntl)();return t.createElement(u.o,{name:"name",error:i.name?o(i.name?.id?i.name:{id:i.name,defaultMessage:i.name}):null,label:o({id:"Settings.tokens.form.name",defaultMessage:"Name"}),onChange:g,value:E.name,disabled:!M,required:!0})};a.propTypes={errors:n().shape({name:n().string}),onChange:n().func.isRequired,canEditInputs:n().bool.isRequired,values:n().shape({name:n().string}).isRequired},a.defaultProps={errors:{}},y.Z=a},37944:function(L,y,e){e.d(y,{IX:function(){return s},fK:function(){return E},mk:function(){return o}});var t=e(64213),p=e(54049),s=(m,c,l="en")=>{if(c&&typeof c=="number"){const d=c/24/60/60/1e3;return(0,t.format)((0,t.addDays)(new Date(m),d),"PPP",{locale:p[l]})}return"Unlimited"},u=e(5173),a=e(88425),E=u.Ry().shape({name:u.Z_(a.translatedErrors.string).required(a.translatedErrors.required),type:u.Z_(a.translatedErrors.string).oneOf(["read-only","full-access","custom"]).required(a.translatedErrors.required),description:u.Z_().nullable(),lifespan:u.Rx().integer().min(0).nullable().defined(a.translatedErrors.required)}),g=e(92891),o=m=>{const c={allActionsIds:[],permissions:[]};return c.permissions=Object.keys(m).map(l=>({apiId:l,label:l.split("::")[1],controllers:(0,g.flatten)(Object.keys(m[l].controllers).map(d=>({controller:d,actions:(0,g.flatten)(m[l].controllers[d].map(v=>{const R=`${l}.${d}.${v}`;return l.includes("api::")&&c.allActionsIds.push(R),{action:v,actionId:R}}))})))})),c}},37259:function(L,y,e){e.d(y,{Z:function(){return Y}});var t=e(32735),p=e(5636),n=e(83281),s=e(5141),u=e(84968),a=e(88425),i=e(27649),E=e(27677),g=e(17e3),M=e(64421),o=e(5173),c=o.Ry().shape({name:o.Z_(a.translatedErrors.string).required(a.translatedErrors.required),description:o.Z_().nullable(),lifespan:o.Rx().integer().min(0).nullable().defined(a.translatedErrors.required)}),l=e(28356),d=e(41415),v=e(66456),R=e(60216),r=e.n(R);const A=({transferTokenName:C})=>{const{formatMessage:h}=(0,p.useIntl)();return(0,a.useFocusWhenNavigate)(),t.createElement(i.o,{"aria-busy":"true"},t.createElement(a.SettingsPageTitle,{name:"Transfer Tokens"}),t.createElement(l.T,{primaryAction:t.createElement(d.z,{disabled:!0,startIcon:t.createElement(v.Z,null),type:"button",size:"L"},h({id:"global.save",defaultMessage:"Save"})),title:C||h({id:"Settings.transferTokens.createPage.title",defaultMessage:"Create Transfer Token"})}),t.createElement(g.D,null,t.createElement(a.LoadingIndicatorPage,null)))};A.defaultProps={transferTokenName:null},A.propTypes={transferTokenName:r().string};var U=A,S=e(72041),D=e(72850),W=e(15335),O=e(5803),B=e(49372),F=e(4321),V=e(8377),b=e(42789);const $=({errors:C,onChange:h,canEditInputs:Z,isCreating:K,values:k,transferToken:T})=>{const{formatMessage:x}=(0,p.useIntl)();return t.createElement(D.x,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},t.createElement(E.K,{spacing:4},t.createElement(B.Z,{variant:"delta",as:"h2"},x({id:"global.details",defaultMessage:"Details"})),t.createElement(W.r,{gap:5},t.createElement(O.P,{key:"name",col:6,xs:12},t.createElement(V.Z,{errors:C,values:k,canEditInputs:Z,onChange:h})),t.createElement(O.P,{key:"description",col:6,xs:12},t.createElement(b.Z,{errors:C,values:k,canEditInputs:Z,onChange:h})),t.createElement(O.P,{key:"lifespan",col:6,xs:12},t.createElement(F.Z,{isCreating:K,errors:C,values:k,onChange:h,token:T})))))};$.propTypes={errors:r().shape({name:r().string,description:r().string,lifespan:r().string,type:r().string}),onChange:r().func.isRequired,canEditInputs:r().bool.isRequired,values:r().shape({name:r().string,description:r().string,lifespan:r().oneOfType([r().number,r().string]),type:r().string}).isRequired,isCreating:r().bool.isRequired,transferToken:r().shape({id:r().oneOfType([r().number,r().string]),type:r().string,lifespan:r().string,name:r().string,accessKey:r().string,permissions:r().array,description:r().string,createdAt:r().string})},$.defaultProps={errors:{},transferToken:{}};var j=$,X=e(93682),Q=e(30493);const J="Name already taken";var Y=()=>{(0,a.useFocusWhenNavigate)();const{formatMessage:C}=(0,p.useIntl)(),{lockApp:h,unlockApp:Z}=(0,a.useOverlayBlocker)(),K=(0,a.useNotification)(),k=(0,s.useHistory)(),[T,x]=(0,t.useState)(k.location.state?.transferToken.accessKey?{...k.location.state.transferToken}:null),{setCurrentStep:_}=(0,a.useGuidedTour)(),{allowedActions:{canCreate:q,canUpdate:w,canRegenerate:ee}}=(0,a.useRBAC)(S.Z.settings["transfer-tokens"]),{params:{id:z}}=(0,s.useRouteMatch)("/settings/transfer-tokens/:id"),{get:te,post:ne,put:se}=(0,a.useFetchClient)(),I=z==="create",{status:ae}=(0,u.useQuery)(["transfer-token",z],async()=>{const{data:{data:f}}=await te(`/admin/transfer/tokens/${z}`);return x({...f}),f},{enabled:!I&&!T,onError(){K({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}}),re=async(f,N)=>{h();const H=f.lifespan&&parseInt(f.lifespan,10)&&f.lifespan!=="0"?parseInt(f.lifespan,10):null;try{const{data:{data:P}}=I?await ne("/admin/transfer/tokens",{...f,lifespan:H,permissions:["push"]}):await se(`/admin/transfer/tokens/${z}`,{name:f.name,description:f.description,type:f.type,permissions:["push"]});Z(),I&&(k.replace(`/settings/transfer-tokens/${P.id}`,{transferToken:P}),_("transferTokens.success")),x({...P}),K({type:"success",message:C(I?{id:"notification.success.transfertokencreated",defaultMessage:"Transfer Token successfully created"}:{id:"notification.success.transfertokenedited",defaultMessage:"Transfer Token successfully edited"})})}catch(P){const ie=(0,M.Iz)(P.response.data);N.setErrors(ie),P?.response?.data?.error?.message===J?K({type:"warning",message:P.response.data.message||"notification.error.tokennamenotunique"}):K({type:"warning",message:P?.response?.data?.message||"notification.error"}),Z()}},G=w&&!I||q&&I;return!I&&!T&&ae!=="success"?t.createElement(U,{transferTokenName:T?.name}):t.createElement(i.o,null,t.createElement(a.SettingsPageTitle,{name:"Transfer Tokens"}),t.createElement(n.Formik,{validationSchema:c,validateOnChange:!1,initialValues:{name:T?.name||"",description:T?.description||"",lifespan:T?.lifespan?T.lifespan.toString():T?.lifespan},enableReinitialize:!0,onSubmit:(f,N)=>re(f,N)},({errors:f,handleChange:N,isSubmitting:H,values:P})=>t.createElement(a.Form,null,t.createElement(Q.Z,{backUrl:"/settings/transfer-tokens",title:{id:"Settings.transferTokens.createPage.title",defaultMessage:"Create Transfer Token"},token:T,setToken:x,canEditInputs:G,canRegenerate:ee,isSubmitting:H,regenerateUrl:"/admin/transfer/tokens/"}),t.createElement(g.D,null,t.createElement(E.K,{spacing:6},Boolean(T?.name)&&t.createElement(X.Z,{token:T?.accessKey}),t.createElement(j,{errors:f,onChange:N,canEditInputs:G,isCreating:I,values:P,transferToken:T}))))))}}}]);