@strapi/admin 4.9.0-exp.90df253ba90fd6879eb56a720a1f80d04ff745b8 → 4.10.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 (167) hide show
  1. package/admin/src/content-manager/components/DynamicTable/CellContent/PublicationState/PublicationState.js +26 -0
  2. package/admin/src/content-manager/components/DynamicTable/CellContent/PublicationState/index.js +1 -0
  3. package/admin/src/content-manager/components/DynamicTable/CellContent/ReviewWorkflowsStage/ReviewWorkflowsStage.js +15 -0
  4. package/admin/src/content-manager/components/DynamicTable/CellContent/ReviewWorkflowsStage/index.js +1 -0
  5. package/admin/src/content-manager/components/DynamicTable/index.js +43 -49
  6. package/admin/src/content-manager/components/DynamicZone/components/DynamicComponent.js +2 -0
  7. package/admin/src/content-manager/components/DynamicZone/utils/select.js +1 -1
  8. package/admin/src/content-manager/components/FieldComponent/utils/select.js +2 -1
  9. package/admin/src/content-manager/components/Inputs/utils/getInputType.js +1 -1
  10. package/admin/src/content-manager/components/Inputs/utils/select.js +1 -1
  11. package/admin/src/content-manager/hooks/useContentTypeLayout/index.js +1 -2
  12. package/admin/src/content-manager/hooks/useFetchContentTypeLayout/utils/formatLayouts.js +4 -1
  13. package/admin/src/content-manager/pages/CollectionTypeRecursivePath/index.js +1 -2
  14. package/admin/src/content-manager/pages/EditSettingsView/init.js +3 -1
  15. package/admin/src/content-manager/pages/EditSettingsView/utils/createPossibleMainFieldsForModelsAndComponents.js +2 -4
  16. package/admin/src/content-manager/pages/EditView/DeleteLink/utils/select.js +1 -1
  17. package/admin/src/content-manager/pages/EditView/Information/index.js +77 -53
  18. package/admin/src/content-manager/pages/EditView/InformationBox/InformationBoxCE.js +13 -0
  19. package/admin/src/content-manager/pages/EditView/InformationBox/index.js +3 -0
  20. package/admin/src/content-manager/pages/EditView/index.js +3 -4
  21. package/admin/src/content-manager/pages/EditView/utils/createAttributesLayout.js +2 -1
  22. package/admin/src/content-manager/pages/EditView/utils/getFieldsActionMatchingPermissions.js +2 -1
  23. package/admin/src/content-manager/pages/ListView/index.js +6 -9
  24. package/admin/src/content-manager/utils/checkIfAttributeIsDisplayable.js +1 -1
  25. package/admin/src/content-manager/utils/createDefaultForm.js +2 -2
  26. package/admin/src/content-manager/utils/formatLayoutToApi.js +2 -1
  27. package/admin/src/content-manager/utils/getFieldName.js +1 -1
  28. package/admin/src/content-manager/utils/mergeMetasWithSchema.js +1 -1
  29. package/admin/src/content-manager/utils/paths.js +1 -1
  30. package/admin/src/content-manager/utils/removePasswordFieldsFromData.js +1 -1
  31. package/admin/src/hooks/useRegenerate/index.js +1 -1
  32. package/admin/src/hooks/useSettingsForm/index.js +3 -3
  33. package/admin/src/hooks/useSettingsForm/reducer.js +3 -1
  34. package/admin/src/hooks/useSettingsMenu/reducer.js +1 -1
  35. package/admin/src/index.js +1 -0
  36. package/admin/src/pages/AuthPage/reducer.js +1 -1
  37. package/admin/src/pages/SettingsPage/components/Tokens/TokenTypeSelect/index.js +5 -7
  38. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/CollapsableContentType/index.js +1 -1
  39. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/reducer.js +1 -1
  40. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/utils/transformPermissionsData.js +6 -8
  41. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ConditionsModal/utils/createDefaultConditionsForm.js +1 -1
  42. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ContentTypeCollapse/Collapse/utils/generateCheckboxesActions.js +2 -1
  43. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ContentTypeCollapse/CollapsePropertyMatrix/ActionRow/utils/getRowLabelCheckboxeState.js +2 -1
  44. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/GlobalActions/utils/getRowLabelCheckboxesState.js +1 -1
  45. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/reducer.js +6 -1
  46. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/utils/createDefaultCTFormFromLayout.js +5 -1
  47. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/utils/createDefaultPluginsFormFromLayout.js +1 -2
  48. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/utils/formatContentTypesPermissionToAPI.js +2 -2
  49. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/utils/updateConditionsToFalse.js +4 -1
  50. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/utils/updateValues.js +1 -1
  51. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/PluginsAndSettings/SubCategory/utils/formatActions.js +1 -1
  52. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/utils/createArrayOfValues.js +2 -1
  53. package/admin/src/pages/SettingsPage/pages/Roles/ListPage/index.js +1 -1
  54. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/components/FormTransferTokenContainer/index.js +0 -41
  55. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/index.js +4 -6
  56. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/utils/schema.js +0 -1
  57. package/admin/src/pages/SettingsPage/pages/Users/ProtectedEditPage/index.js +2 -2
  58. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/utils/formatData.js +1 -7
  59. package/admin/src/permissions/index.js +1 -1
  60. package/admin/src/translations/en.json +6 -0
  61. package/admin/src/utils/getAttributesToDisplay.js +2 -4
  62. package/admin/src/utils/getExistingActions.js +1 -3
  63. package/admin/src/utils/sortLinks.js +1 -1
  64. package/build/{8580.b0dcf37c.chunk.js → 2263.4c5916f9.chunk.js} +61 -61
  65. package/build/4649.213b8a3b.chunk.js +30 -0
  66. package/build/6985.66cca29c.chunk.js +1 -0
  67. package/build/7259.aefb51e8.chunk.js +1 -0
  68. package/build/{7112.2bf13da3.chunk.js → 9505.dbe702ab.chunk.js} +6 -6
  69. package/build/{Admin-authenticatedApp.5aa08bf5.chunk.js → Admin-authenticatedApp.f50ad423.chunk.js} +3 -3
  70. package/build/{Admin_marketplace.0f6c8ee2.chunk.js → Admin_marketplace.02608d56.chunk.js} +1 -1
  71. package/build/{Admin_profilePage.d2a8f9ab.chunk.js → Admin_profilePage.76afeca0.chunk.js} +1 -1
  72. package/build/Admin_settingsPage.147755cd.chunk.js +9 -0
  73. package/build/admin-app.55dd7921.chunk.js +112 -0
  74. package/build/admin-edit-roles-page.cf543488.chunk.js +216 -0
  75. package/build/admin-edit-users.31c20712.chunk.js +10 -0
  76. package/build/admin-roles-list.489c501f.chunk.js +2 -0
  77. package/build/{admin-users.af8c3123.chunk.js → admin-users.3e111a7d.chunk.js} +1 -1
  78. package/build/{api-tokens-create-page.2a6e22bd.chunk.js → api-tokens-create-page.4328b852.chunk.js} +1 -1
  79. package/build/{api-tokens-edit-page.fa38cd63.chunk.js → api-tokens-edit-page.bce5050f.chunk.js} +1 -1
  80. package/build/content-manager.4480ae88.chunk.js +1137 -0
  81. package/build/content-type-builder-translation-en-json.7961593e.chunk.js +1 -0
  82. package/build/content-type-builder.af9abf1e.chunk.js +126 -0
  83. package/build/en-json.697b4bcf.chunk.js +1 -0
  84. package/build/index.html +1 -1
  85. package/build/main.af8c0f31.js +3790 -0
  86. package/build/review-workflows-settings.7a7dc773.chunk.js +57 -0
  87. package/build/runtime~main.5a95bee6.js +2 -0
  88. package/build/sso-settings-page.272b87c8.chunk.js +1 -0
  89. package/build/{upload-settings.0200561d.chunk.js → upload-settings.0875e973.chunk.js} +1 -1
  90. package/build/upload-translation-fr-json.baab9911.chunk.js +1 -0
  91. package/build/users-advanced-settings-page.1d3c14c7.chunk.js +1 -0
  92. package/build/{users-email-settings-page.a3c80419.chunk.js → users-email-settings-page.e8db68c4.chunk.js} +1 -1
  93. package/build/users-providers-settings-page.14cac425.chunk.js +1 -0
  94. package/build/users-roles-settings-page.2ea4de84.chunk.js +30 -0
  95. package/build/{webhook-edit-page.a2a2b7bb.chunk.js → webhook-edit-page.329141a5.chunk.js} +3 -3
  96. package/ee/admin/content-manager/pages/EditView/InformationBox/InformationBoxEE.js +92 -0
  97. package/ee/admin/content-manager/pages/EditView/InformationBox/index.js +3 -0
  98. package/ee/admin/hooks/useSettingsMenu/utils/customAdminLinks.js +12 -12
  99. package/ee/admin/hooks/useSettingsMenu/utils/customGlobalLinks.js +21 -13
  100. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/ReviewWorkflows.js +195 -0
  101. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/actions/index.js +42 -0
  102. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/AddStage/AddStage.js +87 -0
  103. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/AddStage/index.js +1 -0
  104. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/Stages/Stage/Stage.js +90 -0
  105. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/Stages/Stage/index.js +1 -0
  106. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/Stages/Stages.js +92 -0
  107. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/Stages/index.js +1 -0
  108. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/constants.js +6 -0
  109. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/hooks/useReviewWorkflows.js +35 -0
  110. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/index.js +3 -0
  111. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/reducer/index.js +121 -0
  112. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/utils/getWorkflowValidationSchema.js +25 -0
  113. package/ee/admin/pages/SettingsPage/utils/customRoutes.js +16 -2
  114. package/ee/admin/permissions/customPermissions.js +3 -0
  115. package/ee/server/bootstrap.js +16 -0
  116. package/ee/server/config/admin-actions.js +10 -0
  117. package/ee/server/constants/default-stages.json +14 -0
  118. package/ee/server/constants/default-workflow.json +1 -0
  119. package/ee/server/constants/workflows.js +8 -0
  120. package/ee/server/content-types/index.js +9 -0
  121. package/ee/server/content-types/workflow/index.js +34 -0
  122. package/ee/server/content-types/workflow-stage/index.js +41 -0
  123. package/ee/server/controllers/index.js +2 -0
  124. package/ee/server/controllers/workflows/index.js +36 -0
  125. package/ee/server/controllers/workflows/stages/index.js +95 -0
  126. package/ee/server/index.js +1 -0
  127. package/ee/server/middlewares/review-workflows.js +40 -0
  128. package/ee/server/migrations/review-workflows.js +39 -0
  129. package/ee/server/register.js +7 -0
  130. package/ee/server/routes/index.js +104 -0
  131. package/ee/server/services/index.js +4 -0
  132. package/ee/server/services/review-workflows/entity-service-decorator.js +42 -0
  133. package/ee/server/services/review-workflows/review-workflows.js +175 -0
  134. package/ee/server/services/review-workflows/stages.js +148 -0
  135. package/ee/server/services/review-workflows/workflows.js +25 -0
  136. package/ee/server/utils/index.js +8 -0
  137. package/ee/server/utils/persisted-tables.js +49 -0
  138. package/ee/server/utils/review-workflows.js +25 -0
  139. package/ee/server/utils/test.js +11 -0
  140. package/ee/server/validation/review-workflows.js +24 -0
  141. package/package.json +13 -13
  142. package/server/controllers/transfer/runner.js +2 -4
  143. package/server/routes/transfer.js +4 -13
  144. package/server/services/constants.js +0 -4
  145. package/server/services/permission/permissions-manager/sanitize.js +2 -0
  146. package/server/services/transfer/permission.js +1 -1
  147. package/server/services/transfer/token.js +31 -33
  148. package/server/validation/transfer/token.js +2 -10
  149. package/build/2637.679b590b.chunk.js +0 -1
  150. package/build/5563.451e91ee.chunk.js +0 -30
  151. package/build/7259.7744297b.chunk.js +0 -1
  152. package/build/Admin_settingsPage.489ec4eb.chunk.js +0 -9
  153. package/build/admin-app.4b313104.chunk.js +0 -112
  154. package/build/admin-edit-roles-page.3b196317.chunk.js +0 -216
  155. package/build/admin-edit-users.af3b0f15.chunk.js +0 -10
  156. package/build/admin-roles-list.0ad504a7.chunk.js +0 -2
  157. package/build/content-manager.f530e141.chunk.js +0 -1139
  158. package/build/content-type-builder-translation-en-json.e577d595.chunk.js +0 -1
  159. package/build/content-type-builder.6ecd201d.chunk.js +0 -126
  160. package/build/en-json.01a88a30.chunk.js +0 -1
  161. package/build/main.43b93ff3.js +0 -3843
  162. package/build/runtime~main.a40b1b57.js +0 -2
  163. package/build/sso-settings-page.5a8588ef.chunk.js +0 -1
  164. package/build/upload-translation-fr-json.84429734.chunk.js +0 -1
  165. package/build/users-advanced-settings-page.c0cae03a.chunk.js +0 -1
  166. package/build/users-providers-settings-page.5f86e45c.chunk.js +0 -1
  167. package/build/users-roles-settings-page.b02986df.chunk.js +0 -30
