@strapi/plugin-users-permissions 0.0.0-experimental.62ce06180fe9a772eaeb3d43d238b26644f39f7c → 0.0.0-experimental.6340da17068c3bed7fb006e7bcc554c71129e282
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/.eslintrc.cjs +29 -0
- package/LICENSE +18 -3
- package/admin/src/components/BoundRoute/index.jsx +1 -1
- package/admin/src/components/FormModal/Input/index.jsx +1 -1
- package/admin/src/components/FormModal/index.jsx +8 -2
- package/admin/src/components/Permissions/PermissionRow/CheckboxWrapper.jsx +3 -2
- package/admin/src/components/Permissions/PermissionRow/SubCategory.jsx +10 -3
- package/admin/src/components/Policies/index.jsx +4 -1
- package/admin/src/components/UsersPermissions/index.jsx +10 -1
- package/admin/src/index.js +2 -2
- package/admin/src/pages/AdvancedSettings/index.jsx +9 -3
- package/admin/src/pages/EmailTemplates/components/EmailForm.jsx +8 -2
- package/admin/src/pages/EmailTemplates/components/EmailTable.jsx +22 -17
- package/admin/src/pages/Providers/index.jsx +75 -77
- package/admin/src/pages/Providers/utils/forms.js +15 -3
- package/admin/src/pages/Roles/index.jsx +1 -1
- package/admin/src/pages/Roles/pages/CreatePage.jsx +26 -8
- package/admin/src/pages/Roles/pages/EditPage.jsx +13 -7
- package/admin/src/pages/Roles/pages/ListPage/components/TableBody.jsx +9 -8
- package/admin/src/pages/Roles/pages/ListPage/index.jsx +93 -96
- package/admin/src/pluginId.js +2 -2
- package/admin/src/translations/cs.json +42 -5
- package/admin/src/translations/de.json +27 -2
- package/admin/src/translations/en.json +1 -0
- package/admin/src/translations/ja.json +46 -7
- package/admin/src/translations/nl.json +40 -1
- package/admin/src/translations/pl.json +2 -1
- package/admin/src/translations/sk.json +41 -4
- package/admin/src/translations/uk.json +41 -4
- package/admin/src/utils/formatPluginName.js +1 -1
- 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 +104 -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 +127 -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 +114 -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 +163 -0
- package/dist/admin/components/Permissions/PermissionRow/SubCategory.js.map +1 -0
- package/dist/admin/components/Permissions/PermissionRow/SubCategory.mjs +156 -0
- package/dist/admin/components/Permissions/PermissionRow/SubCategory.mjs.map +1 -0
- package/dist/admin/components/Permissions/PermissionRow/index.js +55 -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 +74 -0
- package/dist/admin/components/Policies/index.js.map +1 -0
- package/dist/admin/components/Policies/index.mjs +66 -0
- package/dist/admin/components/Policies/index.mjs.map +1 -0
- package/dist/admin/components/UsersPermissions/index.js +120 -0
- package/dist/admin/components/UsersPermissions/index.js.map +1 -0
- package/dist/admin/components/UsersPermissions/index.mjs +114 -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 +79 -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 +27 -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 +124 -3
- package/dist/admin/index.js.map +1 -1
- package/dist/admin/index.mjs +119 -3
- package/dist/admin/index.mjs.map +1 -1
- package/dist/admin/package.json.js +9 -0
- package/dist/admin/package.json.js.map +1 -0
- package/dist/admin/package.json.mjs +6 -0
- package/dist/admin/package.json.mjs.map +1 -0
- package/dist/admin/pages/AdvancedSettings/index.js +195 -0
- package/dist/admin/pages/AdvancedSettings/index.js.map +1 -0
- package/dist/admin/pages/AdvancedSettings/index.mjs +192 -0
- 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 +41 -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 +176 -0
- package/dist/admin/pages/EmailTemplates/components/EmailForm.js.map +1 -0
- package/dist/admin/pages/EmailTemplates/components/EmailForm.mjs +170 -0
- package/dist/admin/pages/EmailTemplates/components/EmailForm.mjs.map +1 -0
- package/dist/admin/pages/EmailTemplates/components/EmailTable.js +149 -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 +158 -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 +51 -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 +250 -0
- package/dist/admin/pages/Providers/index.mjs.map +1 -0
- package/dist/admin/pages/Providers/utils/forms.js +282 -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 +32 -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 +240 -0
- package/dist/admin/pages/Roles/pages/CreatePage.js.map +1 -0
- package/dist/admin/pages/Roles/pages/CreatePage.mjs +217 -0
- package/dist/admin/pages/Roles/pages/CreatePage.mjs.map +1 -0
- package/dist/admin/pages/Roles/pages/EditPage.js +241 -0
- package/dist/admin/pages/Roles/pages/EditPage.js.map +1 -0
- package/dist/admin/pages/Roles/pages/EditPage.mjs +218 -0
- package/dist/admin/pages/Roles/pages/EditPage.mjs.map +1 -0
- package/dist/admin/pages/Roles/pages/ListPage/components/TableBody.js +129 -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 +234 -0
- package/dist/admin/pages/Roles/pages/ListPage/index.js.map +1 -0
- package/dist/admin/pages/Roles/pages/ListPage/index.mjs +231 -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/translations/ar.json.js +45 -0
- package/dist/admin/translations/ar.json.js.map +1 -0
- package/dist/admin/translations/ar.json.mjs +43 -0
- package/dist/admin/translations/ar.json.mjs.map +1 -0
- package/dist/admin/translations/cs.json.js +88 -0
- package/dist/admin/translations/cs.json.js.map +1 -0
- package/dist/admin/translations/cs.json.mjs +86 -0
- package/dist/admin/translations/cs.json.mjs.map +1 -0
- package/dist/admin/translations/da.json.js +87 -0
- package/dist/admin/translations/da.json.js.map +1 -0
- package/dist/admin/translations/da.json.mjs +85 -0
- package/dist/admin/translations/da.json.mjs.map +1 -0
- package/dist/admin/translations/de.json.js +88 -0
- package/dist/admin/translations/de.json.js.map +1 -0
- package/dist/admin/translations/de.json.mjs +86 -0
- package/dist/admin/translations/de.json.mjs.map +1 -0
- package/dist/admin/translations/en.json.js +88 -0
- package/dist/admin/translations/en.json.js.map +1 -0
- package/dist/admin/translations/en.json.mjs +86 -0
- package/dist/admin/translations/en.json.mjs.map +1 -0
- package/dist/admin/translations/es.json.js +87 -0
- package/dist/admin/translations/es.json.js.map +1 -0
- package/dist/admin/translations/es.json.mjs +85 -0
- package/dist/admin/translations/es.json.mjs.map +1 -0
- package/dist/admin/translations/fr.json.js +51 -0
- package/dist/admin/translations/fr.json.js.map +1 -0
- package/dist/admin/translations/fr.json.mjs +49 -0
- package/dist/admin/translations/fr.json.mjs.map +1 -0
- package/dist/admin/translations/id.json.js +63 -0
- package/dist/admin/translations/id.json.js.map +1 -0
- package/dist/admin/translations/id.json.mjs +61 -0
- package/dist/admin/translations/id.json.mjs.map +1 -0
- package/dist/admin/translations/it.json.js +63 -0
- package/dist/admin/translations/it.json.js.map +1 -0
- package/dist/admin/translations/it.json.mjs +61 -0
- package/dist/admin/translations/it.json.mjs.map +1 -0
- package/dist/admin/translations/ja.json.js +88 -0
- package/dist/admin/translations/ja.json.js.map +1 -0
- package/dist/admin/translations/ja.json.mjs +86 -0
- package/dist/admin/translations/ja.json.mjs.map +1 -0
- package/dist/admin/translations/ko.json.js +87 -0
- package/dist/admin/translations/ko.json.js.map +1 -0
- package/dist/admin/translations/ko.json.mjs +85 -0
- package/dist/admin/translations/ko.json.mjs.map +1 -0
- package/dist/admin/translations/ms.json.js +50 -0
- package/dist/admin/translations/ms.json.js.map +1 -0
- package/dist/admin/translations/ms.json.mjs +48 -0
- package/dist/admin/translations/ms.json.mjs.map +1 -0
- package/dist/admin/translations/nl.json.js +88 -0
- package/dist/admin/translations/nl.json.js.map +1 -0
- package/dist/admin/translations/nl.json.mjs +86 -0
- package/dist/admin/translations/nl.json.mjs.map +1 -0
- package/dist/admin/translations/pl.json.js +88 -0
- package/dist/admin/translations/pl.json.js.map +1 -0
- package/dist/admin/translations/pl.json.mjs +86 -0
- package/dist/admin/translations/pl.json.mjs.map +1 -0
- package/dist/admin/translations/pt-BR.json.js +45 -0
- package/dist/admin/translations/pt-BR.json.js.map +1 -0
- package/dist/admin/translations/pt-BR.json.mjs +43 -0
- package/dist/admin/translations/pt-BR.json.mjs.map +1 -0
- package/dist/admin/translations/pt.json.js +49 -0
- package/dist/admin/translations/pt.json.js.map +1 -0
- package/dist/admin/translations/pt.json.mjs +47 -0
- package/dist/admin/translations/pt.json.mjs.map +1 -0
- package/dist/admin/translations/ru.json.js +87 -0
- package/dist/admin/translations/ru.json.js.map +1 -0
- package/dist/admin/translations/ru.json.mjs +85 -0
- package/dist/admin/translations/ru.json.mjs.map +1 -0
- package/dist/admin/translations/sk.json.js +88 -0
- package/dist/admin/translations/sk.json.js.map +1 -0
- package/dist/admin/translations/sk.json.mjs +86 -0
- package/dist/admin/translations/sk.json.mjs.map +1 -0
- package/dist/admin/translations/sv.json.js +87 -0
- package/dist/admin/translations/sv.json.js.map +1 -0
- package/dist/admin/translations/sv.json.mjs +85 -0
- package/dist/admin/translations/sv.json.mjs.map +1 -0
- package/dist/admin/translations/th.json.js +61 -0
- package/dist/admin/translations/th.json.js.map +1 -0
- package/dist/admin/translations/th.json.mjs +59 -0
- package/dist/admin/translations/th.json.mjs.map +1 -0
- package/dist/admin/translations/tr.json.js +86 -0
- package/dist/admin/translations/tr.json.js.map +1 -0
- package/dist/admin/translations/tr.json.mjs +84 -0
- package/dist/admin/translations/tr.json.mjs.map +1 -0
- package/dist/admin/translations/uk.json.js +87 -0
- package/dist/admin/translations/uk.json.js.map +1 -0
- package/dist/admin/translations/uk.json.mjs +85 -0
- package/dist/admin/translations/uk.json.mjs.map +1 -0
- package/dist/admin/translations/vi.json.js +51 -0
- package/dist/admin/translations/vi.json.js.map +1 -0
- package/dist/admin/translations/vi.json.mjs +49 -0
- package/dist/admin/translations/vi.json.mjs.map +1 -0
- package/dist/admin/translations/zh-Hans.json.js +87 -0
- package/dist/admin/translations/zh-Hans.json.js.map +1 -0
- package/dist/admin/translations/zh-Hans.json.mjs +85 -0
- package/dist/admin/translations/zh-Hans.json.mjs.map +1 -0
- package/dist/admin/translations/zh.json.js +87 -0
- package/dist/admin/translations/zh.json.js.map +1 -0
- package/dist/admin/translations/zh.json.mjs +85 -0
- package/dist/admin/translations/zh.json.mjs.map +1 -0
- package/dist/admin/utils/cleanPermissions.js +28 -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 +33 -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/_virtual/rateLimit.js +6 -0
- package/dist/server/_virtual/rateLimit.js.map +1 -0
- package/dist/server/_virtual/rateLimit.mjs +4 -0
- package/dist/server/_virtual/rateLimit.mjs.map +1 -0
- package/dist/server/bootstrap/index.js +171 -0
- package/dist/server/bootstrap/index.js.map +1 -0
- package/dist/server/bootstrap/index.mjs +164 -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 +70 -0
- package/dist/server/config.js.map +1 -0
- package/dist/server/config.mjs +68 -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 +658 -0
- package/dist/server/controllers/auth.js.map +1 -0
- package/dist/server/controllers/auth.mjs +648 -0
- package/dist/server/controllers/auth.mjs.map +1 -0
- package/dist/server/controllers/content-manager-user.js +173 -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 +41 -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 +96 -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 +112 -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 +206 -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 +135 -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 +77 -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 +65 -0
- package/dist/server/controllers/validation/user.js.map +1 -0
- package/dist/server/controllers/validation/user.mjs +59 -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 +44 -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 +42 -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 +41 -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 +44 -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 +42 -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 +44 -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 +41 -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 +50 -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 +53 -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 +36 -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 +10 -0
- package/dist/server/index.js.map +1 -0
- package/dist/server/index.mjs +8 -0
- package/dist/server/index.mjs.map +1 -0
- 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 +127 -0
- package/dist/server/middlewares/rateLimit.js.map +1 -0
- package/dist/server/middlewares/rateLimit.mjs +118 -0
- package/dist/server/middlewares/rateLimit.mjs.map +1 -0
- package/dist/server/register.js +46 -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 +187 -0
- package/dist/server/routes/content-api/auth.js.map +1 -0
- package/dist/server/routes/content-api/auth.mjs +185 -0
- package/dist/server/routes/content-api/auth.mjs.map +1 -0
- package/dist/server/routes/content-api/index.js +36 -0
- package/dist/server/routes/content-api/index.js.map +1 -0
- package/dist/server/routes/content-api/index.mjs +30 -0
- package/dist/server/routes/content-api/index.mjs.map +1 -0
- package/dist/server/routes/content-api/permissions.js +26 -0
- package/dist/server/routes/content-api/permissions.js.map +1 -0
- package/dist/server/routes/content-api/permissions.mjs +24 -0
- package/dist/server/routes/content-api/permissions.mjs.map +1 -0
- package/dist/server/routes/content-api/role.js +73 -0
- package/dist/server/routes/content-api/role.js.map +1 -0
- package/dist/server/routes/content-api/role.mjs +71 -0
- package/dist/server/routes/content-api/role.mjs.map +1 -0
- package/dist/server/routes/content-api/user.js +136 -0
- package/dist/server/routes/content-api/user.js.map +1 -0
- package/dist/server/routes/content-api/user.mjs +130 -0
- package/dist/server/routes/content-api/user.mjs.map +1 -0
- package/dist/server/routes/content-api/validation.js +249 -0
- package/dist/server/routes/content-api/validation.js.map +1 -0
- package/dist/server/routes/content-api/validation.mjs +242 -0
- package/dist/server/routes/content-api/validation.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/constants.js +19 -0
- package/dist/server/services/constants.js.map +1 -0
- package/dist/server/services/constants.mjs +17 -0
- package/dist/server/services/constants.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 +100 -0
- package/dist/server/services/jwt.js.map +1 -0
- package/dist/server/services/jwt.mjs +93 -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 +563 -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 +120 -0
- package/dist/server/services/providers.js.map +1 -0
- package/dist/server/services/providers.mjs +113 -0
- package/dist/server/services/providers.mjs.map +1 -0
- package/dist/server/services/role.js +191 -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 +214 -0
- package/dist/server/services/user.js.map +1 -0
- package/dist/server/services/user.mjs +204 -0
- package/dist/server/services/user.mjs.map +1 -0
- package/dist/server/services/users-permissions.js +271 -0
- package/dist/server/services/users-permissions.js.map +1 -0
- package/dist/server/services/users-permissions.mjs +262 -0
- package/dist/server/services/users-permissions.mjs.map +1 -0
- package/dist/server/strategies/users-permissions.js +126 -0
- package/dist/server/strategies/users-permissions.js.map +1 -0
- package/dist/server/strategies/users-permissions.mjs +119 -0
- package/dist/server/strategies/users-permissions.mjs.map +1 -0
- package/dist/server/utils/index.js +52 -0
- package/dist/server/utils/index.js.map +1 -0
- package/dist/server/utils/index.mjs +46 -0
- package/dist/server/utils/index.mjs.map +1 -0
- package/dist/server/utils/refresh-cookie-options.js +27 -0
- package/dist/server/utils/refresh-cookie-options.js.map +1 -0
- package/dist/server/utils/refresh-cookie-options.mjs +25 -0
- package/dist/server/utils/refresh-cookie-options.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 +37 -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/lint-staged.config.mjs +1 -0
- package/package.json +34 -28
- package/rollup.config.mjs +19 -0
- package/server/bootstrap/index.js +44 -9
- package/server/bootstrap/users-permissions-actions.js +6 -0
- package/server/config.js +22 -0
- package/server/controllers/auth.js +286 -15
- package/server/controllers/content-manager-user.js +3 -4
- package/server/controllers/role.js +16 -3
- package/server/controllers/validation/auth.js +104 -25
- package/server/controllers/validation/user.js +34 -10
- package/server/graphql/types/index.js +1 -0
- package/server/graphql/types/me.js +1 -0
- package/server/graphql/types/user-input.js +20 -0
- package/server/middlewares/rateLimit.js +91 -15
- package/server/register.js +1 -1
- package/server/routes/content-api/auth.js +132 -71
- package/server/routes/content-api/index.js +11 -4
- package/server/routes/content-api/permissions.js +14 -7
- package/server/routes/content-api/role.js +57 -27
- package/server/routes/content-api/user.js +108 -51
- package/server/routes/content-api/validation.js +280 -0
- package/server/services/constants.js +9 -0
- package/server/services/jwt.js +51 -2
- package/server/services/providers-registry.js +468 -275
- package/server/services/providers.js +6 -1
- package/server/services/user.js +40 -6
- package/server/services/users-permissions.js +8 -2
- package/server/strategies/users-permissions.js +6 -1
- package/server/utils/index.d.ts +6 -1
- package/server/utils/index.js +30 -0
- package/server/utils/refresh-cookie-options.js +20 -0
- package/.eslintignore +0 -1
- package/.eslintrc +0 -17
- package/dist/_chunks/ar-BguGUqwK.js +0 -44
- package/dist/_chunks/ar-BguGUqwK.js.map +0 -1
- package/dist/_chunks/ar-CK8BRRXB.mjs +0 -44
- package/dist/_chunks/ar-CK8BRRXB.mjs.map +0 -1
- package/dist/_chunks/cs-BVigMk0l.mjs +0 -50
- package/dist/_chunks/cs-BVigMk0l.mjs.map +0 -1
- package/dist/_chunks/cs-BW8-K_GY.js +0 -50
- package/dist/_chunks/cs-BW8-K_GY.js.map +0 -1
- package/dist/_chunks/de-BKUdRFI4.mjs +0 -62
- package/dist/_chunks/de-BKUdRFI4.mjs.map +0 -1
- package/dist/_chunks/de-owXpVluI.js +0 -62
- package/dist/_chunks/de-owXpVluI.js.map +0 -1
- package/dist/_chunks/dk-BQiTK50l.mjs +0 -86
- package/dist/_chunks/dk-BQiTK50l.mjs.map +0 -1
- package/dist/_chunks/dk-LXAnbuBk.js +0 -86
- package/dist/_chunks/dk-LXAnbuBk.js.map +0 -1
- package/dist/_chunks/en-DOHtPf-2.mjs +0 -86
- package/dist/_chunks/en-DOHtPf-2.mjs.map +0 -1
- package/dist/_chunks/en-MHo5mcsU.js +0 -86
- package/dist/_chunks/en-MHo5mcsU.js.map +0 -1
- package/dist/_chunks/es-BwLCLXAQ.js +0 -86
- package/dist/_chunks/es-BwLCLXAQ.js.map +0 -1
- package/dist/_chunks/es-DNgOVMjD.mjs +0 -86
- package/dist/_chunks/es-DNgOVMjD.mjs.map +0 -1
- package/dist/_chunks/fr-DkgRugiU.mjs +0 -50
- package/dist/_chunks/fr-DkgRugiU.mjs.map +0 -1
- package/dist/_chunks/fr-DkhpSjjm.js +0 -50
- package/dist/_chunks/fr-DkhpSjjm.js.map +0 -1
- package/dist/_chunks/id-BTemOeTZ.js +0 -62
- package/dist/_chunks/id-BTemOeTZ.js.map +0 -1
- package/dist/_chunks/id-BdEsvnaF.mjs +0 -62
- package/dist/_chunks/id-BdEsvnaF.mjs.map +0 -1
- package/dist/_chunks/index-1yJqFGcz.js +0 -357
- package/dist/_chunks/index-1yJqFGcz.js.map +0 -1
- package/dist/_chunks/index-BB5U9Kud.mjs +0 -335
- package/dist/_chunks/index-BB5U9Kud.mjs.map +0 -1
- package/dist/_chunks/index-C66h32T6.mjs +0 -249
- package/dist/_chunks/index-C66h32T6.mjs.map +0 -1
- package/dist/_chunks/index-CCvjUh0q.js +0 -272
- package/dist/_chunks/index-CCvjUh0q.js.map +0 -1
- package/dist/_chunks/index-CF3O6laL.js +0 -248
- package/dist/_chunks/index-CF3O6laL.js.map +0 -1
- package/dist/_chunks/index-DXzNLZhT.mjs +0 -1127
- package/dist/_chunks/index-DXzNLZhT.mjs.map +0 -1
- package/dist/_chunks/index-D_vMW40H-Cqx0wYbj.js +0 -10594
- package/dist/_chunks/index-D_vMW40H-Cqx0wYbj.js.map +0 -1
- package/dist/_chunks/index-D_vMW40H-dMZbL-qM.mjs +0 -10570
- package/dist/_chunks/index-D_vMW40H-dMZbL-qM.mjs.map +0 -1
- package/dist/_chunks/index-DbO1QgVj.mjs +0 -605
- package/dist/_chunks/index-DbO1QgVj.mjs.map +0 -1
- package/dist/_chunks/index-DhIibAlG.mjs +0 -253
- package/dist/_chunks/index-DhIibAlG.mjs.map +0 -1
- package/dist/_chunks/index-nERSS5kO.js +0 -628
- package/dist/_chunks/index-nERSS5kO.js.map +0 -1
- package/dist/_chunks/index-y80DChTp.js +0 -1157
- package/dist/_chunks/index-y80DChTp.js.map +0 -1
- package/dist/_chunks/it-B-rv0E24.mjs +0 -62
- package/dist/_chunks/it-B-rv0E24.mjs.map +0 -1
- package/dist/_chunks/it-D1rH6V6_.js +0 -62
- package/dist/_chunks/it-D1rH6V6_.js.map +0 -1
- package/dist/_chunks/ja-C8K-VBPD.mjs +0 -48
- package/dist/_chunks/ja-C8K-VBPD.mjs.map +0 -1
- package/dist/_chunks/ja-DqShgTMf.js +0 -48
- package/dist/_chunks/ja-DqShgTMf.js.map +0 -1
- package/dist/_chunks/ko-B9DGEPWH.js +0 -86
- package/dist/_chunks/ko-B9DGEPWH.js.map +0 -1
- package/dist/_chunks/ko-Busb0wIY.mjs +0 -86
- package/dist/_chunks/ko-Busb0wIY.mjs.map +0 -1
- package/dist/_chunks/ms-ByvsQjRt.mjs +0 -49
- package/dist/_chunks/ms-ByvsQjRt.mjs.map +0 -1
- package/dist/_chunks/ms-CPBU3LWf.js +0 -49
- package/dist/_chunks/ms-CPBU3LWf.js.map +0 -1
- package/dist/_chunks/nl-5qO8Rpcy.mjs +0 -48
- package/dist/_chunks/nl-5qO8Rpcy.mjs.map +0 -1
- package/dist/_chunks/nl-CwNB6YoO.js +0 -48
- package/dist/_chunks/nl-CwNB6YoO.js.map +0 -1
- package/dist/_chunks/pl-BdIzifBE.mjs +0 -86
- package/dist/_chunks/pl-BdIzifBE.mjs.map +0 -1
- package/dist/_chunks/pl-Do9UD69f.js +0 -86
- package/dist/_chunks/pl-Do9UD69f.js.map +0 -1
- package/dist/_chunks/pt-BIO24ioG.mjs +0 -48
- package/dist/_chunks/pt-BIO24ioG.mjs.map +0 -1
- package/dist/_chunks/pt-BR-D7dZhxuP.js +0 -44
- package/dist/_chunks/pt-BR-D7dZhxuP.js.map +0 -1
- package/dist/_chunks/pt-BR-f0p23AQZ.mjs +0 -44
- package/dist/_chunks/pt-BR-f0p23AQZ.mjs.map +0 -1
- package/dist/_chunks/pt-fdvyOnUp.js +0 -48
- package/dist/_chunks/pt-fdvyOnUp.js.map +0 -1
- package/dist/_chunks/ru-C94rjPGA.js +0 -86
- package/dist/_chunks/ru-C94rjPGA.js.map +0 -1
- package/dist/_chunks/ru-VWy-IB7K.mjs +0 -86
- package/dist/_chunks/ru-VWy-IB7K.mjs.map +0 -1
- package/dist/_chunks/sk-BABEhykl.js +0 -50
- package/dist/_chunks/sk-BABEhykl.js.map +0 -1
- package/dist/_chunks/sk-B_LIcepm.mjs +0 -50
- package/dist/_chunks/sk-B_LIcepm.mjs.map +0 -1
- package/dist/_chunks/sv-ABLKOokl.mjs +0 -86
- package/dist/_chunks/sv-ABLKOokl.mjs.map +0 -1
- package/dist/_chunks/sv-Be43LhA9.js +0 -86
- package/dist/_chunks/sv-Be43LhA9.js.map +0 -1
- package/dist/_chunks/th-DKyP7ueR.mjs +0 -60
- package/dist/_chunks/th-DKyP7ueR.mjs.map +0 -1
- package/dist/_chunks/th-DgVhVLhL.js +0 -60
- package/dist/_chunks/th-DgVhVLhL.js.map +0 -1
- package/dist/_chunks/tr-B_idhkEs.js +0 -85
- package/dist/_chunks/tr-B_idhkEs.js.map +0 -1
- package/dist/_chunks/tr-qa1Q5UjC.mjs +0 -85
- package/dist/_chunks/tr-qa1Q5UjC.mjs.map +0 -1
- package/dist/_chunks/uk-BmRqbeQc.mjs +0 -49
- package/dist/_chunks/uk-BmRqbeQc.mjs.map +0 -1
- package/dist/_chunks/uk-LHOivnhP.js +0 -49
- package/dist/_chunks/uk-LHOivnhP.js.map +0 -1
- package/dist/_chunks/vi-CdVRdKDw.js +0 -50
- package/dist/_chunks/vi-CdVRdKDw.js.map +0 -1
- package/dist/_chunks/vi-HW-EdMea.mjs +0 -50
- package/dist/_chunks/vi-HW-EdMea.mjs.map +0 -1
- package/dist/_chunks/zh-5hKkVPA4.mjs +0 -86
- package/dist/_chunks/zh-5hKkVPA4.mjs.map +0 -1
- package/dist/_chunks/zh-Cuq8gMnF.js +0 -86
- package/dist/_chunks/zh-Cuq8gMnF.js.map +0 -1
- package/dist/_chunks/zh-Hans-BHilK-yc.mjs +0 -86
- package/dist/_chunks/zh-Hans-BHilK-yc.mjs.map +0 -1
- package/dist/_chunks/zh-Hans-GQDMKtY4.js +0 -86
- package/dist/_chunks/zh-Hans-GQDMKtY4.js.map +0 -1
- package/packup.config.ts +0 -22
- package/server/bootstrap/grant-config.js +0 -140
- package/strapi-server.js +0 -3
- /package/admin/src/translations/{dk.json → da.json} +0 -0
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { useTracking } from '@strapi/admin/strapi-admin';
|
|
4
|
+
import { useNotifyAT } from '@strapi/design-system';
|
|
5
|
+
import { Page, useNotification, useFetchClient, useAPIErrorHandler, useRBAC, Layouts } from '@strapi/strapi/admin';
|
|
6
|
+
import { useIntl } from 'react-intl';
|
|
7
|
+
import { useQueryClient, useQuery, useMutation } from 'react-query';
|
|
8
|
+
import { PERMISSIONS } from '../../constants.mjs';
|
|
9
|
+
import 'lodash/isEmpty';
|
|
10
|
+
import getTrad from '../../utils/getTrad.mjs';
|
|
11
|
+
import EmailForm from './components/EmailForm.mjs';
|
|
12
|
+
import EmailTable from './components/EmailTable.mjs';
|
|
13
|
+
|
|
14
|
+
const ProtectedEmailTemplatesPage = ()=>/*#__PURE__*/ jsx(Page.Protect, {
|
|
15
|
+
permissions: PERMISSIONS.readEmailTemplates,
|
|
16
|
+
children: /*#__PURE__*/ jsx(EmailTemplatesPage, {})
|
|
17
|
+
});
|
|
18
|
+
const EmailTemplatesPage = ()=>{
|
|
19
|
+
const { formatMessage } = useIntl();
|
|
20
|
+
const { trackUsage } = useTracking();
|
|
21
|
+
const { notifyStatus } = useNotifyAT();
|
|
22
|
+
const { toggleNotification } = useNotification();
|
|
23
|
+
const queryClient = useQueryClient();
|
|
24
|
+
const { get, put } = useFetchClient();
|
|
25
|
+
const { formatAPIError } = useAPIErrorHandler();
|
|
26
|
+
const [isModalOpen, setIsModalOpen] = React.useState(false);
|
|
27
|
+
const [templateToEdit, setTemplateToEdit] = React.useState(null);
|
|
28
|
+
const { isLoading: isLoadingForPermissions, allowedActions: { canUpdate } } = useRBAC({
|
|
29
|
+
update: PERMISSIONS.updateEmailTemplates
|
|
30
|
+
});
|
|
31
|
+
const { isLoading: isLoadingData, data } = useQuery([
|
|
32
|
+
'users-permissions',
|
|
33
|
+
'email-templates'
|
|
34
|
+
], async ()=>{
|
|
35
|
+
const { data } = await get('/users-permissions/email-templates');
|
|
36
|
+
return data;
|
|
37
|
+
}, {
|
|
38
|
+
onSuccess () {
|
|
39
|
+
notifyStatus(formatMessage({
|
|
40
|
+
id: getTrad('Email.template.data.loaded'),
|
|
41
|
+
defaultMessage: 'Email templates has been loaded'
|
|
42
|
+
}));
|
|
43
|
+
},
|
|
44
|
+
onError (error) {
|
|
45
|
+
toggleNotification({
|
|
46
|
+
type: 'danger',
|
|
47
|
+
message: formatAPIError(error)
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
const isLoading = isLoadingForPermissions || isLoadingData;
|
|
52
|
+
const handleToggle = ()=>{
|
|
53
|
+
setIsModalOpen((prev)=>!prev);
|
|
54
|
+
};
|
|
55
|
+
const handleEditClick = (template)=>{
|
|
56
|
+
setTemplateToEdit(template);
|
|
57
|
+
handleToggle();
|
|
58
|
+
};
|
|
59
|
+
const submitMutation = useMutation((body)=>put('/users-permissions/email-templates', {
|
|
60
|
+
'email-templates': body
|
|
61
|
+
}), {
|
|
62
|
+
async onSuccess () {
|
|
63
|
+
await queryClient.invalidateQueries([
|
|
64
|
+
'users-permissions',
|
|
65
|
+
'email-templates'
|
|
66
|
+
]);
|
|
67
|
+
toggleNotification({
|
|
68
|
+
type: 'success',
|
|
69
|
+
message: formatMessage({
|
|
70
|
+
id: 'notification.success.saved',
|
|
71
|
+
defaultMessage: 'Saved'
|
|
72
|
+
})
|
|
73
|
+
});
|
|
74
|
+
trackUsage('didEditEmailTemplates');
|
|
75
|
+
handleToggle();
|
|
76
|
+
},
|
|
77
|
+
onError (error) {
|
|
78
|
+
toggleNotification({
|
|
79
|
+
type: 'danger',
|
|
80
|
+
message: formatAPIError(error)
|
|
81
|
+
});
|
|
82
|
+
},
|
|
83
|
+
refetchActive: true
|
|
84
|
+
});
|
|
85
|
+
const handleSubmit = (body)=>{
|
|
86
|
+
trackUsage('willEditEmailTemplates');
|
|
87
|
+
const editedTemplates = {
|
|
88
|
+
...data,
|
|
89
|
+
[templateToEdit]: body
|
|
90
|
+
};
|
|
91
|
+
submitMutation.mutate(editedTemplates);
|
|
92
|
+
};
|
|
93
|
+
if (isLoading) {
|
|
94
|
+
return /*#__PURE__*/ jsx(Page.Loading, {});
|
|
95
|
+
}
|
|
96
|
+
return /*#__PURE__*/ jsxs(Page.Main, {
|
|
97
|
+
"aria-busy": submitMutation.isLoading,
|
|
98
|
+
children: [
|
|
99
|
+
/*#__PURE__*/ jsx(Page.Title, {
|
|
100
|
+
children: formatMessage({
|
|
101
|
+
id: 'Settings.PageTitle',
|
|
102
|
+
defaultMessage: 'Settings - {name}'
|
|
103
|
+
}, {
|
|
104
|
+
name: formatMessage({
|
|
105
|
+
id: getTrad('HeaderNav.link.emailTemplates'),
|
|
106
|
+
defaultMessage: 'Email templates'
|
|
107
|
+
})
|
|
108
|
+
})
|
|
109
|
+
}),
|
|
110
|
+
/*#__PURE__*/ jsx(Layouts.Header, {
|
|
111
|
+
title: formatMessage({
|
|
112
|
+
id: getTrad('HeaderNav.link.emailTemplates'),
|
|
113
|
+
defaultMessage: 'Email templates'
|
|
114
|
+
})
|
|
115
|
+
}),
|
|
116
|
+
/*#__PURE__*/ jsxs(Layouts.Content, {
|
|
117
|
+
children: [
|
|
118
|
+
/*#__PURE__*/ jsx(EmailTable, {
|
|
119
|
+
onEditClick: handleEditClick,
|
|
120
|
+
canUpdate: canUpdate
|
|
121
|
+
}),
|
|
122
|
+
/*#__PURE__*/ jsx(EmailForm, {
|
|
123
|
+
template: data[templateToEdit],
|
|
124
|
+
onToggle: handleToggle,
|
|
125
|
+
open: isModalOpen,
|
|
126
|
+
onSubmit: handleSubmit
|
|
127
|
+
})
|
|
128
|
+
]
|
|
129
|
+
})
|
|
130
|
+
]
|
|
131
|
+
});
|
|
132
|
+
};
|
|
133
|
+
|
|
134
|
+
export { EmailTemplatesPage, ProtectedEmailTemplatesPage };
|
|
135
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../admin/src/pages/EmailTemplates/index.jsx"],"sourcesContent":["import * as React from 'react';\n\nimport { useTracking } from '@strapi/admin/strapi-admin';\nimport { useNotifyAT } from '@strapi/design-system';\nimport {\n Page,\n useAPIErrorHandler,\n useNotification,\n useFetchClient,\n useRBAC,\n Layouts,\n} from '@strapi/strapi/admin';\nimport { useIntl } from 'react-intl';\nimport { useMutation, useQuery, useQueryClient } from 'react-query';\n\nimport { PERMISSIONS } from '../../constants';\nimport { getTrad } from '../../utils';\n\nimport EmailForm from './components/EmailForm';\nimport EmailTable from './components/EmailTable';\n\nconst ProtectedEmailTemplatesPage = () => (\n <Page.Protect permissions={PERMISSIONS.readEmailTemplates}>\n <EmailTemplatesPage />\n </Page.Protect>\n);\nconst EmailTemplatesPage = () => {\n const { formatMessage } = useIntl();\n const { trackUsage } = useTracking();\n const { notifyStatus } = useNotifyAT();\n const { toggleNotification } = useNotification();\n const queryClient = useQueryClient();\n const { get, put } = useFetchClient();\n const { formatAPIError } = useAPIErrorHandler();\n\n const [isModalOpen, setIsModalOpen] = React.useState(false);\n const [templateToEdit, setTemplateToEdit] = React.useState(null);\n\n const {\n isLoading: isLoadingForPermissions,\n allowedActions: { canUpdate },\n } = useRBAC({ update: PERMISSIONS.updateEmailTemplates });\n\n const { isLoading: isLoadingData, data } = useQuery(\n ['users-permissions', 'email-templates'],\n async () => {\n const { data } = await get('/users-permissions/email-templates');\n\n return data;\n },\n {\n onSuccess() {\n notifyStatus(\n formatMessage({\n id: getTrad('Email.template.data.loaded'),\n defaultMessage: 'Email templates has been loaded',\n })\n );\n },\n onError(error) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n },\n }\n );\n\n const isLoading = isLoadingForPermissions || isLoadingData;\n\n const handleToggle = () => {\n setIsModalOpen((prev) => !prev);\n };\n\n const handleEditClick = (template) => {\n setTemplateToEdit(template);\n handleToggle();\n };\n\n const submitMutation = useMutation(\n (body) => put('/users-permissions/email-templates', { 'email-templates': body }),\n {\n async onSuccess() {\n await queryClient.invalidateQueries(['users-permissions', 'email-templates']);\n\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'notification.success.saved', defaultMessage: 'Saved' }),\n });\n\n trackUsage('didEditEmailTemplates');\n\n handleToggle();\n },\n onError(error) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n },\n refetchActive: true,\n }\n );\n\n const handleSubmit = (body) => {\n trackUsage('willEditEmailTemplates');\n\n const editedTemplates = { ...data, [templateToEdit]: body };\n submitMutation.mutate(editedTemplates);\n };\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n return (\n <Page.Main aria-busy={submitMutation.isLoading}>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: formatMessage({\n id: getTrad('HeaderNav.link.emailTemplates'),\n defaultMessage: 'Email templates',\n }),\n }\n )}\n </Page.Title>\n <Layouts.Header\n title={formatMessage({\n id: getTrad('HeaderNav.link.emailTemplates'),\n defaultMessage: 'Email templates',\n })}\n />\n <Layouts.Content>\n <EmailTable onEditClick={handleEditClick} canUpdate={canUpdate} />\n <EmailForm\n template={data[templateToEdit]}\n onToggle={handleToggle}\n open={isModalOpen}\n onSubmit={handleSubmit}\n />\n </Layouts.Content>\n </Page.Main>\n );\n};\n\nexport { ProtectedEmailTemplatesPage, EmailTemplatesPage };\n"],"names":["ProtectedEmailTemplatesPage","_jsx","Page","Protect","permissions","PERMISSIONS","readEmailTemplates","EmailTemplatesPage","formatMessage","useIntl","trackUsage","useTracking","notifyStatus","useNotifyAT","toggleNotification","useNotification","queryClient","useQueryClient","get","put","useFetchClient","formatAPIError","useAPIErrorHandler","isModalOpen","setIsModalOpen","React","useState","templateToEdit","setTemplateToEdit","isLoading","isLoadingForPermissions","allowedActions","canUpdate","useRBAC","update","updateEmailTemplates","isLoadingData","data","useQuery","onSuccess","id","getTrad","defaultMessage","onError","error","type","message","handleToggle","prev","handleEditClick","template","submitMutation","useMutation","body","invalidateQueries","refetchActive","handleSubmit","editedTemplates","mutate","Loading","_jsxs","Main","aria-busy","Title","name","Layouts","Header","title","Content","EmailTable","onEditClick","EmailForm","onToggle","open","onSubmit"],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var admin = require('@strapi/strapi/admin');
|
|
4
|
+
var yup = require('yup');
|
|
5
|
+
|
|
6
|
+
function _interopNamespace(e) {
|
|
7
|
+
if (e && e.__esModule) return e;
|
|
8
|
+
var n = Object.create(null);
|
|
9
|
+
if (e) {
|
|
10
|
+
Object.keys(e).forEach(function (k) {
|
|
11
|
+
if (k !== 'default') {
|
|
12
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
13
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
14
|
+
enumerable: true,
|
|
15
|
+
get: function () { return e[k]; }
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
n.default = e;
|
|
21
|
+
return Object.freeze(n);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
var yup__namespace = /*#__PURE__*/_interopNamespace(yup);
|
|
25
|
+
|
|
26
|
+
const schema = yup__namespace.object().shape({
|
|
27
|
+
options: yup__namespace.object().shape({
|
|
28
|
+
from: yup__namespace.object().shape({
|
|
29
|
+
name: yup__namespace.string().required({
|
|
30
|
+
id: admin.translatedErrors.required.id,
|
|
31
|
+
defaultMessage: 'This field is required'
|
|
32
|
+
}),
|
|
33
|
+
email: yup__namespace.string().email(admin.translatedErrors.email).required({
|
|
34
|
+
id: admin.translatedErrors.required.id,
|
|
35
|
+
defaultMessage: 'This field is required'
|
|
36
|
+
})
|
|
37
|
+
}).required(),
|
|
38
|
+
response_email: yup__namespace.string().email(admin.translatedErrors.email),
|
|
39
|
+
object: yup__namespace.string().required({
|
|
40
|
+
id: admin.translatedErrors.required.id,
|
|
41
|
+
defaultMessage: 'This field is required'
|
|
42
|
+
}),
|
|
43
|
+
message: yup__namespace.string().required({
|
|
44
|
+
id: admin.translatedErrors.required.id,
|
|
45
|
+
defaultMessage: 'This field is required'
|
|
46
|
+
})
|
|
47
|
+
}).required(admin.translatedErrors.required.id)
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
module.exports = schema;
|
|
51
|
+
//# sourceMappingURL=schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.js","sources":["../../../../../admin/src/pages/EmailTemplates/utils/schema.js"],"sourcesContent":["import { translatedErrors } from '@strapi/strapi/admin';\nimport * as yup from 'yup';\n\nconst schema = yup.object().shape({\n options: yup\n .object()\n .shape({\n from: yup\n .object()\n .shape({\n name: yup.string().required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n }),\n email: yup.string().email(translatedErrors.email).required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n }),\n })\n .required(),\n response_email: yup.string().email(translatedErrors.email),\n object: yup.string().required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n }),\n message: yup.string().required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n }),\n })\n .required(translatedErrors.required.id),\n});\n\nexport default schema;\n"],"names":["schema","yup","object","shape","options","from","name","string","required","id","translatedErrors","defaultMessage","email","response_email","message"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAGA,MAAMA,MAAAA,GAASC,cAAAA,CAAIC,MAAM,EAAA,CAAGC,KAAK,CAAC;AAChCC,IAAAA,OAAAA,EAASH,cAAAA,CACNC,MAAM,EAAA,CACNC,KAAK,CAAC;AACLE,QAAAA,IAAAA,EAAMJ,cAAAA,CACHC,MAAM,EAAA,CACNC,KAAK,CAAC;AACLG,YAAAA,IAAAA,EAAML,cAAAA,CAAIM,MAAM,EAAA,CAAGC,QAAQ,CAAC;gBAC1BC,EAAAA,EAAIC,sBAAAA,CAAiBF,QAAQ,CAACC,EAAE;gBAChCE,cAAAA,EAAgB;AAClB,aAAA,CAAA;YACAC,KAAAA,EAAOX,cAAAA,CAAIM,MAAM,EAAA,CAAGK,KAAK,CAACF,sBAAAA,CAAiBE,KAAK,CAAA,CAAEJ,QAAQ,CAAC;gBACzDC,EAAAA,EAAIC,sBAAAA,CAAiBF,QAAQ,CAACC,EAAE;gBAChCE,cAAAA,EAAgB;AAClB,aAAA;AACF,SAAA,CAAA,CACCH,QAAQ,EAAA;AACXK,QAAAA,cAAAA,EAAgBZ,eAAIM,MAAM,EAAA,CAAGK,KAAK,CAACF,uBAAiBE,KAAK,CAAA;AACzDV,QAAAA,MAAAA,EAAQD,cAAAA,CAAIM,MAAM,EAAA,CAAGC,QAAQ,CAAC;YAC5BC,EAAAA,EAAIC,sBAAAA,CAAiBF,QAAQ,CAACC,EAAE;YAChCE,cAAAA,EAAgB;AAClB,SAAA,CAAA;AACAG,QAAAA,OAAAA,EAASb,cAAAA,CAAIM,MAAM,EAAA,CAAGC,QAAQ,CAAC;YAC7BC,EAAAA,EAAIC,sBAAAA,CAAiBF,QAAQ,CAACC,EAAE;YAChCE,cAAAA,EAAgB;AAClB,SAAA;AACF,KAAA,CAAA,CACCH,QAAQ,CAACE,sBAAAA,CAAiBF,QAAQ,CAACC,EAAE;AAC1C,CAAA;;;;"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { translatedErrors } from '@strapi/strapi/admin';
|
|
2
|
+
import * as yup from 'yup';
|
|
3
|
+
|
|
4
|
+
const schema = yup.object().shape({
|
|
5
|
+
options: yup.object().shape({
|
|
6
|
+
from: yup.object().shape({
|
|
7
|
+
name: yup.string().required({
|
|
8
|
+
id: translatedErrors.required.id,
|
|
9
|
+
defaultMessage: 'This field is required'
|
|
10
|
+
}),
|
|
11
|
+
email: yup.string().email(translatedErrors.email).required({
|
|
12
|
+
id: translatedErrors.required.id,
|
|
13
|
+
defaultMessage: 'This field is required'
|
|
14
|
+
})
|
|
15
|
+
}).required(),
|
|
16
|
+
response_email: yup.string().email(translatedErrors.email),
|
|
17
|
+
object: yup.string().required({
|
|
18
|
+
id: translatedErrors.required.id,
|
|
19
|
+
defaultMessage: 'This field is required'
|
|
20
|
+
}),
|
|
21
|
+
message: yup.string().required({
|
|
22
|
+
id: translatedErrors.required.id,
|
|
23
|
+
defaultMessage: 'This field is required'
|
|
24
|
+
})
|
|
25
|
+
}).required(translatedErrors.required.id)
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
export { schema as default };
|
|
29
|
+
//# sourceMappingURL=schema.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.mjs","sources":["../../../../../admin/src/pages/EmailTemplates/utils/schema.js"],"sourcesContent":["import { translatedErrors } from '@strapi/strapi/admin';\nimport * as yup from 'yup';\n\nconst schema = yup.object().shape({\n options: yup\n .object()\n .shape({\n from: yup\n .object()\n .shape({\n name: yup.string().required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n }),\n email: yup.string().email(translatedErrors.email).required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n }),\n })\n .required(),\n response_email: yup.string().email(translatedErrors.email),\n object: yup.string().required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n }),\n message: yup.string().required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n }),\n })\n .required(translatedErrors.required.id),\n});\n\nexport default schema;\n"],"names":["schema","yup","object","shape","options","from","name","string","required","id","translatedErrors","defaultMessage","email","response_email","message"],"mappings":";;;AAGA,MAAMA,MAAAA,GAASC,GAAAA,CAAIC,MAAM,EAAA,CAAGC,KAAK,CAAC;AAChCC,IAAAA,OAAAA,EAASH,GAAAA,CACNC,MAAM,EAAA,CACNC,KAAK,CAAC;AACLE,QAAAA,IAAAA,EAAMJ,GAAAA,CACHC,MAAM,EAAA,CACNC,KAAK,CAAC;AACLG,YAAAA,IAAAA,EAAML,GAAAA,CAAIM,MAAM,EAAA,CAAGC,QAAQ,CAAC;gBAC1BC,EAAAA,EAAIC,gBAAAA,CAAiBF,QAAQ,CAACC,EAAE;gBAChCE,cAAAA,EAAgB;AAClB,aAAA,CAAA;YACAC,KAAAA,EAAOX,GAAAA,CAAIM,MAAM,EAAA,CAAGK,KAAK,CAACF,gBAAAA,CAAiBE,KAAK,CAAA,CAAEJ,QAAQ,CAAC;gBACzDC,EAAAA,EAAIC,gBAAAA,CAAiBF,QAAQ,CAACC,EAAE;gBAChCE,cAAAA,EAAgB;AAClB,aAAA;AACF,SAAA,CAAA,CACCH,QAAQ,EAAA;AACXK,QAAAA,cAAAA,EAAgBZ,IAAIM,MAAM,EAAA,CAAGK,KAAK,CAACF,iBAAiBE,KAAK,CAAA;AACzDV,QAAAA,MAAAA,EAAQD,GAAAA,CAAIM,MAAM,EAAA,CAAGC,QAAQ,CAAC;YAC5BC,EAAAA,EAAIC,gBAAAA,CAAiBF,QAAQ,CAACC,EAAE;YAChCE,cAAAA,EAAgB;AAClB,SAAA,CAAA;AACAG,QAAAA,OAAAA,EAASb,GAAAA,CAAIM,MAAM,EAAA,CAAGC,QAAQ,CAAC;YAC7BC,EAAAA,EAAIC,gBAAAA,CAAiBF,QAAQ,CAACC,EAAE;YAChCE,cAAAA,EAAgB;AAClB,SAAA;AACF,KAAA,CAAA,CACCH,QAAQ,CAACE,gBAAAA,CAAiBF,QAAQ,CAACC,EAAE;AAC1C,CAAA;;;;"}
|
|
@@ -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 _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
21
|
+
|
|
22
|
+
function _interopNamespace(e) {
|
|
23
|
+
if (e && e.__esModule) return e;
|
|
24
|
+
var n = Object.create(null);
|
|
25
|
+
if (e) {
|
|
26
|
+
Object.keys(e).forEach(function (k) {
|
|
27
|
+
if (k !== 'default') {
|
|
28
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
29
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
30
|
+
enumerable: true,
|
|
31
|
+
get: function () { return e[k]; }
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
n.default = e;
|
|
37
|
+
return Object.freeze(n);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
var React__namespace = /*#__PURE__*/_interopNamespace(React);
|
|
41
|
+
var upperFirst__default = /*#__PURE__*/_interopDefault(upperFirst);
|
|
42
|
+
|
|
43
|
+
const ProvidersPage = ()=>{
|
|
44
|
+
const { formatMessage, locale } = reactIntl.useIntl();
|
|
45
|
+
const queryClient = reactQuery.useQueryClient();
|
|
46
|
+
const { trackUsage } = strapiAdmin.useTracking();
|
|
47
|
+
const [isOpen, setIsOpen] = React__namespace.useState(false);
|
|
48
|
+
const [providerToEditName, setProviderToEditName] = React__namespace.useState(null);
|
|
49
|
+
const { toggleNotification } = admin.useNotification();
|
|
50
|
+
const { get, put } = admin.useFetchClient();
|
|
51
|
+
const { formatAPIError } = admin.useAPIErrorHandler();
|
|
52
|
+
const formatter = designSystem.useCollator(locale, {
|
|
53
|
+
sensitivity: 'base'
|
|
54
|
+
});
|
|
55
|
+
const { isLoading: isLoadingPermissions, allowedActions: { canUpdate } } = admin.useRBAC({
|
|
56
|
+
update: constants.PERMISSIONS.updateProviders
|
|
57
|
+
});
|
|
58
|
+
const { isLoading: isLoadingData, data } = reactQuery.useQuery([
|
|
59
|
+
'users-permissions',
|
|
60
|
+
'get-providers'
|
|
61
|
+
], async ()=>{
|
|
62
|
+
const { data } = await get('/users-permissions/providers');
|
|
63
|
+
return data;
|
|
64
|
+
}, {
|
|
65
|
+
initialData: {}
|
|
66
|
+
});
|
|
67
|
+
const submitMutation = reactQuery.useMutation((body)=>put('/users-permissions/providers', body), {
|
|
68
|
+
async onSuccess () {
|
|
69
|
+
await queryClient.invalidateQueries([
|
|
70
|
+
'users-permissions',
|
|
71
|
+
'get-providers'
|
|
72
|
+
]);
|
|
73
|
+
toggleNotification({
|
|
74
|
+
type: 'success',
|
|
75
|
+
message: formatMessage({
|
|
76
|
+
id: getTrad('notification.success.submit')
|
|
77
|
+
})
|
|
78
|
+
});
|
|
79
|
+
trackUsage('didEditAuthenticationProvider');
|
|
80
|
+
handleToggleModal();
|
|
81
|
+
},
|
|
82
|
+
onError (error) {
|
|
83
|
+
toggleNotification({
|
|
84
|
+
type: 'danger',
|
|
85
|
+
message: formatAPIError(error)
|
|
86
|
+
});
|
|
87
|
+
},
|
|
88
|
+
refetchActive: false
|
|
89
|
+
});
|
|
90
|
+
const providers = Object.entries(data).reduce((acc, [name, provider])=>{
|
|
91
|
+
const { icon, enabled, subdomain } = provider;
|
|
92
|
+
acc.push({
|
|
93
|
+
name,
|
|
94
|
+
icon: icon === 'envelope' ? [
|
|
95
|
+
'fas',
|
|
96
|
+
'envelope'
|
|
97
|
+
] : [
|
|
98
|
+
'fab',
|
|
99
|
+
icon
|
|
100
|
+
],
|
|
101
|
+
enabled,
|
|
102
|
+
subdomain
|
|
103
|
+
});
|
|
104
|
+
return acc;
|
|
105
|
+
}, []).sort((a, b)=>formatter.compare(a.name, b.name));
|
|
106
|
+
const isLoading = isLoadingData || isLoadingPermissions;
|
|
107
|
+
const isProviderWithSubdomain = React__namespace.useMemo(()=>{
|
|
108
|
+
if (!providerToEditName) {
|
|
109
|
+
return false;
|
|
110
|
+
}
|
|
111
|
+
const providerToEdit = providers.find((obj)=>obj.name === providerToEditName);
|
|
112
|
+
return !!providerToEdit?.subdomain;
|
|
113
|
+
}, [
|
|
114
|
+
providers,
|
|
115
|
+
providerToEditName
|
|
116
|
+
]);
|
|
117
|
+
const layoutToRender = React__namespace.useMemo(()=>{
|
|
118
|
+
if (providerToEditName === 'email') {
|
|
119
|
+
return forms.email;
|
|
120
|
+
}
|
|
121
|
+
if (isProviderWithSubdomain) {
|
|
122
|
+
return forms.providersWithSubdomain;
|
|
123
|
+
}
|
|
124
|
+
return forms.providers;
|
|
125
|
+
}, [
|
|
126
|
+
providerToEditName,
|
|
127
|
+
isProviderWithSubdomain
|
|
128
|
+
]);
|
|
129
|
+
const handleToggleModal = ()=>{
|
|
130
|
+
setIsOpen((prev)=>!prev);
|
|
131
|
+
};
|
|
132
|
+
const handleClickEdit = (provider)=>{
|
|
133
|
+
if (canUpdate) {
|
|
134
|
+
setProviderToEditName(provider.name);
|
|
135
|
+
handleToggleModal();
|
|
136
|
+
}
|
|
137
|
+
};
|
|
138
|
+
const handleSubmit = async (values)=>{
|
|
139
|
+
trackUsage('willEditAuthenticationProvider');
|
|
140
|
+
submitMutation.mutate({
|
|
141
|
+
providers: {
|
|
142
|
+
...data,
|
|
143
|
+
[providerToEditName]: values
|
|
144
|
+
}
|
|
145
|
+
});
|
|
146
|
+
};
|
|
147
|
+
if (isLoading) {
|
|
148
|
+
return /*#__PURE__*/ jsxRuntime.jsx(admin.Page.Loading, {});
|
|
149
|
+
}
|
|
150
|
+
return /*#__PURE__*/ jsxRuntime.jsxs(admin.Page.Main, {
|
|
151
|
+
children: [
|
|
152
|
+
/*#__PURE__*/ jsxRuntime.jsx(admin.Page.Title, {
|
|
153
|
+
children: formatMessage({
|
|
154
|
+
id: 'Settings.PageTitle',
|
|
155
|
+
defaultMessage: 'Settings - {name}'
|
|
156
|
+
}, {
|
|
157
|
+
name: formatMessage({
|
|
158
|
+
id: getTrad('HeaderNav.link.providers'),
|
|
159
|
+
defaultMessage: 'Providers'
|
|
160
|
+
})
|
|
161
|
+
})
|
|
162
|
+
}),
|
|
163
|
+
/*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.Layouts.Header, {
|
|
164
|
+
title: formatMessage({
|
|
165
|
+
id: getTrad('HeaderNav.link.providers'),
|
|
166
|
+
defaultMessage: 'Providers'
|
|
167
|
+
})
|
|
168
|
+
}),
|
|
169
|
+
/*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.Layouts.Content, {
|
|
170
|
+
children: /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Table, {
|
|
171
|
+
colCount: 3,
|
|
172
|
+
rowCount: providers.length + 1,
|
|
173
|
+
children: [
|
|
174
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Thead, {
|
|
175
|
+
children: /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Tr, {
|
|
176
|
+
children: [
|
|
177
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Th, {
|
|
178
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
179
|
+
variant: "sigma",
|
|
180
|
+
textColor: "neutral600",
|
|
181
|
+
children: formatMessage({
|
|
182
|
+
id: 'global.name',
|
|
183
|
+
defaultMessage: 'Name'
|
|
184
|
+
})
|
|
185
|
+
})
|
|
186
|
+
}),
|
|
187
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Th, {
|
|
188
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
189
|
+
variant: "sigma",
|
|
190
|
+
textColor: "neutral600",
|
|
191
|
+
children: formatMessage({
|
|
192
|
+
id: getTrad('Providers.status'),
|
|
193
|
+
defaultMessage: 'Status'
|
|
194
|
+
})
|
|
195
|
+
})
|
|
196
|
+
}),
|
|
197
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Th, {
|
|
198
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
199
|
+
variant: "sigma",
|
|
200
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.VisuallyHidden, {
|
|
201
|
+
children: formatMessage({
|
|
202
|
+
id: 'global.settings',
|
|
203
|
+
defaultMessage: 'Settings'
|
|
204
|
+
})
|
|
205
|
+
})
|
|
206
|
+
})
|
|
207
|
+
})
|
|
208
|
+
]
|
|
209
|
+
})
|
|
210
|
+
}),
|
|
211
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Tbody, {
|
|
212
|
+
children: providers.map((provider)=>/*#__PURE__*/ jsxRuntime.jsxs(designSystem.Tr, {
|
|
213
|
+
onClick: ()=>canUpdate ? handleClickEdit(provider) : undefined,
|
|
214
|
+
children: [
|
|
215
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Td, {
|
|
216
|
+
width: "45%",
|
|
217
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
218
|
+
fontWeight: "semiBold",
|
|
219
|
+
textColor: "neutral800",
|
|
220
|
+
children: provider.name
|
|
221
|
+
})
|
|
222
|
+
}),
|
|
223
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Td, {
|
|
224
|
+
width: "65%",
|
|
225
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
226
|
+
textColor: provider.enabled ? 'success600' : 'danger600',
|
|
227
|
+
"data-testid": `enable-${provider.name}`,
|
|
228
|
+
children: provider.enabled ? formatMessage({
|
|
229
|
+
id: 'global.enabled',
|
|
230
|
+
defaultMessage: 'Enabled'
|
|
231
|
+
}) : formatMessage({
|
|
232
|
+
id: 'global.disabled',
|
|
233
|
+
defaultMessage: 'Disabled'
|
|
234
|
+
})
|
|
235
|
+
})
|
|
236
|
+
}),
|
|
237
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Td, {
|
|
238
|
+
onClick: (e)=>e.stopPropagation(),
|
|
239
|
+
children: canUpdate && /*#__PURE__*/ jsxRuntime.jsx(designSystem.IconButton, {
|
|
240
|
+
onClick: ()=>handleClickEdit(provider),
|
|
241
|
+
variant: "ghost",
|
|
242
|
+
label: "Edit",
|
|
243
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(icons.Pencil, {})
|
|
244
|
+
})
|
|
245
|
+
})
|
|
246
|
+
]
|
|
247
|
+
}, provider.name))
|
|
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__default.default(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 <Page.Main>\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 <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 <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 </Page.Main>\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","Main","Title","defaultMessage","Layouts","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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"}
|