@strapi/admin 4.15.5-alpha.5 → 4.15.5
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/_chunks/{AuthenticatedApp-eea6970a.js → AuthenticatedApp-61dfdab8.js} +21 -21
- package/dist/_chunks/{AuthenticatedApp-eea6970a.js.map → AuthenticatedApp-61dfdab8.js.map} +1 -1
- package/dist/_chunks/{AuthenticatedApp-1e10546a.mjs → AuthenticatedApp-da1595e9.mjs} +21 -21
- package/dist/_chunks/{AuthenticatedApp-1e10546a.mjs.map → AuthenticatedApp-da1595e9.mjs.map} +1 -1
- package/dist/_chunks/{HomePage-970b8c5a.mjs → HomePage-2690d237.mjs} +4 -4
- package/dist/_chunks/{HomePage-970b8c5a.mjs.map → HomePage-2690d237.mjs.map} +1 -1
- package/dist/_chunks/{HomePage-96c4aa5b.mjs → HomePage-3792b299.mjs} +4 -4
- package/dist/_chunks/{HomePage-96c4aa5b.mjs.map → HomePage-3792b299.mjs.map} +1 -1
- package/dist/_chunks/{HomePage-3ce777a2.js → HomePage-48934b34.js} +4 -4
- package/dist/_chunks/{HomePage-3ce777a2.js.map → HomePage-48934b34.js.map} +1 -1
- package/dist/_chunks/{HomePage-ec67248d.js → HomePage-f3052b59.js} +4 -4
- package/dist/_chunks/{HomePage-ec67248d.js.map → HomePage-f3052b59.js.map} +1 -1
- package/dist/_chunks/{InstalledPluginsPage-7743670e.mjs → InstalledPluginsPage-3bd06321.mjs} +3 -3
- package/dist/_chunks/{InstalledPluginsPage-7743670e.mjs.map → InstalledPluginsPage-3bd06321.mjs.map} +1 -1
- package/dist/_chunks/{InstalledPluginsPage-1e0d2ae1.js → InstalledPluginsPage-da0780c1.js} +3 -3
- package/dist/_chunks/{InstalledPluginsPage-1e0d2ae1.js.map → InstalledPluginsPage-da0780c1.js.map} +1 -1
- package/dist/_chunks/{Login-a6af5d62.mjs → Login-8f68c65a.mjs} +2 -2
- package/dist/_chunks/{Login-a6af5d62.mjs.map → Login-8f68c65a.mjs.map} +1 -1
- package/dist/_chunks/{Login-04fc2757.js → Login-ab4b47ad.js} +2 -2
- package/dist/_chunks/{Login-04fc2757.js.map → Login-ab4b47ad.js.map} +1 -1
- package/dist/_chunks/{MarketplacePage-aeb425cc.js → MarketplacePage-935fca72.js} +3 -3
- package/dist/_chunks/{MarketplacePage-aeb425cc.js.map → MarketplacePage-935fca72.js.map} +1 -1
- package/dist/_chunks/{MarketplacePage-61d66050.mjs → MarketplacePage-95af86bb.mjs} +3 -3
- package/dist/_chunks/{MarketplacePage-61d66050.mjs.map → MarketplacePage-95af86bb.mjs.map} +1 -1
- package/dist/_chunks/{ProfilePage-862401de.mjs → ProfilePage-20de1b54.mjs} +3 -3
- package/dist/_chunks/{ProfilePage-862401de.mjs.map → ProfilePage-20de1b54.mjs.map} +1 -1
- package/dist/_chunks/{ProfilePage-f3915e86.js → ProfilePage-b8b29c4d.js} +3 -3
- package/dist/_chunks/{ProfilePage-f3915e86.js.map → ProfilePage-b8b29c4d.js.map} +1 -1
- package/dist/_chunks/{constants-298d4e08.js → constants-008a1527.js} +5 -5
- package/dist/_chunks/{constants-298d4e08.js.map → constants-008a1527.js.map} +1 -1
- package/dist/_chunks/{constants-94ec0c39.mjs → constants-1d345364.mjs} +5 -5
- package/dist/_chunks/{constants-94ec0c39.mjs.map → constants-1d345364.mjs.map} +1 -1
- package/dist/_chunks/{constants-14dd24d9.mjs → constants-278adc05.mjs} +6 -6
- package/dist/_chunks/{constants-14dd24d9.mjs.map → constants-278adc05.mjs.map} +1 -1
- package/dist/_chunks/{constants-98046873.mjs → constants-29d123f8.mjs} +2 -2
- package/dist/_chunks/{constants-98046873.mjs.map → constants-29d123f8.mjs.map} +1 -1
- package/dist/_chunks/{constants-ca23be5d.js → constants-4be682e5.js} +2 -2
- package/dist/_chunks/{constants-ca23be5d.js.map → constants-4be682e5.js.map} +1 -1
- package/dist/_chunks/{constants-a0698a4a.js → constants-797ada28.js} +6 -6
- package/dist/_chunks/{constants-a0698a4a.js.map → constants-797ada28.js.map} +1 -1
- package/dist/_chunks/{constants-fb780d44.mjs → constants-db792b94.mjs} +3 -3
- package/dist/_chunks/{constants-fb780d44.mjs.map → constants-db792b94.mjs.map} +1 -1
- package/dist/_chunks/{constants-9ee3d5d7.js → constants-ec71917d.js} +3 -3
- package/dist/_chunks/{constants-9ee3d5d7.js.map → constants-ec71917d.js.map} +1 -1
- package/dist/_chunks/{index-4b12f2e9.mjs → index-003c2cab.mjs} +5 -5
- package/dist/_chunks/{index-4b12f2e9.mjs.map → index-003c2cab.mjs.map} +1 -1
- package/dist/_chunks/{index-e12cacd1.js → index-035f8c59.js} +3 -3
- package/dist/_chunks/{index-e12cacd1.js.map → index-035f8c59.js.map} +1 -1
- package/dist/_chunks/{index-5de6defe.mjs → index-039f8e26.mjs} +4 -4
- package/dist/_chunks/{index-5de6defe.mjs.map → index-039f8e26.mjs.map} +1 -1
- package/dist/_chunks/{index-ea2ed45d.js → index-0c9fceff.js} +5 -5
- package/dist/_chunks/{index-ea2ed45d.js.map → index-0c9fceff.js.map} +1 -1
- package/dist/_chunks/{index-2609696f.js → index-0ed05075.js} +4 -4
- package/dist/_chunks/{index-2609696f.js.map → index-0ed05075.js.map} +1 -1
- package/dist/_chunks/{index-bff8cad7.js → index-0fbbca7a.js} +3 -3
- package/dist/_chunks/{index-bff8cad7.js.map → index-0fbbca7a.js.map} +1 -1
- package/dist/_chunks/{index-ebd41ad5.mjs → index-154693de.mjs} +3 -3
- package/dist/_chunks/{index-ebd41ad5.mjs.map → index-154693de.mjs.map} +1 -1
- package/dist/_chunks/{index-a81ae30e.mjs → index-1932eedf.mjs} +3 -3
- package/dist/_chunks/{index-a81ae30e.mjs.map → index-1932eedf.mjs.map} +1 -1
- package/dist/_chunks/{index-92f311b0.mjs → index-1ebd9d8c.mjs} +5 -5
- package/dist/_chunks/{index-92f311b0.mjs.map → index-1ebd9d8c.mjs.map} +1 -1
- package/dist/_chunks/{index-51aa0dc6.js → index-1f4afa21.js} +3 -3
- package/dist/_chunks/{index-51aa0dc6.js.map → index-1f4afa21.js.map} +1 -1
- package/dist/_chunks/{index-ffafceee.js → index-25975989.js} +4 -4
- package/dist/_chunks/{index-ffafceee.js.map → index-25975989.js.map} +1 -1
- package/dist/_chunks/{index-75d51788.js → index-2b22b1a0.js} +5 -5
- package/dist/_chunks/{index-75d51788.js.map → index-2b22b1a0.js.map} +1 -1
- package/dist/_chunks/{index-5d3982dd.js → index-345c0ae9.js} +6 -6
- package/dist/_chunks/{index-5d3982dd.js.map → index-345c0ae9.js.map} +1 -1
- package/dist/_chunks/{index-5a15fb17.mjs → index-3c693658.mjs} +3 -3
- package/dist/_chunks/{index-5a15fb17.mjs.map → index-3c693658.mjs.map} +1 -1
- package/dist/_chunks/{index-372f70ce.mjs → index-40495ca1.mjs} +2 -2
- package/dist/_chunks/{index-372f70ce.mjs.map → index-40495ca1.mjs.map} +1 -1
- package/dist/_chunks/{index-6c56f4c2.mjs → index-40d047a8.mjs} +3 -3
- package/dist/_chunks/{index-6c56f4c2.mjs.map → index-40d047a8.mjs.map} +1 -1
- package/dist/_chunks/{index-9a307bbd.mjs → index-46138ec7.mjs} +4 -4
- package/dist/_chunks/{index-9a307bbd.mjs.map → index-46138ec7.mjs.map} +1 -1
- package/dist/_chunks/{index-b51842fb.mjs → index-46c3ee85.mjs} +3 -3
- package/dist/_chunks/{index-b51842fb.mjs.map → index-46c3ee85.mjs.map} +1 -1
- package/dist/_chunks/{index-c8abc905.mjs → index-4f557234.mjs} +3 -3
- package/dist/_chunks/{index-c8abc905.mjs.map → index-4f557234.mjs.map} +1 -1
- package/dist/_chunks/{index-6e082128.mjs → index-51986071.mjs} +3 -3
- package/dist/_chunks/{index-6e082128.mjs.map → index-51986071.mjs.map} +1 -1
- package/dist/_chunks/{index-8c004453.js → index-557e0c47.js} +2 -2
- package/dist/_chunks/{index-8c004453.js.map → index-557e0c47.js.map} +1 -1
- package/dist/_chunks/{index-04dc85bf.mjs → index-56b499fb.mjs} +5 -5
- package/dist/_chunks/{index-04dc85bf.mjs.map → index-56b499fb.mjs.map} +1 -1
- package/dist/_chunks/{index-f6e45499.js → index-5a5b0567.js} +20 -20
- package/dist/_chunks/{index-f6e45499.js.map → index-5a5b0567.js.map} +1 -1
- package/dist/_chunks/{index-27d910b7.mjs → index-6353193a.mjs} +5 -5
- package/dist/_chunks/{index-27d910b7.mjs.map → index-6353193a.mjs.map} +1 -1
- package/dist/_chunks/{index-527a80ef.mjs → index-6797e259.mjs} +3 -3
- package/dist/_chunks/{index-527a80ef.mjs.map → index-6797e259.mjs.map} +1 -1
- package/dist/_chunks/{index-435b6463.js → index-69d47db4.js} +3 -3
- package/dist/_chunks/{index-435b6463.js.map → index-69d47db4.js.map} +1 -1
- package/dist/_chunks/{index-b1141822.js → index-72494b79.js} +3 -3
- package/dist/_chunks/{index-b1141822.js.map → index-72494b79.js.map} +1 -1
- package/dist/_chunks/{index-008328ba.js → index-787a0db6.js} +5 -5
- package/dist/_chunks/{index-008328ba.js.map → index-787a0db6.js.map} +1 -1
- package/dist/_chunks/{index-cf35f9e7.js → index-7bfab5f5.js} +4 -4
- package/dist/_chunks/{index-cf35f9e7.js.map → index-7bfab5f5.js.map} +1 -1
- package/dist/_chunks/{index-7e1f48fc.mjs → index-81509193.mjs} +8 -8
- package/dist/_chunks/{index-7e1f48fc.mjs.map → index-81509193.mjs.map} +1 -1
- package/dist/_chunks/{index-e17a9e33.mjs → index-834fad5c.mjs} +5 -5
- package/dist/_chunks/{index-e17a9e33.mjs.map → index-834fad5c.mjs.map} +1 -1
- package/dist/_chunks/{index-8600b6e5.mjs → index-8e034257.mjs} +3 -3
- package/dist/_chunks/{index-8600b6e5.mjs.map → index-8e034257.mjs.map} +1 -1
- package/dist/_chunks/{index-15fddb85.mjs → index-9118a940.mjs} +4 -4
- package/dist/_chunks/{index-15fddb85.mjs.map → index-9118a940.mjs.map} +1 -1
- package/dist/_chunks/{index-3266a985.js → index-924a1288.js} +3 -3
- package/dist/_chunks/{index-3266a985.js.map → index-924a1288.js.map} +1 -1
- package/dist/_chunks/{index-a299ce97.js → index-9304d6de.js} +8 -8
- package/dist/_chunks/{index-a299ce97.js.map → index-9304d6de.js.map} +1 -1
- package/dist/_chunks/{index-7b5707cd.js → index-97a59f73.js} +4 -4
- package/dist/_chunks/{index-7b5707cd.js.map → index-97a59f73.js.map} +1 -1
- package/dist/_chunks/{index-b4277486.js → index-9c26fffe.js} +4 -4
- package/dist/_chunks/{index-b4277486.js.map → index-9c26fffe.js.map} +1 -1
- package/dist/_chunks/{index-f3c7f6a9.js → index-9f2d5dc8.js} +3 -3
- package/dist/_chunks/{index-f3c7f6a9.js.map → index-9f2d5dc8.js.map} +1 -1
- package/dist/_chunks/{index-92a2ece4.js → index-9f30a92e.js} +4 -4
- package/dist/_chunks/{index-92a2ece4.js.map → index-9f30a92e.js.map} +1 -1
- package/dist/_chunks/{index-aa35df09.mjs → index-a6f1ccf6.mjs} +6 -6
- package/dist/_chunks/{index-aa35df09.mjs.map → index-a6f1ccf6.mjs.map} +1 -1
- package/dist/_chunks/{index-e7e7f75d.mjs → index-a9625818.mjs} +5 -5
- package/dist/_chunks/{index-e7e7f75d.mjs.map → index-a9625818.mjs.map} +1 -1
- package/dist/_chunks/{index-401d5daa.js → index-b2d4d126.js} +5 -5
- package/dist/_chunks/{index-401d5daa.js.map → index-b2d4d126.js.map} +1 -1
- package/dist/_chunks/{index-c5ed938c.mjs → index-b42866c5.mjs} +2 -2
- package/dist/_chunks/{index-c5ed938c.mjs.map → index-b42866c5.mjs.map} +1 -1
- package/dist/_chunks/{index-83133812.mjs → index-b6ee936b.mjs} +4 -4
- package/dist/_chunks/{index-83133812.mjs.map → index-b6ee936b.mjs.map} +1 -1
- package/dist/_chunks/{index-392a9490.js → index-bac648de.js} +5 -5
- package/dist/_chunks/{index-392a9490.js.map → index-bac648de.js.map} +1 -1
- package/dist/_chunks/{index-56a6576d.js → index-bc709e72.js} +3 -3
- package/dist/_chunks/{index-56a6576d.js.map → index-bc709e72.js.map} +1 -1
- package/dist/_chunks/{index-0a328691.mjs → index-bde05e9e.mjs} +3 -3
- package/dist/_chunks/{index-0a328691.mjs.map → index-bde05e9e.mjs.map} +1 -1
- package/dist/_chunks/{index-a3bc2b4e.mjs → index-be3e5f69.mjs} +2 -2
- package/dist/_chunks/{index-a3bc2b4e.mjs.map → index-be3e5f69.mjs.map} +1 -1
- package/dist/_chunks/{index-7b53073e.js → index-bfb581a2.js} +3 -3
- package/dist/_chunks/{index-7b53073e.js.map → index-bfb581a2.js.map} +1 -1
- package/dist/_chunks/{index-470c6923.js → index-cbf9952d.js} +2 -2
- package/dist/_chunks/{index-470c6923.js.map → index-cbf9952d.js.map} +1 -1
- package/dist/_chunks/{index-80b911e7.mjs → index-cc38783c.mjs} +3 -3
- package/dist/_chunks/{index-80b911e7.mjs.map → index-cc38783c.mjs.map} +1 -1
- package/dist/_chunks/{index-6b269800.mjs → index-d2b3c398.mjs} +3 -3
- package/dist/_chunks/{index-6b269800.mjs.map → index-d2b3c398.mjs.map} +1 -1
- package/dist/_chunks/{index-1e7b6d32.js → index-d5f569ab.js} +5 -5
- package/dist/_chunks/{index-1e7b6d32.js.map → index-d5f569ab.js.map} +1 -1
- package/dist/_chunks/{index-e628615b.mjs → index-d9882c45.mjs} +4 -4
- package/dist/_chunks/{index-e628615b.mjs.map → index-d9882c45.mjs.map} +1 -1
- package/dist/_chunks/{index-65d8637e.js → index-e0e235a0.js} +3 -3
- package/dist/_chunks/{index-65d8637e.js.map → index-e0e235a0.js.map} +1 -1
- package/dist/_chunks/{index-da0be0d5.js → index-e34335f1.js} +3 -3
- package/dist/_chunks/{index-da0be0d5.js.map → index-e34335f1.js.map} +1 -1
- package/dist/_chunks/{index-9afe0455.js → index-eaff38ba.js} +3 -3
- package/dist/_chunks/{index-9afe0455.js.map → index-eaff38ba.js.map} +1 -1
- package/dist/_chunks/{index-1930d662.js → index-eebad65d.js} +3 -3
- package/dist/_chunks/{index-1930d662.js.map → index-eebad65d.js.map} +1 -1
- package/dist/_chunks/{index-c66a60bb.mjs → index-f3e7f8cc.mjs} +4 -4
- package/dist/_chunks/{index-c66a60bb.mjs.map → index-f3e7f8cc.mjs.map} +1 -1
- package/dist/_chunks/{index-c145ae06.mjs → index-f52ae628.mjs} +3 -3
- package/dist/_chunks/{index-c145ae06.mjs.map → index-f52ae628.mjs.map} +1 -1
- package/dist/_chunks/{index-eafb6c8c.mjs → index-f55a69e7.mjs} +4 -4
- package/dist/_chunks/{index-eafb6c8c.mjs.map → index-f55a69e7.mjs.map} +1 -1
- package/dist/_chunks/{index-7d60e3dc.mjs → index-f5b276a8.mjs} +20 -20
- package/dist/_chunks/{index-7d60e3dc.mjs.map → index-f5b276a8.mjs.map} +1 -1
- package/dist/_chunks/{index-b5ff3031.js → index-f7cf652c.js} +4 -4
- package/dist/_chunks/{index-b5ff3031.js.map → index-f7cf652c.js.map} +1 -1
- package/dist/_chunks/{index-9d9b9769.js → index-f7dbd21b.js} +2 -2
- package/dist/_chunks/{index-9d9b9769.js.map → index-f7dbd21b.js.map} +1 -1
- package/dist/_chunks/{schema-755747ac.js → schema-15e33d1c.js} +2 -2
- package/dist/_chunks/{schema-755747ac.js.map → schema-15e33d1c.js.map} +1 -1
- package/dist/_chunks/{schema-666ecce4.mjs → schema-a7f695ae.mjs} +2 -2
- package/dist/_chunks/{schema-666ecce4.mjs.map → schema-a7f695ae.mjs.map} +1 -1
- package/dist/_chunks/{validateWorkflow-e77a9ab3.mjs → validateWorkflow-2f84e76e.mjs} +3 -3
- package/dist/_chunks/{validateWorkflow-e77a9ab3.mjs.map → validateWorkflow-2f84e76e.mjs.map} +1 -1
- package/dist/_chunks/{validateWorkflow-ae45d3d4.js → validateWorkflow-6b5dffaf.js} +3 -3
- package/dist/_chunks/{validateWorkflow-ae45d3d4.js.map → validateWorkflow-6b5dffaf.js.map} +1 -1
- package/dist/admin/index.js +1 -1
- package/dist/admin/index.mjs +1 -1
- package/package.json +12 -12
|
@@ -3,13 +3,13 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
|
3
3
|
const jsxRuntime = require("react/jsx-runtime");
|
|
4
4
|
const helperPlugin = require("@strapi/helper-plugin");
|
|
5
5
|
const reactRedux = require("react-redux");
|
|
6
|
-
const AuthenticatedApp = require("./AuthenticatedApp-
|
|
7
|
-
const index = require("./index-
|
|
6
|
+
const AuthenticatedApp = require("./AuthenticatedApp-61dfdab8.js");
|
|
7
|
+
const index = require("./index-924a1288.js");
|
|
8
8
|
require("react");
|
|
9
9
|
require("react-query");
|
|
10
10
|
require("semver/functions/lt");
|
|
11
11
|
require("semver/functions/valid");
|
|
12
|
-
require("./index-
|
|
12
|
+
require("./index-0ed05075.js");
|
|
13
13
|
require("react-dom/client");
|
|
14
14
|
require("@strapi/design-system");
|
|
15
15
|
require("invariant");
|
|
@@ -44,4 +44,4 @@ const ProtectedEditView = () => {
|
|
|
44
44
|
return /* @__PURE__ */ jsxRuntime.jsx(helperPlugin.CheckPagePermissions, { permissions: permissions.settings.webhooks.update, children: /* @__PURE__ */ jsxRuntime.jsx(index.EditView, {}) });
|
|
45
45
|
};
|
|
46
46
|
exports.default = ProtectedEditView;
|
|
47
|
-
//# sourceMappingURL=index-
|
|
47
|
+
//# sourceMappingURL=index-97a59f73.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-97a59f73.js","sources":["../../admin/src/pages/SettingsPage/pages/Webhooks/ProtectedEditView/index.js"],"sourcesContent":["import React from 'react';\n\nimport { CheckPagePermissions } from '@strapi/helper-plugin';\nimport { useSelector } from 'react-redux';\n\nimport { selectAdminPermissions } from '../../../../../selectors';\nimport EditView from '../EditView';\n\nconst ProtectedEditView = () => {\n const permissions = useSelector(selectAdminPermissions);\n\n return (\n <CheckPagePermissions permissions={permissions.settings.webhooks.update}>\n <EditView />\n </CheckPagePermissions>\n );\n};\n\nexport default ProtectedEditView;\n"],"names":["useSelector","selectAdminPermissions","jsx","CheckPagePermissions","EditView"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,MAAM,oBAAoB,MAAM;AACxB,QAAA,cAAcA,uBAAYC,iBAAAA,sBAAsB;AAGpD,SAAAC,2BAAA,IAACC,qCAAqB,aAAa,YAAY,SAAS,SAAS,QAC/D,UAACD,2BAAA,IAAAE,MAAA,UAAA,CAAS,CAAA,EACZ,CAAA;AAEJ;;"}
|
|
@@ -3,13 +3,13 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
|
3
3
|
const jsxRuntime = require("react/jsx-runtime");
|
|
4
4
|
const helperPlugin = require("@strapi/helper-plugin");
|
|
5
5
|
const reactRedux = require("react-redux");
|
|
6
|
-
const AuthenticatedApp = require("./AuthenticatedApp-
|
|
7
|
-
const index = require("./index-
|
|
6
|
+
const AuthenticatedApp = require("./AuthenticatedApp-61dfdab8.js");
|
|
7
|
+
const index = require("./index-924a1288.js");
|
|
8
8
|
require("react");
|
|
9
9
|
require("react-query");
|
|
10
10
|
require("semver/functions/lt");
|
|
11
11
|
require("semver/functions/valid");
|
|
12
|
-
require("./index-
|
|
12
|
+
require("./index-0ed05075.js");
|
|
13
13
|
require("react-dom/client");
|
|
14
14
|
require("@strapi/design-system");
|
|
15
15
|
require("invariant");
|
|
@@ -44,4 +44,4 @@ const ProtectedCreateView = () => {
|
|
|
44
44
|
return /* @__PURE__ */ jsxRuntime.jsx(helperPlugin.CheckPagePermissions, { permissions: permissions.settings.webhooks.create, children: /* @__PURE__ */ jsxRuntime.jsx(index.EditView, {}) });
|
|
45
45
|
};
|
|
46
46
|
exports.default = ProtectedCreateView;
|
|
47
|
-
//# sourceMappingURL=index-
|
|
47
|
+
//# sourceMappingURL=index-9c26fffe.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-9c26fffe.js","sources":["../../admin/src/pages/SettingsPage/pages/Webhooks/ProtectedCreateView/index.js"],"sourcesContent":["import React from 'react';\n\nimport { CheckPagePermissions } from '@strapi/helper-plugin';\nimport { useSelector } from 'react-redux';\n\nimport { selectAdminPermissions } from '../../../../../selectors';\nimport EditView from '../EditView';\n\nconst ProtectedCreateView = () => {\n const permissions = useSelector(selectAdminPermissions);\n\n return (\n <CheckPagePermissions permissions={permissions.settings.webhooks.create}>\n <EditView />\n </CheckPagePermissions>\n );\n};\n\nexport default ProtectedCreateView;\n"],"names":["useSelector","selectAdminPermissions","jsx","CheckPagePermissions","EditView"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,MAAM,sBAAsB,MAAM;AAC1B,QAAA,cAAcA,uBAAYC,iBAAAA,sBAAsB;AAGpD,SAAAC,2BAAA,IAACC,qCAAqB,aAAa,YAAY,SAAS,SAAS,QAC/D,UAACD,2BAAA,IAAAE,MAAA,UAAA,CAAS,CAAA,EACZ,CAAA;AAEJ;;"}
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
|
3
3
|
const jsxRuntime = require("react/jsx-runtime");
|
|
4
4
|
const helperPlugin = require("@strapi/helper-plugin");
|
|
5
5
|
const reactRedux = require("react-redux");
|
|
6
|
-
const AuthenticatedApp = require("./AuthenticatedApp-
|
|
6
|
+
const AuthenticatedApp = require("./AuthenticatedApp-61dfdab8.js");
|
|
7
7
|
const React = require("react");
|
|
8
8
|
const designSystem = require("@strapi/design-system");
|
|
9
9
|
const Icons = require("@strapi/icons");
|
|
@@ -12,7 +12,7 @@ const reactQuery = require("react-query");
|
|
|
12
12
|
const reactRouterDom = require("react-router-dom");
|
|
13
13
|
require("semver/functions/lt");
|
|
14
14
|
require("semver/functions/valid");
|
|
15
|
-
require("./index-
|
|
15
|
+
require("./index-0ed05075.js");
|
|
16
16
|
require("react-dom/client");
|
|
17
17
|
require("invariant");
|
|
18
18
|
require("lodash/isFunction");
|
|
@@ -335,4 +335,4 @@ const ProtectedListView = () => {
|
|
|
335
335
|
return /* @__PURE__ */ jsxRuntime.jsx(helperPlugin.CheckPagePermissions, { permissions: permissions.settings.webhooks.main, children: /* @__PURE__ */ jsxRuntime.jsx(ListView, {}) });
|
|
336
336
|
};
|
|
337
337
|
exports.default = ProtectedListView;
|
|
338
|
-
//# sourceMappingURL=index-
|
|
338
|
+
//# sourceMappingURL=index-9f2d5dc8.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-f3c7f6a9.js","sources":["../../admin/src/pages/SettingsPage/pages/Webhooks/ListView/index.js","../../admin/src/pages/SettingsPage/pages/Webhooks/ProtectedListView/index.js"],"sourcesContent":["/* eslint-disable no-nested-ternary */\nimport React, { useEffect, useState } from 'react';\n\nimport {\n ActionLayout,\n BaseCheckbox,\n Box,\n Button,\n ContentLayout,\n EmptyStateLayout,\n Flex,\n HeaderLayout,\n IconButton,\n Layout,\n Main,\n Switch,\n Table,\n Tbody,\n Td,\n TFooter,\n Th,\n Thead,\n Tr,\n Typography,\n useNotifyAT,\n VisuallyHidden,\n} from '@strapi/design-system';\nimport {\n ConfirmDialog,\n LinkButton,\n LoadingIndicatorPage,\n onRowClick,\n SettingsPageTitle,\n stopPropagation,\n useAPIErrorHandler,\n useFetchClient,\n useFocusWhenNavigate,\n useNotification,\n useRBAC,\n} from '@strapi/helper-plugin';\nimport { EmptyDocuments, Pencil, Plus, Trash } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { useMutation, useQuery } from 'react-query';\nimport { useSelector } from 'react-redux';\nimport { useHistory, useLocation } from 'react-router-dom';\n\nimport { selectAdminPermissions } from '../../../../../selectors';\n\nconst ListView = () => {\n const [showModal, setShowModal] = useState(false);\n const [webhooksToDelete, setWebhooksToDelete] = useState([]);\n const permissions = useSelector(selectAdminPermissions);\n const { formatMessage } = useIntl();\n const { formatAPIError } = useAPIErrorHandler();\n const toggleNotification = useNotification();\n useFocusWhenNavigate();\n const { push } = useHistory();\n const { pathname } = useLocation();\n\n const {\n isLoading: isRBACLoading,\n allowedActions: { canCreate, canUpdate, canDelete },\n } = useRBAC(permissions.settings.webhooks);\n const { get, post, put } = useFetchClient();\n const { notifyStatus } = useNotifyAT();\n\n const QUERY_KEY = 'webhooks';\n const {\n isLoading: isWebhooksLoading,\n data: webhooks,\n error: webhooksError,\n refetch: refetchWebhooks,\n } = useQuery(QUERY_KEY, async () => {\n const {\n data: { data },\n } = await get('/admin/webhooks');\n\n return data;\n });\n\n useEffect(() => {\n if (webhooksError) {\n toggleNotification({\n type: 'warning',\n message: formatAPIError(webhooksError),\n });\n\n return;\n }\n if (webhooks) {\n notifyStatus(\n formatMessage({\n id: 'Settings.webhooks.list.loading.success',\n defaultMessage: 'Webhooks have been loaded',\n })\n );\n }\n }, [webhooks, webhooksError, toggleNotification, formatMessage, notifyStatus, formatAPIError]);\n\n const deleteMutation = useMutation(\n async () => {\n await post('/admin/webhooks/batch-delete', {\n ids: webhooksToDelete,\n });\n },\n {\n onError(error) {\n toggleNotification({\n type: 'warning',\n message: formatAPIError(error),\n });\n setShowModal(false);\n },\n onSuccess() {\n setWebhooksToDelete([]);\n setShowModal(false);\n refetchWebhooks();\n },\n }\n );\n\n const enabledMutation = useMutation(\n async ({ isEnabled, id }) => {\n const { id: _, ...webhook } = webhooks.find((webhook) => webhook.id === id) ?? {};\n const body = {\n ...webhook,\n isEnabled,\n };\n\n await put(`/admin/webhooks/${id}`, body);\n },\n {\n onError(error) {\n toggleNotification({\n type: 'warning',\n message: formatAPIError(error),\n });\n },\n onSuccess() {\n refetchWebhooks();\n },\n }\n );\n\n const confirmDelete = () => deleteMutation.mutate();\n\n const selectAllCheckbox = (selected) =>\n selected ? setWebhooksToDelete(webhooks.map((webhook) => webhook.id)) : setWebhooksToDelete([]);\n\n const selectOneCheckbox = (selected, id) =>\n selected\n ? setWebhooksToDelete((prev) => [...prev, id])\n : setWebhooksToDelete((prev) => prev.filter((webhookId) => webhookId !== id));\n\n const goTo = (to) => push(`${pathname}/${to}`);\n\n const isLoading = isRBACLoading || isWebhooksLoading;\n const numberOfWebhooks = webhooks?.length ?? 0;\n const webhooksToDeleteLength = webhooksToDelete.length;\n\n return (\n <Layout>\n <SettingsPageTitle name=\"Webhooks\" />\n <Main aria-busy={isLoading}>\n <HeaderLayout\n title={formatMessage({ id: 'Settings.webhooks.title', defaultMessage: 'Webhooks' })}\n subtitle={formatMessage({\n id: 'Settings.webhooks.list.description',\n defaultMessage: 'Get POST changes notifications',\n })}\n primaryAction={\n canCreate &&\n !isLoading && (\n <LinkButton startIcon={<Plus />} variant=\"default\" to={`${pathname}/create`} size=\"S\">\n {formatMessage({\n id: 'Settings.webhooks.list.button.add',\n defaultMessage: 'Create new webhook',\n })}\n </LinkButton>\n )\n }\n />\n {webhooksToDeleteLength > 0 && canDelete && (\n <ActionLayout\n startActions={\n <>\n <Typography variant=\"epsilon\" textColor=\"neutral600\">\n {formatMessage(\n {\n id: 'Settings.webhooks.to.delete',\n defaultMessage:\n '{webhooksToDeleteLength, plural, one {# webhook} other {# webhooks}} selected',\n },\n { webhooksToDeleteLength }\n )}\n </Typography>\n <Button\n onClick={() => setShowModal(true)}\n startIcon={<Trash />}\n size=\"L\"\n variant=\"danger-light\"\n >\n {formatMessage({\n id: 'global.delete',\n defaultMessage: 'Delete',\n })}\n </Button>\n </>\n }\n />\n )}\n <ContentLayout>\n {isLoading ? (\n <Box background=\"neutral0\" padding={6} shadow=\"filterShadow\" hasRadius>\n <LoadingIndicatorPage />\n </Box>\n ) : numberOfWebhooks > 0 ? (\n <Table\n colCount={5}\n rowCount={numberOfWebhooks + 1}\n footer={\n <TFooter onClick={() => (canCreate ? goTo('create') : {})} icon={<Plus />}>\n {formatMessage({\n id: 'Settings.webhooks.list.button.add',\n defaultMessage: 'Create new webhook',\n })}\n </TFooter>\n }\n >\n <Thead>\n <Tr>\n <Th>\n <BaseCheckbox\n aria-label={formatMessage({\n id: 'global.select-all-entries',\n defaultMessage: 'Select all entries',\n })}\n indeterminate={\n webhooksToDeleteLength > 0 && webhooksToDeleteLength < numberOfWebhooks\n }\n value={webhooksToDeleteLength === numberOfWebhooks}\n onValueChange={selectAllCheckbox}\n />\n </Th>\n <Th width=\"20%\">\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.name',\n defaultMessage: 'Name',\n })}\n </Typography>\n </Th>\n <Th width=\"60%\">\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'Settings.webhooks.form.url',\n defaultMessage: 'URL',\n })}\n </Typography>\n </Th>\n <Th width=\"20%\">\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'Settings.webhooks.list.th.status',\n defaultMessage: 'Status',\n })}\n </Typography>\n </Th>\n <Th>\n <VisuallyHidden>\n {formatMessage({\n id: 'Settings.webhooks.list.th.actions',\n defaultMessage: 'Actions',\n })}\n </VisuallyHidden>\n </Th>\n </Tr>\n </Thead>\n <Tbody>\n {webhooks.map((webhook) => (\n <Tr\n key={webhook.id}\n {...onRowClick({\n fn: () => goTo(webhook.id),\n condition: canUpdate,\n })}\n >\n <Td {...stopPropagation}>\n <BaseCheckbox\n aria-label={`${formatMessage({\n id: 'global.select',\n defaultMessage: 'Select',\n })} ${webhook.name}`}\n value={webhooksToDelete?.includes(webhook.id)}\n onValueChange={(selected) => selectOneCheckbox(selected, webhook.id)}\n name=\"select\"\n />\n </Td>\n <Td>\n <Typography fontWeight=\"semiBold\" textColor=\"neutral800\">\n {webhook.name}\n </Typography>\n </Td>\n <Td>\n <Typography textColor=\"neutral800\">{webhook.url}</Typography>\n </Td>\n <Td>\n <Flex>\n <Switch\n onLabel={formatMessage({\n id: 'global.enabled',\n defaultMessage: 'Enabled',\n })}\n offLabel={formatMessage({\n id: 'global.disabled',\n defaultMessage: 'Disabled',\n })}\n label={`${webhook.name} ${formatMessage({\n id: 'Settings.webhooks.list.th.status',\n defaultMessage: 'Status',\n })}`}\n selected={webhook.isEnabled}\n onChange={(e) => {\n e.stopPropagation();\n enabledMutation.mutate({\n isEnabled: !webhook.isEnabled,\n id: webhook.id,\n });\n }}\n visibleLabels\n />\n </Flex>\n </Td>\n <Td>\n <Flex gap={1}>\n {canUpdate && (\n <IconButton\n label={formatMessage({\n id: 'Settings.webhooks.events.update',\n defaultMessage: 'Update',\n })}\n icon={<Pencil />}\n noBorder\n />\n )}\n {canDelete && (\n <IconButton\n onClick={(e) => {\n e.stopPropagation();\n setWebhooksToDelete([webhook.id]);\n setShowModal(true);\n }}\n label={formatMessage({\n id: 'Settings.webhooks.events.delete',\n defaultMessage: 'Delete webhook',\n })}\n icon={<Trash />}\n noBorder\n />\n )}\n </Flex>\n </Td>\n </Tr>\n ))}\n </Tbody>\n </Table>\n ) : (\n <EmptyStateLayout\n icon={<EmptyDocuments width=\"160px\" />}\n content={formatMessage({\n id: 'Settings.webhooks.list.empty.description',\n defaultMessage: 'No webhooks found',\n })}\n action={\n <Button\n variant=\"secondary\"\n startIcon={<Plus />}\n onClick={() => (canCreate ? goTo('create') : {})}\n >\n {formatMessage({\n id: 'Settings.webhooks.list.button.add',\n defaultMessage: 'Create new webhook',\n })}\n </Button>\n }\n />\n )}\n </ContentLayout>\n </Main>\n <ConfirmDialog\n isOpen={showModal}\n onToggleDialog={() => setShowModal((prev) => !prev)}\n onConfirm={confirmDelete}\n isConfirmButtonLoading={deleteMutation.isLoading}\n />\n </Layout>\n );\n};\n\nexport default ListView;\n","import React from 'react';\n\nimport { CheckPagePermissions } from '@strapi/helper-plugin';\nimport { useSelector } from 'react-redux';\n\nimport { selectAdminPermissions } from '../../../../../selectors';\nimport ListView from '../ListView';\n\nconst ProtectedListView = () => {\n const permissions = useSelector(selectAdminPermissions);\n\n return (\n <CheckPagePermissions permissions={permissions.settings.webhooks.main}>\n <ListView />\n </CheckPagePermissions>\n );\n};\n\nexport default ProtectedListView;\n"],"names":["useState","useSelector","selectAdminPermissions","useIntl","useAPIErrorHandler","useNotification","useFocusWhenNavigate","useHistory","useLocation","useRBAC","useFetchClient","useNotifyAT","useQuery","useEffect","useMutation","webhook","Layout","jsx","SettingsPageTitle","jsxs","Main","HeaderLayout","LinkButton","Plus","ActionLayout","Fragment","Typography","Button","Trash","ContentLayout","Box","LoadingIndicatorPage","Table","TFooter","Thead","Tr","Th","BaseCheckbox","VisuallyHidden","Tbody","onRowClick","Td","stopPropagation","Flex","Switch","IconButton","Pencil","EmptyStateLayout","EmptyDocuments","ConfirmDialog","CheckPagePermissions"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index-9f2d5dc8.js","sources":["../../admin/src/pages/SettingsPage/pages/Webhooks/ListView/index.js","../../admin/src/pages/SettingsPage/pages/Webhooks/ProtectedListView/index.js"],"sourcesContent":["/* eslint-disable no-nested-ternary */\nimport React, { useEffect, useState } from 'react';\n\nimport {\n ActionLayout,\n BaseCheckbox,\n Box,\n Button,\n ContentLayout,\n EmptyStateLayout,\n Flex,\n HeaderLayout,\n IconButton,\n Layout,\n Main,\n Switch,\n Table,\n Tbody,\n Td,\n TFooter,\n Th,\n Thead,\n Tr,\n Typography,\n useNotifyAT,\n VisuallyHidden,\n} from '@strapi/design-system';\nimport {\n ConfirmDialog,\n LinkButton,\n LoadingIndicatorPage,\n onRowClick,\n SettingsPageTitle,\n stopPropagation,\n useAPIErrorHandler,\n useFetchClient,\n useFocusWhenNavigate,\n useNotification,\n useRBAC,\n} from '@strapi/helper-plugin';\nimport { EmptyDocuments, Pencil, Plus, Trash } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { useMutation, useQuery } from 'react-query';\nimport { useSelector } from 'react-redux';\nimport { useHistory, useLocation } from 'react-router-dom';\n\nimport { selectAdminPermissions } from '../../../../../selectors';\n\nconst ListView = () => {\n const [showModal, setShowModal] = useState(false);\n const [webhooksToDelete, setWebhooksToDelete] = useState([]);\n const permissions = useSelector(selectAdminPermissions);\n const { formatMessage } = useIntl();\n const { formatAPIError } = useAPIErrorHandler();\n const toggleNotification = useNotification();\n useFocusWhenNavigate();\n const { push } = useHistory();\n const { pathname } = useLocation();\n\n const {\n isLoading: isRBACLoading,\n allowedActions: { canCreate, canUpdate, canDelete },\n } = useRBAC(permissions.settings.webhooks);\n const { get, post, put } = useFetchClient();\n const { notifyStatus } = useNotifyAT();\n\n const QUERY_KEY = 'webhooks';\n const {\n isLoading: isWebhooksLoading,\n data: webhooks,\n error: webhooksError,\n refetch: refetchWebhooks,\n } = useQuery(QUERY_KEY, async () => {\n const {\n data: { data },\n } = await get('/admin/webhooks');\n\n return data;\n });\n\n useEffect(() => {\n if (webhooksError) {\n toggleNotification({\n type: 'warning',\n message: formatAPIError(webhooksError),\n });\n\n return;\n }\n if (webhooks) {\n notifyStatus(\n formatMessage({\n id: 'Settings.webhooks.list.loading.success',\n defaultMessage: 'Webhooks have been loaded',\n })\n );\n }\n }, [webhooks, webhooksError, toggleNotification, formatMessage, notifyStatus, formatAPIError]);\n\n const deleteMutation = useMutation(\n async () => {\n await post('/admin/webhooks/batch-delete', {\n ids: webhooksToDelete,\n });\n },\n {\n onError(error) {\n toggleNotification({\n type: 'warning',\n message: formatAPIError(error),\n });\n setShowModal(false);\n },\n onSuccess() {\n setWebhooksToDelete([]);\n setShowModal(false);\n refetchWebhooks();\n },\n }\n );\n\n const enabledMutation = useMutation(\n async ({ isEnabled, id }) => {\n const { id: _, ...webhook } = webhooks.find((webhook) => webhook.id === id) ?? {};\n const body = {\n ...webhook,\n isEnabled,\n };\n\n await put(`/admin/webhooks/${id}`, body);\n },\n {\n onError(error) {\n toggleNotification({\n type: 'warning',\n message: formatAPIError(error),\n });\n },\n onSuccess() {\n refetchWebhooks();\n },\n }\n );\n\n const confirmDelete = () => deleteMutation.mutate();\n\n const selectAllCheckbox = (selected) =>\n selected ? setWebhooksToDelete(webhooks.map((webhook) => webhook.id)) : setWebhooksToDelete([]);\n\n const selectOneCheckbox = (selected, id) =>\n selected\n ? setWebhooksToDelete((prev) => [...prev, id])\n : setWebhooksToDelete((prev) => prev.filter((webhookId) => webhookId !== id));\n\n const goTo = (to) => push(`${pathname}/${to}`);\n\n const isLoading = isRBACLoading || isWebhooksLoading;\n const numberOfWebhooks = webhooks?.length ?? 0;\n const webhooksToDeleteLength = webhooksToDelete.length;\n\n return (\n <Layout>\n <SettingsPageTitle name=\"Webhooks\" />\n <Main aria-busy={isLoading}>\n <HeaderLayout\n title={formatMessage({ id: 'Settings.webhooks.title', defaultMessage: 'Webhooks' })}\n subtitle={formatMessage({\n id: 'Settings.webhooks.list.description',\n defaultMessage: 'Get POST changes notifications',\n })}\n primaryAction={\n canCreate &&\n !isLoading && (\n <LinkButton startIcon={<Plus />} variant=\"default\" to={`${pathname}/create`} size=\"S\">\n {formatMessage({\n id: 'Settings.webhooks.list.button.add',\n defaultMessage: 'Create new webhook',\n })}\n </LinkButton>\n )\n }\n />\n {webhooksToDeleteLength > 0 && canDelete && (\n <ActionLayout\n startActions={\n <>\n <Typography variant=\"epsilon\" textColor=\"neutral600\">\n {formatMessage(\n {\n id: 'Settings.webhooks.to.delete',\n defaultMessage:\n '{webhooksToDeleteLength, plural, one {# webhook} other {# webhooks}} selected',\n },\n { webhooksToDeleteLength }\n )}\n </Typography>\n <Button\n onClick={() => setShowModal(true)}\n startIcon={<Trash />}\n size=\"L\"\n variant=\"danger-light\"\n >\n {formatMessage({\n id: 'global.delete',\n defaultMessage: 'Delete',\n })}\n </Button>\n </>\n }\n />\n )}\n <ContentLayout>\n {isLoading ? (\n <Box background=\"neutral0\" padding={6} shadow=\"filterShadow\" hasRadius>\n <LoadingIndicatorPage />\n </Box>\n ) : numberOfWebhooks > 0 ? (\n <Table\n colCount={5}\n rowCount={numberOfWebhooks + 1}\n footer={\n <TFooter onClick={() => (canCreate ? goTo('create') : {})} icon={<Plus />}>\n {formatMessage({\n id: 'Settings.webhooks.list.button.add',\n defaultMessage: 'Create new webhook',\n })}\n </TFooter>\n }\n >\n <Thead>\n <Tr>\n <Th>\n <BaseCheckbox\n aria-label={formatMessage({\n id: 'global.select-all-entries',\n defaultMessage: 'Select all entries',\n })}\n indeterminate={\n webhooksToDeleteLength > 0 && webhooksToDeleteLength < numberOfWebhooks\n }\n value={webhooksToDeleteLength === numberOfWebhooks}\n onValueChange={selectAllCheckbox}\n />\n </Th>\n <Th width=\"20%\">\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.name',\n defaultMessage: 'Name',\n })}\n </Typography>\n </Th>\n <Th width=\"60%\">\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'Settings.webhooks.form.url',\n defaultMessage: 'URL',\n })}\n </Typography>\n </Th>\n <Th width=\"20%\">\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'Settings.webhooks.list.th.status',\n defaultMessage: 'Status',\n })}\n </Typography>\n </Th>\n <Th>\n <VisuallyHidden>\n {formatMessage({\n id: 'Settings.webhooks.list.th.actions',\n defaultMessage: 'Actions',\n })}\n </VisuallyHidden>\n </Th>\n </Tr>\n </Thead>\n <Tbody>\n {webhooks.map((webhook) => (\n <Tr\n key={webhook.id}\n {...onRowClick({\n fn: () => goTo(webhook.id),\n condition: canUpdate,\n })}\n >\n <Td {...stopPropagation}>\n <BaseCheckbox\n aria-label={`${formatMessage({\n id: 'global.select',\n defaultMessage: 'Select',\n })} ${webhook.name}`}\n value={webhooksToDelete?.includes(webhook.id)}\n onValueChange={(selected) => selectOneCheckbox(selected, webhook.id)}\n name=\"select\"\n />\n </Td>\n <Td>\n <Typography fontWeight=\"semiBold\" textColor=\"neutral800\">\n {webhook.name}\n </Typography>\n </Td>\n <Td>\n <Typography textColor=\"neutral800\">{webhook.url}</Typography>\n </Td>\n <Td>\n <Flex>\n <Switch\n onLabel={formatMessage({\n id: 'global.enabled',\n defaultMessage: 'Enabled',\n })}\n offLabel={formatMessage({\n id: 'global.disabled',\n defaultMessage: 'Disabled',\n })}\n label={`${webhook.name} ${formatMessage({\n id: 'Settings.webhooks.list.th.status',\n defaultMessage: 'Status',\n })}`}\n selected={webhook.isEnabled}\n onChange={(e) => {\n e.stopPropagation();\n enabledMutation.mutate({\n isEnabled: !webhook.isEnabled,\n id: webhook.id,\n });\n }}\n visibleLabels\n />\n </Flex>\n </Td>\n <Td>\n <Flex gap={1}>\n {canUpdate && (\n <IconButton\n label={formatMessage({\n id: 'Settings.webhooks.events.update',\n defaultMessage: 'Update',\n })}\n icon={<Pencil />}\n noBorder\n />\n )}\n {canDelete && (\n <IconButton\n onClick={(e) => {\n e.stopPropagation();\n setWebhooksToDelete([webhook.id]);\n setShowModal(true);\n }}\n label={formatMessage({\n id: 'Settings.webhooks.events.delete',\n defaultMessage: 'Delete webhook',\n })}\n icon={<Trash />}\n noBorder\n />\n )}\n </Flex>\n </Td>\n </Tr>\n ))}\n </Tbody>\n </Table>\n ) : (\n <EmptyStateLayout\n icon={<EmptyDocuments width=\"160px\" />}\n content={formatMessage({\n id: 'Settings.webhooks.list.empty.description',\n defaultMessage: 'No webhooks found',\n })}\n action={\n <Button\n variant=\"secondary\"\n startIcon={<Plus />}\n onClick={() => (canCreate ? goTo('create') : {})}\n >\n {formatMessage({\n id: 'Settings.webhooks.list.button.add',\n defaultMessage: 'Create new webhook',\n })}\n </Button>\n }\n />\n )}\n </ContentLayout>\n </Main>\n <ConfirmDialog\n isOpen={showModal}\n onToggleDialog={() => setShowModal((prev) => !prev)}\n onConfirm={confirmDelete}\n isConfirmButtonLoading={deleteMutation.isLoading}\n />\n </Layout>\n );\n};\n\nexport default ListView;\n","import React from 'react';\n\nimport { CheckPagePermissions } from '@strapi/helper-plugin';\nimport { useSelector } from 'react-redux';\n\nimport { selectAdminPermissions } from '../../../../../selectors';\nimport ListView from '../ListView';\n\nconst ProtectedListView = () => {\n const permissions = useSelector(selectAdminPermissions);\n\n return (\n <CheckPagePermissions permissions={permissions.settings.webhooks.main}>\n <ListView />\n </CheckPagePermissions>\n );\n};\n\nexport default ProtectedListView;\n"],"names":["useState","useSelector","selectAdminPermissions","useIntl","useAPIErrorHandler","useNotification","useFocusWhenNavigate","useHistory","useLocation","useRBAC","useFetchClient","useNotifyAT","useQuery","useEffect","useMutation","webhook","Layout","jsx","SettingsPageTitle","jsxs","Main","HeaderLayout","LinkButton","Plus","ActionLayout","Fragment","Typography","Button","Trash","ContentLayout","Box","LoadingIndicatorPage","Table","TFooter","Thead","Tr","Th","BaseCheckbox","VisuallyHidden","Tbody","onRowClick","Td","stopPropagation","Flex","Switch","IconButton","Pencil","EmptyStateLayout","EmptyDocuments","ConfirmDialog","CheckPagePermissions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgDA,MAAM,WAAW,MAAM;AACrB,QAAM,CAAC,WAAW,YAAY,IAAIA,eAAS,KAAK;AAChD,QAAM,CAAC,kBAAkB,mBAAmB,IAAIA,MAAA,SAAS,CAAE,CAAA;AACrD,QAAA,cAAcC,uBAAYC,iBAAAA,sBAAsB;AAChD,QAAA,EAAE,kBAAkBC,UAAAA;AACpB,QAAA,EAAE,mBAAmBC,aAAAA;AAC3B,QAAM,qBAAqBC,aAAAA;AACNC,eAAAA;AACf,QAAA,EAAE,SAASC,eAAAA;AACX,QAAA,EAAE,aAAaC,eAAAA;AAEf,QAAA;AAAA,IACJ,WAAW;AAAA,IACX,gBAAgB,EAAE,WAAW,WAAW,UAAU;AAAA,EAChD,IAAAC,qBAAQ,YAAY,SAAS,QAAQ;AACzC,QAAM,EAAE,KAAK,MAAM,QAAQC,aAAe,eAAA;AACpC,QAAA,EAAE,iBAAiBC,aAAAA;AAEzB,QAAM,YAAY;AACZ,QAAA;AAAA,IACJ,WAAW;AAAA,IACX,MAAM;AAAA,IACN,OAAO;AAAA,IACP,SAAS;AAAA,EAAA,IACPC,WAAAA,SAAS,WAAW,YAAY;AAC5B,UAAA;AAAA,MACJ,MAAM,EAAE,KAAK;AAAA,IAAA,IACX,MAAM,IAAI,iBAAiB;AAExB,WAAA;AAAA,EAAA,CACR;AAEDC,QAAAA,UAAU,MAAM;AACd,QAAI,eAAe;AACE,yBAAA;AAAA,QACjB,MAAM;AAAA,QACN,SAAS,eAAe,aAAa;AAAA,MAAA,CACtC;AAED;AAAA,IACF;AACA,QAAI,UAAU;AACZ;AAAA,QACE,cAAc;AAAA,UACZ,IAAI;AAAA,UACJ,gBAAgB;AAAA,QAAA,CACjB;AAAA,MAAA;AAAA,IAEL;AAAA,EAAA,GACC,CAAC,UAAU,eAAe,oBAAoB,eAAe,cAAc,cAAc,CAAC;AAE7F,QAAM,iBAAiBC,WAAA;AAAA,IACrB,YAAY;AACV,YAAM,KAAK,gCAAgC;AAAA,QACzC,KAAK;AAAA,MAAA,CACN;AAAA,IACH;AAAA,IACA;AAAA,MACE,QAAQ,OAAO;AACM,2BAAA;AAAA,UACjB,MAAM;AAAA,UACN,SAAS,eAAe,KAAK;AAAA,QAAA,CAC9B;AACD,qBAAa,KAAK;AAAA,MACpB;AAAA,MACA,YAAY;AACV,4BAAoB,CAAE,CAAA;AACtB,qBAAa,KAAK;AACF;MAClB;AAAA,IACF;AAAA,EAAA;AAGF,QAAM,kBAAkBA,WAAA;AAAA,IACtB,OAAO,EAAE,WAAW,SAAS;AAC3B,YAAM,EAAE,IAAI,GAAG,GAAG,QAAY,IAAA,SAAS,KAAK,CAACC,aAAYA,SAAQ,OAAO,EAAE,KAAK,CAAA;AAC/E,YAAM,OAAO;AAAA,QACX,GAAG;AAAA,QACH;AAAA,MAAA;AAGF,YAAM,IAAI,mBAAmB,EAAE,IAAI,IAAI;AAAA,IACzC;AAAA,IACA;AAAA,MACE,QAAQ,OAAO;AACM,2BAAA;AAAA,UACjB,MAAM;AAAA,UACN,SAAS,eAAe,KAAK;AAAA,QAAA,CAC9B;AAAA,MACH;AAAA,MACA,YAAY;AACM;MAClB;AAAA,IACF;AAAA,EAAA;AAGI,QAAA,gBAAgB,MAAM,eAAe;AAE3C,QAAM,oBAAoB,CAAC,aACzB,WAAW,oBAAoB,SAAS,IAAI,CAAC,YAAY,QAAQ,EAAE,CAAC,IAAI,oBAAoB,CAAE,CAAA;AAE1F,QAAA,oBAAoB,CAAC,UAAU,OACnC,WACI,oBAAoB,CAAC,SAAS,CAAC,GAAG,MAAM,EAAE,CAAC,IAC3C,oBAAoB,CAAC,SAAS,KAAK,OAAO,CAAC,cAAc,cAAc,EAAE,CAAC;AAE1E,QAAA,OAAO,CAAC,OAAO,KAAK,GAAG,QAAQ,IAAI,EAAE,EAAE;AAE7C,QAAM,YAAY,iBAAiB;AAC7B,QAAA,mBAAmB,UAAU,UAAU;AAC7C,QAAM,yBAAyB,iBAAiB;AAEhD,yCACGC,qBACC,EAAA,UAAA;AAAA,IAACC,2BAAAA,IAAAC,aAAA,mBAAA,EAAkB,MAAK,WAAW,CAAA;AAAA,IACnCC,2BAAAA,KAACC,aAAAA,MAAK,EAAA,aAAW,WACf,UAAA;AAAA,MAAAH,2BAAA;AAAA,QAACI,aAAA;AAAA,QAAA;AAAA,UACC,OAAO,cAAc,EAAE,IAAI,2BAA2B,gBAAgB,YAAY;AAAA,UAClF,UAAU,cAAc;AAAA,YACtB,IAAI;AAAA,YACJ,gBAAgB;AAAA,UAAA,CACjB;AAAA,UACD,eACE,aACA,CAAC,aACEJ,2BAAA,IAAAK,aAAA,YAAA,EAAW,WAAYL,+BAAAM,MAAAA,MAAA,CAAK,CAAA,GAAI,SAAQ,WAAU,IAAI,GAAG,QAAQ,WAAW,MAAK,KAC/E,UAAc,cAAA;AAAA,YACb,IAAI;AAAA,YACJ,gBAAgB;AAAA,UACjB,CAAA,GACH;AAAA,QAAA;AAAA,MAGN;AAAA,MACC,yBAAyB,KAAK,aAC7BN,2BAAA;AAAA,QAACO,aAAA;AAAA,QAAA;AAAA,UACC,cAEIL,2BAAA,KAAAM,qBAAA,EAAA,UAAA;AAAA,YAAAR,2BAAA,IAACS,aAAW,YAAA,EAAA,SAAQ,WAAU,WAAU,cACrC,UAAA;AAAA,cACC;AAAA,gBACE,IAAI;AAAA,gBACJ,gBACE;AAAA,cACJ;AAAA,cACA,EAAE,uBAAuB;AAAA,YAAA,GAE7B;AAAA,YACAT,2BAAA;AAAA,cAACU,aAAA;AAAA,cAAA;AAAA,gBACC,SAAS,MAAM,aAAa,IAAI;AAAA,gBAChC,0CAAYC,MAAM,OAAA,EAAA;AAAA,gBAClB,MAAK;AAAA,gBACL,SAAQ;AAAA,gBAEP,UAAc,cAAA;AAAA,kBACb,IAAI;AAAA,kBACJ,gBAAgB;AAAA,gBAAA,CACjB;AAAA,cAAA;AAAA,YACH;AAAA,UAAA,GACF;AAAA,QAAA;AAAA,MAEJ;AAAA,qCAEDC,aACE,eAAA,EAAA,UAAA,2CACEC,aAAI,KAAA,EAAA,YAAW,YAAW,SAAS,GAAG,QAAO,gBAAe,WAAS,MACpE,UAAAb,2BAAA,IAACc,qCAAqB,EACxB,CAAA,IACE,mBAAmB,IACrBZ,2BAAA;AAAA,QAACa,aAAA;AAAA,QAAA;AAAA,UACC,UAAU;AAAA,UACV,UAAU,mBAAmB;AAAA,UAC7B,QACEf,2BAAA,IAACgB,aAAQ,SAAA,EAAA,SAAS,MAAO,YAAY,KAAK,QAAQ,IAAI,CAAK,GAAA,MAAOhB,+BAAAM,MAAAA,MAAA,CAAA,CAAK,GACpE,UAAc,cAAA;AAAA,YACb,IAAI;AAAA,YACJ,gBAAgB;AAAA,UACjB,CAAA,GACH;AAAA,UAGF,UAAA;AAAA,YAACN,2BAAA,IAAAiB,aAAA,OAAA,EACC,0CAACC,aAAAA,IACC,EAAA,UAAA;AAAA,cAAAlB,+BAACmB,aAAAA,IACC,EAAA,UAAAnB,2BAAA;AAAA,gBAACoB,aAAA;AAAA,gBAAA;AAAA,kBACC,cAAY,cAAc;AAAA,oBACxB,IAAI;AAAA,oBACJ,gBAAgB;AAAA,kBAAA,CACjB;AAAA,kBACD,eACE,yBAAyB,KAAK,yBAAyB;AAAA,kBAEzD,OAAO,2BAA2B;AAAA,kBAClC,eAAe;AAAA,gBAAA;AAAA,cAAA,GAEnB;AAAA,cACApB,2BAAAA,IAACmB,aAAAA,IAAG,EAAA,OAAM,OACR,UAAAnB,2BAAA,IAACS,2BAAW,SAAQ,SAAQ,WAAU,cACnC,UAAc,cAAA;AAAA,gBACb,IAAI;AAAA,gBACJ,gBAAgB;AAAA,cAAA,CACjB,GACH,EACF,CAAA;AAAA,cACAT,2BAAAA,IAACmB,aAAAA,IAAG,EAAA,OAAM,OACR,UAAAnB,2BAAA,IAACS,2BAAW,SAAQ,SAAQ,WAAU,cACnC,UAAc,cAAA;AAAA,gBACb,IAAI;AAAA,gBACJ,gBAAgB;AAAA,cAAA,CACjB,GACH,EACF,CAAA;AAAA,cACAT,2BAAAA,IAACmB,aAAAA,IAAG,EAAA,OAAM,OACR,UAAAnB,2BAAA,IAACS,2BAAW,SAAQ,SAAQ,WAAU,cACnC,UAAc,cAAA;AAAA,gBACb,IAAI;AAAA,gBACJ,gBAAgB;AAAA,cAAA,CACjB,GACH,EACF,CAAA;AAAA,cACCT,2BAAA,IAAAmB,aAAA,IAAA,EACC,UAACnB,2BAAA,IAAAqB,6BAAA,EACE,UAAc,cAAA;AAAA,gBACb,IAAI;AAAA,gBACJ,gBAAgB;AAAA,cAAA,CACjB,GACH,EACF,CAAA;AAAA,YAAA,EAAA,CACF,EACF,CAAA;AAAA,YACCrB,2BAAA,IAAAsB,aAAA,OAAA,EACE,UAAS,SAAA,IAAI,CAAC,YACbpB,2BAAA;AAAA,cAACgB,aAAA;AAAA,cAAA;AAAA,gBAEE,GAAGK,wBAAW;AAAA,kBACb,IAAI,MAAM,KAAK,QAAQ,EAAE;AAAA,kBACzB,WAAW;AAAA,gBAAA,CACZ;AAAA,gBAED,UAAA;AAAA,kBAACvB,2BAAAA,IAAAwB,aAAAA,IAAA,EAAI,GAAGC,aACN,iBAAA,UAAAzB,2BAAA;AAAA,oBAACoB,aAAA;AAAA,oBAAA;AAAA,sBACC,cAAY,GAAG,cAAc;AAAA,wBAC3B,IAAI;AAAA,wBACJ,gBAAgB;AAAA,sBACjB,CAAA,CAAC,IAAI,QAAQ,IAAI;AAAA,sBAClB,OAAO,kBAAkB,SAAS,QAAQ,EAAE;AAAA,sBAC5C,eAAe,CAAC,aAAa,kBAAkB,UAAU,QAAQ,EAAE;AAAA,sBACnE,MAAK;AAAA,oBAAA;AAAA,kBAAA,GAET;AAAA,kBACApB,2BAAA,IAACwB,aACC,IAAA,EAAA,UAAAxB,2BAAAA,IAACS,aAAAA,YAAW,EAAA,YAAW,YAAW,WAAU,cACzC,UAAQ,QAAA,KAAA,CACX,EACF,CAAA;AAAA,kBACAT,2BAAAA,IAACwB,aAAAA,MACC,UAACxB,2BAAAA,IAAAS,aAAAA,YAAA,EAAW,WAAU,cAAc,UAAA,QAAQ,KAAI,EAClD,CAAA;AAAA,kBACAT,2BAAA,IAACwB,aACC,IAAA,EAAA,UAAAxB,2BAAA,IAAC0B,aACC,MAAA,EAAA,UAAA1B,2BAAA;AAAA,oBAAC2B,aAAA;AAAA,oBAAA;AAAA,sBACC,SAAS,cAAc;AAAA,wBACrB,IAAI;AAAA,wBACJ,gBAAgB;AAAA,sBAAA,CACjB;AAAA,sBACD,UAAU,cAAc;AAAA,wBACtB,IAAI;AAAA,wBACJ,gBAAgB;AAAA,sBAAA,CACjB;AAAA,sBACD,OAAO,GAAG,QAAQ,IAAI,IAAI,cAAc;AAAA,wBACtC,IAAI;AAAA,wBACJ,gBAAgB;AAAA,sBACjB,CAAA,CAAC;AAAA,sBACF,UAAU,QAAQ;AAAA,sBAClB,UAAU,CAAC,MAAM;AACf,0BAAE,gBAAgB;AAClB,wCAAgB,OAAO;AAAA,0BACrB,WAAW,CAAC,QAAQ;AAAA,0BACpB,IAAI,QAAQ;AAAA,wBAAA,CACb;AAAA,sBACH;AAAA,sBACA,eAAa;AAAA,oBAAA;AAAA,qBAEjB,EACF,CAAA;AAAA,kBACC3B,+BAAAwB,aAAAA,IAAA,EACC,UAACtB,2BAAAA,KAAAwB,aAAAA,MAAA,EAAK,KAAK,GACR,UAAA;AAAA,oBACC,aAAA1B,2BAAA;AAAA,sBAAC4B,aAAA;AAAA,sBAAA;AAAA,wBACC,OAAO,cAAc;AAAA,0BACnB,IAAI;AAAA,0BACJ,gBAAgB;AAAA,wBAAA,CACjB;AAAA,wBACD,qCAAOC,MAAO,QAAA,EAAA;AAAA,wBACd,UAAQ;AAAA,sBAAA;AAAA,oBACV;AAAA,oBAED,aACC7B,2BAAA;AAAA,sBAAC4B,aAAA;AAAA,sBAAA;AAAA,wBACC,SAAS,CAAC,MAAM;AACd,4BAAE,gBAAgB;AACE,8CAAA,CAAC,QAAQ,EAAE,CAAC;AAChC,uCAAa,IAAI;AAAA,wBACnB;AAAA,wBACA,OAAO,cAAc;AAAA,0BACnB,IAAI;AAAA,0BACJ,gBAAgB;AAAA,wBAAA,CACjB;AAAA,wBACD,qCAAOjB,MAAM,OAAA,EAAA;AAAA,wBACb,UAAQ;AAAA,sBAAA;AAAA,oBACV;AAAA,kBAAA,EAAA,CAEJ,EACF,CAAA;AAAA,gBAAA;AAAA,cAAA;AAAA,cAhFK,QAAQ;AAAA,YAkFhB,CAAA,GACH;AAAA,UAAA;AAAA,QAAA;AAAA,MAAA,IAGFX,2BAAA;AAAA,QAAC8B,aAAA;AAAA,QAAA;AAAA,UACC,MAAM9B,2BAAAA,IAAC+B,MAAAA,gBAAe,EAAA,OAAM,QAAQ,CAAA;AAAA,UACpC,SAAS,cAAc;AAAA,YACrB,IAAI;AAAA,YACJ,gBAAgB;AAAA,UAAA,CACjB;AAAA,UACD,QACE/B,2BAAA;AAAA,YAACU,aAAA;AAAA,YAAA;AAAA,cACC,SAAQ;AAAA,cACR,0CAAYJ,MAAK,MAAA,EAAA;AAAA,cACjB,SAAS,MAAO,YAAY,KAAK,QAAQ,IAAI,CAAC;AAAA,cAE7C,UAAc,cAAA;AAAA,gBACb,IAAI;AAAA,gBACJ,gBAAgB;AAAA,cAAA,CACjB;AAAA,YAAA;AAAA,UACH;AAAA,QAAA;AAAA,MAAA,GAIR;AAAA,IAAA,GACF;AAAA,IACAN,2BAAA;AAAA,MAACgC,aAAA;AAAA,MAAA;AAAA,QACC,QAAQ;AAAA,QACR,gBAAgB,MAAM,aAAa,CAAC,SAAS,CAAC,IAAI;AAAA,QAClD,WAAW;AAAA,QACX,wBAAwB,eAAe;AAAA,MAAA;AAAA,IACzC;AAAA,EACF,EAAA,CAAA;AAEJ;ACrYA,MAAM,oBAAoB,MAAM;AACxB,QAAA,cAAchD,uBAAYC,iBAAAA,sBAAsB;AAGpD,SAAAe,2BAAA,IAACiC,qCAAqB,aAAa,YAAY,SAAS,SAAS,MAC/D,UAACjC,2BAAA,IAAA,UAAA,CAAS,CAAA,EACZ,CAAA;AAEJ;;"}
|
|
@@ -3,13 +3,13 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
|
3
3
|
const jsxRuntime = require("react/jsx-runtime");
|
|
4
4
|
const helperPlugin = require("@strapi/helper-plugin");
|
|
5
5
|
const reactRedux = require("react-redux");
|
|
6
|
-
const AuthenticatedApp = require("./AuthenticatedApp-
|
|
7
|
-
const index = require("./index-
|
|
6
|
+
const AuthenticatedApp = require("./AuthenticatedApp-61dfdab8.js");
|
|
7
|
+
const index = require("./index-cbf9952d.js");
|
|
8
8
|
require("react");
|
|
9
9
|
require("react-query");
|
|
10
10
|
require("semver/functions/lt");
|
|
11
11
|
require("semver/functions/valid");
|
|
12
|
-
require("./index-
|
|
12
|
+
require("./index-0ed05075.js");
|
|
13
13
|
require("react-dom/client");
|
|
14
14
|
require("@strapi/design-system");
|
|
15
15
|
require("invariant");
|
|
@@ -48,4 +48,4 @@ const ProtectedTransferTokenCreateView = () => {
|
|
|
48
48
|
return /* @__PURE__ */ jsxRuntime.jsx(helperPlugin.CheckPagePermissions, { permissions: permissions.settings["transfer-tokens"].create, children: /* @__PURE__ */ jsxRuntime.jsx(index.TransferTokenCreateView, {}) });
|
|
49
49
|
};
|
|
50
50
|
exports.default = ProtectedTransferTokenCreateView;
|
|
51
|
-
//# sourceMappingURL=index-
|
|
51
|
+
//# sourceMappingURL=index-9f30a92e.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-9f30a92e.js","sources":["../../admin/src/pages/SettingsPage/pages/TransferTokens/ProtectedCreateView/index.js"],"sourcesContent":["import React from 'react';\n\nimport { CheckPagePermissions } from '@strapi/helper-plugin';\nimport { useSelector } from 'react-redux';\n\nimport { selectAdminPermissions } from '../../../../../selectors';\nimport EditView from '../EditView';\n\nconst ProtectedTransferTokenCreateView = () => {\n const permissions = useSelector(selectAdminPermissions);\n\n return (\n <CheckPagePermissions permissions={permissions.settings['transfer-tokens'].create}>\n <EditView />\n </CheckPagePermissions>\n );\n};\n\nexport default ProtectedTransferTokenCreateView;\n"],"names":["useSelector","selectAdminPermissions","jsx","CheckPagePermissions","EditView"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,MAAM,mCAAmC,MAAM;AACvC,QAAA,cAAcA,uBAAYC,iBAAAA,sBAAsB;AAGpD,SAAAC,2BAAA,IAACC,aAAqB,sBAAA,EAAA,aAAa,YAAY,SAAS,iBAAiB,EAAE,QACzE,UAACD,2BAAA,IAAAE,MAAA,yBAAA,CAAS,CAAA,EACZ,CAAA;AAEJ;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx, jsxs, Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { onRowClick, stopPropagation, translatedErrors, useNotification, useOverlayBlocker, useFetchClient, Form, GenericInput, PageSizeURLQuery, PaginationURLQuery, Status, useAPIErrorHandler, useRBAC, useFocusWhenNavigate, SettingsPageTitle, SearchURLQuery, NoPermissions, DynamicTable, CheckPagePermissions } from "@strapi/helper-plugin";
|
|
3
3
|
import { useSelector } from "react-redux";
|
|
4
|
-
import { g as getFullName, s as selectAdminPermissions } from "./AuthenticatedApp-
|
|
4
|
+
import { g as getFullName, s as selectAdminPermissions } from "./AuthenticatedApp-da1595e9.mjs";
|
|
5
5
|
import { useState } from "react";
|
|
6
6
|
import { Button, Tbody, Tr, Td, BaseCheckbox, Typography, Flex, IconButton, Box, ModalLayout, ModalHeader, ModalBody, Grid, GridItem, ModalFooter, Main, HeaderLayout, ActionLayout, ContentLayout } from "@strapi/design-system";
|
|
7
7
|
import qs__default from "qs";
|
|
@@ -9,13 +9,13 @@ import { useIntl } from "react-intl";
|
|
|
9
9
|
import { useMutation, useQueryClient } from "react-query";
|
|
10
10
|
import { useHistory, useLocation } from "react-router-dom";
|
|
11
11
|
import { u as useAdminUsers } from "./useAdminUsers-09f86a58.mjs";
|
|
12
|
-
import { p as useEnterprise } from "./index-
|
|
12
|
+
import { p as useEnterprise } from "./index-b6ee936b.mjs";
|
|
13
13
|
import { F as Filters } from "./index-74812118.mjs";
|
|
14
14
|
import { Envelop, Pencil, Trash } from "@strapi/icons";
|
|
15
15
|
import PropTypes from "prop-types";
|
|
16
16
|
import { Breadcrumbs, Crumb } from "@strapi/design-system/v2";
|
|
17
17
|
import { Formik } from "formik";
|
|
18
|
-
import { M as MagicLinkCE, S as SelectRoles } from "./index-
|
|
18
|
+
import { M as MagicLinkCE, S as SelectRoles } from "./index-be3e5f69.mjs";
|
|
19
19
|
import * as yup from "yup";
|
|
20
20
|
const CreateActionCE = ({ onClick }) => {
|
|
21
21
|
const { formatMessage } = useIntl();
|
|
@@ -241,7 +241,7 @@ const ModalForm = ({ onSuccess, onToggle }) => {
|
|
|
241
241
|
);
|
|
242
242
|
const MagicLink = useEnterprise(
|
|
243
243
|
MagicLinkCE,
|
|
244
|
-
async () => (await import("./index-
|
|
244
|
+
async () => (await import("./index-f52ae628.mjs")).MagicLinkEE
|
|
245
245
|
);
|
|
246
246
|
const postMutation = useMutation(
|
|
247
247
|
(body) => {
|
|
@@ -653,7 +653,7 @@ const UsersListPageSwitch = () => {
|
|
|
653
653
|
UserListPageCE,
|
|
654
654
|
async () => (
|
|
655
655
|
// eslint-disable-next-line import/no-cycle
|
|
656
|
-
(await import("./index-
|
|
656
|
+
(await import("./index-6353193a.mjs")).UserListPageEE
|
|
657
657
|
)
|
|
658
658
|
);
|
|
659
659
|
if (!UsersListPage) {
|
|
@@ -673,4 +673,4 @@ export {
|
|
|
673
673
|
UserListPageCE as U,
|
|
674
674
|
index as i
|
|
675
675
|
};
|
|
676
|
-
//# sourceMappingURL=index-
|
|
676
|
+
//# sourceMappingURL=index-a6f1ccf6.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-aa35df09.mjs","sources":["../../admin/src/pages/SettingsPage/pages/Users/ListPage/CreateAction/index.js","../../admin/src/pages/SettingsPage/pages/Users/ListPage/DynamicTable/TableRows/index.js","../../admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/constants.js","../../admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/index.js","../../admin/src/pages/SettingsPage/pages/Users/ListPage/PaginationFooter/index.js","../../admin/src/pages/SettingsPage/pages/Users/ListPage/utils/displayedFilters.js","../../admin/src/pages/SettingsPage/pages/Users/ListPage/utils/tableHeaders.js","../../admin/src/pages/SettingsPage/pages/Users/ListPage/index.js","../../admin/src/pages/SettingsPage/pages/Users/ProtectedListPage/index.js"],"sourcesContent":["import React from 'react';\n\nimport { Button } from '@strapi/design-system';\nimport { Envelop } from '@strapi/icons';\nimport PropTypes from 'prop-types';\nimport { useIntl } from 'react-intl';\n\nexport const CreateActionCE = ({ onClick }) => {\n const { formatMessage } = useIntl();\n\n return (\n <Button onClick={onClick} startIcon={<Envelop />} size=\"S\">\n {formatMessage({\n id: 'Settings.permissions.users.create',\n defaultMessage: 'Invite new user',\n })}\n </Button>\n );\n};\n\nCreateActionCE.propTypes = {\n onClick: PropTypes.func.isRequired,\n};\n","import React from 'react';\n\nimport {\n BaseCheckbox,\n Box,\n Flex,\n IconButton,\n Tbody,\n Td,\n Tr,\n Typography,\n} from '@strapi/design-system';\nimport { onRowClick, stopPropagation } from '@strapi/helper-plugin';\nimport { Pencil, Trash } from '@strapi/icons';\nimport PropTypes from 'prop-types';\nimport { useIntl } from 'react-intl';\nimport { useHistory } from 'react-router-dom';\n\nimport { getFullName } from '../../../../../../../utils/getFullName';\n\nconst TableRows = ({\n canDelete,\n headers,\n entriesToDelete,\n onClickDelete,\n onSelectRow,\n withMainAction,\n withBulkActions,\n rows,\n}) => {\n const {\n push,\n location: { pathname },\n } = useHistory();\n const { formatMessage } = useIntl();\n\n return (\n <Tbody>\n {rows.map((data) => {\n const isChecked = entriesToDelete.findIndex((id) => id === data.id) !== -1;\n\n return (\n <Tr\n key={data.id}\n {...onRowClick({\n fn: () => push(`${pathname}/${data.id}`),\n condition: withBulkActions,\n })}\n >\n {withMainAction && (\n <Td {...stopPropagation}>\n <BaseCheckbox\n aria-label={formatMessage(\n {\n id: 'app.component.table.select.one-entry',\n defaultMessage: `Select {target}`,\n },\n { target: getFullName(data.firstname, data.lastname) }\n )}\n checked={isChecked}\n onChange={() => {\n onSelectRow({ name: data.id, value: !isChecked });\n }}\n />\n </Td>\n )}\n {headers.map(({ key, cellFormatter, name, ...rest }) => {\n return (\n <Td key={key}>\n {typeof cellFormatter === 'function' ? (\n cellFormatter(data, { key, name, formatMessage, ...rest })\n ) : (\n <Typography textColor=\"neutral800\">{data[name] || '-'}</Typography>\n )}\n </Td>\n );\n })}\n\n {withBulkActions && (\n <Td>\n <Flex justifyContent=\"end\">\n <IconButton\n onClick={() => push(`${pathname}/${data.id}`)}\n label={formatMessage(\n { id: 'app.component.table.edit', defaultMessage: 'Edit {target}' },\n { target: getFullName(data.firstname, data.lastname) }\n )}\n noBorder\n icon={<Pencil />}\n />\n\n {canDelete && (\n <Box paddingLeft={1} {...stopPropagation}>\n <IconButton\n onClick={() => onClickDelete(data.id)}\n label={formatMessage(\n { id: 'global.delete-target', defaultMessage: 'Delete {target}' },\n { target: getFullName(data.firstname, data.lastname) }\n )}\n noBorder\n icon={<Trash />}\n />\n </Box>\n )}\n </Flex>\n </Td>\n )}\n </Tr>\n );\n })}\n </Tbody>\n );\n};\n\nTableRows.defaultProps = {\n canDelete: false,\n entriesToDelete: [],\n onClickDelete() {},\n onSelectRow() {},\n rows: [],\n withBulkActions: false,\n withMainAction: false,\n};\n\nTableRows.propTypes = {\n canDelete: PropTypes.bool,\n entriesToDelete: PropTypes.array,\n headers: PropTypes.array.isRequired,\n onClickDelete: PropTypes.func,\n onSelectRow: PropTypes.func,\n rows: PropTypes.array,\n withBulkActions: PropTypes.bool,\n withMainAction: PropTypes.bool,\n};\n\nexport default TableRows;\n","import { translatedErrors } from '@strapi/helper-plugin';\nimport * as yup from 'yup';\n\nexport const FORM_INITIAL_VALUES = {\n firstname: '',\n lastname: '',\n email: '',\n roles: [],\n};\n\nexport const ROLE_LAYOUT = [];\n\nexport const FORM_LAYOUT = [\n [\n {\n intlLabel: {\n id: 'Auth.form.firstname.label',\n defaultMessage: 'First name',\n },\n name: 'firstname',\n placeholder: {\n id: 'Auth.form.firstname.placeholder',\n defaultMessage: 'e.g. Kai',\n },\n type: 'text',\n size: {\n col: 6,\n xs: 12,\n },\n required: true,\n },\n {\n intlLabel: {\n id: 'Auth.form.lastname.label',\n defaultMessage: 'Last name',\n },\n name: 'lastname',\n placeholder: {\n id: 'Auth.form.lastname.placeholder',\n defaultMessage: 'e.g. Doe',\n },\n type: 'text',\n size: {\n col: 6,\n xs: 12,\n },\n },\n ],\n [\n {\n intlLabel: {\n id: 'Auth.form.email.label',\n defaultMessage: 'Email',\n },\n name: 'email',\n placeholder: {\n id: 'Auth.form.email.placeholder',\n defaultMessage: 'e.g. kai.doe@strapi.io',\n },\n type: 'email',\n size: {\n col: 6,\n xs: 12,\n },\n required: true,\n },\n ],\n];\n\nexport const FORM_SCHEMA = yup.object().shape({\n firstname: yup.string().trim().required(translatedErrors.required),\n lastname: yup.string(),\n email: yup.string().email(translatedErrors.email).required(translatedErrors.required),\n roles: yup.array().min(1, translatedErrors.required).required(translatedErrors.required),\n});\n\nexport const STEPPER = {\n create: {\n buttonSubmitLabel: {\n id: 'app.containers.Users.ModalForm.footer.button-success',\n defaultMessage: 'Invite user',\n },\n isDisabled: false,\n next: 'magic-link',\n },\n 'magic-link': {\n buttonSubmitLabel: { id: 'global.finish', defaultMessage: 'Finish' },\n isDisabled: true,\n next: null,\n },\n};\n","import React, { useState } from 'react';\n\nimport {\n Box,\n Button,\n Flex,\n Grid,\n GridItem,\n ModalBody,\n ModalFooter,\n ModalHeader,\n ModalLayout,\n Typography,\n} from '@strapi/design-system';\nimport { Breadcrumbs, Crumb } from '@strapi/design-system/v2';\nimport {\n Form,\n GenericInput,\n useFetchClient,\n useNotification,\n useOverlayBlocker,\n} from '@strapi/helper-plugin';\nimport { Formik } from 'formik';\nimport PropTypes from 'prop-types';\nimport { useIntl } from 'react-intl';\nimport { useMutation } from 'react-query';\n\nimport { useEnterprise } from '../../../../../../hooks/useEnterprise';\nimport { MagicLinkCE } from '../../components/MagicLink';\nimport SelectRoles from '../../components/SelectRoles';\n\nimport { FORM_LAYOUT, FORM_SCHEMA, FORM_INITIAL_VALUES, ROLE_LAYOUT, STEPPER } from './constants';\n\nconst ModalForm = ({ onSuccess, onToggle }) => {\n const [currentStep, setStep] = useState('create');\n const [isSubmitting, setIsSubmitting] = useState(false);\n const [registrationToken, setRegistrationToken] = useState(null);\n const { formatMessage } = useIntl();\n const toggleNotification = useNotification();\n const { lockApp, unlockApp } = useOverlayBlocker();\n const { post } = useFetchClient();\n const roleLayout = useEnterprise(\n ROLE_LAYOUT,\n async () =>\n (\n await import(\n '../../../../../../../../ee/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/constants'\n )\n ).ROLE_LAYOUT,\n {\n combine(ceRoles, eeRoles) {\n return [...ceRoles, eeRoles];\n },\n\n defaultValue: [],\n }\n );\n const initialValues = useEnterprise(\n FORM_INITIAL_VALUES,\n async () =>\n (\n await import(\n '../../../../../../../../ee/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/constants'\n )\n ).FORM_INITIAL_VALUES,\n {\n combine(ceValues, eeValues) {\n return {\n ...ceValues,\n ...eeValues,\n };\n },\n\n defaultValue: FORM_INITIAL_VALUES,\n }\n );\n const MagicLink = useEnterprise(\n MagicLinkCE,\n async () =>\n (\n await import(\n '../../../../../../../../ee/admin/src/pages/SettingsPage/pages/Users/components/MagicLink'\n )\n ).MagicLinkEE\n );\n const postMutation = useMutation(\n (body) => {\n return post('/admin/users', body);\n },\n {\n async onSuccess({ data }) {\n setRegistrationToken(data.data.registrationToken);\n\n await onSuccess();\n\n goNext();\n setIsSubmitting(false);\n },\n onError(err) {\n setIsSubmitting(false);\n\n toggleNotification({\n type: 'warning',\n message: { id: 'notification.error', defaultMessage: 'An error occured' },\n });\n\n throw err;\n },\n onSettled() {\n unlockApp();\n },\n }\n );\n\n const headerTitle = formatMessage({\n id: 'Settings.permissions.users.create',\n defaultMessage: 'Invite new user',\n });\n\n const handleSubmit = async (body, { setErrors }) => {\n lockApp();\n setIsSubmitting(true);\n try {\n await postMutation.mutateAsync(body);\n } catch (err) {\n unlockApp();\n\n if (err?.response?.data?.error.message === 'Email already taken') {\n setErrors({ email: err.response.data.error.message });\n }\n }\n };\n\n const goNext = () => {\n if (next) {\n setStep(next);\n } else {\n onToggle();\n }\n };\n\n const { buttonSubmitLabel, isDisabled, next } = STEPPER[currentStep];\n const endActions =\n currentStep === 'create' ? (\n <Button type=\"submit\" loading={isSubmitting}>\n {formatMessage(buttonSubmitLabel)}\n </Button>\n ) : (\n <Button type=\"button\" loading={isSubmitting} onClick={onToggle}>\n {formatMessage(buttonSubmitLabel)}\n </Button>\n );\n\n // block rendering until the EE component is fully loaded\n if (!MagicLink) {\n return null;\n }\n\n return (\n <ModalLayout onClose={onToggle} labelledBy=\"title\">\n <ModalHeader>\n {/**\n * TODO: this is not semantically correct and should be amended.\n */}\n <Breadcrumbs label={headerTitle}>\n <Crumb isCurrent>{headerTitle}</Crumb>\n </Breadcrumbs>\n </ModalHeader>\n <Formik\n enableReinitialize\n initialValues={initialValues}\n onSubmit={handleSubmit}\n validationSchema={FORM_SCHEMA}\n validateOnChange={false}\n >\n {({ errors, handleChange, values }) => {\n return (\n <Form>\n <ModalBody>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6}>\n {currentStep !== 'create' && <MagicLink registrationToken={registrationToken} />}\n <Box>\n <Typography variant=\"beta\" as=\"h2\">\n {formatMessage({\n id: 'app.components.Users.ModalCreateBody.block-title.details',\n defaultMessage: 'User details',\n })}\n </Typography>\n <Box paddingTop={4}>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={1}>\n <Grid gap={5}>\n {FORM_LAYOUT.map((row) => {\n return row.map((input) => {\n return (\n <GridItem key={input.name} {...input.size}>\n <GenericInput\n {...input}\n disabled={isDisabled}\n error={errors[input.name]}\n onChange={handleChange}\n value={values[input.name]}\n />\n </GridItem>\n );\n });\n })}\n </Grid>\n </Flex>\n </Box>\n </Box>\n <Box>\n <Typography variant=\"beta\" as=\"h2\">\n {formatMessage({\n id: 'global.roles',\n defaultMessage: \"User's role\",\n })}\n </Typography>\n <Box paddingTop={4}>\n <Grid gap={5}>\n <GridItem col={6} xs={12}>\n <SelectRoles\n disabled={isDisabled}\n error={errors.roles}\n onChange={handleChange}\n value={values.roles}\n />\n </GridItem>\n {roleLayout.map((row) => {\n return row.map((input) => {\n return (\n <GridItem key={input.name} {...input.size}>\n <GenericInput\n {...input}\n disabled={isDisabled}\n onChange={handleChange}\n value={values[input.name]}\n />\n </GridItem>\n );\n });\n })}\n </Grid>\n </Box>\n </Box>\n </Flex>\n </ModalBody>\n <ModalFooter\n startActions={\n <Button variant=\"tertiary\" onClick={onToggle} type=\"button\">\n {formatMessage({\n id: 'app.components.Button.cancel',\n defaultMessage: 'Cancel',\n })}\n </Button>\n }\n endActions={endActions}\n />\n </Form>\n );\n }}\n </Formik>\n </ModalLayout>\n );\n};\n\nModalForm.propTypes = {\n onToggle: PropTypes.func.isRequired,\n onSuccess: PropTypes.func.isRequired,\n};\n\nexport default ModalForm;\n","import React from 'react';\n\nimport { Box, Flex } from '@strapi/design-system';\nimport { PageSizeURLQuery, PaginationURLQuery } from '@strapi/helper-plugin';\nimport PropTypes from 'prop-types';\n\nconst PaginationFooter = ({ pagination }) => {\n return (\n <Box paddingTop={4}>\n <Flex alignItems=\"flex-end\" justifyContent=\"space-between\">\n <PageSizeURLQuery />\n <PaginationURLQuery pagination={pagination} />\n </Flex>\n </Box>\n );\n};\n\nPaginationFooter.defaultProps = {\n pagination: {\n pageCount: 0,\n pageSize: 10,\n total: 0,\n },\n};\n\nPaginationFooter.propTypes = {\n pagination: PropTypes.shape({\n page: PropTypes.number,\n pageCount: PropTypes.number,\n pageSize: PropTypes.number,\n total: PropTypes.number,\n }),\n};\n\nexport default PaginationFooter;\n","const displayedFilters = [\n {\n name: 'firstname',\n metadatas: { label: 'Firstname' },\n fieldSchema: { type: 'string' },\n },\n {\n name: 'lastname',\n metadatas: { label: 'Lastname' },\n fieldSchema: { type: 'string' },\n },\n {\n name: 'email',\n metadatas: { label: 'Email' },\n fieldSchema: { type: 'email' },\n },\n {\n name: 'username',\n metadatas: { label: 'Username' },\n fieldSchema: { type: 'string' },\n },\n {\n name: 'isActive',\n metadatas: { label: 'Active user' },\n fieldSchema: { type: 'boolean' },\n },\n];\n\nexport default displayedFilters;\n","import React from 'react';\n\nimport { Flex, Typography } from '@strapi/design-system';\nimport { Status } from '@strapi/helper-plugin';\n\nconst tableHeaders = [\n {\n name: 'firstname',\n key: 'firstname',\n metadatas: {\n label: {\n id: 'Settings.permissions.users.firstname',\n defaultMessage: 'Firstname',\n },\n sortable: true,\n },\n },\n {\n name: 'lastname',\n key: 'lastname',\n metadatas: {\n label: {\n id: 'Settings.permissions.users.lastname',\n defaultMessage: 'Lastname',\n },\n sortable: true,\n },\n },\n {\n key: 'email',\n name: 'email',\n metadatas: {\n label: { id: 'Settings.permissions.users.email', defaultMessage: 'Email' },\n sortable: true,\n },\n },\n {\n key: 'roles',\n name: 'roles',\n metadatas: {\n label: {\n id: 'Settings.permissions.users.roles',\n defaultMessage: 'Roles',\n },\n sortable: false,\n },\n cellFormatter({ roles }, { formatMessage }) {\n return (\n <Typography textColor=\"neutral800\">\n {roles\n .map((role) =>\n formatMessage({\n id: `Settings.permissions.users.${role.code}`,\n defaultMessage: role.name,\n })\n )\n .join(',\\n')}\n </Typography>\n );\n },\n },\n {\n key: 'username',\n name: 'username',\n metadatas: {\n label: {\n id: 'Settings.permissions.users.username',\n defaultMessage: 'Username',\n },\n sortable: true,\n },\n },\n {\n key: 'isActive',\n name: 'isActive',\n metadatas: {\n label: {\n id: 'Settings.permissions.users.user-status',\n defaultMessage: 'User status',\n },\n sortable: false,\n },\n cellFormatter({ isActive }, { formatMessage }) {\n return (\n <Flex>\n <Status isActive={isActive} variant={isActive ? 'success' : 'danger'} />\n <Typography textColor=\"neutral800\">\n {formatMessage({\n id: isActive\n ? 'Settings.permissions.users.active'\n : 'Settings.permissions.users.inactive',\n defaultMessage: isActive ? 'Active' : 'Inactive',\n })}\n </Typography>\n </Flex>\n );\n },\n },\n];\n\nexport default tableHeaders;\n","import React, { useState } from 'react';\n\nimport { ActionLayout, ContentLayout, HeaderLayout, Main } from '@strapi/design-system';\nimport {\n DynamicTable,\n NoPermissions,\n SearchURLQuery,\n SettingsPageTitle,\n useAPIErrorHandler,\n useFetchClient,\n useFocusWhenNavigate,\n useNotification,\n useRBAC,\n} from '@strapi/helper-plugin';\nimport qs from 'qs';\nimport { useIntl } from 'react-intl';\nimport { useMutation, useQueryClient } from 'react-query';\nimport { useSelector } from 'react-redux';\nimport { useLocation } from 'react-router-dom';\n\nimport { useAdminUsers } from '../../../../../hooks/useAdminUsers';\nimport { useEnterprise } from '../../../../../hooks/useEnterprise';\nimport { selectAdminPermissions } from '../../../../../selectors';\nimport Filters from '../../../components/Filters';\n\nimport { CreateActionCE } from './CreateAction';\nimport TableRows from './DynamicTable/TableRows';\nimport ModalForm from './ModalForm';\nimport PaginationFooter from './PaginationFooter';\nimport displayedFilters from './utils/displayedFilters';\nimport tableHeaders from './utils/tableHeaders';\n\nconst EE_LICENSE_LIMIT_QUERY_KEY = ['ee', 'license-limit-info'];\n\nexport const UserListPageCE = () => {\n const { post } = useFetchClient();\n const { formatAPIError } = useAPIErrorHandler();\n const [isModalOpened, setIsModalOpen] = useState(false);\n const permissions = useSelector(selectAdminPermissions);\n const {\n allowedActions: { canCreate, canDelete, canRead },\n } = useRBAC(permissions.settings.users);\n const queryClient = useQueryClient();\n const toggleNotification = useNotification();\n const { formatMessage } = useIntl();\n const { search } = useLocation();\n useFocusWhenNavigate();\n const {\n users,\n pagination,\n isError,\n isLoading,\n refetch: refetchAdminUsers,\n } = useAdminUsers(qs.parse(search, { ignoreQueryPrefix: true }), {\n cacheTime: 0,\n enabled: canRead,\n });\n const CreateAction = useEnterprise(\n CreateActionCE,\n async () =>\n (\n await import(\n '../../../../../../../ee/admin/src/pages/SettingsPage/pages/Users/ListPage/CreateAction'\n )\n ).CreateActionEE\n );\n\n const headers = tableHeaders.map((header) => ({\n ...header,\n metadatas: {\n ...header.metadatas,\n label: formatMessage(header.metadatas.label),\n },\n }));\n\n const title = formatMessage({\n id: 'global.users',\n defaultMessage: 'Users',\n });\n\n const handleToggle = () => {\n setIsModalOpen((prev) => !prev);\n };\n\n const deleteAllMutation = useMutation(\n async (ids) => {\n await post('/admin/users/batch-delete', { ids });\n },\n {\n async onSuccess() {\n await refetchAdminUsers();\n\n // Toggle enabled/ disabled state on the invite button\n await queryClient.refetchQueries(EE_LICENSE_LIMIT_QUERY_KEY);\n },\n onError(error) {\n toggleNotification({\n type: 'warning',\n message: {\n id: 'notification.error',\n message: formatAPIError(error),\n defaultMessage: 'An error occured',\n },\n });\n },\n }\n );\n\n // block rendering until the EE component is fully loaded\n if (!CreateAction) {\n return null;\n }\n\n return (\n <Main aria-busy={isLoading}>\n <SettingsPageTitle name=\"Users\" />\n <HeaderLayout\n primaryAction={canCreate && <CreateAction onClick={handleToggle} />}\n title={title}\n subtitle={formatMessage({\n id: 'Settings.permissions.users.listview.header.subtitle',\n defaultMessage: 'All the users who have access to the Strapi admin panel',\n })}\n />\n {canRead && (\n <ActionLayout\n startActions={\n <>\n <SearchURLQuery\n label={formatMessage(\n { id: 'app.component.search.label', defaultMessage: 'Search for {target}' },\n { target: title }\n )}\n />\n <Filters displayedFilters={displayedFilters} />\n </>\n }\n />\n )}\n\n <ContentLayout canRead={canRead}>\n {!canRead && <NoPermissions />}\n {/* TODO: Replace error message with something better */}\n {isError && <div>TODO: An error occurred</div>}\n {canRead && (\n <>\n <DynamicTable\n contentType=\"Users\"\n isLoading={isLoading}\n onConfirmDeleteAll={deleteAllMutation.mutateAsync}\n onConfirmDelete={(id) => deleteAllMutation.mutateAsync([id])}\n headers={headers}\n rows={users}\n withBulkActions\n withMainAction={canDelete}\n >\n <TableRows\n canDelete={canDelete}\n headers={headers}\n rows={users}\n withBulkActions\n withMainAction={canDelete}\n />\n </DynamicTable>\n\n {pagination && <PaginationFooter pagination={pagination} />}\n </>\n )}\n </ContentLayout>\n {isModalOpened && (\n <ModalForm\n onSuccess={async () => {\n await refetchAdminUsers();\n await queryClient.refetchQueries(EE_LICENSE_LIMIT_QUERY_KEY);\n }}\n onToggle={handleToggle}\n />\n )}\n </Main>\n );\n};\n\n// component which determines whether this page should render the CE or EE page\nconst UsersListPageSwitch = () => {\n const UsersListPage = useEnterprise(\n UserListPageCE,\n async () =>\n // eslint-disable-next-line import/no-cycle\n (await import('../../../../../../../ee/admin/src/pages/SettingsPage/pages/Users/ListPage'))\n .UserListPageEE\n );\n\n // block rendering until the EE component is fully loaded\n if (!UsersListPage) {\n return null;\n }\n\n return <UsersListPage />;\n};\n\nexport default UsersListPageSwitch;\n","import React from 'react';\n\nimport { CheckPagePermissions } from '@strapi/helper-plugin';\nimport { useSelector } from 'react-redux';\n\nimport { selectAdminPermissions } from '../../../../../selectors';\nimport ListPage from '../ListPage';\n\nconst ProtectedListPage = () => {\n const permissions = useSelector(selectAdminPermissions);\n\n return (\n <CheckPagePermissions permissions={permissions.settings.users.main}>\n <ListPage />\n </CheckPagePermissions>\n );\n};\n\nexport default ProtectedListPage;\n"],"names":["qs","ListPage"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index-a6f1ccf6.mjs","sources":["../../admin/src/pages/SettingsPage/pages/Users/ListPage/CreateAction/index.js","../../admin/src/pages/SettingsPage/pages/Users/ListPage/DynamicTable/TableRows/index.js","../../admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/constants.js","../../admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/index.js","../../admin/src/pages/SettingsPage/pages/Users/ListPage/PaginationFooter/index.js","../../admin/src/pages/SettingsPage/pages/Users/ListPage/utils/displayedFilters.js","../../admin/src/pages/SettingsPage/pages/Users/ListPage/utils/tableHeaders.js","../../admin/src/pages/SettingsPage/pages/Users/ListPage/index.js","../../admin/src/pages/SettingsPage/pages/Users/ProtectedListPage/index.js"],"sourcesContent":["import React from 'react';\n\nimport { Button } from '@strapi/design-system';\nimport { Envelop } from '@strapi/icons';\nimport PropTypes from 'prop-types';\nimport { useIntl } from 'react-intl';\n\nexport const CreateActionCE = ({ onClick }) => {\n const { formatMessage } = useIntl();\n\n return (\n <Button onClick={onClick} startIcon={<Envelop />} size=\"S\">\n {formatMessage({\n id: 'Settings.permissions.users.create',\n defaultMessage: 'Invite new user',\n })}\n </Button>\n );\n};\n\nCreateActionCE.propTypes = {\n onClick: PropTypes.func.isRequired,\n};\n","import React from 'react';\n\nimport {\n BaseCheckbox,\n Box,\n Flex,\n IconButton,\n Tbody,\n Td,\n Tr,\n Typography,\n} from '@strapi/design-system';\nimport { onRowClick, stopPropagation } from '@strapi/helper-plugin';\nimport { Pencil, Trash } from '@strapi/icons';\nimport PropTypes from 'prop-types';\nimport { useIntl } from 'react-intl';\nimport { useHistory } from 'react-router-dom';\n\nimport { getFullName } from '../../../../../../../utils/getFullName';\n\nconst TableRows = ({\n canDelete,\n headers,\n entriesToDelete,\n onClickDelete,\n onSelectRow,\n withMainAction,\n withBulkActions,\n rows,\n}) => {\n const {\n push,\n location: { pathname },\n } = useHistory();\n const { formatMessage } = useIntl();\n\n return (\n <Tbody>\n {rows.map((data) => {\n const isChecked = entriesToDelete.findIndex((id) => id === data.id) !== -1;\n\n return (\n <Tr\n key={data.id}\n {...onRowClick({\n fn: () => push(`${pathname}/${data.id}`),\n condition: withBulkActions,\n })}\n >\n {withMainAction && (\n <Td {...stopPropagation}>\n <BaseCheckbox\n aria-label={formatMessage(\n {\n id: 'app.component.table.select.one-entry',\n defaultMessage: `Select {target}`,\n },\n { target: getFullName(data.firstname, data.lastname) }\n )}\n checked={isChecked}\n onChange={() => {\n onSelectRow({ name: data.id, value: !isChecked });\n }}\n />\n </Td>\n )}\n {headers.map(({ key, cellFormatter, name, ...rest }) => {\n return (\n <Td key={key}>\n {typeof cellFormatter === 'function' ? (\n cellFormatter(data, { key, name, formatMessage, ...rest })\n ) : (\n <Typography textColor=\"neutral800\">{data[name] || '-'}</Typography>\n )}\n </Td>\n );\n })}\n\n {withBulkActions && (\n <Td>\n <Flex justifyContent=\"end\">\n <IconButton\n onClick={() => push(`${pathname}/${data.id}`)}\n label={formatMessage(\n { id: 'app.component.table.edit', defaultMessage: 'Edit {target}' },\n { target: getFullName(data.firstname, data.lastname) }\n )}\n noBorder\n icon={<Pencil />}\n />\n\n {canDelete && (\n <Box paddingLeft={1} {...stopPropagation}>\n <IconButton\n onClick={() => onClickDelete(data.id)}\n label={formatMessage(\n { id: 'global.delete-target', defaultMessage: 'Delete {target}' },\n { target: getFullName(data.firstname, data.lastname) }\n )}\n noBorder\n icon={<Trash />}\n />\n </Box>\n )}\n </Flex>\n </Td>\n )}\n </Tr>\n );\n })}\n </Tbody>\n );\n};\n\nTableRows.defaultProps = {\n canDelete: false,\n entriesToDelete: [],\n onClickDelete() {},\n onSelectRow() {},\n rows: [],\n withBulkActions: false,\n withMainAction: false,\n};\n\nTableRows.propTypes = {\n canDelete: PropTypes.bool,\n entriesToDelete: PropTypes.array,\n headers: PropTypes.array.isRequired,\n onClickDelete: PropTypes.func,\n onSelectRow: PropTypes.func,\n rows: PropTypes.array,\n withBulkActions: PropTypes.bool,\n withMainAction: PropTypes.bool,\n};\n\nexport default TableRows;\n","import { translatedErrors } from '@strapi/helper-plugin';\nimport * as yup from 'yup';\n\nexport const FORM_INITIAL_VALUES = {\n firstname: '',\n lastname: '',\n email: '',\n roles: [],\n};\n\nexport const ROLE_LAYOUT = [];\n\nexport const FORM_LAYOUT = [\n [\n {\n intlLabel: {\n id: 'Auth.form.firstname.label',\n defaultMessage: 'First name',\n },\n name: 'firstname',\n placeholder: {\n id: 'Auth.form.firstname.placeholder',\n defaultMessage: 'e.g. Kai',\n },\n type: 'text',\n size: {\n col: 6,\n xs: 12,\n },\n required: true,\n },\n {\n intlLabel: {\n id: 'Auth.form.lastname.label',\n defaultMessage: 'Last name',\n },\n name: 'lastname',\n placeholder: {\n id: 'Auth.form.lastname.placeholder',\n defaultMessage: 'e.g. Doe',\n },\n type: 'text',\n size: {\n col: 6,\n xs: 12,\n },\n },\n ],\n [\n {\n intlLabel: {\n id: 'Auth.form.email.label',\n defaultMessage: 'Email',\n },\n name: 'email',\n placeholder: {\n id: 'Auth.form.email.placeholder',\n defaultMessage: 'e.g. kai.doe@strapi.io',\n },\n type: 'email',\n size: {\n col: 6,\n xs: 12,\n },\n required: true,\n },\n ],\n];\n\nexport const FORM_SCHEMA = yup.object().shape({\n firstname: yup.string().trim().required(translatedErrors.required),\n lastname: yup.string(),\n email: yup.string().email(translatedErrors.email).required(translatedErrors.required),\n roles: yup.array().min(1, translatedErrors.required).required(translatedErrors.required),\n});\n\nexport const STEPPER = {\n create: {\n buttonSubmitLabel: {\n id: 'app.containers.Users.ModalForm.footer.button-success',\n defaultMessage: 'Invite user',\n },\n isDisabled: false,\n next: 'magic-link',\n },\n 'magic-link': {\n buttonSubmitLabel: { id: 'global.finish', defaultMessage: 'Finish' },\n isDisabled: true,\n next: null,\n },\n};\n","import React, { useState } from 'react';\n\nimport {\n Box,\n Button,\n Flex,\n Grid,\n GridItem,\n ModalBody,\n ModalFooter,\n ModalHeader,\n ModalLayout,\n Typography,\n} from '@strapi/design-system';\nimport { Breadcrumbs, Crumb } from '@strapi/design-system/v2';\nimport {\n Form,\n GenericInput,\n useFetchClient,\n useNotification,\n useOverlayBlocker,\n} from '@strapi/helper-plugin';\nimport { Formik } from 'formik';\nimport PropTypes from 'prop-types';\nimport { useIntl } from 'react-intl';\nimport { useMutation } from 'react-query';\n\nimport { useEnterprise } from '../../../../../../hooks/useEnterprise';\nimport { MagicLinkCE } from '../../components/MagicLink';\nimport SelectRoles from '../../components/SelectRoles';\n\nimport { FORM_LAYOUT, FORM_SCHEMA, FORM_INITIAL_VALUES, ROLE_LAYOUT, STEPPER } from './constants';\n\nconst ModalForm = ({ onSuccess, onToggle }) => {\n const [currentStep, setStep] = useState('create');\n const [isSubmitting, setIsSubmitting] = useState(false);\n const [registrationToken, setRegistrationToken] = useState(null);\n const { formatMessage } = useIntl();\n const toggleNotification = useNotification();\n const { lockApp, unlockApp } = useOverlayBlocker();\n const { post } = useFetchClient();\n const roleLayout = useEnterprise(\n ROLE_LAYOUT,\n async () =>\n (\n await import(\n '../../../../../../../../ee/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/constants'\n )\n ).ROLE_LAYOUT,\n {\n combine(ceRoles, eeRoles) {\n return [...ceRoles, eeRoles];\n },\n\n defaultValue: [],\n }\n );\n const initialValues = useEnterprise(\n FORM_INITIAL_VALUES,\n async () =>\n (\n await import(\n '../../../../../../../../ee/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/constants'\n )\n ).FORM_INITIAL_VALUES,\n {\n combine(ceValues, eeValues) {\n return {\n ...ceValues,\n ...eeValues,\n };\n },\n\n defaultValue: FORM_INITIAL_VALUES,\n }\n );\n const MagicLink = useEnterprise(\n MagicLinkCE,\n async () =>\n (\n await import(\n '../../../../../../../../ee/admin/src/pages/SettingsPage/pages/Users/components/MagicLink'\n )\n ).MagicLinkEE\n );\n const postMutation = useMutation(\n (body) => {\n return post('/admin/users', body);\n },\n {\n async onSuccess({ data }) {\n setRegistrationToken(data.data.registrationToken);\n\n await onSuccess();\n\n goNext();\n setIsSubmitting(false);\n },\n onError(err) {\n setIsSubmitting(false);\n\n toggleNotification({\n type: 'warning',\n message: { id: 'notification.error', defaultMessage: 'An error occured' },\n });\n\n throw err;\n },\n onSettled() {\n unlockApp();\n },\n }\n );\n\n const headerTitle = formatMessage({\n id: 'Settings.permissions.users.create',\n defaultMessage: 'Invite new user',\n });\n\n const handleSubmit = async (body, { setErrors }) => {\n lockApp();\n setIsSubmitting(true);\n try {\n await postMutation.mutateAsync(body);\n } catch (err) {\n unlockApp();\n\n if (err?.response?.data?.error.message === 'Email already taken') {\n setErrors({ email: err.response.data.error.message });\n }\n }\n };\n\n const goNext = () => {\n if (next) {\n setStep(next);\n } else {\n onToggle();\n }\n };\n\n const { buttonSubmitLabel, isDisabled, next } = STEPPER[currentStep];\n const endActions =\n currentStep === 'create' ? (\n <Button type=\"submit\" loading={isSubmitting}>\n {formatMessage(buttonSubmitLabel)}\n </Button>\n ) : (\n <Button type=\"button\" loading={isSubmitting} onClick={onToggle}>\n {formatMessage(buttonSubmitLabel)}\n </Button>\n );\n\n // block rendering until the EE component is fully loaded\n if (!MagicLink) {\n return null;\n }\n\n return (\n <ModalLayout onClose={onToggle} labelledBy=\"title\">\n <ModalHeader>\n {/**\n * TODO: this is not semantically correct and should be amended.\n */}\n <Breadcrumbs label={headerTitle}>\n <Crumb isCurrent>{headerTitle}</Crumb>\n </Breadcrumbs>\n </ModalHeader>\n <Formik\n enableReinitialize\n initialValues={initialValues}\n onSubmit={handleSubmit}\n validationSchema={FORM_SCHEMA}\n validateOnChange={false}\n >\n {({ errors, handleChange, values }) => {\n return (\n <Form>\n <ModalBody>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6}>\n {currentStep !== 'create' && <MagicLink registrationToken={registrationToken} />}\n <Box>\n <Typography variant=\"beta\" as=\"h2\">\n {formatMessage({\n id: 'app.components.Users.ModalCreateBody.block-title.details',\n defaultMessage: 'User details',\n })}\n </Typography>\n <Box paddingTop={4}>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={1}>\n <Grid gap={5}>\n {FORM_LAYOUT.map((row) => {\n return row.map((input) => {\n return (\n <GridItem key={input.name} {...input.size}>\n <GenericInput\n {...input}\n disabled={isDisabled}\n error={errors[input.name]}\n onChange={handleChange}\n value={values[input.name]}\n />\n </GridItem>\n );\n });\n })}\n </Grid>\n </Flex>\n </Box>\n </Box>\n <Box>\n <Typography variant=\"beta\" as=\"h2\">\n {formatMessage({\n id: 'global.roles',\n defaultMessage: \"User's role\",\n })}\n </Typography>\n <Box paddingTop={4}>\n <Grid gap={5}>\n <GridItem col={6} xs={12}>\n <SelectRoles\n disabled={isDisabled}\n error={errors.roles}\n onChange={handleChange}\n value={values.roles}\n />\n </GridItem>\n {roleLayout.map((row) => {\n return row.map((input) => {\n return (\n <GridItem key={input.name} {...input.size}>\n <GenericInput\n {...input}\n disabled={isDisabled}\n onChange={handleChange}\n value={values[input.name]}\n />\n </GridItem>\n );\n });\n })}\n </Grid>\n </Box>\n </Box>\n </Flex>\n </ModalBody>\n <ModalFooter\n startActions={\n <Button variant=\"tertiary\" onClick={onToggle} type=\"button\">\n {formatMessage({\n id: 'app.components.Button.cancel',\n defaultMessage: 'Cancel',\n })}\n </Button>\n }\n endActions={endActions}\n />\n </Form>\n );\n }}\n </Formik>\n </ModalLayout>\n );\n};\n\nModalForm.propTypes = {\n onToggle: PropTypes.func.isRequired,\n onSuccess: PropTypes.func.isRequired,\n};\n\nexport default ModalForm;\n","import React from 'react';\n\nimport { Box, Flex } from '@strapi/design-system';\nimport { PageSizeURLQuery, PaginationURLQuery } from '@strapi/helper-plugin';\nimport PropTypes from 'prop-types';\n\nconst PaginationFooter = ({ pagination }) => {\n return (\n <Box paddingTop={4}>\n <Flex alignItems=\"flex-end\" justifyContent=\"space-between\">\n <PageSizeURLQuery />\n <PaginationURLQuery pagination={pagination} />\n </Flex>\n </Box>\n );\n};\n\nPaginationFooter.defaultProps = {\n pagination: {\n pageCount: 0,\n pageSize: 10,\n total: 0,\n },\n};\n\nPaginationFooter.propTypes = {\n pagination: PropTypes.shape({\n page: PropTypes.number,\n pageCount: PropTypes.number,\n pageSize: PropTypes.number,\n total: PropTypes.number,\n }),\n};\n\nexport default PaginationFooter;\n","const displayedFilters = [\n {\n name: 'firstname',\n metadatas: { label: 'Firstname' },\n fieldSchema: { type: 'string' },\n },\n {\n name: 'lastname',\n metadatas: { label: 'Lastname' },\n fieldSchema: { type: 'string' },\n },\n {\n name: 'email',\n metadatas: { label: 'Email' },\n fieldSchema: { type: 'email' },\n },\n {\n name: 'username',\n metadatas: { label: 'Username' },\n fieldSchema: { type: 'string' },\n },\n {\n name: 'isActive',\n metadatas: { label: 'Active user' },\n fieldSchema: { type: 'boolean' },\n },\n];\n\nexport default displayedFilters;\n","import React from 'react';\n\nimport { Flex, Typography } from '@strapi/design-system';\nimport { Status } from '@strapi/helper-plugin';\n\nconst tableHeaders = [\n {\n name: 'firstname',\n key: 'firstname',\n metadatas: {\n label: {\n id: 'Settings.permissions.users.firstname',\n defaultMessage: 'Firstname',\n },\n sortable: true,\n },\n },\n {\n name: 'lastname',\n key: 'lastname',\n metadatas: {\n label: {\n id: 'Settings.permissions.users.lastname',\n defaultMessage: 'Lastname',\n },\n sortable: true,\n },\n },\n {\n key: 'email',\n name: 'email',\n metadatas: {\n label: { id: 'Settings.permissions.users.email', defaultMessage: 'Email' },\n sortable: true,\n },\n },\n {\n key: 'roles',\n name: 'roles',\n metadatas: {\n label: {\n id: 'Settings.permissions.users.roles',\n defaultMessage: 'Roles',\n },\n sortable: false,\n },\n cellFormatter({ roles }, { formatMessage }) {\n return (\n <Typography textColor=\"neutral800\">\n {roles\n .map((role) =>\n formatMessage({\n id: `Settings.permissions.users.${role.code}`,\n defaultMessage: role.name,\n })\n )\n .join(',\\n')}\n </Typography>\n );\n },\n },\n {\n key: 'username',\n name: 'username',\n metadatas: {\n label: {\n id: 'Settings.permissions.users.username',\n defaultMessage: 'Username',\n },\n sortable: true,\n },\n },\n {\n key: 'isActive',\n name: 'isActive',\n metadatas: {\n label: {\n id: 'Settings.permissions.users.user-status',\n defaultMessage: 'User status',\n },\n sortable: false,\n },\n cellFormatter({ isActive }, { formatMessage }) {\n return (\n <Flex>\n <Status isActive={isActive} variant={isActive ? 'success' : 'danger'} />\n <Typography textColor=\"neutral800\">\n {formatMessage({\n id: isActive\n ? 'Settings.permissions.users.active'\n : 'Settings.permissions.users.inactive',\n defaultMessage: isActive ? 'Active' : 'Inactive',\n })}\n </Typography>\n </Flex>\n );\n },\n },\n];\n\nexport default tableHeaders;\n","import React, { useState } from 'react';\n\nimport { ActionLayout, ContentLayout, HeaderLayout, Main } from '@strapi/design-system';\nimport {\n DynamicTable,\n NoPermissions,\n SearchURLQuery,\n SettingsPageTitle,\n useAPIErrorHandler,\n useFetchClient,\n useFocusWhenNavigate,\n useNotification,\n useRBAC,\n} from '@strapi/helper-plugin';\nimport qs from 'qs';\nimport { useIntl } from 'react-intl';\nimport { useMutation, useQueryClient } from 'react-query';\nimport { useSelector } from 'react-redux';\nimport { useLocation } from 'react-router-dom';\n\nimport { useAdminUsers } from '../../../../../hooks/useAdminUsers';\nimport { useEnterprise } from '../../../../../hooks/useEnterprise';\nimport { selectAdminPermissions } from '../../../../../selectors';\nimport Filters from '../../../components/Filters';\n\nimport { CreateActionCE } from './CreateAction';\nimport TableRows from './DynamicTable/TableRows';\nimport ModalForm from './ModalForm';\nimport PaginationFooter from './PaginationFooter';\nimport displayedFilters from './utils/displayedFilters';\nimport tableHeaders from './utils/tableHeaders';\n\nconst EE_LICENSE_LIMIT_QUERY_KEY = ['ee', 'license-limit-info'];\n\nexport const UserListPageCE = () => {\n const { post } = useFetchClient();\n const { formatAPIError } = useAPIErrorHandler();\n const [isModalOpened, setIsModalOpen] = useState(false);\n const permissions = useSelector(selectAdminPermissions);\n const {\n allowedActions: { canCreate, canDelete, canRead },\n } = useRBAC(permissions.settings.users);\n const queryClient = useQueryClient();\n const toggleNotification = useNotification();\n const { formatMessage } = useIntl();\n const { search } = useLocation();\n useFocusWhenNavigate();\n const {\n users,\n pagination,\n isError,\n isLoading,\n refetch: refetchAdminUsers,\n } = useAdminUsers(qs.parse(search, { ignoreQueryPrefix: true }), {\n cacheTime: 0,\n enabled: canRead,\n });\n const CreateAction = useEnterprise(\n CreateActionCE,\n async () =>\n (\n await import(\n '../../../../../../../ee/admin/src/pages/SettingsPage/pages/Users/ListPage/CreateAction'\n )\n ).CreateActionEE\n );\n\n const headers = tableHeaders.map((header) => ({\n ...header,\n metadatas: {\n ...header.metadatas,\n label: formatMessage(header.metadatas.label),\n },\n }));\n\n const title = formatMessage({\n id: 'global.users',\n defaultMessage: 'Users',\n });\n\n const handleToggle = () => {\n setIsModalOpen((prev) => !prev);\n };\n\n const deleteAllMutation = useMutation(\n async (ids) => {\n await post('/admin/users/batch-delete', { ids });\n },\n {\n async onSuccess() {\n await refetchAdminUsers();\n\n // Toggle enabled/ disabled state on the invite button\n await queryClient.refetchQueries(EE_LICENSE_LIMIT_QUERY_KEY);\n },\n onError(error) {\n toggleNotification({\n type: 'warning',\n message: {\n id: 'notification.error',\n message: formatAPIError(error),\n defaultMessage: 'An error occured',\n },\n });\n },\n }\n );\n\n // block rendering until the EE component is fully loaded\n if (!CreateAction) {\n return null;\n }\n\n return (\n <Main aria-busy={isLoading}>\n <SettingsPageTitle name=\"Users\" />\n <HeaderLayout\n primaryAction={canCreate && <CreateAction onClick={handleToggle} />}\n title={title}\n subtitle={formatMessage({\n id: 'Settings.permissions.users.listview.header.subtitle',\n defaultMessage: 'All the users who have access to the Strapi admin panel',\n })}\n />\n {canRead && (\n <ActionLayout\n startActions={\n <>\n <SearchURLQuery\n label={formatMessage(\n { id: 'app.component.search.label', defaultMessage: 'Search for {target}' },\n { target: title }\n )}\n />\n <Filters displayedFilters={displayedFilters} />\n </>\n }\n />\n )}\n\n <ContentLayout canRead={canRead}>\n {!canRead && <NoPermissions />}\n {/* TODO: Replace error message with something better */}\n {isError && <div>TODO: An error occurred</div>}\n {canRead && (\n <>\n <DynamicTable\n contentType=\"Users\"\n isLoading={isLoading}\n onConfirmDeleteAll={deleteAllMutation.mutateAsync}\n onConfirmDelete={(id) => deleteAllMutation.mutateAsync([id])}\n headers={headers}\n rows={users}\n withBulkActions\n withMainAction={canDelete}\n >\n <TableRows\n canDelete={canDelete}\n headers={headers}\n rows={users}\n withBulkActions\n withMainAction={canDelete}\n />\n </DynamicTable>\n\n {pagination && <PaginationFooter pagination={pagination} />}\n </>\n )}\n </ContentLayout>\n {isModalOpened && (\n <ModalForm\n onSuccess={async () => {\n await refetchAdminUsers();\n await queryClient.refetchQueries(EE_LICENSE_LIMIT_QUERY_KEY);\n }}\n onToggle={handleToggle}\n />\n )}\n </Main>\n );\n};\n\n// component which determines whether this page should render the CE or EE page\nconst UsersListPageSwitch = () => {\n const UsersListPage = useEnterprise(\n UserListPageCE,\n async () =>\n // eslint-disable-next-line import/no-cycle\n (await import('../../../../../../../ee/admin/src/pages/SettingsPage/pages/Users/ListPage'))\n .UserListPageEE\n );\n\n // block rendering until the EE component is fully loaded\n if (!UsersListPage) {\n return null;\n }\n\n return <UsersListPage />;\n};\n\nexport default UsersListPageSwitch;\n","import React from 'react';\n\nimport { CheckPagePermissions } from '@strapi/helper-plugin';\nimport { useSelector } from 'react-redux';\n\nimport { selectAdminPermissions } from '../../../../../selectors';\nimport ListPage from '../ListPage';\n\nconst ProtectedListPage = () => {\n const permissions = useSelector(selectAdminPermissions);\n\n return (\n <CheckPagePermissions permissions={permissions.settings.users.main}>\n <ListPage />\n </CheckPagePermissions>\n );\n};\n\nexport default ProtectedListPage;\n"],"names":["qs","ListPage"],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import React__default, { useEffect } from "react";
|
|
|
3
3
|
import { getFetchClient, useAppInfo, useNotification, useOverlayBlocker, useFocusWhenNavigate, SettingsPageTitle, Link, LoadingIndicatorPage, Form, GenericInput, auth, useRBAC } from "@strapi/helper-plugin";
|
|
4
4
|
import { useSelector } from "react-redux";
|
|
5
5
|
import { useRouteMatch, useHistory, useLocation, Redirect } from "react-router-dom";
|
|
6
|
-
import { g as getFullName, s as selectAdminPermissions } from "./AuthenticatedApp-
|
|
6
|
+
import { g as getFullName, s as selectAdminPermissions } from "./AuthenticatedApp-da1595e9.mjs";
|
|
7
7
|
import { Main, HeaderLayout, Button, ContentLayout, Box, Flex, Typography, Grid, GridItem } from "@strapi/design-system";
|
|
8
8
|
import { Check, ArrowLeft } from "@strapi/icons";
|
|
9
9
|
import { Formik } from "formik";
|
|
@@ -13,9 +13,9 @@ import pick from "lodash/pick";
|
|
|
13
13
|
import PropTypes from "prop-types";
|
|
14
14
|
import { useIntl } from "react-intl";
|
|
15
15
|
import { u as useAdminUsers } from "./useAdminUsers-09f86a58.mjs";
|
|
16
|
-
import { p as useEnterprise } from "./index-
|
|
16
|
+
import { p as useEnterprise } from "./index-b6ee936b.mjs";
|
|
17
17
|
import { f as formatAPIErrors } from "./formatAPIErrors-db6ed675.mjs";
|
|
18
|
-
import { M as MagicLinkCE, S as SelectRoles } from "./index-
|
|
18
|
+
import { M as MagicLinkCE, S as SelectRoles } from "./index-be3e5f69.mjs";
|
|
19
19
|
import { a as schema } from "./edit-923cefa0.mjs";
|
|
20
20
|
import "react-query";
|
|
21
21
|
import "semver/functions/lt";
|
|
@@ -169,7 +169,7 @@ const EditPage = ({ canUpdate }) => {
|
|
|
169
169
|
const { lockApp, unlockApp } = useOverlayBlocker();
|
|
170
170
|
const MagicLink = useEnterprise(
|
|
171
171
|
MagicLinkCE,
|
|
172
|
-
async () => (await import("./index-
|
|
172
|
+
async () => (await import("./index-f52ae628.mjs")).MagicLinkEE
|
|
173
173
|
);
|
|
174
174
|
useFocusWhenNavigate();
|
|
175
175
|
const {
|
|
@@ -409,4 +409,4 @@ const ProtectedEditPage = () => {
|
|
|
409
409
|
export {
|
|
410
410
|
ProtectedEditPage as default
|
|
411
411
|
};
|
|
412
|
-
//# sourceMappingURL=index-
|
|
412
|
+
//# sourceMappingURL=index-a9625818.mjs.map
|