@strapi/plugin-users-permissions 5.12.1 → 5.12.2
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.
- package/dist/admin/components/BoundRoute/getMethodColor.js +49 -0
- package/dist/admin/components/BoundRoute/getMethodColor.js.map +1 -0
- package/dist/admin/components/BoundRoute/getMethodColor.mjs +47 -0
- package/dist/admin/components/BoundRoute/getMethodColor.mjs.map +1 -0
- package/dist/admin/components/BoundRoute/index.js +98 -0
- package/dist/admin/components/BoundRoute/index.js.map +1 -0
- package/dist/admin/components/BoundRoute/index.mjs +96 -0
- package/dist/admin/components/BoundRoute/index.mjs.map +1 -0
- package/dist/admin/components/FormModal/Input/index.js +123 -0
- package/dist/admin/components/FormModal/Input/index.js.map +1 -0
- package/dist/admin/components/FormModal/Input/index.mjs +121 -0
- package/dist/admin/components/FormModal/Input/index.mjs.map +1 -0
- package/dist/admin/components/FormModal/index.js +110 -0
- package/dist/admin/components/FormModal/index.js.map +1 -0
- package/dist/admin/components/FormModal/index.mjs +108 -0
- package/dist/admin/components/FormModal/index.mjs.map +1 -0
- package/dist/admin/components/Permissions/PermissionRow/CheckboxWrapper.js +33 -0
- package/dist/admin/components/Permissions/PermissionRow/CheckboxWrapper.js.map +1 -0
- package/dist/admin/components/Permissions/PermissionRow/CheckboxWrapper.mjs +31 -0
- package/dist/admin/components/Permissions/PermissionRow/CheckboxWrapper.mjs.map +1 -0
- package/dist/admin/components/Permissions/PermissionRow/SubCategory.js +156 -0
- package/dist/admin/components/Permissions/PermissionRow/SubCategory.js.map +1 -0
- package/dist/admin/components/Permissions/PermissionRow/SubCategory.mjs +154 -0
- package/dist/admin/components/Permissions/PermissionRow/SubCategory.mjs.map +1 -0
- package/dist/admin/components/Permissions/PermissionRow/index.js +50 -0
- package/dist/admin/components/Permissions/PermissionRow/index.js.map +1 -0
- package/dist/admin/components/Permissions/PermissionRow/index.mjs +48 -0
- package/dist/admin/components/Permissions/PermissionRow/index.mjs.map +1 -0
- package/dist/admin/components/Permissions/index.js +52 -0
- package/dist/admin/components/Permissions/index.js.map +1 -0
- package/dist/admin/components/Permissions/index.mjs +50 -0
- package/dist/admin/components/Permissions/index.mjs.map +1 -0
- package/dist/admin/components/Permissions/init.js +15 -0
- package/dist/admin/components/Permissions/init.js.map +1 -0
- package/dist/admin/components/Permissions/init.mjs +13 -0
- package/dist/admin/components/Permissions/init.mjs.map +1 -0
- package/dist/admin/components/Permissions/reducer.js +34 -0
- package/dist/admin/components/Permissions/reducer.js.map +1 -0
- package/dist/admin/components/Permissions/reducer.mjs +31 -0
- package/dist/admin/components/Permissions/reducer.mjs.map +1 -0
- package/dist/admin/components/Policies/index.js +67 -0
- package/dist/admin/components/Policies/index.js.map +1 -0
- package/dist/admin/components/Policies/index.mjs +65 -0
- package/dist/admin/components/Policies/index.mjs.map +1 -0
- package/dist/admin/components/UsersPermissions/index.js +115 -0
- package/dist/admin/components/UsersPermissions/index.js.map +1 -0
- package/dist/admin/components/UsersPermissions/index.mjs +113 -0
- package/dist/admin/components/UsersPermissions/index.mjs.map +1 -0
- package/dist/admin/components/UsersPermissions/init.js +13 -0
- package/dist/admin/components/UsersPermissions/init.js.map +1 -0
- package/dist/admin/components/UsersPermissions/init.mjs +11 -0
- package/dist/admin/components/UsersPermissions/init.mjs.map +1 -0
- package/dist/admin/components/UsersPermissions/reducer.js +73 -0
- package/dist/admin/components/UsersPermissions/reducer.js.map +1 -0
- package/dist/admin/components/UsersPermissions/reducer.mjs +68 -0
- package/dist/admin/components/UsersPermissions/reducer.mjs.map +1 -0
- package/dist/admin/constants.js +81 -0
- package/dist/admin/constants.js.map +1 -0
- package/dist/admin/constants.mjs +79 -0
- package/dist/admin/constants.mjs.map +1 -0
- package/dist/admin/contexts/UsersPermissionsContext/index.js +23 -0
- package/dist/admin/contexts/UsersPermissionsContext/index.js.map +1 -0
- package/dist/admin/contexts/UsersPermissionsContext/index.mjs +19 -0
- package/dist/admin/contexts/UsersPermissionsContext/index.mjs.map +1 -0
- package/dist/admin/index.js +119 -2
- package/dist/admin/index.js.map +1 -1
- package/dist/admin/index.mjs +120 -1
- package/dist/admin/index.mjs.map +1 -1
- package/dist/admin/package.json.js +14 -0
- package/dist/admin/package.json.js.map +1 -0
- package/dist/admin/package.json.mjs +11 -0
- package/dist/admin/package.json.mjs.map +1 -0
- package/dist/admin/{chunks/index-DFnYIqrB.js → pages/AdvancedSettings/index.js} +14 -121
- package/dist/admin/pages/AdvancedSettings/index.js.map +1 -0
- package/dist/admin/{chunks/index-Cy-tPfRk.mjs → pages/AdvancedSettings/index.mjs} +6 -94
- package/dist/admin/pages/AdvancedSettings/index.mjs.map +1 -0
- package/dist/admin/pages/AdvancedSettings/utils/layout.js +83 -0
- package/dist/admin/pages/AdvancedSettings/utils/layout.js.map +1 -0
- package/dist/admin/pages/AdvancedSettings/utils/layout.mjs +81 -0
- package/dist/admin/pages/AdvancedSettings/utils/layout.mjs.map +1 -0
- package/dist/admin/pages/AdvancedSettings/utils/schema.js +40 -0
- package/dist/admin/pages/AdvancedSettings/utils/schema.js.map +1 -0
- package/dist/admin/pages/AdvancedSettings/utils/schema.mjs +19 -0
- package/dist/admin/pages/AdvancedSettings/utils/schema.mjs.map +1 -0
- package/dist/admin/pages/EmailTemplates/components/EmailForm.js +171 -0
- package/dist/admin/pages/EmailTemplates/components/EmailForm.js.map +1 -0
- package/dist/admin/pages/EmailTemplates/components/EmailForm.mjs +169 -0
- package/dist/admin/pages/EmailTemplates/components/EmailForm.mjs.map +1 -0
- package/dist/admin/pages/EmailTemplates/components/EmailTable.js +145 -0
- package/dist/admin/pages/EmailTemplates/components/EmailTable.js.map +1 -0
- package/dist/admin/pages/EmailTemplates/components/EmailTable.mjs +143 -0
- package/dist/admin/pages/EmailTemplates/components/EmailTable.mjs.map +1 -0
- package/dist/admin/pages/EmailTemplates/index.js +157 -0
- package/dist/admin/pages/EmailTemplates/index.js.map +1 -0
- package/dist/admin/pages/EmailTemplates/index.mjs +135 -0
- package/dist/admin/pages/EmailTemplates/index.mjs.map +1 -0
- package/dist/admin/pages/EmailTemplates/utils/schema.js +50 -0
- package/dist/admin/pages/EmailTemplates/utils/schema.js.map +1 -0
- package/dist/admin/pages/EmailTemplates/utils/schema.mjs +29 -0
- package/dist/admin/pages/EmailTemplates/utils/schema.mjs.map +1 -0
- package/dist/admin/pages/Providers/index.js +278 -0
- package/dist/admin/pages/Providers/index.js.map +1 -0
- package/dist/admin/pages/Providers/index.mjs +254 -0
- package/dist/admin/pages/Providers/index.mjs.map +1 -0
- package/dist/admin/pages/Providers/utils/forms.js +281 -0
- package/dist/admin/pages/Providers/utils/forms.js.map +1 -0
- package/dist/admin/pages/Providers/utils/forms.mjs +260 -0
- package/dist/admin/pages/Providers/utils/forms.mjs.map +1 -0
- package/dist/admin/pages/Roles/constants.js +31 -0
- package/dist/admin/pages/Roles/constants.js.map +1 -0
- package/dist/admin/pages/Roles/constants.mjs +10 -0
- package/dist/admin/pages/Roles/constants.mjs.map +1 -0
- package/dist/admin/pages/Roles/hooks/usePlugins.js +78 -0
- package/dist/admin/pages/Roles/hooks/usePlugins.js.map +1 -0
- package/dist/admin/pages/Roles/hooks/usePlugins.mjs +76 -0
- package/dist/admin/pages/Roles/hooks/usePlugins.mjs.map +1 -0
- package/dist/admin/pages/Roles/index.js +35 -0
- package/dist/admin/pages/Roles/index.js.map +1 -0
- package/dist/admin/pages/Roles/index.mjs +33 -0
- package/dist/admin/pages/Roles/index.mjs.map +1 -0
- package/dist/admin/pages/Roles/pages/CreatePage.js +225 -0
- package/dist/admin/pages/Roles/pages/CreatePage.js.map +1 -0
- package/dist/admin/pages/Roles/pages/CreatePage.mjs +203 -0
- package/dist/admin/pages/Roles/pages/CreatePage.mjs.map +1 -0
- package/dist/admin/pages/Roles/pages/EditPage.js +229 -0
- package/dist/admin/pages/Roles/pages/EditPage.js.map +1 -0
- package/dist/admin/pages/Roles/pages/EditPage.mjs +207 -0
- package/dist/admin/pages/Roles/pages/EditPage.mjs.map +1 -0
- package/dist/admin/pages/Roles/pages/ListPage/components/TableBody.js +125 -0
- package/dist/admin/pages/Roles/pages/ListPage/components/TableBody.js.map +1 -0
- package/dist/admin/pages/Roles/pages/ListPage/components/TableBody.mjs +123 -0
- package/dist/admin/pages/Roles/pages/ListPage/components/TableBody.mjs.map +1 -0
- package/dist/admin/pages/Roles/pages/ListPage/index.js +237 -0
- package/dist/admin/pages/Roles/pages/ListPage/index.js.map +1 -0
- package/dist/admin/pages/Roles/pages/ListPage/index.mjs +234 -0
- package/dist/admin/pages/Roles/pages/ListPage/index.mjs.map +1 -0
- package/dist/admin/pluginId.js +8 -0
- package/dist/admin/pluginId.js.map +1 -0
- package/dist/admin/pluginId.mjs +6 -0
- package/dist/admin/pluginId.mjs.map +1 -0
- package/dist/admin/{chunks/ar-BJwjobLp.js → translations/ar.json.js} +2 -2
- package/dist/admin/translations/ar.json.js.map +1 -0
- package/dist/admin/{chunks/ar-G6bUGuUb.mjs → translations/ar.json.mjs} +1 -1
- package/dist/admin/translations/ar.json.mjs.map +1 -0
- package/dist/admin/{chunks/cs-uS_SIEo8.js → translations/cs.json.js} +2 -2
- package/dist/admin/translations/cs.json.js.map +1 -0
- package/dist/admin/{chunks/cs-Bu59JqhG.mjs → translations/cs.json.mjs} +1 -1
- package/dist/admin/translations/cs.json.mjs.map +1 -0
- package/dist/admin/{chunks/de-7MVMrqqI.js → translations/de.json.js} +2 -2
- package/dist/admin/translations/de.json.js.map +1 -0
- package/dist/admin/{chunks/de-B81A69_5.mjs → translations/de.json.mjs} +1 -1
- package/dist/admin/translations/de.json.mjs.map +1 -0
- package/dist/admin/{chunks/dk-DwCLGmy9.js → translations/dk.json.js} +2 -2
- package/dist/admin/translations/dk.json.js.map +1 -0
- package/dist/admin/{chunks/dk-BaelzvBE.mjs → translations/dk.json.mjs} +1 -1
- package/dist/admin/translations/dk.json.mjs.map +1 -0
- package/dist/admin/{chunks/en-DwQjkHi_.js → translations/en.json.js} +2 -2
- package/dist/admin/translations/en.json.js.map +1 -0
- package/dist/admin/{chunks/en-BhgCBe7M.mjs → translations/en.json.mjs} +1 -1
- package/dist/admin/translations/en.json.mjs.map +1 -0
- package/dist/admin/{chunks/es-BOJOedG5.js → translations/es.json.js} +2 -2
- package/dist/admin/translations/es.json.js.map +1 -0
- package/dist/admin/{chunks/es-B0wXmvRj.mjs → translations/es.json.mjs} +1 -1
- package/dist/admin/translations/es.json.mjs.map +1 -0
- package/dist/admin/{chunks/fr-BDNWCNs0.js → translations/fr.json.js} +2 -2
- package/dist/admin/translations/fr.json.js.map +1 -0
- package/dist/admin/{chunks/fr-CGYvGUXg.mjs → translations/fr.json.mjs} +1 -1
- package/dist/admin/translations/fr.json.mjs.map +1 -0
- package/dist/admin/{chunks/id-UqUPykHZ.js → translations/id.json.js} +2 -2
- package/dist/admin/translations/id.json.js.map +1 -0
- package/dist/admin/{chunks/id-CNzbwFjA.mjs → translations/id.json.mjs} +1 -1
- package/dist/admin/translations/id.json.mjs.map +1 -0
- package/dist/admin/{chunks/it-D5VuyoLU.js → translations/it.json.js} +2 -2
- package/dist/admin/translations/it.json.js.map +1 -0
- package/dist/admin/{chunks/it-B2H2foTf.mjs → translations/it.json.mjs} +1 -1
- package/dist/admin/translations/it.json.mjs.map +1 -0
- package/dist/admin/{chunks/ja-MpqVsCgs.js → translations/ja.json.js} +2 -2
- package/dist/admin/translations/ja.json.js.map +1 -0
- package/dist/admin/{chunks/ja-C0z9d7L9.mjs → translations/ja.json.mjs} +1 -1
- package/dist/admin/translations/ja.json.mjs.map +1 -0
- package/dist/admin/{chunks/ko-Bm-grPSc.js → translations/ko.json.js} +2 -2
- package/dist/admin/translations/ko.json.js.map +1 -0
- package/dist/admin/{chunks/ko-CzUgzpeS.mjs → translations/ko.json.mjs} +1 -1
- package/dist/admin/translations/ko.json.mjs.map +1 -0
- package/dist/admin/{chunks/ms-D7eyBD5H.js → translations/ms.json.js} +2 -2
- package/dist/admin/translations/ms.json.js.map +1 -0
- package/dist/admin/{chunks/ms-CCacxjim.mjs → translations/ms.json.mjs} +1 -1
- package/dist/admin/translations/ms.json.mjs.map +1 -0
- package/dist/admin/{chunks/nl-BIOwAQtI.js → translations/nl.json.js} +2 -2
- package/dist/admin/translations/nl.json.js.map +1 -0
- package/dist/admin/{chunks/nl-DDC3nZW-.mjs → translations/nl.json.mjs} +1 -1
- package/dist/admin/translations/nl.json.mjs.map +1 -0
- package/dist/admin/{chunks/pl-D5BeNrg_.js → translations/pl.json.js} +2 -2
- package/dist/admin/translations/pl.json.js.map +1 -0
- package/dist/admin/{chunks/pl-XkS463rN.mjs → translations/pl.json.mjs} +1 -1
- package/dist/admin/translations/pl.json.mjs.map +1 -0
- package/dist/admin/{chunks/pt-BR-DxPBzQGx.js → translations/pt-BR.json.js} +2 -2
- package/dist/admin/translations/pt-BR.json.js.map +1 -0
- package/dist/admin/{chunks/pt-BR-8cC7z8Km.mjs → translations/pt-BR.json.mjs} +1 -1
- package/dist/admin/translations/pt-BR.json.mjs.map +1 -0
- package/dist/admin/{chunks/pt-kkCwzNvH.js → translations/pt.json.js} +2 -2
- package/dist/admin/translations/pt.json.js.map +1 -0
- package/dist/admin/{chunks/pt-DQpEvio8.mjs → translations/pt.json.mjs} +1 -1
- package/dist/admin/translations/pt.json.mjs.map +1 -0
- package/dist/admin/{chunks/ru-BQ0gHmp3.js → translations/ru.json.js} +2 -2
- package/dist/admin/translations/ru.json.js.map +1 -0
- package/dist/admin/{chunks/ru-nzL_7Mhg.mjs → translations/ru.json.mjs} +1 -1
- package/dist/admin/translations/ru.json.mjs.map +1 -0
- package/dist/admin/{chunks/sk-nVwAPdYC.js → translations/sk.json.js} +2 -2
- package/dist/admin/translations/sk.json.js.map +1 -0
- package/dist/admin/{chunks/sk-Ddxc_tZA.mjs → translations/sk.json.mjs} +1 -1
- package/dist/admin/translations/sk.json.mjs.map +1 -0
- package/dist/admin/{chunks/sv-BDfk2A-F.js → translations/sv.json.js} +2 -2
- package/dist/admin/translations/sv.json.js.map +1 -0
- package/dist/admin/{chunks/sv-By3RYpMG.mjs → translations/sv.json.mjs} +1 -1
- package/dist/admin/translations/sv.json.mjs.map +1 -0
- package/dist/admin/{chunks/th-BtTtpHe2.js → translations/th.json.js} +2 -2
- package/dist/admin/translations/th.json.js.map +1 -0
- package/dist/admin/{chunks/th-COl50vqb.mjs → translations/th.json.mjs} +1 -1
- package/dist/admin/translations/th.json.mjs.map +1 -0
- package/dist/admin/{chunks/tr-Di-Nf7cT.js → translations/tr.json.js} +2 -2
- package/dist/admin/translations/tr.json.js.map +1 -0
- package/dist/admin/{chunks/tr-80SJU6jg.mjs → translations/tr.json.mjs} +1 -1
- package/dist/admin/translations/tr.json.mjs.map +1 -0
- package/dist/admin/{chunks/uk-r5zXTAS7.js → translations/uk.json.js} +2 -2
- package/dist/admin/translations/uk.json.js.map +1 -0
- package/dist/admin/{chunks/uk-DnrIlPwG.mjs → translations/uk.json.mjs} +1 -1
- package/dist/admin/translations/uk.json.mjs.map +1 -0
- package/dist/admin/{chunks/vi-D9cCsHsU.js → translations/vi.json.js} +2 -2
- package/dist/admin/translations/vi.json.js.map +1 -0
- package/dist/admin/{chunks/vi-69AF03Iv.mjs → translations/vi.json.mjs} +1 -1
- package/dist/admin/translations/vi.json.mjs.map +1 -0
- package/dist/admin/{chunks/zh-Hans-CKqQbpsM.js → translations/zh-Hans.json.js} +2 -2
- package/dist/admin/translations/zh-Hans.json.js.map +1 -0
- package/dist/admin/{chunks/zh-Hans-DmDcSsp7.mjs → translations/zh-Hans.json.mjs} +1 -1
- package/dist/admin/translations/zh-Hans.json.mjs.map +1 -0
- package/dist/admin/{chunks/zh-BzWgJEzz.js → translations/zh.json.js} +2 -2
- package/dist/admin/translations/zh.json.js.map +1 -0
- package/dist/admin/{chunks/zh-BzSkqxo-.mjs → translations/zh.json.mjs} +1 -1
- package/dist/admin/translations/zh.json.mjs.map +1 -0
- package/dist/admin/utils/cleanPermissions.js +24 -0
- package/dist/admin/utils/cleanPermissions.js.map +1 -0
- package/dist/admin/utils/cleanPermissions.mjs +22 -0
- package/dist/admin/utils/cleanPermissions.mjs.map +1 -0
- package/dist/admin/utils/formatPluginName.js +29 -0
- package/dist/admin/utils/formatPluginName.js.map +1 -0
- package/dist/admin/utils/formatPluginName.mjs +27 -0
- package/dist/admin/utils/formatPluginName.mjs.map +1 -0
- package/dist/admin/utils/getTrad.js +8 -0
- package/dist/admin/utils/getTrad.js.map +1 -0
- package/dist/admin/utils/getTrad.mjs +6 -0
- package/dist/admin/utils/getTrad.mjs.map +1 -0
- package/dist/admin/utils/prefixPluginTranslations.js +11 -0
- package/dist/admin/utils/prefixPluginTranslations.js.map +1 -0
- package/dist/admin/utils/prefixPluginTranslations.mjs +9 -0
- package/dist/admin/utils/prefixPluginTranslations.mjs.map +1 -0
- package/dist/server/_virtual/_commonjsHelpers.js +8 -0
- package/dist/server/_virtual/_commonjsHelpers.js.map +1 -0
- package/dist/server/_virtual/_commonjsHelpers.mjs +6 -0
- package/dist/server/_virtual/_commonjsHelpers.mjs.map +1 -0
- package/dist/server/bootstrap/index.js +145 -0
- package/dist/server/bootstrap/index.js.map +1 -0
- package/dist/server/bootstrap/index.mjs +143 -0
- package/dist/server/bootstrap/index.mjs.map +1 -0
- package/dist/server/bootstrap/users-permissions-actions.js +98 -0
- package/dist/server/bootstrap/users-permissions-actions.js.map +1 -0
- package/dist/server/bootstrap/users-permissions-actions.mjs +96 -0
- package/dist/server/bootstrap/users-permissions-actions.mjs.map +1 -0
- package/dist/server/config.js +54 -0
- package/dist/server/config.js.map +1 -0
- package/dist/server/config.mjs +52 -0
- package/dist/server/config.mjs.map +1 -0
- package/dist/server/content-types/index.js +30 -0
- package/dist/server/content-types/index.js.map +1 -0
- package/dist/server/content-types/index.mjs +28 -0
- package/dist/server/content-types/index.mjs.map +1 -0
- package/dist/server/content-types/permission/index.js +44 -0
- package/dist/server/content-types/permission/index.js.map +1 -0
- package/dist/server/content-types/permission/index.mjs +42 -0
- package/dist/server/content-types/permission/index.mjs.map +1 -0
- package/dist/server/content-types/role/index.js +61 -0
- package/dist/server/content-types/role/index.js.map +1 -0
- package/dist/server/content-types/role/index.mjs +59 -0
- package/dist/server/content-types/role/index.mjs.map +1 -0
- package/dist/server/content-types/user/index.js +84 -0
- package/dist/server/content-types/user/index.js.map +1 -0
- package/dist/server/content-types/user/index.mjs +82 -0
- package/dist/server/content-types/user/index.mjs.map +1 -0
- package/dist/server/content-types/user/schema-config.js +25 -0
- package/dist/server/content-types/user/schema-config.js.map +1 -0
- package/dist/server/content-types/user/schema-config.mjs +23 -0
- package/dist/server/content-types/user/schema-config.mjs.map +1 -0
- package/dist/server/controllers/auth.js +429 -0
- package/dist/server/controllers/auth.js.map +1 -0
- package/dist/server/controllers/auth.mjs +427 -0
- package/dist/server/controllers/auth.mjs.map +1 -0
- package/dist/server/controllers/content-manager-user.js +168 -0
- package/dist/server/controllers/content-manager-user.js.map +1 -0
- package/dist/server/controllers/content-manager-user.mjs +166 -0
- package/dist/server/controllers/content-manager-user.mjs.map +1 -0
- package/dist/server/controllers/index.js +33 -0
- package/dist/server/controllers/index.js.map +1 -0
- package/dist/server/controllers/index.mjs +31 -0
- package/dist/server/controllers/index.mjs.map +1 -0
- package/dist/server/controllers/permissions.js +37 -0
- package/dist/server/controllers/permissions.js.map +1 -0
- package/dist/server/controllers/permissions.mjs +35 -0
- package/dist/server/controllers/permissions.mjs.map +1 -0
- package/dist/server/controllers/role.js +91 -0
- package/dist/server/controllers/role.js.map +1 -0
- package/dist/server/controllers/role.mjs +89 -0
- package/dist/server/controllers/role.mjs.map +1 -0
- package/dist/server/controllers/settings.js +107 -0
- package/dist/server/controllers/settings.js.map +1 -0
- package/dist/server/controllers/settings.mjs +105 -0
- package/dist/server/controllers/settings.mjs.map +1 -0
- package/dist/server/controllers/user.js +201 -0
- package/dist/server/controllers/user.js.map +1 -0
- package/dist/server/controllers/user.mjs +199 -0
- package/dist/server/controllers/user.mjs.map +1 -0
- package/dist/server/controllers/validation/auth.js +131 -0
- package/dist/server/controllers/validation/auth.js.map +1 -0
- package/dist/server/controllers/validation/auth.mjs +129 -0
- package/dist/server/controllers/validation/auth.mjs.map +1 -0
- package/dist/server/controllers/validation/email-template.js +72 -0
- package/dist/server/controllers/validation/email-template.js.map +1 -0
- package/dist/server/controllers/validation/email-template.mjs +70 -0
- package/dist/server/controllers/validation/email-template.mjs.map +1 -0
- package/dist/server/controllers/validation/user.js +49 -0
- package/dist/server/controllers/validation/user.js.map +1 -0
- package/dist/server/controllers/validation/user.mjs +47 -0
- package/dist/server/controllers/validation/user.mjs.map +1 -0
- package/dist/server/graphql/index.js +66 -0
- package/dist/server/graphql/index.js.map +1 -0
- package/dist/server/graphql/index.mjs +64 -0
- package/dist/server/graphql/index.mjs.map +1 -0
- package/dist/server/graphql/mutations/auth/change-password.js +40 -0
- package/dist/server/graphql/mutations/auth/change-password.js.map +1 -0
- package/dist/server/graphql/mutations/auth/change-password.mjs +38 -0
- package/dist/server/graphql/mutations/auth/change-password.mjs.map +1 -0
- package/dist/server/graphql/mutations/auth/email-confirmation.js +38 -0
- package/dist/server/graphql/mutations/auth/email-confirmation.js.map +1 -0
- package/dist/server/graphql/mutations/auth/email-confirmation.mjs +36 -0
- package/dist/server/graphql/mutations/auth/email-confirmation.mjs.map +1 -0
- package/dist/server/graphql/mutations/auth/forgot-password.js +37 -0
- package/dist/server/graphql/mutations/auth/forgot-password.js.map +1 -0
- package/dist/server/graphql/mutations/auth/forgot-password.mjs +35 -0
- package/dist/server/graphql/mutations/auth/forgot-password.mjs.map +1 -0
- package/dist/server/graphql/mutations/auth/login.js +40 -0
- package/dist/server/graphql/mutations/auth/login.js.map +1 -0
- package/dist/server/graphql/mutations/auth/login.mjs +38 -0
- package/dist/server/graphql/mutations/auth/login.mjs.map +1 -0
- package/dist/server/graphql/mutations/auth/register.js +38 -0
- package/dist/server/graphql/mutations/auth/register.js.map +1 -0
- package/dist/server/graphql/mutations/auth/register.mjs +36 -0
- package/dist/server/graphql/mutations/auth/register.mjs.map +1 -0
- package/dist/server/graphql/mutations/auth/reset-password.js +40 -0
- package/dist/server/graphql/mutations/auth/reset-password.js.map +1 -0
- package/dist/server/graphql/mutations/auth/reset-password.mjs +38 -0
- package/dist/server/graphql/mutations/auth/reset-password.mjs.map +1 -0
- package/dist/server/graphql/mutations/crud/role/create-role.js +37 -0
- package/dist/server/graphql/mutations/crud/role/create-role.js.map +1 -0
- package/dist/server/graphql/mutations/crud/role/create-role.mjs +35 -0
- package/dist/server/graphql/mutations/crud/role/create-role.mjs.map +1 -0
- package/dist/server/graphql/mutations/crud/role/delete-role.js +32 -0
- package/dist/server/graphql/mutations/crud/role/delete-role.js.map +1 -0
- package/dist/server/graphql/mutations/crud/role/delete-role.mjs +30 -0
- package/dist/server/graphql/mutations/crud/role/delete-role.mjs.map +1 -0
- package/dist/server/graphql/mutations/crud/role/update-role.js +39 -0
- package/dist/server/graphql/mutations/crud/role/update-role.js.map +1 -0
- package/dist/server/graphql/mutations/crud/role/update-role.mjs +37 -0
- package/dist/server/graphql/mutations/crud/role/update-role.mjs.map +1 -0
- package/dist/server/graphql/mutations/crud/user/create-user.js +46 -0
- package/dist/server/graphql/mutations/crud/user/create-user.js.map +1 -0
- package/dist/server/graphql/mutations/crud/user/create-user.mjs +44 -0
- package/dist/server/graphql/mutations/crud/user/create-user.mjs.map +1 -0
- package/dist/server/graphql/mutations/crud/user/delete-user.js +44 -0
- package/dist/server/graphql/mutations/crud/user/delete-user.js.map +1 -0
- package/dist/server/graphql/mutations/crud/user/delete-user.mjs +42 -0
- package/dist/server/graphql/mutations/crud/user/delete-user.mjs.map +1 -0
- package/dist/server/graphql/mutations/crud/user/update-user.js +49 -0
- package/dist/server/graphql/mutations/crud/user/update-user.js.map +1 -0
- package/dist/server/graphql/mutations/crud/user/update-user.mjs +47 -0
- package/dist/server/graphql/mutations/crud/user/update-user.mjs.map +1 -0
- package/dist/server/graphql/mutations/index.js +58 -0
- package/dist/server/graphql/mutations/index.js.map +1 -0
- package/dist/server/graphql/mutations/index.mjs +56 -0
- package/dist/server/graphql/mutations/index.mjs.map +1 -0
- package/dist/server/graphql/queries/index.js +25 -0
- package/dist/server/graphql/queries/index.js.map +1 -0
- package/dist/server/graphql/queries/index.mjs +23 -0
- package/dist/server/graphql/queries/index.mjs.map +1 -0
- package/dist/server/graphql/queries/me.js +23 -0
- package/dist/server/graphql/queries/me.js.map +1 -0
- package/dist/server/graphql/queries/me.mjs +21 -0
- package/dist/server/graphql/queries/me.mjs.map +1 -0
- package/dist/server/graphql/resolvers-configs.js +93 -0
- package/dist/server/graphql/resolvers-configs.js.map +1 -0
- package/dist/server/graphql/resolvers-configs.mjs +91 -0
- package/dist/server/graphql/resolvers-configs.mjs.map +1 -0
- package/dist/server/graphql/types/create-role-payload.js +20 -0
- package/dist/server/graphql/types/create-role-payload.js.map +1 -0
- package/dist/server/graphql/types/create-role-payload.mjs +18 -0
- package/dist/server/graphql/types/create-role-payload.mjs.map +1 -0
- package/dist/server/graphql/types/delete-role-payload.js +20 -0
- package/dist/server/graphql/types/delete-role-payload.js.map +1 -0
- package/dist/server/graphql/types/delete-role-payload.mjs +18 -0
- package/dist/server/graphql/types/delete-role-payload.mjs.map +1 -0
- package/dist/server/graphql/types/index.js +41 -0
- package/dist/server/graphql/types/index.js.map +1 -0
- package/dist/server/graphql/types/index.mjs +39 -0
- package/dist/server/graphql/types/index.mjs.map +1 -0
- package/dist/server/graphql/types/login-input.js +24 -0
- package/dist/server/graphql/types/login-input.js.map +1 -0
- package/dist/server/graphql/types/login-input.mjs +22 -0
- package/dist/server/graphql/types/login-input.mjs.map +1 -0
- package/dist/server/graphql/types/login-payload.js +23 -0
- package/dist/server/graphql/types/login-payload.js.map +1 -0
- package/dist/server/graphql/types/login-payload.mjs +21 -0
- package/dist/server/graphql/types/login-payload.mjs.map +1 -0
- package/dist/server/graphql/types/me-role.js +23 -0
- package/dist/server/graphql/types/me-role.js.map +1 -0
- package/dist/server/graphql/types/me-role.mjs +21 -0
- package/dist/server/graphql/types/me-role.mjs.map +1 -0
- package/dist/server/graphql/types/me.js +28 -0
- package/dist/server/graphql/types/me.js.map +1 -0
- package/dist/server/graphql/types/me.mjs +26 -0
- package/dist/server/graphql/types/me.mjs.map +1 -0
- package/dist/server/graphql/types/password-payload.js +20 -0
- package/dist/server/graphql/types/password-payload.js.map +1 -0
- package/dist/server/graphql/types/password-payload.mjs +18 -0
- package/dist/server/graphql/types/password-payload.mjs.map +1 -0
- package/dist/server/graphql/types/register-input.js +22 -0
- package/dist/server/graphql/types/register-input.js.map +1 -0
- package/dist/server/graphql/types/register-input.mjs +20 -0
- package/dist/server/graphql/types/register-input.mjs.map +1 -0
- package/dist/server/graphql/types/update-role-payload.js +20 -0
- package/dist/server/graphql/types/update-role-payload.js.map +1 -0
- package/dist/server/graphql/types/update-role-payload.mjs +18 -0
- package/dist/server/graphql/types/update-role-payload.mjs.map +1 -0
- package/dist/server/graphql/types/user-input.js +26 -0
- package/dist/server/graphql/types/user-input.js.map +1 -0
- package/dist/server/graphql/types/user-input.mjs +24 -0
- package/dist/server/graphql/types/user-input.mjs.map +1 -0
- package/dist/server/graphql/utils.js +32 -0
- package/dist/server/graphql/utils.js.map +1 -0
- package/dist/server/graphql/utils.mjs +30 -0
- package/dist/server/graphql/utils.mjs.map +1 -0
- package/dist/server/index.js +4 -4760
- package/dist/server/index.js.map +1 -1
- package/dist/server/index.mjs +2 -4758
- package/dist/server/index.mjs.map +1 -1
- package/dist/server/index2.js +39 -0
- package/dist/server/index2.js.map +1 -0
- package/dist/server/index2.mjs +37 -0
- package/dist/server/index2.mjs.map +1 -0
- package/dist/server/middlewares/index.js +18 -0
- package/dist/server/middlewares/index.js.map +1 -0
- package/dist/server/middlewares/index.mjs +16 -0
- package/dist/server/middlewares/index.mjs.map +1 -0
- package/dist/server/middlewares/rateLimit.js +51 -0
- package/dist/server/middlewares/rateLimit.js.map +1 -0
- package/dist/server/middlewares/rateLimit.mjs +49 -0
- package/dist/server/middlewares/rateLimit.mjs.map +1 -0
- package/dist/server/register.js +41 -0
- package/dist/server/register.js.map +1 -0
- package/dist/server/register.mjs +39 -0
- package/dist/server/register.mjs.map +1 -0
- package/dist/server/routes/admin/index.js +27 -0
- package/dist/server/routes/admin/index.js.map +1 -0
- package/dist/server/routes/admin/index.mjs +25 -0
- package/dist/server/routes/admin/index.mjs.map +1 -0
- package/dist/server/routes/admin/permissions.js +29 -0
- package/dist/server/routes/admin/permissions.js.map +1 -0
- package/dist/server/routes/admin/permissions.mjs +27 -0
- package/dist/server/routes/admin/permissions.mjs.map +1 -0
- package/dist/server/routes/admin/role.js +99 -0
- package/dist/server/routes/admin/role.js.map +1 -0
- package/dist/server/routes/admin/role.mjs +97 -0
- package/dist/server/routes/admin/role.mjs.map +1 -0
- package/dist/server/routes/admin/settings.js +116 -0
- package/dist/server/routes/admin/settings.js.map +1 -0
- package/dist/server/routes/admin/settings.mjs +114 -0
- package/dist/server/routes/admin/settings.mjs.map +1 -0
- package/dist/server/routes/content-api/auth.js +104 -0
- package/dist/server/routes/content-api/auth.js.map +1 -0
- package/dist/server/routes/content-api/auth.mjs +102 -0
- package/dist/server/routes/content-api/auth.mjs.map +1 -0
- package/dist/server/routes/content-api/index.js +30 -0
- package/dist/server/routes/content-api/index.js.map +1 -0
- package/dist/server/routes/content-api/index.mjs +28 -0
- package/dist/server/routes/content-api/index.mjs.map +1 -0
- package/dist/server/routes/content-api/permissions.js +19 -0
- package/dist/server/routes/content-api/permissions.js.map +1 -0
- package/dist/server/routes/content-api/permissions.mjs +17 -0
- package/dist/server/routes/content-api/permissions.mjs.map +1 -0
- package/dist/server/routes/content-api/role.js +39 -0
- package/dist/server/routes/content-api/role.js.map +1 -0
- package/dist/server/routes/content-api/role.mjs +37 -0
- package/dist/server/routes/content-api/role.mjs.map +1 -0
- package/dist/server/routes/content-api/user.js +70 -0
- package/dist/server/routes/content-api/user.js.map +1 -0
- package/dist/server/routes/content-api/user.mjs +68 -0
- package/dist/server/routes/content-api/user.mjs.map +1 -0
- package/dist/server/routes/index.js +19 -0
- package/dist/server/routes/index.js.map +1 -0
- package/dist/server/routes/index.mjs +17 -0
- package/dist/server/routes/index.mjs.map +1 -0
- package/dist/server/services/index.js +36 -0
- package/dist/server/services/index.js.map +1 -0
- package/dist/server/services/index.mjs +34 -0
- package/dist/server/services/index.mjs.map +1 -0
- package/dist/server/services/jwt.js +50 -0
- package/dist/server/services/jwt.js.map +1 -0
- package/dist/server/services/jwt.mjs +48 -0
- package/dist/server/services/jwt.mjs.map +1 -0
- package/dist/server/services/permission.js +52 -0
- package/dist/server/services/permission.js.map +1 -0
- package/dist/server/services/permission.mjs +50 -0
- package/dist/server/services/permission.mjs.map +1 -0
- package/dist/server/services/providers-registry.js +555 -0
- package/dist/server/services/providers-registry.js.map +1 -0
- package/dist/server/services/providers-registry.mjs +553 -0
- package/dist/server/services/providers-registry.mjs.map +1 -0
- package/dist/server/services/providers.js +111 -0
- package/dist/server/services/providers.js.map +1 -0
- package/dist/server/services/providers.mjs +109 -0
- package/dist/server/services/providers.mjs.map +1 -0
- package/dist/server/services/role.js +186 -0
- package/dist/server/services/role.js.map +1 -0
- package/dist/server/services/role.mjs +184 -0
- package/dist/server/services/role.mjs.map +1 -0
- package/dist/server/services/user.js +179 -0
- package/dist/server/services/user.js.map +1 -0
- package/dist/server/services/user.mjs +177 -0
- package/dist/server/services/user.mjs.map +1 -0
- package/dist/server/services/users-permissions.js +247 -0
- package/dist/server/services/users-permissions.js.map +1 -0
- package/dist/server/services/users-permissions.mjs +245 -0
- package/dist/server/services/users-permissions.mjs.map +1 -0
- package/dist/server/strategies/users-permissions.js +114 -0
- package/dist/server/strategies/users-permissions.js.map +1 -0
- package/dist/server/strategies/users-permissions.mjs +112 -0
- package/dist/server/strategies/users-permissions.mjs.map +1 -0
- package/dist/server/utils/index.js +22 -0
- package/dist/server/utils/index.js.map +1 -0
- package/dist/server/utils/index.mjs +20 -0
- package/dist/server/utils/index.mjs.map +1 -0
- package/dist/server/utils/sanitize/index.js +21 -0
- package/dist/server/utils/sanitize/index.js.map +1 -0
- package/dist/server/utils/sanitize/index.mjs +19 -0
- package/dist/server/utils/sanitize/index.mjs.map +1 -0
- package/dist/server/utils/sanitize/sanitizers.js +32 -0
- package/dist/server/utils/sanitize/sanitizers.js.map +1 -0
- package/dist/server/utils/sanitize/sanitizers.mjs +30 -0
- package/dist/server/utils/sanitize/sanitizers.mjs.map +1 -0
- package/dist/server/utils/sanitize/visitors/index.js +17 -0
- package/dist/server/utils/sanitize/visitors/index.js.map +1 -0
- package/dist/server/utils/sanitize/visitors/index.mjs +15 -0
- package/dist/server/utils/sanitize/visitors/index.mjs.map +1 -0
- package/dist/server/utils/sanitize/visitors/remove-user-relation-from-role-entities.js +17 -0
- package/dist/server/utils/sanitize/visitors/remove-user-relation-from-role-entities.js.map +1 -0
- package/dist/server/utils/sanitize/visitors/remove-user-relation-from-role-entities.mjs +15 -0
- package/dist/server/utils/sanitize/visitors/remove-user-relation-from-role-entities.mjs.map +1 -0
- package/package.json +3 -3
- package/rollup.config.mjs +15 -48
- package/dist/admin/chunks/ar-BJwjobLp.js.map +0 -1
- package/dist/admin/chunks/ar-G6bUGuUb.mjs.map +0 -1
- package/dist/admin/chunks/cs-Bu59JqhG.mjs.map +0 -1
- package/dist/admin/chunks/cs-uS_SIEo8.js.map +0 -1
- package/dist/admin/chunks/de-7MVMrqqI.js.map +0 -1
- package/dist/admin/chunks/de-B81A69_5.mjs.map +0 -1
- package/dist/admin/chunks/dk-BaelzvBE.mjs.map +0 -1
- package/dist/admin/chunks/dk-DwCLGmy9.js.map +0 -1
- package/dist/admin/chunks/en-BhgCBe7M.mjs.map +0 -1
- package/dist/admin/chunks/en-DwQjkHi_.js.map +0 -1
- package/dist/admin/chunks/es-B0wXmvRj.mjs.map +0 -1
- package/dist/admin/chunks/es-BOJOedG5.js.map +0 -1
- package/dist/admin/chunks/fr-BDNWCNs0.js.map +0 -1
- package/dist/admin/chunks/fr-CGYvGUXg.mjs.map +0 -1
- package/dist/admin/chunks/id-CNzbwFjA.mjs.map +0 -1
- package/dist/admin/chunks/id-UqUPykHZ.js.map +0 -1
- package/dist/admin/chunks/index--_o6btSC.js +0 -471
- package/dist/admin/chunks/index--_o6btSC.js.map +0 -1
- package/dist/admin/chunks/index-BBjNJt_G.mjs +0 -448
- package/dist/admin/chunks/index-BBjNJt_G.mjs.map +0 -1
- package/dist/admin/chunks/index-BgAfLcWs.mjs +0 -1516
- package/dist/admin/chunks/index-BgAfLcWs.mjs.map +0 -1
- package/dist/admin/chunks/index-CHTUC0LM.mjs +0 -718
- package/dist/admin/chunks/index-CHTUC0LM.mjs.map +0 -1
- package/dist/admin/chunks/index-CY5JZ38k.mjs +0 -213
- package/dist/admin/chunks/index-CY5JZ38k.mjs.map +0 -1
- package/dist/admin/chunks/index-Cu1VuLS3.js +0 -741
- package/dist/admin/chunks/index-Cu1VuLS3.js.map +0 -1
- package/dist/admin/chunks/index-Cy-tPfRk.mjs.map +0 -1
- package/dist/admin/chunks/index-DD-Z6c1S.js +0 -217
- package/dist/admin/chunks/index-DD-Z6c1S.js.map +0 -1
- package/dist/admin/chunks/index-DFnYIqrB.js.map +0 -1
- package/dist/admin/chunks/index-DvubCYNe.js +0 -1537
- package/dist/admin/chunks/index-DvubCYNe.js.map +0 -1
- package/dist/admin/chunks/it-B2H2foTf.mjs.map +0 -1
- package/dist/admin/chunks/it-D5VuyoLU.js.map +0 -1
- package/dist/admin/chunks/ja-C0z9d7L9.mjs.map +0 -1
- package/dist/admin/chunks/ja-MpqVsCgs.js.map +0 -1
- package/dist/admin/chunks/ko-Bm-grPSc.js.map +0 -1
- package/dist/admin/chunks/ko-CzUgzpeS.mjs.map +0 -1
- package/dist/admin/chunks/ms-CCacxjim.mjs.map +0 -1
- package/dist/admin/chunks/ms-D7eyBD5H.js.map +0 -1
- package/dist/admin/chunks/nl-BIOwAQtI.js.map +0 -1
- package/dist/admin/chunks/nl-DDC3nZW-.mjs.map +0 -1
- package/dist/admin/chunks/pl-D5BeNrg_.js.map +0 -1
- package/dist/admin/chunks/pl-XkS463rN.mjs.map +0 -1
- package/dist/admin/chunks/pt-BR-8cC7z8Km.mjs.map +0 -1
- package/dist/admin/chunks/pt-BR-DxPBzQGx.js.map +0 -1
- package/dist/admin/chunks/pt-DQpEvio8.mjs.map +0 -1
- package/dist/admin/chunks/pt-kkCwzNvH.js.map +0 -1
- package/dist/admin/chunks/ru-BQ0gHmp3.js.map +0 -1
- package/dist/admin/chunks/ru-nzL_7Mhg.mjs.map +0 -1
- package/dist/admin/chunks/sk-Ddxc_tZA.mjs.map +0 -1
- package/dist/admin/chunks/sk-nVwAPdYC.js.map +0 -1
- package/dist/admin/chunks/sv-BDfk2A-F.js.map +0 -1
- package/dist/admin/chunks/sv-By3RYpMG.mjs.map +0 -1
- package/dist/admin/chunks/th-BtTtpHe2.js.map +0 -1
- package/dist/admin/chunks/th-COl50vqb.mjs.map +0 -1
- package/dist/admin/chunks/tr-80SJU6jg.mjs.map +0 -1
- package/dist/admin/chunks/tr-Di-Nf7cT.js.map +0 -1
- package/dist/admin/chunks/uk-DnrIlPwG.mjs.map +0 -1
- package/dist/admin/chunks/uk-r5zXTAS7.js.map +0 -1
- package/dist/admin/chunks/vi-69AF03Iv.mjs.map +0 -1
- package/dist/admin/chunks/vi-D9cCsHsU.js.map +0 -1
- package/dist/admin/chunks/zh-BzSkqxo-.mjs.map +0 -1
- package/dist/admin/chunks/zh-BzWgJEzz.js.map +0 -1
- package/dist/admin/chunks/zh-Hans-CKqQbpsM.js.map +0 -1
- package/dist/admin/chunks/zh-Hans-DmDcSsp7.mjs.map +0 -1
|
@@ -0,0 +1,278 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
6
|
+
var React = require('react');
|
|
7
|
+
var strapiAdmin = require('@strapi/admin/strapi-admin');
|
|
8
|
+
var designSystem = require('@strapi/design-system');
|
|
9
|
+
var icons = require('@strapi/icons');
|
|
10
|
+
var admin = require('@strapi/strapi/admin');
|
|
11
|
+
var upperFirst = require('lodash/upperFirst');
|
|
12
|
+
var reactIntl = require('react-intl');
|
|
13
|
+
var reactQuery = require('react-query');
|
|
14
|
+
var index = require('../../components/FormModal/index.js');
|
|
15
|
+
var constants = require('../../constants.js');
|
|
16
|
+
require('lodash/isEmpty');
|
|
17
|
+
var getTrad = require('../../utils/getTrad.js');
|
|
18
|
+
var forms = require('./utils/forms.js');
|
|
19
|
+
|
|
20
|
+
function _interopNamespaceDefault(e) {
|
|
21
|
+
var n = Object.create(null);
|
|
22
|
+
if (e) {
|
|
23
|
+
Object.keys(e).forEach(function (k) {
|
|
24
|
+
if (k !== 'default') {
|
|
25
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
26
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
27
|
+
enumerable: true,
|
|
28
|
+
get: function () { return e[k]; }
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
n.default = e;
|
|
34
|
+
return Object.freeze(n);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
|
|
38
|
+
|
|
39
|
+
const ProvidersPage = ()=>{
|
|
40
|
+
const { formatMessage, locale } = reactIntl.useIntl();
|
|
41
|
+
const queryClient = reactQuery.useQueryClient();
|
|
42
|
+
const { trackUsage } = strapiAdmin.useTracking();
|
|
43
|
+
const [isOpen, setIsOpen] = React__namespace.useState(false);
|
|
44
|
+
const [providerToEditName, setProviderToEditName] = React__namespace.useState(null);
|
|
45
|
+
const { toggleNotification } = admin.useNotification();
|
|
46
|
+
const { get, put } = admin.useFetchClient();
|
|
47
|
+
const { formatAPIError } = admin.useAPIErrorHandler();
|
|
48
|
+
const formatter = designSystem.useCollator(locale, {
|
|
49
|
+
sensitivity: 'base'
|
|
50
|
+
});
|
|
51
|
+
const { isLoading: isLoadingPermissions, allowedActions: { canUpdate } } = admin.useRBAC({
|
|
52
|
+
update: constants.PERMISSIONS.updateProviders
|
|
53
|
+
});
|
|
54
|
+
const { isLoading: isLoadingData, data } = reactQuery.useQuery([
|
|
55
|
+
'users-permissions',
|
|
56
|
+
'get-providers'
|
|
57
|
+
], async ()=>{
|
|
58
|
+
const { data } = await get('/users-permissions/providers');
|
|
59
|
+
return data;
|
|
60
|
+
}, {
|
|
61
|
+
initialData: {}
|
|
62
|
+
});
|
|
63
|
+
const submitMutation = reactQuery.useMutation((body)=>put('/users-permissions/providers', body), {
|
|
64
|
+
async onSuccess () {
|
|
65
|
+
await queryClient.invalidateQueries([
|
|
66
|
+
'users-permissions',
|
|
67
|
+
'get-providers'
|
|
68
|
+
]);
|
|
69
|
+
toggleNotification({
|
|
70
|
+
type: 'success',
|
|
71
|
+
message: formatMessage({
|
|
72
|
+
id: getTrad('notification.success.submit')
|
|
73
|
+
})
|
|
74
|
+
});
|
|
75
|
+
trackUsage('didEditAuthenticationProvider');
|
|
76
|
+
handleToggleModal();
|
|
77
|
+
},
|
|
78
|
+
onError (error) {
|
|
79
|
+
toggleNotification({
|
|
80
|
+
type: 'danger',
|
|
81
|
+
message: formatAPIError(error)
|
|
82
|
+
});
|
|
83
|
+
},
|
|
84
|
+
refetchActive: false
|
|
85
|
+
});
|
|
86
|
+
const providers = Object.entries(data).reduce((acc, [name, provider])=>{
|
|
87
|
+
const { icon, enabled, subdomain } = provider;
|
|
88
|
+
acc.push({
|
|
89
|
+
name,
|
|
90
|
+
icon: icon === 'envelope' ? [
|
|
91
|
+
'fas',
|
|
92
|
+
'envelope'
|
|
93
|
+
] : [
|
|
94
|
+
'fab',
|
|
95
|
+
icon
|
|
96
|
+
],
|
|
97
|
+
enabled,
|
|
98
|
+
subdomain
|
|
99
|
+
});
|
|
100
|
+
return acc;
|
|
101
|
+
}, []).sort((a, b)=>formatter.compare(a.name, b.name));
|
|
102
|
+
const isLoading = isLoadingData || isLoadingPermissions;
|
|
103
|
+
const isProviderWithSubdomain = React__namespace.useMemo(()=>{
|
|
104
|
+
if (!providerToEditName) {
|
|
105
|
+
return false;
|
|
106
|
+
}
|
|
107
|
+
const providerToEdit = providers.find((obj)=>obj.name === providerToEditName);
|
|
108
|
+
return !!providerToEdit?.subdomain;
|
|
109
|
+
}, [
|
|
110
|
+
providers,
|
|
111
|
+
providerToEditName
|
|
112
|
+
]);
|
|
113
|
+
const layoutToRender = React__namespace.useMemo(()=>{
|
|
114
|
+
if (providerToEditName === 'email') {
|
|
115
|
+
return forms.email;
|
|
116
|
+
}
|
|
117
|
+
if (isProviderWithSubdomain) {
|
|
118
|
+
return forms.providersWithSubdomain;
|
|
119
|
+
}
|
|
120
|
+
return forms.providers;
|
|
121
|
+
}, [
|
|
122
|
+
providerToEditName,
|
|
123
|
+
isProviderWithSubdomain
|
|
124
|
+
]);
|
|
125
|
+
const handleToggleModal = ()=>{
|
|
126
|
+
setIsOpen((prev)=>!prev);
|
|
127
|
+
};
|
|
128
|
+
const handleClickEdit = (provider)=>{
|
|
129
|
+
if (canUpdate) {
|
|
130
|
+
setProviderToEditName(provider.name);
|
|
131
|
+
handleToggleModal();
|
|
132
|
+
}
|
|
133
|
+
};
|
|
134
|
+
const handleSubmit = async (values)=>{
|
|
135
|
+
trackUsage('willEditAuthenticationProvider');
|
|
136
|
+
submitMutation.mutate({
|
|
137
|
+
providers: {
|
|
138
|
+
...data,
|
|
139
|
+
[providerToEditName]: values
|
|
140
|
+
}
|
|
141
|
+
});
|
|
142
|
+
};
|
|
143
|
+
if (isLoading) {
|
|
144
|
+
return /*#__PURE__*/ jsxRuntime.jsx(admin.Page.Loading, {});
|
|
145
|
+
}
|
|
146
|
+
return /*#__PURE__*/ jsxRuntime.jsxs(strapiAdmin.Layouts.Root, {
|
|
147
|
+
children: [
|
|
148
|
+
/*#__PURE__*/ jsxRuntime.jsx(admin.Page.Title, {
|
|
149
|
+
children: formatMessage({
|
|
150
|
+
id: 'Settings.PageTitle',
|
|
151
|
+
defaultMessage: 'Settings - {name}'
|
|
152
|
+
}, {
|
|
153
|
+
name: formatMessage({
|
|
154
|
+
id: getTrad('HeaderNav.link.providers'),
|
|
155
|
+
defaultMessage: 'Providers'
|
|
156
|
+
})
|
|
157
|
+
})
|
|
158
|
+
}),
|
|
159
|
+
/*#__PURE__*/ jsxRuntime.jsxs(admin.Page.Main, {
|
|
160
|
+
children: [
|
|
161
|
+
/*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.Layouts.Header, {
|
|
162
|
+
title: formatMessage({
|
|
163
|
+
id: getTrad('HeaderNav.link.providers'),
|
|
164
|
+
defaultMessage: 'Providers'
|
|
165
|
+
})
|
|
166
|
+
}),
|
|
167
|
+
/*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.Layouts.Content, {
|
|
168
|
+
children: /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Table, {
|
|
169
|
+
colCount: 3,
|
|
170
|
+
rowCount: providers.length + 1,
|
|
171
|
+
children: [
|
|
172
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Thead, {
|
|
173
|
+
children: /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Tr, {
|
|
174
|
+
children: [
|
|
175
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Th, {
|
|
176
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
177
|
+
variant: "sigma",
|
|
178
|
+
textColor: "neutral600",
|
|
179
|
+
children: formatMessage({
|
|
180
|
+
id: 'global.name',
|
|
181
|
+
defaultMessage: 'Name'
|
|
182
|
+
})
|
|
183
|
+
})
|
|
184
|
+
}),
|
|
185
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Th, {
|
|
186
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
187
|
+
variant: "sigma",
|
|
188
|
+
textColor: "neutral600",
|
|
189
|
+
children: formatMessage({
|
|
190
|
+
id: getTrad('Providers.status'),
|
|
191
|
+
defaultMessage: 'Status'
|
|
192
|
+
})
|
|
193
|
+
})
|
|
194
|
+
}),
|
|
195
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Th, {
|
|
196
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
197
|
+
variant: "sigma",
|
|
198
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.VisuallyHidden, {
|
|
199
|
+
children: formatMessage({
|
|
200
|
+
id: 'global.settings',
|
|
201
|
+
defaultMessage: 'Settings'
|
|
202
|
+
})
|
|
203
|
+
})
|
|
204
|
+
})
|
|
205
|
+
})
|
|
206
|
+
]
|
|
207
|
+
})
|
|
208
|
+
}),
|
|
209
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Tbody, {
|
|
210
|
+
children: providers.map((provider)=>/*#__PURE__*/ jsxRuntime.jsxs(designSystem.Tr, {
|
|
211
|
+
onClick: ()=>canUpdate ? handleClickEdit(provider) : undefined,
|
|
212
|
+
children: [
|
|
213
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Td, {
|
|
214
|
+
width: "45%",
|
|
215
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
216
|
+
fontWeight: "semiBold",
|
|
217
|
+
textColor: "neutral800",
|
|
218
|
+
children: provider.name
|
|
219
|
+
})
|
|
220
|
+
}),
|
|
221
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Td, {
|
|
222
|
+
width: "65%",
|
|
223
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
224
|
+
textColor: provider.enabled ? 'success600' : 'danger600',
|
|
225
|
+
"data-testid": `enable-${provider.name}`,
|
|
226
|
+
children: provider.enabled ? formatMessage({
|
|
227
|
+
id: 'global.enabled',
|
|
228
|
+
defaultMessage: 'Enabled'
|
|
229
|
+
}) : formatMessage({
|
|
230
|
+
id: 'global.disabled',
|
|
231
|
+
defaultMessage: 'Disabled'
|
|
232
|
+
})
|
|
233
|
+
})
|
|
234
|
+
}),
|
|
235
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Td, {
|
|
236
|
+
onClick: (e)=>e.stopPropagation(),
|
|
237
|
+
children: canUpdate && /*#__PURE__*/ jsxRuntime.jsx(designSystem.IconButton, {
|
|
238
|
+
onClick: ()=>handleClickEdit(provider),
|
|
239
|
+
variant: "ghost",
|
|
240
|
+
label: "Edit",
|
|
241
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(icons.Pencil, {})
|
|
242
|
+
})
|
|
243
|
+
})
|
|
244
|
+
]
|
|
245
|
+
}, provider.name))
|
|
246
|
+
})
|
|
247
|
+
]
|
|
248
|
+
})
|
|
249
|
+
})
|
|
250
|
+
]
|
|
251
|
+
}),
|
|
252
|
+
/*#__PURE__*/ jsxRuntime.jsx(index, {
|
|
253
|
+
initialData: data[providerToEditName],
|
|
254
|
+
isOpen: isOpen,
|
|
255
|
+
isSubmiting: submitMutation.isLoading,
|
|
256
|
+
layout: layoutToRender,
|
|
257
|
+
headerBreadcrumbs: [
|
|
258
|
+
formatMessage({
|
|
259
|
+
id: getTrad('PopUpForm.header.edit.providers'),
|
|
260
|
+
defaultMessage: 'Edit Provider'
|
|
261
|
+
}),
|
|
262
|
+
upperFirst(providerToEditName)
|
|
263
|
+
],
|
|
264
|
+
onToggle: handleToggleModal,
|
|
265
|
+
onSubmit: handleSubmit,
|
|
266
|
+
providerToEditName: providerToEditName
|
|
267
|
+
})
|
|
268
|
+
]
|
|
269
|
+
});
|
|
270
|
+
};
|
|
271
|
+
const ProtectedProvidersPage = ()=>/*#__PURE__*/ jsxRuntime.jsx(admin.Page.Protect, {
|
|
272
|
+
permissions: constants.PERMISSIONS.readProviders,
|
|
273
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(ProvidersPage, {})
|
|
274
|
+
});
|
|
275
|
+
|
|
276
|
+
exports.ProvidersPage = ProvidersPage;
|
|
277
|
+
exports.default = ProtectedProvidersPage;
|
|
278
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../admin/src/pages/Providers/index.jsx"],"sourcesContent":["import * as React from 'react';\n\nimport { useTracking, Layouts } from '@strapi/admin/strapi-admin';\nimport {\n IconButton,\n Table,\n Tbody,\n Td,\n Th,\n Thead,\n Tr,\n Typography,\n VisuallyHidden,\n useCollator,\n} from '@strapi/design-system';\nimport { Pencil } from '@strapi/icons';\nimport {\n Page,\n useAPIErrorHandler,\n useNotification,\n useFetchClient,\n useRBAC,\n} from '@strapi/strapi/admin';\nimport upperFirst from 'lodash/upperFirst';\nimport { useIntl } from 'react-intl';\nimport { useMutation, useQuery, useQueryClient } from 'react-query';\n\nimport FormModal from '../../components/FormModal';\nimport { PERMISSIONS } from '../../constants';\nimport { getTrad } from '../../utils';\n\nimport forms from './utils/forms';\n\nexport const ProvidersPage = () => {\n const { formatMessage, locale } = useIntl();\n const queryClient = useQueryClient();\n const { trackUsage } = useTracking();\n const [isOpen, setIsOpen] = React.useState(false);\n const [providerToEditName, setProviderToEditName] = React.useState(null);\n const { toggleNotification } = useNotification();\n const { get, put } = useFetchClient();\n const { formatAPIError } = useAPIErrorHandler();\n const formatter = useCollator(locale, {\n sensitivity: 'base',\n });\n\n const {\n isLoading: isLoadingPermissions,\n allowedActions: { canUpdate },\n } = useRBAC({ update: PERMISSIONS.updateProviders });\n\n const { isLoading: isLoadingData, data } = useQuery(\n ['users-permissions', 'get-providers'],\n async () => {\n const { data } = await get('/users-permissions/providers');\n\n return data;\n },\n {\n initialData: {},\n }\n );\n\n const submitMutation = useMutation((body) => put('/users-permissions/providers', body), {\n async onSuccess() {\n await queryClient.invalidateQueries(['users-permissions', 'get-providers']);\n\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: getTrad('notification.success.submit') }),\n });\n\n trackUsage('didEditAuthenticationProvider');\n\n handleToggleModal();\n },\n onError(error) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n },\n refetchActive: false,\n });\n\n const providers = Object.entries(data)\n .reduce((acc, [name, provider]) => {\n const { icon, enabled, subdomain } = provider;\n\n acc.push({\n name,\n icon: icon === 'envelope' ? ['fas', 'envelope'] : ['fab', icon],\n enabled,\n subdomain,\n });\n\n return acc;\n }, [])\n .sort((a, b) => formatter.compare(a.name, b.name));\n\n const isLoading = isLoadingData || isLoadingPermissions;\n\n const isProviderWithSubdomain = React.useMemo(() => {\n if (!providerToEditName) {\n return false;\n }\n\n const providerToEdit = providers.find((obj) => obj.name === providerToEditName);\n\n return !!providerToEdit?.subdomain;\n }, [providers, providerToEditName]);\n\n const layoutToRender = React.useMemo(() => {\n if (providerToEditName === 'email') {\n return forms.email;\n }\n\n if (isProviderWithSubdomain) {\n return forms.providersWithSubdomain;\n }\n\n return forms.providers;\n }, [providerToEditName, isProviderWithSubdomain]);\n\n const handleToggleModal = () => {\n setIsOpen((prev) => !prev);\n };\n\n const handleClickEdit = (provider) => {\n if (canUpdate) {\n setProviderToEditName(provider.name);\n handleToggleModal();\n }\n };\n\n const handleSubmit = async (values) => {\n trackUsage('willEditAuthenticationProvider');\n\n submitMutation.mutate({ providers: { ...data, [providerToEditName]: values } });\n };\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n return (\n <Layouts.Root>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: formatMessage({\n id: getTrad('HeaderNav.link.providers'),\n defaultMessage: 'Providers',\n }),\n }\n )}\n </Page.Title>\n <Page.Main>\n <Layouts.Header\n title={formatMessage({\n id: getTrad('HeaderNav.link.providers'),\n defaultMessage: 'Providers',\n })}\n />\n <Layouts.Content>\n <Table colCount={3} rowCount={providers.length + 1}>\n <Thead>\n <Tr>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({ id: 'global.name', defaultMessage: 'Name' })}\n </Typography>\n </Th>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({ id: getTrad('Providers.status'), defaultMessage: 'Status' })}\n </Typography>\n </Th>\n <Th>\n <Typography variant=\"sigma\">\n <VisuallyHidden>\n {formatMessage({\n id: 'global.settings',\n defaultMessage: 'Settings',\n })}\n </VisuallyHidden>\n </Typography>\n </Th>\n </Tr>\n </Thead>\n <Tbody>\n {providers.map((provider) => (\n <Tr\n key={provider.name}\n onClick={() => (canUpdate ? handleClickEdit(provider) : undefined)}\n >\n <Td width=\"45%\">\n <Typography fontWeight=\"semiBold\" textColor=\"neutral800\">\n {provider.name}\n </Typography>\n </Td>\n <Td width=\"65%\">\n <Typography\n textColor={provider.enabled ? 'success600' : 'danger600'}\n data-testid={`enable-${provider.name}`}\n >\n {provider.enabled\n ? formatMessage({\n id: 'global.enabled',\n defaultMessage: 'Enabled',\n })\n : formatMessage({\n id: 'global.disabled',\n defaultMessage: 'Disabled',\n })}\n </Typography>\n </Td>\n <Td onClick={(e) => e.stopPropagation()}>\n {canUpdate && (\n <IconButton\n onClick={() => handleClickEdit(provider)}\n variant=\"ghost\"\n label=\"Edit\"\n >\n <Pencil />\n </IconButton>\n )}\n </Td>\n </Tr>\n ))}\n </Tbody>\n </Table>\n </Layouts.Content>\n </Page.Main>\n <FormModal\n initialData={data[providerToEditName]}\n isOpen={isOpen}\n isSubmiting={submitMutation.isLoading}\n layout={layoutToRender}\n headerBreadcrumbs={[\n formatMessage({\n id: getTrad('PopUpForm.header.edit.providers'),\n defaultMessage: 'Edit Provider',\n }),\n upperFirst(providerToEditName),\n ]}\n onToggle={handleToggleModal}\n onSubmit={handleSubmit}\n providerToEditName={providerToEditName}\n />\n </Layouts.Root>\n );\n};\n\nconst ProtectedProvidersPage = () => (\n <Page.Protect permissions={PERMISSIONS.readProviders}>\n <ProvidersPage />\n </Page.Protect>\n);\n\nexport default ProtectedProvidersPage;\n"],"names":["ProvidersPage","formatMessage","locale","useIntl","queryClient","useQueryClient","trackUsage","useTracking","isOpen","setIsOpen","React","useState","providerToEditName","setProviderToEditName","toggleNotification","useNotification","get","put","useFetchClient","formatAPIError","useAPIErrorHandler","formatter","useCollator","sensitivity","isLoading","isLoadingPermissions","allowedActions","canUpdate","useRBAC","update","PERMISSIONS","updateProviders","isLoadingData","data","useQuery","initialData","submitMutation","useMutation","body","onSuccess","invalidateQueries","type","message","id","getTrad","handleToggleModal","onError","error","refetchActive","providers","Object","entries","reduce","acc","name","provider","icon","enabled","subdomain","push","sort","a","b","compare","isProviderWithSubdomain","useMemo","providerToEdit","find","obj","layoutToRender","forms","email","providersWithSubdomain","prev","handleClickEdit","handleSubmit","values","mutate","_jsx","Page","Loading","_jsxs","Layouts","Root","Title","defaultMessage","Main","Header","title","Content","Table","colCount","rowCount","length","Thead","Tr","Th","Typography","variant","textColor","VisuallyHidden","Tbody","map","onClick","undefined","Td","width","fontWeight","data-testid","e","stopPropagation","IconButton","label","Pencil","FormModal","isSubmiting","layout","headerBreadcrumbs","upperFirst","onToggle","onSubmit","ProtectedProvidersPage","Protect","permissions","readProviders"],"mappings":"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"}
|
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { useTracking, Layouts } from '@strapi/admin/strapi-admin';
|
|
4
|
+
import { useCollator, Table, Thead, Tr, Th, Typography, VisuallyHidden, Tbody, Td, IconButton } from '@strapi/design-system';
|
|
5
|
+
import { Pencil } from '@strapi/icons';
|
|
6
|
+
import { useNotification, useFetchClient, useAPIErrorHandler, useRBAC, Page } from '@strapi/strapi/admin';
|
|
7
|
+
import upperFirst from 'lodash/upperFirst';
|
|
8
|
+
import { useIntl } from 'react-intl';
|
|
9
|
+
import { useQueryClient, useQuery, useMutation } from 'react-query';
|
|
10
|
+
import FormModal from '../../components/FormModal/index.mjs';
|
|
11
|
+
import { PERMISSIONS } from '../../constants.mjs';
|
|
12
|
+
import 'lodash/isEmpty';
|
|
13
|
+
import getTrad from '../../utils/getTrad.mjs';
|
|
14
|
+
import forms from './utils/forms.mjs';
|
|
15
|
+
|
|
16
|
+
const ProvidersPage = ()=>{
|
|
17
|
+
const { formatMessage, locale } = useIntl();
|
|
18
|
+
const queryClient = useQueryClient();
|
|
19
|
+
const { trackUsage } = useTracking();
|
|
20
|
+
const [isOpen, setIsOpen] = React.useState(false);
|
|
21
|
+
const [providerToEditName, setProviderToEditName] = React.useState(null);
|
|
22
|
+
const { toggleNotification } = useNotification();
|
|
23
|
+
const { get, put } = useFetchClient();
|
|
24
|
+
const { formatAPIError } = useAPIErrorHandler();
|
|
25
|
+
const formatter = useCollator(locale, {
|
|
26
|
+
sensitivity: 'base'
|
|
27
|
+
});
|
|
28
|
+
const { isLoading: isLoadingPermissions, allowedActions: { canUpdate } } = useRBAC({
|
|
29
|
+
update: PERMISSIONS.updateProviders
|
|
30
|
+
});
|
|
31
|
+
const { isLoading: isLoadingData, data } = useQuery([
|
|
32
|
+
'users-permissions',
|
|
33
|
+
'get-providers'
|
|
34
|
+
], async ()=>{
|
|
35
|
+
const { data } = await get('/users-permissions/providers');
|
|
36
|
+
return data;
|
|
37
|
+
}, {
|
|
38
|
+
initialData: {}
|
|
39
|
+
});
|
|
40
|
+
const submitMutation = useMutation((body)=>put('/users-permissions/providers', body), {
|
|
41
|
+
async onSuccess () {
|
|
42
|
+
await queryClient.invalidateQueries([
|
|
43
|
+
'users-permissions',
|
|
44
|
+
'get-providers'
|
|
45
|
+
]);
|
|
46
|
+
toggleNotification({
|
|
47
|
+
type: 'success',
|
|
48
|
+
message: formatMessage({
|
|
49
|
+
id: getTrad('notification.success.submit')
|
|
50
|
+
})
|
|
51
|
+
});
|
|
52
|
+
trackUsage('didEditAuthenticationProvider');
|
|
53
|
+
handleToggleModal();
|
|
54
|
+
},
|
|
55
|
+
onError (error) {
|
|
56
|
+
toggleNotification({
|
|
57
|
+
type: 'danger',
|
|
58
|
+
message: formatAPIError(error)
|
|
59
|
+
});
|
|
60
|
+
},
|
|
61
|
+
refetchActive: false
|
|
62
|
+
});
|
|
63
|
+
const providers = Object.entries(data).reduce((acc, [name, provider])=>{
|
|
64
|
+
const { icon, enabled, subdomain } = provider;
|
|
65
|
+
acc.push({
|
|
66
|
+
name,
|
|
67
|
+
icon: icon === 'envelope' ? [
|
|
68
|
+
'fas',
|
|
69
|
+
'envelope'
|
|
70
|
+
] : [
|
|
71
|
+
'fab',
|
|
72
|
+
icon
|
|
73
|
+
],
|
|
74
|
+
enabled,
|
|
75
|
+
subdomain
|
|
76
|
+
});
|
|
77
|
+
return acc;
|
|
78
|
+
}, []).sort((a, b)=>formatter.compare(a.name, b.name));
|
|
79
|
+
const isLoading = isLoadingData || isLoadingPermissions;
|
|
80
|
+
const isProviderWithSubdomain = React.useMemo(()=>{
|
|
81
|
+
if (!providerToEditName) {
|
|
82
|
+
return false;
|
|
83
|
+
}
|
|
84
|
+
const providerToEdit = providers.find((obj)=>obj.name === providerToEditName);
|
|
85
|
+
return !!providerToEdit?.subdomain;
|
|
86
|
+
}, [
|
|
87
|
+
providers,
|
|
88
|
+
providerToEditName
|
|
89
|
+
]);
|
|
90
|
+
const layoutToRender = React.useMemo(()=>{
|
|
91
|
+
if (providerToEditName === 'email') {
|
|
92
|
+
return forms.email;
|
|
93
|
+
}
|
|
94
|
+
if (isProviderWithSubdomain) {
|
|
95
|
+
return forms.providersWithSubdomain;
|
|
96
|
+
}
|
|
97
|
+
return forms.providers;
|
|
98
|
+
}, [
|
|
99
|
+
providerToEditName,
|
|
100
|
+
isProviderWithSubdomain
|
|
101
|
+
]);
|
|
102
|
+
const handleToggleModal = ()=>{
|
|
103
|
+
setIsOpen((prev)=>!prev);
|
|
104
|
+
};
|
|
105
|
+
const handleClickEdit = (provider)=>{
|
|
106
|
+
if (canUpdate) {
|
|
107
|
+
setProviderToEditName(provider.name);
|
|
108
|
+
handleToggleModal();
|
|
109
|
+
}
|
|
110
|
+
};
|
|
111
|
+
const handleSubmit = async (values)=>{
|
|
112
|
+
trackUsage('willEditAuthenticationProvider');
|
|
113
|
+
submitMutation.mutate({
|
|
114
|
+
providers: {
|
|
115
|
+
...data,
|
|
116
|
+
[providerToEditName]: values
|
|
117
|
+
}
|
|
118
|
+
});
|
|
119
|
+
};
|
|
120
|
+
if (isLoading) {
|
|
121
|
+
return /*#__PURE__*/ jsx(Page.Loading, {});
|
|
122
|
+
}
|
|
123
|
+
return /*#__PURE__*/ jsxs(Layouts.Root, {
|
|
124
|
+
children: [
|
|
125
|
+
/*#__PURE__*/ jsx(Page.Title, {
|
|
126
|
+
children: formatMessage({
|
|
127
|
+
id: 'Settings.PageTitle',
|
|
128
|
+
defaultMessage: 'Settings - {name}'
|
|
129
|
+
}, {
|
|
130
|
+
name: formatMessage({
|
|
131
|
+
id: getTrad('HeaderNav.link.providers'),
|
|
132
|
+
defaultMessage: 'Providers'
|
|
133
|
+
})
|
|
134
|
+
})
|
|
135
|
+
}),
|
|
136
|
+
/*#__PURE__*/ jsxs(Page.Main, {
|
|
137
|
+
children: [
|
|
138
|
+
/*#__PURE__*/ jsx(Layouts.Header, {
|
|
139
|
+
title: formatMessage({
|
|
140
|
+
id: getTrad('HeaderNav.link.providers'),
|
|
141
|
+
defaultMessage: 'Providers'
|
|
142
|
+
})
|
|
143
|
+
}),
|
|
144
|
+
/*#__PURE__*/ jsx(Layouts.Content, {
|
|
145
|
+
children: /*#__PURE__*/ jsxs(Table, {
|
|
146
|
+
colCount: 3,
|
|
147
|
+
rowCount: providers.length + 1,
|
|
148
|
+
children: [
|
|
149
|
+
/*#__PURE__*/ jsx(Thead, {
|
|
150
|
+
children: /*#__PURE__*/ jsxs(Tr, {
|
|
151
|
+
children: [
|
|
152
|
+
/*#__PURE__*/ jsx(Th, {
|
|
153
|
+
children: /*#__PURE__*/ jsx(Typography, {
|
|
154
|
+
variant: "sigma",
|
|
155
|
+
textColor: "neutral600",
|
|
156
|
+
children: formatMessage({
|
|
157
|
+
id: 'global.name',
|
|
158
|
+
defaultMessage: 'Name'
|
|
159
|
+
})
|
|
160
|
+
})
|
|
161
|
+
}),
|
|
162
|
+
/*#__PURE__*/ jsx(Th, {
|
|
163
|
+
children: /*#__PURE__*/ jsx(Typography, {
|
|
164
|
+
variant: "sigma",
|
|
165
|
+
textColor: "neutral600",
|
|
166
|
+
children: formatMessage({
|
|
167
|
+
id: getTrad('Providers.status'),
|
|
168
|
+
defaultMessage: 'Status'
|
|
169
|
+
})
|
|
170
|
+
})
|
|
171
|
+
}),
|
|
172
|
+
/*#__PURE__*/ jsx(Th, {
|
|
173
|
+
children: /*#__PURE__*/ jsx(Typography, {
|
|
174
|
+
variant: "sigma",
|
|
175
|
+
children: /*#__PURE__*/ jsx(VisuallyHidden, {
|
|
176
|
+
children: formatMessage({
|
|
177
|
+
id: 'global.settings',
|
|
178
|
+
defaultMessage: 'Settings'
|
|
179
|
+
})
|
|
180
|
+
})
|
|
181
|
+
})
|
|
182
|
+
})
|
|
183
|
+
]
|
|
184
|
+
})
|
|
185
|
+
}),
|
|
186
|
+
/*#__PURE__*/ jsx(Tbody, {
|
|
187
|
+
children: providers.map((provider)=>/*#__PURE__*/ jsxs(Tr, {
|
|
188
|
+
onClick: ()=>canUpdate ? handleClickEdit(provider) : undefined,
|
|
189
|
+
children: [
|
|
190
|
+
/*#__PURE__*/ jsx(Td, {
|
|
191
|
+
width: "45%",
|
|
192
|
+
children: /*#__PURE__*/ jsx(Typography, {
|
|
193
|
+
fontWeight: "semiBold",
|
|
194
|
+
textColor: "neutral800",
|
|
195
|
+
children: provider.name
|
|
196
|
+
})
|
|
197
|
+
}),
|
|
198
|
+
/*#__PURE__*/ jsx(Td, {
|
|
199
|
+
width: "65%",
|
|
200
|
+
children: /*#__PURE__*/ jsx(Typography, {
|
|
201
|
+
textColor: provider.enabled ? 'success600' : 'danger600',
|
|
202
|
+
"data-testid": `enable-${provider.name}`,
|
|
203
|
+
children: provider.enabled ? formatMessage({
|
|
204
|
+
id: 'global.enabled',
|
|
205
|
+
defaultMessage: 'Enabled'
|
|
206
|
+
}) : formatMessage({
|
|
207
|
+
id: 'global.disabled',
|
|
208
|
+
defaultMessage: 'Disabled'
|
|
209
|
+
})
|
|
210
|
+
})
|
|
211
|
+
}),
|
|
212
|
+
/*#__PURE__*/ jsx(Td, {
|
|
213
|
+
onClick: (e)=>e.stopPropagation(),
|
|
214
|
+
children: canUpdate && /*#__PURE__*/ jsx(IconButton, {
|
|
215
|
+
onClick: ()=>handleClickEdit(provider),
|
|
216
|
+
variant: "ghost",
|
|
217
|
+
label: "Edit",
|
|
218
|
+
children: /*#__PURE__*/ jsx(Pencil, {})
|
|
219
|
+
})
|
|
220
|
+
})
|
|
221
|
+
]
|
|
222
|
+
}, provider.name))
|
|
223
|
+
})
|
|
224
|
+
]
|
|
225
|
+
})
|
|
226
|
+
})
|
|
227
|
+
]
|
|
228
|
+
}),
|
|
229
|
+
/*#__PURE__*/ jsx(FormModal, {
|
|
230
|
+
initialData: data[providerToEditName],
|
|
231
|
+
isOpen: isOpen,
|
|
232
|
+
isSubmiting: submitMutation.isLoading,
|
|
233
|
+
layout: layoutToRender,
|
|
234
|
+
headerBreadcrumbs: [
|
|
235
|
+
formatMessage({
|
|
236
|
+
id: getTrad('PopUpForm.header.edit.providers'),
|
|
237
|
+
defaultMessage: 'Edit Provider'
|
|
238
|
+
}),
|
|
239
|
+
upperFirst(providerToEditName)
|
|
240
|
+
],
|
|
241
|
+
onToggle: handleToggleModal,
|
|
242
|
+
onSubmit: handleSubmit,
|
|
243
|
+
providerToEditName: providerToEditName
|
|
244
|
+
})
|
|
245
|
+
]
|
|
246
|
+
});
|
|
247
|
+
};
|
|
248
|
+
const ProtectedProvidersPage = ()=>/*#__PURE__*/ jsx(Page.Protect, {
|
|
249
|
+
permissions: PERMISSIONS.readProviders,
|
|
250
|
+
children: /*#__PURE__*/ jsx(ProvidersPage, {})
|
|
251
|
+
});
|
|
252
|
+
|
|
253
|
+
export { ProvidersPage, ProtectedProvidersPage as default };
|
|
254
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../admin/src/pages/Providers/index.jsx"],"sourcesContent":["import * as React from 'react';\n\nimport { useTracking, Layouts } from '@strapi/admin/strapi-admin';\nimport {\n IconButton,\n Table,\n Tbody,\n Td,\n Th,\n Thead,\n Tr,\n Typography,\n VisuallyHidden,\n useCollator,\n} from '@strapi/design-system';\nimport { Pencil } from '@strapi/icons';\nimport {\n Page,\n useAPIErrorHandler,\n useNotification,\n useFetchClient,\n useRBAC,\n} from '@strapi/strapi/admin';\nimport upperFirst from 'lodash/upperFirst';\nimport { useIntl } from 'react-intl';\nimport { useMutation, useQuery, useQueryClient } from 'react-query';\n\nimport FormModal from '../../components/FormModal';\nimport { PERMISSIONS } from '../../constants';\nimport { getTrad } from '../../utils';\n\nimport forms from './utils/forms';\n\nexport const ProvidersPage = () => {\n const { formatMessage, locale } = useIntl();\n const queryClient = useQueryClient();\n const { trackUsage } = useTracking();\n const [isOpen, setIsOpen] = React.useState(false);\n const [providerToEditName, setProviderToEditName] = React.useState(null);\n const { toggleNotification } = useNotification();\n const { get, put } = useFetchClient();\n const { formatAPIError } = useAPIErrorHandler();\n const formatter = useCollator(locale, {\n sensitivity: 'base',\n });\n\n const {\n isLoading: isLoadingPermissions,\n allowedActions: { canUpdate },\n } = useRBAC({ update: PERMISSIONS.updateProviders });\n\n const { isLoading: isLoadingData, data } = useQuery(\n ['users-permissions', 'get-providers'],\n async () => {\n const { data } = await get('/users-permissions/providers');\n\n return data;\n },\n {\n initialData: {},\n }\n );\n\n const submitMutation = useMutation((body) => put('/users-permissions/providers', body), {\n async onSuccess() {\n await queryClient.invalidateQueries(['users-permissions', 'get-providers']);\n\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: getTrad('notification.success.submit') }),\n });\n\n trackUsage('didEditAuthenticationProvider');\n\n handleToggleModal();\n },\n onError(error) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n },\n refetchActive: false,\n });\n\n const providers = Object.entries(data)\n .reduce((acc, [name, provider]) => {\n const { icon, enabled, subdomain } = provider;\n\n acc.push({\n name,\n icon: icon === 'envelope' ? ['fas', 'envelope'] : ['fab', icon],\n enabled,\n subdomain,\n });\n\n return acc;\n }, [])\n .sort((a, b) => formatter.compare(a.name, b.name));\n\n const isLoading = isLoadingData || isLoadingPermissions;\n\n const isProviderWithSubdomain = React.useMemo(() => {\n if (!providerToEditName) {\n return false;\n }\n\n const providerToEdit = providers.find((obj) => obj.name === providerToEditName);\n\n return !!providerToEdit?.subdomain;\n }, [providers, providerToEditName]);\n\n const layoutToRender = React.useMemo(() => {\n if (providerToEditName === 'email') {\n return forms.email;\n }\n\n if (isProviderWithSubdomain) {\n return forms.providersWithSubdomain;\n }\n\n return forms.providers;\n }, [providerToEditName, isProviderWithSubdomain]);\n\n const handleToggleModal = () => {\n setIsOpen((prev) => !prev);\n };\n\n const handleClickEdit = (provider) => {\n if (canUpdate) {\n setProviderToEditName(provider.name);\n handleToggleModal();\n }\n };\n\n const handleSubmit = async (values) => {\n trackUsage('willEditAuthenticationProvider');\n\n submitMutation.mutate({ providers: { ...data, [providerToEditName]: values } });\n };\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n return (\n <Layouts.Root>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: formatMessage({\n id: getTrad('HeaderNav.link.providers'),\n defaultMessage: 'Providers',\n }),\n }\n )}\n </Page.Title>\n <Page.Main>\n <Layouts.Header\n title={formatMessage({\n id: getTrad('HeaderNav.link.providers'),\n defaultMessage: 'Providers',\n })}\n />\n <Layouts.Content>\n <Table colCount={3} rowCount={providers.length + 1}>\n <Thead>\n <Tr>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({ id: 'global.name', defaultMessage: 'Name' })}\n </Typography>\n </Th>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({ id: getTrad('Providers.status'), defaultMessage: 'Status' })}\n </Typography>\n </Th>\n <Th>\n <Typography variant=\"sigma\">\n <VisuallyHidden>\n {formatMessage({\n id: 'global.settings',\n defaultMessage: 'Settings',\n })}\n </VisuallyHidden>\n </Typography>\n </Th>\n </Tr>\n </Thead>\n <Tbody>\n {providers.map((provider) => (\n <Tr\n key={provider.name}\n onClick={() => (canUpdate ? handleClickEdit(provider) : undefined)}\n >\n <Td width=\"45%\">\n <Typography fontWeight=\"semiBold\" textColor=\"neutral800\">\n {provider.name}\n </Typography>\n </Td>\n <Td width=\"65%\">\n <Typography\n textColor={provider.enabled ? 'success600' : 'danger600'}\n data-testid={`enable-${provider.name}`}\n >\n {provider.enabled\n ? formatMessage({\n id: 'global.enabled',\n defaultMessage: 'Enabled',\n })\n : formatMessage({\n id: 'global.disabled',\n defaultMessage: 'Disabled',\n })}\n </Typography>\n </Td>\n <Td onClick={(e) => e.stopPropagation()}>\n {canUpdate && (\n <IconButton\n onClick={() => handleClickEdit(provider)}\n variant=\"ghost\"\n label=\"Edit\"\n >\n <Pencil />\n </IconButton>\n )}\n </Td>\n </Tr>\n ))}\n </Tbody>\n </Table>\n </Layouts.Content>\n </Page.Main>\n <FormModal\n initialData={data[providerToEditName]}\n isOpen={isOpen}\n isSubmiting={submitMutation.isLoading}\n layout={layoutToRender}\n headerBreadcrumbs={[\n formatMessage({\n id: getTrad('PopUpForm.header.edit.providers'),\n defaultMessage: 'Edit Provider',\n }),\n upperFirst(providerToEditName),\n ]}\n onToggle={handleToggleModal}\n onSubmit={handleSubmit}\n providerToEditName={providerToEditName}\n />\n </Layouts.Root>\n );\n};\n\nconst ProtectedProvidersPage = () => (\n <Page.Protect permissions={PERMISSIONS.readProviders}>\n <ProvidersPage />\n </Page.Protect>\n);\n\nexport default ProtectedProvidersPage;\n"],"names":["ProvidersPage","formatMessage","locale","useIntl","queryClient","useQueryClient","trackUsage","useTracking","isOpen","setIsOpen","React","useState","providerToEditName","setProviderToEditName","toggleNotification","useNotification","get","put","useFetchClient","formatAPIError","useAPIErrorHandler","formatter","useCollator","sensitivity","isLoading","isLoadingPermissions","allowedActions","canUpdate","useRBAC","update","PERMISSIONS","updateProviders","isLoadingData","data","useQuery","initialData","submitMutation","useMutation","body","onSuccess","invalidateQueries","type","message","id","getTrad","handleToggleModal","onError","error","refetchActive","providers","Object","entries","reduce","acc","name","provider","icon","enabled","subdomain","push","sort","a","b","compare","isProviderWithSubdomain","useMemo","providerToEdit","find","obj","layoutToRender","forms","email","providersWithSubdomain","prev","handleClickEdit","handleSubmit","values","mutate","_jsx","Page","Loading","_jsxs","Layouts","Root","Title","defaultMessage","Main","Header","title","Content","Table","colCount","rowCount","length","Thead","Tr","Th","Typography","variant","textColor","VisuallyHidden","Tbody","map","onClick","undefined","Td","width","fontWeight","data-testid","e","stopPropagation","IconButton","label","Pencil","FormModal","isSubmiting","layout","headerBreadcrumbs","upperFirst","onToggle","onSubmit","ProtectedProvidersPage","Protect","permissions","readProviders"],"mappings":"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"}
|