ethyca-fides 2.72.4b1__py2.py3-none-any.whl → 2.73.0__py2.py3-none-any.whl
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.
Potentially problematic release.
This version of ethyca-fides might be problematic. Click here for more details.
- {ethyca_fides-2.72.4b1.dist-info → ethyca_fides-2.73.0.dist-info}/METADATA +1 -1
- {ethyca_fides-2.72.4b1.dist-info → ethyca_fides-2.73.0.dist-info}/RECORD +247 -245
- fides/_version.py +3 -3
- fides/api/service/async_dsr/strategies/async_dsr_strategy_polling.py +1 -0
- fides/api/service/connectors/saas_connector.py +44 -42
- fides/api/service/privacy_request/request_service.py +1 -1
- fides/api/util/saas_util.py +27 -1
- fides/config/execution_settings.py +1 -1
- fides/ui-build/static/admin/404.html +1 -1
- fides/ui-build/static/admin/_next/static/6kEWO-NXzxn1tvUedYFei/_buildManifest.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{1099-1959c2e271a9588d.js → 1099-fa8b82f521b23cce.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{1115-d8f2a0953960d648.js → 1115-d7ce851b36722c41.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{1437-c3c8f421fc8d9bf7.js → 1437-9dd64c20d38667df.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{155-17c9584d4944ce7e.js → 155-1c80b19f58f44a0c.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{1817-877489cf6bb7185c.js → 1817-0de0312294019817.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{1975.50599b6774562644.js → 1975.6ca0e76b5a3d1955.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{2040-b9e38ecc741148fc.js → 2040-a18cc21821e2d121.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{2397-39c59d3fdf13042e.js → 2397-16820a09e8ebfe33.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/2921-a5dac2eacdcc32ff.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{3377-6e7bdffc46ffe15d.js → 3377-c2c9eb177bec8719.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{3696-84990aa1baa21fad.js → 3696-21e3dec6c2023875.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{3700-bde60c51fb2606a8.js → 3700-a2903cd95b8a27cb.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{3772-3c849a72d0129ae4.js → 3772-bb84842df51d3f3f.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/3873-d759bbe7137ae8c2.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{3923-6e82c845722d09ce.js → 3923-7f0aa36c9e09cedf.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{401-63df8127ab5e8b1a.js → 401-874303feb3899562.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{4496-6ff88def38644170.js → 4496-903c81292ffd8f91.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/4817-d0cc100f259b3c2e.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{5185-e662084251450372.js → 5185-fc171b6acce9f915.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{5258-004011f620451d36.js → 5258-cf0d2c4c4d55a94b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{5279-28226a4eaaba9e56.js → 5279-8637d735471ec7f1.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{549-cb23e43b4fe4750e.js → 549-2d9bde37e5fe13eb.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{5643-fb6082b8ecb6c0d9.js → 5643-48a5e0ad8b9fc3f7.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{5783-0171fca3154d4812.js → 5783-63912bab7f80b0f8.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{6277-2d53a51b7727d7b1.js → 6277-ec0e3fa4e4614098.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{6315-08729296f49e6898.js → 6315-79a1506e01f2f92b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/6853-c348f6e95f987cbf.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{6954-d909264a2674ea4e.js → 6954-c44ac4e70e777c2f.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/7059-3f2641e3130b4ef8.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{7245-305e4a8a8be70fad.js → 7245-120f536e09decb85.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{7476-2e1176b163688789.js → 7476-4234fb244676ec13.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{7488-502aeb16e3a27d42.js → 7488-2db0992474f8056e.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{7630-bb44ecce0b2146ed.js → 7630-d7bd74d0cfdb22df.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{7773-1303b235272f3dbf.js → 7773-6dce6187fe2c6984.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{796-d30fca0fe341916b.js → 796-fae64888b8b2f369.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{8011-866a514d483aaaac.js → 8011-6e40c969c9fa7d35.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{8212-334e971822270277.js → 8212-18d8da0f9208f978.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/8373-24379b7d98e6922e.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{9046-aaba9b46ed37f1e2.js → 9046-6428eac9f38b3886.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{9330-38845205515126c3.js → 9330-540a113903cb3c28.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{9676.1ea49d4b6e0541f2.js → 9676.704cc210f59d0083.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/9682-a3b2fb1a2df1c948.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{9826-fd27a5fd2ed44c3d.js → 9826-aecc5ddec86989dc.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{9899-ea04d345468691b3.js → 9899-303921e3d0697960.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{9965-bd9d95c187ddcda5.js → 9965-6906ffdaef0f0d69.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{404-5cffe00870fefd79.js → 404-c31cef0ce3fbeebf.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{_app-32ece8369a437df8.js → _app-5fd4e06224960492.js} +7 -7
- fides/ui-build/static/admin/_next/static/chunks/pages/add-systems/{manual-02f6ef0e6a161961.js → manual-a5865f42aafbe1f8.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/add-systems/{multiple-4458172cd75babb0.js → multiple-f706664770dd3e7f.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/add-systems-3f0d8698f01aabc5.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/configure/{add-vendors-1a821b298d86a22d.js → add-vendors-fcd031b2b775e4f3.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/{configure-6f35d961da39f539.js → configure-0bd2eb0110873c4d.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-experience/{[id]-4caea1cb619aad01.js → [id]-0dd17c74a6cc17ff.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/{privacy-experience-0311c558666456cc.js → privacy-experience-ae8dff75e1c6c413.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-notices/{[id]-b062d2a4a8102ce1.js → [id]-84ba8b9947b9af0a.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-notices/{new-524a3e86b2568398.js → new-f03d1d0df4661a33.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/{privacy-notices-ca99b84429667b5f.js → privacy-notices-5a553b4bdbf85aa9.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/{properties-15dac492b739cf83.js → properties-5cba88e6839a087d.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/reporting-f2690c381c1d1a52.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/{consent-7496b13734f49085.js → consent-289d21aa6c42828b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects/{[projectUrn]-96ec3aa63de556ec.js → [projectUrn]-cb56d56b9d918682.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/{projects-04bb0d25beccc031.js → projects-ccb66ba6d1ad93fc.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/{resources-e436f291ccce41c7.js → resources-ecb2d925d75dfe1e.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{data-catalog-04a493b26a5dfdaf.js → data-catalog-75403467491a251b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/datastore/[monitorId]-e46e017a3919f94e.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/datastore-1b0ed3b3ceedfd94.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/website/[monitorId]/[systemId]-71cf0b06b3d5a326.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/website/[monitorId]-cc6b359fb4968bf0.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/website-60ad14c879b4fe27.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center-cbff5db86e6951c4.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/{activity-17887a476280c480.js → activity-7dded115499a4a4a.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{datamap-eaae94fb326cc676.js → datamap-d1bb19fe4ef393dc.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/[collectionName]/{[...subfieldNames]-d2af9a78b22a3b33.js → [...subfieldNames]-58c3f4c0b490264b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/{[collectionName]-4b711c3a257f4754.js → [collectionName]-74290432e74fcdc5.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/{[datasetId]-cf0b5a30b3b37e20.js → [datasetId]-8dad45f070a06609.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/{new-b651d5f466e4019d.js → new-6aed6dc24c3be001.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{dataset-35be9dda6a1114ce.js → dataset-fdaec997c1b0753f.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection/{[id]-3fcfe1430c11e0c7.js → [id]-63c4805e40673c60.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection/{new-c967e9f37709c645.js → new-b5a49743387eecef.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{datastore-connection-a4abc6ee516b13d4.js → datastore-connection-8f0804d9a38688a4.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{index-37c1abb674e1aea6.js → index-363b091a4d1d70ad.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/integrations/[id]-3b7f47985452e01d.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/{integrations-514131e87ac65082.js → integrations-b0da32fe3564c129.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/new-privacy-requests-d1152cbc3c1bbbbb.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/digests/{[id]-3306676f61000f3b.js → [id]-0e4e4e7110362022.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/digests/{new-798fb0ca1205e684.js → new-2e15f6272e9aaeb6.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/{digests-20c129ac4a57f2e5.js → digests-65626dfcfacdc605.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/providers/{[key]-749898f45b528480.js → [key]-768c4e2f6b05304c.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/providers/{new-2798b151240303c5.js → new-2d57a70e4d32e651.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/{providers-4ebdfd1e0e4bfbe6.js → providers-83f78354fa34bffe.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/templates/{[id]-40d9f4a82335cb5c.js → [id]-1b31764f520fbbc5.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/templates/{add-template-c38096d698ebfaa9.js → add-template-4c74456b6677bf07.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/templates-5deb80abd6156f7f.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/{notifications-9586f35322edb190.js → notifications-8d8716dda9a6f277.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/ant-components-52b1572442a20ab4.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/AntForm-a0437ba647d59799.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/FormikAntFormItem-87285c544450ec46.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/FormikControlled-57997dbd451a6eed.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/FormikField-65009783e0404153.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/forms-eafef007c179340f.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/{table-migration-e58cac7ad960a847.js → table-migration-7933a824a45d0ee6.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/[id]-27c56466eab98b15.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/{storage-a948294b5b2ff677.js → storage-16f77a6291bb02fe.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/{configure-f9af184bf0a04729.js → configure-d2b3293ab496f7bc.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests-af4f48d10926e4a4.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/properties/{[id]-7545993189dc1bb1.js → [id]-dd3c3d780533a9c2.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/properties/{add-property-8cc4b3170f7851f9.js → add-property-d1af260c3ddbf68b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{properties-83b4002f896071b3.js → properties-9bb7fe3577402008.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/reporting/datamap-33ce744d07982c0f.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/consent/[configuration_id]/[purpose_id]-35626e9d8e0a3ca2.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{consent-2c71096d348013aa.js → consent-39b5142099ed8705.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{custom-fields-72e6a6394b1c58c2.js → custom-fields-64c638ea33bb3ff9.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{domain-records-b90fb07aa18a396b.js → domain-records-3843fbaf5bc433f1.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{domains-eea6685e7aa5953c.js → domains-ea549fabce96fde4.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{email-templates-4a1985c24bf2dc90.js → email-templates-0fe318a9dfc1f593.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{locations-06780a5a03c51fb0.js → locations-c42c856510cad6fd.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{organization-5e8af0aeb40cbadd.js → organization-e4c552a5797c3fa5.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{privacy-requests-b3156b0882717119.js → privacy-requests-2790d31b59cc3c74.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{regulations-825f705fc04c9262.js → regulations-3c608512c415fca4.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/systems/configure/[id]/{test-datasets-4bfe49a2d99a905f.js → test-datasets-e0e1a5142e41e9f2.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/systems/configure/{[id]-7f98c2d62b08265d.js → [id]-9e815520adb3e580.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/systems-d8ce572ad07ed28c.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/taxonomy-0cae23a599830708.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/user-management/profile/{[id]-9a920390f7f61e88.js → [id]-75d96422db98196f.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{user-management-827f9bcad90d8856.js → user-management-598f98fd88505e1e.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{webpack-3a17ce9d4ecac24a.js → webpack-0a3b419ab682b8f9.js} +1 -1
- fides/ui-build/static/admin/_next/static/css/{4d3cb2ffee0cfa2c.css → 919f947a862d28cd.css} +1 -1
- fides/ui-build/static/admin/add-systems/manual.html +1 -1
- fides/ui-build/static/admin/add-systems/multiple.html +1 -1
- fides/ui-build/static/admin/add-systems.html +1 -1
- fides/ui-build/static/admin/consent/configure/add-vendors.html +1 -1
- fides/ui-build/static/admin/consent/configure.html +1 -1
- fides/ui-build/static/admin/consent/privacy-experience/[id].html +1 -1
- fides/ui-build/static/admin/consent/privacy-experience/new.html +1 -1
- fides/ui-build/static/admin/consent/privacy-experience.html +1 -1
- fides/ui-build/static/admin/consent/privacy-notices/[id].html +1 -1
- fides/ui-build/static/admin/consent/privacy-notices/new.html +1 -1
- fides/ui-build/static/admin/consent/privacy-notices.html +1 -1
- fides/ui-build/static/admin/consent/properties.html +1 -1
- fides/ui-build/static/admin/consent/reporting.html +1 -1
- fides/ui-build/static/admin/consent.html +1 -1
- fides/ui-build/static/admin/data-catalog/[systemId]/projects/[projectUrn]/[resourceUrn].html +1 -1
- fides/ui-build/static/admin/data-catalog/[systemId]/projects/[projectUrn].html +1 -1
- fides/ui-build/static/admin/data-catalog/[systemId]/projects.html +1 -1
- fides/ui-build/static/admin/data-catalog/[systemId]/resources/[resourceUrn].html +1 -1
- fides/ui-build/static/admin/data-catalog/[systemId]/resources.html +1 -1
- fides/ui-build/static/admin/data-catalog.html +1 -1
- fides/ui-build/static/admin/data-discovery/action-center/datastore/[monitorId].html +1 -0
- fides/ui-build/static/admin/data-discovery/action-center/datastore.html +1 -0
- fides/ui-build/static/admin/data-discovery/action-center/website/[monitorId]/[systemId].html +1 -0
- fides/ui-build/static/admin/data-discovery/action-center/website/[monitorId].html +1 -0
- fides/ui-build/static/admin/data-discovery/action-center/website.html +1 -0
- fides/ui-build/static/admin/data-discovery/action-center.html +1 -1
- fides/ui-build/static/admin/data-discovery/activity.html +1 -1
- fides/ui-build/static/admin/data-discovery/detection/[resourceUrn].html +1 -1
- fides/ui-build/static/admin/data-discovery/detection.html +1 -1
- fides/ui-build/static/admin/data-discovery/discovery/[resourceUrn].html +1 -1
- fides/ui-build/static/admin/data-discovery/discovery.html +1 -1
- fides/ui-build/static/admin/datamap.html +1 -1
- fides/ui-build/static/admin/dataset/[datasetId]/[collectionName]/[...subfieldNames].html +1 -1
- fides/ui-build/static/admin/dataset/[datasetId]/[collectionName].html +1 -1
- fides/ui-build/static/admin/dataset/[datasetId].html +1 -1
- fides/ui-build/static/admin/dataset/new.html +1 -1
- fides/ui-build/static/admin/dataset.html +1 -1
- fides/ui-build/static/admin/datastore-connection/[id].html +1 -1
- fides/ui-build/static/admin/datastore-connection/new.html +1 -1
- fides/ui-build/static/admin/datastore-connection.html +1 -1
- fides/ui-build/static/admin/index.html +1 -1
- fides/ui-build/static/admin/integrations/[id].html +1 -1
- fides/ui-build/static/admin/integrations.html +1 -1
- fides/ui-build/static/admin/lib/fides-preview.js +1 -1
- fides/ui-build/static/admin/lib/fides-tcf.js +3 -3
- fides/ui-build/static/admin/lib/fides.js +2 -2
- fides/ui-build/static/admin/login/[provider].html +1 -1
- fides/ui-build/static/admin/login.html +1 -1
- fides/ui-build/static/admin/new-privacy-requests.html +1 -1
- fides/ui-build/static/admin/notifications/digests/[id].html +1 -1
- fides/ui-build/static/admin/notifications/digests/new.html +1 -1
- fides/ui-build/static/admin/notifications/digests.html +1 -1
- fides/ui-build/static/admin/notifications/providers/[key].html +1 -1
- fides/ui-build/static/admin/notifications/providers/new.html +1 -1
- fides/ui-build/static/admin/notifications/providers.html +1 -1
- fides/ui-build/static/admin/notifications/templates/[id].html +1 -1
- fides/ui-build/static/admin/notifications/templates/add-template.html +1 -1
- fides/ui-build/static/admin/notifications/templates.html +1 -1
- fides/ui-build/static/admin/notifications.html +1 -1
- fides/ui-build/static/admin/poc/ant-components.html +1 -1
- fides/ui-build/static/admin/poc/form-experiments/AntForm.html +1 -1
- fides/ui-build/static/admin/poc/form-experiments/FormikAntFormItem.html +1 -1
- fides/ui-build/static/admin/poc/form-experiments/FormikControlled.html +1 -1
- fides/ui-build/static/admin/poc/form-experiments/FormikField.html +1 -1
- fides/ui-build/static/admin/poc/form-experiments/FormikSpreadField.html +1 -1
- fides/ui-build/static/admin/poc/forms.html +1 -1
- fides/ui-build/static/admin/poc/table-migration.html +1 -1
- fides/ui-build/static/admin/privacy-requests/[id].html +1 -1
- fides/ui-build/static/admin/privacy-requests/configure/storage.html +1 -1
- fides/ui-build/static/admin/privacy-requests/configure.html +1 -1
- fides/ui-build/static/admin/privacy-requests.html +1 -1
- fides/ui-build/static/admin/properties/[id].html +1 -1
- fides/ui-build/static/admin/properties/add-property.html +1 -1
- fides/ui-build/static/admin/properties.html +1 -1
- fides/ui-build/static/admin/reporting/datamap.html +1 -1
- fides/ui-build/static/admin/settings/about/alpha.html +1 -1
- fides/ui-build/static/admin/settings/about.html +1 -1
- fides/ui-build/static/admin/settings/consent/[configuration_id]/[purpose_id].html +1 -1
- fides/ui-build/static/admin/settings/consent.html +1 -1
- fides/ui-build/static/admin/settings/custom-fields/[id].html +1 -1
- fides/ui-build/static/admin/settings/custom-fields/new.html +1 -1
- fides/ui-build/static/admin/settings/custom-fields.html +1 -1
- fides/ui-build/static/admin/settings/domain-records.html +1 -1
- fides/ui-build/static/admin/settings/domains.html +1 -1
- fides/ui-build/static/admin/settings/email-templates.html +1 -1
- fides/ui-build/static/admin/settings/locations.html +1 -1
- fides/ui-build/static/admin/settings/organization.html +1 -1
- fides/ui-build/static/admin/settings/privacy-requests.html +1 -1
- fides/ui-build/static/admin/settings/regulations.html +1 -1
- fides/ui-build/static/admin/systems/configure/[id]/test-datasets.html +1 -1
- fides/ui-build/static/admin/systems/configure/[id].html +1 -1
- fides/ui-build/static/admin/systems.html +1 -1
- fides/ui-build/static/admin/taxonomy.html +1 -1
- fides/ui-build/static/admin/user-management/new.html +1 -1
- fides/ui-build/static/admin/user-management/profile/[id].html +1 -1
- fides/ui-build/static/admin/user-management.html +1 -1
- fides/ui-build/static/admin/_next/static/KrreFSHeuO3A1ZudBtGj2/_buildManifest.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/2921-bcd6a8741e98e7ce.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/4817-cb54f4a8ed82122f.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/6468-f73d542ab5bcf746.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/6853-56c933239103eef6.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/7059-362b53ad2cbe480e.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/8373-9debd1f8d36cd013.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/9682-0aab88e56ba618a3.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/add-systems-cfd6175cd093217c.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/reporting-3b04a6d7447ae824.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/[monitorId]/[systemId]-b45b49ab68d15585.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/[monitorId]-ee1cf6e7f60d46db.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/data-explorer/[monitorId]-1cebd59598196388.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/data-explorer-a725550fc25e45e2.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center-f67b897b206d1156.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/integrations/[id]-484063d65850e03e.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/new-privacy-requests-b0533759c1fe400c.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/templates-0e0ff3689c02c12e.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/ant-components-d9c3128f1c85ef06.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/AntForm-616164210b90485e.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/FormikAntFormItem-f462c200e6795276.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/FormikControlled-891177e7bbd6a4a4.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/FormikField-cb6cd181c8ffbb9a.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/forms-540bf3af41cd40fb.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/[id]-27ff988967e9153d.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests-cd94476ab282dd7f.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/reporting/datamap-9459019a37ffe8d8.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/consent/[configuration_id]/[purpose_id]-260f460fea1bc187.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/systems-ddb0121f14bc3b84.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/taxonomy-4d945ab1aab9be54.js +0 -1
- fides/ui-build/static/admin/data-discovery/action-center/[monitorId]/[systemId].html +0 -1
- fides/ui-build/static/admin/data-discovery/action-center/[monitorId].html +0 -1
- fides/ui-build/static/admin/data-discovery/action-center/data-explorer/[monitorId].html +0 -1
- fides/ui-build/static/admin/data-discovery/action-center/data-explorer.html +0 -1
- {ethyca_fides-2.72.4b1.dist-info → ethyca_fides-2.73.0.dist-info}/WHEEL +0 -0
- {ethyca_fides-2.72.4b1.dist-info → ethyca_fides-2.73.0.dist-info}/entry_points.txt +0 -0
- {ethyca_fides-2.72.4b1.dist-info → ethyca_fides-2.73.0.dist-info}/licenses/LICENSE +0 -0
- {ethyca_fides-2.72.4b1.dist-info → ethyca_fides-2.73.0.dist-info}/top_level.txt +0 -0
- /fides/ui-build/static/admin/_next/static/{KrreFSHeuO3A1ZudBtGj2 → 6kEWO-NXzxn1tvUedYFei}/_ssgManifest.js +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]/{[resourceUrn]-313fc265356df659.js → [resourceUrn]-5d133ec635cd716c.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/resources/{[resourceUrn]-855eca0ddf47f4dc.js → [resourceUrn]-9d8efe43b69a285d.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/detection/{[resourceUrn]-67c9fb9b18cb17a0.js → [resourceUrn]-2df143c1e1f79040.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/{detection-c9d69ae424e73377.js → detection-e37c800313e2a422.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/discovery/{[resourceUrn]-e5102013ec48b60c.js → [resourceUrn]-7022ca5fa834b633.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/{discovery-4094104544531055.js → discovery-6178e22397f20f92.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/settings/custom-fields/{[id]-9b395e59fa62cbe5.js → [id]-b5140de4431a7ff5.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/settings/custom-fields/{new-a0bb7928ac4a894e.js → new-dcc16459e754fbbd.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/user-management/{new-6b3564b9ae9ee7dd.js → new-bc1568bb47d198a9.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2040],{77213:function(e,n,t){t.d(n,{Z:function(){return p}});var i=t(24246),s=t(
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2040],{77213:function(e,n,t){t.d(n,{Z:function(){return p}});var i=t(24246),s=t(87949),r=t(88038),a=t.n(r),o=t(86677);t(27378);var g=t(25980),l=t(90867),u=t(42478),c=t(77830),d=()=>{let e=(0,o.useRouter)();return(0,i.jsx)(s.xuv,{bg:"gray.50",border:"1px solid",borderColor:"blue.400",borderRadius:"md",justifyContent:"space-between",p:5,mb:5,mt:5,children:(0,i.jsxs)(s.xuv,{children:[(0,i.jsxs)(s.Kqy,{direction:{base:"column",sm:"row"},justifyContent:"space-between",children:[(0,i.jsx)(s.xvT,{fontWeight:"semibold",children:"Configure your storage and messaging provider"}),(0,i.jsx)(s.wpx,{onClick:()=>{e.push(c.AD)},children:"Configure"})]}),(0,i.jsxs)(s.xvT,{children:["Before Fides can process your privacy requests we need two simple steps to configure your storage and email client."," "]})]})})},p=e=>{let{children:n,title:t,padded:r=!0,mainProps:c}=e,p=(0,g.hz)(),f=(0,o.useRouter)(),m="/privacy-requests"===f.pathname||"/datastore-connection"===f.pathname,h=!(p.flags.messagingConfiguration&&m),{data:y}=(0,u.JE)(void 0,{skip:h}),{data:x}=(0,l.PW)(void 0,{skip:h}),v=p.flags.messagingConfiguration&&(!y||!x)&&m;return(0,i.jsxs)(s.kCb,{"data-testid":t,direction:"column",h:"100vh",children:[(0,i.jsxs)(a(),{children:[(0,i.jsxs)("title",{children:["Fides Admin UI - ",t]}),(0,i.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,i.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,i.jsxs)(s.kCb,{as:"main",direction:"column",py:r?6:0,px:r?10:0,h:r?"calc(100% - 48px)":"full",flex:1,minWidth:0,overflow:"auto",...c,children:[v?(0,i.jsx)(d,{}):null,n]})]})}},58754:function(e,n,t){var i=t(24246),s=t(87949),r=t(70788);n.Z=e=>{let{heading:n,breadcrumbItems:t,isSticky:a=!0,children:o,rightContent:g,style:l,...u}=e;return(0,i.jsxs)("div",{...u,style:a?{position:"sticky",top:"-24px",paddingTop:"24px",paddingBottom:"24px",paddingLeft:"40px",marginLeft:"-40px",paddingRight:"40px",marginRight:"-40px",marginTop:"-24px",left:0,zIndex:20,backgroundColor:"white",...l}:{paddingBottom:"24px",...l},children:[(0,i.jsxs)(s.jqI,{justify:"space-between",children:["string"==typeof n?(0,i.jsx)(s.lQT,{className:t||o?"pb-4":void 0,level:1,"data-testid":"page-heading",children:n}):n,g&&(0,i.jsx)("div",{"data-testid":"page-header-right-content",children:g})]}),!!t&&(0,i.jsx)(r.m,{className:o?"pb-4":void 0,items:t,"data-testid":"page-breadcrumb"}),o]})}},19904:function(e,n,t){t.d(n,{Tg:function(){return a}});var i=t(24246),s=t(16134),r=t(31793);let a=e=>(0,s.C)(r.uu).filter(n=>e.includes(n)).length>0;n.ZP=e=>{let{scopes:n,children:t}=e;return a(n)?(0,i.jsx)(i.Fragment,{children:t}):null}},70788:function(e,n,t){t.d(n,{m:function(){return l}});var i=t(24246),s=t(87949),r=t(79894),a=t.n(r),o=t(27378);let{Text:g}=s.AntTypography,l=e=>{let{items:n,...t}=e,r=(0,o.useMemo)(()=>null==n?void 0:n.map((e,t)=>{let r=t===n.length-1,o={...e},l=o.onClick&&!o.href;return("string"==typeof o.title&&(o.title=(0,i.jsx)(g,{style:{color:"inherit",maxWidth:r?void 0:400},ellipsis:!r,id:r?"breadcrumb-current-page":void 0,children:o.title})),l)?o.title=(0,i.jsx)(s.wpx,{type:"text",size:"small",icon:o.icon,onClick:o.onClick,className:"ant-breadcrumb-link -mt-px px-1 text-inherit",children:o.title}):(o.icon&&(o.title=(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)("span",{className:"anticon align-text-bottom",children:o.icon}),o.title]})),o.href&&o.title&&(o.title=(0,i.jsx)(a(),{href:o.href,className:"ant-breadcrumb-link",children:o.title}),delete o.href)),o}),[n]);return(0,i.jsx)(s.zrq,{items:r,...t})}},42478:function(e,n,t){t.d(n,{FU:function(){return l},JE:function(){return s},Ki:function(){return c},SU:function(){return d},W:function(){return p},h9:function(){return r},jc:function(){return i},qt:function(){return g},sn:function(){return u}});let{useGetEmailInviteStatusQuery:i,useGetActiveMessagingProviderQuery:s,useCreateMessagingConfigurationMutation:r,useCreateMessagingConfigurationSecretsMutation:a,useGetMessagingConfigurationDetailsQuery:o,useGetMessagingConfigurationsQuery:g,useGetMessagingConfigurationByKeyQuery:l,useUpdateMessagingConfigurationByKeyMutation:u,useUpdateMessagingConfigurationSecretsByKeyMutation:c,useCreateTestConnectionMessageMutation:d,useDeleteMessagingConfigurationByKeyMutation:p}=t(78780).u.injectEndpoints({endpoints:e=>({getEmailInviteStatus:e.query({query:()=>({url:"/messaging/email-invite/status"}),providesTags:()=>["Email Invite Status"]}),createMessagingConfiguration:e.mutation({query:e=>({url:"messaging/config",method:"POST",body:e}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getActiveMessagingProvider:e.query({queryFn:async(e,n,t,i)=>{let s=await i({url:"messaging/default/active"});return s.error&&404===s.error.status?{data:null}:s},providesTags:["Messaging Config"]}),createMessagingConfigurationSecrets:e.mutation({query:e=>({url:"messaging/default/".concat(e.service_type,"/secret"),method:"PUT",body:e.details}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getMessagingConfigurationDetails:e.query({query:e=>({url:"messaging/default/".concat(e.type)}),providesTags:["Messaging Config"]}),getMessagingConfigurations:e.query({query:()=>({url:"messaging/config"}),providesTags:["Messaging Config"]}),getMessagingConfigurationByKey:e.query({query:e=>({url:"messaging/config/".concat(e.key)}),providesTags:["Messaging Config"]}),createTestConnectionMessage:e.mutation({query:e=>({url:"messaging/test/".concat(e.service_type),method:"POST",body:e.details}),invalidatesTags:["Messaging Config"]}),updateMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"PATCH",body:e.config}),invalidatesTags:["Messaging Config","Configuration Settings"]}),updateMessagingConfigurationSecretsByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key,"/secret"),method:"PUT",body:e.secrets}),invalidatesTags:["Messaging Config","Configuration Settings"]}),deleteMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"DELETE"}),invalidatesTags:["Messaging Config","Configuration Settings"]})})})},3642:function(e,n,t){var i=t(24246),s=t(87949),r=t(86677),a=t.n(r),o=t(27378),g=t(812),l=t(58452),u=t(77830),c=t(19904),d=t(46628),p=t(98795),f=t(65735);n.Z=e=>{let{property:n,triggerComponent:t}=e,r=(0,s.pmc)(),m=(0,s.qY0)(),[h]=(0,p.YW)(),y=n.experiences.length>0,x=async()=>{m.onClose();let e=await h(n.id);if((0,g.D4)(e)){r((0,d.Vo)((0,g.e$)(e.error)));return}a().push("".concat(u.ru)),r((0,d.t5)("Property ".concat(n.name," deleted successfully")))};return(0,i.jsxs)(c.ZP,{scopes:[f.Sh.PROPERTY_DELETE],children:[(0,i.jsx)(s.esZ,{title:y?"All of the experiences on this property must be unlinked before the property can be deleted.":void 0,placement:"right",children:(0,i.jsx)("span",{children:o.cloneElement(t,{onClick:e=>{e.stopPropagation(),y||m.onOpen()},disabled:y})})}),(0,i.jsx)(l.Z,{isOpen:m.isOpen,onClose:m.onClose,onConfirm:x,title:"Delete ".concat(n.name),message:(0,i.jsxs)(s.xvT,{color:"gray.500",children:["You are about to delete property ",n.name,". This action is not reversible and will result in ",n.name," no longer being available for your data governance. Are you sure you want to proceed?"]}),continueButtonText:"Ok",isCentered:!0,icon:(0,i.jsx)(s.aNP,{})})]})}}}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2397],{14908:function(e,a,s){var i=s(86677),t=s(27378);let l=e=>e.startsWith("#")?e.slice(1):e;a.Z=e=>{let{tabKeys:a,initialTab:s}=e,r=(0,i.useRouter)(),o=r.asPath.split("#")[1]||a[0],[c,n]=(0,t.useState)(o);return(0,t.useEffect)(()=>{s&&a.includes(s)&&n(s)},[s,a,r.isReady]),{activeTab:c,onTabChange:(0,t.useCallback)(async e=>{if(!a.includes(e)){await r.replace({pathname:r.pathname,query:r.query,hash:void 0}),n(a[0]);return}r.isReady&&(await r.replace({pathname:r.pathname,query:r.query,hash:l(e)},void 0,{shallow:!0}),n(e))},[r,a]),setActiveTab:n}}},69828:function(e,a,s){s.d(a,{Y:function(){return r}});var i=s(24246),t=s(
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2397],{14908:function(e,a,s){var i=s(86677),t=s(27378);let l=e=>e.startsWith("#")?e.slice(1):e;a.Z=e=>{let{tabKeys:a,initialTab:s}=e,r=(0,i.useRouter)(),o=r.asPath.split("#")[1]||a[0],[c,n]=(0,t.useState)(o);return(0,t.useEffect)(()=>{s&&a.includes(s)&&n(s)},[s,a,r.isReady]),{activeTab:c,onTabChange:(0,t.useCallback)(async e=>{if(!a.includes(e)){await r.replace({pathname:r.pathname,query:r.query,hash:void 0}),n(a[0]);return}r.isReady&&(await r.replace({pathname:r.pathname,query:r.query,hash:l(e)},void 0,{shallow:!0}),n(e))},[r,a]),setActiveTab:n}}},69828:function(e,a,s){s.d(a,{Y:function(){return r}});var i=s(24246),t=s(87949),l=s(70788);let r=[(0,i.jsx)(t.PJP.S9g,{},"layers"),(0,i.jsx)(t.PJP.ehp,{},"dataset"),(0,i.jsx)(t.PJP.iA_,{},"table"),(0,i.jsx)(t.PJP.$4y,{style:{transform:"rotate(-90deg)"}},"field")];a.Z=e=>{let{resourceUrn:a,parentLink:s,onPathClick:t=()=>{}}=e,o=[];if(a||o.push({title:"All activity"}),a){o.push({title:"All activity",href:s});let e=a.split(".");e.forEach((a,s)=>{0!==s&&o.push({title:a,icon:r[s-1],onClick:a=>{a.preventDefault(),t(e.slice(0,s+1).join("."))}})})}return(0,i.jsx)(l.m,{"data-testid":"results-breadcrumb",items:o})}},1039:function(e,a,s){s.d(a,{Z:function(){return P}});var i,t,l=s(24246),r=s(59003),o=s(92222),c=s(87949),n=s(27378),d=s(47935),u=s(70675),h=s(72625),g=s(54409),j=s(79947),x=s(87667),m=s(50169),v=s(28278),p=s(65735),y=s(74241),R=e=>{let{resourceType:a,changeTypeOverride:s}=e,i=(0,o.Cl)(),t=[];return a?a===p.D$.SCHEMA?{columns:[i.accessor(e=>e.name,{id:"name",cell:e=>(0,l.jsx)(x.Z,{changeTypeOverride:s,result:e.row.original}),header:e=>(0,l.jsx)(d.Rr,{value:"Name",...e}),size:300}),i.accessor(e=>e.urn,{id:"project",cell:e=>(0,l.jsx)(d.G3,{value:(0,y.Z)(e.getValue())}),header:e=>(0,l.jsx)(d.Rr,{value:"Project",...e})}),i.display({id:"status",cell:e=>(0,l.jsx)(m.Z,{changeTypeOverride:s,result:e.row.original}),header:e=>(0,l.jsx)(d.Rr,{value:"Status",...e})}),i.accessor(e=>e.system,{id:"system",cell:e=>(0,l.jsx)(d.G3,{value:e.getValue()}),header:e=>(0,l.jsx)(d.Rr,{value:"System",...e})}),i.accessor(e=>e.monitor_config_id,{id:"monitor",cell:e=>(0,l.jsx)(d.G3,{value:e.getValue()}),header:e=>(0,l.jsx)(d.Rr,{value:"Detected by",...e})}),i.accessor(e=>e.updated_at,{id:"time",cell:e=>(0,l.jsx)(h.Cy,{time:e.getValue()}),header:e=>(0,l.jsx)(d.Rr,{value:"When",...e})}),i.display({id:"actions",cell:e=>(0,l.jsx)(g.Z,{ignoreChildActions:s===v.E.MONITORED||s===v.E.MUTED,resource:e.row.original}),header:"Actions",size:200,meta:{disableRowClick:!0}})]}:a===p.D$.TABLE?{columns:[i.accessor(e=>e.name,{id:"name",cell:e=>(0,l.jsx)(x.Z,{changeTypeOverride:s,result:e.row.original}),header:e=>(0,l.jsx)(d.Rr,{value:"Table name",...e}),size:300}),i.accessor(e=>e.description,{id:"description",cell:e=>(0,l.jsx)(d.G3,{value:e.getValue(),cellProps:e}),header:e=>(0,l.jsx)(d.Rr,{value:"Description",...e}),meta:{showHeaderMenu:!0}}),i.display({id:"status",cell:e=>(0,l.jsx)(m.Z,{changeTypeOverride:s,result:e.row.original}),header:e=>(0,l.jsx)(d.Rr,{value:"Status",...e})}),i.accessor(e=>e.monitor_config_id,{id:"monitor",cell:e=>(0,l.jsx)(d.G3,{value:e.getValue()}),header:e=>(0,l.jsx)(d.Rr,{value:"Detected by",...e})}),i.accessor(e=>e.updated_at,{id:"time",cell:e=>(0,l.jsx)(h.Cy,{time:e.getValue()}),header:e=>(0,l.jsx)(d.Rr,{value:"When",...e})}),i.display({id:"actions",cell:e=>(0,l.jsx)(g.Z,{resource:e.row.original}),header:"Actions",size:200,meta:{disableRowClick:!0}})]}:a===p.D$.FIELD?{columns:[i.accessor(e=>e.name,{id:"name",cell:e=>(0,l.jsx)(x.Z,{changeTypeOverride:s,result:e.row.original}),header:e=>(0,l.jsx)(d.Rr,{value:"Field name",...e}),size:300}),i.accessor(e=>e.source_data_type,{id:"data-type",cell:e=>(0,l.jsx)(j.Z,{type:e.getValue()}),header:e=>(0,l.jsx)(d.Rr,{value:"Data type",...e})}),i.accessor(e=>e.description,{id:"description",cell:e=>(0,l.jsx)(d.G3,{value:e.getValue(),cellProps:e}),header:e=>(0,l.jsx)(d.Rr,{value:"Description",...e}),meta:{showHeaderMenu:!0}}),i.display({id:"status",cell:e=>(0,l.jsx)(m.Z,{changeTypeOverride:s,result:e.row.original}),header:e=>(0,l.jsx)(d.Rr,{value:"Status",...e})}),i.accessor(e=>e.monitor_config_id,{id:"monitor",cell:e=>(0,l.jsx)(d.G3,{value:e.getValue()}),header:e=>(0,l.jsx)(d.Rr,{value:"Detected by",...e})}),i.accessor(e=>e.updated_at,{id:"time",cell:e=>(0,l.jsx)(h.Cy,{time:e.getValue()}),header:e=>(0,l.jsx)(d.Rr,{value:"When",...e})}),i.display({id:"actions",cell:e=>(0,l.jsx)(g.Z,{resource:e.row.original}),header:"Actions",size:200,meta:{disableRowClick:!0}})]}:a===p.D$.ENDPOINT?{columns:[i.accessor(e=>e.name,{id:"name",cell:e=>(0,l.jsx)(x.Z,{changeTypeOverride:s,result:e.row.original}),header:e=>(0,l.jsx)(d.Rr,{value:"Object",...e}),size:300}),i.accessor(e=>e.description,{id:"description",cell:e=>(0,l.jsx)(d.G3,{value:e.getValue(),cellProps:e}),header:e=>(0,l.jsx)(d.Rr,{value:"Description",...e}),meta:{showHeaderMenu:!0}}),i.display({id:"status",cell:e=>(0,l.jsx)(m.Z,{changeTypeOverride:s,result:e.row.original}),header:e=>(0,l.jsx)(d.Rr,{value:"Status",...e})}),i.accessor(e=>e.monitor_config_id,{id:"monitor",cell:e=>(0,l.jsx)(d.G3,{value:e.getValue()}),header:e=>(0,l.jsx)(d.Rr,{value:"Detected by",...e})}),i.accessor(e=>e.updated_at,{id:"time",cell:e=>(0,l.jsx)(h.Cy,{time:e.getValue()}),header:e=>(0,l.jsx)(d.Rr,{value:"When",...e})}),i.display({id:"actions",cell:e=>(0,l.jsx)(g.Z,{resource:e.row.original}),header:"Actions",size:200,meta:{disableRowClick:!0}})]}:{columns:t}:{columns:t}},f=s(14908);(i=t||(t={})).ACTION_REQUIRED="action-required",i.MONITORED="monitored",i.UNMONITORED="unmonitored";let b={"action-required":{label:"Action Required",key:"action-required",filters:[p.LL.ADDITION,p.LL.REMOVAL],childFilters:[p.LL.ADDITION,p.LL.REMOVAL]},monitored:{label:"Monitored",key:"monitored",filters:[p.LL.MONITORED],childFilters:[],changeTypeOverride:v.E.MONITORED},unmonitored:{label:"Unmonitored",key:"unmonitored",filters:[p.LL.MUTED],childFilters:[],changeTypeOverride:v.E.MUTED}};var w=()=>{var e,a,s;let{activeTab:i,onTabChange:l}=(0,f.Z)({tabKeys:Object.values(t)});return{filterTabs:Object.values(b),activeTabKey:i,onTabChange:l,activeDiffFilters:null===(e=b[i])||void 0===e?void 0:e.filters,activeChildDiffFilters:null===(a=b[i])||void 0===a?void 0:a.childFilters,activeChangeTypeOverride:null===(s=b[i])||void 0===s?void 0:s.changeTypeOverride}},C=s(47182),D=s(38347),T=s(7940),O=s(80285),E=s(36168),_=s(30952);let k={items:[],total:0,page:1,size:50,pages:1},Z=()=>(0,l.jsx)(c.gCW,{mt:6,p:10,spacing:4,borderRadius:"base",maxW:"70%","data-testid":"empty-state",alignSelf:"center",margin:"auto",children:(0,l.jsxs)(c.gCW,{children:[(0,l.jsx)(c.xvT,{fontSize:"md",fontWeight:"600",children:"No activity found"}),(0,l.jsx)(c.xvT,{fontSize:"sm",children:"You're up to date!"})]})});var P=e=>{let{resourceUrn:a}=e,[s,i]=(0,n.useState)(""),{filterTabs:t,activeTabKey:h,onTabChange:g,activeDiffFilters:j,activeChildDiffFilters:x,activeChangeTypeOverride:m}=w(),{PAGE_SIZES:v,pageSize:y,setPageSize:f,onPreviousPageClick:b,isPreviousPageDisabled:P,onNextPageClick:M,isNextPageDisabled:I,startRange:N,endRange:A,pageIndex:L,setTotalPages:V,resetPageIndexToDefault:z}=(0,d.oi)();(0,n.useEffect)(()=>{z()},[a,s,z,j,x]);let{isFetching:S,isLoading:G,data:F}=(0,u.z8)({staged_resource_urn:a,page:L,size:y,child_diff_status:x,diff_status:j,search:s}),q=(0,T.G)(null==F?void 0:F.items[0]),{columns:W}=R({resourceType:q,changeTypeOverride:m}),{items:U,total:$,pages:H}=(0,n.useMemo)(()=>null!=F?F:k,[F]);(0,n.useEffect)(()=>{V(H)},[H,V]);let J=(0,n.useMemo)(()=>W,[W]),{navigateToDetectionResults:K}=(0,C.Z)(),Q=(0,r.b7)({getCoreRowModel:(0,o.sC)(),getGroupedRowModel:(0,o.qe)(),getExpandedRowModel:(0,o.rV)(),getRowId:O.Z,columns:J,manualPagination:!0,data:U,columnResizeMode:"onChange"});return G?(0,l.jsx)(d.I4,{rowHeight:36,numRows:36}):(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(c.A5g,{items:t.map(e=>({key:e.key,label:e.label})),activeKey:h,onChange:e=>g(e)}),(0,l.jsx)(d.Q$,{children:(0,l.jsx)(c.kCb,{direction:"row",alignItems:"center",justifyContent:"space-between",width:"full",children:(0,l.jsxs)(c.kCb,{gap:6,align:"center",children:[(0,l.jsx)(c.xuv,{flexShrink:0,children:(0,l.jsx)(_.f,{value:s,onChange:i})}),(0,l.jsx)(D.a,{})]})})}),(0,l.jsx)(d.ZK,{tableInstance:Q,onRowClick:e=>K({resourceUrn:e.urn,filterTab:h}),getRowIsClickable:e=>q!==p.D$.FIELD||(0,E.Z)(e),emptyTableNotice:(0,l.jsx)(Z,{})}),(0,l.jsx)(d.s8,{totalRows:$||0,pageSizes:v,setPageSize:f,onPreviousPageClick:b,isPreviousPageDisabled:P||S,onNextPageClick:M,isNextPageDisabled:I||S,startRange:N,endRange:A})]})}},79947:function(e,a,s){var i=s(24246),t=s(87949);a.Z=e=>{let{type:a}=e;return(0,i.jsx)(t.kCb,{align:"center",h:"full",children:!!a&&(0,i.jsx)(t.j8w,{children:a})})}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2921],{95813:function(e,l,r){r.d(l,{S:function(){return t}});let t={input:"default text",radio:"2",checkbox:!0,switch:!0,select:"2",multiselect:["2"],tags:["1"],date:"",number:12}},12921:function(e,l,r){r.r(l),r.d(l,{FormikSpreadFieldPOC:function(){return u}});var t=r(24246),n=r(87949),i=r(3124),s=r.n(i),d=r(34090),c=r(95813);let{Text:o,Title:a}=n.AntTypography,u=()=>(0,t.jsx)(d.J9,{initialValues:{...c.S},onSubmit:console.log,children:e=>{let{values:l}=e;return(0,t.jsxs)(n.bue,{children:[(0,t.jsxs)(n.JGx,{span:12,children:[(0,t.jsx)(a,{level:2,children:"<Formik> + <Form> + {...field}"}),(0,t.jsxs)("div",{className:"mb-4",children:[(0,t.jsx)(n.j8w,{color:"error",children:"non functional"}),(0,t.jsx)(n.j8w,{color:"error",children:"high effort"})]}),(0,t.jsx)(d.l0,{children:(0,t.jsxs)(n.jqI,{vertical:!0,gap:16,children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{htmlFor:"input",children:"Input"}),(0,t.jsx)("div",{children:(0,t.jsx)(d.gN,{name:"input",children:e=>{let{field:l}=e;return(0,t.jsx)(n.AntInput,{...l,id:"input",type:"text"})}})})]}),(0,t.jsx)("div",{children:(0,t.jsx)(d.gN,{name:"radio",children:e=>{let{field:l}=e;return(0,t.jsxs)(n.y02.Group,{...l,children:[(0,t.jsx)(n.y02,{value:"1",children:"Radio 1"}),(0,t.jsx)(n.y02,{value:"2",children:"Radio 2"})]})}})}),(0,t.jsxs)("div",{children:[(0,t.jsx)(d.gN,{name:"checkbox",children:e=>{let{field:r}=e;return(0,t.jsx)(n.E_O,{...r,defaultChecked:l.checkbox,children:"Checkbox"})}}),(0,t.jsx)(o,{type:"warning",children:"Requires additional logic to handle default state"})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{htmlFor:"switch",children:"Switch"}),(0,t.jsx)("div",{children:(0,t.jsx)(d.gN,{name:"switch",children:e=>{let{field:l}=e;return(0,t.jsx)(n.rAg,{id:"switch",...l})}})}),(0,t.jsx)(o,{type:"danger",children:"Ant Switch's onChange is too different from Formik, requires to be fully controlled."})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{htmlFor:"select",children:"Select"}),(0,t.jsx)("div",{children:(0,t.jsx)(d.gN,{name:"select",children:e=>{let{field:r}=e;return(0,t.jsx)(n.WPr,{allowClear:!0,id:"select",className:"w-full",defaultValue:l.select,status:"error",...r,options:[{value:"1",label:"Option 1"},{value:"2",label:"Option 2"}]})}})}),(0,t.jsx)(o,{type:"danger",children:"Ant Select's onChange is too different from Formik, requires to be fully controlled."})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{htmlFor:"multiselect",children:"Multiselect"}),(0,t.jsx)("div",{children:(0,t.jsx)(d.gN,{name:"multiselect",children:e=>{let{field:r}=e;return(0,t.jsx)(n.WPr,{mode:"multiple",allowClear:!0,id:"multiselect",className:"w-full",defaultValue:l.multiselect,status:"error",...r,options:[{value:"1",label:"Option 1"},{value:"2",label:"Option 2"}]})}})}),(0,t.jsx)(o,{type:"danger",children:"Ant Select's onChange is too different from Formik, requires to be fully controlled."})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{htmlFor:"tags",children:"Tags"}),(0,t.jsx)("div",{children:(0,t.jsx)(d.gN,{name:"tags",children:e=>{let{field:r}=e;return(0,t.jsx)(n.WPr,{mode:"tags",allowClear:!0,id:"tags",className:"w-full",defaultValue:l.tags,status:"error",...r,options:[{value:"1",label:"Option 1"},{value:"2",label:"Option 2"}]})}})}),(0,t.jsx)(o,{type:"danger",children:"Ant Select's onChange is too different from Formik, requires to be fully controlled."})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{htmlFor:"date",children:"Date"}),(0,t.jsx)("div",{children:(0,t.jsx)(d.gN,{name:"date",children:e=>{let{field:l}=e;return(0,t.jsx)(n.cv2,{id:"date",status:"error",...l})}})}),(0,t.jsx)(o,{type:"danger",children:"Ant DatePicker's onChange is different from Formik, requires to be fully controlled."})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{htmlFor:"number",children:"Number"}),(0,t.jsx)("div",{children:(0,t.jsx)(d.gN,{name:"number",children:e=>{let{field:r}=e;return(0,t.jsx)(n.W7D,{id:"number",defaultValue:l.number,status:"error",...r})}})}),(0,t.jsx)(o,{type:"danger",children:"Ant InputNumber's onChange is different from Formik, requires to be fully controlled."})]})]})})]}),(0,t.jsxs)(n.JGx,{span:8,offset:4,children:[(0,t.jsx)(a,{level:4,children:"Controlled Values"}),(0,t.jsx)(n.V4A,{style:{backgroundColor:s().FIDESUI_MINOS,color:s().FIDESUI_CORINTH},children:(0,t.jsx)("pre",{children:(0,t.jsxs)("code",{children:["{\n",Object.keys(l).map(e=>" ".concat(e,": ").concat(l[e],"\n")),"}"]})})})]})]})}});l.default=u}}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3377],{77213:function(e,i,s){s.d(i,{Z:function(){return g}});var t=s(24246),a=s(20595),r=s(88038),n=s.n(r),l=s(86677);s(27378);var o=s(25980),d=s(90867),c=s(42478),u=s(77830),m=()=>{let e=(0,l.useRouter)();return(0,t.jsx)(a.xuv,{bg:"gray.50",border:"1px solid",borderColor:"blue.400",borderRadius:"md",justifyContent:"space-between",p:5,mb:5,mt:5,children:(0,t.jsxs)(a.xuv,{children:[(0,t.jsxs)(a.Kqy,{direction:{base:"column",sm:"row"},justifyContent:"space-between",children:[(0,t.jsx)(a.xvT,{fontWeight:"semibold",children:"Configure your storage and messaging provider"}),(0,t.jsx)(a.wpx,{onClick:()=>{e.push(u.AD)},children:"Configure"})]}),(0,t.jsxs)(a.xvT,{children:["Before Fides can process your privacy requests we need two simple steps to configure your storage and email client."," "]})]})})},g=e=>{let{children:i,title:s,padded:r=!0,mainProps:u}=e,g=(0,o.hz)(),f=(0,l.useRouter)(),p="/privacy-requests"===f.pathname||"/datastore-connection"===f.pathname,y=!(g.flags.messagingConfiguration&&p),{data:x}=(0,c.JE)(void 0,{skip:y}),{data:h}=(0,d.PW)(void 0,{skip:y}),_=g.flags.messagingConfiguration&&(!x||!h)&&p;return(0,t.jsxs)(a.kCb,{"data-testid":s,direction:"column",h:"100vh",children:[(0,t.jsxs)(n(),{children:[(0,t.jsxs)("title",{children:["Fides Admin UI - ",s]}),(0,t.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,t.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,t.jsxs)(a.kCb,{as:"main",direction:"column",py:r?6:0,px:r?10:0,h:r?"calc(100% - 48px)":"full",flex:1,minWidth:0,overflow:"auto",...u,children:[_?(0,t.jsx)(m,{}):null,i]})]})}},90980:function(e,i,s){s.d(i,{R:function(){return o}});var t=s(24246),a=s(20595),r=s(79894),n=s.n(r),l=s(63662);let o=e=>{let{onClick:i,...s}=e;return(0,t.jsxs)(a.kCb,{alignItems:"center",mt:-4,mb:3,onClick:i,cursor:"pointer",...s,children:[(0,t.jsx)(a.wpx,{"aria-label":"Back",icon:(0,t.jsx)(a.Rpv,{}),className:"mr-2",size:"small"}),(0,t.jsx)(a.xvT,{as:"a",fontSize:"sm",fontWeight:"500",children:"Back"})]})};i.Z=e=>{let{backPath:i,...s}=e,r=(0,l.useRouter)();return(0,t.jsxs)(a.kCb,{alignItems:"center",mb:6,...s,children:[(0,t.jsx)(a.wpx,{onClick:()=>r.push(i),"aria-label":"Back",icon:(0,t.jsx)(a.Rpv,{}),className:"mr-2",size:"small"}),(0,t.jsx)(a.xvT,{as:n(),href:i,tabIndex:-1,fontSize:"sm",fontWeight:"500",children:"Back"})]})}},10792:function(e,i,s){s.d(i,{Z:function(){return D}});var t=s(24246),a=s(20595),r=s(27378),n=s(17245),l=s(90710),o=s(51980),d=s(90104),c=s.n(d),u=s(56141),m=s.n(u),g=s(92465),f=s.n(g),p=s(25389),y=s.n(p),x=s(15539),h=s.n(x),_=s(86677),v=s(812),w=s(77830),j=s(17828),k=s(42478);let b=e=>{let{serviceType:i,isOpen:s,onClose:n}=e,[o]=(0,k.SU)(),[d,c]=(0,r.useState)(!1),[u]=a.PPS.useForm(),m=i===l.q.twilio_text,g=e=>{let i="An unexpected error occurred. Please try again.";return(0,v.Ot)(e)?i=e.data.detail:(0,v.tB)(e)&&(i=e.data.detail[0].msg),i},f=async e=>{c(!0);try{let s=await o({service_type:i,details:{to_identity:m?{phone_number:e.phone}:{email:e.email}}});(0,v.D4)(s)?a.Pg3.error(g(s.error)):(a.Pg3.success("Test message sent successfully!"),n())}catch(e){a.Pg3.error(g(e))}finally{c(!1)}},p=m?"SMS":"email",y=()=>{n()};return(0,t.jsx)(a.$zI,{title:"Test ".concat(p),open:s,onCancel:y,footer:null,children:(0,t.jsx)(a.gCW,{spacing:4,children:(0,t.jsxs)(a.PPS,{form:u,onFinish:f,layout:"vertical",style:{width:"100%"},children:[m?(0,t.jsx)(a.PPS.Item,{name:"phone",label:"Phone number",rules:[{required:!0,message:"Phone number is required"},{pattern:/^\+?[1-9]\d{1,14}$/,message:"Please enter a valid phone number"}],children:(0,t.jsx)(a.AntInput,{placeholder:"+1234567890"})}):(0,t.jsx)(a.PPS.Item,{name:"email",label:"Email address",rules:[{required:!0,message:"Email address is required"},{type:"email",message:"Please enter a valid email address"}],children:(0,t.jsx)(a.AntInput,{placeholder:"test@example.com"})}),(0,t.jsx)(a.PPS.Item,{style:{marginBottom:0,marginTop:24},children:(0,t.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:"8px"},children:[(0,t.jsx)(a.wpx,{onClick:y,disabled:d,children:"Cancel"}),(0,t.jsx)(a.wpx,{type:"primary",htmlType:"submit",loading:d,"data-testid":"send-test-message-btn",children:d?"Sending...":"Send test ".concat(p)})]})})]})})})},S=()=>{let[e]=(0,k.SU)(),[i,s]=(0,r.useState)(!1),[t,n]=(0,r.useState)({}),o=e=>{let i="An unexpected error occurred. Please try again.";return(0,v.Ot)(e)?i=e.data.detail:(0,v.tB)(e)&&(i=e.data.detail[0].msg),i};return{verifyConfiguration:async i=>{s(!0);try{let s=i===l.q.twilio_text,t=await e({service_type:i,details:{to_identity:s?{phone_number:"+15551234567"}:{email:"test@example.com"}}});if((0,v.D4)(t)){a.Pg3.error(o(t.error));let e=new Date().toISOString();return n(s=>({...s,[i]:{timestamp:e,success:!1}})),!1}a.Pg3.success("Configuration verified successfully!");let r=new Date().toISOString();return n(e=>({...e,[i]:{timestamp:r,success:!0}})),!0}catch(e){return a.Pg3.error(o(e)),!1}finally{s(!1)}},isVerifying:i,isConfigurationVerified:e=>{var i;return!!(null===(i=t[e])||void 0===i?void 0:i.success)},getVerificationData:e=>t[e]}};var P=e=>{var i,s,d;let{configKey:u}=e,g=(0,_.useRouter)(),{handleError:p}=(0,n.HK)(),{verifyConfiguration:x,isVerifying:P,getVerificationData:C}=S(),q=!!u,[V,A]=(0,r.useState)(!1),[I,D]=(0,r.useState)(!1),[E,T]=(0,r.useState)(q?"**********":"secret_keys"),[M]=a.PPS.useForm(),[B]=(0,k.h9)(),[W]=(0,k.sn)(),[F]=(0,k.Ki)(),{data:N,refetch:z}=(0,k.FU)({key:u},{skip:!u}),R={email_from:(null==N?void 0:null===(i=N.details)||void 0===i?void 0:i.email_from)||"",domain:(null==N?void 0:null===(s=N.details)||void 0===s?void 0:s.domain)||"",aws_region:(null==N?void 0:null===(d=N.details)||void 0===d?void 0:d.aws_region)||"",auth_method:q?"**********":"secret_keys",aws_access_key_id:q?"**********":"",aws_secret_access_key:q?"**********":"",aws_assume_role_arn:q?"**********":""};(0,r.useEffect)(()=>{if(N){var e,i,s;let t={email_from:(null===(e=N.details)||void 0===e?void 0:e.email_from)||"",domain:(null===(i=N.details)||void 0===i?void 0:i.domain)||"",aws_region:(null===(s=N.details)||void 0===s?void 0:s.aws_region)||"",auth_method:"**********",aws_access_key_id:"**********",aws_secret_access_key:"**********",aws_assume_role_arn:"**********"};M.setFieldsValue(t),T("**********"),D(!1)}},[N,M]);let K=(()=>{let e=C(l.q.aws_ses);if(e){if(!e.success)return{isVerified:!1,status:"Verify configuration"};let i=new Date(e.timestamp),s=(0,o.B)(i,new Date,{addSuffix:!0});return{isVerified:!0,status:"Verified ".concat(s),timestamp:e.timestamp}}if(N){let{last_test_succeeded:e,last_test_timestamp:i}=N;if(i){let s=new Date(i),t=(0,o.B)(s,new Date,{addSuffix:!0});return{isVerified:e,status:e?"Verified ".concat(t):"Verify configuration",timestamp:i}}}let i=g.query.last_test_succeeded,s=g.query.last_test_timestamp;if(s){let e="true"===i||"1"===i,t=new Date(s),a=(0,o.B)(t,new Date,{addSuffix:!0});return{isVerified:e,status:e?"Verified ".concat(a):"Verify configuration",timestamp:s}}return{isVerified:!1,status:"Verify configuration"}})(),O=e=>h()(y()(e,e=>q&&"**********"===e?void 0:e),f()),U=(0,r.useCallback)(()=>{let e=M.getFieldsValue(),i=e.email_from,{domain:s}=e,t=i&&""!==i.trim(),a=s&&""!==s.trim();return t||a?Promise.resolve():Promise.reject(Error("Either email from or domain must be provided"))},[M]),L=async e=>{try{var i,s,t,r;if(q&&u){let r=[],n=(null==N?void 0:null===(i=N.details)||void 0===i?void 0:i.email_from)||"",o=(null==N?void 0:null===(s=N.details)||void 0===s?void 0:s.domain)||"",d=(null==N?void 0:null===(t=N.details)||void 0===t?void 0:t.aws_region)||"";(e.email_from!==n||e.domain!==o||e.aws_region!==d)&&r.push(W({key:u,config:{key:(null==N?void 0:N.key)||u,name:null==N?void 0:N.name,service_type:(null==N?void 0:N.service_type)||l.q.aws_ses,details:{...null==N?void 0:N.details,email_from:e.email_from||null,domain:e.domain||null,aws_region:e.aws_region}}}));let m={auth_method:e.auth_method,aws_access_key_id:e.aws_access_key_id,aws_secret_access_key:e.aws_secret_access_key,aws_assume_role_arn:e.aws_assume_role_arn},g=O(m);if(c()(g)||r.push(F({key:u,secrets:g})),0===r.length){a.Pg3.info("No changes to save.");return}let f=await Promise.all(r);if(f.some(e=>(0,v.D4)(e))){let e=f.find(e=>(0,v.D4)(e));p(null==e?void 0:e.error)}else a.Pg3.success("AWS SES configuration successfully updated."),D(!1),z&&z()}else{let i={service_type:l.q.aws_ses,details:{email_from:e.email_from||null,domain:e.domain||null,aws_region:e.aws_region},secrets:{auth_method:e.auth_method,aws_access_key_id:e.aws_access_key_id,aws_secret_access_key:e.aws_secret_access_key,aws_assume_role_arn:e.aws_assume_role_arn}},s=await B(i);if((0,v.D4)(s))p(s.error);else{a.Pg3.success("AWS SES configuration successfully created."),D(!1);let e=null===(r=s.data)||void 0===r?void 0:r.key;if(e){let i=w.GE.replace("[key]",e);g.push(i)}else g.push(w.AD)}}}catch(e){p(e)}},Z=async()=>{try{await x(l.q.aws_ses)&&z&&setTimeout(()=>{z()},500)}catch(e){p(e)}},H=()=>{M.validateFields(["email_from","domain"]).catch(()=>{})};return(0,t.jsxs)(a.xuv,{position:"relative",children:[(0,t.jsx)(a.PPS,{form:M,layout:"vertical",initialValues:R,onFinish:L,onValuesChange:(e,i)=>{let s={...i},t={...R};q&&Object.keys(s).forEach(e=>{"**********"===s[e]&&(s[e]=t[e])}),void 0!==e.auth_method&&(T(e.auth_method),"automatic"===e.auth_method&&M.setFieldsValue({aws_access_key_id:"",aws_secret_access_key:""})),D(!m()(s,t))},children:(0,t.jsxs)(a.xuv,{maxWidth:"720px",border:"1px",borderColor:"gray.200",borderRadius:6,overflow:"visible",mt:6,children:[(0,t.jsx)(a.xuv,{backgroundColor:"gray.50",px:6,py:4,display:"flex",flexDirection:"row",alignItems:"center",borderBottom:"1px",borderColor:"gray.200",borderTopRadius:6,children:(0,t.jsxs)(a.Ugi,{children:[(0,t.jsx)(j.Z,{}),(0,t.jsx)(a.X6q,{as:"h3",size:"xs",children:"AWS SES email messaging configuration"})]})}),(0,t.jsxs)(a.xuv,{px:6,py:6,children:[(0,t.jsx)(a.PPS.Item,{name:"email_from",label:"Email from",rules:[{validator:U}],style:{marginBottom:24},children:(0,t.jsx)(a.AntInput,{placeholder:q?"Enter new email from":"Enter email from",onChange:()=>H()})}),(0,t.jsx)(a.PPS.Item,{name:"domain",label:"Domain",rules:[{validator:U}],style:{marginBottom:24},children:(0,t.jsx)(a.AntInput,{placeholder:q?"Enter new domain":"Enter domain",onChange:()=>H()})}),(0,t.jsx)(a.PPS.Item,{name:"aws_region",label:"AWS region",rules:[{required:!0,message:"AWS region is required"}],style:{marginBottom:24},children:(0,t.jsx)(a.AntInput,{placeholder:q?"Enter new AWS region":"Enter AWS region (e.g., us-east-1)"})}),(0,t.jsx)(a.PPS.Item,{name:"auth_method",label:"Authentication method",rules:[{required:!0,message:"Authentication method is required"}],style:{marginBottom:24},children:(0,t.jsx)(a.WPr,{placeholder:"Select authentication method",options:[{label:"Secret keys",value:"secret_keys"},{label:"Automatic",value:"automatic"}]})}),("secret_keys"===E||q&&"**********"===E)&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(a.PPS.Item,{name:"aws_access_key_id",label:"AWS access key ID",rules:"secret_keys"===E||q&&"**********"===E?[{required:!0,message:"AWS access key ID is required for secret keys authentication"}]:[],style:{marginBottom:24},children:(0,t.jsx)(a.AntInput.Password,{placeholder:q?"Enter new AWS access key ID":"Enter AWS access key ID"})}),(0,t.jsx)(a.PPS.Item,{name:"aws_secret_access_key",label:"AWS secret access key",rules:"secret_keys"===E||q&&"**********"===E?[{required:!0,message:"AWS secret access key is required for secret keys authentication"}]:[],style:{marginBottom:24},children:(0,t.jsx)(a.AntInput.Password,{placeholder:q?"Enter new AWS secret access key":"Enter AWS secret access key"})})]}),(0,t.jsx)(a.PPS.Item,{name:"aws_assume_role_arn",label:"AWS assume role ARN",children:(0,t.jsx)(a.AntInput.Password,{placeholder:q?"Enter new AWS assume role ARN":"Enter AWS assume role ARN (optional)"})}),(0,t.jsxs)(a.xuv,{mt:6,className:"flex justify-between",children:[(0,t.jsx)(a.xuv,{children:q&&K.isVerified&&(0,t.jsx)(a.wpx,{type:"default",onClick:()=>A(!0),"data-testid":"send-test-message-btn",children:"Send test email"})}),(0,t.jsxs)(a.xuv,{className:"flex",children:[q?(0,t.jsx)(a.wpx,{onClick:Z,className:"mr-2","data-testid":"test-btn",loading:P,icon:K.isVerified&&!P?(0,t.jsx)(a.StI,{}):void 0,children:P?"Verifying":K.isVerified?"Verified":K.status}):(0,t.jsx)(a.wpx,{onClick:()=>g.push(w.AD),className:"mr-2",children:"Cancel"}),(0,t.jsx)(a.wpx,{htmlType:"submit",type:"primary","data-testid":"save-btn",disabled:!I,children:"Save"})]})]})]})]})}),(0,t.jsx)(b,{serviceType:l.q.aws_ses,isOpen:V,onClose:()=>A(!1)})]})},C=s(44907),q=e=>{var i;let{configKey:s}=e,d=(0,_.useRouter)(),{handleError:u}=(0,n.HK)(),{verifyConfiguration:g,isVerifying:p,getVerificationData:x}=S(),[j,P]=(0,r.useState)(!1),[q,V]=(0,r.useState)(!1),[A]=a.PPS.useForm(),[I]=(0,k.h9)(),[D]=(0,k.sn)(),[E]=(0,k.Ki)(),T=!!s,{data:M,refetch:B}=(0,k.FU)({key:s},{skip:!s}),W={domain:(null==M?void 0:null===(i=M.details)||void 0===i?void 0:i.domain)||"",mailgun_api_key:T?"**********":""};(0,r.useEffect)(()=>{if(M){var e;let i={domain:(null===(e=M.details)||void 0===e?void 0:e.domain)||"",mailgun_api_key:"**********"};A.setFieldsValue(i),V(!1)}},[M,A]);let F=(()=>{let e=x(l.q.mailgun);if(e){if(!e.success)return{isVerified:!1,status:"Verify configuration"};let i=new Date(e.timestamp),s=(0,o.B)(i,new Date,{addSuffix:!0});return{isVerified:!0,status:"Verified ".concat(s),timestamp:e.timestamp}}if(M){let{last_test_succeeded:e,last_test_timestamp:i}=M;if(i){let s=new Date(i),t=(0,o.B)(s,new Date,{addSuffix:!0});return{isVerified:e,status:e?"Verified ".concat(t):"Verify configuration",timestamp:i}}}let i=d.query.last_test_succeeded,s=d.query.last_test_timestamp;if(s){let e="true"===i||"1"===i,t=new Date(s),a=(0,o.B)(t,new Date,{addSuffix:!0});return{isVerified:e,status:e?"Verified ".concat(a):"Verify configuration",timestamp:s}}return{isVerified:!1,status:"Verify configuration"}})(),N=e=>h()(y()(e,e=>T&&"**********"===e?void 0:e),f()),z=async e=>{try{var i,t;if(T&&s){let t=[],r=(null==M?void 0:null===(i=M.details)||void 0===i?void 0:i.domain)||"";e.domain!==r&&""!==e.domain.trim()&&t.push(D({key:s,config:{key:(null==M?void 0:M.key)||s,name:null==M?void 0:M.name,service_type:(null==M?void 0:M.service_type)||l.q.mailgun,details:{...null==M?void 0:M.details,is_eu_domain:"false",domain:e.domain}}}));let n=N({mailgun_api_key:e.mailgun_api_key});if(c()(n)||t.push(E({key:s,secrets:n})),0===t.length){a.Pg3.info("No changes to save.");return}let o=await Promise.all(t);if(o.some(e=>(0,v.D4)(e))){let e=o.find(e=>(0,v.D4)(e));u(null==e?void 0:e.error)}else a.Pg3.success("Mailgun configuration successfully updated."),V(!1),B&&B()}else{let i={service_type:l.q.mailgun,details:{is_eu_domain:"false",domain:e.domain},secrets:{mailgun_api_key:e.mailgun_api_key}},s=await I(i);if((0,v.D4)(s))u(s.error);else{a.Pg3.success("Mailgun configuration successfully created."),V(!1);let e=null===(t=s.data)||void 0===t?void 0:t.key;if(e){let i=w.GE.replace("[key]",e);d.push(i)}else d.push(w.AD)}}}catch(e){u(e)}},R=async()=>{try{await g(l.q.mailgun)&&B&&setTimeout(()=>{B()},500)}catch(e){u(e)}};return(0,t.jsxs)(a.xuv,{position:"relative",children:[(0,t.jsx)(a.PPS,{form:A,layout:"vertical",initialValues:W,onFinish:z,onValuesChange:(e,i)=>{let s={...i},t={...W};T&&"**********"===s.mailgun_api_key&&(s.mailgun_api_key=t.mailgun_api_key),V(!m()(s,t))},children:(0,t.jsxs)(a.xuv,{maxWidth:"720px",border:"1px",borderColor:"gray.200",borderRadius:6,overflow:"visible",mt:6,children:[(0,t.jsx)(a.xuv,{backgroundColor:"gray.50",px:6,py:4,display:"flex",flexDirection:"row",alignItems:"center",borderBottom:"1px",borderColor:"gray.200",borderTopRadius:6,children:(0,t.jsxs)(a.Ugi,{children:[(0,t.jsx)(C.Z,{}),(0,t.jsx)(a.X6q,{as:"h3",size:"xs",children:"Mailgun email messaging configuration"})]})}),(0,t.jsxs)(a.xuv,{px:6,py:6,children:[(0,t.jsx)(a.PPS.Item,{name:"domain",label:"Domain",rules:[{required:!0,message:"Domain is required"},{type:"string",min:1,message:"Domain cannot be empty"}],style:{marginBottom:24},children:(0,t.jsx)(a.AntInput,{placeholder:T?"Enter new domain":"Enter domain"})}),(0,t.jsx)(a.PPS.Item,{name:"mailgun_api_key",label:"API key",rules:[{required:!0,message:"API key is required"},{type:"string",min:1,message:"API key cannot be empty"}],children:(0,t.jsx)(a.AntInput.Password,{placeholder:T?"Enter new API key":"Enter API key"})}),(0,t.jsxs)(a.xuv,{mt:6,className:"flex justify-between",children:[(0,t.jsx)(a.xuv,{children:T&&F.isVerified&&(0,t.jsx)(a.wpx,{type:"default",onClick:()=>P(!0),"data-testid":"send-test-message-btn",children:"Send test email"})}),(0,t.jsxs)(a.xuv,{className:"flex",children:[T?(0,t.jsx)(a.wpx,{onClick:R,className:"mr-2","data-testid":"test-btn",loading:p,icon:F.isVerified&&!p?(0,t.jsx)(a.StI,{}):void 0,children:p?"Verifying":F.isVerified?"Verified":F.status}):(0,t.jsx)(a.wpx,{onClick:()=>d.push(w.AD),className:"mr-2",children:"Cancel"}),(0,t.jsx)(a.wpx,{htmlType:"submit",type:"primary","data-testid":"save-btn",disabled:!q,children:"Save"})]})]})]})]})}),(0,t.jsx)(b,{serviceType:l.q.mailgun,isOpen:j,onClose:()=>P(!1)})]})},V=s(5144),A=e=>{var i;let{configKey:s}=e,d=(0,_.useRouter)(),{handleError:u}=(0,n.HK)(),{verifyConfiguration:g,isVerifying:p,getVerificationData:x}=S(),[j,P]=(0,r.useState)(!1),[C,q]=(0,r.useState)(!1),[A]=a.PPS.useForm(),[I]=(0,k.h9)(),[D]=(0,k.sn)(),[E]=(0,k.Ki)(),T=!!s,{data:M,refetch:B}=(0,k.FU)({key:s},{skip:!s}),W={email:(null==M?void 0:null===(i=M.details)||void 0===i?void 0:i.twilio_email_from)||"",twilio_api_key:T?"**********":""};(0,r.useEffect)(()=>{if(M){var e;let i={email:(null===(e=M.details)||void 0===e?void 0:e.twilio_email_from)||"",twilio_api_key:"**********"};A.setFieldsValue(i),q(!1)}},[M,A]);let F=(()=>{let e=x(l.q.twilio_email);if(e){if(!e.success)return{isVerified:!1,status:"Verify configuration"};let i=new Date(e.timestamp),s=(0,o.B)(i,new Date,{addSuffix:!0});return{isVerified:!0,status:"Verified ".concat(s),timestamp:e.timestamp}}if(M){let{last_test_succeeded:e,last_test_timestamp:i}=M;if(i){let s=new Date(i),t=(0,o.B)(s,new Date,{addSuffix:!0});return{isVerified:e,status:e?"Verified ".concat(t):"Verify configuration",timestamp:i}}}let i=d.query.last_test_succeeded,s=d.query.last_test_timestamp;if(s){let e="true"===i||"1"===i,t=new Date(s),a=(0,o.B)(t,new Date,{addSuffix:!0});return{isVerified:e,status:e?"Verified ".concat(a):"Verify configuration",timestamp:s}}return{isVerified:!1,status:"Verify configuration"}})(),N=e=>h()(y()(e,e=>T&&"**********"===e?void 0:e),f()),z=async e=>{try{var i,t;if(T&&s){let t=[],r=(null==M?void 0:null===(i=M.details)||void 0===i?void 0:i.twilio_email_from)||"";e.email!==r&&""!==e.email.trim()&&t.push(D({key:s,config:{key:(null==M?void 0:M.key)||s,name:null==M?void 0:M.name,service_type:(null==M?void 0:M.service_type)||l.q.twilio_email,details:{...null==M?void 0:M.details,twilio_email_from:e.email}}}));let n=N({twilio_api_key:e.twilio_api_key});if(c()(n)||t.push(E({key:s,secrets:n})),0===t.length){a.Pg3.info("No changes to save.");return}let o=await Promise.all(t);if(o.some(e=>(0,v.D4)(e))){let e=o.find(e=>(0,v.D4)(e));u(null==e?void 0:e.error)}else a.Pg3.success("Twilio email configuration successfully updated."),q(!1),B&&B()}else{let i={service_type:l.q.twilio_email,details:{twilio_email_from:e.email},secrets:{twilio_api_key:e.twilio_api_key}},s=await I(i);if((0,v.D4)(s))u(s.error);else{a.Pg3.success("Twilio email configuration successfully created."),q(!1);let e=null===(t=s.data)||void 0===t?void 0:t.key;if(e){let i=w.GE.replace("[key]",e);d.push(i)}else d.push(w.AD)}}}catch(e){u(e)}},R=async()=>{try{await g(l.q.twilio_email)&&B&&setTimeout(()=>{B()},500)}catch(e){u(e)}};return(0,t.jsxs)(a.xuv,{position:"relative",children:[(0,t.jsx)(a.PPS,{form:A,layout:"vertical",initialValues:W,onFinish:z,onValuesChange:(e,i)=>{let s={...i},t={...W};T&&"**********"===s.twilio_api_key&&(s.twilio_api_key=t.twilio_api_key),q(!m()(s,t))},children:(0,t.jsxs)(a.xuv,{maxWidth:"720px",border:"1px",borderColor:"gray.200",borderRadius:6,overflow:"visible",mt:6,children:[(0,t.jsx)(a.xuv,{backgroundColor:"gray.50",px:6,py:4,display:"flex",flexDirection:"row",alignItems:"center",borderBottom:"1px",borderColor:"gray.200",borderTopRadius:6,children:(0,t.jsxs)(a.Ugi,{children:[(0,t.jsx)(V.Z,{}),(0,t.jsx)(a.X6q,{as:"h3",size:"xs",children:"Twilio email messaging configuration"})]})}),(0,t.jsxs)(a.xuv,{px:6,py:6,children:[(0,t.jsx)(a.PPS.Item,{name:"email",label:"Email",rules:[{required:!0,message:"Email is required"},{type:"email",message:"Please enter a valid email"}],style:{marginBottom:24},children:(0,t.jsx)(a.AntInput,{placeholder:T?"Enter new email":"Enter email"})}),(0,t.jsx)(a.PPS.Item,{name:"twilio_api_key",label:"API key",rules:[{required:!0,message:"API key is required"},{type:"string",min:1,message:"API key cannot be empty"}],children:(0,t.jsx)(a.AntInput.Password,{placeholder:T?"Enter new API key":"Enter API key"})}),(0,t.jsxs)(a.xuv,{mt:6,className:"flex justify-between",children:[(0,t.jsx)(a.xuv,{children:T&&F.isVerified&&(0,t.jsx)(a.wpx,{type:"default",onClick:()=>P(!0),"data-testid":"send-test-message-btn",children:"Send test email"})}),(0,t.jsxs)(a.xuv,{className:"flex",children:[T?(0,t.jsx)(a.wpx,{onClick:R,className:"mr-2","data-testid":"test-btn",loading:p,icon:F.isVerified&&!p?(0,t.jsx)(a.StI,{}):void 0,children:p?"Verifying":F.isVerified?"Verified":F.status}):(0,t.jsx)(a.wpx,{onClick:()=>d.push(w.AD),className:"mr-2",children:"Cancel"}),(0,t.jsx)(a.wpx,{htmlType:"submit",type:"primary","data-testid":"save-btn",disabled:!C,children:"Save"})]})]})]})]})}),(0,t.jsx)(b,{serviceType:l.q.twilio_email,isOpen:j,onClose:()=>P(!1)})]})},I=e=>{let{configKey:i}=e,s=(0,_.useRouter)(),{verifyConfiguration:n,isVerifying:d,getVerificationData:u}=S(),[g,p]=(0,r.useState)(!1),[x,j]=(0,r.useState)(!1),[P]=a.PPS.useForm(),[C]=(0,k.h9)(),[q]=(0,k.Ki)(),A=!!i,{data:I,refetch:D}=(0,k.FU)({key:i},{skip:!i}),E={account_sid:A?"**********":"",auth_token:A?"**********":"",messaging_service_sid:A?"**********":"",phone:A?"**********":""};(0,r.useEffect)(()=>{I&&(P.setFieldsValue({account_sid:"**********",auth_token:"**********",messaging_service_sid:"**********",phone:"**********"}),j(!1))},[I,P]);let T=(()=>{let e=u(l.q.twilio_text);if(e){if(!e.success)return{isVerified:!1,status:"Verify configuration"};let i=new Date(e.timestamp),s=(0,o.B)(i,new Date,{addSuffix:!0});return{isVerified:!0,status:"Verified ".concat(s),timestamp:e.timestamp}}if(I){let{last_test_succeeded:e,last_test_timestamp:i}=I;if(i){let s=new Date(i),t=(0,o.B)(s,new Date,{addSuffix:!0});return{isVerified:e,status:e?"Verified ".concat(t):"Verify configuration",timestamp:i}}}let i=s.query.last_test_succeeded,t=s.query.last_test_timestamp;if(t){let e="true"===i||"1"===i,s=new Date(t),a=(0,o.B)(s,new Date,{addSuffix:!0});return{isVerified:e,status:e?"Verified ".concat(a):"Verify configuration",timestamp:t}}return{isVerified:!1,status:"Verify configuration"}})(),M=e=>h()(y()(e,e=>A&&"**********"===e?void 0:e),f()),B=e=>{let i="An unexpected error occurred. Please try again.";return(0,v.Ot)(e)?i=e.data.detail:(0,v.tB)(e)&&(i=e.data.detail[0].msg),i},W=(0,r.useCallback)(()=>{let e=P.getFieldsValue(),i=e.messaging_service_sid,s=e.phone,t=i&&""!==i.trim()&&"**********"!==i,a=s&&""!==s.trim()&&"**********"!==s;return t||a?Promise.resolve():Promise.reject(Error("Either messaging service SID or phone number must be provided"))},[P]),F=async e=>{try{if(A&&i){let s={twilio_account_sid:e.account_sid,twilio_auth_token:e.auth_token,twilio_messaging_service_sid:e.messaging_service_sid,twilio_sender_phone_number:e.phone},t=M(s);if(c()(t)){a.Pg3.info("No changes to save.");return}let r=await q({key:i,secrets:t});(0,v.D4)(r)?a.Pg3.error(B(r.error)):(a.Pg3.success("Twilio SMS configuration successfully updated."),j(!1),D&&D())}else{let i={service_type:l.q.twilio_text,secrets:{twilio_account_sid:e.account_sid,twilio_auth_token:e.auth_token,twilio_messaging_service_sid:e.messaging_service_sid,twilio_sender_phone_number:e.phone}},r=await C(i);if((0,v.D4)(r))a.Pg3.error(B(r.error));else{var t;a.Pg3.success("Twilio SMS configuration successfully created."),j(!1);let e=null===(t=r.data)||void 0===t?void 0:t.key;if(e){let i=w.GE.replace("[key]",e);s.push(i)}else s.push(w.AD)}}}catch(e){a.Pg3.error("An unexpected error occurred. Please try again.")}},N=async()=>{try{await n(l.q.twilio_text)&&D&&setTimeout(()=>{D()},500)}catch(e){a.Pg3.error("An unexpected error occurred during verification.")}},z=()=>{P.validateFields(["messaging_service_sid","phone"]).catch(()=>{})};return(0,t.jsxs)(a.xuv,{position:"relative",children:[(0,t.jsx)(a.PPS,{form:P,layout:"vertical",initialValues:E,onFinish:F,onValuesChange:(e,i)=>{let s={...i},t={...E};A&&Object.keys(s).forEach(e=>{"**********"===s[e]&&(s[e]=t[e])}),j(!m()(s,t))},children:(0,t.jsxs)(a.xuv,{maxWidth:"720px",border:"1px",borderColor:"gray.200",borderRadius:6,overflow:"visible",mt:6,children:[(0,t.jsx)(a.xuv,{backgroundColor:"gray.50",px:6,py:4,display:"flex",flexDirection:"row",alignItems:"center",borderBottom:"1px",borderColor:"gray.200",borderTopRadius:6,children:(0,t.jsxs)(a.Ugi,{children:[(0,t.jsx)(V.Z,{}),(0,t.jsx)(a.X6q,{as:"h3",size:"xs",children:"Twilio SMS messaging configuration"})]})}),(0,t.jsxs)(a.xuv,{px:6,py:6,children:[(0,t.jsx)(a.PPS.Item,{name:"account_sid",label:"Account SID",rules:[{required:!0,message:"Account SID is required"},{type:"string",min:1,message:"Account SID cannot be empty"}],style:{marginBottom:24},children:(0,t.jsx)(a.AntInput.Password,{placeholder:A?"Enter new account SID":"Enter account SID"})}),(0,t.jsx)(a.PPS.Item,{name:"auth_token",label:"Auth token",rules:[{required:!0,message:"Auth token is required"},{type:"string",min:1,message:"Auth token cannot be empty"}],style:{marginBottom:24},children:(0,t.jsx)(a.AntInput.Password,{placeholder:A?"Enter new auth token":"Enter auth token"})}),(0,t.jsx)(a.PPS.Item,{name:"messaging_service_sid",label:"Messaging service SID",rules:[{validator:W}],style:{marginBottom:24},children:(0,t.jsx)(a.AntInput.Password,{placeholder:A?"Enter new messaging service SID":"Enter messaging service SID",onChange:()=>z()})}),(0,t.jsx)(a.PPS.Item,{name:"phone",label:"Phone number",rules:[{validator:W}],children:(0,t.jsx)(a.AntInput.Password,{placeholder:A?"Enter new phone number":"Enter phone number",onChange:()=>z()})}),(0,t.jsxs)(a.xuv,{mt:6,className:"flex justify-between",children:[(0,t.jsx)(a.xuv,{children:A&&T.isVerified&&(0,t.jsx)(a.wpx,{type:"default",onClick:()=>p(!0),"data-testid":"send-test-message-btn",children:"Send test SMS"})}),(0,t.jsxs)(a.xuv,{className:"flex",children:[A?(0,t.jsx)(a.wpx,{onClick:N,className:"mr-2","data-testid":"test-btn",loading:d,icon:T.isVerified&&!d?(0,t.jsx)(a.StI,{}):void 0,children:d?"Verifying":T.isVerified?"Verified":T.status}):(0,t.jsx)(a.wpx,{onClick:()=>s.push(w.AD),className:"mr-2",children:"Cancel"}),(0,t.jsx)(a.wpx,{htmlType:"submit",type:"primary","data-testid":"save-btn",disabled:!x,children:"Save"})]})]})]})]})}),(0,t.jsx)(b,{serviceType:l.q.twilio_text,isOpen:g,onClose:()=>p(!1)})]})},D=e=>{let{configKey:i,initialProviderType:s}=e,[o,d]=(0,r.useState)(s||""),c=!!i,{handleError:u}=(0,n.HK)(),{data:m,isLoading:g,error:f}=(0,k.FU)({key:i},{skip:!i}),{data:p}=(0,k.qt)();(0,r.useEffect)(()=>{c&&(null==m?void 0:m.service_type)&&d(m.service_type)},[c,null==m?void 0:m.service_type]),(0,r.useEffect)(()=>{f&&u(f)},[f,u]);let y=(0,r.useMemo)(()=>{var e;let i=new Set((null==p?void 0:null===(e=p.items)||void 0===e?void 0:e.map(e=>e.service_type))||[]),s=!c&&i.has(l.q.mailgun),t=!c&&i.has(l.q.twilio_email),a=!c&&i.has(l.q.twilio_text),r=!c&&i.has(l.q.aws_ses);return[{value:l.q.mailgun,label:l.k.mailgun,disabled:s,title:s?"Only one messaging provider of each type can be created":void 0},{value:l.q.twilio_email,label:l.k.twilio_email,disabled:t,title:t?"Only one messaging provider of each type can be created":void 0},{value:l.q.twilio_text,label:l.k.twilio_text,disabled:a,title:a?"Only one messaging provider of each type can be created":void 0},{value:l.q.aws_ses,label:l.k.aws_ses,disabled:r,title:r?"Only one messaging provider of each type can be created":void 0}]},[p,c]);return c&&g?(0,t.jsx)(a.xuv,{display:"flex",justifyContent:"center",alignItems:"center",height:"200px",children:(0,t.jsx)(a.$jN,{})}):!c||m||g?(0,t.jsxs)(a.xuv,{children:[!c&&(0,t.jsxs)(a.xuv,{maxWidth:"720px",border:"1px",borderColor:"gray.200",borderRadius:6,overflow:"visible",mt:6,mb:4,children:[(0,t.jsx)(a.xuv,{backgroundColor:"gray.50",px:6,py:4,display:"flex",flexDirection:"row",alignItems:"center",borderBottom:"1px",borderColor:"gray.200",borderTopRadius:6,children:(0,t.jsx)(a.X6q,{as:"h3",size:"xs",children:"Select messaging provider"})}),(0,t.jsx)(a.xuv,{px:6,py:6,children:(0,t.jsx)(a.PPS,{layout:"vertical",children:(0,t.jsx)(a.PPS.Item,{label:"Provider type",name:"provider_type",rules:[{required:!0,message:"Please select a provider type"}],children:(0,t.jsx)(a.WPr,{placeholder:"Choose a messaging provider...","aria-label":"Select a messaging provider",value:o||void 0,onChange:e=>d(e),options:y})})})})]}),o&&(()=>{switch(o){case l.q.mailgun:return(0,t.jsx)(q,{configKey:i});case l.q.twilio_email:return(0,t.jsx)(A,{configKey:i});case l.q.twilio_text:return(0,t.jsx)(I,{configKey:i});case l.q.aws_ses:return(0,t.jsx)(P,{configKey:i});default:return null}})()]}):(0,t.jsx)(a.xuv,{children:(0,t.jsxs)(a.xvT,{color:"red.500",children:["Messaging configuration not found for key: ",i]})})}},90710:function(e,i,s){s.d(i,{k:function(){return a},q:function(){return t}});let t={mailgun:"mailgun",twilio_email:"twilio_email",twilio_text:"twilio_text",aws_ses:"aws_ses"},a={mailgun:"Mailgun email",twilio_email:"Twilio email",twilio_text:"Twilio SMS",aws_ses:"AWS SES email"}},17828:function(e,i,s){var t=s(24246);s(27378),i.Z=()=>(0,t.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink",viewBox:"0 0 74.375 85",width:"20",height:"20",fill:"#fff",fillRule:"evenodd",stroke:"#000",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("use",{xlinkHref:"#A",x:"2.188",y:"2.5"}),(0,t.jsx)("symbol",{id:"A",overflow:"visible",children:(0,t.jsxs)("g",{stroke:"none",children:[(0,t.jsx)("path",{d:"M16.558 12.75L0 38.591l16.558 25.841 13.227-3.324.654-44.869-13.881-3.489z",fill:"#876929"}),(0,t.jsx)("path",{d:"M35.049 59.786l-18.491 4.645V12.75l18.491 4.645v42.391z",fill:"#d9a741"}),(0,t.jsxs)("g",{fill:"#876929",children:[(0,t.jsx)("path",{d:"M32.849 21.614L35.05 80 70 62.867l-.01-43.615-8.914 1.448-28.228.913z"}),(0,t.jsx)("path",{d:"M46.184 33.149l10.906-.632 10.778-19.164L40.612 0 30.439 4.364l15.745 28.785z"})]}),(0,t.jsx)("path",{d:"M40.612 0l27.256 13.353-10.778 19.164L40.612 0z",fill:"#d9a741"}),(0,t.jsx)("path",{d:"M35.049 5.539L57.09 44.742l3.788 22.595L35.049 80l-10.46-5.131V9.64l10.45-4.101h.01z",fill:"#876929"}),(0,t.jsx)("path",{d:"M69.991 19.251L70 62.867 35.05 80V5.539l22.041 39.203 12.899-25.491z",fill:"#d9a741"})]})})]})},44907:function(e,i,s){var t=s(24246);s(27378),i.Z=()=>(0,t.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",preserveAspectRatio:"xMidYMid",viewBox:"-0.5 0 257 257",children:(0,t.jsx)("path",{fill:"#C02428",d:"M128.418 80.526c-26.51 0-48.884 21.475-48.884 48.728a48.197 48.197 0 0014.187 34.579 48.532 48.532 0 0034.697 14.14c26.511 0 48.875-21.476 48.875-48.719 0-27.253-22.364-48.728-48.875-48.728zm-76.22 47.895c0-41.285 33.968-75.138 75.395-75.138 41.417 0 75.385 33.853 75.385 75.138 0 2.478 0 5.788-.825 8.266-.835 7.422 4.972 13.2 12.43 13.2 12.43 0 14.08-15.678 14.08-21.466 0-55.328-45.573-100.746-101.07-100.746-55.518 0-101.07 45.418-101.07 100.746 0 55.339 45.552 100.747 101.07 100.747 29.822 0 56.333-12.388 74.56-33.03l20.703 17.342c-22.364 26.43-57.158 42.952-94.448 42.952-34.097.105-66.827-13.35-90.932-37.384C13.37 195.016-.118 162.392 0 128.411 0 58.228 57.159.432 128.418.432 198.832.432 256 58.238 256 128.432c0 28.075-13.256 51.205-40.591 51.205-11.605 0-19.053-5.787-23.2-11.565-13.255 21.476-37.29 35.508-64.626 35.508-20.017.068-39.234-7.827-53.388-21.933a74.755 74.755 0 01-22.008-53.205l.01-.02zm76.21-22.297c12.43 0 22.374 9.91 22.374 22.297 0 12.388-9.944 22.298-22.364 22.298a22.322 22.322 0 01-15.848-6.504 22.169 22.169 0 01-6.526-15.794c0-12.387 9.944-22.297 22.374-22.297h-.01z"})})},5144:function(e,i,s){var t=s(24246);i.Z=()=>(0,t.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 256",children:(0,t.jsx)("path",{fill:"#F12E45",d:"M128 0c70.656 0 128 57.344 128 128s-57.344 128-128 128S0 198.656 0 128 57.344 0 128 0zm0 33.792c-52.224 0-94.208 41.984-94.208 94.208S75.776 222.208 128 222.208s94.208-41.984 94.208-94.208S180.224 33.792 128 33.792zm31.744 99.328c14.704 0 26.624 11.92 26.624 26.624 0 14.704-11.92 26.624-26.624 26.624-14.704 0-26.624-11.92-26.624-26.624 0-14.704 11.92-26.624 26.624-26.624zm-63.488 0c14.704 0 26.624 11.92 26.624 26.624 0 14.704-11.92 26.624-26.624 26.624-14.704 0-26.624-11.92-26.624-26.624 0-14.704 11.92-26.624 26.624-26.624zm63.488-63.488c14.704 0 26.624 11.92 26.624 26.624 0 14.704-11.92 26.624-26.624 26.624-14.704 0-26.624-11.92-26.624-26.624 0-14.704 11.92-26.624 26.624-26.624zm-63.488 0c14.704 0 26.624 11.92 26.624 26.624 0 14.704-11.92 26.624-26.624 26.624-14.704 0-26.624-11.92-26.624-26.624 0-14.704 11.92-26.624 26.624-26.624z"})})},42478:function(e,i,s){s.d(i,{FU:function(){return d},JE:function(){return a},Ki:function(){return u},SU:function(){return m},W:function(){return g},h9:function(){return r},jc:function(){return t},qt:function(){return o},sn:function(){return c}});let{useGetEmailInviteStatusQuery:t,useGetActiveMessagingProviderQuery:a,useCreateMessagingConfigurationMutation:r,useCreateMessagingConfigurationSecretsMutation:n,useGetMessagingConfigurationDetailsQuery:l,useGetMessagingConfigurationsQuery:o,useGetMessagingConfigurationByKeyQuery:d,useUpdateMessagingConfigurationByKeyMutation:c,useUpdateMessagingConfigurationSecretsByKeyMutation:u,useCreateTestConnectionMessageMutation:m,useDeleteMessagingConfigurationByKeyMutation:g}=s(78780).u.injectEndpoints({endpoints:e=>({getEmailInviteStatus:e.query({query:()=>({url:"/messaging/email-invite/status"}),providesTags:()=>["Email Invite Status"]}),createMessagingConfiguration:e.mutation({query:e=>({url:"messaging/config",method:"POST",body:e}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getActiveMessagingProvider:e.query({queryFn:async(e,i,s,t)=>{let a=await t({url:"messaging/default/active"});return a.error&&404===a.error.status?{data:null}:a},providesTags:["Messaging Config"]}),createMessagingConfigurationSecrets:e.mutation({query:e=>({url:"messaging/default/".concat(e.service_type,"/secret"),method:"PUT",body:e.details}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getMessagingConfigurationDetails:e.query({query:e=>({url:"messaging/default/".concat(e.type)}),providesTags:["Messaging Config"]}),getMessagingConfigurations:e.query({query:()=>({url:"messaging/config"}),providesTags:["Messaging Config"]}),getMessagingConfigurationByKey:e.query({query:e=>({url:"messaging/config/".concat(e.key)}),providesTags:["Messaging Config"]}),createTestConnectionMessage:e.mutation({query:e=>({url:"messaging/test/".concat(e.service_type),method:"POST",body:e.details}),invalidatesTags:["Messaging Config"]}),updateMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"PATCH",body:e.config}),invalidatesTags:["Messaging Config","Configuration Settings"]}),updateMessagingConfigurationSecretsByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key,"/secret"),method:"PUT",body:e.secrets}),invalidatesTags:["Messaging Config","Configuration Settings"]}),deleteMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"DELETE"}),invalidatesTags:["Messaging Config","Configuration Settings"]})})})}}]);
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3377],{77213:function(e,i,s){s.d(i,{Z:function(){return g}});var t=s(24246),a=s(87949),r=s(88038),n=s.n(r),l=s(86677);s(27378);var o=s(25980),d=s(90867),c=s(42478),u=s(77830),m=()=>{let e=(0,l.useRouter)();return(0,t.jsx)(a.xuv,{bg:"gray.50",border:"1px solid",borderColor:"blue.400",borderRadius:"md",justifyContent:"space-between",p:5,mb:5,mt:5,children:(0,t.jsxs)(a.xuv,{children:[(0,t.jsxs)(a.Kqy,{direction:{base:"column",sm:"row"},justifyContent:"space-between",children:[(0,t.jsx)(a.xvT,{fontWeight:"semibold",children:"Configure your storage and messaging provider"}),(0,t.jsx)(a.wpx,{onClick:()=>{e.push(u.AD)},children:"Configure"})]}),(0,t.jsxs)(a.xvT,{children:["Before Fides can process your privacy requests we need two simple steps to configure your storage and email client."," "]})]})})},g=e=>{let{children:i,title:s,padded:r=!0,mainProps:u}=e,g=(0,o.hz)(),f=(0,l.useRouter)(),p="/privacy-requests"===f.pathname||"/datastore-connection"===f.pathname,y=!(g.flags.messagingConfiguration&&p),{data:x}=(0,c.JE)(void 0,{skip:y}),{data:h}=(0,d.PW)(void 0,{skip:y}),_=g.flags.messagingConfiguration&&(!x||!h)&&p;return(0,t.jsxs)(a.kCb,{"data-testid":s,direction:"column",h:"100vh",children:[(0,t.jsxs)(n(),{children:[(0,t.jsxs)("title",{children:["Fides Admin UI - ",s]}),(0,t.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,t.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,t.jsxs)(a.kCb,{as:"main",direction:"column",py:r?6:0,px:r?10:0,h:r?"calc(100% - 48px)":"full",flex:1,minWidth:0,overflow:"auto",...u,children:[_?(0,t.jsx)(m,{}):null,i]})]})}},90980:function(e,i,s){s.d(i,{R:function(){return o}});var t=s(24246),a=s(87949),r=s(79894),n=s.n(r),l=s(63662);let o=e=>{let{onClick:i,...s}=e;return(0,t.jsxs)(a.kCb,{alignItems:"center",mt:-4,mb:3,onClick:i,cursor:"pointer",...s,children:[(0,t.jsx)(a.wpx,{"aria-label":"Back",icon:(0,t.jsx)(a.Rpv,{}),className:"mr-2",size:"small"}),(0,t.jsx)(a.xvT,{as:"a",fontSize:"sm",fontWeight:"500",children:"Back"})]})};i.Z=e=>{let{backPath:i,...s}=e,r=(0,l.useRouter)();return(0,t.jsxs)(a.kCb,{alignItems:"center",mb:6,...s,children:[(0,t.jsx)(a.wpx,{onClick:()=>r.push(i),"aria-label":"Back",icon:(0,t.jsx)(a.Rpv,{}),className:"mr-2",size:"small"}),(0,t.jsx)(a.xvT,{as:n(),href:i,tabIndex:-1,fontSize:"sm",fontWeight:"500",children:"Back"})]})}},10792:function(e,i,s){s.d(i,{Z:function(){return D}});var t=s(24246),a=s(87949),r=s(27378),n=s(17245),l=s(90710),o=s(51980),d=s(90104),c=s.n(d),u=s(56141),m=s.n(u),g=s(92465),f=s.n(g),p=s(25389),y=s.n(p),x=s(15539),h=s.n(x),_=s(86677),v=s(812),w=s(77830),j=s(17828),k=s(42478);let b=e=>{let{serviceType:i,isOpen:s,onClose:n}=e,[o]=(0,k.SU)(),[d,c]=(0,r.useState)(!1),[u]=a.PPS.useForm(),m=i===l.q.twilio_text,g=e=>{let i="An unexpected error occurred. Please try again.";return(0,v.Ot)(e)?i=e.data.detail:(0,v.tB)(e)&&(i=e.data.detail[0].msg),i},f=async e=>{c(!0);try{let s=await o({service_type:i,details:{to_identity:m?{phone_number:e.phone}:{email:e.email}}});(0,v.D4)(s)?a.Pg3.error(g(s.error)):(a.Pg3.success("Test message sent successfully!"),n())}catch(e){a.Pg3.error(g(e))}finally{c(!1)}},p=m?"SMS":"email",y=()=>{n()};return(0,t.jsx)(a.$zI,{title:"Test ".concat(p),open:s,onCancel:y,footer:null,children:(0,t.jsx)(a.gCW,{spacing:4,children:(0,t.jsxs)(a.PPS,{form:u,onFinish:f,layout:"vertical",style:{width:"100%"},children:[m?(0,t.jsx)(a.PPS.Item,{name:"phone",label:"Phone number",rules:[{required:!0,message:"Phone number is required"},{pattern:/^\+?[1-9]\d{1,14}$/,message:"Please enter a valid phone number"}],children:(0,t.jsx)(a.AntInput,{placeholder:"+1234567890"})}):(0,t.jsx)(a.PPS.Item,{name:"email",label:"Email address",rules:[{required:!0,message:"Email address is required"},{type:"email",message:"Please enter a valid email address"}],children:(0,t.jsx)(a.AntInput,{placeholder:"test@example.com"})}),(0,t.jsx)(a.PPS.Item,{style:{marginBottom:0,marginTop:24},children:(0,t.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:"8px"},children:[(0,t.jsx)(a.wpx,{onClick:y,disabled:d,children:"Cancel"}),(0,t.jsx)(a.wpx,{type:"primary",htmlType:"submit",loading:d,"data-testid":"send-test-message-btn",children:d?"Sending...":"Send test ".concat(p)})]})})]})})})},S=()=>{let[e]=(0,k.SU)(),[i,s]=(0,r.useState)(!1),[t,n]=(0,r.useState)({}),o=e=>{let i="An unexpected error occurred. Please try again.";return(0,v.Ot)(e)?i=e.data.detail:(0,v.tB)(e)&&(i=e.data.detail[0].msg),i};return{verifyConfiguration:async i=>{s(!0);try{let s=i===l.q.twilio_text,t=await e({service_type:i,details:{to_identity:s?{phone_number:"+15551234567"}:{email:"test@example.com"}}});if((0,v.D4)(t)){a.Pg3.error(o(t.error));let e=new Date().toISOString();return n(s=>({...s,[i]:{timestamp:e,success:!1}})),!1}a.Pg3.success("Configuration verified successfully!");let r=new Date().toISOString();return n(e=>({...e,[i]:{timestamp:r,success:!0}})),!0}catch(e){return a.Pg3.error(o(e)),!1}finally{s(!1)}},isVerifying:i,isConfigurationVerified:e=>{var i;return!!(null===(i=t[e])||void 0===i?void 0:i.success)},getVerificationData:e=>t[e]}};var P=e=>{var i,s,d;let{configKey:u}=e,g=(0,_.useRouter)(),{handleError:p}=(0,n.HK)(),{verifyConfiguration:x,isVerifying:P,getVerificationData:C}=S(),q=!!u,[V,A]=(0,r.useState)(!1),[I,D]=(0,r.useState)(!1),[E,T]=(0,r.useState)(q?"**********":"secret_keys"),[M]=a.PPS.useForm(),[B]=(0,k.h9)(),[W]=(0,k.sn)(),[F]=(0,k.Ki)(),{data:N,refetch:z}=(0,k.FU)({key:u},{skip:!u}),R={email_from:(null==N?void 0:null===(i=N.details)||void 0===i?void 0:i.email_from)||"",domain:(null==N?void 0:null===(s=N.details)||void 0===s?void 0:s.domain)||"",aws_region:(null==N?void 0:null===(d=N.details)||void 0===d?void 0:d.aws_region)||"",auth_method:q?"**********":"secret_keys",aws_access_key_id:q?"**********":"",aws_secret_access_key:q?"**********":"",aws_assume_role_arn:q?"**********":""};(0,r.useEffect)(()=>{if(N){var e,i,s;let t={email_from:(null===(e=N.details)||void 0===e?void 0:e.email_from)||"",domain:(null===(i=N.details)||void 0===i?void 0:i.domain)||"",aws_region:(null===(s=N.details)||void 0===s?void 0:s.aws_region)||"",auth_method:"**********",aws_access_key_id:"**********",aws_secret_access_key:"**********",aws_assume_role_arn:"**********"};M.setFieldsValue(t),T("**********"),D(!1)}},[N,M]);let K=(()=>{let e=C(l.q.aws_ses);if(e){if(!e.success)return{isVerified:!1,status:"Verify configuration"};let i=new Date(e.timestamp),s=(0,o.B)(i,new Date,{addSuffix:!0});return{isVerified:!0,status:"Verified ".concat(s),timestamp:e.timestamp}}if(N){let{last_test_succeeded:e,last_test_timestamp:i}=N;if(i){let s=new Date(i),t=(0,o.B)(s,new Date,{addSuffix:!0});return{isVerified:e,status:e?"Verified ".concat(t):"Verify configuration",timestamp:i}}}let i=g.query.last_test_succeeded,s=g.query.last_test_timestamp;if(s){let e="true"===i||"1"===i,t=new Date(s),a=(0,o.B)(t,new Date,{addSuffix:!0});return{isVerified:e,status:e?"Verified ".concat(a):"Verify configuration",timestamp:s}}return{isVerified:!1,status:"Verify configuration"}})(),O=e=>h()(y()(e,e=>q&&"**********"===e?void 0:e),f()),U=(0,r.useCallback)(()=>{let e=M.getFieldsValue(),i=e.email_from,{domain:s}=e,t=i&&""!==i.trim(),a=s&&""!==s.trim();return t||a?Promise.resolve():Promise.reject(Error("Either email from or domain must be provided"))},[M]),L=async e=>{try{var i,s,t,r;if(q&&u){let r=[],n=(null==N?void 0:null===(i=N.details)||void 0===i?void 0:i.email_from)||"",o=(null==N?void 0:null===(s=N.details)||void 0===s?void 0:s.domain)||"",d=(null==N?void 0:null===(t=N.details)||void 0===t?void 0:t.aws_region)||"";(e.email_from!==n||e.domain!==o||e.aws_region!==d)&&r.push(W({key:u,config:{key:(null==N?void 0:N.key)||u,name:null==N?void 0:N.name,service_type:(null==N?void 0:N.service_type)||l.q.aws_ses,details:{...null==N?void 0:N.details,email_from:e.email_from||null,domain:e.domain||null,aws_region:e.aws_region}}}));let m={auth_method:e.auth_method,aws_access_key_id:e.aws_access_key_id,aws_secret_access_key:e.aws_secret_access_key,aws_assume_role_arn:e.aws_assume_role_arn},g=O(m);if(c()(g)||r.push(F({key:u,secrets:g})),0===r.length){a.Pg3.info("No changes to save.");return}let f=await Promise.all(r);if(f.some(e=>(0,v.D4)(e))){let e=f.find(e=>(0,v.D4)(e));p(null==e?void 0:e.error)}else a.Pg3.success("AWS SES configuration successfully updated."),D(!1),z&&z()}else{let i={service_type:l.q.aws_ses,details:{email_from:e.email_from||null,domain:e.domain||null,aws_region:e.aws_region},secrets:{auth_method:e.auth_method,aws_access_key_id:e.aws_access_key_id,aws_secret_access_key:e.aws_secret_access_key,aws_assume_role_arn:e.aws_assume_role_arn}},s=await B(i);if((0,v.D4)(s))p(s.error);else{a.Pg3.success("AWS SES configuration successfully created."),D(!1);let e=null===(r=s.data)||void 0===r?void 0:r.key;if(e){let i=w.GE.replace("[key]",e);g.push(i)}else g.push(w.AD)}}}catch(e){p(e)}},Z=async()=>{try{await x(l.q.aws_ses)&&z&&setTimeout(()=>{z()},500)}catch(e){p(e)}},H=()=>{M.validateFields(["email_from","domain"]).catch(()=>{})};return(0,t.jsxs)(a.xuv,{position:"relative",children:[(0,t.jsx)(a.PPS,{form:M,layout:"vertical",initialValues:R,onFinish:L,onValuesChange:(e,i)=>{let s={...i},t={...R};q&&Object.keys(s).forEach(e=>{"**********"===s[e]&&(s[e]=t[e])}),void 0!==e.auth_method&&(T(e.auth_method),"automatic"===e.auth_method&&M.setFieldsValue({aws_access_key_id:"",aws_secret_access_key:""})),D(!m()(s,t))},children:(0,t.jsxs)(a.xuv,{maxWidth:"720px",border:"1px",borderColor:"gray.200",borderRadius:6,overflow:"visible",mt:6,children:[(0,t.jsx)(a.xuv,{backgroundColor:"gray.50",px:6,py:4,display:"flex",flexDirection:"row",alignItems:"center",borderBottom:"1px",borderColor:"gray.200",borderTopRadius:6,children:(0,t.jsxs)(a.Ugi,{children:[(0,t.jsx)(j.Z,{}),(0,t.jsx)(a.X6q,{as:"h3",size:"xs",children:"AWS SES email messaging configuration"})]})}),(0,t.jsxs)(a.xuv,{px:6,py:6,children:[(0,t.jsx)(a.PPS.Item,{name:"email_from",label:"Email from",rules:[{validator:U}],style:{marginBottom:24},children:(0,t.jsx)(a.AntInput,{placeholder:q?"Enter new email from":"Enter email from",onChange:()=>H()})}),(0,t.jsx)(a.PPS.Item,{name:"domain",label:"Domain",rules:[{validator:U}],style:{marginBottom:24},children:(0,t.jsx)(a.AntInput,{placeholder:q?"Enter new domain":"Enter domain",onChange:()=>H()})}),(0,t.jsx)(a.PPS.Item,{name:"aws_region",label:"AWS region",rules:[{required:!0,message:"AWS region is required"}],style:{marginBottom:24},children:(0,t.jsx)(a.AntInput,{placeholder:q?"Enter new AWS region":"Enter AWS region (e.g., us-east-1)"})}),(0,t.jsx)(a.PPS.Item,{name:"auth_method",label:"Authentication method",rules:[{required:!0,message:"Authentication method is required"}],style:{marginBottom:24},children:(0,t.jsx)(a.WPr,{placeholder:"Select authentication method",options:[{label:"Secret keys",value:"secret_keys"},{label:"Automatic",value:"automatic"}]})}),("secret_keys"===E||q&&"**********"===E)&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(a.PPS.Item,{name:"aws_access_key_id",label:"AWS access key ID",rules:"secret_keys"===E||q&&"**********"===E?[{required:!0,message:"AWS access key ID is required for secret keys authentication"}]:[],style:{marginBottom:24},children:(0,t.jsx)(a.AntInput.Password,{placeholder:q?"Enter new AWS access key ID":"Enter AWS access key ID"})}),(0,t.jsx)(a.PPS.Item,{name:"aws_secret_access_key",label:"AWS secret access key",rules:"secret_keys"===E||q&&"**********"===E?[{required:!0,message:"AWS secret access key is required for secret keys authentication"}]:[],style:{marginBottom:24},children:(0,t.jsx)(a.AntInput.Password,{placeholder:q?"Enter new AWS secret access key":"Enter AWS secret access key"})})]}),(0,t.jsx)(a.PPS.Item,{name:"aws_assume_role_arn",label:"AWS assume role ARN",children:(0,t.jsx)(a.AntInput.Password,{placeholder:q?"Enter new AWS assume role ARN":"Enter AWS assume role ARN (optional)"})}),(0,t.jsxs)(a.xuv,{mt:6,className:"flex justify-between",children:[(0,t.jsx)(a.xuv,{children:q&&K.isVerified&&(0,t.jsx)(a.wpx,{type:"default",onClick:()=>A(!0),"data-testid":"send-test-message-btn",children:"Send test email"})}),(0,t.jsxs)(a.xuv,{className:"flex",children:[q?(0,t.jsx)(a.wpx,{onClick:Z,className:"mr-2","data-testid":"test-btn",loading:P,icon:K.isVerified&&!P?(0,t.jsx)(a.StI,{}):void 0,children:P?"Verifying":K.isVerified?"Verified":K.status}):(0,t.jsx)(a.wpx,{onClick:()=>g.push(w.AD),className:"mr-2",children:"Cancel"}),(0,t.jsx)(a.wpx,{htmlType:"submit",type:"primary","data-testid":"save-btn",disabled:!I,children:"Save"})]})]})]})]})}),(0,t.jsx)(b,{serviceType:l.q.aws_ses,isOpen:V,onClose:()=>A(!1)})]})},C=s(44907),q=e=>{var i;let{configKey:s}=e,d=(0,_.useRouter)(),{handleError:u}=(0,n.HK)(),{verifyConfiguration:g,isVerifying:p,getVerificationData:x}=S(),[j,P]=(0,r.useState)(!1),[q,V]=(0,r.useState)(!1),[A]=a.PPS.useForm(),[I]=(0,k.h9)(),[D]=(0,k.sn)(),[E]=(0,k.Ki)(),T=!!s,{data:M,refetch:B}=(0,k.FU)({key:s},{skip:!s}),W={domain:(null==M?void 0:null===(i=M.details)||void 0===i?void 0:i.domain)||"",mailgun_api_key:T?"**********":""};(0,r.useEffect)(()=>{if(M){var e;let i={domain:(null===(e=M.details)||void 0===e?void 0:e.domain)||"",mailgun_api_key:"**********"};A.setFieldsValue(i),V(!1)}},[M,A]);let F=(()=>{let e=x(l.q.mailgun);if(e){if(!e.success)return{isVerified:!1,status:"Verify configuration"};let i=new Date(e.timestamp),s=(0,o.B)(i,new Date,{addSuffix:!0});return{isVerified:!0,status:"Verified ".concat(s),timestamp:e.timestamp}}if(M){let{last_test_succeeded:e,last_test_timestamp:i}=M;if(i){let s=new Date(i),t=(0,o.B)(s,new Date,{addSuffix:!0});return{isVerified:e,status:e?"Verified ".concat(t):"Verify configuration",timestamp:i}}}let i=d.query.last_test_succeeded,s=d.query.last_test_timestamp;if(s){let e="true"===i||"1"===i,t=new Date(s),a=(0,o.B)(t,new Date,{addSuffix:!0});return{isVerified:e,status:e?"Verified ".concat(a):"Verify configuration",timestamp:s}}return{isVerified:!1,status:"Verify configuration"}})(),N=e=>h()(y()(e,e=>T&&"**********"===e?void 0:e),f()),z=async e=>{try{var i,t;if(T&&s){let t=[],r=(null==M?void 0:null===(i=M.details)||void 0===i?void 0:i.domain)||"";e.domain!==r&&""!==e.domain.trim()&&t.push(D({key:s,config:{key:(null==M?void 0:M.key)||s,name:null==M?void 0:M.name,service_type:(null==M?void 0:M.service_type)||l.q.mailgun,details:{...null==M?void 0:M.details,is_eu_domain:"false",domain:e.domain}}}));let n=N({mailgun_api_key:e.mailgun_api_key});if(c()(n)||t.push(E({key:s,secrets:n})),0===t.length){a.Pg3.info("No changes to save.");return}let o=await Promise.all(t);if(o.some(e=>(0,v.D4)(e))){let e=o.find(e=>(0,v.D4)(e));u(null==e?void 0:e.error)}else a.Pg3.success("Mailgun configuration successfully updated."),V(!1),B&&B()}else{let i={service_type:l.q.mailgun,details:{is_eu_domain:"false",domain:e.domain},secrets:{mailgun_api_key:e.mailgun_api_key}},s=await I(i);if((0,v.D4)(s))u(s.error);else{a.Pg3.success("Mailgun configuration successfully created."),V(!1);let e=null===(t=s.data)||void 0===t?void 0:t.key;if(e){let i=w.GE.replace("[key]",e);d.push(i)}else d.push(w.AD)}}}catch(e){u(e)}},R=async()=>{try{await g(l.q.mailgun)&&B&&setTimeout(()=>{B()},500)}catch(e){u(e)}};return(0,t.jsxs)(a.xuv,{position:"relative",children:[(0,t.jsx)(a.PPS,{form:A,layout:"vertical",initialValues:W,onFinish:z,onValuesChange:(e,i)=>{let s={...i},t={...W};T&&"**********"===s.mailgun_api_key&&(s.mailgun_api_key=t.mailgun_api_key),V(!m()(s,t))},children:(0,t.jsxs)(a.xuv,{maxWidth:"720px",border:"1px",borderColor:"gray.200",borderRadius:6,overflow:"visible",mt:6,children:[(0,t.jsx)(a.xuv,{backgroundColor:"gray.50",px:6,py:4,display:"flex",flexDirection:"row",alignItems:"center",borderBottom:"1px",borderColor:"gray.200",borderTopRadius:6,children:(0,t.jsxs)(a.Ugi,{children:[(0,t.jsx)(C.Z,{}),(0,t.jsx)(a.X6q,{as:"h3",size:"xs",children:"Mailgun email messaging configuration"})]})}),(0,t.jsxs)(a.xuv,{px:6,py:6,children:[(0,t.jsx)(a.PPS.Item,{name:"domain",label:"Domain",rules:[{required:!0,message:"Domain is required"},{type:"string",min:1,message:"Domain cannot be empty"}],style:{marginBottom:24},children:(0,t.jsx)(a.AntInput,{placeholder:T?"Enter new domain":"Enter domain"})}),(0,t.jsx)(a.PPS.Item,{name:"mailgun_api_key",label:"API key",rules:[{required:!0,message:"API key is required"},{type:"string",min:1,message:"API key cannot be empty"}],children:(0,t.jsx)(a.AntInput.Password,{placeholder:T?"Enter new API key":"Enter API key"})}),(0,t.jsxs)(a.xuv,{mt:6,className:"flex justify-between",children:[(0,t.jsx)(a.xuv,{children:T&&F.isVerified&&(0,t.jsx)(a.wpx,{type:"default",onClick:()=>P(!0),"data-testid":"send-test-message-btn",children:"Send test email"})}),(0,t.jsxs)(a.xuv,{className:"flex",children:[T?(0,t.jsx)(a.wpx,{onClick:R,className:"mr-2","data-testid":"test-btn",loading:p,icon:F.isVerified&&!p?(0,t.jsx)(a.StI,{}):void 0,children:p?"Verifying":F.isVerified?"Verified":F.status}):(0,t.jsx)(a.wpx,{onClick:()=>d.push(w.AD),className:"mr-2",children:"Cancel"}),(0,t.jsx)(a.wpx,{htmlType:"submit",type:"primary","data-testid":"save-btn",disabled:!q,children:"Save"})]})]})]})]})}),(0,t.jsx)(b,{serviceType:l.q.mailgun,isOpen:j,onClose:()=>P(!1)})]})},V=s(5144),A=e=>{var i;let{configKey:s}=e,d=(0,_.useRouter)(),{handleError:u}=(0,n.HK)(),{verifyConfiguration:g,isVerifying:p,getVerificationData:x}=S(),[j,P]=(0,r.useState)(!1),[C,q]=(0,r.useState)(!1),[A]=a.PPS.useForm(),[I]=(0,k.h9)(),[D]=(0,k.sn)(),[E]=(0,k.Ki)(),T=!!s,{data:M,refetch:B}=(0,k.FU)({key:s},{skip:!s}),W={email:(null==M?void 0:null===(i=M.details)||void 0===i?void 0:i.twilio_email_from)||"",twilio_api_key:T?"**********":""};(0,r.useEffect)(()=>{if(M){var e;let i={email:(null===(e=M.details)||void 0===e?void 0:e.twilio_email_from)||"",twilio_api_key:"**********"};A.setFieldsValue(i),q(!1)}},[M,A]);let F=(()=>{let e=x(l.q.twilio_email);if(e){if(!e.success)return{isVerified:!1,status:"Verify configuration"};let i=new Date(e.timestamp),s=(0,o.B)(i,new Date,{addSuffix:!0});return{isVerified:!0,status:"Verified ".concat(s),timestamp:e.timestamp}}if(M){let{last_test_succeeded:e,last_test_timestamp:i}=M;if(i){let s=new Date(i),t=(0,o.B)(s,new Date,{addSuffix:!0});return{isVerified:e,status:e?"Verified ".concat(t):"Verify configuration",timestamp:i}}}let i=d.query.last_test_succeeded,s=d.query.last_test_timestamp;if(s){let e="true"===i||"1"===i,t=new Date(s),a=(0,o.B)(t,new Date,{addSuffix:!0});return{isVerified:e,status:e?"Verified ".concat(a):"Verify configuration",timestamp:s}}return{isVerified:!1,status:"Verify configuration"}})(),N=e=>h()(y()(e,e=>T&&"**********"===e?void 0:e),f()),z=async e=>{try{var i,t;if(T&&s){let t=[],r=(null==M?void 0:null===(i=M.details)||void 0===i?void 0:i.twilio_email_from)||"";e.email!==r&&""!==e.email.trim()&&t.push(D({key:s,config:{key:(null==M?void 0:M.key)||s,name:null==M?void 0:M.name,service_type:(null==M?void 0:M.service_type)||l.q.twilio_email,details:{...null==M?void 0:M.details,twilio_email_from:e.email}}}));let n=N({twilio_api_key:e.twilio_api_key});if(c()(n)||t.push(E({key:s,secrets:n})),0===t.length){a.Pg3.info("No changes to save.");return}let o=await Promise.all(t);if(o.some(e=>(0,v.D4)(e))){let e=o.find(e=>(0,v.D4)(e));u(null==e?void 0:e.error)}else a.Pg3.success("Twilio email configuration successfully updated."),q(!1),B&&B()}else{let i={service_type:l.q.twilio_email,details:{twilio_email_from:e.email},secrets:{twilio_api_key:e.twilio_api_key}},s=await I(i);if((0,v.D4)(s))u(s.error);else{a.Pg3.success("Twilio email configuration successfully created."),q(!1);let e=null===(t=s.data)||void 0===t?void 0:t.key;if(e){let i=w.GE.replace("[key]",e);d.push(i)}else d.push(w.AD)}}}catch(e){u(e)}},R=async()=>{try{await g(l.q.twilio_email)&&B&&setTimeout(()=>{B()},500)}catch(e){u(e)}};return(0,t.jsxs)(a.xuv,{position:"relative",children:[(0,t.jsx)(a.PPS,{form:A,layout:"vertical",initialValues:W,onFinish:z,onValuesChange:(e,i)=>{let s={...i},t={...W};T&&"**********"===s.twilio_api_key&&(s.twilio_api_key=t.twilio_api_key),q(!m()(s,t))},children:(0,t.jsxs)(a.xuv,{maxWidth:"720px",border:"1px",borderColor:"gray.200",borderRadius:6,overflow:"visible",mt:6,children:[(0,t.jsx)(a.xuv,{backgroundColor:"gray.50",px:6,py:4,display:"flex",flexDirection:"row",alignItems:"center",borderBottom:"1px",borderColor:"gray.200",borderTopRadius:6,children:(0,t.jsxs)(a.Ugi,{children:[(0,t.jsx)(V.Z,{}),(0,t.jsx)(a.X6q,{as:"h3",size:"xs",children:"Twilio email messaging configuration"})]})}),(0,t.jsxs)(a.xuv,{px:6,py:6,children:[(0,t.jsx)(a.PPS.Item,{name:"email",label:"Email",rules:[{required:!0,message:"Email is required"},{type:"email",message:"Please enter a valid email"}],style:{marginBottom:24},children:(0,t.jsx)(a.AntInput,{placeholder:T?"Enter new email":"Enter email"})}),(0,t.jsx)(a.PPS.Item,{name:"twilio_api_key",label:"API key",rules:[{required:!0,message:"API key is required"},{type:"string",min:1,message:"API key cannot be empty"}],children:(0,t.jsx)(a.AntInput.Password,{placeholder:T?"Enter new API key":"Enter API key"})}),(0,t.jsxs)(a.xuv,{mt:6,className:"flex justify-between",children:[(0,t.jsx)(a.xuv,{children:T&&F.isVerified&&(0,t.jsx)(a.wpx,{type:"default",onClick:()=>P(!0),"data-testid":"send-test-message-btn",children:"Send test email"})}),(0,t.jsxs)(a.xuv,{className:"flex",children:[T?(0,t.jsx)(a.wpx,{onClick:R,className:"mr-2","data-testid":"test-btn",loading:p,icon:F.isVerified&&!p?(0,t.jsx)(a.StI,{}):void 0,children:p?"Verifying":F.isVerified?"Verified":F.status}):(0,t.jsx)(a.wpx,{onClick:()=>d.push(w.AD),className:"mr-2",children:"Cancel"}),(0,t.jsx)(a.wpx,{htmlType:"submit",type:"primary","data-testid":"save-btn",disabled:!C,children:"Save"})]})]})]})]})}),(0,t.jsx)(b,{serviceType:l.q.twilio_email,isOpen:j,onClose:()=>P(!1)})]})},I=e=>{let{configKey:i}=e,s=(0,_.useRouter)(),{verifyConfiguration:n,isVerifying:d,getVerificationData:u}=S(),[g,p]=(0,r.useState)(!1),[x,j]=(0,r.useState)(!1),[P]=a.PPS.useForm(),[C]=(0,k.h9)(),[q]=(0,k.Ki)(),A=!!i,{data:I,refetch:D}=(0,k.FU)({key:i},{skip:!i}),E={account_sid:A?"**********":"",auth_token:A?"**********":"",messaging_service_sid:A?"**********":"",phone:A?"**********":""};(0,r.useEffect)(()=>{I&&(P.setFieldsValue({account_sid:"**********",auth_token:"**********",messaging_service_sid:"**********",phone:"**********"}),j(!1))},[I,P]);let T=(()=>{let e=u(l.q.twilio_text);if(e){if(!e.success)return{isVerified:!1,status:"Verify configuration"};let i=new Date(e.timestamp),s=(0,o.B)(i,new Date,{addSuffix:!0});return{isVerified:!0,status:"Verified ".concat(s),timestamp:e.timestamp}}if(I){let{last_test_succeeded:e,last_test_timestamp:i}=I;if(i){let s=new Date(i),t=(0,o.B)(s,new Date,{addSuffix:!0});return{isVerified:e,status:e?"Verified ".concat(t):"Verify configuration",timestamp:i}}}let i=s.query.last_test_succeeded,t=s.query.last_test_timestamp;if(t){let e="true"===i||"1"===i,s=new Date(t),a=(0,o.B)(s,new Date,{addSuffix:!0});return{isVerified:e,status:e?"Verified ".concat(a):"Verify configuration",timestamp:t}}return{isVerified:!1,status:"Verify configuration"}})(),M=e=>h()(y()(e,e=>A&&"**********"===e?void 0:e),f()),B=e=>{let i="An unexpected error occurred. Please try again.";return(0,v.Ot)(e)?i=e.data.detail:(0,v.tB)(e)&&(i=e.data.detail[0].msg),i},W=(0,r.useCallback)(()=>{let e=P.getFieldsValue(),i=e.messaging_service_sid,s=e.phone,t=i&&""!==i.trim()&&"**********"!==i,a=s&&""!==s.trim()&&"**********"!==s;return t||a?Promise.resolve():Promise.reject(Error("Either messaging service SID or phone number must be provided"))},[P]),F=async e=>{try{if(A&&i){let s={twilio_account_sid:e.account_sid,twilio_auth_token:e.auth_token,twilio_messaging_service_sid:e.messaging_service_sid,twilio_sender_phone_number:e.phone},t=M(s);if(c()(t)){a.Pg3.info("No changes to save.");return}let r=await q({key:i,secrets:t});(0,v.D4)(r)?a.Pg3.error(B(r.error)):(a.Pg3.success("Twilio SMS configuration successfully updated."),j(!1),D&&D())}else{let i={service_type:l.q.twilio_text,secrets:{twilio_account_sid:e.account_sid,twilio_auth_token:e.auth_token,twilio_messaging_service_sid:e.messaging_service_sid,twilio_sender_phone_number:e.phone}},r=await C(i);if((0,v.D4)(r))a.Pg3.error(B(r.error));else{var t;a.Pg3.success("Twilio SMS configuration successfully created."),j(!1);let e=null===(t=r.data)||void 0===t?void 0:t.key;if(e){let i=w.GE.replace("[key]",e);s.push(i)}else s.push(w.AD)}}}catch(e){a.Pg3.error("An unexpected error occurred. Please try again.")}},N=async()=>{try{await n(l.q.twilio_text)&&D&&setTimeout(()=>{D()},500)}catch(e){a.Pg3.error("An unexpected error occurred during verification.")}},z=()=>{P.validateFields(["messaging_service_sid","phone"]).catch(()=>{})};return(0,t.jsxs)(a.xuv,{position:"relative",children:[(0,t.jsx)(a.PPS,{form:P,layout:"vertical",initialValues:E,onFinish:F,onValuesChange:(e,i)=>{let s={...i},t={...E};A&&Object.keys(s).forEach(e=>{"**********"===s[e]&&(s[e]=t[e])}),j(!m()(s,t))},children:(0,t.jsxs)(a.xuv,{maxWidth:"720px",border:"1px",borderColor:"gray.200",borderRadius:6,overflow:"visible",mt:6,children:[(0,t.jsx)(a.xuv,{backgroundColor:"gray.50",px:6,py:4,display:"flex",flexDirection:"row",alignItems:"center",borderBottom:"1px",borderColor:"gray.200",borderTopRadius:6,children:(0,t.jsxs)(a.Ugi,{children:[(0,t.jsx)(V.Z,{}),(0,t.jsx)(a.X6q,{as:"h3",size:"xs",children:"Twilio SMS messaging configuration"})]})}),(0,t.jsxs)(a.xuv,{px:6,py:6,children:[(0,t.jsx)(a.PPS.Item,{name:"account_sid",label:"Account SID",rules:[{required:!0,message:"Account SID is required"},{type:"string",min:1,message:"Account SID cannot be empty"}],style:{marginBottom:24},children:(0,t.jsx)(a.AntInput.Password,{placeholder:A?"Enter new account SID":"Enter account SID"})}),(0,t.jsx)(a.PPS.Item,{name:"auth_token",label:"Auth token",rules:[{required:!0,message:"Auth token is required"},{type:"string",min:1,message:"Auth token cannot be empty"}],style:{marginBottom:24},children:(0,t.jsx)(a.AntInput.Password,{placeholder:A?"Enter new auth token":"Enter auth token"})}),(0,t.jsx)(a.PPS.Item,{name:"messaging_service_sid",label:"Messaging service SID",rules:[{validator:W}],style:{marginBottom:24},children:(0,t.jsx)(a.AntInput.Password,{placeholder:A?"Enter new messaging service SID":"Enter messaging service SID",onChange:()=>z()})}),(0,t.jsx)(a.PPS.Item,{name:"phone",label:"Phone number",rules:[{validator:W}],children:(0,t.jsx)(a.AntInput.Password,{placeholder:A?"Enter new phone number":"Enter phone number",onChange:()=>z()})}),(0,t.jsxs)(a.xuv,{mt:6,className:"flex justify-between",children:[(0,t.jsx)(a.xuv,{children:A&&T.isVerified&&(0,t.jsx)(a.wpx,{type:"default",onClick:()=>p(!0),"data-testid":"send-test-message-btn",children:"Send test SMS"})}),(0,t.jsxs)(a.xuv,{className:"flex",children:[A?(0,t.jsx)(a.wpx,{onClick:N,className:"mr-2","data-testid":"test-btn",loading:d,icon:T.isVerified&&!d?(0,t.jsx)(a.StI,{}):void 0,children:d?"Verifying":T.isVerified?"Verified":T.status}):(0,t.jsx)(a.wpx,{onClick:()=>s.push(w.AD),className:"mr-2",children:"Cancel"}),(0,t.jsx)(a.wpx,{htmlType:"submit",type:"primary","data-testid":"save-btn",disabled:!x,children:"Save"})]})]})]})]})}),(0,t.jsx)(b,{serviceType:l.q.twilio_text,isOpen:g,onClose:()=>p(!1)})]})},D=e=>{let{configKey:i,initialProviderType:s}=e,[o,d]=(0,r.useState)(s||""),c=!!i,{handleError:u}=(0,n.HK)(),{data:m,isLoading:g,error:f}=(0,k.FU)({key:i},{skip:!i}),{data:p}=(0,k.qt)();(0,r.useEffect)(()=>{c&&(null==m?void 0:m.service_type)&&d(m.service_type)},[c,null==m?void 0:m.service_type]),(0,r.useEffect)(()=>{f&&u(f)},[f,u]);let y=(0,r.useMemo)(()=>{var e;let i=new Set((null==p?void 0:null===(e=p.items)||void 0===e?void 0:e.map(e=>e.service_type))||[]),s=!c&&i.has(l.q.mailgun),t=!c&&i.has(l.q.twilio_email),a=!c&&i.has(l.q.twilio_text),r=!c&&i.has(l.q.aws_ses);return[{value:l.q.mailgun,label:l.k.mailgun,disabled:s,title:s?"Only one messaging provider of each type can be created":void 0},{value:l.q.twilio_email,label:l.k.twilio_email,disabled:t,title:t?"Only one messaging provider of each type can be created":void 0},{value:l.q.twilio_text,label:l.k.twilio_text,disabled:a,title:a?"Only one messaging provider of each type can be created":void 0},{value:l.q.aws_ses,label:l.k.aws_ses,disabled:r,title:r?"Only one messaging provider of each type can be created":void 0}]},[p,c]);return c&&g?(0,t.jsx)(a.xuv,{display:"flex",justifyContent:"center",alignItems:"center",height:"200px",children:(0,t.jsx)(a.$jN,{})}):!c||m||g?(0,t.jsxs)(a.xuv,{children:[!c&&(0,t.jsxs)(a.xuv,{maxWidth:"720px",border:"1px",borderColor:"gray.200",borderRadius:6,overflow:"visible",mt:6,mb:4,children:[(0,t.jsx)(a.xuv,{backgroundColor:"gray.50",px:6,py:4,display:"flex",flexDirection:"row",alignItems:"center",borderBottom:"1px",borderColor:"gray.200",borderTopRadius:6,children:(0,t.jsx)(a.X6q,{as:"h3",size:"xs",children:"Select messaging provider"})}),(0,t.jsx)(a.xuv,{px:6,py:6,children:(0,t.jsx)(a.PPS,{layout:"vertical",children:(0,t.jsx)(a.PPS.Item,{label:"Provider type",name:"provider_type",rules:[{required:!0,message:"Please select a provider type"}],children:(0,t.jsx)(a.WPr,{placeholder:"Choose a messaging provider...","aria-label":"Select a messaging provider",value:o||void 0,onChange:e=>d(e),options:y})})})})]}),o&&(()=>{switch(o){case l.q.mailgun:return(0,t.jsx)(q,{configKey:i});case l.q.twilio_email:return(0,t.jsx)(A,{configKey:i});case l.q.twilio_text:return(0,t.jsx)(I,{configKey:i});case l.q.aws_ses:return(0,t.jsx)(P,{configKey:i});default:return null}})()]}):(0,t.jsx)(a.xuv,{children:(0,t.jsxs)(a.xvT,{color:"red.500",children:["Messaging configuration not found for key: ",i]})})}},90710:function(e,i,s){s.d(i,{k:function(){return a},q:function(){return t}});let t={mailgun:"mailgun",twilio_email:"twilio_email",twilio_text:"twilio_text",aws_ses:"aws_ses"},a={mailgun:"Mailgun email",twilio_email:"Twilio email",twilio_text:"Twilio SMS",aws_ses:"AWS SES email"}},17828:function(e,i,s){var t=s(24246);s(27378),i.Z=()=>(0,t.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink",viewBox:"0 0 74.375 85",width:"20",height:"20",fill:"#fff",fillRule:"evenodd",stroke:"#000",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("use",{xlinkHref:"#A",x:"2.188",y:"2.5"}),(0,t.jsx)("symbol",{id:"A",overflow:"visible",children:(0,t.jsxs)("g",{stroke:"none",children:[(0,t.jsx)("path",{d:"M16.558 12.75L0 38.591l16.558 25.841 13.227-3.324.654-44.869-13.881-3.489z",fill:"#876929"}),(0,t.jsx)("path",{d:"M35.049 59.786l-18.491 4.645V12.75l18.491 4.645v42.391z",fill:"#d9a741"}),(0,t.jsxs)("g",{fill:"#876929",children:[(0,t.jsx)("path",{d:"M32.849 21.614L35.05 80 70 62.867l-.01-43.615-8.914 1.448-28.228.913z"}),(0,t.jsx)("path",{d:"M46.184 33.149l10.906-.632 10.778-19.164L40.612 0 30.439 4.364l15.745 28.785z"})]}),(0,t.jsx)("path",{d:"M40.612 0l27.256 13.353-10.778 19.164L40.612 0z",fill:"#d9a741"}),(0,t.jsx)("path",{d:"M35.049 5.539L57.09 44.742l3.788 22.595L35.049 80l-10.46-5.131V9.64l10.45-4.101h.01z",fill:"#876929"}),(0,t.jsx)("path",{d:"M69.991 19.251L70 62.867 35.05 80V5.539l22.041 39.203 12.899-25.491z",fill:"#d9a741"})]})})]})},44907:function(e,i,s){var t=s(24246);s(27378),i.Z=()=>(0,t.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",preserveAspectRatio:"xMidYMid",viewBox:"-0.5 0 257 257",children:(0,t.jsx)("path",{fill:"#C02428",d:"M128.418 80.526c-26.51 0-48.884 21.475-48.884 48.728a48.197 48.197 0 0014.187 34.579 48.532 48.532 0 0034.697 14.14c26.511 0 48.875-21.476 48.875-48.719 0-27.253-22.364-48.728-48.875-48.728zm-76.22 47.895c0-41.285 33.968-75.138 75.395-75.138 41.417 0 75.385 33.853 75.385 75.138 0 2.478 0 5.788-.825 8.266-.835 7.422 4.972 13.2 12.43 13.2 12.43 0 14.08-15.678 14.08-21.466 0-55.328-45.573-100.746-101.07-100.746-55.518 0-101.07 45.418-101.07 100.746 0 55.339 45.552 100.747 101.07 100.747 29.822 0 56.333-12.388 74.56-33.03l20.703 17.342c-22.364 26.43-57.158 42.952-94.448 42.952-34.097.105-66.827-13.35-90.932-37.384C13.37 195.016-.118 162.392 0 128.411 0 58.228 57.159.432 128.418.432 198.832.432 256 58.238 256 128.432c0 28.075-13.256 51.205-40.591 51.205-11.605 0-19.053-5.787-23.2-11.565-13.255 21.476-37.29 35.508-64.626 35.508-20.017.068-39.234-7.827-53.388-21.933a74.755 74.755 0 01-22.008-53.205l.01-.02zm76.21-22.297c12.43 0 22.374 9.91 22.374 22.297 0 12.388-9.944 22.298-22.364 22.298a22.322 22.322 0 01-15.848-6.504 22.169 22.169 0 01-6.526-15.794c0-12.387 9.944-22.297 22.374-22.297h-.01z"})})},5144:function(e,i,s){var t=s(24246);i.Z=()=>(0,t.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 256",children:(0,t.jsx)("path",{fill:"#F12E45",d:"M128 0c70.656 0 128 57.344 128 128s-57.344 128-128 128S0 198.656 0 128 57.344 0 128 0zm0 33.792c-52.224 0-94.208 41.984-94.208 94.208S75.776 222.208 128 222.208s94.208-41.984 94.208-94.208S180.224 33.792 128 33.792zm31.744 99.328c14.704 0 26.624 11.92 26.624 26.624 0 14.704-11.92 26.624-26.624 26.624-14.704 0-26.624-11.92-26.624-26.624 0-14.704 11.92-26.624 26.624-26.624zm-63.488 0c14.704 0 26.624 11.92 26.624 26.624 0 14.704-11.92 26.624-26.624 26.624-14.704 0-26.624-11.92-26.624-26.624 0-14.704 11.92-26.624 26.624-26.624zm63.488-63.488c14.704 0 26.624 11.92 26.624 26.624 0 14.704-11.92 26.624-26.624 26.624-14.704 0-26.624-11.92-26.624-26.624 0-14.704 11.92-26.624 26.624-26.624zm-63.488 0c14.704 0 26.624 11.92 26.624 26.624 0 14.704-11.92 26.624-26.624 26.624-14.704 0-26.624-11.92-26.624-26.624 0-14.704 11.92-26.624 26.624-26.624z"})})},42478:function(e,i,s){s.d(i,{FU:function(){return d},JE:function(){return a},Ki:function(){return u},SU:function(){return m},W:function(){return g},h9:function(){return r},jc:function(){return t},qt:function(){return o},sn:function(){return c}});let{useGetEmailInviteStatusQuery:t,useGetActiveMessagingProviderQuery:a,useCreateMessagingConfigurationMutation:r,useCreateMessagingConfigurationSecretsMutation:n,useGetMessagingConfigurationDetailsQuery:l,useGetMessagingConfigurationsQuery:o,useGetMessagingConfigurationByKeyQuery:d,useUpdateMessagingConfigurationByKeyMutation:c,useUpdateMessagingConfigurationSecretsByKeyMutation:u,useCreateTestConnectionMessageMutation:m,useDeleteMessagingConfigurationByKeyMutation:g}=s(78780).u.injectEndpoints({endpoints:e=>({getEmailInviteStatus:e.query({query:()=>({url:"/messaging/email-invite/status"}),providesTags:()=>["Email Invite Status"]}),createMessagingConfiguration:e.mutation({query:e=>({url:"messaging/config",method:"POST",body:e}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getActiveMessagingProvider:e.query({queryFn:async(e,i,s,t)=>{let a=await t({url:"messaging/default/active"});return a.error&&404===a.error.status?{data:null}:a},providesTags:["Messaging Config"]}),createMessagingConfigurationSecrets:e.mutation({query:e=>({url:"messaging/default/".concat(e.service_type,"/secret"),method:"PUT",body:e.details}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getMessagingConfigurationDetails:e.query({query:e=>({url:"messaging/default/".concat(e.type)}),providesTags:["Messaging Config"]}),getMessagingConfigurations:e.query({query:()=>({url:"messaging/config"}),providesTags:["Messaging Config"]}),getMessagingConfigurationByKey:e.query({query:e=>({url:"messaging/config/".concat(e.key)}),providesTags:["Messaging Config"]}),createTestConnectionMessage:e.mutation({query:e=>({url:"messaging/test/".concat(e.service_type),method:"POST",body:e.details}),invalidatesTags:["Messaging Config"]}),updateMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"PATCH",body:e.config}),invalidatesTags:["Messaging Config","Configuration Settings"]}),updateMessagingConfigurationSecretsByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key,"/secret"),method:"PUT",body:e.secrets}),invalidatesTags:["Messaging Config","Configuration Settings"]}),deleteMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"DELETE"}),invalidatesTags:["Messaging Config","Configuration Settings"]})})})}}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3696],{83696:function(e,s,a){a.d(s,{Z:function(){return el}});var l=a(24246),t=a(20595),n=a(91437),i=()=>(0,l.jsxs)(t.xuv,{children:[(0,l.jsx)(t.xuv,{pb:4,fontSize:"18px",fontWeight:"semibold",children:"Role Description"}),(0,l.jsx)(t.gCW,{spacing:4,children:n.K.map(e=>(0,l.jsxs)(t.xuv,{width:"100%",padding:4,borderRadius:"md",backgroundColor:"gray.75",fontSize:"14px",children:[(0,l.jsx)(t.xuv,{fontWeight:"semibold",children:e.label}),(0,l.jsx)(t.xuv,{color:"gray.700",children:e.description})]},e.roleKey))})]}),r=a(16134),d=a(65735),o=a(19904),c=a(34090),h=a(86677),u=a(27378),m=a(812),p=a(46238),x=a(58452),j=a(77830),w=a(46628),g=a(26917),b=a(1315),f=a(95492),y=a(65497);let v=e=>{let{assignedSystems:s,onAssignedSystemChange:a}=e,n=(0,r.C)(y.Ux);if((0,y.d6)(n,{skip:!n}),0===s.length)return null;let i=e=>{a(s.filter(s=>s.fides_key!==e.fides_key))};return(0,l.jsxs)(t.iA_,{size:"sm","data-testid":"assign-systems-delete-table",children:[(0,l.jsx)(t.hrZ,{children:(0,l.jsxs)(t.Tr,{children:[(0,l.jsx)(t.Th,{children:"System"}),(0,l.jsx)(t.Th,{})]})}),(0,l.jsx)(t.p3B,{children:s.map(e=>(0,l.jsxs)(t.Tr,{_hover:{bg:"gray.50"},"data-testid":"row-".concat(e.fides_key),children:[(0,l.jsx)(t.Td,{children:e.name}),(0,l.jsx)(t.Td,{textAlign:"end",children:(0,l.jsx)(t.wpx,{"aria-label":"Unassign system from user",icon:(0,l.jsx)(f.l,{}),onClick:()=>i(e),"data-testid":"unassign-btn"})})]},e.fides_key))})]})};var _=e=>{let{allSystems:s,assignedSystems:a,onChange:n}=e,i=e=>{a.find(s=>s.fides_key===e.fides_key)?n(a.filter(s=>s.fides_key!==e.fides_key)):n([...a,e])};return(0,l.jsx)(t.xuv,{overflowY:"auto",maxHeight:"300px",children:(0,l.jsxs)(t.iA_,{size:"sm","data-testid":"assign-systems-table",maxHeight:"50vh",overflowY:"scroll",children:[(0,l.jsx)(t.hrZ,{position:"sticky",top:0,background:"white",zIndex:1,children:(0,l.jsxs)(t.Tr,{children:[(0,l.jsx)(t.Th,{children:"System"}),(0,l.jsx)(t.Th,{children:"Assign"})]})}),(0,l.jsx)(t.p3B,{children:s.map(e=>{let s=!!a.find(s=>s.fides_key===e.fides_key);return(0,l.jsxs)(t.Tr,{_hover:{bg:"gray.50"},"data-testid":"row-".concat(e.fides_key),children:[(0,l.jsx)(t.Td,{children:e.name}),(0,l.jsx)(t.Td,{children:(0,l.jsx)(t.rAg,{checked:s,onChange:()=>i(e),"data-testid":"assign-switch"})})]},e.fides_key)})})]})})};let C=(e,s)=>{var a,l;return(null===(a=e.name)||void 0===a?void 0:a.toLocaleLowerCase().includes(s.toLocaleLowerCase()))||(null===(l=e.description)||void 0===l?void 0:l.toLocaleLowerCase().includes(s.toLocaleLowerCase()))};var k=e=>{let{isOpen:s,onClose:a,assignedSystems:n,onAssignedSystemChange:i}=e,{data:r}=(0,b.K3)(),[d,o]=(0,u.useState)(""),[c,h]=(0,u.useState)(n),m=async()=>{i(c),a()},p=!r||0===r.length,x=(0,u.useMemo)(()=>r?r.filter(e=>C(e,d)):[],[r,d]),j=(0,u.useMemo)(()=>{let e=new Set(c.map(e=>e.fides_key));return x.every(s=>e.has(s.fides_key))},[x,c]);return(0,l.jsxs)(t.u_l,{isOpen:s,onClose:a,size:"2xl",children:[(0,l.jsx)(t.ZAr,{}),(0,l.jsxs)(t.hzk,{p:8,"data-testid":"confirmation-modal",children:[(0,l.jsxs)(t.xBx,{fontWeight:"medium",display:"flex",justifyContent:"space-between",alignItems:"center",children:[(0,l.jsx)(t.xvT,{children:"Assign systems"}),(0,l.jsxs)(t.j8w,{color:"success",children:["Assigned to ",n.length," systems"]})]}),(0,l.jsx)(t.fef,{"data-testid":"assign-systems-modal-body",children:p?(0,l.jsx)(t.xvT,{children:"No systems found"}):(0,l.jsxs)(t.Kqy,{spacing:4,children:[(0,l.jsxs)(t.kCb,{justifyContent:"space-between",children:[(0,l.jsx)(t.xvT,{fontSize:"sm",flexGrow:1,fontWeight:"medium",children:"Assign systems in your organization to this user"}),(0,l.jsx)(t.xuv,{children:(0,l.jsxs)(t.NIc,{display:"flex",alignItems:"center",children:[(0,l.jsx)(t.lXp,{fontSize:"sm",htmlFor:"assign-all-systems",mb:"0",children:"Assign all systems"}),(0,l.jsx)(t.rAg,{size:"small",id:"assign-all-systems",checked:j,onChange:e=>{e&&r?h(x):h(r?r.filter(e=>!x.includes(e)):[])},"data-testid":"assign-all-systems-toggle"})]})})]}),(0,l.jsx)(g.Z,{value:d,onChange:o,placeholder:"Search for systems","data-testid":"system-search",withIcon:!0}),(0,l.jsx)(_,{allSystems:x,assignedSystems:c,onChange:h})]})}),(0,l.jsx)(t.mzw,{justifyContent:"flex-start",children:(0,l.jsxs)("div",{children:[(0,l.jsx)(t.wpx,{onClick:a,className:"mr-2","data-testid":"cancel-btn",children:"Cancel"}),p?null:(0,l.jsx)(t.wpx,{type:"primary",onClick:m,"data-testid":"confirm-btn",children:"Confirm"})]})})]})]})},S=e=>{let{label:s,roleKey:a,isSelected:n,isDisabled:i,assignedSystems:r,onAssignedSystemChange:o}=e,{setFieldValue:h}=(0,c.u6)(),u=(0,t.qY0)(),m=i?"You do not have sufficient permissions to assign this role.":void 0;return n?(0,l.jsxs)(t.Kqy,{borderRadius:"md",border:"1px solid",borderColor:"gray.200",p:4,backgroundColor:"gray.50","aria-selected":"true",spacing:4,"data-testid":"selected",children:[(0,l.jsxs)(t.kCb,{alignItems:"center",justifyContent:"space-between",children:[(0,l.jsx)(t.xvT,{fontSize:"md",fontWeight:"semibold",children:s}),(0,l.jsx)(t.StI,{})]}),a!==d.A7.APPROVER&&a!==d.A7.RESPONDENT&&a!==d.A7.EXTERNAL_RESPONDENT?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(t.kCb,{alignItems:"center",children:[(0,l.jsx)(t.xvT,{fontSize:"sm",fontWeight:"semibold",mr:1,children:"Assigned systems"}),(0,l.jsx)(p.b,{label:"Assigned systems refer to those systems that have been specifically allocated to a user for management purposes. Users assigned to a system possess full edit permissions and are listed as the Data Steward for the respective system."})]}),(0,l.jsx)(t.wpx,{disabled:i,title:m,type:"primary",size:"small",onClick:u.onOpen,"data-testid":"assign-systems-btn",children:"Assign systems +"}),(0,l.jsx)(v,{assignedSystems:r,onAssignedSystemChange:o}),u.isOpen?(0,l.jsx)(k,{isOpen:u.isOpen,onClose:u.onClose,assignedSystems:r,onAssignedSystemChange:o}):null]}):null]}):(0,l.jsx)(t.wpx,{onClick:()=>{h("roles",[a])},"data-testid":"role-option-".concat(s),title:m,disabled:i,children:s})};let E={roles:[]};var R=()=>{var e,s;let a=(0,t.pmc)(),i=(0,h.useRouter)(),g=(0,r.C)(y.Ux);(0,y.d6)(g,{skip:!g});let{isOpen:b,onOpen:f,onClose:v}=(0,t.qY0)(),_=(0,r.C)(y.R$),[C,k]=(0,u.useState)(_),[R]=(0,y.G$)();(0,u.useEffect)(()=>{k(_)},[_]);let{data:A,isLoading:P}=(0,y.gU)(null!=g?g:"",{skip:!g}),[T]=(0,y.lD)(),N=!!(null==A?void 0:null===(e=A.roles)||void 0===e?void 0:e.includes(d.A7.EXTERNAL_RESPONDENT)),O=async e=>{if(b&&v(),!g)return;let s=e.roles.includes(d.A7.APPROVER),l=await T({user_id:g,payload:{roles:e.roles}});if((0,m.D4)(l)){a((0,w.Vo)((0,m.e$)(l.error)));return}if(!s){let e=C.map(e=>e.fides_key),s=await R({userId:g,fidesKeys:e});if((0,m.D4)(s)){a((0,w.Vo)((0,m.e$)(s.error)));return}}a((0,w.t5)("Permissions updated"))},I=async e=>{g&&(C.length>0&&e.roles.includes(d.A7.APPROVER)?f():await O(e))},z=(0,o.Tg)([d.Sh.USER_PERMISSION_ASSIGN_OWNERS]);if(!g)return null;if(P)return(0,l.jsx)(t.$jN,{});if(!z&&(null==A?void 0:null===(s=A.roles)||void 0===s?void 0:s.includes(d.A7.OWNER)))return(0,l.jsx)(t.xvT,{"data-testid":"insufficient-access",children:"You do not have sufficient access to change this user's permissions."});let q=(null==A?void 0:A.roles)?{roles:A.roles}:E,U=n.K.filter(e=>N?e.roleKey===d.A7.EXTERNAL_RESPONDENT:e.roleKey!==d.A7.EXTERNAL_RESPONDENT),D=N?"External respondent role cannot be changed":void 0;return(0,l.jsx)(c.J9,{onSubmit:I,initialValues:q,enableReinitialize:!0,children:e=>{let{values:s,isSubmitting:a,dirty:n}=e;return(0,l.jsxs)(c.l0,{children:[(0,l.jsxs)(t.Kqy,{spacing:7,children:[(0,l.jsxs)(t.Kqy,{spacing:3,"data-testid":"role-options",children:[(0,l.jsxs)(t.kCb,{alignItems:"center",children:[(0,l.jsx)(t.xvT,{fontSize:"sm",fontWeight:"semibold",mr:1,children:"User role"}),(0,l.jsx)(p.b,{label:"A user's role in the organization determines what parts of the UI they can access and which functions are available to them."})]}),U.map(e=>{let a=s.roles.indexOf(e.roleKey)>=0,t=e.roleKey===d.A7.OWNER?!z:N;return(0,l.jsx)(S,{isSelected:a,isDisabled:t,assignedSystems:C,onAssignedSystemChange:k,...e},e.roleKey)}),!N&&(0,l.jsx)(t.esZ,{title:"To invite a new External respondent user, create a manual task integration and then click on the 'Manage secure access' button",children:(0,l.jsx)(t.wpx,{disabled:!0,"data-testid":"role-option-External respondent",children:"External respondent"})})]}),(0,l.jsxs)("div",{children:[(0,l.jsx)(t.wpx,{onClick:()=>i.push(j.e3),children:"Cancel"}),(0,l.jsx)(t.esZ,{title:D,children:(0,l.jsx)(t.wpx,{className:"ml-2",type:"primary",htmlType:"submit",loading:a,disabled:!n&&C===_||N,"data-testid":"save-btn",children:"Save"})})]})]}),(0,l.jsx)(x.Z,{isOpen:b,onClose:v,onConfirm:()=>O(s),title:"Change role to Approver",testId:"downgrade-to-approver-confirmation-modal",continueButtonText:"Yes",message:(0,l.jsx)(t.xvT,{children:"Switching to an approver role will remove all assigned systems. Do you wish to proceed?"})})]})}})},A=a(61038),P=a(55484),T=a(25980),N=a(40324),O=a(96006),I=a(7426),z=a(42478),q=a(76174),U=a(91317),D=a(16125),Z=a(36835),W=a(31883),K=a(52253);let L=(e,s,a)=>{var l;try{localStorage.removeItem(K.xH)}catch(e){}e((0,Z.kS)()),null==a||null===(l=a.onClose)||void 0===l||l.call(a),s.push(K._e)},V=P.Ry().shape({password:O.a.label("Password"),passwordConfirmation:P.Z_().required().oneOf([P.iH("password")],"Passwords must match").label("Password confirmation")}),B={password:"",passwordConfirmation:""},Y=e=>{let s=(0,t.qY0)(),a=(0,t.pmc)(),[l]=(0,y.ls)(),n=(0,h.useRouter)(),i=(0,D.I0)(),d=(0,r.C)(Z.dy),o=async t=>{let r=await l({id:e,new_password:t.password});(0,W.D4)(r)?a((0,w.Vo)((0,m.e$)(r.error))):(a((0,w.t5)("Successfully reset user's password. Please inform the user of their new password.")),s.onClose(),(null==d?void 0:d.id)===e&&L(i,n))};return{...s,handleResetPassword:o}};var F=e=>{let{id:s}=e,{handleResetPassword:a,isOpen:n,onClose:i,onOpen:r}=Y(s);return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(t.wpx,{onClick:r,"data-testid":"reset-password-btn",children:"Reset password"}),(0,l.jsxs)(t.u_l,{isCentered:!0,isOpen:n,onClose:i,children:[(0,l.jsx)(t.ZAr,{}),(0,l.jsx)(t.hzk,{children:(0,l.jsx)(c.J9,{initialValues:B,validationSchema:V,onSubmit:a,children:e=>{let{isSubmitting:s,dirty:a,isValid:n}=e;return(0,l.jsxs)(c.l0,{children:[(0,l.jsx)(t.xBx,{children:"Reset Password"}),(0,l.jsx)(t.olH,{}),(0,l.jsx)(t.fef,{children:(0,l.jsxs)(t.Kqy,{direction:"column",spacing:4,children:[(0,l.jsx)(t.xvT,{mb:2,children:"Choose a new password for this user."}),(0,l.jsx)(N.j0,{name:"password",label:"Password",placeholder:"********",type:"password",tooltip:"Password must contain at least 8 characters, 1 number, 1 capital letter, 1 lowercase letter, and at least 1 symbol.",autoComplete:"new-password"}),(0,l.jsx)(N.j0,{name:"passwordConfirmation",label:"Confirm Password",placeholder:"********",type:"password",tooltip:"Must match above password.",autoComplete:"confirm-password"})]})}),(0,l.jsx)(t.mzw,{children:(0,l.jsxs)("div",{className:"w-full gap-2",children:[(0,l.jsx)(t.wpx,{onClick:i,className:"w-1/2",children:"Cancel"}),(0,l.jsx)(t.wpx,{type:"primary",disabled:!a||!n,loading:s,htmlType:"submit",className:"w-1/2","data-testid":"submit-btn",children:"Change Password"})]})})]})}})})]})]})};let $=e=>{let s=(0,t.qY0)(),a=(0,t.pmc)(),[l,n]=(0,u.useState)(""),[i,r]=(0,u.useState)(""),[d,{isLoading:o}]=(0,y.ev)(),c=(0,h.useRouter)(),m=(0,D.I0)(),p=!!(e&&i&&l),x=async()=>{p&&d({id:e,old_password:l,new_password:i}).unwrap().then(()=>{a((0,w.t5)("Password updated")),L(m,c,{onClose:s.onClose})})};return{...s,changePasswordValidation:p,handleChange:e=>{"oldPassword"===e.target.name?n(e.target.value):r(e.target.value)},handleChangePassword:x,isLoading:o,newPasswordValue:i,oldPasswordValue:l}};var H=e=>{let{id:s}=e,{changePasswordValidation:a,handleChange:n,handleChangePassword:i,isLoading:r,isOpen:d,newPasswordValue:o,oldPasswordValue:c,onClose:h,onOpen:u}=$(s);return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(t.wpx,{onClick:u,"data-testid":"update-password-btn",children:"Update password"}),(0,l.jsxs)(t.u_l,{isCentered:!0,isOpen:d,onClose:h,children:[(0,l.jsx)(t.ZAr,{}),(0,l.jsxs)(t.hzk,{children:[(0,l.jsx)(t.xBx,{children:"Update Password"}),(0,l.jsx)(t.olH,{}),(0,l.jsx)(t.fef,{pb:6,children:(0,l.jsxs)(t.Kqy,{direction:"column",spacing:"15px",children:[(0,l.jsx)(t.NIc,{children:(0,l.jsx)(t.IIB,{isRequired:!0,name:"oldPassword",onChange:n,placeholder:"Old Password",type:"password",value:c,"data-testid":"input-oldPassword"})}),(0,l.jsx)(t.NIc,{children:(0,l.jsx)(t.IIB,{isRequired:!0,name:"newPassword",onChange:n,placeholder:"New Password",type:"password",value:o,"data-testid":"input-newPassword"})})]})}),(0,l.jsxs)(t.mzw,{children:[(0,l.jsx)(t.wpx,{onClick:h,className:"mr-2 w-1/2",children:"Cancel"}),(0,l.jsx)(t.wpx,{type:"primary",disabled:!a,loading:r,onClick:i,htmlType:"submit",className:"mr-3 w-1/2","data-testid":"submit-btn",children:"Change Password"})]})]})]})]})},M=()=>{var e;let s=(0,r.C)(y.Ux),a=(0,r.C)(U.dy),n=!!a&&a.id===s,{data:i}=(0,y.gU)(null!=s?s:"",{skip:!s});return(null==i?void 0:null===(e=i.roles)||void 0===e?void 0:e.includes(d.A7.EXTERNAL_RESPONDENT))?null:(0,l.jsx)(t.xuv,{children:s?(0,l.jsxs)(t.Ugi,{children:[n?(0,l.jsx)(H,{id:s}):null,(0,l.jsx)(o.ZP,{scopes:[d.Sh.USER_PASSWORD_RESET],children:(0,l.jsx)(F,{id:s})})]}):null})};let X=(e,s,a,l)=>!e||e&&!s||e&&s&&!0===a&&!!l,G=(e,s,a)=>!!(e&&s&&a),J=(e,s,a,l,t,n)=>!!e&&!s&&X(a,l,t,n),Q=(e,s,a,l)=>X(e,s,a,l),ee={username:"",first_name:"",email_address:"",last_name:"",password:"",password_login_enabled:!1},es=(e,s,a,l,t)=>P.Ry().shape({username:P.Z_().required().label("Username"),email_address:P.Z_().email().required().label("Email address"),first_name:P.Z_().label("First name"),last_name:P.Z_().label("Last name"),password:P.Z_().when(["password_login_enabled"],{is:n=>J(e,s,a,l,t,n),then:()=>O.a.label("Password"),otherwise:()=>P.Z_().optional().label("Password")}),password_login_enabled:P.O7().label("Allow password login")});var ea=e=>{let{onSubmit:s,initialValues:a,canEditNames:n}=e,i=(0,h.useRouter)(),d=(0,t.pmc)(),o=(0,r.T)(),u=(0,t.qY0)(),{data:p}=(0,z.jc)(),{data:x}=(0,q.qv)();(0,I.tB)({api_set:!1});let g=(0,r.C)(y.ZC),b=(0,r.C)(I.iR),{plus:v}=(0,T.hz)(),_=(null==p?void 0:p.enabled)||!1,C=(null==b?void 0:b.allow_username_password_login)||!1,k=!g,S=!k&&!n,E=x&&x.length>0||!1,R=G(v,E,C),P=null!=a?a:ee;g&&"password_login_enabled"in g&&(P={...P,password_login_enabled:!!g.password_login_enabled});let O=es(k,_,v,E,C),U=async e=>{let a=J(k,_,v,E,C,e.password_login_enabled),l={username:e.username,email_address:e.email_address,first_name:e.first_name,last_name:e.last_name};R&&(l.password_login_enabled=e.password_login_enabled),a&&e.password&&(l.password=e.password);let t=await s(l);if((0,m.D4)(t)){d((0,w.Vo)((0,m.e$)(t.error)));return}d((0,w.t5)("".concat(k?"User created. By default, new users are set to the Viewer role. To change the role, please go to the Permissions tab.":"User updated."))),(null==t?void 0:t.data)&&o((0,y.Vv)(t.data.id))};return(0,l.jsx)(c.J9,{onSubmit:U,initialValues:P,validationSchema:O,"data-testid":"user-form",children:e=>{let{dirty:s,isSubmitting:a,isValid:n,values:r}=e;return(0,l.jsx)(c.l0,{children:(0,l.jsxs)(t.Kqy,{maxW:["xs","xs","100%"],width:"100%",spacing:7,children:[(0,l.jsxs)(t.Kqy,{spacing:6,maxWidth:"55%",children:[(0,l.jsxs)(t.kCb,{children:[(0,l.jsxs)(t.xvT,{display:"flex",alignItems:"center",fontSize:"sm",fontWeight:"semibold",children:["Profile"," ",(null==g?void 0:g.disabled)&&(0,l.jsx)(t.j8w,{color:"success",className:"ml-2","data-testid":"invite-sent-badge",children:"Invite sent"})]}),(0,l.jsx)(t.xuv,{marginLeft:"auto",children:(0,l.jsxs)(t.Ugi,{children:[Q(v,E,C||!1,r.password_login_enabled)&&(0,l.jsx)(M,{"data-testid":"password-management"}),k?null:(0,l.jsxs)(t.xuv,{children:[(0,l.jsx)(t.wpx,{"aria-label":"delete",icon:(0,l.jsx)(f.l,{}),onClick:u.onOpen,"data-testid":"delete-user-btn"}),(0,l.jsx)(A.Z,{user:g,...u})]})]})})]}),(0,l.jsx)(N.j0,{name:"username",label:"Username",variant:"block",placeholder:"Enter new username",disabled:!k,isRequired:!0,"data-testid":"input-username"}),(0,l.jsx)(N.j0,{name:"email_address",label:"Email address",variant:"block",placeholder:"Enter email of user",isRequired:!0,"data-testid":"input-email-address"}),(0,l.jsx)(N.j0,{name:"first_name",label:"First name",variant:"block",placeholder:"Enter first name of user",disabled:S,"data-testid":"input-first-name"}),(0,l.jsx)(N.j0,{name:"last_name",label:"Last name",variant:"block",placeholder:"Enter last name of user",disabled:S,"data-testid":"input-last-name"}),R&&(0,l.jsx)(N.w8,{name:"password_login_enabled",label:"Allow password login",tooltip:"When enabled, user can log in with username and password. When disabled, user must use SSO.",variant:"stacked",isDisabled:!k,"data-testid":"toggle-allow-password-login",size:"default"}),J(k,_,v,E,C,r.password_login_enabled)&&(0,l.jsx)(N.j0,{name:"password",label:"Password",variant:"block",placeholder:"********",type:"password",tooltip:"Password must contain at least 8 characters, 1 number, 1 capital letter, 1 lowercase letter, and at least 1 symbol.",isRequired:!0,"data-testid":"input-password"})]}),(0,l.jsxs)("div",{children:[(0,l.jsx)(t.wpx,{onClick:()=>i.push(j.e3),className:"mr-3","data-testid":"cancel-btn",children:"Cancel"}),(0,l.jsx)(t.wpx,{htmlType:"submit",type:"primary",disabled:!s||!n,loading:a,"data-testid":"save-user-btn",children:"Save"})]})]})})}})},el=e=>{let{onSubmit:s,initialValues:a,...n}=e,c=(0,r.C)(y.Ux);(0,y.Fk)(c,{skip:!c});let h=(0,o.Tg)([d.Sh.USER_PERMISSION_UPDATE]),u=!c||!h,m=[{label:"Profile",key:"profile",children:(0,l.jsx)(ea,{onSubmit:s,initialValues:a,...n})},{label:"Permissions",key:"permissions",children:(0,l.jsxs)(t.kCb,{gap:"97px",children:[(0,l.jsx)(t.xuv,{w:{base:"100%",md:"50%",xl:"50%"},children:(0,l.jsx)(R,{})}),(0,l.jsx)(t.xuv,{position:"absolute",top:"96px",right:6,height:"calc(100% + 100px)",overflowY:"scroll",padding:6,w:"35%",borderLeftWidth:"1px",children:(0,l.jsx)(i,{})})]}),disabled:u,forceRender:!u}];return(0,l.jsx)(t.A5g,{items:m})}},31883:function(e,s,a){a.d(s,{Bw:function(){return l.Bw},D4:function(){return l.D4}});var l=a(19043)}}]);
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3696],{83696:function(e,s,a){a.d(s,{Z:function(){return el}});var l=a(24246),t=a(87949),n=a(91437),i=()=>(0,l.jsxs)(t.xuv,{children:[(0,l.jsx)(t.xuv,{pb:4,fontSize:"18px",fontWeight:"semibold",children:"Role Description"}),(0,l.jsx)(t.gCW,{spacing:4,children:n.K.map(e=>(0,l.jsxs)(t.xuv,{width:"100%",padding:4,borderRadius:"md",backgroundColor:"gray.75",fontSize:"14px",children:[(0,l.jsx)(t.xuv,{fontWeight:"semibold",children:e.label}),(0,l.jsx)(t.xuv,{color:"gray.700",children:e.description})]},e.roleKey))})]}),r=a(16134),d=a(65735),o=a(19904),c=a(34090),h=a(86677),u=a(27378),m=a(812),p=a(46238),x=a(58452),j=a(77830),w=a(46628),g=a(26917),b=a(1315),f=a(95492),y=a(65497);let v=e=>{let{assignedSystems:s,onAssignedSystemChange:a}=e,n=(0,r.C)(y.Ux);if((0,y.d6)(n,{skip:!n}),0===s.length)return null;let i=e=>{a(s.filter(s=>s.fides_key!==e.fides_key))};return(0,l.jsxs)(t.iA_,{size:"sm","data-testid":"assign-systems-delete-table",children:[(0,l.jsx)(t.hrZ,{children:(0,l.jsxs)(t.Tr,{children:[(0,l.jsx)(t.Th,{children:"System"}),(0,l.jsx)(t.Th,{})]})}),(0,l.jsx)(t.p3B,{children:s.map(e=>(0,l.jsxs)(t.Tr,{_hover:{bg:"gray.50"},"data-testid":"row-".concat(e.fides_key),children:[(0,l.jsx)(t.Td,{children:e.name}),(0,l.jsx)(t.Td,{textAlign:"end",children:(0,l.jsx)(t.wpx,{"aria-label":"Unassign system from user",icon:(0,l.jsx)(f.l,{}),onClick:()=>i(e),"data-testid":"unassign-btn"})})]},e.fides_key))})]})};var _=e=>{let{allSystems:s,assignedSystems:a,onChange:n}=e,i=e=>{a.find(s=>s.fides_key===e.fides_key)?n(a.filter(s=>s.fides_key!==e.fides_key)):n([...a,e])};return(0,l.jsx)(t.xuv,{overflowY:"auto",maxHeight:"300px",children:(0,l.jsxs)(t.iA_,{size:"sm","data-testid":"assign-systems-table",maxHeight:"50vh",overflowY:"scroll",children:[(0,l.jsx)(t.hrZ,{position:"sticky",top:0,background:"white",zIndex:1,children:(0,l.jsxs)(t.Tr,{children:[(0,l.jsx)(t.Th,{children:"System"}),(0,l.jsx)(t.Th,{children:"Assign"})]})}),(0,l.jsx)(t.p3B,{children:s.map(e=>{let s=!!a.find(s=>s.fides_key===e.fides_key);return(0,l.jsxs)(t.Tr,{_hover:{bg:"gray.50"},"data-testid":"row-".concat(e.fides_key),children:[(0,l.jsx)(t.Td,{children:e.name}),(0,l.jsx)(t.Td,{children:(0,l.jsx)(t.rAg,{checked:s,onChange:()=>i(e),"data-testid":"assign-switch"})})]},e.fides_key)})})]})})};let C=(e,s)=>{var a,l;return(null===(a=e.name)||void 0===a?void 0:a.toLocaleLowerCase().includes(s.toLocaleLowerCase()))||(null===(l=e.description)||void 0===l?void 0:l.toLocaleLowerCase().includes(s.toLocaleLowerCase()))};var k=e=>{let{isOpen:s,onClose:a,assignedSystems:n,onAssignedSystemChange:i}=e,{data:r}=(0,b.K3)(),[d,o]=(0,u.useState)(""),[c,h]=(0,u.useState)(n),m=async()=>{i(c),a()},p=!r||0===r.length,x=(0,u.useMemo)(()=>r?r.filter(e=>C(e,d)):[],[r,d]),j=(0,u.useMemo)(()=>{let e=new Set(c.map(e=>e.fides_key));return x.every(s=>e.has(s.fides_key))},[x,c]);return(0,l.jsxs)(t.u_l,{isOpen:s,onClose:a,size:"2xl",children:[(0,l.jsx)(t.ZAr,{}),(0,l.jsxs)(t.hzk,{p:8,"data-testid":"confirmation-modal",children:[(0,l.jsxs)(t.xBx,{fontWeight:"medium",display:"flex",justifyContent:"space-between",alignItems:"center",children:[(0,l.jsx)(t.xvT,{children:"Assign systems"}),(0,l.jsxs)(t.j8w,{color:"success",children:["Assigned to ",n.length," systems"]})]}),(0,l.jsx)(t.fef,{"data-testid":"assign-systems-modal-body",children:p?(0,l.jsx)(t.xvT,{children:"No systems found"}):(0,l.jsxs)(t.Kqy,{spacing:4,children:[(0,l.jsxs)(t.kCb,{justifyContent:"space-between",children:[(0,l.jsx)(t.xvT,{fontSize:"sm",flexGrow:1,fontWeight:"medium",children:"Assign systems in your organization to this user"}),(0,l.jsx)(t.xuv,{children:(0,l.jsxs)(t.NIc,{display:"flex",alignItems:"center",children:[(0,l.jsx)(t.lXp,{fontSize:"sm",htmlFor:"assign-all-systems",mb:"0",children:"Assign all systems"}),(0,l.jsx)(t.rAg,{size:"small",id:"assign-all-systems",checked:j,onChange:e=>{e&&r?h(x):h(r?r.filter(e=>!x.includes(e)):[])},"data-testid":"assign-all-systems-toggle"})]})})]}),(0,l.jsx)(g.Z,{value:d,onChange:o,placeholder:"Search for systems","data-testid":"system-search",withIcon:!0}),(0,l.jsx)(_,{allSystems:x,assignedSystems:c,onChange:h})]})}),(0,l.jsx)(t.mzw,{justifyContent:"flex-start",children:(0,l.jsxs)("div",{children:[(0,l.jsx)(t.wpx,{onClick:a,className:"mr-2","data-testid":"cancel-btn",children:"Cancel"}),p?null:(0,l.jsx)(t.wpx,{type:"primary",onClick:m,"data-testid":"confirm-btn",children:"Confirm"})]})})]})]})},S=e=>{let{label:s,roleKey:a,isSelected:n,isDisabled:i,assignedSystems:r,onAssignedSystemChange:o}=e,{setFieldValue:h}=(0,c.u6)(),u=(0,t.qY0)(),m=i?"You do not have sufficient permissions to assign this role.":void 0;return n?(0,l.jsxs)(t.Kqy,{borderRadius:"md",border:"1px solid",borderColor:"gray.200",p:4,backgroundColor:"gray.50","aria-selected":"true",spacing:4,"data-testid":"selected",children:[(0,l.jsxs)(t.kCb,{alignItems:"center",justifyContent:"space-between",children:[(0,l.jsx)(t.xvT,{fontSize:"md",fontWeight:"semibold",children:s}),(0,l.jsx)(t.StI,{})]}),a!==d.A7.APPROVER&&a!==d.A7.RESPONDENT&&a!==d.A7.EXTERNAL_RESPONDENT?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(t.kCb,{alignItems:"center",children:[(0,l.jsx)(t.xvT,{fontSize:"sm",fontWeight:"semibold",mr:1,children:"Assigned systems"}),(0,l.jsx)(p.b,{label:"Assigned systems refer to those systems that have been specifically allocated to a user for management purposes. Users assigned to a system possess full edit permissions and are listed as the Data Steward for the respective system."})]}),(0,l.jsx)(t.wpx,{disabled:i,title:m,type:"primary",size:"small",onClick:u.onOpen,"data-testid":"assign-systems-btn",children:"Assign systems +"}),(0,l.jsx)(v,{assignedSystems:r,onAssignedSystemChange:o}),u.isOpen?(0,l.jsx)(k,{isOpen:u.isOpen,onClose:u.onClose,assignedSystems:r,onAssignedSystemChange:o}):null]}):null]}):(0,l.jsx)(t.wpx,{onClick:()=>{h("roles",[a])},"data-testid":"role-option-".concat(s),title:m,disabled:i,children:s})};let E={roles:[]};var R=()=>{var e,s;let a=(0,t.pmc)(),i=(0,h.useRouter)(),g=(0,r.C)(y.Ux);(0,y.d6)(g,{skip:!g});let{isOpen:b,onOpen:f,onClose:v}=(0,t.qY0)(),_=(0,r.C)(y.R$),[C,k]=(0,u.useState)(_),[R]=(0,y.G$)();(0,u.useEffect)(()=>{k(_)},[_]);let{data:A,isLoading:P}=(0,y.gU)(null!=g?g:"",{skip:!g}),[T]=(0,y.lD)(),N=!!(null==A?void 0:null===(e=A.roles)||void 0===e?void 0:e.includes(d.A7.EXTERNAL_RESPONDENT)),O=async e=>{if(b&&v(),!g)return;let s=e.roles.includes(d.A7.APPROVER),l=await T({user_id:g,payload:{roles:e.roles}});if((0,m.D4)(l)){a((0,w.Vo)((0,m.e$)(l.error)));return}if(!s){let e=C.map(e=>e.fides_key),s=await R({userId:g,fidesKeys:e});if((0,m.D4)(s)){a((0,w.Vo)((0,m.e$)(s.error)));return}}a((0,w.t5)("Permissions updated"))},I=async e=>{g&&(C.length>0&&e.roles.includes(d.A7.APPROVER)?f():await O(e))},z=(0,o.Tg)([d.Sh.USER_PERMISSION_ASSIGN_OWNERS]);if(!g)return null;if(P)return(0,l.jsx)(t.$jN,{});if(!z&&(null==A?void 0:null===(s=A.roles)||void 0===s?void 0:s.includes(d.A7.OWNER)))return(0,l.jsx)(t.xvT,{"data-testid":"insufficient-access",children:"You do not have sufficient access to change this user's permissions."});let q=(null==A?void 0:A.roles)?{roles:A.roles}:E,U=n.K.filter(e=>N?e.roleKey===d.A7.EXTERNAL_RESPONDENT:e.roleKey!==d.A7.EXTERNAL_RESPONDENT),D=N?"External respondent role cannot be changed":void 0;return(0,l.jsx)(c.J9,{onSubmit:I,initialValues:q,enableReinitialize:!0,children:e=>{let{values:s,isSubmitting:a,dirty:n}=e;return(0,l.jsxs)(c.l0,{children:[(0,l.jsxs)(t.Kqy,{spacing:7,children:[(0,l.jsxs)(t.Kqy,{spacing:3,"data-testid":"role-options",children:[(0,l.jsxs)(t.kCb,{alignItems:"center",children:[(0,l.jsx)(t.xvT,{fontSize:"sm",fontWeight:"semibold",mr:1,children:"User role"}),(0,l.jsx)(p.b,{label:"A user's role in the organization determines what parts of the UI they can access and which functions are available to them."})]}),U.map(e=>{let a=s.roles.indexOf(e.roleKey)>=0,t=e.roleKey===d.A7.OWNER?!z:N;return(0,l.jsx)(S,{isSelected:a,isDisabled:t,assignedSystems:C,onAssignedSystemChange:k,...e},e.roleKey)}),!N&&(0,l.jsx)(t.esZ,{title:"To invite a new External respondent user, create a manual task integration and then click on the 'Manage secure access' button",children:(0,l.jsx)(t.wpx,{disabled:!0,"data-testid":"role-option-External respondent",children:"External respondent"})})]}),(0,l.jsxs)("div",{children:[(0,l.jsx)(t.wpx,{onClick:()=>i.push(j.e3),children:"Cancel"}),(0,l.jsx)(t.esZ,{title:D,children:(0,l.jsx)(t.wpx,{className:"ml-2",type:"primary",htmlType:"submit",loading:a,disabled:!n&&C===_||N,"data-testid":"save-btn",children:"Save"})})]})]}),(0,l.jsx)(x.Z,{isOpen:b,onClose:v,onConfirm:()=>O(s),title:"Change role to Approver",testId:"downgrade-to-approver-confirmation-modal",continueButtonText:"Yes",message:(0,l.jsx)(t.xvT,{children:"Switching to an approver role will remove all assigned systems. Do you wish to proceed?"})})]})}})},A=a(61038),P=a(55484),T=a(25980),N=a(40324),O=a(96006),I=a(7426),z=a(42478),q=a(76174),U=a(91317),D=a(16125),Z=a(36835),W=a(31883),K=a(52253);let L=(e,s,a)=>{var l;try{localStorage.removeItem(K.xH)}catch(e){}e((0,Z.kS)()),null==a||null===(l=a.onClose)||void 0===l||l.call(a),s.push(K._e)},V=P.Ry().shape({password:O.a.label("Password"),passwordConfirmation:P.Z_().required().oneOf([P.iH("password")],"Passwords must match").label("Password confirmation")}),B={password:"",passwordConfirmation:""},Y=e=>{let s=(0,t.qY0)(),a=(0,t.pmc)(),[l]=(0,y.ls)(),n=(0,h.useRouter)(),i=(0,D.I0)(),d=(0,r.C)(Z.dy),o=async t=>{let r=await l({id:e,new_password:t.password});(0,W.D4)(r)?a((0,w.Vo)((0,m.e$)(r.error))):(a((0,w.t5)("Successfully reset user's password. Please inform the user of their new password.")),s.onClose(),(null==d?void 0:d.id)===e&&L(i,n))};return{...s,handleResetPassword:o}};var F=e=>{let{id:s}=e,{handleResetPassword:a,isOpen:n,onClose:i,onOpen:r}=Y(s);return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(t.wpx,{onClick:r,"data-testid":"reset-password-btn",children:"Reset password"}),(0,l.jsxs)(t.u_l,{isCentered:!0,isOpen:n,onClose:i,children:[(0,l.jsx)(t.ZAr,{}),(0,l.jsx)(t.hzk,{children:(0,l.jsx)(c.J9,{initialValues:B,validationSchema:V,onSubmit:a,children:e=>{let{isSubmitting:s,dirty:a,isValid:n}=e;return(0,l.jsxs)(c.l0,{children:[(0,l.jsx)(t.xBx,{children:"Reset Password"}),(0,l.jsx)(t.olH,{}),(0,l.jsx)(t.fef,{children:(0,l.jsxs)(t.Kqy,{direction:"column",spacing:4,children:[(0,l.jsx)(t.xvT,{mb:2,children:"Choose a new password for this user."}),(0,l.jsx)(N.j0,{name:"password",label:"Password",placeholder:"********",type:"password",tooltip:"Password must contain at least 8 characters, 1 number, 1 capital letter, 1 lowercase letter, and at least 1 symbol.",autoComplete:"new-password"}),(0,l.jsx)(N.j0,{name:"passwordConfirmation",label:"Confirm Password",placeholder:"********",type:"password",tooltip:"Must match above password.",autoComplete:"confirm-password"})]})}),(0,l.jsx)(t.mzw,{children:(0,l.jsxs)("div",{className:"w-full gap-2",children:[(0,l.jsx)(t.wpx,{onClick:i,className:"w-1/2",children:"Cancel"}),(0,l.jsx)(t.wpx,{type:"primary",disabled:!a||!n,loading:s,htmlType:"submit",className:"w-1/2","data-testid":"submit-btn",children:"Change Password"})]})})]})}})})]})]})};let $=e=>{let s=(0,t.qY0)(),a=(0,t.pmc)(),[l,n]=(0,u.useState)(""),[i,r]=(0,u.useState)(""),[d,{isLoading:o}]=(0,y.ev)(),c=(0,h.useRouter)(),m=(0,D.I0)(),p=!!(e&&i&&l),x=async()=>{p&&d({id:e,old_password:l,new_password:i}).unwrap().then(()=>{a((0,w.t5)("Password updated")),L(m,c,{onClose:s.onClose})})};return{...s,changePasswordValidation:p,handleChange:e=>{"oldPassword"===e.target.name?n(e.target.value):r(e.target.value)},handleChangePassword:x,isLoading:o,newPasswordValue:i,oldPasswordValue:l}};var H=e=>{let{id:s}=e,{changePasswordValidation:a,handleChange:n,handleChangePassword:i,isLoading:r,isOpen:d,newPasswordValue:o,oldPasswordValue:c,onClose:h,onOpen:u}=$(s);return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(t.wpx,{onClick:u,"data-testid":"update-password-btn",children:"Update password"}),(0,l.jsxs)(t.u_l,{isCentered:!0,isOpen:d,onClose:h,children:[(0,l.jsx)(t.ZAr,{}),(0,l.jsxs)(t.hzk,{children:[(0,l.jsx)(t.xBx,{children:"Update Password"}),(0,l.jsx)(t.olH,{}),(0,l.jsx)(t.fef,{pb:6,children:(0,l.jsxs)(t.Kqy,{direction:"column",spacing:"15px",children:[(0,l.jsx)(t.NIc,{children:(0,l.jsx)(t.IIB,{isRequired:!0,name:"oldPassword",onChange:n,placeholder:"Old Password",type:"password",value:c,"data-testid":"input-oldPassword"})}),(0,l.jsx)(t.NIc,{children:(0,l.jsx)(t.IIB,{isRequired:!0,name:"newPassword",onChange:n,placeholder:"New Password",type:"password",value:o,"data-testid":"input-newPassword"})})]})}),(0,l.jsxs)(t.mzw,{children:[(0,l.jsx)(t.wpx,{onClick:h,className:"mr-2 w-1/2",children:"Cancel"}),(0,l.jsx)(t.wpx,{type:"primary",disabled:!a,loading:r,onClick:i,htmlType:"submit",className:"mr-3 w-1/2","data-testid":"submit-btn",children:"Change Password"})]})]})]})]})},M=()=>{var e;let s=(0,r.C)(y.Ux),a=(0,r.C)(U.dy),n=!!a&&a.id===s,{data:i}=(0,y.gU)(null!=s?s:"",{skip:!s});return(null==i?void 0:null===(e=i.roles)||void 0===e?void 0:e.includes(d.A7.EXTERNAL_RESPONDENT))?null:(0,l.jsx)(t.xuv,{children:s?(0,l.jsxs)(t.Ugi,{children:[n?(0,l.jsx)(H,{id:s}):null,(0,l.jsx)(o.ZP,{scopes:[d.Sh.USER_PASSWORD_RESET],children:(0,l.jsx)(F,{id:s})})]}):null})};let X=(e,s,a,l)=>!e||e&&!s||e&&s&&!0===a&&!!l,G=(e,s,a)=>!!(e&&s&&a),J=(e,s,a,l,t,n)=>!!e&&!s&&X(a,l,t,n),Q=(e,s,a,l)=>X(e,s,a,l),ee={username:"",first_name:"",email_address:"",last_name:"",password:"",password_login_enabled:!1},es=(e,s,a,l,t)=>P.Ry().shape({username:P.Z_().required().label("Username"),email_address:P.Z_().email().required().label("Email address"),first_name:P.Z_().label("First name"),last_name:P.Z_().label("Last name"),password:P.Z_().when(["password_login_enabled"],{is:n=>J(e,s,a,l,t,n),then:()=>O.a.label("Password"),otherwise:()=>P.Z_().optional().label("Password")}),password_login_enabled:P.O7().label("Allow password login")});var ea=e=>{let{onSubmit:s,initialValues:a,canEditNames:n}=e,i=(0,h.useRouter)(),d=(0,t.pmc)(),o=(0,r.T)(),u=(0,t.qY0)(),{data:p}=(0,z.jc)(),{data:x}=(0,q.qv)();(0,I.tB)({api_set:!1});let g=(0,r.C)(y.ZC),b=(0,r.C)(I.iR),{plus:v}=(0,T.hz)(),_=(null==p?void 0:p.enabled)||!1,C=(null==b?void 0:b.allow_username_password_login)||!1,k=!g,S=!k&&!n,E=x&&x.length>0||!1,R=G(v,E,C),P=null!=a?a:ee;g&&"password_login_enabled"in g&&(P={...P,password_login_enabled:!!g.password_login_enabled});let O=es(k,_,v,E,C),U=async e=>{let a=J(k,_,v,E,C,e.password_login_enabled),l={username:e.username,email_address:e.email_address,first_name:e.first_name,last_name:e.last_name};R&&(l.password_login_enabled=e.password_login_enabled),a&&e.password&&(l.password=e.password);let t=await s(l);if((0,m.D4)(t)){d((0,w.Vo)((0,m.e$)(t.error)));return}d((0,w.t5)("".concat(k?"User created. By default, new users are set to the Viewer role. To change the role, please go to the Permissions tab.":"User updated."))),(null==t?void 0:t.data)&&o((0,y.Vv)(t.data.id))};return(0,l.jsx)(c.J9,{onSubmit:U,initialValues:P,validationSchema:O,"data-testid":"user-form",children:e=>{let{dirty:s,isSubmitting:a,isValid:n,values:r}=e;return(0,l.jsx)(c.l0,{children:(0,l.jsxs)(t.Kqy,{maxW:["xs","xs","100%"],width:"100%",spacing:7,children:[(0,l.jsxs)(t.Kqy,{spacing:6,maxWidth:"55%",children:[(0,l.jsxs)(t.kCb,{children:[(0,l.jsxs)(t.xvT,{display:"flex",alignItems:"center",fontSize:"sm",fontWeight:"semibold",children:["Profile"," ",(null==g?void 0:g.disabled)&&(0,l.jsx)(t.j8w,{color:"success",className:"ml-2","data-testid":"invite-sent-badge",children:"Invite sent"})]}),(0,l.jsx)(t.xuv,{marginLeft:"auto",children:(0,l.jsxs)(t.Ugi,{children:[Q(v,E,C||!1,r.password_login_enabled)&&(0,l.jsx)(M,{"data-testid":"password-management"}),k?null:(0,l.jsxs)(t.xuv,{children:[(0,l.jsx)(t.wpx,{"aria-label":"delete",icon:(0,l.jsx)(f.l,{}),onClick:u.onOpen,"data-testid":"delete-user-btn"}),(0,l.jsx)(A.Z,{user:g,...u})]})]})})]}),(0,l.jsx)(N.j0,{name:"username",label:"Username",variant:"block",placeholder:"Enter new username",disabled:!k,isRequired:!0,"data-testid":"input-username"}),(0,l.jsx)(N.j0,{name:"email_address",label:"Email address",variant:"block",placeholder:"Enter email of user",isRequired:!0,"data-testid":"input-email-address"}),(0,l.jsx)(N.j0,{name:"first_name",label:"First name",variant:"block",placeholder:"Enter first name of user",disabled:S,"data-testid":"input-first-name"}),(0,l.jsx)(N.j0,{name:"last_name",label:"Last name",variant:"block",placeholder:"Enter last name of user",disabled:S,"data-testid":"input-last-name"}),R&&(0,l.jsx)(N.w8,{name:"password_login_enabled",label:"Allow password login",tooltip:"When enabled, user can log in with username and password. When disabled, user must use SSO.",variant:"stacked",isDisabled:!k,"data-testid":"toggle-allow-password-login",size:"default"}),J(k,_,v,E,C,r.password_login_enabled)&&(0,l.jsx)(N.j0,{name:"password",label:"Password",variant:"block",placeholder:"********",type:"password",tooltip:"Password must contain at least 8 characters, 1 number, 1 capital letter, 1 lowercase letter, and at least 1 symbol.",isRequired:!0,"data-testid":"input-password"})]}),(0,l.jsxs)("div",{children:[(0,l.jsx)(t.wpx,{onClick:()=>i.push(j.e3),className:"mr-3","data-testid":"cancel-btn",children:"Cancel"}),(0,l.jsx)(t.wpx,{htmlType:"submit",type:"primary",disabled:!s||!n,loading:a,"data-testid":"save-user-btn",children:"Save"})]})]})})}})},el=e=>{let{onSubmit:s,initialValues:a,...n}=e,c=(0,r.C)(y.Ux);(0,y.Fk)(c,{skip:!c});let h=(0,o.Tg)([d.Sh.USER_PERMISSION_UPDATE]),u=!c||!h,m=[{label:"Profile",key:"profile",children:(0,l.jsx)(ea,{onSubmit:s,initialValues:a,...n})},{label:"Permissions",key:"permissions",children:(0,l.jsxs)(t.kCb,{gap:"97px",children:[(0,l.jsx)(t.xuv,{w:{base:"100%",md:"50%",xl:"50%"},children:(0,l.jsx)(R,{})}),(0,l.jsx)(t.xuv,{position:"absolute",top:"96px",right:6,height:"calc(100% + 100px)",overflowY:"scroll",padding:6,w:"35%",borderLeftWidth:"1px",children:(0,l.jsx)(i,{})})]}),disabled:u,forceRender:!u}];return(0,l.jsx)(t.A5g,{items:m})}},31883:function(e,s,a){a.d(s,{Bw:function(){return l.Bw},D4:function(){return l.D4}});var l=a(19043)}}]);
|