@@ -1,2 +0,0 @@
1
- (function(){"use strict";var b={},m={};function a(n){var i=m[n];if(i!==void 0)return i.exports;var t=m[n]={id:n,loaded:!1,exports:{}};return b[n].call(t.exports,t,t.exports,a),t.loaded=!0,t.exports}a.m=b,function(){var n=[];a.O=function(i,t,o,r){if(t){r=r||0;for(var s=n.length;s>0&&n[s-1][2]>r;s--)n[s]=n[s-1];n[s]=[t,o,r];return}for(var e=1/0,s=0;s<n.length;s++){for(var t=n[s][0],o=n[s][1],r=n[s][2],c=!0,l=0;l<t.length;l++)(r&!1||e>=r)&&Object.keys(a.O).every(function(j){return a.O[j](t[l])})?t.splice(l--,1):(c=!1,r<e&&(e=r));if(c){n.splice(s--,1);var f=o();f!==void 0&&(i=f)}}return i}}(),function(){a.n=function(n){var i=n&&n.__esModule?function(){return n.default}:function(){return n};return a.d(i,{a:i}),i}}(),function(){var n=Object.getPrototypeOf?function(t){return Object.getPrototypeOf(t)}:function(t){return t.__proto__},i;a.t=function(t,o){if(o&1&&(t=this(t)),o&8||typeof t=="object"&&t&&(o&4&&t.__esModule||o&16&&typeof t.then=="function"))return t;var r=Object.create(null);a.r(r);var s={};i=i||[null,n({}),n([]),n(n)];for(var e=o&2&&t;typeof e=="object"&&!~i.indexOf(e);e=n(e))Object.getOwnPropertyNames(e).forEach(function(c){s[c]=function(){return t[c]}});return s.default=function(){return t},a.d(r,s),r}}(),function(){a.d=function(n,i){for(var t in i)a.o(i,t)&&!a.o(n,t)&&Object.defineProperty(n,t,{enumerable:!0,get:i[t]})}}(),function(){a.f={},a.e=function(n){return Promise.all(Object.keys(a.f).reduce(function(i,t){return a.f[t](n,i),i},[]))}}(),function(){a.u=function(n){return""+({46:"content-type-builder-translation-zh-Hans-json",90:"i18n-translation-de-json",92:"api-tokens-edit-page",96:"email-translation-de-json",123:"ru-json",129:"i18n-translation-es-json",302:"sso-settings-page",320:"en-json",395:"tr-json",435:"email-translation-it-json",562:"no-json",585:"upload-translation-pt-json",606:"sk-json",615:"upload-translation-uk-json",695:"upload-settings",742:"content-type-builder-translation-th-json",744:"email-translation-cs-json",749:"th-json",801:"Admin-authenticatedApp",830:"he-json",931:"content-type-builder-translation-en-json",994:"content-manager",1001:"content-type-builder-translation-nl-json",1009:"upload-translation-ms-json",1011:"zh-json",1018:"email-translation-ko-json",1023:"content-type-builder-translation-it-json",1056:"upload-translation-tr-json",1157:"email-translation-pt-BR-json",1167:"users-permissions-translation-ko-json",1180:"i18n-translation-tr-json",1312:"ja-json",1331:"upload-translation-es-json",1375:"upload-translation-pt-BR-json",1377:"ko-json",1442:"users-permissions-translation-cs-json",1495:"email-settings-page",1674:"users-permissions-translation-ru-json",1930:"users-permissions-translation-pt-json",2137:"i18n-translation-fr-json",2151:"content-type-builder-translation-id-json",2246:"content-type-builder-translation-dk-json",2248:"gu-json",2282:"users-providers-settings-page",2380:"users-permissions-translation-tr-json",2411:"email-translation-tr-json",2464:"users-permissions-translation-de-json",2489:"upload-translation-ko-json",2492:"transfer-tokens-edit-page",2544:"admin-edit-roles-page",2553:"zh-Hans-json",2567:"content-type-builder-translation-ko-json",2603:"email-translation-en-json",2648:"email-translation-ar-json",2657:"content-type-builder-translation-cs-json",2671:"nl-json",2742:"users-permissions-translation-zh-Hans-json",2812:"audit-logs-settings-page",3025:"ms-json",3038:"upload-translation-sk-json",3043:"email-translation-zh-Hans-json",3095:"users-permissions-translation-sk-json",3098:"users-permissions-translation-fr-json",3166:"email-translation-pt-json",3206:"email-translation-nl-json",3278:"vi-json",3304:"content-type-builder-translation-tr-json",3340:"pt-json",3455:"admin-roles-list",3516:"ca-json",3530:"users-permissions-translation-vi-json",3552:"i18n-settings-page",3650:"upload",3677:"Admin_pluginsPage",3702:"users-permissions-translation-pl-json",3825:"email-translation-dk-json",3948:"content-type-builder-translation-pl-json",3964:"content-type-builder-translation-ms-json",3981:"Admin_homePage",4021:"upload-translation-de-json",4121:"webhook-list-page",4179:"users-permissions-translation-id-json",4263:"admin-edit-users",4299:"api-tokens-create-page",4302:"content-type-builder-translation-zh-json",4587:"email-translation-th-json",4693:"email-translation-fr-json",4804:"upload-translation-ru-json",4816:"transfer-tokens-create-page",4987:"upload-translation-pl-json",5053:"upload-translation-zh-json",5162:"webhook-edit-page",5199:"admin-users",5222:"upload-translation-it-json",5296:"i18n-translation-dk-json",5388:"email-translation-ru-json",5396:"users-permissions-translation-zh-json",5516:"Admin_marketplace",5538:"admin-app",5751:"email-translation-es-json",5880:"upload-translation-ja-json",5894:"hu-json",5895:"Admin_settingsPage",5905:"content-type-builder-list-view",5906:"content-type-builder-translation-pt-BR-json",6232:"upload-translation-th-json",6280:"i18n-translation-ko-json",6332:"hi-json",6377:"users-permissions-translation-dk-json",6434:"upload-translation-en-json",6460:"users-permissions-translation-en-json",6745:"email-translation-uk-json",6784:"email-translation-ms-json",6817:"it-json",6831:"upload-translation-zh-Hans-json",6836:"users-permissions-translation-uk-json",6848:"email-translation-zh-json",6901:"de-json",7048:"users-permissions-translation-nl-json",7094:"users-permissions-translation-ar-json",7155:"content-type-builder-translation-de-json",7186:"content-type-builder-translation-ru-json",7327:"email-translation-vi-json",7347:"highlight.js",7403:"uk-json",7465:"upload-translation-dk-json",7519:"cs-json",7663:"email-translation-id-json",7808:"i18n-translation-zh-json",7817:"users-permissions-translation-es-json",7828:"users-permissions-translation-th-json",7833:"upload-translation-fr-json",7846:"pl-json",7898:"dk-json",7934:"content-type-builder-translation-pt-json",7958:"ar-json",7997:"content-type-builder-translation-sk-json",8006:"fr-json",8056:"api-tokens-list-page",8175:"i18n-translation-en-json",8178:"email-translation-ja-json",8329:"content-type-builder-translation-sv-json",8342:"content-type-builder-translation-es-json",8360:"eu-json",8367:"es-json",8418:"users-email-settings-page",8423:"upload-translation-ca-json",8467:"users-permissions-translation-sv-json",8481:"email-translation-pl-json",8573:"content-type-builder-translation-uk-json",8736:"users-permissions-translation-pt-BR-json",8853:"users-roles-settings-page",8880:"content-type-builder",8897:"id-json",8907:"content-type-builder-translation-ja-json",8965:"content-type-builder-translation-fr-json",9220:"users-permissions-translation-ms-json",9303:"sv-json",9366:"i18n-translation-pl-json",9412:"email-translation-sk-json",9460:"users-advanced-settings-page",9497:"Admin_profilePage",9501:"Admin_InternalErrorPage",9502:"users-permissions-translation-ja-json",9511:"content-type-builder-translation-ar-json",9514:"Upload_ConfigureTheView",9600:"transfer-tokens-list-page",9647:"pt-BR-json",9726:"sa-json",9762:"i18n-translation-zh-Hans-json",9797:"upload-translation-he-json",9903:"ml-json",9905:"users-permissions-translation-it-json"}[n]||n)+"."+{46:"415577fb",90:"362384a6",92:"fa38cd63",96:"1b334230",123:"6a01cea6",129:"87b494d1",302:"5a8588ef",320:"01a88a30",395:"bac5dbd3",435:"a2ed8c78",562:"19a2dbfa",585:"6b937fdf",606:"2374f129",615:"9950466a",695:"0200561d",742:"6fe3ed55",744:"6eaeec6a",749:"5f659396",801:"5aa08bf5",830:"3cf0b48a",931:"e577d595",994:"f530e141",1001:"40bbc562",1009:"74f6d746",1011:"3529f1e5",1018:"4de49b23",1023:"13b3c26a",1056:"74117e5c",1157:"81cca553",1167:"357d7a33",1180:"10f0600d",1312:"81b6d1e3",1331:"ba2eb03a",1375:"d1704f0b",1377:"4539f4ba",1442:"7e23424a",1495:"4bdbef9a",1674:"20e177db",1930:"a7eda429",2137:"57ddc77e",2151:"ee3b36bb",2246:"e05583e9",2248:"4d667d0c",2282:"5f86e45c",2380:"2bd7ff98",2411:"e6c0f8fc",2464:"a6fb670f",2489:"a52eab64",2492:"00ee1c74",2544:"3b196317",2553:"4cfef87d",2567:"8a274be5",2603:"4211d4d0",2637:"679b590b",2648:"88304564",2657:"a5b299ca",2671:"98345913",2742:"6ab714ee",2812:"7be97e82",3025:"0eddffd9",3038:"483a18f6",3043:"c6841563",3095:"7f37180f",3098:"7e55bbbb",3166:"2a2a0643",3206:"377bdd9f",3278:"ee4c5537",3304:"cea4d226",3340:"ee554a41",3455:"0ad504a7",3516:"43e14418",3530:"6722a8a2",3552:"2bb5be96",3650:"c7da1611",3677:"15e3b0fd",3702:"0a7287d1",3825:"85402492",3948:"24a34349",3964:"2d29c1e0",3981:"1411fb7c",4021:"420c943b",4049:"64715f20",4121:"029957a4",4179:"a5a0fb59",4263:"af3b0f15",4299:"2a6e22bd",4302:"faedd610",4587:"660fa9a8",4693:"78be2787",4804:"675f6b93",4816:"a1f14bb1",4987:"426f31c9",5053:"e1dd6eb2",5162:"a2a2b7bb",5199:"af8c3123",5222:"e87d7966",5296:"89401417",5388:"6bce37dd",5396:"7978eaa6",5516:"0f6c8ee2",5538:"4b313104",5563:"451e91ee",5751:"0b6b1006",5880:"44b88e7a",5894:"fe71e6c8",5895:"489ec4eb",5905:"cf38fe2f",5906:"97f71a9d",6232:"3847dae0",6280:"ef4f9471",6332:"323be97d",6377:"60e50f48",6434:"8b7573ce",6460:"4b302272",6745:"bd1fb6bf",6784:"7390477e",6817:"bfe27ed8",6831:"db163b6b",6836:"6a0a1572",6848:"7a2232ea",6901:"fcac7381",7048:"c9f92a3c",7094:"7d87d54d",7112:"2bf13da3",7155:"0979cccb",7186:"54d11230",7259:"7744297b",7327:"9fb7e6d7",7347:"26ef649f",7403:"b7e38370",7465:"bbb2fa05",7519:"4b44411c",7663:"c97239fe",7808:"bef2dc07",7817:"35007573",7828:"1e9c0247",7833:"84429734",7846:"59a5dab3",7898:"e34cad0d",7934:"ddb44f8c",7958:"39e54aba",7997:"626c9493",8006:"f66c3211",8056:"93f24348",8175:"60af6722",8178:"63eebd02",8329:"59f5e1e5",8342:"fe4daad8",8360:"fb17c8f9",8367:"715b6fd8",8418:"a3c80419",8423:"57954414",8467:"17187818",8469:"853c822b",8481:"97d0db97",8573:"c4524247",8580:"b0dcf37c",8736:"1b6d2920",8853:"b02986df",8880:"6ecd201d",8897:"41e07c46",8907:"9be0d5b2",8965:"b1eb52f6",9220:"c83f87c4",9303:"ae6e71ea",9366:"dfac513d",9412:"53da2fcd",9460:"c0cae03a",9497:"d2a8f9ab",9501:"4ad8b0df",9502:"891fe76e",9511:"56d8fcf4",9514:"34dde278",9600:"ce37354b",9647:"9410688b",9726:"6359a11c",9762:"757ce62d",9797:"0a830937",9816:"01ee964f",9903:"8988e374",9905:"0705465d"}[n]+".chunk.js"}}(),function(){a.miniCssF=function(n){}}(),function(){a.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch{if(typeof window=="object")return window}}()}(),function(){a.o=function(n,i){return Object.prototype.hasOwnProperty.call(n,i)}}(),function(){var n={},i="@strapi/admin:";a.l=function(t,o,r,s){if(n[t]){n[t].push(o);return}var e,c;if(r!==void 0)for(var l=document.getElementsByTagName("script"),f=0;f<l.length;f++){var d=l[f];if(d.getAttribute("src")==t||d.getAttribute("data-webpack")==i+r){e=d;break}}e||(c=!0,e=document.createElement("script"),e.charset="utf-8",e.timeout=120,a.nc&&e.setAttribute("nonce",a.nc),e.setAttribute("data-webpack",i+r),e.src=t),n[t]=[o];var u=function(g,j){e.onerror=e.onload=null,clearTimeout(p);var h=n[t];if(delete n[t],e.parentNode&&e.parentNode.removeChild(e),h&&h.forEach(function(y){return y(j)}),g)return g(j)},p=setTimeout(u.bind(null,void 0,{type:"timeout",target:e}),12e4);e.onerror=u.bind(null,e.onerror),e.onload=u.bind(null,e.onload),c&&document.head.appendChild(e)}}(),function(){a.r=function(n){typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(n,"__esModule",{value:!0})}}(),function(){a.nmd=function(n){return n.paths=[],n.children||(n.children=[]),n}}(),function(){a.p="/admin/"}(),function(){a.b=document.baseURI||self.location.href;var n={1303:0};a.f.j=function(o,r){var s=a.o(n,o)?n[o]:void 0;if(s!==0)if(s)r.push(s[2]);else if(o!=1303){var e=new Promise(function(d,u){s=n[o]=[d,u]});r.push(s[2]=e);var c=a.p+a.u(o),l=new Error,f=function(d){if(a.o(n,o)&&(s=n[o],s!==0&&(n[o]=void 0),s)){var u=d&&(d.type==="load"?"missing":d.type),p=d&&d.target&&d.target.src;l.message="Loading chunk "+o+` failed.
2
- (`+u+": "+p+")",l.name="ChunkLoadError",l.type=u,l.request=p,s[1](l)}};a.l(c,f,"chunk-"+o,o)}else n[o]=0},a.O.j=function(o){return n[o]===0};var i=function(o,r){var s=r[0],e=r[1],c=r[2],l,f,d=0;if(s.some(function(p){return n[p]!==0})){for(l in e)a.o(e,l)&&(a.m[l]=e[l]);if(c)var u=c(a)}for(o&&o(r);d<s.length;d++)f=s[d],a.o(n,f)&&n[f]&&n[f][0](),n[f]=0;return a.O(u)},t=self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[];t.forEach(i.bind(null,0)),t.push=i.bind(null,t.push.bind(t))}(),function(){a.nc=void 0}()})();
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[302],{26930:function(A,u,a){a.r(u),a.d(u,{SingleSignOn:function(){return f},default:function(){return L}});var e=a(32735),l=a(13478),R=a(57269),s=a(39161),E=a(5636),v=a(89793),b=a.n(v),C=a(64421),g=a(8888),c=a(72041),r=a(5173),M=r.Ry().shape({autoRegister:r.Xg().required(l.translatedErrors.required),defaultRole:r.nK().when("autoRegister",(t,i)=>t?i.required(l.translatedErrors.required):i.nullable())});const m={...c.Z.settings.sso,readRoles:c.Z.settings.roles.read},f=()=>{const{formatMessage:t}=(0,E.useIntl)(),{isLoading:i,allowedActions:{canUpdate:h,canReadRoles:O}}=(0,l.useRBAC)(m),[{formErrors:o,initialData:y,isLoading:I,modifiedData:d,showHeaderButtonLoader:P},H,{handleChange:S,handleSubmit:D}]=(0,g.G4)((0,C.IF)("providers/options"),M,()=>{},["autoRegister","defaultRole"]),{roles:F}=(0,g.bF)(O);(0,l.useFocusWhenNavigate)();const T=i||I;(0,e.useEffect)(()=>{if(o.defaultRole){const n='[name="defaultRole"]';document.querySelector(n).focus()}},[o]);const p=b()(y,d);return e.createElement(s.Layout,null,e.createElement(l.SettingsPageTitle,{name:"SSO"}),e.createElement(s.Main,{tabIndex:-1},e.createElement("form",{onSubmit:n=>{if(p){n.preventDefault();return}D(n)}},e.createElement(s.HeaderLayout,{primaryAction:e.createElement(s.Button,{"data-testid":"save-button",disabled:p,loading:P,startIcon:e.createElement(R.Check,null),type:"submit",size:"L"},t({id:"global.save",defaultMessage:"Save"})),title:t({id:"Settings.sso.title",defaultMessage:"Single Sign-On"}),subtitle:t({id:"Settings.sso.description",defaultMessage:"Configure the settings for the Single Sign-On feature."})}),e.createElement(s.ContentLayout,null,T?e.createElement(l.LoadingIndicatorPage,null):e.createElement(s.Flex,{direction:"column",alignItems:"stretch",gap:4,background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(s.Typography,{variant:"delta",as:"h2"},t({id:"global.settings",defaultMessage:"Settings"})),e.createElement(s.Grid,{gap:4},e.createElement(s.GridItem,{col:6,m:6,s:12},e.createElement(s.ToggleInput,{"aria-label":"autoRegister","data-testid":"autoRegister",disabled:!h,checked:d.autoRegister,hint:t({id:"Settings.sso.form.registration.description",defaultMessage:"Create new user on SSO login if no account exists"}),label:t({id:"Settings.sso.form.registration.label",defaultMessage:"Auto-registration"}),name:"autoRegister",offLabel:t({id:"app.components.ToggleCheckbox.off-label",defaultMessage:"Off"}),onLabel:t({id:"app.components.ToggleCheckbox.on-label",defaultMessage:"On"}),onChange:n=>{S({target:{name:"autoRegister",value:n.target.checked}})}})),e.createElement(s.GridItem,{col:6,m:6,s:12},e.createElement(s.Select,{disabled:!h,hint:t({id:"Settings.sso.form.defaultRole.description",defaultMessage:"It will attach the new authenticated user to the selected role"}),error:o.defaultRole?t({id:o.defaultRole.id,defaultMessage:o.defaultRole.id}):"",label:t({id:"Settings.sso.form.defaultRole.label",defaultMessage:"Default role"}),name:"defaultRole",onChange:n=>{S({target:{name:"defaultRole",value:n}})},placeholder:t({id:"components.InputSelect.option.placeholder",defaultMessage:"Choose here"}),value:d.defaultRole},F.map(({id:n,name:x})=>e.createElement(s.Option,{key:n,value:n.toString()},x))))))))))};var L=()=>e.createElement(l.CheckPagePermissions,{permissions:m.main},e.createElement(f,null))}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[7833],{49713:function(e){e.exports=JSON.parse(`{"button.next":"Suivant","checkControl.crop-duplicate":"Dupliquer & recadrer le m\xE9dia","checkControl.crop-original":"Recadrer le m\xE9dia d'origine","control-card.add":"Ajouter","control-card.cancel":"Annuler","control-card.copy-link":"Copier le lien","control-card.crop":"Recadrer","control-card.download":"T\xE9l\xE9charger","control-card.edit":"\xC9diter","control-card.replace-media":"Remplacer le m\xE9dia","control-card.save":"Sauvegarder","filter.add":"Ajouter un filtre","form.button.replace-media":"Remplacer le m\xE9dia","form.input.decription.file-alt":"Ce texte sera affich\xE9 si le m\xE9dia ne peut pas \xEAtre affich\xE9.","form.input.label.file-alt":"Texte alternatif","form.input.label.file-caption":"L\xE9gende","form.input.label.file-name":"Nom du fichier","form.upload-url.error.url.invalid":"Une URL n'est pas valide","form.upload-url.error.url.invalids":"{number} URLs ne sont pas valides","header.actions.upload-assets":"Importer des m\xE9dias","header.content.assets":"{numberFolders, plural, one {1 dossier} other {# dossiers}} - {numberAssets, plural, one {1 m\xE9dia} other {# m\xE9dias}}","input.button.label":"Parcourir les fichiers","input.label-bold":"Glissez & d\xE9posez","input.label-normal":"pour importer ou","input.placeholder":"Cliquez pour s\xE9lectionner un m\xE9dia ou glissez & d\xE9posez un fichier dans cette zone","input.placeholder.icon":"Lacher le fichier dans cette zone","input.url.description":"S\xE9parez vos URLs par un retour \xE0 la ligne.","input.url.label":"URL","list.assets-empty.subtitle":"Ajoutez-en un \xE0 la liste.","list.assets-empty.title":"Il n'y a pas encore de m\xE9dia","list.assets-empty.title-withSearch":"Il n'y a aucun m\xE9dia avec les filtres appliqu\xE9s","list.assets.loading-asset":"Chargement du contenu pour le media {path}","list.assets.not-supported-content":"Preview non disponible","list.assets.preview-asset":"Preview de la vid\xE9o {path}","list.assets.type-not-allowed":"Ce type de fichier n'est pas autoris\xE9.","modal.file-details.date":"Date","modal.file-details.dimensions":"Dimensions","modal.file-details.extension":"Extension","modal.file-details.size":"Taille","modal.header.browse":"Importer des m\xE9dias","modal.header.file-detail":"D\xE9tails","modal.header.pending-assets":"M\xE9dias en attente","modal.header.select-files":"Fichiers s\xE9lectionn\xE9s","modal.nav.browse":"parcourir","modal.nav.computer":"depuis l'ordinateur","modal.nav.selected":"s\xE9lectionn\xE9(s)","modal.nav.url":"depuis une url","modal.selected-list.sub-header-subtitle":"Glissez-d\xE9posez pour r\xE9organiser les m\xE9dias dans le champ","modal.upload-list.sub-header-subtitle":"G\xE9rez les m\xE9dias avant de les ajouter \xE0 la m\xE9diath\xE8que","modal.upload-list.sub-header.button":"Ajouter plus de m\xE9dias","plugin.description.long":"Gestion des fichiers multim\xE9dias.","plugin.description.short":"Gestion des fichiers multim\xE9dias.","plugin.name":"M\xE9diath\xE8que","search.placeholder":"Rechercher un m\xE9dia...","settings.blockTitle":"Gestion des fichiers","settings.form.autoOrientation.description":"Faire pivoter automatiquement l'image selon les EXIF d'orientation","settings.form.autoOrientation.label":"Activer l'orientation automatique","settings.form.responsiveDimensions.description":"G\xE9n\xE8re automatiquement plusieurs formats (grand, moyen, petit) du m\xE9dia import\xE9","settings.form.responsiveDimensions.label":"Activer le t\xE9l\xE9chargement \\"responsive friendly\\"","settings.form.sizeOptimization.description":"Activer cette option r\xE9duira la taille des images en baissant l\xE9g\xE8rement leur qualit\xE9","settings.form.sizeOptimization.label":"Optimisation de la taille","settings.form.videoPreview.description":"G\xE9n\xE8re un aper\xE7u de six secondes de la vid\xE9o (GIF)","settings.form.videoPreview.label":"Aper\xE7u","settings.header.label":"M\xE9diath\xE8que - R\xE9glages","settings.section.image.label":"IMAGE","settings.section.video.label":"VID\xC9O","settings.sub-header.label":"Configurer les param\xE8tres de la m\xE9diath\xE8que","sort.created_at_asc":"Importations les plus anciennes","sort.created_at_desc":"Importations les plus r\xE9centes","sort.label":"Trier par","sort.name_asc":"Ordre alphab\xE9tique (A \xE0 Z)","sort.name_desc":"Ordre alphab\xE9tique invers\xE9 (Z \xE0 A)","sort.updated_at_asc":"Modifications les plus anciennes","sort.updated_at_desc":"Modifications les plus r\xE9centes","window.confirm.close-modal.file":"\xCAtes-vous s\xFBr ? Vos modifications seront perdues.","window.confirm.close-modal.files":"\xCAtes-vous s\xFBr ? Certains fichiers n'ont pas encore \xE9t\xE9 t\xE9l\xE9charg\xE9s."}`)}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[9460],{84764:function(A,f,n){n.r(f),n.d(f,{default:function(){return P}});var e=n(32735),p=n(84968),h=n(5636),E=n(83281),i=n(13478),a=n(39161),y=n(57269),l=n(88369),t=n(59677),m=[{intlLabel:{id:(0,t.OB)("EditForm.inputToggle.label.email"),defaultMessage:"One account per email address"},description:{id:(0,t.OB)("EditForm.inputToggle.description.email"),defaultMessage:"Disallow the user to create multiple accounts using the same email address with different authentication providers."},name:"unique_email",type:"bool",size:{col:12,xs:12}},{intlLabel:{id:(0,t.OB)("EditForm.inputToggle.label.sign-up"),defaultMessage:"Enable sign-ups"},description:{id:(0,t.OB)("EditForm.inputToggle.description.sign-up"),defaultMessage:"When disabled (OFF), the registration process is forbidden. No one can subscribe anymore no matter the used provider."},name:"allow_register",type:"bool",size:{col:12,xs:12}},{intlLabel:{id:(0,t.OB)("EditForm.inputToggle.label.email-reset-password"),defaultMessage:"Reset password page"},description:{id:(0,t.OB)("EditForm.inputToggle.description.email-reset-password"),defaultMessage:"URL of your application's reset password page."},placeholder:{id:(0,t.OB)("EditForm.inputToggle.placeholder.email-reset-password"),defaultMessage:"ex: https://youtfrontend.com/reset-password"},name:"email_reset_password",type:"text",size:{col:6,xs:12}},{intlLabel:{id:(0,t.OB)("EditForm.inputToggle.label.email-confirmation"),defaultMessage:"Enable email confirmation"},description:{id:(0,t.OB)("EditForm.inputToggle.description.email-confirmation"),defaultMessage:"When enabled (ON), new registered users receive a confirmation email."},name:"email_confirmation",type:"bool",size:{col:12,xs:12}},{intlLabel:{id:(0,t.OB)("EditForm.inputToggle.label.email-confirmation-redirection"),defaultMessage:"Redirection url"},description:{id:(0,t.OB)("EditForm.inputToggle.description.email-confirmation-redirection"),defaultMessage:"After you confirmed your email, choose where you will be redirected."},placeholder:{id:(0,t.OB)("EditForm.inputToggle.placeholder.email-confirmation-redirection"),defaultMessage:"ex: https://youtfrontend.com/email-confirmation"},name:"email_confirmation_redirection",type:"text",size:{col:6,xs:12}}],r=n(5173);const u=new RegExp("(^$)|((.+:\\/\\/.*)(d*)\\/?(.*))");var L=r.Ry().shape({email_confirmation_redirection:r.nK().when("email_confirmation",{is:!0,then:r.Z_().matches(u).required(),otherwise:r.Z_().nullable()}),email_reset_password:r.Z_(i.translatedErrors.string).matches(u,i.translatedErrors.regex).nullable()});const T=async()=>{const{get:s}=(0,i.getFetchClient)(),{data:d}=await s((0,t.Gc)("advanced"));return d},R=s=>{const{put:d}=(0,i.getFetchClient)();return d((0,t.Gc)("advanced"),s)},w=()=>e.createElement(i.CheckPagePermissions,{permissions:l.Z.readAdvancedSettings},e.createElement(C,null)),C=()=>{const{formatMessage:s}=(0,h.useIntl)(),d=(0,i.useNotification)(),{lockApp:x,unlockApp:O}=(0,i.useOverlayBlocker)(),{notifyStatus:N}=(0,a.useNotifyAT)(),I=(0,p.useQueryClient)();(0,i.useFocusWhenNavigate)();const z=(0,e.useMemo)(()=>({update:l.Z.updateAdvancedSettings}),[]),{isLoading:G,allowedActions:{canUpdate:Z}}=(0,i.useRBAC)(z),{status:k,data:M}=(0,p.useQuery)("advanced",()=>T(),{onSuccess(){N(s({id:(0,t.OB)("Form.advancedSettings.data.loaded"),defaultMessage:"Advanced settings data has been loaded"}))},onError(){d({type:"warning",message:{id:(0,t.OB)("notification.error"),defaultMessage:"An error occured"}})}}),H=G||k!=="success",B=(0,p.useMutation)(c=>R(c),{async onSuccess(){await I.invalidateQueries("advanced"),d({type:"success",message:{id:(0,t.OB)("notification.success.saved"),defaultMessage:"Saved"}}),O()},onError(){d({type:"warning",message:{id:(0,t.OB)("notification.error"),defaultMessage:"An error occured"}}),O()},refetchActive:!0}),{isLoading:U}=B,D=async c=>{x();const g=c.email_confirmation?c.email_confirmation_redirection:"";await B.mutateAsync({...c,email_confirmation_redirection:g})};return H?e.createElement(a.Main,{"aria-busy":"true"},e.createElement(i.SettingsPageTitle,{name:s({id:(0,t.OB)("HeaderNav.link.advancedSettings"),defaultMessage:"Advanced Settings"})}),e.createElement(a.HeaderLayout,{title:s({id:(0,t.OB)("HeaderNav.link.advancedSettings"),defaultMessage:"Advanced Settings"})}),e.createElement(a.ContentLayout,null,e.createElement(i.LoadingIndicatorPage,null))):e.createElement(a.Main,{"aria-busy":U},e.createElement(i.SettingsPageTitle,{name:s({id:(0,t.OB)("HeaderNav.link.advancedSettings"),defaultMessage:"Advanced Settings"})}),e.createElement(E.Formik,{onSubmit:D,initialValues:M.settings,validateOnChange:!1,validationSchema:L,enableReinitialize:!0},({errors:c,values:g,handleChange:F,isSubmitting:Q})=>e.createElement(i.Form,null,e.createElement(a.HeaderLayout,{title:s({id:(0,t.OB)("HeaderNav.link.advancedSettings"),defaultMessage:"Advanced Settings"}),primaryAction:e.createElement(a.Button,{loading:Q,type:"submit",disabled:!Z,startIcon:e.createElement(y.Check,null),size:"S"},s({id:"global.save",defaultMessage:"Save"}))}),e.createElement(a.ContentLayout,null,e.createElement(a.Box,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(a.Flex,{direction:"column",alignItems:"stretch",gap:4},e.createElement(a.Typography,{variant:"delta",as:"h2"},s({id:"global.settings",defaultMessage:"Settings"})),e.createElement(a.Grid,{gap:6},e.createElement(a.GridItem,{col:6,s:12},e.createElement(a.Select,{label:s({id:(0,t.OB)("EditForm.inputSelect.label.role"),defaultMessage:"Default role for authenticated users"}),value:g.default_role,hint:s({id:(0,t.OB)("EditForm.inputSelect.description.role"),defaultMessage:"It will attach the new authenticated user to the selected role."}),onChange:o=>F({target:{name:"default_role",value:o}})},M.roles.map(o=>e.createElement(a.Option,{key:o.type,value:o.type},o.name)))),m.map(o=>{let b=g[o.name];return b||(b=o.type==="bool"?!1:""),e.createElement(a.GridItem,{key:o.name,...o.size},e.createElement(i.GenericInput,{...o,value:b,error:c[o.name],disabled:o.name==="email_confirmation_redirection"&&g.email_confirmation===!1,onChange:F}))}))))))))};var P=w},59677:function(A,f,n){n.d(f,{YX:function(){return h},Gc:function(){return a},OB:function(){return y.Z}});var e=n(92891),h=l=>Object.keys(l).reduce((t,S)=>{const m=l[S].controllers,r=Object.keys(m).reduce((u,v)=>((0,e.isEmpty)(m[v])||(u[v]=m[v]),u),{});return(0,e.isEmpty)(r)||(t[S]={controllers:r}),t},{}),E=n(90201),a=l=>`/${E.Z}/${l}`,y=n(82069)}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[2282],{51509:function(Y,B,n){n.r(B),n.d(B,{ProvidersPage:function(){return V},default:function(){return le}});var e=n(32735),O=n(5636),s=n(13478),Z=n(23973),W=n.n(Z),S=n(23940),U=n.n(S),t=n(39161),R=n(57269),P=n(84968),r=n(5173),l=n(59677);const M={id:(0,l.OB)("PopUpForm.Providers.redirectURL.front-end.label"),defaultMessage:"The redirect URL to your front-end app"},T={id:"http://www.client-app.com",defaultMessage:"http://www.client-app.com"},x={id:(0,l.OB)("PopUpForm.Providers.enabled.description"),defaultMessage:"If disabled, users won't be able to use this provider."},w={id:(0,l.OB)("PopUpForm.Providers.enabled.label"),defaultMessage:"Enable"},G={id:(0,l.OB)("PopUpForm.Providers.key.label"),defaultMessage:"Client ID"},X={id:(0,l.OB)("PopUpForm.Providers.redirectURL.label"),defaultMessage:"The redirect URL to add in your {provider} application configurations"},C={id:(0,l.OB)("PopUpForm.Providers.key.placeholder"),defaultMessage:"TEXT"},$={id:(0,l.OB)("PopUpForm.Providers.secret.label"),defaultMessage:"Client Secret"};var I={email:{form:[[{intlLabel:w,name:"enabled",type:"bool",description:x,size:6}]],schema:r.Ry().shape({enabled:r.Xg().required(s.translatedErrors.required)})},providers:{form:[[{intlLabel:w,name:"enabled",type:"bool",description:x,size:6,validations:{required:!0}}],[{intlLabel:G,name:"key",type:"text",placeholder:C,size:12,validations:{required:!0}}],[{intlLabel:$,name:"secret",type:"text",placeholder:C,size:12,validations:{required:!0}}],[{intlLabel:M,placeholder:T,name:"callback",type:"text",size:12,validations:{required:!0}}],[{intlLabel:X,name:"noName",type:"text",validations:{},size:12,disabled:!0}]],schema:r.Ry().shape({enabled:r.Xg().required(s.translatedErrors.required),key:r.Z_().when("enabled",{is:!0,then:r.Z_().required(s.translatedErrors.required),otherwise:r.Z_()}),secret:r.Z_().when("enabled",{is:!0,then:r.Z_().required(s.translatedErrors.required),otherwise:r.Z_()}),callback:r.Z_().when("enabled",{is:!0,then:r.Z_().required(s.translatedErrors.required),otherwise:r.Z_()})})},providersWithSubdomain:{form:[[{intlLabel:w,name:"enabled",type:"bool",description:x,size:6,validations:{required:!0}}],[{intlLabel:G,name:"key",type:"text",placeholder:C,size:12,validations:{required:!0}}],[{intlLabel:$,name:"secret",type:"text",placeholder:C,size:12,validations:{required:!0}}],[{intlLabel:{id:(0,l.OB)({id:"PopUpForm.Providers.jwksurl.label"}),defaultMessage:"JWKS URL"},name:"jwksurl",type:"text",placeholder:C,size:12,validations:{required:!1}}],[{intlLabel:{id:(0,l.OB)("PopUpForm.Providers.subdomain.label"),defaultMessage:"Host URI (Subdomain)"},name:"subdomain",type:"text",placeholder:{id:(0,l.OB)("PopUpForm.Providers.subdomain.placeholder"),defaultMessage:"my.subdomain.com"},size:12,validations:{required:!0}}],[{intlLabel:M,placeholder:T,name:"callback",type:"text",size:12,validations:{required:!0}}],[{intlLabel:X,name:"noName",type:"text",validations:{},size:12,disabled:!0}]],schema:r.Ry().shape({enabled:r.Xg().required(s.translatedErrors.required),key:r.Z_().when("enabled",{is:!0,then:r.Z_().required(s.translatedErrors.required),otherwise:r.Z_()}),secret:r.Z_().when("enabled",{is:!0,then:r.Z_().required(s.translatedErrors.required),otherwise:r.Z_()}),subdomain:r.Z_().when("enabled",{is:!0,then:r.Z_().required(s.translatedErrors.required),otherwise:r.Z_()}),callback:r.Z_().when("enabled",{is:!0,then:r.Z_().required(s.translatedErrors.required),otherwise:r.Z_()})})}};const _=async i=>{try{const{get:d}=(0,s.getFetchClient)(),{data:m}=await d((0,l.Gc)("providers"));return m}catch{throw i({type:"warning",message:{id:"notification.error"}}),new Error("error")}},ee=i=>{const{put:d}=(0,s.getFetchClient)();return d((0,l.Gc)("providers"),i)};var te=n(92891),ae=i=>(0,te.sortBy)(Object.keys(i).reduce((d,m)=>{const{icon:g,enabled:c,subdomain:b}=i[m],p=g==="envelope"?["fas","envelope"]:["fab",g];return b!==void 0?d.push({name:m,icon:p,enabled:c,subdomain:b}):d.push({name:m,icon:p,enabled:c}),d},[]),"name"),Q=n(88369),re=n(60216),a=n.n(re),se=n(83281);const z=({description:i,disabled:d,intlLabel:m,error:g,name:c,onChange:b,placeholder:p,providerToEditName:y,type:h,value:o})=>{const{formatMessage:f}=(0,O.useIntl)(),E=c==="noName"?`${strapi.backendURL}/api/connect/${y}/callback`:o,L=f({id:m.id,defaultMessage:m.defaultMessage},{provider:y,...m.values}),v=i?f({id:i.id,defaultMessage:i.defaultMessage},{provider:y,...i.values}):"";if(h==="bool")return e.createElement(t.ToggleInput,{"aria-label":c,checked:o,disabled:d,hint:v,label:L,name:c,offLabel:f({id:"app.components.ToggleCheckbox.off-label",defaultMessage:"Off"}),onLabel:f({id:"app.components.ToggleCheckbox.on-label",defaultMessage:"On"}),onChange:q=>{b({target:{name:c,value:q.target.checked}})}});const A=p?f({id:p.id,defaultMessage:p.defaultMessage},{...p.values}):"",j=g?f({id:g,defaultMessage:g}):"";return e.createElement(t.TextInput,{"aria-label":c,disabled:d,error:j,label:L,name:c,onChange:b,placeholder:A,type:h,value:E})};z.defaultProps={description:null,disabled:!1,error:"",placeholder:null,value:""},z.propTypes={description:a().shape({id:a().string.isRequired,defaultMessage:a().string.isRequired,values:a().object}),disabled:a().bool,error:a().string,intlLabel:a().shape({id:a().string.isRequired,defaultMessage:a().string.isRequired,values:a().object}).isRequired,name:a().string.isRequired,onChange:a().func.isRequired,placeholder:a().shape({id:a().string.isRequired,defaultMessage:a().string.isRequired,values:a().object}),providerToEditName:a().string.isRequired,type:a().string.isRequired,value:a().oneOfType([a().bool,a().string])};var ne=z;const N=({headerBreadcrumbs:i,initialData:d,isSubmiting:m,layout:g,isOpen:c,onSubmit:b,onToggle:p,providerToEditName:y})=>{const{formatMessage:h}=(0,O.useIntl)();return c?e.createElement(t.ModalLayout,{onClose:p,labelledBy:"title"},e.createElement(t.ModalHeader,null,e.createElement(t.Breadcrumbs,{label:i.join(", ")},i.map(o=>e.createElement(t.Crumb,{key:o},o)))),e.createElement(se.Formik,{onSubmit:o=>b(o),initialValues:d,validationSchema:g.schema,validateOnChange:!1},({errors:o,handleChange:f,values:E})=>e.createElement(s.Form,null,e.createElement(t.ModalBody,null,e.createElement(t.Flex,{direction:"column",alignItems:"stretch",gap:1},e.createElement(t.Grid,{gap:5},g.form.map(L=>L.map(v=>e.createElement(t.GridItem,{key:v.name,col:v.size,xs:12},e.createElement(ne,{...v,error:o[v.name],onChange:f,value:E[v.name],providerToEditName:y}))))))),e.createElement(t.ModalFooter,{startActions:e.createElement(t.Button,{variant:"tertiary",onClick:p,type:"button"},h({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(t.Button,{type:"submit",loading:m},h({id:"global.save",defaultMessage:"Save"}))})))):null};N.defaultProps={initialData:null,providerToEditName:null},N.propTypes={headerBreadcrumbs:a().arrayOf(a().string).isRequired,initialData:a().object,layout:a().shape({form:a().arrayOf(a().array),schema:a().object}).isRequired,isOpen:a().bool.isRequired,isSubmiting:a().bool.isRequired,onSubmit:a().func.isRequired,onToggle:a().func.isRequired,providerToEditName:a().string};var ie=N;const V=()=>{const{formatMessage:i}=(0,O.useIntl)();(0,s.useFocusWhenNavigate)();const{notifyStatus:d}=(0,t.useNotifyAT)(),m=(0,P.useQueryClient)(),{trackUsage:g}=(0,s.useTracking)(),c=(0,e.useRef)(g),[b,p]=(0,e.useState)(!1),[y,h]=(0,e.useState)(!1),[o,f]=(0,e.useState)(null),E=(0,s.useNotification)(),{lockApp:L,unlockApp:v}=(0,s.useOverlayBlocker)(),A=(0,e.useMemo)(()=>({update:Q.Z.updateProviders}),[]),{isLoading:j,allowedActions:{canUpdate:q}}=(0,s.useRBAC)(A),{isLoading:oe,data:k,isFetching:de}=(0,P.useQuery)("get-providers",()=>_(E),{onSuccess(){d(i({id:(0,l.OB)("Providers.data.loaded"),defaultMessage:"Providers have been loaded"}))},initialData:{}}),ue=oe||de,ce=(0,P.useMutation)(ee,{async onSuccess(){await m.invalidateQueries("get-providers"),E({type:"info",message:{id:(0,l.OB)("notification.success.submit")}}),c.current("didEditAuthenticationProvider"),h(!1),D(),v()},onError(){E({type:"warning",message:{id:"notification.error"}}),v(),h(!1)},refetchActive:!1}),F=(0,e.useMemo)(()=>ae(k),[k]),me=F.length,J=(0,e.useMemo)(()=>{if(!o)return!1;const u=F.find(H=>H.name===o);return W()(u,"subdomain")},[F,o]),pe=i({id:(0,l.OB)("HeaderNav.link.providers"),defaultMessage:"Providers"}),ge=(0,e.useMemo)(()=>o==="email"?I.email:J?I.providersWithSubdomain:I.providers,[o,J]),D=()=>{p(u=>!u)},K=u=>{q&&(f(u.name),D())},fe=async u=>{h(!0),L(),c.current("willEditAuthenticationProvider");const H={...k,[o]:u};ce.mutate({providers:H})};return e.createElement(t.Layout,null,e.createElement(s.SettingsPageTitle,{name:pe}),e.createElement(t.Main,null,e.createElement(t.HeaderLayout,{title:i({id:(0,l.OB)("HeaderNav.link.providers"),defaultMessage:"Providers"})}),ue||j?e.createElement(s.LoadingIndicatorPage,null):e.createElement(t.ContentLayout,null,e.createElement(t.Table,{colCount:3,rowCount:me+1},e.createElement(t.Thead,null,e.createElement(t.Tr,null,e.createElement(t.Th,null,e.createElement(t.Typography,{variant:"sigma",textColor:"neutral600"},i({id:"global.name",defaultMessage:"Name"}))),e.createElement(t.Th,null,e.createElement(t.Typography,{variant:"sigma",textColor:"neutral600"},i({id:(0,l.OB)("Providers.status"),defaultMessage:"Status"}))),e.createElement(t.Th,null,e.createElement(t.Typography,{variant:"sigma"},e.createElement(t.VisuallyHidden,null,i({id:"global.settings",defaultMessage:"Settings"})))))),e.createElement(t.Tbody,null,F.map(u=>e.createElement(t.Tr,{key:u.name,...(0,s.onRowClick)({fn:()=>K(u),condition:q})},e.createElement(t.Td,{width:"45%"},e.createElement(t.Typography,{fontWeight:"semiBold",textColor:"neutral800"},u.name)),e.createElement(t.Td,{width:"65%"},e.createElement(t.Typography,{textColor:u.enabled?"success600":"danger600","data-testid":`enable-${u.name}`},u.enabled?i({id:"global.enabled",defaultMessage:"Enabled"}):i({id:"global.disabled",defaultMessage:"Disabled"}))),e.createElement(t.Td,{...s.stopPropagation},q&&e.createElement(t.IconButton,{onClick:()=>K(u),noBorder:!0,icon:e.createElement(R.Pencil,null),label:"Edit"})))))))),e.createElement(ie,{initialData:k[o],isOpen:b,isSubmiting:y,layout:ge,headerBreadcrumbs:[i({id:(0,l.OB)("PopUpForm.header.edit.providers"),defaultMessage:"Edit Provider"}),U()(o)],onToggle:D,onSubmit:fe,providerToEditName:o}))};var le=()=>e.createElement(s.CheckPagePermissions,{permissions:Q.Z.readProviders},e.createElement(V,null))},59677:function(Y,B,n){n.d(B,{YX:function(){return s},Gc:function(){return S},OB:function(){return U.Z}});var e=n(92891),s=t=>Object.keys(t).reduce((R,P)=>{const r=t[P].controllers,l=Object.keys(r).reduce((M,T)=>((0,e.isEmpty)(r[T])||(M[T]=r[T]),M),{});return(0,e.isEmpty)(l)||(R[P]={controllers:l}),R},{}),Z=n(90201),S=t=>`/${Z.Z}/${t}`,U=n(82069)}}]);
@@ -1,30 +0,0 @@
1
- (self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[8853],{77495:function(b,L,a){"use strict";a.r(L),a.d(L,{default:function(){return We}});var e=a(32735),C=a(5141),o=a(13478),c=a(90201),y=a(88369),t=a(39161),E=a(57269),f=a(5636),v=a(84968),M=a(58469),T=a(59677);const A=async(n,r)=>{try{const{get:s}=(0,o.getFetchClient)(),{data:i}=await s((0,T.Gc)("roles"));return r("The roles have loaded successfully"),i}catch{throw n({type:"warning",message:{id:"notification.error"}}),new Error("error")}},U=async(n,r)=>{try{const{del:s}=(0,o.getFetchClient)();await s(`${(0,T.Gc)("roles")}/${n}`)}catch{r({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}};var w=a(60216),D=a.n(w);const x=({sortedRoles:n,canDelete:r,permissions:s,setRoleToDelete:i,onDelete:d})=>{const{formatMessage:l}=(0,f.useIntl)(),{push:m}=(0,C.useHistory)(),[p,h]=d,g=u=>r&&!["public","authenticated"].includes(u.type),R=u=>{i(u),h(!p)},P=u=>{m(`/settings/${c.Z}/roles/${u}`)};return e.createElement(t.Tbody,null,n?.map(u=>e.createElement(t.Tr,{key:u.name,...(0,o.onRowClick)({fn:()=>P(u.id)})},e.createElement(t.Td,{width:"20%"},e.createElement(t.Typography,null,u.name)),e.createElement(t.Td,{width:"50%"},e.createElement(t.Typography,null,u.description)),e.createElement(t.Td,{width:"30%"},e.createElement(t.Typography,null,`${u.nb_users} ${l({id:"global.users",defaultMessage:"users"}).toLowerCase()}`)),e.createElement(t.Td,null,e.createElement(t.Flex,{justifyContent:"end",...o.stopPropagation},e.createElement(o.CheckPermissions,{permissions:s.updateRole},e.createElement(t.IconButton,{onClick:()=>P(u.id),noBorder:!0,icon:e.createElement(E.Pencil,null),label:l({id:"app.component.table.edit",defaultMessage:"Edit {target}"},{target:`${u.name}`})})),g(u)&&e.createElement(o.CheckPermissions,{permissions:s.deleteRole},e.createElement(t.IconButton,{onClick:()=>R(u.id),noBorder:!0,icon:e.createElement(E.Trash,null),label:l({id:"global.delete-target",defaultMessage:"Delete {target}"},{target:`${u.name}`})})))))))};var N=x;x.defaultProps={canDelete:!1},x.propTypes={onDelete:D().array.isRequired,permissions:D().object.isRequired,setRoleToDelete:D().func.isRequired,sortedRoles:D().array.isRequired,canDelete:D().bool};var W=()=>{const{trackUsage:n}=(0,o.useTracking)(),{formatMessage:r}=(0,f.useIntl)(),{push:s}=(0,C.useHistory)(),i=(0,o.useNotification)(),{notifyStatus:d}=(0,t.useNotifyAT)(),[{query:l}]=(0,o.useQueryParams)(),m=l?._q||"",[p,h]=(0,e.useState)(!1),[g,R]=(0,e.useState)(!1),[P,u]=(0,e.useState)();(0,o.useFocusWhenNavigate)();const S=(0,v.useQueryClient)(),G=(0,e.useMemo)(()=>({create:y.Z.createRole,read:y.Z.readRoles,update:y.Z.updateRole,delete:y.Z.deleteRole}),[]),{isLoading:k,allowedActions:{canRead:B,canDelete:F}}=(0,o.useRBAC)(G),{isLoading:Z,data:{roles:oe},isFetching:Qe}=(0,v.useQuery)("get-roles",()=>A(i,d),{initialData:{},enabled:B}),ie=Z||Qe,ze=()=>{n("willCreateRole"),s(`/settings/${c.Z}/roles/new`)},Ye=()=>{h(!p)},Xe={roles:{id:(0,T.OB)("Roles.empty"),defaultMessage:"You don't have any roles yet."},search:{id:(0,T.OB)("Roles.empty.search"),defaultMessage:"No roles match the search."}},Je=r({id:"global.roles",defaultMessage:"Roles"}),Ke=(0,v.useMutation)(nt=>U(nt,i),{async onSuccess(){await S.invalidateQueries("get-roles")}}),qe=async()=>{R(!0),await Ke.mutateAsync(P),h(!p),R(!1)},V=(0,M.ZP)(oe||[],m,{keys:["name","description"]}),_e=m&&!V.length?"search":"roles",et=4,tt=(oe?.length||0)+1;return e.createElement(t.Layout,null,e.createElement(o.SettingsPageTitle,{name:Je}),e.createElement(t.Main,{"aria-busy":ie},e.createElement(t.HeaderLayout,{title:r({id:"global.roles",defaultMessage:"Roles"}),subtitle:r({id:"Settings.roles.list.description",defaultMessage:"List of roles"}),primaryAction:e.createElement(o.CheckPermissions,{permissions:y.Z.createRole},e.createElement(t.Button,{onClick:ze,startIcon:e.createElement(E.Plus,null),size:"S"},r({id:(0,T.OB)("List.button.roles"),defaultMessage:"Add new role"})))}),e.createElement(t.ActionLayout,{startActions:e.createElement(o.SearchURLQuery,{label:r({id:"app.component.search.label",defaultMessage:"Search"})})}),e.createElement(t.ContentLayout,null,!B&&e.createElement(o.NoPermissions,null),(ie||k)&&e.createElement(o.LoadingIndicatorPage,null),B&&V&&V?.length?e.createElement(t.Table,{colCount:et,rowCount:tt},e.createElement(t.Thead,null,e.createElement(t.Tr,null,e.createElement(t.Th,null,e.createElement(t.Typography,{variant:"sigma",textColor:"neutral600"},r({id:"global.name",defaultMessage:"Name"}))),e.createElement(t.Th,null,e.createElement(t.Typography,{variant:"sigma",textColor:"neutral600"},r({id:"global.description",defaultMessage:"Description"}))),e.createElement(t.Th,null,e.createElement(t.Typography,{variant:"sigma",textColor:"neutral600"},r({id:"global.users",defaultMessage:"Users"}))),e.createElement(t.Th,null,e.createElement(t.VisuallyHidden,null,r({id:"global.actions",defaultMessage:"Actions"}))))),e.createElement(N,{sortedRoles:V,canDelete:F,permissions:y.Z,setRoleToDelete:u,onDelete:[p,h]})):e.createElement(o.EmptyStateLayout,{content:Xe[_e]})),e.createElement(o.ConfirmDialog,{isConfirmButtonLoading:g,onConfirm:qe,onToggleDialog:Ye,isOpen:p})))},ce=()=>e.createElement(o.CheckPagePermissions,{permissions:y.Z.accessRoles},e.createElement(W,null)),X=a(83281),I=a(82069),O=a(92891);const J=(0,e.createContext)({}),K=({children:n,value:r})=>e.createElement(J.Provider,{value:r},n),Q=()=>(0,e.useContext)(J);K.propTypes={children:D().node.isRequired,value:D().object.isRequired};var j=a(83292),ue=a(37213),de=a.n(ue),me=a(15738),ge=a.n(me),pe=n=>{switch(n){case"POST":return{text:"success600",border:"success200",background:"success100"};case"GET":return{text:"secondary600",border:"secondary200",background:"secondary100"};case"PUT":return{text:"warning600",border:"warning200",background:"warning100"};case"DELETE":return{text:"danger600",border:"danger200",background:"danger100"};default:return{text:"neutral600",border:"neutral200",background:"neutral100"}}};const Ee=(0,j.default)(t.Box)`
2
- margin: -1px;
3
- border-radius: ${({theme:n})=>n.spaces[1]} 0 0 ${({theme:n})=>n.spaces[1]};
4
- `;function z({route:n}){const{formatMessage:r}=(0,f.useIntl)(),{method:s,handler:i,path:d}=n,l=d?ge()(d.split("/")):[],[m="",p=""]=i?i.split("."):[],h=pe(n.method);return e.createElement(t.Flex,{direction:"column",alignItems:"stretch",gap:2},e.createElement(t.Typography,{variant:"delta",as:"h3"},r({id:"users-permissions.BoundRoute.title",defaultMessage:"Bound route to"}),"\xA0",e.createElement("span",null,m),e.createElement(t.Typography,{variant:"delta",textColor:"primary600"},".",p)),e.createElement(t.Flex,{hasRadius:!0,background:"neutral0",borderColor:"neutral200",gap:0},e.createElement(Ee,{background:h.background,borderColor:h.border,padding:2},e.createElement(t.Typography,{fontWeight:"bold",textColor:h.text},s)),e.createElement(t.Box,{paddingLeft:2,paddingRight:2},de()(l,g=>e.createElement(t.Typography,{key:g,textColor:g.includes(":")?"neutral600":"neutral900"},"/",g)))))}z.defaultProps={route:{handler:"Nocontroller.error",method:"GET",path:"/there-is-no-path"}},z.propTypes={route:D().shape({handler:D().string,method:D().string,path:D().string})};var he=z,fe=()=>{const{formatMessage:n}=(0,f.useIntl)(),{selectedAction:r,routes:s}=Q(),i=(0,O.without)(r.split("."),"controllers"),d=(0,O.get)(s,i[0]),l=i.slice(1).join("."),m=(0,O.isEmpty)(d)?[]:d.filter(p=>p.handler.endsWith(l));return e.createElement(t.GridItem,{col:5,background:"neutral150",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7,style:{minHeight:"100%"}},r?e.createElement(t.Flex,{direction:"column",alignItems:"stretch",gap:2},m.map((p,h)=>e.createElement(he,{key:h,route:p}))):e.createElement(t.Flex,{direction:"column",alignItems:"stretch",gap:2},e.createElement(t.Typography,{variant:"delta",as:"h3"},n({id:"users-permissions.Policies.header.title",defaultMessage:"Advanced settings"})),e.createElement(t.Typography,{as:"p",textColor:"neutral600"},n({id:"users-permissions.Policies.header.hint",defaultMessage:"Select the application's actions or the plugin's actions and click on the cog icon to display the bound route"}))))},ye=a(23940),Ce=a.n(ye);function Re(n){switch(n){case"application":return"Application";case"plugin::content-manager":return"Content manager";case"plugin::content-type-builder":return"Content types builder";case"plugin::documentation":return"Documentation";case"plugin::email":return"Email";case"plugin::i18n":return"i18n";case"plugin::upload":return"Upload";case"plugin::users-permissions":return"Users-permissions";default:return Ce()(n.replace("api::","").replace("plugin::",""))}}var be=Re,Te=a(98978),q=a.n(Te);const _=j.css`
5
- background: ${n=>n.theme.colors.primary100};
6
- svg {
7
- opacity: 1;
8
- }
9
- `;var ve=(0,j.default)(t.Box)`
10
- display: flex;
11
- justify-content: space-between;
12
- align-items: center;
13
-
14
- svg {
15
- opacity: 0;
16
- path {
17
- fill: ${n=>n.theme.colors.primary600};
18
- }
19
- }
20
-
21
- /* Show active style both on hover and when the action is selected */
22
- ${n=>n.isActive&&_}
23
- &:hover {
24
- ${_}
25
- }
26
- `;const Ae=j.default.div`
27
- flex: 1;
28
- align-self: center;
29
- border-top: 1px solid ${({theme:n})=>n.colors.neutral150};
30
- `,ee=({subCategory:n})=>{const{formatMessage:r}=(0,f.useIntl)(),{onChange:s,onChangeSelectAll:i,onSelectedAction:d,selectedAction:l,modifiedData:m}=Q(),p=(0,e.useMemo)(()=>(0,O.get)(m,n.name,{}),[m,n]),h=(0,e.useMemo)(()=>Object.values(p).every(u=>u.enabled===!0),[p]),g=(0,e.useMemo)(()=>Object.values(p).some(u=>u.enabled===!0)&&!h,[p,h]),R=(0,e.useCallback)(({target:{name:u}})=>{i({target:{name:u,value:!h}})},[h,i]),P=(0,e.useCallback)(u=>l===u,[l]);return e.createElement(t.Box,null,e.createElement(t.Flex,{justifyContent:"space-between",alignItems:"center"},e.createElement(t.Box,{paddingRight:4},e.createElement(t.Typography,{variant:"sigma",textColor:"neutral600"},n.label)),e.createElement(Ae,null),e.createElement(t.Box,{paddingLeft:4},e.createElement(t.Checkbox,{name:n.name,value:h,onValueChange:u=>R({target:{name:n.name,value:u}}),indeterminate:g},r({id:"app.utils.select-all",defaultMessage:"Select all"})))),e.createElement(t.Flex,{paddingTop:6,paddingBottom:6},e.createElement(t.Grid,{gap:2,style:{flex:1}},n.actions.map(u=>{const S=`${u.name}.enabled`;return e.createElement(t.GridItem,{col:6,key:u.name},e.createElement(ve,{isActive:P(u.name),padding:2,hasRadius:!0},e.createElement(t.Checkbox,{value:(0,O.get)(m,S,!1),name:S,onValueChange:G=>s({target:{name:S,value:G}})},u.label),e.createElement("button",{type:"button","data-testid":"action-cog",onClick:()=>d(u.name),style:{display:"inline-flex",alignItems:"center"}},e.createElement(E.Cog,null))))}))))};ee.propTypes={subCategory:D().object.isRequired};var Pe=ee;const te=({name:n,permissions:r})=>{const s=(0,e.useMemo)(()=>q()(Object.values(r.controllers).reduce((i,d,l)=>{const m=`${n}.controllers.${Object.keys(r.controllers)[l]}`,p=q()(Object.keys(d).reduce((h,g)=>[...h,{...d[g],label:g,name:`${m}.${g}`}],[]),"label");return[...i,{actions:p,label:Object.keys(r.controllers)[l],name:m}]},[]),"label"),[n,r]);return e.createElement(t.Box,{padding:6},s.map(i=>e.createElement(Pe,{key:i.name,subCategory:i})))};te.propTypes={name:D().string.isRequired,permissions:D().object.isRequired};var De=te,Le=(n,r)=>{const s=Object.keys(r).sort().map(i=>({name:i,isOpen:!1}));return{...n,collapses:s}},H=a(97889);const Me={collapses:[]},xe=(n,r)=>(0,H.default)(n,s=>{switch(r.type){case"TOGGLE_COLLAPSE":{s.collapses=n.collapses.map((i,d)=>d===r.index?{...i,isOpen:!i.isOpen}:{...i,isOpen:!1});break}default:return s}});var ke=()=>{const{modifiedData:n}=Q(),{formatMessage:r}=(0,f.useIntl)(),[{collapses:s},i]=(0,e.useReducer)(xe,Me,l=>Le(l,n)),d=l=>i({type:"TOGGLE_COLLAPSE",index:l});return e.createElement(t.Flex,{direction:"column",alignItems:"stretch",gap:1},s.map((l,m)=>e.createElement(t.Accordion,{expanded:l.isOpen,onToggle:()=>d(m),key:l.name,variant:m%2===0?"secondary":void 0},e.createElement(t.AccordionToggle,{title:be(l.name),description:r({id:"users-permissions.Plugin.permissions.plugins.description",defaultMessage:"Define all allowed actions for the {name} plugin."},{name:l.name}),variant:m%2?"primary":"secondary"}),e.createElement(t.AccordionContent,null,e.createElement(t.Box,null,e.createElement(De,{permissions:n[l.name],name:l.name}))))))};const Se={initialData:{},modifiedData:{},routes:{},selectedAction:"",policies:[]};var Be=(n,r)=>(0,H.default)(n,s=>{switch(r.type){case"ON_CHANGE":{const i=r.keys.length,d=r.keys[i-1]==="enabled";if(r.value&&d){const l=(0,O.take)(r.keys,i-1).join(".");s.selectedAction=l}(0,O.set)(s,["modifiedData",...r.keys],r.value);break}case"ON_CHANGE_SELECT_ALL":{const i=["modifiedData",...r.keys],d=(0,O.get)(n,i,{}),l=Object.keys(d).reduce((m,p)=>(m[p]={...d[p],enabled:r.value},m),{});(0,O.set)(s,i,l);break}case"ON_RESET":{s.modifiedData=n.initialData;break}case"ON_SUBMIT_SUCCEEDED":{s.initialData=n.modifiedData;break}case"SELECT_ACTION":{const{actionToSelect:i}=r;s.selectedAction=i===n.selectedAction?"":i;break}default:return s}}),Oe=(n,r,s)=>({...n,initialData:r,modifiedData:r,routes:s});const ne=(0,e.forwardRef)(({permissions:n,routes:r},s)=>{const{formatMessage:i}=(0,f.useIntl)(),[d,l]=(0,e.useReducer)(Be,Se,R=>Oe(R,n,r));(0,e.useImperativeHandle)(s,()=>({getPermissions(){return{permissions:d.modifiedData}},resetForm(){l({type:"ON_RESET"})},setFormAfterSubmit(){l({type:"ON_SUBMIT_SUCCEEDED"})}}));const g={...d,onChange:({target:{name:R,value:P}})=>l({type:"ON_CHANGE",keys:R.split("."),value:P==="empty__string_value"?"":P}),onChangeSelectAll:({target:{name:R,value:P}})=>l({type:"ON_CHANGE_SELECT_ALL",keys:R.split("."),value:P}),onSelectedAction:R=>l({type:"SELECT_ACTION",actionToSelect:R})};return e.createElement(K,{value:g},e.createElement(t.Grid,{gap:0,shadow:"filterShadow",hasRadius:!0,background:"neutral0"},e.createElement(t.GridItem,{col:7,paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(t.Flex,{direction:"column",alignItems:"stretch",gap:6},e.createElement(t.Flex,{direction:"column",alignItems:"stretch",gap:2},e.createElement(t.Typography,{variant:"delta",as:"h2"},i({id:(0,I.Z)("Plugins.header.title"),defaultMessage:"Permissions"})),e.createElement(t.Typography,{as:"p",textColor:"neutral600"},i({id:(0,I.Z)("Plugins.header.description"),defaultMessage:"Only actions bound by a route are listed below."}))),e.createElement(ke,null))),e.createElement(fe,null)))});ne.propTypes={permissions:D().object.isRequired,routes:D().object.isRequired};var se=(0,e.memo)(ne);const ut={isLoading:!0,modifiedData:{}},dt=(n,r)=>produce(n,s=>{switch(r.type){case"GET_DATA":{s.isLoading=!0,s.modifiedData={};break}case"GET_DATA_SUCCEEDED":{s.isLoading=!1,s.modifiedData=r.data;break}case"GET_DATA_ERROR":{s.isLoading=!0;break}case"ON_SUBMIT_SUCCEEDED":{s.modifiedData=r.data;break}default:return s}});var mt=null;const gt=(n,r)=>{const{isLoading:s,allowedActions:i}=useRBAC(r),[{isLoading:d,modifiedData:l},m]=useReducer(reducer,initialState),p=useNotification(),h=useRef(!0),g=new AbortController,{signal:R}=g;useEffect(()=>(s||(async()=>{try{m({type:"GET_DATA"});const S=await request(getRequestURL(n),{method:"GET",signal:R});m({type:"GET_DATA_SUCCEEDED",data:S})}catch(S){h.current&&(m({type:"GET_DATA_ERROR"}),console.error(S),p({type:"warning",message:{id:"notification.error"}}))}})(),()=>{g.abort(),h.current=!1}),[s,n]);const P=useCallback(u=>{m({type:"ON_SUBMIT_SUCCEEDED",data:u})},[]);return{allowedActions:i,dispatchSubmitSucceeded:P,isLoading:d,isLoadingForPermissions:s,modifiedData:l}};var pt=null;const Et={roles:[],isLoading:!0},ht=(n,r)=>produce(n,s=>{switch(r.type){case"GET_DATA":{s.isLoading=!0,s.roles=[];break}case"GET_DATA_SUCCEEDED":{s.roles=r.data,s.isLoading=!1;break}case"GET_DATA_ERROR":{s.isLoading=!1;break}default:return s}});var ft=null;const yt=(n=!0)=>{const[{roles:r,isLoading:s},i]=useReducer(reducer,initialState,()=>init(initialState,n)),d=useNotification(),l=useRef(!0),m=new AbortController,{signal:p}=m;useEffect(()=>(n&&h(),()=>{m.abort(),l.current=!1}),[n]);const h=async()=>{try{i({type:"GET_DATA"});const{roles:g}=await request(`/${pluginId}/roles`,{method:"GET",signal:p});i({type:"GET_DATA_SUCCEEDED",data:g})}catch(g){const R=get(g,["response","payload","message"],"An error occured");l.current&&(i({type:"GET_DATA_ERROR"}),R!=="Forbidden"&&d({type:"warning",message:R}))}};return{roles:r,isLoading:s,getData:h}};var Ct=null,Ge=(n,r)=>({...n,isLoading:r});const re={permissions:{},routes:{},isLoading:!0};var Fe=(n,r)=>(0,H.default)(n,s=>{switch(r.type){case"GET_DATA":{s.isLoading=!0,s.permissions={},s.routes={};break}case"GET_DATA_SUCCEEDED":{s.permissions=r.permissions,s.routes=r.routes,s.isLoading=!1;break}case"GET_DATA_ERROR":{s.isLoading=!1;break}default:return s}}),ae=(n=!0)=>{const r=(0,o.useNotification)(),[{permissions:s,routes:i,isLoading:d},l]=(0,e.useReducer)(Fe,re,()=>Ge(re,n)),m=(0,o.useFetchClient)(),p=(0,e.useCallback)(async()=>{try{l({type:"GET_DATA"});const[{permissions:h},{routes:g}]=await Promise.all([`/${c.Z}/permissions`,`/${c.Z}/routes`].map(async R=>(await m.get(R)).data));l({type:"GET_DATA_SUCCEEDED",permissions:(0,T.YX)(h),routes:g})}catch(h){const g=(0,O.get)(h,["response","payload","message"],"An error occured");l({type:"GET_DATA_ERROR"}),g!=="Forbidden"&&r({type:"warning",message:g})}},[r]);return(0,e.useEffect)(()=>{n&&p()},[p,n]),{permissions:s,routes:i,getData:p,isLoading:d}};const Ue={role:{},isLoading:!0};var we=(n,r)=>(0,H.default)(n,s=>{switch(r.type){case"GET_DATA_SUCCEEDED":{s.role=r.role,s.isLoading=!1;break}case"GET_DATA_ERROR":{s.isLoading=!1;break}case"ON_SUBMIT_SUCCEEDED":{s.role.name=r.name,s.role.description=r.description;break}default:return s}}),Ne=n=>{const[r,s]=(0,e.useReducer)(we,Ue),i=(0,o.useNotification)(),d=(0,e.useRef)(null),{get:l}=(0,o.useFetchClient)();(0,e.useEffect)(()=>(d.current=!0,n?m(n):s({type:"GET_DATA_SUCCEEDED",role:{}}),()=>d.current=!1),[n]);const m=async h=>{try{const{data:{role:g}}=await l(`/${c.Z}/roles/${h}`);d.current&&s({type:"GET_DATA_SUCCEEDED",role:g})}catch(g){console.error(g),s({type:"GET_DATA_ERROR"}),i({type:"warning",message:{id:"notification.error"}})}},p=(0,e.useCallback)(h=>{s({type:"ON_SUBMIT_SUCCEEDED",...h})},[]);return{...r,onSubmitSucceeded:p}},$=a(5173),Ie=$.Ry().shape({name:$.Z_().required(o.translatedErrors.required),description:$.Z_().required(o.translatedErrors.required)}),$e=()=>{const{formatMessage:n}=(0,f.useIntl)(),[r,s]=(0,e.useState)(!1),i=(0,o.useNotification)(),{lockApp:d,unlockApp:l}=(0,o.useOverlayBlocker)(),{params:{id:m}}=(0,C.useRouteMatch)(`/settings/${c.Z}/roles/:id`),{isLoading:p,routes:h}=ae(),{role:g,onSubmitSucceeded:R,isLoading:P}=Ne(m),u=(0,e.useRef)(),{put:S}=(0,o.useFetchClient)(),G=async k=>{d(),s(!0);try{const B=u.current.getPermissions();await S(`/${c.Z}/roles/${m}`,{...k,...B,users:[]}),R({name:k.name,description:k.description}),i({type:"success",message:{id:(0,I.Z)("Settings.roles.edited"),defaultMessage:"Role edited"}})}catch(B){console.error(B),i({type:"warning",message:{id:"notification.error",defaultMessage:"An error occurred"}})}s(!1),l()};return P?e.createElement(o.LoadingIndicatorPage,null):e.createElement(t.Main,null,e.createElement(o.SettingsPageTitle,{name:"Roles"}),e.createElement(X.Formik,{enableReinitialize:!0,initialValues:{name:g.name,description:g.description},onSubmit:G,validationSchema:Ie},({handleSubmit:k,values:B,handleChange:F,errors:Z})=>e.createElement(o.Form,{noValidate:!0,onSubmit:k},e.createElement(t.HeaderLayout,{primaryAction:!p&&e.createElement(t.Button,{disabled:g.code==="strapi-super-admin",type:"submit",loading:r,startIcon:e.createElement(E.Check,null)},n({id:"global.save",defaultMessage:"Save"})),title:g.name,subtitle:g.description,navigationAction:e.createElement(o.Link,{startIcon:e.createElement(E.ArrowLeft,null),to:"/settings/users-permissions/roles"},n({id:"global.back",defaultMessage:"Back"}))}),e.createElement(t.ContentLayout,null,e.createElement(t.Flex,{direction:"column",alignItems:"stretch",gap:7},e.createElement(t.Box,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(t.Flex,{direction:"column",alignItems:"stretch",gap:4},e.createElement(t.Typography,{variant:"delta",as:"h2"},n({id:(0,I.Z)("EditPage.form.roles"),defaultMessage:"Role details"})),e.createElement(t.Grid,{gap:4},e.createElement(t.GridItem,{col:6},e.createElement(t.TextInput,{name:"name",value:B.name||"",onChange:F,label:n({id:"global.name",defaultMessage:"Name"}),error:Z.name?n({id:Z.name,defaultMessage:"Invalid value"}):null})),e.createElement(t.GridItem,{col:6},e.createElement(t.Textarea,{name:"description",value:B.description||"",onChange:F,label:n({id:"global.description",defaultMessage:"Description"}),error:Z.description?n({id:Z.description,defaultMessage:"Invalid value"}):null}))))),!p&&e.createElement(se,{ref:u,permissions:g.permissions,routes:h}))))))},Ze=()=>e.createElement(o.CheckPagePermissions,{permissions:y.Z.updateRole},e.createElement($e,null)),je=$.Ry().shape({name:$.Z_().required(o.translatedErrors.required),description:$.Z_().required(o.translatedErrors.required)}),He=()=>{const{formatMessage:n}=(0,f.useIntl)(),[r,s]=(0,e.useState)(!1),i=(0,o.useNotification)(),{goBack:d}=(0,C.useHistory)(),{lockApp:l,unlockApp:m}=(0,o.useOverlayBlocker)(),{isLoading:p,permissions:h,routes:g}=ae(),{trackUsage:R}=(0,o.useTracking)(),P=(0,e.useRef)(),{post:u}=(0,o.useFetchClient)(),S=async G=>{l(),s(!0);try{const k=P.current.getPermissions();await u(`/${c.Z}/roles`,{...G,...k,users:[]}),R("didCreateRole"),i({type:"success",message:{id:(0,I.Z)("Settings.roles.created"),defaultMessage:"Role created"}}),d()}catch(k){console.error(k),i({type:"warning",message:{id:"notification.error",defaultMessage:"An error occurred"}})}s(!1),m()};return e.createElement(t.Main,null,e.createElement(o.SettingsPageTitle,{name:"Roles"}),e.createElement(X.Formik,{enableReinitialize:!0,initialValues:{name:"",description:""},onSubmit:S,validationSchema:je},({handleSubmit:G,values:k,handleChange:B,errors:F})=>e.createElement(o.Form,{noValidate:!0,onSubmit:G},e.createElement(t.HeaderLayout,{primaryAction:!p&&e.createElement(t.Button,{type:"submit",loading:r,startIcon:e.createElement(E.Check,null)},n({id:"global.save",defaultMessage:"Save"})),title:n({id:"Settings.roles.create.title",defaultMessage:"Create a role"}),subtitle:n({id:"Settings.roles.create.description",defaultMessage:"Define the rights given to the role"})}),e.createElement(t.ContentLayout,null,e.createElement(t.Flex,{direction:"column",alignItems:"stretch",gap:7},e.createElement(t.Box,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(t.Flex,{direction:"column",alignItems:"stretch",gap:4},e.createElement(t.Typography,{variant:"delta",as:"h2"},n({id:(0,I.Z)("EditPage.form.roles"),defaultMessage:"Role details"})),e.createElement(t.Grid,{gap:4},e.createElement(t.GridItem,{col:6},e.createElement(t.TextInput,{name:"name",value:k.name||"",onChange:B,label:n({id:"global.name",defaultMessage:"Name"}),error:F.name?n({id:F.name,defaultMessage:"Invalid value"}):null})),e.createElement(t.GridItem,{col:6},e.createElement(t.Textarea,{name:"description",value:k.description||"",onChange:B,label:n({id:"global.description",defaultMessage:"Description"}),error:F.description?n({id:F.description,defaultMessage:"Invalid value"}):null}))))),!p&&e.createElement(se,{ref:P,permissions:h,routes:g}))))))},Ve=()=>e.createElement(o.CheckPagePermissions,{permissions:y.Z.createRole},e.createElement(He,null)),We=()=>e.createElement(o.CheckPagePermissions,{permissions:y.Z.accessRoles},e.createElement(C.Switch,null,e.createElement(C.Route,{path:`/settings/${c.Z}/roles/new`,component:Ve,exact:!0}),e.createElement(C.Route,{path:`/settings/${c.Z}/roles/:id`,component:Ze,exact:!0}),e.createElement(C.Route,{path:`/settings/${c.Z}/roles`,component:ce,exact:!0}),e.createElement(C.Route,{path:"",component:o.NotFound})))},59677:function(b,L,a){"use strict";a.d(L,{YX:function(){return o},Gc:function(){return t},OB:function(){return E.Z}});var e=a(92891),o=f=>Object.keys(f).reduce((v,M)=>{const T=f[M].controllers,A=Object.keys(T).reduce((U,w)=>((0,e.isEmpty)(T[w])||(U[w]=T[w]),U),{});return(0,e.isEmpty)(A)||(v[M]={controllers:A}),v},{}),c=a(90201),t=f=>`/${c.Z}/${f}`,E=a(82069)},56671:function(b,L,a){var e=a(35897),C=a(74741),o=C(e);b.exports=o},52920:function(b,L,a){var e=a(56671),C=a(81580);function o(c,y){var t=-1,E=C(c)?Array(c.length):[];return e(c,function(f,v,M){E[++t]=y(f,v,M)}),E}b.exports=o},50690:function(b,L,a){var e=a(26460),C=a(80166),o=a(88904),c=a(52920),y=a(36024),t=a(76535),E=a(1397),f=a(15362),v=a(77236);function M(T,A,U){A.length?A=e(A,function(x){return v(x)?function(N){return C(N,x.length===1?x[0]:x)}:x}):A=[f];var w=-1;A=e(A,t(o));var D=c(T,function(x,N,le){var W=e(A,function(Y){return Y(x)});return{criteria:W,index:++w,value:x}});return y(D,function(x,N){return E(x,N,U)})}b.exports=M},36024:function(b){function L(a,e){var C=a.length;for(a.sort(e);C--;)a[C]=a[C].value;return a}b.exports=L},40709:function(b,L,a){var e=a(22945);function C(o,c){if(o!==c){var y=o!==void 0,t=o===null,E=o===o,f=e(o),v=c!==void 0,M=c===null,T=c===c,A=e(c);if(!M&&!A&&!f&&o>c||f&&v&&T&&!M&&!A||t&&v&&T||!y&&T||!E)return 1;if(!t&&!f&&!A&&o<c||A&&y&&E&&!t&&!f||M&&y&&E||!v&&E||!T)return-1}return 0}b.exports=C},1397:function(b,L,a){var e=a(40709);function C(o,c,y){for(var t=-1,E=o.criteria,f=c.criteria,v=E.length,M=y.length;++t<v;){var T=e(E[t],f[t]);if(T){if(t>=M)return T;var A=y[t];return T*(A=="desc"?-1:1)}}return o.index-c.index}b.exports=C},74741:function(b,L,a){var e=a(81580);function C(o,c){return function(y,t){if(y==null)return y;if(!e(y))return o(y,t);for(var E=y.length,f=c?E:-1,v=Object(y);(c?f--:++f<E)&&t(v[f],f,v)!==!1;);return y}}b.exports=C},37213:function(b,L,a){var e=a(26460),C=a(88904),o=a(52920),c=a(77236);function y(t,E){var f=c(t)?e:o;return f(t,C(E,3))}b.exports=y},98978:function(b,L,a){var e=a(40314),C=a(50690),o=a(94569),c=a(63108),y=o(function(t,E){if(t==null)return[];var f=E.length;return f>1&&c(t,E[0],E[1])?E=[]:f>2&&c(E[0],E[1],E[2])&&(E=[E[0]]),C(t,e(E,1),[])});b.exports=y},15738:function(b,L,a){var e=a(4293);function C(o){var c=o==null?0:o.length;return c?e(o,1,c):[]}b.exports=C}}]);