@strapi/admin 4.7.0 → 4.7.2-exp.24dd7d95972fa822bf43e9b095b51027402c229e

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 (137) hide show
  1. package/admin/src/components/AutoReloadOverlayBlockerProvider/Blocker.js +4 -4
  2. package/admin/src/components/AutoReloadOverlayBlockerProvider/Overlay.js +2 -2
  3. package/admin/src/components/GuidedTour/Homepage/index.js +3 -3
  4. package/admin/src/components/GuidedTour/Modal/components/Content.js +35 -23
  5. package/admin/src/components/GuidedTour/Modal/components/Modal.js +6 -4
  6. package/admin/src/components/LeftMenu/index.js +3 -3
  7. package/admin/src/components/Notifications/index.js +6 -4
  8. package/admin/src/components/UpgradePlanModal/index.js +6 -7
  9. package/admin/src/content-manager/components/ComponentInitializer/index.js +3 -3
  10. package/admin/src/content-manager/components/DragLayer/RelationDragPreview.js +3 -3
  11. package/admin/src/content-manager/components/DynamicTable/ConfirmDialogDelete/index.js +3 -11
  12. package/admin/src/content-manager/components/DynamicTable/ConfirmDialogDeleteAll/index.js +3 -11
  13. package/admin/src/content-manager/components/DynamicZone/components/ComponentCard.js +4 -4
  14. package/admin/src/content-manager/components/DynamicZone/components/DynamicComponent.js +3 -4
  15. package/admin/src/content-manager/components/DynamicZone/index.js +3 -3
  16. package/admin/src/content-manager/components/FieldComponent/index.js +3 -3
  17. package/admin/src/content-manager/components/NonRepeatableComponent/index.js +3 -3
  18. package/admin/src/content-manager/components/RelationInput/components/Relation.js +9 -3
  19. package/admin/src/content-manager/components/RelationInput/components/RelationItem.js +4 -4
  20. package/admin/src/content-manager/components/RepeatableComponent/components/Component.js +12 -6
  21. package/admin/src/content-manager/components/Wysiwyg/Editor.js +2 -2
  22. package/admin/src/content-manager/components/Wysiwyg/index.js +5 -5
  23. package/admin/src/content-manager/components/Wysiwyg/utils/continueList.js +3 -3
  24. package/admin/src/content-manager/pages/EditSettingsView/components/DisplayedFields.js +5 -5
  25. package/admin/src/content-manager/pages/EditSettingsView/components/DynamicZoneList.js +3 -3
  26. package/admin/src/content-manager/pages/EditSettingsView/index.js +3 -3
  27. package/admin/src/content-manager/pages/EditView/Header/index.js +6 -7
  28. package/admin/src/content-manager/pages/EditView/Information/index.js +9 -9
  29. package/admin/src/content-manager/pages/EditView/index.js +9 -9
  30. package/admin/src/content-manager/pages/ListSettingsView/components/CardPreview.js +3 -3
  31. package/admin/src/content-manager/pages/ListSettingsView/components/DraggableCard.js +3 -3
  32. package/admin/src/content-manager/pages/ListSettingsView/components/Settings.js +5 -5
  33. package/admin/src/content-manager/pages/ListSettingsView/components/SortDisplayedFields.js +3 -11
  34. package/admin/src/pages/Admin/Onboarding/index.js +11 -5
  35. package/admin/src/pages/AuthPage/components/ForgotPassword/index.js +3 -3
  36. package/admin/src/pages/AuthPage/components/Login/BaseLogin.js +3 -12
  37. package/admin/src/pages/AuthPage/components/Register/index.js +2 -3
  38. package/admin/src/pages/AuthPage/components/ResetPassword/index.js +3 -3
  39. package/admin/src/pages/HomePage/ContentBlocks.js +3 -3
  40. package/admin/src/pages/HomePage/HomeHeader.js +3 -7
  41. package/admin/src/pages/HomePage/SocialLinks.js +5 -5
  42. package/admin/src/pages/MarketplacePage/components/NpmPackageCard/PackageStats.js +3 -3
  43. package/admin/src/pages/MarketplacePage/components/NpmPackageCard/index.js +3 -3
  44. package/admin/src/pages/MarketplacePage/components/NpmPackagesFilters/FiltersPopover.js +3 -3
  45. package/admin/src/pages/ProfilePage/index.js +11 -11
  46. package/admin/src/pages/SettingsPage/components/Tokens/FormHead/index.js +3 -3
  47. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/ActionBoundRoutes/index.js +5 -5
  48. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/BoundRoute/index.js +5 -5
  49. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/FormApiTokenContainer/index.js +3 -3
  50. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/Permissions/index.js +3 -3
  51. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/index.js +3 -3
  52. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/FromComputerForm.js +2 -3
  53. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/index.js +7 -6
  54. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/GlobalActions/index.js +4 -6
  55. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/RoleForm/index.js +2 -3
  56. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/index.js +5 -5
  57. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/components/FormTransferTokenContainer/index.js +3 -3
  58. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/index.js +3 -3
  59. package/admin/src/pages/SettingsPage/pages/Users/EditPage/index.js +7 -7
  60. package/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/index.js +5 -5
  61. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/EventInput/index.js +3 -3
  62. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/HeadersInput/index.js +2 -3
  63. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/TriggerContainer/index.js +9 -9
  64. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/WebhookForm/index.js +7 -7
  65. package/admin/src/pages/SettingsPage/pages/Webhooks/ListView/index.js +158 -165
  66. package/admin/src/pages/UseCasePage/index.js +2 -3
  67. package/admin/src/translations/zh-Hans.json +31 -1
  68. package/build/{4849.7abafe52.chunk.js → 3094.1cac9087.chunk.js} +2 -2
  69. package/build/{4049.16583eee.chunk.js → 4049.64715f20.chunk.js} +1 -1
  70. package/build/4649.daa290f6.chunk.js +30 -0
  71. package/build/{6487.83e219bf.chunk.js → 6891.ef7464be.chunk.js} +6 -6
  72. package/build/7259.63e91b59.chunk.js +1 -0
  73. package/build/Admin-authenticatedApp.884faefa.chunk.js +79 -0
  74. package/build/Admin_homePage.1411fb7c.chunk.js +68 -0
  75. package/build/{Admin_marketplace.a8ea585f.chunk.js → Admin_marketplace.0f6c8ee2.chunk.js} +4 -4
  76. package/build/Admin_profilePage.d2a8f9ab.chunk.js +15 -0
  77. package/build/{Admin_settingsPage.f6d02df6.chunk.js → Admin_settingsPage.6814a96e.chunk.js} +17 -18
  78. package/build/admin-app.d9d96db4.chunk.js +112 -0
  79. package/build/admin-edit-roles-page.bf130aaf.chunk.js +1 -0
  80. package/build/{admin-edit-users.f06c4a53.chunk.js → admin-edit-users.48031e30.chunk.js} +2 -2
  81. package/build/admin-users.77b4188a.chunk.js +11 -0
  82. package/build/{content-manager.6ed87531.chunk.js → content-manager.d792c194.chunk.js} +40 -40
  83. package/build/{content-type-builder-list-view.c2f917b6.chunk.js → content-type-builder-list-view.cf38fe2f.chunk.js} +9 -9
  84. package/build/content-type-builder-translation-zh-Hans-json.415577fb.chunk.js +1 -0
  85. package/build/content-type-builder.cdd117c3.chunk.js +126 -0
  86. package/build/email-settings-page.4bdbef9a.chunk.js +3 -0
  87. package/build/{i18n-settings-page.c7bc29fc.chunk.js → i18n-settings-page.2bb5be96.chunk.js} +1 -1
  88. package/build/index.html +1 -1
  89. package/build/main.64fe0c37.js +3928 -0
  90. package/build/{runtime~main.bc7de2d8.js → runtime~main.684b5fed.js} +1 -1
  91. package/build/sso-settings-page.5a8588ef.chunk.js +1 -0
  92. package/build/upload-settings.0200561d.chunk.js +1 -0
  93. package/build/upload-translation-zh-Hans-json.db163b6b.chunk.js +1 -0
  94. package/build/upload.c7da1611.chunk.js +13 -0
  95. package/build/{users-advanced-settings-page.677e1973.chunk.js → users-advanced-settings-page.c0cae03a.chunk.js} +1 -1
  96. package/build/users-providers-settings-page.5f86e45c.chunk.js +1 -0
  97. package/build/users-roles-settings-page.b02986df.chunk.js +30 -0
  98. package/build/webhook-edit-page.a2a2b7bb.chunk.js +23 -0
  99. package/build/webhook-list-page.029957a4.chunk.js +1 -0
  100. package/build/zh-Hans-json.993d085f.chunk.js +1 -0
  101. package/ee/admin/hooks/useLicenseLimitNotification/index.js +2 -1
  102. package/ee/admin/pages/AuthPage/components/Login/index.js +3 -3
  103. package/ee/admin/pages/AuthPage/components/Providers/index.js +3 -3
  104. package/ee/admin/pages/SettingsPage/pages/ApplicationInfosPage/components/AdminSeatInfo/index.js +3 -3
  105. package/ee/admin/pages/SettingsPage/pages/Roles/CreatePage/index.js +6 -7
  106. package/ee/admin/pages/SettingsPage/pages/SingleSignOn/index.js +11 -3
  107. package/ee/admin/pages/SettingsPage/pages/Users/ListPage/CreateAction/index.js +5 -4
  108. package/ee/server/controllers/admin.js +4 -3
  109. package/ee/server/controllers/user.js +2 -2
  110. package/ee/server/services/seat-enforcement.js +2 -2
  111. package/package.json +13 -12
  112. package/server/content-types/User.js +4 -0
  113. package/server/content-types/api-token.js +1 -0
  114. package/server/controllers/user.js +7 -1
  115. package/server/services/permission/permissions-manager/index.js +9 -5
  116. package/server/services/permission/permissions-manager/sanitize.js +101 -4
  117. package/build/4649.ffa2f59a.chunk.js +0 -30
  118. package/build/7259.cd2f7bad.chunk.js +0 -1
  119. package/build/Admin-authenticatedApp.bce108cd.chunk.js +0 -79
  120. package/build/Admin_homePage.cec3f510.chunk.js +0 -70
  121. package/build/Admin_profilePage.b27e40f6.chunk.js +0 -15
  122. package/build/admin-app.d3b3237b.chunk.js +0 -112
  123. package/build/admin-edit-roles-page.fd041d89.chunk.js +0 -1
  124. package/build/admin-users.8c9bfda4.chunk.js +0 -11
  125. package/build/content-type-builder-translation-zh-Hans-json.52a30266.chunk.js +0 -1
  126. package/build/content-type-builder.b7fb1e65.chunk.js +0 -126
  127. package/build/email-settings-page.884cfb8b.chunk.js +0 -3
  128. package/build/main.8009bfe8.js +0 -3930
  129. package/build/sso-settings-page.82d84043.chunk.js +0 -1
  130. package/build/upload-settings.c18b010f.chunk.js +0 -1
  131. package/build/upload-translation-zh-Hans-json.3da5cf56.chunk.js +0 -1
  132. package/build/upload.0876ab69.chunk.js +0 -13
  133. package/build/users-providers-settings-page.87a9c77d.chunk.js +0 -1
  134. package/build/users-roles-settings-page.79c19845.chunk.js +0 -30
  135. package/build/webhook-edit-page.cfbdd3fd.chunk.js +0 -23
  136. package/build/webhook-list-page.3daa4fe2.chunk.js +0 -1
  137. package/build/zh-Hans-json.6e26e359.chunk.js +0 -1
@@ -1,2 +1,2 @@
1
- (function(){"use strict";var j={},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 j[n].call(t.exports,t,t.exports,a),t.loaded=!0,t.exports}a.m=j,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(b){return a.O[b](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",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:"52a30266",90:"362384a6",92:"bce5050f",96:"1b334230",123:"c4a4f50b",129:"87b494d1",302:"82d84043",320:"e688dfe2",395:"f1a0d19d",435:"a2ed8c78",562:"9b3cd181",585:"6b937fdf",606:"3529b8aa",615:"9950466a",695:"c18b010f",742:"6fe3ed55",744:"6eaeec6a",749:"f664b96d",801:"bce108cd",830:"f0de8cdb",931:"e577d595",994:"6ed87531",1001:"40bbc562",1009:"74f6d746",1011:"085a34f4",1018:"4de49b23",1023:"13b3c26a",1056:"74117e5c",1157:"81cca553",1167:"357d7a33",1180:"10f0600d",1312:"3008b720",1331:"ba2eb03a",1375:"d1704f0b",1377:"7d2f95b1",1442:"7e23424a",1495:"884cfb8b",1674:"20e177db",1930:"a7eda429",2137:"57ddc77e",2151:"ee3b36bb",2246:"e05583e9",2248:"94f0d242",2282:"87a9c77d",2380:"2bd7ff98",2411:"e6c0f8fc",2464:"a6fb670f",2489:"a52eab64",2492:"00ee1c74",2544:"fd041d89",2553:"6e26e359",2567:"8a274be5",2603:"4211d4d0",2637:"679b590b",2648:"88304564",2657:"a5b299ca",2671:"641782d5",2742:"0b31c705",2812:"7be97e82",3025:"0eddffd9",3038:"483a18f6",3043:"c6841563",3095:"7f37180f",3098:"7e55bbbb",3166:"2a2a0643",3206:"377bdd9f",3278:"ee4c5537",3304:"cea4d226",3340:"ee554a41",3516:"59c4502c",3530:"6722a8a2",3552:"c7bc29fc",3650:"0876ab69",3677:"15e3b0fd",3702:"0a7287d1",3825:"85402492",3948:"24a34349",3964:"2d29c1e0",3981:"cec3f510",4021:"420c943b",4049:"16583eee",4121:"3daa4fe2",4179:"a5a0fb59",4263:"f06c4a53",4299:"4328b852",4302:"faedd610",4587:"660fa9a8",4649:"ffa2f59a",4693:"78be2787",4804:"675f6b93",4816:"a1f14bb1",4849:"7abafe52",4987:"426f31c9",5053:"e1dd6eb2",5162:"cfbdd3fd",5199:"8c9bfda4",5222:"e87d7966",5296:"89401417",5388:"6bce37dd",5396:"7978eaa6",5516:"a8ea585f",5538:"d3b3237b",5751:"0b6b1006",5880:"44b88e7a",5894:"33172d09",5895:"f6d02df6",5905:"c2f917b6",5906:"97f71a9d",6232:"3847dae0",6280:"ef4f9471",6332:"14a17920",6377:"60e50f48",6434:"8b7573ce",6460:"4b302272",6487:"83e219bf",6745:"bd1fb6bf",6784:"7390477e",6817:"8be59205",6831:"3da5cf56",6836:"6a0a1572",6848:"7a2232ea",6901:"dbc2cf1b",7048:"c9f92a3c",7094:"7d87d54d",7155:"0979cccb",7186:"54d11230",7259:"cd2f7bad",7327:"9fb7e6d7",7347:"26ef649f",7403:"b7e38370",7465:"bbb2fa05",7519:"4b44411c",7663:"c97239fe",7808:"bef2dc07",7817:"35007573",7828:"1e9c0247",7833:"84429734",7846:"05814145",7898:"52f67b15",7934:"ddb44f8c",7958:"39e54aba",7997:"626c9493",8006:"ea9ec573",8056:"149903c8",8175:"60af6722",8178:"63eebd02",8329:"59f5e1e5",8342:"fe4daad8",8360:"6702a0d2",8367:"c40c57dd",8418:"a3c80419",8423:"57954414",8467:"17187818",8469:"853c822b",8481:"97d0db97",8573:"c4524247",8736:"1b6d2920",8853:"79c19845",8880:"b7fb1e65",8897:"e0d83d41",8907:"9be0d5b2",8965:"b1eb52f6",9220:"c83f87c4",9303:"207afc0d",9366:"dfac513d",9412:"53da2fcd",9460:"677e1973",9497:"b27e40f6",9501:"4ad8b0df",9502:"891fe76e",9511:"56d8fcf4",9514:"34dde278",9600:"c6f8039a",9647:"d72350de",9726:"e5e7ccaf",9762:"757ce62d",9797:"0a830937",9816:"01ee964f",9903:"3e69969b",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,b){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(b)}),g)return g(b)},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.
1
+ (function(){"use strict";var j={},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 j[n].call(t.exports,t,t.exports,a),t.loaded=!0,t.exports}a.m=j,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(b){return a.O[b](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",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:"bce5050f",96:"1b334230",123:"c4a4f50b",129:"87b494d1",302:"5a8588ef",320:"e688dfe2",395:"f1a0d19d",435:"a2ed8c78",562:"9b3cd181",585:"6b937fdf",606:"3529b8aa",615:"9950466a",695:"0200561d",742:"6fe3ed55",744:"6eaeec6a",749:"f664b96d",801:"884faefa",830:"f0de8cdb",931:"e577d595",994:"d792c194",1001:"40bbc562",1009:"74f6d746",1011:"085a34f4",1018:"4de49b23",1023:"13b3c26a",1056:"74117e5c",1157:"81cca553",1167:"357d7a33",1180:"10f0600d",1312:"3008b720",1331:"ba2eb03a",1375:"d1704f0b",1377:"7d2f95b1",1442:"7e23424a",1495:"4bdbef9a",1674:"20e177db",1930:"a7eda429",2137:"57ddc77e",2151:"ee3b36bb",2246:"e05583e9",2248:"94f0d242",2282:"5f86e45c",2380:"2bd7ff98",2411:"e6c0f8fc",2464:"a6fb670f",2489:"a52eab64",2492:"00ee1c74",2544:"bf130aaf",2553:"993d085f",2567:"8a274be5",2603:"4211d4d0",2637:"679b590b",2648:"88304564",2657:"a5b299ca",2671:"641782d5",2742:"0b31c705",2812:"7be97e82",3025:"0eddffd9",3038:"483a18f6",3043:"c6841563",3094:"1cac9087",3095:"7f37180f",3098:"7e55bbbb",3166:"2a2a0643",3206:"377bdd9f",3278:"ee4c5537",3304:"cea4d226",3340:"ee554a41",3516:"59c4502c",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:"48031e30",4299:"4328b852",4302:"faedd610",4587:"660fa9a8",4649:"daa290f6",4693:"78be2787",4804:"675f6b93",4816:"a1f14bb1",4987:"426f31c9",5053:"e1dd6eb2",5162:"a2a2b7bb",5199:"77b4188a",5222:"e87d7966",5296:"89401417",5388:"6bce37dd",5396:"7978eaa6",5516:"0f6c8ee2",5538:"d9d96db4",5751:"0b6b1006",5880:"44b88e7a",5894:"33172d09",5895:"6814a96e",5905:"cf38fe2f",5906:"97f71a9d",6232:"3847dae0",6280:"ef4f9471",6332:"14a17920",6377:"60e50f48",6434:"8b7573ce",6460:"4b302272",6745:"bd1fb6bf",6784:"7390477e",6817:"8be59205",6831:"db163b6b",6836:"6a0a1572",6848:"7a2232ea",6891:"ef7464be",6901:"dbc2cf1b",7048:"c9f92a3c",7094:"7d87d54d",7155:"0979cccb",7186:"54d11230",7259:"63e91b59",7327:"9fb7e6d7",7347:"26ef649f",7403:"b7e38370",7465:"bbb2fa05",7519:"4b44411c",7663:"c97239fe",7808:"bef2dc07",7817:"35007573",7828:"1e9c0247",7833:"84429734",7846:"05814145",7898:"52f67b15",7934:"ddb44f8c",7958:"39e54aba",7997:"626c9493",8006:"ea9ec573",8056:"149903c8",8175:"60af6722",8178:"63eebd02",8329:"59f5e1e5",8342:"fe4daad8",8360:"6702a0d2",8367:"c40c57dd",8418:"a3c80419",8423:"57954414",8467:"17187818",8469:"853c822b",8481:"97d0db97",8573:"c4524247",8736:"1b6d2920",8853:"b02986df",8880:"cdd117c3",8897:"e0d83d41",8907:"9be0d5b2",8965:"b1eb52f6",9220:"c83f87c4",9303:"207afc0d",9366:"dfac513d",9412:"53da2fcd",9460:"c0cae03a",9497:"d2a8f9ab",9501:"4ad8b0df",9502:"891fe76e",9511:"56d8fcf4",9514:"34dde278",9600:"c6f8039a",9647:"d72350de",9726:"e5e7ccaf",9762:"757ce62d",9797:"0a830937",9816:"01ee964f",9903:"3e69969b",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,b){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(b)}),g)return g(b)},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
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}()})();
@@ -0,0 +1 @@
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))}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[695],{67963:function(H,f,i){i.r(f),i.d(f,{SettingsPage:function(){return p},default:function(){return L}});var e=i(32735),b=i(99357),O=i(5636),r=i(13478),v=i(57269),a=i(39161),C=i(55721),D=i(89793),y=i.n(D),n=i(15503),M=t=>t,T=i(97889),S=i(3040),z=i.n(S);const k={isLoading:!0,isSubmiting:!1,initialData:{responsiveDimensions:!0,sizeOptimization:!0,autoOrientation:!1,videoPreview:!1},modifiedData:{responsiveDimensions:!0,sizeOptimization:!0,autoOrientation:!1,videoPreview:!1}};var I=(t,l)=>(0,T.default)(t,s=>{switch(l.type){case"CANCEL_CHANGES":{s.modifiedData=t.initialData;break}case"GET_DATA_SUCCEEDED":{s.isLoading=!1,s.initialData=l.data,s.modifiedData=l.data;break}case"ON_CHANGE":{z()(s,["modifiedData",...l.keys.split(".")],l.value);break}case"ON_SUBMIT":{s.isSubmiting=!0;break}case"SUBMIT_SUCCEEDED":{s.initialData=t.modifiedData,s.isSubmiting=!1;break}case"ON_SUBMIT_ERROR":{s.isSubmiting=!1;break}default:return t}}),B=i(93826);const p=()=>{const{formatMessage:t}=(0,O.useIntl)(),{lockApp:l,unlockApp:s}=(0,r.useOverlayBlocker)(),P=(0,r.useNotification)(),{get:A,put:N}=(0,r.useFetchClient)();(0,r.useFocusWhenNavigate)();const[{initialData:x,isLoading:R,isSubmiting:U,modifiedData:d},g]=(0,e.useReducer)(I,k,M),h=(0,e.useRef)(!0);(0,e.useEffect)(()=>{const c=C.Z.CancelToken.source(),F=async()=>{try{const{data:{data:m}}=await A((0,n.IF)("settings"),{cancelToken:c.token});g({type:"GET_DATA_SUCCEEDED",data:m})}catch(m){console.error(m)}};return h.current&&F(),()=>{c.cancel("Operation canceled by the user."),h.current=!1}},[]);const E=y()(x,d),G=async o=>{if(o.preventDefault(),!E){l(),g({type:"ON_SUBMIT"});try{await N((0,n.IF)("settings"),d),g({type:"SUBMIT_SUCCEEDED"}),P({type:"success",message:{id:"notification.form.success.fields"}})}catch(c){console.error(c),g({type:"ON_SUBMIT_ERROR"})}s()}},u=({target:{name:o,value:c}})=>{g({type:"ON_CHANGE",keys:o,value:c})};return e.createElement(a.Main,{tabIndex:-1},e.createElement(b.Helmet,{title:t({id:(0,n.OB)("page.title"),defaultMessage:"Settings - Media Libray"})}),e.createElement("form",{onSubmit:G},e.createElement(a.HeaderLayout,{title:t({id:(0,n.OB)("settings.header.label"),defaultMessage:"Media Library"}),primaryAction:e.createElement(a.Button,{disabled:E,"data-testid":"save-button",loading:U,type:"submit",startIcon:e.createElement(v.Check,null),size:"S"},t({id:"global.save",defaultMessage:"Save"})),subtitle:t({id:(0,n.OB)("settings.sub-header.label"),defaultMessage:"Configure the settings for the Media Library"})}),e.createElement(a.ContentLayout,null,R?e.createElement(r.LoadingIndicatorPage,null):e.createElement(a.Layout,null,e.createElement(a.Flex,{direction:"column",alignItems:"stretch",gap:12},e.createElement(a.Box,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(a.Flex,{direction:"column",alignItems:"stretch",gap:4},e.createElement(a.Flex,null,e.createElement(a.Typography,{variant:"delta",as:"h2"},t({id:(0,n.OB)("settings.blockTitle"),defaultMessage:"Asset management"}))),e.createElement(a.Grid,{gap:6},e.createElement(a.GridItem,{col:6,s:12},e.createElement(a.ToggleInput,{"aria-label":"responsiveDimensions","data-testid":"responsiveDimensions",checked:d.responsiveDimensions,hint:t({id:(0,n.OB)("settings.form.responsiveDimensions.description"),defaultMessage:"Enabling this option will generate multiple formats (small, medium and large) of the uploaded asset."}),label:t({id:(0,n.OB)("settings.form.responsiveDimensions.label"),defaultMessage:"Responsive friendly upload"}),name:"responsiveDimensions",offLabel:t({id:"app.components.ToggleCheckbox.off-label",defaultMessage:"Off"}),onLabel:t({id:"app.components.ToggleCheckbox.on-label",defaultMessage:"On"}),onChange:o=>{u({target:{name:"responsiveDimensions",value:o.target.checked}})}})),e.createElement(a.GridItem,{col:6,s:12},e.createElement(a.ToggleInput,{"aria-label":"sizeOptimization","data-testid":"sizeOptimization",checked:d.sizeOptimization,hint:t({id:(0,n.OB)("settings.form.sizeOptimization.description"),defaultMessage:"Enabling this option will reduce the image size and slightly reduce its quality."}),label:t({id:(0,n.OB)("settings.form.sizeOptimization.label"),defaultMessage:"Size optimization"}),name:"sizeOptimization",offLabel:t({id:"app.components.ToggleCheckbox.off-label",defaultMessage:"Off"}),onLabel:t({id:"app.components.ToggleCheckbox.on-label",defaultMessage:"On"}),onChange:o=>{u({target:{name:"sizeOptimization",value:o.target.checked}})}})),e.createElement(a.GridItem,{col:6,s:12},e.createElement(a.ToggleInput,{"aria-label":"autoOrientation","data-testid":"autoOrientation",checked:d.autoOrientation,hint:t({id:(0,n.OB)("settings.form.autoOrientation.description"),defaultMessage:"Enabling this option will automatically rotate the image according to EXIF orientation tag."}),label:t({id:(0,n.OB)("settings.form.autoOrientation.label"),defaultMessage:"Auto orientation"}),name:"autoOrientation",offLabel:t({id:"app.components.ToggleCheckbox.off-label",defaultMessage:"Off"}),onLabel:t({id:"app.components.ToggleCheckbox.on-label",defaultMessage:"On"}),onChange:o=>{u({target:{name:"autoOrientation",value:o.target.checked}})}}))))))))))};var L=()=>e.createElement(r.CheckPagePermissions,{permissions:B.Z.settings},e.createElement(p,null))}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[6831],{96081:function(e){e.exports=JSON.parse('{"header.actions.add-assets":"\u6DFB\u52A0\u65B0\u7D20\u6750","header.actions.add-folder":"\u6DFB\u52A0\u65B0\u6587\u4EF6\u5939","button.next":"\u4E0B\u4E00\u6B65","checkControl.crop-duplicate":"\u590D\u5236\u88C1\u526A\u7D20\u6750","checkControl.crop-original":"\u88C1\u526A\u539F\u59CB\u7D20\u6750","control-card.add":"\u6DFB\u52A0","control-card.cancel":"\u53D6\u6D88","control-card.copy-link":"\u590D\u5236\u94FE\u63A5","control-card.crop":"\u88C1\u526A","control-card.download":"\u4E0B\u8F7D","control-card.edit":"\u7F16\u8F91","control-card.replace-media":"\u66FF\u6362\u5A92\u4F53\u6587\u4EF6","control-card.save":"\u4FDD\u5B58","filter.add":"\u6DFB\u52A0\u7B5B\u9009\u6761\u4EF6","form.button.replace-media":"\u66FF\u6362\u5A92\u4F53","form.input.decription.file-alt":"\u5F53\u6B64\u7D20\u6750\u65E0\u6CD5\u663E\u793A\u65F6\uFF0C\u4F1A\u663E\u793A\u8BE5\u6587\u672C\u3002","form.input.label.file-alt":"\u5907\u7528\u6587\u672C","form.input.label.file-caption":"\u6807\u9898","form.input.label.file-name":"\u6587\u4EF6\u540D","form.input.label.file-location":"\u4F4D\u7F6E","form.input.label.folder-name":"\u6587\u4EF6\u5939\u540D\u79F0","form.input.label.folder-location":"\u4F4D\u7F6E","form.input.label.folder-location-default-label":"\u5A92\u4F53\u5E93","form.upload-url.error.url.invalid":"\u6709\u4E00\u4E2A\u94FE\u63A5\u683C\u5F0F\u4E0D\u5408\u6CD5","form.upload-url.error.url.invalids":"{number}\u4E2A\u94FE\u63A5\u683C\u5F0F\u4E0D\u5408\u6CD5","header.actions.upload-assets":"\u4E0A\u4F20\u7D20\u6750","header.content.assets":"{numberFolders, plural, one {1 folder} other {# folders}} - {numberAssets, plural, one {1 \u4E2A\u7D20\u6750} other {# \u4E2A\u7D20\u6750}}","input.button.label":"\u6D4F\u89C8\u6587\u4EF6","input.label-bold":"\u62D6\u62FD\u81F3\u6B64","input.label-normal":"\u5E76\u4E0A\u4F20","input.placeholder":"\u70B9\u51FB\u9009\u62E9\u4E00\u4E2A\u7D20\u6750\uFF0C\u6216\u8005\u62D6\u62FD\u6587\u4EF6\u81F3\u533A\u57DF","input.placeholder.icon":"\u5728\u6B64\u533A\u57DF\u5185\u653E\u7F6E\u7D20\u6750","input.url.description":"\u56DE\u8F66\u952E\u5206\u9694URL\u94FE\u63A5","input.url.label":"URL","list.assets-empty.subtitle":"\u6DFB\u52A0\u4E00\u4E2A\u5230\u5217\u8868\u4E2D","list.assets-empty.title":"\u6682\u65E0\u7D20\u6750","list.assets-empty.title-withSearch":"\u65E0\u7D20\u6750\u7B26\u5408\u5F53\u524D\u7B5B\u9009\u6761\u4EF6","list.assets.empty":"\u4E0A\u4F20\u4F60\u7684\u7B2C\u4E00\u4E2A\u7D20\u6750","list.assets.loading-asset":"\u6B63\u5728\u4E3A\u5A92\u4F53\u52A0\u8F7D\u9884\u89C8: {path}","list.assets.not-supported-content":"\u65E0\u53EF\u7528\u9884\u89C8","list.assets.preview-asset":"\u9884\u89C8\u89C6\u9891\uFF08\u8DEF\u5F84\uFF1A{path}\uFF09","list.assets.selected":"{number, plural, one {# \u4E2A\u7D20\u6750} other {# \u4E2A\u7D20\u6750}}\u51C6\u5907\u4E0A\u4F20","list.assets.type-not-allowed":"\u6587\u4EF6\u7C7B\u578B\u4E0D\u5408\u6CD5","list.table.header.actions":"\u64CD\u4F5C","list.table.header.preview":"\u9884\u89C8","list.table.header.name":"\u540D\u79F0","list.table.header.ext":"\u6269\u5C55\u540D","list.table.header.size":"\u5927\u5C0F","list.table.header.createdAt":"\u521B\u5EFA\u65F6\u95F4","list.table.header.updatedAt":"\u6700\u540E\u66F4\u65B0\u65F6\u95F4","list.table.header.sort":"\u6309{label}\u6392\u5E8F","list.table.content.empty-label":"\u6B64\u5B57\u6BB5\u4E3A\u7A7A","list.assets.title":"\u8D44\u6E90({count})","list.asset.at.finished":"\u8D44\u6E90\u5DF2\u7ECF\u52A0\u8F7D\u5B8C\u6BD5","list.assets-empty.search":"\u672A\u627E\u5230\u7ED3\u679C","list.assets.empty-upload":"\u4E0A\u4F20\u4F60\u7684\u7B2C\u4E00\u4E2A\u8D44\u6E90...","list.assets.empty.no-permissions":"\u6CA1\u6709\u67E5\u770B\u6743\u9650","list-assets-select":"\u9009\u62E9{name}\u8D44\u6E90","list.assets.to-upload":"\u6709{number, plural, =0 {\u6CA1\u6709\u8D44\u6E90} one {1\u4E2A\u8D44\u6E90} other {#\u4E2A\u8D44\u4EA7}}\u53EF\u4EE5\u4E0A\u4F20","list.folder.edit":"\u7F16\u8F91\u6587\u4EF6\u5939","list.folder.select":"\u9009\u62E9{name}\u6587\u4EF6\u5939","list.folder.subtitle":"{folderCount, plural, =0 {#\u4E2A\u6587\u4EF6\u5939} one {#\u4E2A\u6587\u4EF6\u5939} other {#\u4E2A\u6587\u4EF6\u5939}}, {filesCount, plural, =0 {#\u4E2A\u8D44\u6E90} one {#\u4E2A\u8D44\u6E90} other {#\u4E2A\u8D44\u6E90}}","list.folders.title":"\u6587\u4EF6\u5939\uFF08{count}\uFF09","list.folders.link-label":"\u8BBF\u95EE\u6587\u4EF6\u5939","mediaLibraryInput.actions.nextSlide":"\u4E0B\u4E00\u5F20\u5E7B\u706F\u7247","mediaLibraryInput.actions.previousSlide":"\u4E0A\u4E00\u5F20\u5E7B\u706F\u7247","mediaLibraryInput.placeholder":"\u70B9\u51FB\u6DFB\u52A0\u7D20\u6750\uFF0C\u6216\u62D6\u653E\u4E00\u4E2A\u7D20\u6750\u5230\u5F53\u524D\u533A\u57DF","mediaLibraryInput.slideCount":"\u5171 {m} \u5F20\uFF0C\u7B2C {n} \u5F20","modal.file-details.date":"\u65E5\u671F","modal.file-details.dimensions":"\u5C3A\u5BF8","modal.file-details.extension":"\u6269\u5C55\u540D","modal.file-details.size":"\u5927\u5C0F","modal.file-details.id":"\u8D44\u6E90ID","modal.folder.elements.count":"{folderCount}\u4E2A\u6587\u4EF6\u5939\uFF0C{assetCount}\u4E2A\u8D44\u6E90","modal.folder.move.title":"\u5C06\u5143\u7D20\u79FB\u52A8\u5230","modal.remove.success-label":"\u5143\u7D20\u5DF2\u6210\u529F\u5220\u9664","modal.move.success-label":"\u5143\u7D20\u5DF2\u6210\u529F\u79FB\u52A8","modal.upload.cancelled":"\u624B\u52A8\u4E0A\u4F20\u5DF2\u4E2D\u6B62","modal.folder.create.title":"\u65B0\u589E\u6587\u4EF6\u5939","modal.folder.create.submit":"\u65B0\u589E","modal.folder.cancel":"\u53D6\u6D88","modal.header.go-back":"\u8FD4\u56DE","modal.header.browse":"\u4E0A\u4F20\u7D20\u6750","modal.header.file-detail":"\u8BE6\u60C5","modal.header.pending-assets":"\u7D20\u6750\u4E0A\u4F20\u4E2D","modal.header.select-files":"\u9009\u4E2D\u6587\u4EF6","modal.nav.browse":"\u6D4F\u89C8","modal.nav.computer":"\u4ECE\u672C\u5730","modal.nav.selected":"\u9009\u4E2D","modal.nav.url":"\u4ECE\u94FE\u63A5","modal.selected-list.sub-header-subtitle":"\u62D6\u62FD\u6392\u5E8F\u5B57\u6BB5\u4E2D\u7684\u7D20\u6750","modal.upload-list.footer.button":"\u4E0A\u4F20 {number, plural, one {# \u4E2A\u7D20\u6750} other {# \u4E2A\u7D20\u6750}}\u5230\u5A92\u4F53\u5E93","modal.upload-list.sub-header-subtitle":"\u5728\u6DFB\u52A0\u5230\u5A92\u4F53\u5E93\u4E4B\u524D\uFF0C\u7BA1\u7406\u4F60\u7684\u7D20\u6750","modal.upload-list.sub-header.button":"\u6DFB\u52A0\u66F4\u591A\u7684\u7D20\u6750","page.title":"\u8BBE\u7F6E - \u5A92\u4F53\u5E93","plugin.description.long":"\u5A92\u4F53\u6587\u4EF6\u7BA1\u7406","plugin.description.short":"\u5A92\u4F53\u6587\u4EF6\u7BA1\u7406","plugin.name":"\u5A92\u4F53\u5E93","settings.section.doc.label":"\u6587\u6863","search.placeholder":"\u641C\u7D22\u7D20\u6750...","search.clear.label":"\u6E05\u9664\u641C\u7D22","search.label":"\u641C\u7D22\u8D44\u6E90","settings.blockTitle":"\u8D44\u6E90\u7BA1\u7406","settings.form.autoOrientation.description":"\u6839\u636EEXIF orientation\u6807\u7B7E\u81EA\u52A8\u65CB\u8F6C\u56FE\u50CF","settings.form.autoOrientation.label":"\u5F00\u59CB\u81EA\u52A8\u65CB\u8F6C\u529F\u80FD","settings.form.responsiveDimensions.description":"\u4E0A\u4F20\u7D20\u6750\u5C06\u4F1A\u81EA\u52A8\u751F\u6210\u5927\uFF0C\u4E2D\uFF0C\u5C0F\u4E09\u79CD\u5C3A\u5BF8","settings.form.responsiveDimensions.label":"\u542F\u52A8\u54CD\u5E94\u5F0F\u56FE\u7247\u4E0A\u4F20","settings.form.sizeOptimization.label":"\u5F00\u542F\u56FE\u7247\u5927\u5C0F\u4F18\u5316(\u65E0\u635F)","settings.form.sizeOptimization.description":"\u542F\u7528\u6B64\u9009\u9879\u5C06\u7F29\u5C0F\u56FE\u50CF\u5927\u5C0F\u5E76\u7565\u5FAE\u964D\u4F4E\u5176\u8D28\u91CF\u3002","settings.form.videoPreview.description":"\u81EA\u52A8\u751F\u62106\u79D2\u949F\u7684\u89C6\u9891\u9884\u89C8\uFF08GIF\uFF09","settings.form.videoPreview.label":"\u9884\u89C8","settings.header.label":"\u5A92\u4F53\u5E93 - \u8BBE\u7F6E","settings.section.image.label":"\u56FE\u7247","settings.section.video.label":"\u89C6\u9891","settings.sub-header.label":"\u5A92\u4F53\u5E93\u8BBE\u7F6E","sort.created_at_asc":"\u6700\u65E9\u4E0A\u4F20","sort.created_at_desc":"\u6700\u8FD1\u4E0A\u4F20","sort.label":"\u6392\u5E8F","sort.name_asc":"\u5B57\u6BCD\u987A\u5E8F (A to Z)","sort.name_desc":"\u5B57\u6BCD\u5012\u5E8F (Z to A)","sort.updated_at_asc":"\u6700\u65E9\u66F4\u65B0","sort.updated_at_desc":"\u6700\u8FD1\u66F4\u65B0","window.confirm.close-modal.file":"\u4F60\u786E\u5B9A\u5417\uFF1F\u4F60\u7684\u66F4\u6539\u5C06\u4F1A\u4E22\u5931","window.confirm.close-modal.files":"\u4F60\u786E\u5B9A\u5417\uFF1F\u4F60\u8FD8\u6709\u4E00\u4E9B\u6587\u4EF6\u8FD8\u6CA1\u6709\u88AB\u4E0A\u4F20","apiError.FileTooBig":"\u4E0A\u4F20\u7684\u6587\u4EF6\u8D85\u8FC7\u5141\u8BB8\u7684\u6700\u5927\u8D44\u6E90\u5927\u5C0F","upload.generic-error":"\u4E0A\u4F20\u6587\u4EF6\u65F6\u53D1\u751F\u9519\u8BEF","bulk.select.label":"\u9009\u62E9\u6240\u6709\u8D44\u6E90","content.isLoading":"\u5185\u5BB9\u6B63\u5728\u52A0\u8F7D\u4E2D","control-card.stop-crop":"\u505C\u6B62\u88C1\u526A","header.actions.add-assets.folder":"\u6587\u4EF6\u5939","header.actions.upload-new-asset":"\u4E0A\u4F20\u65B0\u8D44\u6E90","header.content.assets-empty":"\u65E0\u8D44\u6E90","input.label":"\u62D6\u62FD\u5230\u6B64\u5904\u6216","input.notification.not-supported":"\u60A8\u65E0\u6CD5\u4E0A\u4F20\u6B64\u7C7B\u578B\u7684\u6587\u4EF6\uFF0C\u4EC5\u63A5\u53D7\u4EE5\u4E0B\u7C7B\u578B - {fileTypes}","permissions.not-allowed.update":"\u60A8\u65E0\u6743\u7F16\u8F91\u6B64\u6587\u4EF6","tabs.title":"\u60A8\u5E0C\u671B\u5982\u4F55\u4E0A\u4F20\u60A8\u7684\u8D44\u6E90\uFF1F","config.title":"\u914D\u7F6E\u89C6\u56FE - \u5A92\u4F53\u5E93","config.back":"\u8FD4\u56DE","config.subtitle":"\u5B9A\u4E49\u5A92\u4F53\u5E93\u7684\u89C6\u56FE\u8BBE\u7F6E","config.entries.title":"\u6BCF\u9875\u6761\u76EE\u6570","config.sort.title":"\u9ED8\u8BA4\u6392\u5E8F\u987A\u5E8F","config.entries.note":"\u5A92\u4F53\u5E93\u4E2D\u9ED8\u8BA4\u663E\u793A\u7684\u8D44\u6E90\u6570\u91CF","config.note":"\u6CE8\u610F\uFF1A\u60A8\u53EF\u4EE5\u5728\u5A92\u4F53\u5E93\u4E2D\u8986\u76D6\u6B64\u503C","config.popUpWarning.warning.updateAllSettings":"\u8FD9\u5C06\u4FEE\u6539\u60A8\u7684\u6240\u6709\u8BBE\u7F6E","view-switch.list":"\u5217\u8868\u89C6\u56FE","view-switch.grid":"\u7F51\u683C\u89C6\u56FE"}')}}]);
@@ -0,0 +1,13 @@
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[3650],{84837:function(it,J,t){t.r(J),t.d(J,{default:function(){return we}});var e=t(32735),R=t(5141),A=t(5636),Ee=t(99357),g=t(13478),n=t(39161),Z=t(83292),X=t(33348),y=t(57269),he=t(86588),ve=t(61405),ye=t(91575),Ce=t(35468),Me=t(65790),Fe=t(25005),Be=t(89581),Se=t(60216),f=t.n(Se);const V=({pagination:s})=>e.createElement(n.Box,{paddingTop:6},e.createElement(n.Flex,{alignItems:"flex-end",justifyContent:"space-between"},e.createElement(g.PageSizeURLQuery,null),e.createElement(g.PaginationURLQuery,{pagination:s})));V.defaultProps={pagination:{pageCount:0,pageSize:10,total:0}},V.propTypes={pagination:f().shape({page:f().number,pageCount:f().number,pageSize:f().number,total:f().number})};var p=t(68781),Le=t(20069),Ae=t(81094);const Y=({selected:s,onSuccess:l})=>{const{formatMessage:r}=(0,A.useIntl)(),[i,c]=(0,e.useState)(!1),{isLoading:u,remove:h}=(0,Ae.K)(),E=async()=>{await h(s),l()};return e.createElement(e.Fragment,null,e.createElement(n.Button,{variant:"danger-light",size:"S",startIcon:e.createElement(y.Trash,null),onClick:()=>c(!0)},r({id:"global.delete",defaultMessage:"Delete"})),e.createElement(g.ConfirmDialog,{isConfirmButtonLoading:u,isOpen:i,onToggleDialog:()=>c(!1),onConfirm:E}))};Y.propTypes={selected:f().arrayOf(p.pw,p.nx).isRequired,onSuccess:f().func.isRequired};var be=t(83281),Ie=t(86834),Te=t.n(Ie),q=t(84968),x=t(74951),d=t(15503);const Re=()=>{const s=(0,g.useNotification)(),l=(0,q.useQueryClient)(),r=(0,d.IF)("actions/bulk-move"),{post:i}=(0,g.useFetchClient)(),c=({destinationFolderId:E,filesAndFolders:m})=>{const C=m.reduce((v,o)=>{const{id:b,type:B}=o,T=B==="asset"?"fileIds":"folderIds";return v[T]||(v[T]=[]),v[T].push(b),v},{});return i(r,{...C,destinationFolderId:E})},u=(0,q.useMutation)(c,{onSuccess(E){const{data:{data:m}}=E;m?.files?.length>0&&(l.refetchQueries([x.Z,"assets"],{active:!0}),l.refetchQueries([x.Z,"asset-count"],{active:!0})),l.refetchQueries([x.Z,"folders"],{active:!0}),s({type:"success",message:{id:(0,d.OB)("modal.move.success-label"),defaultMessage:"Elements have been moved successfully."}})}});return{...u,move:(E,m)=>u.mutateAsync({destinationFolderId:E,filesAndFolders:m})}};var xe=t(21375),De=t(72236);const $=({onClose:s,selected:l,currentFolder:r})=>{const{formatMessage:i}=(0,A.useIntl)(),{data:c,isLoading:u}=(0,De.v)(),{move:h}=Re();if(!c)return null;const E=async(v,{setErrors:o})=>{try{await h(v.destination.value,l),s()}catch(b){const T=(0,g.normalizeAPIError)(b).errors.reduce((O,S)=>(O[S.values?.path?.length||"destination"]=S.defaultMessage,O),{});Te()(T)||o(T)}},m=()=>{s()};if(u)return e.createElement(n.ModalLayout,{onClose:m,labelledBy:"title"},e.createElement(n.ModalBody,null,e.createElement(n.Flex,{justifyContent:"center",paddingTop:4,paddingBottom:4},e.createElement(n.Loader,null,i({id:(0,d.OB)("content.isLoading"),defaultMessage:"Content is loading."})))));const C={destination:{value:r?.id||"",label:r?.name||c[0].label}};return e.createElement(n.ModalLayout,{onClose:m,labelledBy:"title"},e.createElement(be.Formik,{validateOnChange:!1,onSubmit:E,initialValues:C},({values:v,errors:o,setFieldValue:b})=>e.createElement(g.Form,{noValidate:!0},e.createElement(n.ModalHeader,null,e.createElement(n.Typography,{fontWeight:"bold",textColor:"neutral800",as:"h2",id:"title"},i({id:(0,d.OB)("modal.folder.move.title"),defaultMessage:"Move elements to"}))),e.createElement(n.ModalBody,null,e.createElement(n.Grid,{gap:4},e.createElement(n.GridItem,{xs:12,col:12},e.createElement(n.Flex,{direction:"column",alignItems:"stretch",gap:1},e.createElement(n.FieldLabel,{htmlFor:"folder-destination"},i({id:(0,d.OB)("form.input.label.folder-location"),defaultMessage:"Location"})),e.createElement(xe.Z,{options:c,onChange:B=>{b("destination",B)},defaultValue:v.destination,name:"destination",menuPortalTarget:document.querySelector("body"),inputId:"folder-destination",error:o?.destination,ariaErrorMessage:"destination-error"}),o.destination&&e.createElement(n.Typography,{variant:"pi",as:"p",id:"folder-destination-error",textColor:"danger600"},o.destination))))),e.createElement(n.ModalFooter,{startActions:e.createElement(n.Button,{onClick:m,variant:"tertiary",name:"cancel"},i({id:"cancel",defaultMessage:"Cancel"})),endActions:e.createElement(n.Button,{type:"submit",loading:u},i({id:"modal.folder.move.submit",defaultMessage:"Move"}))}))))};$.defaultProps={currentFolder:void 0},$.propTypes={onClose:f().func.isRequired,currentFolder:p.nx,selected:f().arrayOf(p.nx,p.pw).isRequired};const z=({selected:s,onSuccess:l,currentFolder:r})=>{const{formatMessage:i}=(0,A.useIntl)(),[c,u]=(0,e.useState)(!1),h=()=>{u(!1),l()};return e.createElement(e.Fragment,null,e.createElement(n.Button,{variant:"secondary",size:"S",startIcon:e.createElement(y.Folder,null),onClick:()=>u(!0)},i({id:"global.move",defaultMessage:"Move"})),c&&e.createElement($,{currentFolder:r,onClose:h,selected:s}))};z.defaultProps={currentFolder:void 0},z.propTypes={onSuccess:f().func.isRequired,currentFolder:p.nx,selected:f().arrayOf(p.pw,p.nx).isRequired};const G=({selected:s,onSuccess:l,currentFolder:r})=>{const{formatMessage:i}=(0,A.useIntl)();return e.createElement(n.Flex,{gap:2,paddingBottom:5},e.createElement(n.Typography,{variant:"epsilon",textColor:"neutral600"},i({id:(0,Le.Z)("list.assets.selected"),defaultMessage:"{numberFolders, plural, one {1 folder} other {# folders}} - {numberAssets, plural, one {1 asset} other {# assets}} selected"},{numberFolders:s.filter(({type:c})=>c==="folder").length,numberAssets:s.filter(({type:c})=>c==="asset").length})),e.createElement(Y,{selected:s,onSuccess:l}),e.createElement(z,{currentFolder:r,selected:s,onSuccess:l}))};G.defaultProps={currentFolder:void 0},G.propTypes={onSuccess:f().func.isRequired,currentFolder:p.nx,selected:f().arrayOf(p.pw,p.nx).isRequired};var Oe=t(1920);const Pe=({isFiltering:s,canCreate:l,canRead:r})=>s?{id:"list.assets-empty.title-withSearch",defaultMessage:"There are no elements with the applied filters"}:r?l?{id:"list.assets.empty-upload",defaultMessage:"Upload your first assets..."}:{id:"list.assets.empty",defaultMessage:"Media Library is empty"}:{id:"header.actions.no-permissions",defaultMessage:"No permissions to view"},_=({canCreate:s,isFiltering:l,canRead:r,onActionClick:i})=>{const{formatMessage:c}=(0,A.useIntl)(),u=Pe({isFiltering:l,canCreate:s,canRead:r});return e.createElement(Oe.i,{icon:r?null:y.EmptyPermissions,action:s&&!l&&e.createElement(n.Button,{variant:"secondary",startIcon:e.createElement(y.Plus,null),onClick:i},c({id:(0,d.OB)("header.actions.add-assets"),defaultMessage:"Add new assets"})),content:c({...u,id:(0,d.OB)(u.id)})})};_.propTypes={canCreate:f().bool.isRequired,canRead:f().bool.isRequired,isFiltering:f().bool.isRequired,onActionClick:f().func.isRequired};var D=t(47359),Ue=t(79996),Qe=t(90768),ee=t(90142);const ke=()=>{const s=(0,e.useRef)(null),[l,r]=(0,e.useState)(!1),{formatMessage:i}=(0,A.useIntl)(),{trackUsage:c}=(0,g.useTracking)(),[{query:u},h]=(0,g.useQueryParams)(),E=u?.filters?.$and||[],m=()=>r(o=>!o),C=o=>{h({filters:{$and:o},page:1})},v=o=>{c("didFilterMediaLibraryElements",{location:"content-manager",filter:Object.keys(o[o.length-1])[0]}),h({filters:{$and:o},page:1})};return e.createElement(e.Fragment,null,e.createElement(n.Button,{variant:"tertiary",ref:s,startIcon:e.createElement(y.Filter,null),onClick:m,size:"S"},i({id:"app.utils.filters",defaultMessage:"Filters"})),l&&e.createElement(Qe.Z,{displayedFilters:ee.Z,filters:E,onSubmit:v,onToggle:m,source:s}),e.createElement(Ue.Z,{appliedFilters:E,filtersSchema:ee.Z,onRemoveFilter:C}))};var Ze=t(17837);const W=({breadcrumbs:s,canCreate:l,folder:r,onToggleEditFolderDialog:i,onToggleUploadAssetDialog:c})=>{const{formatMessage:u}=(0,A.useIntl)(),{pathname:h}=(0,R.useLocation)(),[{query:E}]=(0,g.useQueryParams)(),m={...E,folder:r?.parent?.id??void 0};return e.createElement(n.HeaderLayout,{title:u({id:(0,d.OB)("plugin.name"),defaultMessage:"Media Library"}),subtitle:s&&r&&e.createElement(Ze.O,{as:"nav",label:u({id:(0,d.OB)("header.breadcrumbs.nav.label"),defaultMessage:"Folders navigation"}),breadcrumbs:s,currentFolderId:r?.id}),navigationAction:r&&e.createElement(n.Link,{startIcon:e.createElement(y.ArrowLeft,null),to:`${h}?${(0,X.stringify)(m,{encode:!1})}`},u({id:(0,d.OB)("header.actions.folder-level-up"),defaultMessage:"Back"})),primaryAction:l&&e.createElement(n.Flex,{gap:2},e.createElement(n.Button,{startIcon:e.createElement(y.Plus,null),variant:"secondary",onClick:i},u({id:(0,d.OB)("header.actions.add-folder"),defaultMessage:"Add new folder"})),e.createElement(n.Button,{startIcon:e.createElement(y.Plus,null),onClick:c},u({id:(0,d.OB)("header.actions.add-assets"),defaultMessage:"Add new assets"})))})};W.defaultProps={breadcrumbs:!1,folder:null},W.propTypes={breadcrumbs:f().oneOfType([p.Fv,f().bool]),canCreate:f().bool.isRequired,folder:p.nx,onToggleEditFolderDialog:f().func.isRequired,onToggleUploadAssetDialog:f().func.isRequired};var Ve=t(37293),$e=t(77935),ze=t(46891),Ge=t(36156),We=t(93826);const He=(0,Z.default)(n.Box)`
2
+ height: ${32/16}rem;
3
+ display: flex;
4
+ align-items: center;
5
+ `,te=(0,Z.default)(n.Typography)`
6
+ max-width: 100%;
7
+ `,ne=(0,Z.default)(n.Box)`
8
+ svg {
9
+ path {
10
+ fill: ${({theme:s})=>s.colors.neutral500};
11
+ }
12
+ }
13
+ `,Ne=()=>{const{push:s}=(0,R.useHistory)(),{canRead:l,canCreate:r,canUpdate:i,canCopyLink:c,canDownload:u,isLoading:h}=(0,ze.y)(),E=(0,e.useRef)(),{formatMessage:m}=(0,A.useIntl)(),{pathname:C}=(0,R.useLocation)(),{trackUsage:v}=(0,g.useTracking)(),[{query:o},b]=(0,g.useQueryParams)(),B=Boolean(o._q||o.filters),[T,O]=(0,g.usePersistentState)(p.uf.view,p.Uk.GRID),S=T===p.Uk.GRID,{data:L,isLoading:Je,errors:Xe}=(0,Ve.L)({skipWhen:!l,query:o}),{data:Ye,isLoading:qe,errors:_e}=(0,$e.j)({enabled:l&&L?.pagination?.page===1&&!(0,d.rV)(o),query:o}),{data:H,isLoading:ae,error:et}=(0,Ge.W)(o?.folder,{enabled:l&&!!o?.folder});et?.response?.status===404&&s(C);const P=Ye?.map(a=>({...a,type:"folder",folderURL:(0,d.Km)(C,o,a.id),isSelectable:i}))??[],M=P?.length||0,U=L?.results?.map(a=>({...a,type:"asset",isSelectable:i}))||[],F=U?.length??0,tt=L?.pagination?.total,se=ae||qe||h||Je,[nt,at]=(0,e.useState)(!1),[st,oe]=(0,e.useState)(!1),[le,N]=(0,e.useState)(void 0),[j,re]=(0,e.useState)(void 0),[I,{selectOne:Q,selectAll:ie}]=(0,g.useSelectionState)(["type","id"],[]),de=I?.length>0&&I?.length!==F+M,K=()=>at(a=>!a),ce=({created:a=!1}={})=>{a&&o?.page!=="1"&&b({...o,page:1}),oe(k=>!k)},ue=(a,k)=>{a.target.checked&&v("didSelectAllMediaLibraryElements"),ie(k)},me=a=>{v("didSortMediaLibraryElements",{location:"upload",sort:a}),b({sort:a})},ge=a=>{re(a),oe(!0)},ot=a=>{re(null),ce(a),E.current&&E.current.focus()},fe=a=>{a===F&&L.pagination.page===L.pagination.pageCount&&L.pagination.page>1&&b({...o,page:L.pagination.page-1})},lt=()=>{ie(),fe(I.length)};return(0,g.useFocusWhenNavigate)(),e.createElement(n.Layout,null,e.createElement(n.Main,{"aria-busy":se},e.createElement(W,{breadcrumbs:!ae&&(0,d.M4)(H,{pathname:C,query:o}),canCreate:r,onToggleEditFolderDialog:ce,onToggleUploadAssetDialog:K,folder:H}),e.createElement(n.ActionLayout,{startActions:e.createElement(e.Fragment,null,i&&S&&(F>0||M>0)&&e.createElement(He,{paddingLeft:2,paddingRight:2,background:"neutral0",hasRadius:!0,borderColor:"neutral200"},e.createElement(n.BaseCheckbox,{"aria-label":m({id:(0,d.OB)("bulk.select.label"),defaultMessage:"Select all folders & assets"}),indeterminate:de,value:(F>0||M>0)&&I.length===F+M,onChange:a=>ue(a,[...U,...P])})),l&&S&&e.createElement(Be.Z,{onChangeSort:me}),l&&e.createElement(ke,null)),endActions:e.createElement(e.Fragment,null,e.createElement(g.CheckPermissions,{permissions:We.Z.configureView},e.createElement(ne,{paddingTop:1,paddingBottom:1},e.createElement(n.IconButton,{forwardedAs:R.Link,to:{pathname:`${C}/configuration`,search:(0,X.stringify)(o,{encode:!1})},icon:e.createElement(y.Cog,null),label:m({id:"app.links.configure-view",defaultMessage:"Configure the view"})}))),e.createElement(ne,{paddingTop:1,paddingBottom:1},e.createElement(n.IconButton,{icon:S?e.createElement(y.List,null):e.createElement(y.Grid,null),label:m(S?{id:(0,d.OB)("view-switch.list"),defaultMessage:"List View"}:{id:(0,d.OB)("view-switch.grid"),defaultMessage:"Grid View"}),onClick:()=>O(S?p.Uk.LIST:p.Uk.GRID)})),e.createElement(g.SearchURLQuery,{label:m({id:(0,d.OB)("search.label"),defaultMessage:"Search for an asset"}),trackedEvent:"didSearchMediaLibraryElements",trackedEventDetails:{location:"upload"}}))}),e.createElement(n.ContentLayout,null,I.length>0&&e.createElement(G,{currentFolder:H,selected:I,onSuccess:lt}),se&&e.createElement(g.LoadingIndicatorPage,null),(Xe||_e)&&e.createElement(g.AnErrorOccurred,null),M===0&&F===0&&e.createElement(_,{canCreate:r,canRead:l,isFiltering:B,onActionClick:K}),l&&!S&&(F>0||M>0)&&e.createElement(Fe.b,{assetCount:F,folderCount:M,indeterminate:de,onChangeSort:me,onChangeFolder:a=>s((0,d.Km)(C,o,a)),onEditAsset:N,onEditFolder:ge,onSelectOne:Q,onSelectAll:ue,rows:[...P,...U],selected:I,shouldDisableBulkSelect:!i,sortQuery:o?.sort??""}),l&&S&&e.createElement(e.Fragment,null,M>0&&e.createElement(Me.a,{title:(B&&F>0||!B)&&m({id:(0,d.OB)("list.folders.title"),defaultMessage:"Folders ({count})"},{count:M})||""},P.map(a=>{const rt=!!I.filter(({type:w})=>w==="folder").find(w=>w.id===a.id),pe=(0,d.Km)(C,o,a?.id);return e.createElement(n.GridItem,{col:3,key:`folder-${a.id}`},e.createElement(D.Ac,{ref:j&&a.id===j.id?E:void 0,ariaLabel:a.name,id:`folder-${a.id}`,to:pe,startAction:Q&&a.isSelectable?e.createElement(D.MM,{"data-testid":`folder-checkbox-${a.id}`,value:rt,onChange:()=>Q(a)}):null,cardActions:e.createElement(n.IconButton,{icon:e.createElement(y.Pencil,null),"aria-label":m({id:(0,d.OB)("list.folder.edit"),defaultMessage:"Edit folder"}),onClick:()=>ge(a)})},e.createElement(D.Bu,null,e.createElement(D.u6,{to:pe},e.createElement(n.Flex,{as:"h2",direction:"column",alignItems:"start",maxWidth:"100%"},e.createElement(te,{fontWeight:"semiBold",ellipsis:!0},a.name,e.createElement(n.VisuallyHidden,null,":")),e.createElement(te,{as:"span",textColor:"neutral600",variant:"pi",ellipsis:!0},m({id:(0,d.OB)("list.folder.subtitle"),defaultMessage:"{folderCount, plural, =0 {# folder} one {# folder} other {# folders}}, {filesCount, plural, =0 {# asset} one {# asset} other {# assets}}"},{folderCount:a.children.count,filesCount:a.files.count})))))))})),F>0&&M>0&&e.createElement(n.Box,{paddingTop:6,paddingBottom:4},e.createElement(n.Divider,null)),F>0&&e.createElement(Ce.r,{assets:U,onEditAsset:N,onSelectAsset:Q,selectedAssets:I.filter(({type:a})=>a==="asset"),title:(!B||B&&M>0)&&L?.pagination?.page===1&&m({id:(0,d.OB)("list.assets.title"),defaultMessage:"Assets ({count})"},{count:tt})||""})),L?.pagination&&e.createElement(V,{pagination:L.pagination}))),nt&&e.createElement(he.x,{onClose:K,trackedLocation:"upload",folderId:o?.folder}),st&&e.createElement(ve.f,{onClose:ot,folder:j,parentFolderId:o?.folder,location:"upload"}),le&&e.createElement(ye.s,{onClose:a=>{a===null&&fe(1),N(void 0)},asset:le,canUpdate:i,canCopyLink:c,canDownload:u,trackedLocation:"upload"}))};var je=t(68715);const Ke=(0,e.lazy)(()=>t.e(9514).then(t.bind(t,1372)));var we=()=>{const{config:{isLoading:s,isError:l,data:r}}=(0,je.Z)(),[{rawQuery:i},c]=(0,g.useQueryParams)(),{formatMessage:u}=(0,A.useIntl)(),h=u({id:(0,d.OB)("plugin.name"),defaultMessage:"Media Library"});return(0,e.useEffect)(()=>{s||l||i||c({sort:r.sort,page:1,pageSize:r.pageSize})},[s,l,r,i,c]),(0,g.useFocusWhenNavigate)(),e.createElement(n.Main,{"aria-busy":s},e.createElement(Ee.Helmet,{title:h}),s&&e.createElement(g.LoadingIndicatorPage,null),i?e.createElement(e.Suspense,{fallback:e.createElement(g.LoadingIndicatorPage,null)},e.createElement(R.Switch,null,e.createElement(R.Route,{exact:!0,path:`/plugins/${x.Z}`,component:Ne}),e.createElement(R.Route,{exact:!0,path:`/plugins/${x.Z}/configuration`,render:()=>e.createElement(Ke,{config:r})}))):null)}}}]);
@@ -1 +1 @@
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)(),z=(0,p.useQueryClient)();(0,i.useFocusWhenNavigate)();const G=(0,e.useMemo)(()=>({update:l.Z.updateAdvancedSettings}),[]),{isLoading:I,allowedActions:{canUpdate:k}}=(0,i.useRBAC)(G),{status:Z,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=I||Z!=="success",B=(0,p.useMutation)(c=>R(c),{async onSuccess(){await z.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:!k,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.Stack,{spacing: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
+ "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)}}]);
@@ -0,0 +1 @@
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)}}]);
@@ -0,0 +1,30 @@
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}}]);
@@ -0,0 +1,23 @@
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5162],{47272:function(V,P,l){l.d(P,{Z:function(){return ie}});var e=l(32735),o=l(13478),t=l(39161),y=l(84968),x=l(5141),R=l(8888),j=l(60216),i=l.n(j),k=l(57269),I=l(83281),T=l(5636),$=l(83292),N=l(23940),z=l.n(N);const O=({disabledEvents:a,name:n,events:r,inputValue:s,handleChange:u,handleChangeAll:p})=>{const d=r.filter(g=>!a.includes(g)),c=s.length===d.length,h=s.length>0,f=({target:{name:g}})=>{p({target:{name:g,value:!c}})};return e.createElement("tr",null,e.createElement("td",null,e.createElement(t.Checkbox,{indeterminate:h&&!c,"aria-label":"Select all entries",name:n,onChange:f,value:c},z()(n))),r.map(g=>e.createElement("td",{key:g},e.createElement(t.BaseCheckbox,{disabled:a.includes(g),"aria-label":g,name:g,value:s.includes(g),onValueChange:E=>u({target:{name:g,value:E}})}))))};O.defaultProps={disabledEvents:[],events:[],inputValue:[],handleChange(){},handleChangeAll(){}},O.propTypes={disabledEvents:i().array,events:i().array,inputValue:i().array,handleChange:i().func,handleChangeAll:i().func,name:i().string.isRequired};var X=O,Q=a=>a.reduce((n,r)=>{const s=r.split(".")[0];return n[s]||(n[s]=[]),n[s].push(r),n},{});const q=$.default.table`
2
+ td {
3
+ height: ${52/16}rem;
4
+ width: 10%;
5
+ vertical-align: middle;
6
+ text-align: center;
7
+ }
8
+
9
+ tbody tr:nth-child(odd) {
10
+ background: ${({theme:a})=>a.colors.neutral100};
11
+ }
12
+
13
+ tbody tr td:first-child {
14
+ padding-left: ${({theme:a})=>a.spaces[7]};
15
+ }
16
+ `,w={headers:{default:[{id:"Settings.webhooks.events.create",defaultMessage:"Create"},{id:"Settings.webhooks.events.update",defaultMessage:"Update"},{id:"app.utils.delete",defaultMessage:"Delete"}],draftAndPublish:[{id:"Settings.webhooks.events.create",defaultMessage:"Create"},{id:"Settings.webhooks.events.update",defaultMessage:"Update"},{id:"app.utils.delete",defaultMessage:"Delete"},{id:"app.utils.publish",defaultMessage:"Publish"},{id:"app.utils.unpublish",defaultMessage:"Unpublish"}]},events:{default:{entry:["entry.create","entry.update","entry.delete"],media:["media.create","media.update","media.delete"]},draftAndPublish:{entry:["entry.create","entry.update","entry.delete","entry.publish","entry.unpublish"],media:["media.create","media.update","media.delete"]}}},G=({isDraftAndPublish:a})=>{const n=a?w.headers.draftAndPublish:w.headers.default,r=a?w.events.draftAndPublish:w.events.default,{formatMessage:s}=(0,T.useIntl)(),{values:u,handleChange:p}=(0,I.useFormikContext)(),d="events",c=u.events,h=[],f=Q(c),g=({target:{name:m,value:A}})=>{let C=new Set(c);A?C.add(m):C.delete(m),p({target:{name:d,value:Array.from(C)}})},E=({target:{name:m,value:A}})=>{let C=new Set(c);A?r[m].forEach(S=>{h.includes(S)||C.add(S)}):r[m].forEach(S=>C.delete(S)),p({target:{name:d,value:Array.from(C)}})};return e.createElement(t.Flex,{direction:"column",alignItems:"stretch",gap:1},e.createElement(t.FieldLabel,null,s({id:"Settings.webhooks.form.events",defaultMessage:"Events"})),e.createElement(q,null,e.createElement("thead",null,e.createElement("tr",null,e.createElement("td",null),n.map(m=>m==="app.utils.publish"||m==="app.utils.unpublish"?e.createElement("td",{key:m.id,title:s({id:"Settings.webhooks.event.publish-tooltip",defaultMessage:"This event only exists for content with draft & publish enabled"})},e.createElement(t.Typography,{variant:"sigma",textColor:"neutral600"},s(m))):e.createElement("td",{key:m.id},e.createElement(t.Typography,{variant:"sigma",textColor:"neutral600"},s(m)))))),e.createElement("tbody",null,Object.keys(r).map(m=>e.createElement(X,{disabledEvents:h,key:m,name:m,events:r[m],inputValue:f[m],handleChange:g,handleChangeAll:E})))))};G.propTypes={isDraftAndPublish:i().bool.isRequired};var J=G,H=["A-IM","Accept","Accept-Charset","Accept-Encoding","Accept-Language","Accept-Datetime","Access-Control-Request-Method","Access-Control-Request-Headers","Authorization","Cache-Control","Connection","Content-Length","Content-Type","Cookie","Date","Expect","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Max-Forwards","Origin","Pragma","Proxy-Authorization","Range","Referer","TE","User-Agent","Upgrade","Via","Warning"];const D=({name:a,onChange:n,value:r,...s})=>{const[u,p]=(0,e.useState)(r?[...H,r]:H),d=h=>{n({target:{name:a,value:h}})},c=h=>{p(f=>[...f,h]),n({target:{name:a,value:h}})};return e.createElement(t.CreatableCombobox,{...s,onChange:d,onCreateOption:c,placeholder:"",value:r},u.map(h=>e.createElement(t.ComboboxOption,{value:h,key:h},h)))};D.defaultProps={value:void 0},D.propTypes={name:i().string.isRequired,onChange:i().func.isRequired,value:i().string};var Y=D,_=()=>{const{formatMessage:a}=(0,T.useIntl)(),{values:n,errors:r}=(0,I.useFormikContext)();return e.createElement(t.Flex,{direction:"column",alignItems:"stretch",gap:1},e.createElement(t.FieldLabel,null,a({id:"Settings.webhooks.form.headers",defaultMessage:"Headers"})),e.createElement(t.Box,{padding:8,background:"neutral100",hasRadius:!0},e.createElement(I.FieldArray,{validateOnChange:!1,name:"headers",render:({push:s,remove:u})=>e.createElement(t.Grid,{gap:4},n.headers?.map((p,d)=>e.createElement(e.Fragment,{key:d},e.createElement(t.GridItem,{col:6},e.createElement(I.Field,{as:Y,name:`headers.${d}.key`,"aria-label":`row ${d+1} key`,label:a({id:"Settings.webhooks.key",defaultMessage:"Key"}),error:r.headers?.[d]?.key&&a({id:r.headers[d]?.key,defaultMessage:r.headers[d]?.key})})),e.createElement(t.GridItem,{col:6},e.createElement(t.Flex,{alignItems:"flex-end"},e.createElement(t.Box,{style:{flex:1}},e.createElement(I.Field,{as:t.TextInput,"aria-label":`row ${d+1} value`,label:a({id:"Settings.webhooks.value",defaultMessage:"Value"}),name:`headers.${d}.value`,error:r.headers?.[d]?.value&&a({id:r.headers[d]?.value,defaultMessage:r.headers[d]?.value})})),e.createElement(t.Flex,{paddingLeft:2,style:{alignSelf:"center"},paddingTop:r.headers?.[d]?.value?0:5},e.createElement(o.RemoveRoundedButton,{onClick:()=>n.headers.length!==1&&u(d),label:a({id:"Settings.webhooks.headers.remove",defaultMessage:"Remove header row {number}"},{number:d+1})})))))),e.createElement(t.GridItem,{col:12},e.createElement(t.TextButton,{type:"button",onClick:()=>{s({key:"",value:""})},startIcon:e.createElement(k.Plus,null)},a({id:"Settings.webhooks.create.header",defaultMessage:"Create new header"}))))})))};const F=$.default.svg(({theme:a,color:n})=>`
17
+ width: ${12/16}rem;
18
+ height: ${12/16}rem;
19
+
20
+ path {
21
+ fill: ${a.colors[n]};
22
+ }
23
+ `),L=({isPending:a,statusCode:n})=>{const{formatMessage:r}=(0,T.useIntl)();return a?e.createElement(t.Flex,{gap:2,alignItems:"center"},e.createElement(F,{as:k.Loader}),e.createElement(t.Typography,null,r({id:"Settings.webhooks.trigger.pending",defaultMessage:"pending"}))):n>=200&&n<300?e.createElement(t.Flex,{gap:2,alignItems:"center"},e.createElement(F,{as:k.Check,color:"success700"}),e.createElement(t.Typography,null,r({id:"Settings.webhooks.trigger.success",defaultMessage:"success"}))):n>=300?e.createElement(t.Flex,{gap:2,alignItems:"center"},e.createElement(F,{as:k.Cross,color:"danger700"}),e.createElement(t.Typography,null,r({id:"Settings.error",defaultMessage:"error"})," ",n)):null};L.propTypes={isPending:i().bool.isRequired,statusCode:i().number},L.defaultProps={statusCode:void 0};const B=({statusCode:a,message:n})=>{const{formatMessage:r}=(0,T.useIntl)();return a>=200&&a<300?e.createElement(t.Flex,{justifyContent:"flex-end"},e.createElement(t.Typography,{textColor:"neutral600",ellipsis:!0},r({id:"Settings.webhooks.trigger.success.label",defaultMessage:"Trigger succeeded"}))):a>=300?e.createElement(t.Flex,{justifyContent:"flex-end"},e.createElement(t.Flex,{maxWidth:(0,o.pxToRem)(250),justifyContent:"flex-end",title:n},e.createElement(t.Typography,{ellipsis:!0,textColor:"neutral600"},n))):null};B.propTypes={statusCode:i().number,message:i().string},B.defaultProps={statusCode:void 0,message:void 0};const K=({onCancel:a})=>{const{formatMessage:n}=(0,T.useIntl)();return e.createElement(t.Flex,{justifyContent:"flex-end"},e.createElement("button",{onClick:a,type:"button"},e.createElement(t.Flex,{gap:2,alignItems:"center"},e.createElement(t.Typography,{textColor:"neutral400"},n({id:"Settings.webhooks.trigger.cancel",defaultMessage:"cancel"})),e.createElement(F,{as:k.Cross,color:"neutral400"}))))};K.propTypes={onCancel:i().func.isRequired};const W=({isPending:a,onCancel:n,response:r})=>{const{statusCode:s,message:u}=r,{formatMessage:p}=(0,T.useIntl)();return e.createElement(t.Box,{background:"neutral0",padding:5,shadow:"filterShadow",hasRadius:!0},e.createElement(t.Grid,{gap:4,style:{alignItems:"center"}},e.createElement(t.GridItem,{col:3},e.createElement(t.Typography,null,p({id:"Settings.webhooks.trigger.test",defaultMessage:"Test-trigger"}))),e.createElement(t.GridItem,{col:3},e.createElement(L,{isPending:a,statusCode:s})),e.createElement(t.GridItem,{col:6},a?e.createElement(K,{onCancel:n}):e.createElement(B,{statusCode:s,message:u}))))};W.defaultProps={isPending:!1,onCancel(){},response:{}},W.propTypes={isPending:i().bool,onCancel:i().func,response:i().object};var ee=W,v=l(5173);const te=/(^$)|(^[A-Za-z][_0-9A-Za-z ]*$)/,ae=/(^$)|((https?:\/\/.*)(d*)\/?(.*))/;var ne=v.Ry().shape({name:v.Z_(o.translatedErrors.string).required(o.translatedErrors.required).matches(te,o.translatedErrors.regex),url:v.Z_(o.translatedErrors.string).required(o.translatedErrors.required).matches(ae,o.translatedErrors.regex),headers:v.Vo(a=>{let n=v.IX();if(a.length===1){const{key:r,value:s}=a[0];if(!r&&!s)return n}return n.of(v.Ry().shape({key:v.Z_().required(o.translatedErrors.required),value:v.Z_().required(o.translatedErrors.required)}))}),events:v.IX()});const U=({handleSubmit:a,data:n,triggerWebhook:r,isCreating:s,isTriggering:u,triggerResponse:p,isDraftAndPublishEvents:d})=>{const{formatMessage:c}=(0,T.useIntl)(),[h,f]=(0,e.useState)(!1);return e.createElement(I.Formik,{onSubmit:a,initialValues:{name:n?.name||"",url:n?.url||"",headers:Object.keys(n?.headers||[]).length?Object.entries(n.headers).map(([g,E])=>({key:g,value:E})):[{key:"",value:""}],events:n?.events||[]},validationSchema:ne,validateOnChange:!1,validateOnBlur:!1},({handleSubmit:g,errors:E})=>e.createElement(o.Form,{noValidate:!0},e.createElement(t.HeaderLayout,{primaryAction:e.createElement(t.Flex,{gap:2},e.createElement(t.Button,{onClick:()=>{r(),f(!0)},variant:"tertiary",startIcon:e.createElement(k.Play,null),disabled:s||u,size:"L"},c({id:"Settings.webhooks.trigger",defaultMessage:"Trigger"})),e.createElement(t.Button,{startIcon:e.createElement(k.Check,null),onClick:g,type:"submit",size:"L"},c({id:"global.save",defaultMessage:"Save"}))),title:s?c({id:"Settings.webhooks.create",defaultMessage:"Create a webhook"}):n?.name,navigationAction:e.createElement(o.Link,{startIcon:e.createElement(k.ArrowLeft,null),to:"/settings/webhooks"},c({id:"global.back",defaultMessage:"Back"}))}),e.createElement(t.ContentLayout,null,e.createElement(t.Flex,{direction:"column",alignItems:"stretch",gap:4},h&&e.createElement("div",{className:"trigger-wrapper"},e.createElement(ee,{isPending:u,response:p,onCancel:()=>f(!1)})),e.createElement(t.Box,{background:"neutral0",padding:8,shadow:"filterShadow",hasRadius:!0},e.createElement(t.Flex,{direction:"column",alignItems:"stretch",gap:6},e.createElement(t.Grid,{gap:6},e.createElement(t.GridItem,{col:6},e.createElement(I.Field,{as:t.TextInput,name:"name",error:E.name&&c({id:E.name}),label:c({id:"global.name",defaultMessage:"Name"}),required:!0})),e.createElement(t.GridItem,{col:12},e.createElement(I.Field,{as:t.TextInput,name:"url",error:E.url&&c({id:E.url}),label:c({id:"Settings.roles.form.input.url",defaultMessage:"Url"}),required:!0}))),e.createElement(_,null),e.createElement(J,{isDraftAndPublish:d})))))))};U.propTypes={data:i().object,handleSubmit:i().func.isRequired,triggerWebhook:i().func.isRequired,isCreating:i().bool.isRequired,isDraftAndPublishEvents:i().bool.isRequired,isTriggering:i().bool.isRequired,triggerResponse:i().object},U.defaultProps={data:void 0,triggerResponse:void 0};var re=U,se=l(92891);const le=a=>{const n={...a};return(0,se.set)(n,"headers",oe(a.headers)),n},oe=a=>a.reduce((n,r)=>{const{key:s,value:u}=r;return s!==""?{...n,[s]:u}:n},{});var Z=le,ie=()=>{const{params:{id:a}}=(0,x.useRouteMatch)("/settings/webhooks/:id"),{replace:n}=(0,x.useHistory)(),{lockApp:r,unlockApp:s}=(0,o.useOverlayBlocker)(),u=(0,o.useNotification)(),p=(0,y.useQueryClient)(),{isLoading:d,collectionTypes:c}=(0,R.bP)(),{post:h}=(0,o.useFetchClient)(),f=a==="create",g=(0,e.useCallback)(async b=>{const[M,{data:pe}]=await(0,o.to)((0,o.request)(`/admin/webhooks/${b}`,{method:"GET"}));return M?(u({type:"warning",message:{id:"notification.error"}}),null):pe},[u]),{isLoading:E,data:m}=(0,y.useQuery)(["get-webhook",a],()=>g(a),{enabled:!f}),{isLoading:A,data:C,isIdle:S,mutate:de}=(0,y.useMutation)(()=>h(`/admin/webhooks/${a}/trigger`)),ue=()=>de(null,{onError(){u({type:"warning",message:{id:"notification.error"}})}}),ce=(0,y.useMutation)(b=>(0,o.request)("/admin/webhooks",{method:"POST",body:b})),me=(0,y.useMutation)(({id:b,body:M})=>(0,o.request)(`/admin/webhooks/${b}`,{method:"PUT",body:M})),ge=async b=>{f?(r(),ce.mutate(Z(b),{onSuccess(M){u({type:"success",message:{id:"Settings.webhooks.created"}}),n(`/settings/webhooks/${M.data.id}`),s()},onError(M){u({type:"warning",message:{id:"notification.error"}}),console.log(M),s()}})):(r(),me.mutate({id:a,body:Z(b)},{onSuccess(){p.invalidateQueries(["get-webhook",a]),u({type:"success",message:{id:"notification.form.success.fields"}}),s()},onError(M){u({type:"warning",message:{id:"notification.error"}}),console.log(M),s()}}))},he=(0,e.useMemo)(()=>c.some(b=>b.options.draftAndPublish===!0),[c]);return E||d?e.createElement(o.LoadingIndicatorPage,null):e.createElement(t.Main,null,e.createElement(o.SettingsPageTitle,{name:"Webhooks"}),e.createElement(re,{handleSubmit:ge,data:m,triggerWebhook:ue,isCreating:f,isTriggering:A,isTriggerIdle:S,triggerResponse:C?.data.data,isDraftAndPublishEvents:he}))}},33238:function(V,P,l){l.r(P);var e=l(32735),o=l(13478),t=l.n(o),y=l(72041),x=l(47272);const R=()=>e.createElement(o.CheckPagePermissions,{permissions:y.Z.settings.webhooks.create},e.createElement(x.Z,null));P.default=R},59021:function(V,P,l){l.r(P);var e=l(32735),o=l(13478),t=l.n(o),y=l(72041),x=l(47272);const R=()=>e.createElement(o.CheckPagePermissions,{permissions:y.Z.settings.webhooks.update},e.createElement(x.Z,null));P.default=R}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[4121],{70791:function(ee,L,i){i.r(L),i.d(L,{default:function(){return V}});var e=i(32735),a=i(13478),C=i(72041),O=i(5141),x=i(5636),t=i(39161),E=i(57269),P=i(97889),H=i(3040),K=i.n(H);const I={webhooks:[],webhooksToDelete:[],webhookToDelete:null,loadingWebhooks:!0};var G=(r,s)=>(0,P.default)(r,l=>{switch(s.type){case"GET_DATA_SUCCEEDED":{l.webhooks=s.data,l.loadingWebhooks=!1;break}case"TOGGLE_LOADING":{l.loadingWebhooks=!r.loadingWebhooks;break}case"SET_WEBHOOK_ENABLED":{K()(l,["webhooks",...s.keys],s.value);break}case"SET_WEBHOOK_TO_DELETE":{l.webhookToDelete=s.id;break}case"SET_WEBHOOKS_TO_DELETE":{s.value?l.webhooksToDelete.push(s.id):l.webhooksToDelete=r.webhooksToDelete.filter(d=>d!==s.id);break}case"SET_ALL_WEBHOOKS_TO_DELETE":{r.webhooksToDelete.length===0?l.webhooksToDelete=r.webhooks.map(d=>d.id):l.webhooksToDelete=[];break}case"WEBHOOKS_DELETED":{l.webhooks=r.webhooks.filter(d=>!r.webhooksToDelete.includes(d.id)),l.webhooksToDelete=[];break}case"WEBHOOK_DELETED":{l.webhooks=r.webhooks.filter((d,g)=>g!==s.index),l.webhookToDelete=null;break}default:return l}}),N=()=>{const{isLoading:r,allowedActions:{canCreate:s,canRead:l,canUpdate:d,canDelete:g}}=(0,a.useRBAC)(C.Z.settings.webhooks),b=(0,a.useNotification)(),h=(0,e.useRef)(!0),{formatMessage:n}=(0,x.useIntl)(),[$,T]=(0,e.useState)(!1),[{webhooks:f,webhooksToDelete:y,webhookToDelete:D,loadingWebhooks:p},u]=(0,e.useReducer)(G,I),{notifyStatus:R}=(0,t.useNotifyAT)();(0,a.useFocusWhenNavigate)();const{push:U}=(0,O.useHistory)(),{pathname:S}=(0,O.useLocation)(),k=f.length,m=y.length,B=o=>f.findIndex(c=>c.id===o);(0,e.useEffect)(()=>(h.current=!0,()=>{h.current=!1}),[]),(0,e.useEffect)(()=>{l&&F()},[l]);const F=async()=>{try{const{data:o}=await(0,a.request)("/admin/webhooks",{method:"GET"});h.current&&(u({type:"GET_DATA_SUCCEEDED",data:o}),R("webhooks have been loaded"))}catch(o){console.log(o),h.current&&(o.code!==20&&b({type:"warning",message:{id:"notification.error"}}),u({type:"TOGGLE_LOADING"}))}},z=()=>{T(o=>!o)},Z=()=>{D?j():J()},j=async()=>{try{await(0,a.request)(`/admin/webhooks/${D}`,{method:"DELETE"}),u({type:"WEBHOOK_DELETED",index:B(D)})}catch(o){o.code!==20&&b({type:"warning",message:{id:"notification.error"}})}T(!1)},J=async()=>{const o={ids:y};try{await(0,a.request)("/admin/webhooks/batch-delete",{method:"POST",body:o}),h.current&&u({type:"WEBHOOKS_DELETED"})}catch(c){h.current&&c.code!==20&&b({type:"warning",message:{id:"notification.error"}})}T(!1)},v=o=>{T(!0),o!=="all"&&u({type:"SET_WEBHOOK_TO_DELETE",id:o})},Q=async(o,c)=>{const W=B(c),_=f[W],M=[W,"isEnabled"],A={..._,isEnabled:o};delete A.id;try{u({type:"SET_WEBHOOK_ENABLED",keys:M,value:o}),await(0,a.request)(`/admin/webhooks/${c}`,{method:"PUT",body:A})}catch(q){h.current&&(u({type:"SET_WEBHOOK_ENABLED",keys:M,value:!o}),q.code!==20&&b({type:"warning",message:{id:"notification.error"}}))}},X=()=>{u({type:"SET_ALL_WEBHOOKS_TO_DELETE"})},Y=(o,c)=>{u({type:"SET_WEBHOOKS_TO_DELETE",value:o,id:c})},w=o=>{U(`${S}/${o}`)};return e.createElement(t.Layout,null,e.createElement(a.SettingsPageTitle,{name:"Webhooks"}),e.createElement(t.Main,{"aria-busy":r||p},e.createElement(t.HeaderLayout,{title:n({id:"Settings.webhooks.title",defaultMessage:"Webhooks"}),subtitle:n({id:"Settings.webhooks.list.description",defaultMessage:"Get POST changes notifications"}),primaryAction:s&&!p&&e.createElement(a.LinkButton,{startIcon:e.createElement(E.Plus,null),variant:"default",to:`${S}/create`,size:"S"},n({id:"Settings.webhooks.list.button.add",defaultMessage:"Create new webhook"}))}),m>0&&g&&e.createElement(t.ActionLayout,{startActions:e.createElement(e.Fragment,null,e.createElement(t.Typography,{variant:"epsilon",textColor:"neutral600"},n({id:"Settings.webhooks.to.delete",defaultMessage:"{webhooksToDeleteLength, plural, one {# asset} other {# assets}} selected"},{webhooksToDeleteLength:m})),e.createElement(t.Button,{onClick:()=>v("all"),startIcon:e.createElement(E.Trash,null),size:"L",variant:"danger-light"},n({id:"global.delete",defaultMessage:"Delete"})))}),e.createElement(t.ContentLayout,null,r||p?e.createElement(t.Box,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},e.createElement(a.LoadingIndicatorPage,null)):k>0?e.createElement(t.Table,{colCount:5,rowCount:k+1,footer:e.createElement(t.TFooter,{onClick:()=>s?w("create"):{},icon:e.createElement(E.Plus,null)},n({id:"Settings.webhooks.list.button.add",defaultMessage:"Create new webhook"}))},e.createElement(t.Thead,null,e.createElement(t.Tr,null,e.createElement(t.Th,null,e.createElement(t.BaseCheckbox,{"aria-label":n({id:"global.select-all-entries",defaultMessage:"Select all entries"}),indeterminate:m>0&&m<k,value:m===k,onValueChange:X})),e.createElement(t.Th,{width:"20%"},e.createElement(t.Typography,{variant:"sigma",textColor:"neutral600"},n({id:"global.name",defaultMessage:"Name"}))),e.createElement(t.Th,{width:"60%"},e.createElement(t.Typography,{variant:"sigma",textColor:"neutral600"},n({id:"Settings.webhooks.form.url",defaultMessage:"URL"}))),e.createElement(t.Th,{width:"20%"},e.createElement(t.Typography,{variant:"sigma",textColor:"neutral600"},n({id:"Settings.webhooks.list.th.status",defaultMessage:"Status"}))),e.createElement(t.Th,null,e.createElement(t.VisuallyHidden,null,n({id:"Settings.webhooks.list.th.actions",defaultMessage:"Actions"}))))),e.createElement(t.Tbody,null,f.map(o=>e.createElement(t.Tr,{key:o.id,...(0,a.onRowClick)({fn:()=>w(o.id),condition:d})},e.createElement(t.Td,{...a.stopPropagation},e.createElement(t.BaseCheckbox,{"aria-label":`${n({id:"global.select",defaultMessage:"Select"})} ${o.name}`,value:y?.includes(o.id),onValueChange:c=>Y(c,o.id),id:"select",name:"select"})),e.createElement(t.Td,null,e.createElement(t.Typography,{fontWeight:"semiBold",textColor:"neutral800"},o.name)),e.createElement(t.Td,null,e.createElement(t.Typography,{textColor:"neutral800"},o.url)),e.createElement(t.Td,null,e.createElement(t.Flex,{...a.stopPropagation},e.createElement(t.Switch,{onLabel:n({id:"global.enabled",defaultMessage:"Enabled"}),offLabel:n({id:"global.disabled",defaultMessage:"Disabled"}),label:`${o.name} ${n({id:"Settings.webhooks.list.th.status",defaultMessage:"Status"})}`,selected:o.isEnabled,onChange:()=>Q(!o.isEnabled,o.id),visibleLabels:!0}))),e.createElement(t.Td,null,e.createElement(t.Flex,{gap:1,...a.stopPropagation},d&&e.createElement(t.IconButton,{onClick:()=>{w(o.id)},label:n({id:"Settings.webhooks.events.update",defaultMessage:"Update"}),icon:e.createElement(E.Pencil,null),noBorder:!0}),g&&e.createElement(t.IconButton,{onClick:()=>v(o.id),label:n({id:"global.delete",defaultMessage:"Delete"}),icon:e.createElement(E.Trash,null),noBorder:!0,id:`delete-${o.id}`}))))))):e.createElement(t.EmptyStateLayout,{icon:e.createElement(E.EmptyDocuments,{width:"160px"}),content:n({id:"Settings.webhooks.list.empty.description",defaultMessage:"No webhooks found"}),action:e.createElement(t.Button,{variant:"secondary",startIcon:e.createElement(E.Plus,null),onClick:()=>s?w("create"):{}},n({id:"Settings.webhooks.list.button.add",defaultMessage:"Create new webhook"}))}))),e.createElement(a.ConfirmDialog,{isOpen:$,onToggleDialog:z,onConfirm:Z}))},V=()=>e.createElement(a.CheckPagePermissions,{permissions:C.Z.settings.webhooks.main},e.createElement(N,null))}}]);