ethyca-fides 2.73.0rc3__py2.py3-none-any.whl → 2.73.1b0__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.73.0rc3.dist-info → ethyca_fides-2.73.1b0.dist-info}/METADATA +1 -1
- {ethyca_fides-2.73.0rc3.dist-info → ethyca_fides-2.73.1b0.dist-info}/RECORD +251 -247
- fides/_version.py +3 -3
- fides/api/alembic/alembic.ini +5 -1
- fides/api/alembic/migrations/env.py +7 -1
- fides/api/alembic/migrations/versions/xx_2025_10_17_1603_5093e92e2a5a_add_consent_data_v3_to_the_database.py +72 -0
- fides/api/api/v1/endpoints/privacy_request_endpoints.py +27 -0
- fides/api/db/database.py +33 -2
- fides/api/service/connectors/query_configs/saas_query_config.py +4 -1
- fides/api/service/connectors/saas_connector.py +24 -10
- fides/common/api/v1/urn_registry.py +1 -0
- fides/service/privacy_request/privacy_request_service.py +96 -38
- fides/ui-build/static/admin/404.html +1 -1
- fides/ui-build/static/admin/_next/static/XSgYbMHjEskI5VguCfcBR/_buildManifest.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{1099-fa8b82f521b23cce.js → 1099-31f9d973bc287df8.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{1115-d7ce851b36722c41.js → 1115-26393b586775ea29.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{1437-9dd64c20d38667df.js → 1437-f0a5939b876d9c17.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{155-1c80b19f58f44a0c.js → 155-ac6ad9b8dcca4838.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{1817-0de0312294019817.js → 1817-e6bc6adb2c7fa009.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{1975.6ca0e76b5a3d1955.js → 1975.afe8cad52f904fcf.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{2040-a18cc21821e2d121.js → 2040-7c4bf37c65dd7efa.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{2397-16820a09e8ebfe33.js → 2397-d015b0f3da9292ea.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{2921-a5dac2eacdcc32ff.js → 2921-34a43f2f8f5e5e69.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{3377-c2c9eb177bec8719.js → 3377-988ac2f3a2e8d5d4.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{3696-21e3dec6c2023875.js → 3696-06bce0f3d97a4253.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{3700-a2903cd95b8a27cb.js → 3700-33ae8d975461a592.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{3772-bb84842df51d3f3f.js → 3772-9f1713f9d5f97a10.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{3873-d759bbe7137ae8c2.js → 3873-a20fdd3e4dc02037.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{3923-7f0aa36c9e09cedf.js → 3923-724809b7b01193c5.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{401-874303feb3899562.js → 401-7c345d019bb9bcbd.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{4496-903c81292ffd8f91.js → 4496-bad79edfbd60c0aa.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{4817-d0cc100f259b3c2e.js → 4817-1f3e6ea38625d8d5.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{5185-fc171b6acce9f915.js → 5185-950138b6e2ea9189.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{5258-cf0d2c4c4d55a94b.js → 5258-99ddc37f9293e654.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{5279-8637d735471ec7f1.js → 5279-a5ad59b09569d4a6.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{549-2d9bde37e5fe13eb.js → 549-28537a6de666944b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{5643-48a5e0ad8b9fc3f7.js → 5643-3f88087bcb270f9d.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{5783-63912bab7f80b0f8.js → 5783-e4683535810bf833.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{6277-ec0e3fa4e4614098.js → 6277-0948f689ad31baf5.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{6315-79a1506e01f2f92b.js → 6315-14862cf3c0926cc4.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{6853-c348f6e95f987cbf.js → 6853-3545785c1264ac62.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{6954-c44ac4e70e777c2f.js → 6954-750d97672d7f236c.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/7059-5bd586186ec0b048.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{7245-120f536e09decb85.js → 7245-10e52bfd2268d1ea.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{7476-4234fb244676ec13.js → 7476-a0cb2b5987d5f06b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{7488-2db0992474f8056e.js → 7488-a3181357c4cce471.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{7630-d7bd74d0cfdb22df.js → 7630-a11610c2b31ab2ca.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{7773-6dce6187fe2c6984.js → 7773-9ae233109bc64ec2.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{796-fae64888b8b2f369.js → 796-e36d610066135f8c.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{8011-6e40c969c9fa7d35.js → 8011-da0efcd90c1af2f9.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{8212-18d8da0f9208f978.js → 8212-4e17ad3e2b18b1b2.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{8373-24379b7d98e6922e.js → 8373-eddc22623b904f77.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{9046-6428eac9f38b3886.js → 9046-37cc2a63e11821cf.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{9330-540a113903cb3c28.js → 9330-a40d1db55b2a3b38.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{9676.704cc210f59d0083.js → 9676.7d029a5383595b69.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{9682-a3b2fb1a2df1c948.js → 9682-095307ea3955935a.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{9826-aecc5ddec86989dc.js → 9826-a737a9956c1d0905.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{9899-303921e3d0697960.js → 9899-977da69f7dcc79a4.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{9965-6906ffdaef0f0d69.js → 9965-f175f3cbf6c01945.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{404-c31cef0ce3fbeebf.js → 404-eb019192ce498f32.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{_app-527b536ec8d40054.js → _app-0390fd020ce63363.js} +62 -62
- fides/ui-build/static/admin/_next/static/chunks/pages/add-systems/{manual-a5865f42aafbe1f8.js → manual-7081e0e49f67716c.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/add-systems/{multiple-f706664770dd3e7f.js → multiple-a188f84239f4b2a8.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{add-systems-3f0d8698f01aabc5.js → add-systems-4fa95c55c0d9a9fa.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/configure/{add-vendors-fcd031b2b775e4f3.js → add-vendors-4f9cf087fcee87e6.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/{configure-0bd2eb0110873c4d.js → configure-9af75caefc74eaca.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-experience/{[id]-0dd17c74a6cc17ff.js → [id]-1b02a4991201b7e4.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/{privacy-experience-ae8dff75e1c6c413.js → privacy-experience-a218f663656c1c1f.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-notices/{[id]-84ba8b9947b9af0a.js → [id]-8c164c4b8310214e.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-notices/{new-f03d1d0df4661a33.js → new-db789002d84c8829.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/{privacy-notices-5a553b4bdbf85aa9.js → privacy-notices-1f8fd945fbc47ddf.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/{properties-5cba88e6839a087d.js → properties-5cba30eba1e97e56.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/{reporting-f2690c381c1d1a52.js → reporting-c84cb8f86e537d05.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{consent-289d21aa6c42828b.js → consent-614af0a2c2ba966c.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects/{[projectUrn]-cb56d56b9d918682.js → [projectUrn]-d60761c20382b259.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/{projects-ccb66ba6d1ad93fc.js → projects-f4f4a8d135573e7d.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/{resources-ecb2d925d75dfe1e.js → resources-aed94957009eb3fd.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{data-catalog-75403467491a251b.js → data-catalog-00fde32bfe883f11.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/datastore/[monitorId]-40b499229d5c2092.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/website/[monitorId]/{[systemId]-71cf0b06b3d5a326.js → [systemId]-3f0665ea305feb9a.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/website/{[monitorId]-cc6b359fb4968bf0.js → [monitorId]-83aaac4f203d4e1e.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center-179cb2673fb04f82.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/{activity-7dded115499a4a4a.js → activity-5cecc3db1b476419.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{datamap-d1bb19fe4ef393dc.js → datamap-3b100c44ea9e3988.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/[collectionName]/{[...subfieldNames]-58c3f4c0b490264b.js → [...subfieldNames]-5f88280db168083e.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/{[collectionName]-74290432e74fcdc5.js → [collectionName]-bfbcf19c28c794ae.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/{[datasetId]-8dad45f070a06609.js → [datasetId]-6fbe2b584a509226.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/{new-6aed6dc24c3be001.js → new-cc39d61f64dccdc8.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{dataset-fdaec997c1b0753f.js → dataset-116b92a622ed7191.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection/{[id]-63c4805e40673c60.js → [id]-f40921f41ea86a4d.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection/{new-b5a49743387eecef.js → new-48204230f9b28f9a.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{datastore-connection-8f0804d9a38688a4.js → datastore-connection-5c660814b844888d.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{index-363b091a4d1d70ad.js → index-1be29ec61e36ca69.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/integrations/{[id]-3b7f47985452e01d.js → [id]-d9fa9283fcffdbad.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{integrations-b0da32fe3564c129.js → integrations-88588fd42ec4b8c6.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/new-privacy-requests-f5e954e44cac8c21.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/digests/{[id]-0e4e4e7110362022.js → [id]-aa358be796271bf9.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/digests/{new-2e15f6272e9aaeb6.js → new-09b57c415163db68.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/{digests-65626dfcfacdc605.js → digests-fc9c9c88e86d73ec.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/providers/{[key]-768c4e2f6b05304c.js → [key]-720cde29f81db47f.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/providers/{new-2d57a70e4d32e651.js → new-3668866076b53016.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/{providers-83f78354fa34bffe.js → providers-617d0754570a09e8.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/templates/{[id]-1b31764f520fbbc5.js → [id]-8063dceb32310c85.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/templates/{add-template-4c74456b6677bf07.js → add-template-4931c70bee62232f.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/notifications/{templates-5deb80abd6156f7f.js → templates-e57aba990f23b454.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{notifications-8d8716dda9a6f277.js → notifications-93af719dab3bd053.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/{ant-components-52b1572442a20ab4.js → ant-components-9cfb469de7b4aeab.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/{AntForm-a0437ba647d59799.js → AntForm-e715cc654fb6a5cd.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/{FormikAntFormItem-87285c544450ec46.js → FormikAntFormItem-72ae299bcb6adae6.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/{FormikControlled-57997dbd451a6eed.js → FormikControlled-2337f8c81a766eb0.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/{FormikField-65009783e0404153.js → FormikField-0af454f55494f6fa.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/{forms-eafef007c179340f.js → forms-d1b90ffa996fbd89.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/{table-migration-7933a824a45d0ee6.js → table-migration-19724b9e0581b96d.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/{[id]-27c56466eab98b15.js → [id]-0f0f63b84617792e.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/{storage-16f77a6291bb02fe.js → storage-696222c67a086ddd.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/{configure-d2b3293ab496f7bc.js → configure-fa82cffba448ccd8.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{privacy-requests-af4f48d10926e4a4.js → privacy-requests-6d9569f5c2da2aa4.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/properties/{[id]-dd3c3d780533a9c2.js → [id]-bc1c289647e52c48.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/properties/{add-property-d1af260c3ddbf68b.js → add-property-cbfaa23d96f5ed0b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{properties-9bb7fe3577402008.js → properties-a15a3fd0ed88f39c.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/reporting/{datamap-33ce744d07982c0f.js → datamap-3d499c861a0c2913.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/sandbox/privacy-notices-afe921f6e2a526fb.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/consent/[configuration_id]/{[purpose_id]-35626e9d8e0a3ca2.js → [purpose_id]-971b628eec9d84d3.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{consent-39b5142099ed8705.js → consent-1702f4d95e93c1a2.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{custom-fields-64c638ea33bb3ff9.js → custom-fields-181b9b545ad38141.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{domain-records-3843fbaf5bc433f1.js → domain-records-3b87002753b23ca5.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{domains-ea549fabce96fde4.js → domains-aacd9d0ad47082d4.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{email-templates-0fe318a9dfc1f593.js → email-templates-3cdd0b39901190ba.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{locations-c42c856510cad6fd.js → locations-5763dd57a6e15292.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{organization-e4c552a5797c3fa5.js → organization-2d98e0170bc33490.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{privacy-requests-2790d31b59cc3c74.js → privacy-requests-084a2b4431d35322.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{regulations-3c608512c415fca4.js → regulations-b7c0d3b1b754e70f.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/systems/configure/[id]/{test-datasets-e0e1a5142e41e9f2.js → test-datasets-7e62b3024a7c668c.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/systems/configure/{[id]-9e815520adb3e580.js → [id]-59c89489fa32a4cb.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{systems-d8ce572ad07ed28c.js → systems-1db858c1a3d0fcd7.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/taxonomy-3248059d6f6060e6.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/user-management/profile/{[id]-75d96422db98196f.js → [id]-0f66bab70f303524.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{user-management-598f98fd88505e1e.js → user-management-f172e96aed81651b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{webpack-0a3b419ab682b8f9.js → webpack-c2c11809187b9f84.js} +1 -1
- fides/ui-build/static/admin/_next/static/css/598d88c40c789cbd.css +1 -0
- fides/ui-build/static/admin/_next/static/css/d41a048a166d50e4.css +1 -0
- 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 -1
- fides/ui-build/static/admin/data-discovery/action-center/datastore.html +1 -1
- fides/ui-build/static/admin/data-discovery/action-center/website/[monitorId]/[systemId].html +1 -1
- fides/ui-build/static/admin/data-discovery/action-center/website/[monitorId].html +1 -1
- fides/ui-build/static/admin/data-discovery/action-center/website.html +1 -1
- 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/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/sandbox/privacy-notices.html +1 -0
- 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/chunks/7059-3f2641e3130b4ef8.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/datastore/[monitorId]-e46e017a3919f94e.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center-cbff5db86e6951c4.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/new-privacy-requests-d1152cbc3c1bbbbb.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/taxonomy-0cae23a599830708.js +0 -1
- fides/ui-build/static/admin/_next/static/css/919f947a862d28cd.css +0 -1
- fides/ui-build/static/admin/_next/static/iSH8D4nDpVZCfB-o7en4n/_buildManifest.js +0 -1
- {ethyca_fides-2.73.0rc3.dist-info → ethyca_fides-2.73.1b0.dist-info}/WHEEL +0 -0
- {ethyca_fides-2.73.0rc3.dist-info → ethyca_fides-2.73.1b0.dist-info}/entry_points.txt +0 -0
- {ethyca_fides-2.73.0rc3.dist-info → ethyca_fides-2.73.1b0.dist-info}/licenses/LICENSE +0 -0
- {ethyca_fides-2.73.0rc3.dist-info → ethyca_fides-2.73.1b0.dist-info}/top_level.txt +0 -0
- /fides/ui-build/static/admin/_next/static/{iSH8D4nDpVZCfB-o7en4n → XSgYbMHjEskI5VguCfcBR}/_ssgManifest.js +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]/{[resourceUrn]-5d133ec635cd716c.js → [resourceUrn]-32bd7a7c990e5bf6.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/resources/{[resourceUrn]-9d8efe43b69a285d.js → [resourceUrn]-b07a0707f8c2ec0d.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/{datastore-1b0ed3b3ceedfd94.js → datastore-4498881c26f1458d.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/{website-60ad14c879b4fe27.js → website-5b3e0009d442bc3f.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/detection/{[resourceUrn]-2df143c1e1f79040.js → [resourceUrn]-b072cf25aefc98f6.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/{detection-e37c800313e2a422.js → detection-fd3e8817d8e6dee4.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/discovery/{[resourceUrn]-7022ca5fa834b633.js → [resourceUrn]-146624cf59792bf7.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/{discovery-6178e22397f20f92.js → discovery-9695cc9c85592ec5.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/settings/custom-fields/{[id]-b5140de4431a7ff5.js → [id]-8634aae3259def37.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/settings/custom-fields/{new-dcc16459e754fbbd.js → new-2d9dcca17965dc57.js} +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/user-management/{new-bc1568bb47d198a9.js → new-7dce2916cc589c54.js} +0 -0
fides/_version.py
CHANGED
|
@@ -8,11 +8,11 @@ import json
|
|
|
8
8
|
|
|
9
9
|
version_json = '''
|
|
10
10
|
{
|
|
11
|
-
"date": "2025-10-
|
|
11
|
+
"date": "2025-10-29T14:53:56+0000",
|
|
12
12
|
"dirty": false,
|
|
13
13
|
"error": null,
|
|
14
|
-
"full-revisionid": "
|
|
15
|
-
"version": "2.73.
|
|
14
|
+
"full-revisionid": "57b3f16ecdaaf426788e23d2f57f024bd546991b",
|
|
15
|
+
"version": "2.73.1b0"
|
|
16
16
|
}
|
|
17
17
|
''' # END VERSION_JSON
|
|
18
18
|
|
fides/api/alembic/alembic.ini
CHANGED
|
@@ -5,7 +5,11 @@
|
|
|
5
5
|
script_location = migrations
|
|
6
6
|
|
|
7
7
|
# template used to generate migration files
|
|
8
|
-
#
|
|
8
|
+
# Adding the prefix xx_ make all new migrations (after changing the file template to date-based)
|
|
9
|
+
# show up below the existing mirations when files are sorted
|
|
10
|
+
file_template = xx_%%(year)d_%%(month).2d_%%(day).2d_%%(hour).2d%%(minute).2d_%%(rev)s_%%(slug)s
|
|
11
|
+
|
|
12
|
+
|
|
9
13
|
|
|
10
14
|
# sys.path path, will be prepended to sys.path if present.
|
|
11
15
|
# defaults to the current working directory.
|
|
@@ -3,6 +3,7 @@ from logging.config import fileConfig
|
|
|
3
3
|
from alembic import context
|
|
4
4
|
from sqlalchemy import engine_from_config, pool
|
|
5
5
|
|
|
6
|
+
from fides.api.db.database import include_object
|
|
6
7
|
from fides.api.util.logger import setup as setup_fidesapi_logger
|
|
7
8
|
from fides.config import CONFIG
|
|
8
9
|
|
|
@@ -48,6 +49,7 @@ def run_migrations_offline():
|
|
|
48
49
|
target_metadata=target_metadata,
|
|
49
50
|
literal_binds=True,
|
|
50
51
|
dialect_opts={"paramstyle": "named"},
|
|
52
|
+
include_object=include_object,
|
|
51
53
|
)
|
|
52
54
|
|
|
53
55
|
with context.begin_transaction():
|
|
@@ -70,7 +72,11 @@ def run_migrations_online():
|
|
|
70
72
|
)
|
|
71
73
|
|
|
72
74
|
with connectable.connect() as connection:
|
|
73
|
-
context.configure(
|
|
75
|
+
context.configure(
|
|
76
|
+
connection=connection,
|
|
77
|
+
target_metadata=target_metadata,
|
|
78
|
+
include_object=include_object,
|
|
79
|
+
)
|
|
74
80
|
|
|
75
81
|
with context.begin_transaction():
|
|
76
82
|
context.run_migrations()
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"""Add consent data v3 to the database
|
|
2
|
+
|
|
3
|
+
Revision ID: 5093e92e2a5a
|
|
4
|
+
Revises: a55e12c2c2df
|
|
5
|
+
Create Date: 2025-10-17 16:03:37.933367
|
|
6
|
+
|
|
7
|
+
"""
|
|
8
|
+
|
|
9
|
+
import sqlalchemy as sa
|
|
10
|
+
from alembic import op
|
|
11
|
+
from sqlalchemy import BigInteger, Identity
|
|
12
|
+
from sqlalchemy.dialects import postgresql
|
|
13
|
+
|
|
14
|
+
# revision identifiers, used by Alembic.
|
|
15
|
+
revision = "5093e92e2a5a"
|
|
16
|
+
down_revision = "a55e12c2c2df"
|
|
17
|
+
branch_labels = None
|
|
18
|
+
depends_on = None
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
def upgrade():
|
|
22
|
+
op.create_table(
|
|
23
|
+
"privacy_preferences",
|
|
24
|
+
# Use a big integer for the primary key to ensure we have enough space for all the records
|
|
25
|
+
# and also force the ID to be generated, never allowing it to be overridden without expressly using `OVERRIDING SYSTEM VALUE`
|
|
26
|
+
sa.Column(
|
|
27
|
+
"id",
|
|
28
|
+
BigInteger,
|
|
29
|
+
Identity(start=1, increment=1, always=True),
|
|
30
|
+
primary_key=True,
|
|
31
|
+
),
|
|
32
|
+
sa.Column("search_data", postgresql.JSONB),
|
|
33
|
+
sa.Column("record_data", postgresql.TEXT),
|
|
34
|
+
# If we have a primary key we need to use a composite key because the primary key must be unique across _all_
|
|
35
|
+
# partitions, so we can't just use `id`, we have to use `is_latest` as well as part of the primary key. This
|
|
36
|
+
# should not be problematic as we will not allow for manually providing the ID so (unless someone deliberately does it)
|
|
37
|
+
# we should not end up with duplicate IDs having different `is_latest` values.
|
|
38
|
+
sa.Column(
|
|
39
|
+
"is_latest",
|
|
40
|
+
postgresql.BOOLEAN,
|
|
41
|
+
nullable=False,
|
|
42
|
+
server_default="f",
|
|
43
|
+
primary_key=True,
|
|
44
|
+
),
|
|
45
|
+
sa.Column(
|
|
46
|
+
"created_at",
|
|
47
|
+
postgresql.TIMESTAMP(timezone=True),
|
|
48
|
+
nullable=False,
|
|
49
|
+
server_default=sa.text("now()"),
|
|
50
|
+
),
|
|
51
|
+
sa.Column("updated_at", postgresql.TIMESTAMP(timezone=True), nullable=True),
|
|
52
|
+
postgresql_partition_by="LIST (is_latest)",
|
|
53
|
+
)
|
|
54
|
+
# Create our partition tables using _current and _historic as suffixes
|
|
55
|
+
op.execute(
|
|
56
|
+
"""
|
|
57
|
+
CREATE TABLE privacy_preferences_current
|
|
58
|
+
PARTITION OF privacy_preferences
|
|
59
|
+
FOR VALUES IN (true);
|
|
60
|
+
"""
|
|
61
|
+
)
|
|
62
|
+
op.execute(
|
|
63
|
+
"""
|
|
64
|
+
CREATE TABLE privacy_preferences_historic
|
|
65
|
+
PARTITION OF privacy_preferences
|
|
66
|
+
FOR VALUES IN (false);
|
|
67
|
+
"""
|
|
68
|
+
)
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
def downgrade():
|
|
72
|
+
op.drop_table("privacy_preferences")
|
|
@@ -144,6 +144,7 @@ from fides.common.api.v1.urn_registry import (
|
|
|
144
144
|
PRIVACY_REQUEST_APPROVE,
|
|
145
145
|
PRIVACY_REQUEST_AUTHENTICATED,
|
|
146
146
|
PRIVACY_REQUEST_BATCH_EMAIL_SEND,
|
|
147
|
+
PRIVACY_REQUEST_BULK_FINALIZE,
|
|
147
148
|
PRIVACY_REQUEST_BULK_RETRY,
|
|
148
149
|
PRIVACY_REQUEST_BULK_SOFT_DELETE,
|
|
149
150
|
PRIVACY_REQUEST_DENY,
|
|
@@ -1971,6 +1972,32 @@ def resume_privacy_request_from_requires_input(
|
|
|
1971
1972
|
return privacy_request # type: ignore[return-value]
|
|
1972
1973
|
|
|
1973
1974
|
|
|
1975
|
+
@router.post(
|
|
1976
|
+
PRIVACY_REQUEST_BULK_FINALIZE,
|
|
1977
|
+
status_code=HTTP_200_OK,
|
|
1978
|
+
response_model=BulkReviewResponse,
|
|
1979
|
+
)
|
|
1980
|
+
def bulk_finalize_privacy_requests(
|
|
1981
|
+
*,
|
|
1982
|
+
client: ClientDetail = Security(
|
|
1983
|
+
verify_oauth_client,
|
|
1984
|
+
scopes=[PRIVACY_REQUEST_REVIEW],
|
|
1985
|
+
),
|
|
1986
|
+
privacy_request_service: PrivacyRequestService = Depends(
|
|
1987
|
+
get_privacy_request_service
|
|
1988
|
+
),
|
|
1989
|
+
privacy_requests: ReviewPrivacyRequestIds,
|
|
1990
|
+
) -> BulkReviewResponse:
|
|
1991
|
+
"""
|
|
1992
|
+
Bulk finalize privacy requests that are in requires_manual_finalization status.
|
|
1993
|
+
Each request will be moved from the 'requires_finalization' state to 'complete'.
|
|
1994
|
+
Returns an object with the list of successfully finalized privacy requests and the list of failed finalizations.
|
|
1995
|
+
"""
|
|
1996
|
+
return privacy_request_service.finalize_privacy_requests(
|
|
1997
|
+
privacy_requests.request_ids, user_id=client.user_id
|
|
1998
|
+
)
|
|
1999
|
+
|
|
2000
|
+
|
|
1974
2001
|
@router.post(
|
|
1975
2002
|
PRIVACY_REQUEST_FINALIZE,
|
|
1976
2003
|
status_code=HTTP_200_OK,
|
fides/api/db/database.py
CHANGED
|
@@ -9,7 +9,9 @@ from alembic import command, script
|
|
|
9
9
|
from alembic.config import Config
|
|
10
10
|
from alembic.runtime import migration
|
|
11
11
|
from loguru import logger as log
|
|
12
|
+
from sqlalchemy import text
|
|
12
13
|
from sqlalchemy.orm import Session
|
|
14
|
+
from sqlalchemy.schema import SchemaItem
|
|
13
15
|
from sqlalchemy_utils.functions import create_database, database_exists
|
|
14
16
|
from sqlalchemy_utils.types.encrypted.encrypted_type import InvalidCiphertextError
|
|
15
17
|
|
|
@@ -20,6 +22,26 @@ from fides.api.util.errors import get_full_exception_name
|
|
|
20
22
|
|
|
21
23
|
DatabaseHealth = Literal["healthy", "unhealthy", "needs migration"]
|
|
22
24
|
|
|
25
|
+
# Tables to exclude from migration auto-generation (e.g., tables without SQLAlchemy models)
|
|
26
|
+
EXCLUDED_TABLES = {
|
|
27
|
+
"privacy_preferences",
|
|
28
|
+
"privacy_preferences_current",
|
|
29
|
+
"privacy_preferences_historic",
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
def include_object(
|
|
34
|
+
object: SchemaItem, # pylint: disable=redefined-builtin
|
|
35
|
+
name: str,
|
|
36
|
+
type_: str,
|
|
37
|
+
reflected: bool,
|
|
38
|
+
compare_to: SchemaItem,
|
|
39
|
+
) -> bool:
|
|
40
|
+
"""Filter out excluded tables from migration comparison and auto-generation."""
|
|
41
|
+
if type_ == "table" and name in EXCLUDED_TABLES:
|
|
42
|
+
return False
|
|
43
|
+
return True
|
|
44
|
+
|
|
23
45
|
|
|
24
46
|
def get_alembic_config(database_url: str) -> Config:
|
|
25
47
|
"""
|
|
@@ -91,6 +113,10 @@ def reset_db(database_url: str) -> None:
|
|
|
91
113
|
log.info("Dropping tables...")
|
|
92
114
|
Base.metadata.drop_all(connection)
|
|
93
115
|
|
|
116
|
+
log.info("Dropping excluded tables without models...")
|
|
117
|
+
for table_name in EXCLUDED_TABLES:
|
|
118
|
+
connection.execute(text(f"DROP TABLE IF EXISTS {table_name} CASCADE"))
|
|
119
|
+
|
|
94
120
|
log.info("Dropping Alembic table...")
|
|
95
121
|
migration_context = migration.MigrationContext.configure(connection)
|
|
96
122
|
version = migration_context._version # pylint: disable=protected-access
|
|
@@ -151,13 +177,18 @@ def check_missing_migrations(database_url: str) -> None:
|
|
|
151
177
|
Tries to autogenerate migrations, returns True if a migration
|
|
152
178
|
was generated.
|
|
153
179
|
"""
|
|
154
|
-
|
|
155
180
|
engine = get_db_engine(database_uri=database_url)
|
|
156
181
|
connection = engine.connect()
|
|
157
182
|
|
|
158
|
-
migration_context = migration.MigrationContext.configure(
|
|
183
|
+
migration_context = migration.MigrationContext.configure(
|
|
184
|
+
connection, opts={"include_object": include_object}
|
|
185
|
+
)
|
|
159
186
|
result = command.autogen.compare_metadata(migration_context, Base.metadata) # type: ignore[attr-defined]
|
|
160
187
|
|
|
161
188
|
if result:
|
|
189
|
+
log.error("Migration needs to be generated!")
|
|
190
|
+
log.error("Detected the following schema differences:")
|
|
191
|
+
for item in result:
|
|
192
|
+
log.error(f" - {item}")
|
|
162
193
|
raise SystemExit("Migration needs to be generated!")
|
|
163
194
|
print("No migrations need to be generated.")
|
|
@@ -314,7 +314,7 @@ class SaaSQueryConfig(QueryConfig[SaaSRequestParams]):
|
|
|
314
314
|
collection_values: Dict[str, Row],
|
|
315
315
|
identity_data: Dict[str, Any],
|
|
316
316
|
input_data: Optional[Dict[str, List[Any]]] = None,
|
|
317
|
-
param_values: Dict[str, Any] =
|
|
317
|
+
param_values: Optional[Dict[str, Any]] = None,
|
|
318
318
|
) -> None:
|
|
319
319
|
"""
|
|
320
320
|
Process param_values for update generation (erasure requests).
|
|
@@ -326,6 +326,9 @@ class SaaSQueryConfig(QueryConfig[SaaSRequestParams]):
|
|
|
326
326
|
identity_data: Identity data for parameter resolution
|
|
327
327
|
input_data: Optional upstream data from other collections
|
|
328
328
|
"""
|
|
329
|
+
if param_values is None:
|
|
330
|
+
param_values = {}
|
|
331
|
+
|
|
329
332
|
for param_value in request.param_values or []:
|
|
330
333
|
if param_value.references:
|
|
331
334
|
# we resolve the param reference here for consistency,
|
|
@@ -277,16 +277,17 @@ class SaaSConnector(BaseConnector[AuthenticatedClient], Contextualizable):
|
|
|
277
277
|
|
|
278
278
|
# Delegate async requests
|
|
279
279
|
with get_db() as db:
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
280
|
+
# Guard clause to ensure we only run async access requests for access requests
|
|
281
|
+
if self.guard_access_request(policy):
|
|
282
|
+
if async_dsr_strategy := _get_async_dsr_strategy(
|
|
283
|
+
db, request_task, query_config, ActionType.access
|
|
284
|
+
):
|
|
285
|
+
return async_dsr_strategy.async_retrieve_data(
|
|
286
|
+
client=self.create_client(),
|
|
287
|
+
request_task_id=request_task.id,
|
|
288
|
+
query_config=query_config,
|
|
289
|
+
input_data=input_data,
|
|
290
|
+
)
|
|
290
291
|
|
|
291
292
|
rows: List[Row] = []
|
|
292
293
|
for read_request in read_requests:
|
|
@@ -349,6 +350,19 @@ class SaaSConnector(BaseConnector[AuthenticatedClient], Contextualizable):
|
|
|
349
350
|
self.unset_connector_state()
|
|
350
351
|
return rows
|
|
351
352
|
|
|
353
|
+
def guard_access_request(self, policy: Policy) -> bool:
|
|
354
|
+
"""
|
|
355
|
+
Guard clause to ensure we only run async access requests
|
|
356
|
+
if the access request is enabled and we are in an Access Request
|
|
357
|
+
"""
|
|
358
|
+
if (
|
|
359
|
+
self.configuration.enabled_actions is None
|
|
360
|
+
or ActionType.access in self.configuration.enabled_actions
|
|
361
|
+
):
|
|
362
|
+
if policy.get_rules_for_action(ActionType.access):
|
|
363
|
+
return True
|
|
364
|
+
return False
|
|
365
|
+
|
|
352
366
|
def _apply_output_template(
|
|
353
367
|
self,
|
|
354
368
|
param_value_maps: List[Dict[str, Any]],
|
|
@@ -84,6 +84,7 @@ PRIVACY_REQUEST_BATCH_EMAIL_SEND = (
|
|
|
84
84
|
"/privacy-request/administrate/process-awaiting-email-send"
|
|
85
85
|
)
|
|
86
86
|
PRIVACY_REQUEST_AUTHENTICATED = "/privacy-request/authenticated"
|
|
87
|
+
PRIVACY_REQUEST_BULK_FINALIZE = "/privacy-request/bulk/finalize"
|
|
87
88
|
PRIVACY_REQUEST_BULK_RETRY = "/privacy-request/bulk/retry"
|
|
88
89
|
PRIVACY_REQUEST_BULK_SOFT_DELETE = "/privacy-request/bulk/soft-delete"
|
|
89
90
|
PRIVACY_REQUEST_DENY = "/privacy-request/administrate/deny"
|
|
@@ -78,6 +78,32 @@ class PrivacyRequestService:
|
|
|
78
78
|
logger.info(f"Privacy request with ID {privacy_request_id} was not found.")
|
|
79
79
|
return privacy_request
|
|
80
80
|
|
|
81
|
+
def _validate_privacy_request_for_bulk_operation(
|
|
82
|
+
self,
|
|
83
|
+
request_id: str,
|
|
84
|
+
) -> PrivacyRequest:
|
|
85
|
+
"""
|
|
86
|
+
Common validation logic for bulk operations.
|
|
87
|
+
Raises a PrivacyRequestError if the request is not found or deleted.
|
|
88
|
+
|
|
89
|
+
Returns the validated privacy request.
|
|
90
|
+
"""
|
|
91
|
+
privacy_request = self.get_privacy_request(request_id)
|
|
92
|
+
if not privacy_request:
|
|
93
|
+
raise PrivacyRequestError(
|
|
94
|
+
f"No privacy request found with id '{request_id}'",
|
|
95
|
+
{"privacy_request_id": request_id},
|
|
96
|
+
)
|
|
97
|
+
if privacy_request.deleted_at is not None:
|
|
98
|
+
raise PrivacyRequestError(
|
|
99
|
+
"Cannot transition status for a deleted request",
|
|
100
|
+
PrivacyRequestResponse.model_validate(privacy_request).model_dump(
|
|
101
|
+
mode="json"
|
|
102
|
+
),
|
|
103
|
+
)
|
|
104
|
+
|
|
105
|
+
return privacy_request
|
|
106
|
+
|
|
81
107
|
def _validate_required_location_fields(
|
|
82
108
|
self, privacy_request_data: PrivacyRequestCreate
|
|
83
109
|
) -> None:
|
|
@@ -496,26 +522,12 @@ class PrivacyRequestService:
|
|
|
496
522
|
failed: List[BulkUpdateFailed] = []
|
|
497
523
|
|
|
498
524
|
for request_id in request_ids:
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
failed.append(
|
|
503
|
-
BulkUpdateFailed(
|
|
504
|
-
message=f"No privacy request found with id '{request_id}'",
|
|
505
|
-
data={"privacy_request_id": request_id},
|
|
506
|
-
)
|
|
507
|
-
)
|
|
508
|
-
continue
|
|
509
|
-
|
|
510
|
-
if privacy_request.deleted_at is not None:
|
|
511
|
-
failed.append(
|
|
512
|
-
BulkUpdateFailed(
|
|
513
|
-
message="Cannot transition status for a deleted request",
|
|
514
|
-
data=PrivacyRequestResponse.model_validate(
|
|
515
|
-
privacy_request
|
|
516
|
-
).model_dump(mode="json"),
|
|
517
|
-
)
|
|
525
|
+
try:
|
|
526
|
+
privacy_request = self._validate_privacy_request_for_bulk_operation(
|
|
527
|
+
request_id
|
|
518
528
|
)
|
|
529
|
+
except PrivacyRequestError as exc:
|
|
530
|
+
failed.append(BulkUpdateFailed(message=exc.message, data=exc.data))
|
|
519
531
|
continue
|
|
520
532
|
|
|
521
533
|
if privacy_request.status != PrivacyRequestStatus.pending:
|
|
@@ -582,26 +594,12 @@ class PrivacyRequestService:
|
|
|
582
594
|
failed: List[BulkUpdateFailed] = []
|
|
583
595
|
|
|
584
596
|
for request_id in request_ids:
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
failed.append(
|
|
589
|
-
BulkUpdateFailed(
|
|
590
|
-
message=f"No privacy request found with id '{request_id}'",
|
|
591
|
-
data={"privacy_request_id": request_id},
|
|
592
|
-
)
|
|
593
|
-
)
|
|
594
|
-
continue
|
|
595
|
-
|
|
596
|
-
if privacy_request.deleted_at is not None:
|
|
597
|
-
failed.append(
|
|
598
|
-
BulkUpdateFailed(
|
|
599
|
-
message="Cannot transition status for a deleted request",
|
|
600
|
-
data=PrivacyRequestResponse.model_validate(
|
|
601
|
-
privacy_request
|
|
602
|
-
).model_dump(mode="json"),
|
|
603
|
-
)
|
|
597
|
+
try:
|
|
598
|
+
privacy_request = self._validate_privacy_request_for_bulk_operation(
|
|
599
|
+
request_id
|
|
604
600
|
)
|
|
601
|
+
except PrivacyRequestError as exc:
|
|
602
|
+
failed.append(BulkUpdateFailed(message=exc.message, data=exc.data))
|
|
605
603
|
continue
|
|
606
604
|
|
|
607
605
|
if privacy_request.status != PrivacyRequestStatus.pending:
|
|
@@ -646,6 +644,66 @@ class PrivacyRequestService:
|
|
|
646
644
|
|
|
647
645
|
return BulkReviewResponse(succeeded=succeeded, failed=failed)
|
|
648
646
|
|
|
647
|
+
def finalize_privacy_requests(
|
|
648
|
+
self,
|
|
649
|
+
request_ids: List[str],
|
|
650
|
+
*,
|
|
651
|
+
user_id: Optional[str] = None,
|
|
652
|
+
) -> BulkReviewResponse:
|
|
653
|
+
"""Bulk finalize privacy requests that are in requires_manual_finalization status"""
|
|
654
|
+
succeeded: List[PrivacyRequest] = []
|
|
655
|
+
failed: List[BulkUpdateFailed] = []
|
|
656
|
+
|
|
657
|
+
for request_id in request_ids:
|
|
658
|
+
try:
|
|
659
|
+
privacy_request = self._validate_privacy_request_for_bulk_operation(
|
|
660
|
+
request_id
|
|
661
|
+
)
|
|
662
|
+
except PrivacyRequestError as exc:
|
|
663
|
+
failed.append(BulkUpdateFailed(message=exc.message, data=exc.data))
|
|
664
|
+
continue
|
|
665
|
+
|
|
666
|
+
if (
|
|
667
|
+
privacy_request.status
|
|
668
|
+
!= PrivacyRequestStatus.requires_manual_finalization
|
|
669
|
+
):
|
|
670
|
+
failed.append(
|
|
671
|
+
BulkUpdateFailed(
|
|
672
|
+
message=f"Cannot manually finalize privacy request: status is {privacy_request.status}, not requires_manual_finalization",
|
|
673
|
+
data=PrivacyRequestResponse.model_validate(
|
|
674
|
+
privacy_request
|
|
675
|
+
).model_dump(mode="json"),
|
|
676
|
+
)
|
|
677
|
+
)
|
|
678
|
+
continue
|
|
679
|
+
|
|
680
|
+
try:
|
|
681
|
+
# Set finalized_by and finalized_at here, so the request runner service knows not to
|
|
682
|
+
# put the request back into the requires_finalization state.
|
|
683
|
+
privacy_request.finalized_at = datetime.utcnow()
|
|
684
|
+
privacy_request.finalized_by = user_id
|
|
685
|
+
privacy_request.save(db=self.db)
|
|
686
|
+
|
|
687
|
+
# Queue the privacy request for finalization
|
|
688
|
+
queue_privacy_request(
|
|
689
|
+
privacy_request_id=privacy_request.id,
|
|
690
|
+
from_step=CurrentStep.finalization.value,
|
|
691
|
+
)
|
|
692
|
+
|
|
693
|
+
succeeded.append(privacy_request)
|
|
694
|
+
except Exception as exc:
|
|
695
|
+
logger.exception(exc)
|
|
696
|
+
failed.append(
|
|
697
|
+
BulkUpdateFailed(
|
|
698
|
+
message="Privacy request could not be finalized",
|
|
699
|
+
data=PrivacyRequestResponse.model_validate(
|
|
700
|
+
privacy_request
|
|
701
|
+
).model_dump(mode="json"),
|
|
702
|
+
)
|
|
703
|
+
)
|
|
704
|
+
|
|
705
|
+
return BulkReviewResponse(succeeded=succeeded, failed=failed)
|
|
706
|
+
|
|
649
707
|
|
|
650
708
|
@log_context(capture_args={"privacy_request_id": LoggerContextKeys.privacy_request_id})
|
|
651
709
|
def queue_privacy_request(
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link data-next-font="" rel="preconnect" href="/" crossorigin="anonymous"/><link rel="preload" href="/_next/static/css/
|
|
1
|
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link data-next-font="" rel="preconnect" href="/" crossorigin="anonymous"/><link rel="preload" href="/_next/static/css/598d88c40c789cbd.css" as="style"/><link rel="stylesheet" href="/_next/static/css/598d88c40c789cbd.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-c2c11809187b9f84.js" defer=""></script><script src="/_next/static/chunks/framework-c92fc3344e6fd165.js" defer=""></script><script src="/_next/static/chunks/main-090643377c8254e6.js" defer=""></script><script src="/_next/static/chunks/pages/_app-0390fd020ce63363.js" defer=""></script><script src="/_next/static/chunks/pages/404-eb019192ce498f32.js" defer=""></script><script src="/_next/static/XSgYbMHjEskI5VguCfcBR/_buildManifest.js" defer=""></script><script src="/_next/static/XSgYbMHjEskI5VguCfcBR/_ssgManifest.js" defer=""></script><style>.data-ant-cssinjs-cache-path{content:"";}</style></head><body><div id="__next"><div style="height:100%;display:flex"></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/404","query":{},"buildId":"XSgYbMHjEskI5VguCfcBR","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
self.__BUILD_MANIFEST=function(s,t,e,c,a,i,n,d,o,r,p,f,u,g,b,j,k,m,h,y,l,v,I,w,x,F,_,U,q,N,A,S,B,C,z,D,E,L,M,T,P,G,H,J,K,O,Q,R,V,W,X,Y,Z,$,ss,st,se,sc,sa,si,sn,sd,so,sr){return{__rewrites:{afterFiles:[],beforeFiles:[],fallback:[]},"/":["static/css/972dc7eef106ee7c.css","static/chunks/pages/index-1be29ec61e36ca69.js"],"/404":["static/chunks/pages/404-eb019192ce498f32.js"],"/_error":["static/chunks/pages/_error-bede3a8288930dcf.js"],"/add-systems":[s,t,"static/css/dd15c278b964de80.css","static/chunks/pages/add-systems-4fa95c55c0d9a9fa.js"],"/add-systems/manual":[s,e,c,a,n,j,w,t,o,k,x,F,B,"static/css/af32fcac7a177a0e.css","static/chunks/pages/add-systems/manual-7081e0e49f67716c.js"],"/add-systems/multiple":[o,m,C,"static/chunks/pages/add-systems/multiple-a188f84239f4b2a8.js"],"/consent":["static/chunks/pages/consent-614af0a2c2ba966c.js"],"/consent/configure":[o,m,"static/chunks/pages/consent/configure-9af75caefc74eaca.js"],"/consent/configure/add-vendors":[o,m,C,"static/chunks/pages/consent/configure/add-vendors-4f9cf087fcee87e6.js"],"/consent/privacy-experience":[j,z,"static/chunks/pages/consent/privacy-experience-a218f663656c1c1f.js"],"/consent/privacy-experience/new":[e,d,h,r,y,D,"static/chunks/pages/consent/privacy-experience/new-a5e738a234dadc7e.js"],"/consent/privacy-experience/[id]":[e,d,h,r,y,D,"static/chunks/pages/consent/privacy-experience/[id]-1b02a4991201b7e4.js"],"/consent/privacy-notices":[z,"static/chunks/pages/consent/privacy-notices-1f8fd945fbc47ddf.js"],"/consent/privacy-notices/new":[e,d,h,r,y,E,"static/chunks/pages/consent/privacy-notices/new-db789002d84c8829.js"],"/consent/privacy-notices/[id]":[e,d,h,r,y,E,"static/chunks/pages/consent/privacy-notices/[id]-8c164c4b8310214e.js"],"/consent/properties":[l,L,"static/chunks/pages/consent/properties-5cba30eba1e97e56.js"],"/consent/reporting":[s,t,i,"static/chunks/pages/consent/reporting-c84cb8f86e537d05.js"],"/data-catalog":[e,c,a,"static/css/95ac327e5d70148d.css","static/chunks/pages/data-catalog-00fde32bfe883f11.js"],"/data-catalog/[systemId]/projects":[e,c,a,u,g,_,"static/chunks/pages/data-catalog/[systemId]/projects-f4f4a8d135573e7d.js"],"/data-catalog/[systemId]/projects/[projectUrn]":[u,"static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]-d60761c20382b259.js"],"/data-catalog/[systemId]/projects/[projectUrn]/[resourceUrn]":[s,e,c,a,t,u,g,M,T,"static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]/[resourceUrn]-32bd7a7c990e5bf6.js"],"/data-catalog/[systemId]/resources":[u,"static/chunks/pages/data-catalog/[systemId]/resources-aed94957009eb3fd.js"],"/data-catalog/[systemId]/resources/[resourceUrn]":[s,e,c,a,t,u,g,M,T,"static/chunks/pages/data-catalog/[systemId]/resources/[resourceUrn]-b07a0707f8c2ec0d.js"],"/data-discovery/action-center":[s,t,v,"static/css/0fd6e0884cfcc5f3.css","static/chunks/pages/data-discovery/action-center-179cb2673fb04f82.js"],"/data-discovery/action-center/datastore":["static/chunks/pages/data-discovery/action-center/datastore-4498881c26f1458d.js"],"/data-discovery/action-center/datastore/[monitorId]":[s,e,c,a,t,v,"static/css/d41a048a166d50e4.css","static/chunks/pages/data-discovery/action-center/datastore/[monitorId]-40b499229d5c2092.js"],"/data-discovery/action-center/website":["static/chunks/pages/data-discovery/action-center/website-5b3e0009d442bc3f.js"],"/data-discovery/action-center/website/[monitorId]":[s,e,c,a,t,p,v,P,"static/css/cb417f0587918f85.css","static/chunks/pages/data-discovery/action-center/website/[monitorId]-83aaac4f203d4e1e.js"],"/data-discovery/action-center/website/[monitorId]/[systemId]":[s,e,c,a,w,t,o,v,x,"static/css/f9a2a44d3d34c904.css","static/chunks/pages/data-discovery/action-center/website/[monitorId]/[systemId]-3f0665ea305feb9a.js"],"/data-discovery/activity":[s,t,p,U,i,"static/chunks/pages/data-discovery/activity-5cecc3db1b476419.js"],"/data-discovery/detection":[s,t,p,U,G,i,"static/chunks/pages/data-discovery/detection-fd3e8817d8e6dee4.js"],"/data-discovery/detection/[resourceUrn]":[s,t,p,U,G,i,"static/chunks/pages/data-discovery/detection/[resourceUrn]-b072cf25aefc98f6.js"],"/data-discovery/discovery":[s,e,c,a,t,p,g,H,I,"static/chunks/pages/data-discovery/discovery-9695cc9c85592ec5.js"],"/data-discovery/discovery/[resourceUrn]":[s,e,c,a,t,p,g,H,I,"static/chunks/pages/data-discovery/discovery/[resourceUrn]-146624cf59792bf7.js"],"/datamap":[s,a,t,k,J,i,"static/chunks/pages/datamap-3b100c44ea9e3988.js"],"/dataset":[f,b,"static/chunks/pages/dataset-116b92a622ed7191.js"],"/dataset/new":[s,f,t,i,"static/chunks/pages/dataset/new-cc39d61f64dccdc8.js"],"/dataset/[datasetId]":["static/chunks/9729-fcf6ff4e3534e4a8.js",b,q,"static/chunks/pages/dataset/[datasetId]-6fbe2b584a509226.js"],"/dataset/[datasetId]/[collectionName]":[e,c,a,n,b,q,K,_,"static/chunks/pages/dataset/[datasetId]/[collectionName]-bfbcf19c28c794ae.js"],"/dataset/[datasetId]/[collectionName]/[...subfieldNames]":[e,c,a,n,b,q,K,_,"static/chunks/pages/dataset/[datasetId]/[collectionName]/[...subfieldNames]-5f88280db168083e.js"],"/datastore-connection":["static/css/f89607996ad54f4b.css","static/chunks/pages/datastore-connection-5c660814b844888d.js"],"/datastore-connection/new":[s,e,n,f,j,O,t,F,Q,i,"static/chunks/pages/datastore-connection/new-48204230f9b28f9a.js"],"/datastore-connection/[id]":[s,e,n,f,O,t,Q,i,"static/chunks/pages/datastore-connection/[id]-f40921f41ea86a4d.js"],"/fides-js-docs":["static/chunks/2fbcc6de-a6c61724c327e9fa.js","static/chunks/e3251fe7-5777b5d778e6fffa.js",e,c,a,n,f,"static/chunks/5619-9b50cec521203989.js",R,"static/css/0b4b1b65cc874774.css","static/chunks/5596-29a7c8322530b7cf.js","static/chunks/pages/fides-js-docs-1f4335dca5c09860.js"],"/integrations":[s,e,c,a,n,d,V,t,W,I,"static/chunks/pages/integrations-88588fd42ec4b8c6.js"],"/integrations/[id]":[s,e,c,a,n,d,V,t,r,W,I,"static/chunks/pages/integrations/[id]-d9fa9283fcffdbad.js"],"/login":["static/chunks/pages/login-0cb0eb44bf2dd24c.js"],"/login/[provider]":["static/chunks/pages/login/[provider]-c58beef131c3a82d.js"],"/new-privacy-requests":[s,e,X,t,N,Y,i,"static/chunks/pages/new-privacy-requests-f5e954e44cac8c21.js"],"/notifications":["static/chunks/pages/notifications-93af719dab3bd053.js"],"/notifications/digests":[A,"static/chunks/pages/notifications/digests-fc9c9c88e86d73ec.js"],"/notifications/digests/new":[A,Z,"static/chunks/pages/notifications/digests/new-09b57c415163db68.js"],"/notifications/digests/[id]":[A,Z,"static/chunks/pages/notifications/digests/[id]-aa358be796271bf9.js"],"/notifications/providers":[s,t,i,"static/chunks/pages/notifications/providers-617d0754570a09e8.js"],"/notifications/providers/new":[s,e,c,d,$,t,ss,i,"static/chunks/pages/notifications/providers/new-3668866076b53016.js"],"/notifications/providers/[key]":[s,e,c,d,$,t,ss,i,"static/chunks/pages/notifications/providers/[key]-720cde29f81db47f.js"],"/notifications/templates":[e,c,"static/chunks/346-aa3b88efb85f2e28.js","static/chunks/pages/notifications/templates-e57aba990f23b454.js"],"/notifications/templates/add-template":[st,"static/chunks/pages/notifications/templates/add-template-4931c70bee62232f.js"],"/notifications/templates/[id]":[st,"static/chunks/pages/notifications/templates/[id]-8063dceb32310c85.js"],"/poc/ant-components":["static/chunks/pages/poc/ant-components-9cfb469de7b4aeab.js"],"/poc/form-experiments/AntForm":["static/chunks/pages/poc/form-experiments/AntForm-e715cc654fb6a5cd.js"],"/poc/form-experiments/FormikAntFormItem":["static/chunks/pages/poc/form-experiments/FormikAntFormItem-72ae299bcb6adae6.js"],"/poc/form-experiments/FormikControlled":["static/chunks/pages/poc/form-experiments/FormikControlled-2337f8c81a766eb0.js"],"/poc/form-experiments/FormikField":["static/chunks/pages/poc/form-experiments/FormikField-0af454f55494f6fa.js"],"/poc/form-experiments/FormikSpreadField":[se,"static/chunks/pages/poc/form-experiments/FormikSpreadField-af097d661f6abcf4.js"],"/poc/forms":[se,"static/chunks/pages/poc/forms-d1b90ffa996fbd89.js"],"/poc/table-migration":[o,m,"static/chunks/pages/poc/table-migration-19724b9e0581b96d.js"],"/privacy-requests":[s,e,X,t,N,Y,i,"static/chunks/pages/privacy-requests-6d9569f5c2da2aa4.js"],"/privacy-requests/configure":["static/chunks/pages/privacy-requests/configure-fa82cffba448ccd8.js"],"/privacy-requests/configure/storage":[s,t,i,"static/chunks/pages/privacy-requests/configure/storage-696222c67a086ddd.js"],"/privacy-requests/[id]":[s,t,N,"static/css/05d05fc31d09638b.css","static/chunks/pages/privacy-requests/[id]-0f0f63b84617792e.js"],"/properties":[l,L,"static/chunks/pages/properties-a15a3fd0ed88f39c.js"],"/properties/add-property":[l,sc,"static/chunks/pages/properties/add-property-cbfaa23d96f5ed0b.js"],"/properties/[id]":[l,sc,"static/chunks/pages/properties/[id]-bc1c289647e52c48.js"],"/reporting/datamap":[s,e,c,a,R,t,k,J,i,"static/chunks/pages/reporting/datamap-3d499c861a0c2913.js"],"/sandbox/privacy-notices":["static/chunks/pages/sandbox/privacy-notices-afe921f6e2a526fb.js"],"/settings/about":[sa,"static/chunks/pages/settings/about-6c4904c157477285.js"],"/settings/about/alpha":[sa,"static/chunks/pages/settings/about/alpha-68eaac2d79133679.js"],"/settings/consent":[r,"static/chunks/pages/settings/consent-1702f4d95e93c1a2.js"],"/settings/consent/[configuration_id]/[purpose_id]":["static/chunks/pages/settings/consent/[configuration_id]/[purpose_id]-971b628eec9d84d3.js"],"/settings/custom-fields":[s,t,i,"static/chunks/pages/settings/custom-fields-181b9b545ad38141.js"],"/settings/custom-fields/new":[e,si,sn,"static/chunks/pages/settings/custom-fields/new-2d9dcca17965dc57.js"],"/settings/custom-fields/[id]":[e,si,sn,"static/chunks/pages/settings/custom-fields/[id]-8634aae3259def37.js"],"/settings/domain-records":["static/chunks/pages/settings/domain-records-3b87002753b23ca5.js"],"/settings/domains":["static/chunks/pages/settings/domains-aacd9d0ad47082d4.js"],"/settings/email-templates":["static/chunks/pages/settings/email-templates-3cdd0b39901190ba.js"],"/settings/locations":[sd,so,"static/chunks/pages/settings/locations-5763dd57a6e15292.js"],"/settings/organization":["static/chunks/pages/settings/organization-2d98e0170bc33490.js"],"/settings/privacy-requests":[s,t,i,"static/chunks/pages/settings/privacy-requests-084a2b4431d35322.js"],"/settings/regulations":[sd,so,"static/chunks/pages/settings/regulations-b7c0d3b1b754e70f.js"],"/systems":[s,e,c,a,t,P,i,"static/chunks/pages/systems-1db858c1a3d0fcd7.js"],"/systems/configure/[id]":[s,e,c,a,n,j,w,t,o,k,x,F,B,"static/css/012b10627a654d5c.css","static/chunks/pages/systems/configure/[id]-59c89489fa32a4cb.js"],"/systems/configure/[id]/test-datasets":[f,"static/chunks/pages/systems/configure/[id]/test-datasets-7e62b3024a7c668c.js"],"/taxonomy":["static/chunks/678d4732-50255cc09048e643.js",s,e,c,a,d,"static/chunks/6148-59a59d5c5925344f.js",t,b,"static/css/3d6582469f7d56e0.css","static/chunks/pages/taxonomy-3248059d6f6060e6.js"],"/user-management":[S,"static/chunks/pages/user-management-f172e96aed81651b.js"],"/user-management/new":[S,sr,"static/chunks/pages/user-management/new-7dce2916cc589c54.js"],"/user-management/profile/[id]":[S,sr,"static/chunks/pages/user-management/profile/[id]-0f66bab70f303524.js"],sortedPages:["/","/404","/_app","/_error","/add-systems","/add-systems/manual","/add-systems/multiple","/consent","/consent/configure","/consent/configure/add-vendors","/consent/privacy-experience","/consent/privacy-experience/new","/consent/privacy-experience/[id]","/consent/privacy-notices","/consent/privacy-notices/new","/consent/privacy-notices/[id]","/consent/properties","/consent/reporting","/data-catalog","/data-catalog/[systemId]/projects","/data-catalog/[systemId]/projects/[projectUrn]","/data-catalog/[systemId]/projects/[projectUrn]/[resourceUrn]","/data-catalog/[systemId]/resources","/data-catalog/[systemId]/resources/[resourceUrn]","/data-discovery/action-center","/data-discovery/action-center/datastore","/data-discovery/action-center/datastore/[monitorId]","/data-discovery/action-center/website","/data-discovery/action-center/website/[monitorId]","/data-discovery/action-center/website/[monitorId]/[systemId]","/data-discovery/activity","/data-discovery/detection","/data-discovery/detection/[resourceUrn]","/data-discovery/discovery","/data-discovery/discovery/[resourceUrn]","/datamap","/dataset","/dataset/new","/dataset/[datasetId]","/dataset/[datasetId]/[collectionName]","/dataset/[datasetId]/[collectionName]/[...subfieldNames]","/datastore-connection","/datastore-connection/new","/datastore-connection/[id]","/fides-js-docs","/integrations","/integrations/[id]","/login","/login/[provider]","/new-privacy-requests","/notifications","/notifications/digests","/notifications/digests/new","/notifications/digests/[id]","/notifications/providers","/notifications/providers/new","/notifications/providers/[key]","/notifications/templates","/notifications/templates/add-template","/notifications/templates/[id]","/poc/ant-components","/poc/form-experiments/AntForm","/poc/form-experiments/FormikAntFormItem","/poc/form-experiments/FormikControlled","/poc/form-experiments/FormikField","/poc/form-experiments/FormikSpreadField","/poc/forms","/poc/table-migration","/privacy-requests","/privacy-requests/configure","/privacy-requests/configure/storage","/privacy-requests/[id]","/properties","/properties/add-property","/properties/[id]","/reporting/datamap","/sandbox/privacy-notices","/settings/about","/settings/about/alpha","/settings/consent","/settings/consent/[configuration_id]/[purpose_id]","/settings/custom-fields","/settings/custom-fields/new","/settings/custom-fields/[id]","/settings/domain-records","/settings/domains","/settings/email-templates","/settings/locations","/settings/organization","/settings/privacy-requests","/settings/regulations","/systems","/systems/configure/[id]","/systems/configure/[id]/test-datasets","/taxonomy","/user-management","/user-management/new","/user-management/profile/[id]"]}}("static/chunks/431-e01ee730c8ad9ece.js","static/chunks/7245-10e52bfd2268d1ea.js","static/chunks/8765-f622a35b40a7ec63.js","static/chunks/9278-08cc704317fe535e.js","static/chunks/5163-e682273cd76a7d07.js","static/css/14ba79c49597d37a.css","static/chunks/699-8ca44b0de9fa20f0.js","static/chunks/3662-f6a1ddca5ee42076.js","static/chunks/401-7c345d019bb9bcbd.js","static/chunks/5279-a5ad59b09569d4a6.js","static/chunks/4817-1f3e6ea38625d8d5.js","static/chunks/6527-0eed08abe252a918.js","static/chunks/9682-095307ea3955935a.js","static/chunks/1099-31f9d973bc287df8.js","static/chunks/3772-9f1713f9d5f97a10.js","static/chunks/5277-e8a036319456127f.js","static/chunks/9899-977da69f7dcc79a4.js","static/chunks/3923-724809b7b01193c5.js","static/chunks/6419-11d67f7fd4e2f247.js","static/chunks/6277-0948f689ad31baf5.js","static/chunks/2040-7c4bf37c65dd7efa.js","static/chunks/7059-5bd586186ec0b048.js","static/css/a1800714b486e230.css","static/chunks/6344-ca66a6e10d128179.js","static/chunks/1437-f0a5939b876d9c17.js","static/chunks/7773-9ae233109bc64ec2.js","static/css/d2d4e9a6923e6730.css","static/chunks/6315-14862cf3c0926cc4.js","static/chunks/7488-a3181357c4cce471.js","static/chunks/8373-eddc22623b904f77.js","static/chunks/8212-4e17ad3e2b18b1b2.js","static/chunks/7476-a0cb2b5987d5f06b.js","static/chunks/3700-33ae8d975461a592.js","static/chunks/796-e36d610066135f8c.js","static/chunks/6853-3545785c1264ac62.js","static/chunks/1817-e6bc6adb2c7fa009.js","static/chunks/6954-750d97672d7f236c.js","static/chunks/5783-e4683535810bf833.js","static/chunks/9330-a40d1db55b2a3b38.js","static/css/4861ca3e088f2d05.css","static/chunks/9965-f175f3cbf6c01945.js","static/chunks/2397-d015b0f3da9292ea.js","static/chunks/9046-37cc2a63e11821cf.js","static/chunks/5258-99ddc37f9293e654.js","static/chunks/549-28537a6de666944b.js","static/chunks/1467-8808ec8836e033f9.js","static/chunks/8011-da0efcd90c1af2f9.js","static/chunks/9187-7438242f0d380bb0.js","static/chunks/1316-2606e19807c08aa5.js","static/chunks/155-ac6ad9b8dcca4838.js","static/chunks/2962-342ad1b4ab402ded.js","static/chunks/3873-a20fdd3e4dc02037.js","static/chunks/4496-bad79edfbd60c0aa.js","static/chunks/9037-453224ba3ee65b13.js","static/chunks/3377-988ac2f3a2e8d5d4.js","static/chunks/7630-a11610c2b31ab2ca.js","static/chunks/2921-34a43f2f8f5e5e69.js","static/chunks/5185-950138b6e2ea9189.js","static/chunks/1115-26393b586775ea29.js","static/chunks/3446-f40c352c43ac950c.js","static/chunks/5643-3f88087bcb270f9d.js","static/chunks/9826-a737a9956c1d0905.js","static/css/10994e916bc9a00a.css","static/chunks/3696-06bce0f3d97a4253.js"),self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1099],{56632:function(e,t,n){var i=n(89278),a=n(80068),o=n(50098);e.exports=function(e){return function(t,n,r){var s=Object(t);if(!a(t)){var l=i(n,3);t=o(t),n=function(e){return l(s[e],e,s)}}var c=e(t,n,r);return c>-1?s[l?t[c]:c]:void 0}}},64925:function(e,t,n){var i=n(56632)(n(66259));e.exports=i},66259:function(e,t,n){var i=n(95372),a=n(89278),o=n(47991),r=Math.max;e.exports=function(e,t,n){var s=null==e?0:e.length;if(!s)return -1;var l=null==n?0:o(n);return l<0&&(l=r(s+l,0)),i(e,a(t,3),l)}},94919:function(e,t,n){var i=n(91936),a=1/0;e.exports=function(e){return e?(e=i(e))===a||e===-a?(e<0?-1:1)*17976931348623157e292:e==e?e:0:0===e?e:0}},47991:function(e,t,n){var i=n(94919);e.exports=function(e){var t=i(e),n=t%1;return t==t?n?t-n:t:0}},12627:function(e,t,n){"use strict";var i=n(24246),a=n(79283),o=n(34929);t.Z=e=>{let{selectedTaxonomies:t,showDisabled:n=!1,...r}=e,{getDataCategoryDisplayNameProps:s,getDataCategories:l}=(0,o.Z)(),c=(n?l():l().filter(e=>e.active)).filter(e=>!(null==t?void 0:t.includes(e.fides_key))).map(e=>{let{name:t,primaryName:n}=s(e.fides_key);return{value:e.fides_key,name:t,primaryName:n,description:e.description||""}});return(0,i.jsx)(a.l,{options:c,...r})}},79283:function(e,t,n){"use strict";n.d(t,{l:function(){return d}});var i=n(24246),a=n(
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1099],{56632:function(e,t,n){var i=n(89278),a=n(80068),o=n(50098);e.exports=function(e){return function(t,n,r){var s=Object(t);if(!a(t)){var l=i(n,3);t=o(t),n=function(e){return l(s[e],e,s)}}var c=e(t,n,r);return c>-1?s[l?t[c]:c]:void 0}}},64925:function(e,t,n){var i=n(56632)(n(66259));e.exports=i},66259:function(e,t,n){var i=n(95372),a=n(89278),o=n(47991),r=Math.max;e.exports=function(e,t,n){var s=null==e?0:e.length;if(!s)return -1;var l=null==n?0:o(n);return l<0&&(l=r(s+l,0)),i(e,a(t,3),l)}},94919:function(e,t,n){var i=n(91936),a=1/0;e.exports=function(e){return e?(e=i(e))===a||e===-a?(e<0?-1:1)*17976931348623157e292:e==e?e:0:0===e?e:0}},47991:function(e,t,n){var i=n(94919);e.exports=function(e){var t=i(e),n=t%1;return t==t?n?t-n:t:0}},12627:function(e,t,n){"use strict";var i=n(24246),a=n(79283),o=n(34929);t.Z=e=>{let{selectedTaxonomies:t,showDisabled:n=!1,...r}=e,{getDataCategoryDisplayNameProps:s,getDataCategories:l}=(0,o.Z)(),c=(n?l():l().filter(e=>e.active)).filter(e=>!(null==t?void 0:t.includes(e.fides_key))).map(e=>{let{name:t,primaryName:n}=s(e.fides_key);return{value:e.fides_key,name:t,primaryName:n,description:e.description||""}});return(0,i.jsx)(a.l,{options:c,...r})}},79283:function(e,t,n){"use strict";n.d(t,{l:function(){return d}});var i=n(24246),a=n(98227),o=n(72707),r=n.n(o);let s=e=>{let{data:{formattedTitle:t,description:n,name:o,primaryName:r}}=e;return(0,i.jsxs)(a.jqI,{gap:12,title:"".concat(t," - ").concat(n),children:[(0,i.jsxs)("div",{children:[(0,i.jsx)("strong",{children:r||o}),r&&": ".concat(o)]}),(0,i.jsx)("em",{children:n})]})},l=e=>"options"in e&&Array.isArray(e.options),c=e=>({...e,className:r().option,formattedTitle:e.formattedTitle||[e.primaryName,e.name].filter(e=>e).join(": ")}),d=e=>{let{options:t,...n}=e,o=null==t?void 0:t.map(e=>l(e)?{...e,options:e.options.map(c)}:c(e));return(0,i.jsx)(a.WPr,{options:o,filterOption:(e,t)=>{var n,i;return(null==t?void 0:null===(n=t.formattedTitle)||void 0===n?void 0:n.toLowerCase().includes(e.toLowerCase()))||(null==t?void 0:null===(i=t.value)||void 0===i?void 0:i.toLowerCase().includes(e.toLowerCase()))||!1},optionFilterProp:"label",autoFocus:!0,variant:"borderless",optionRender:s,styles:{popup:{root:{minWidth:"500px"}}},className:"w-full p-0","data-testid":"taxonomy-select",...n})}},34929:function(e,t,n){"use strict";var i=n(24246),a=n(64925),o=n.n(a),r=n(27378),s=n(16134),l=n(30002),c=n(28079),d=n(57072);let u=()=>{let{isLoading:e}=(0,c.fd)(),t=(0,s.C)(c.U3),{isLoading:n}=(0,d.MO)(),i=(0,s.C)(d.qb),{isLoading:a}=(0,l.te)();return{dataUses:t,dataSubjects:(0,s.C)(l.ZL),dataCategories:i,isLoading:e||n||a}};t.Z=()=>{let{dataUses:e,dataCategories:t,dataSubjects:n,isLoading:a}=u(),s=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;return e.split(".").slice(0,t).join(".")},l=function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,i=t(e);if(!i)return{};let a=t(s(e,n)),o=!!i.parent_key;return{name:i.name||void 0,primaryName:o&&(null==a?void 0:a.name)!==i.name&&(null==a?void 0:a.name)||void 0}},c=function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,{name:a,primaryName:o}=l(e,t,n);return a?o?(0,i.jsxs)(r.Fragment,{children:[(0,i.jsxs)("strong",{children:[o,":"]})," ",a]},e):(0,i.jsx)("strong",{children:a},e):e},d=t=>o()(e,{fides_key:t}),f=e=>o()(t,{fides_key:e}),v=e=>o()(n,{fides_key:e});return{getDataUses:()=>e,getDataUseByKey:d,getDataUseDisplayName:e=>c(e,d,1),getDataUseDisplayNameProps:e=>l(e,d,1),getDataCategories:()=>t,getDataCategoryByKey:f,getDataCategoryDisplayName:e=>c(e,f,2),getDataCategoryDisplayNameProps:e=>l(e,f,2),getDataSubjects:()=>n,getDataSubjectByKey:v,getDataSubjectDisplayName:e=>{let t=v(e);return t?t.name:e},getPrimaryKey:s,isLoading:a}}},61099:function(e,t,n){"use strict";var i=n(24246),a=n(98227),o=n(27378),r=n(12627),s=n(34929),l=n(26183),c=n(70675);t.Z=e=>{var t,n,d;let{resource:u}=e,[f,v]=(0,o.useState)(!1),{getDataCategoryDisplayName:p}=(0,s.Z)(),[g]=(0,c.NA)(),m=(null===(t=u.classifications)||void 0===t?void 0:t.length)?u.classifications[0].label:null,x=null!==(d=u.user_assigned_data_categories)&&void 0!==d?d:[],h=!m&&!(null==x?void 0:x.length),_=null===(n=u.sub_field_urns)||void 0===n?void 0:n.length,j=e=>{g({staged_resource_urn:u.urn,monitor_config_id:u.monitor_config_id,user_assigned_data_categories:[...x,e]})},y=e=>{var t;g({staged_resource_urn:u.urn,monitor_config_id:u.monitor_config_id,user_assigned_data_categories:null!==(t=null==x?void 0:x.filter(t=>t!==e))&&void 0!==t?t:[]})},b=!f&&!!x.length,w=!f&&!!m&&!x.length;return(0,i.jsxs)(l.Z,{"data-testid":"edit-category-cell",children:[h&&(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(a.j8w,{"data-testid":"no-classifications",color:"white",children:"None"}),!_&&(0,i.jsx)(a.j8w,{onClick:()=>v(!0),addable:!0,"data-testid":"taxonomy-add-btn","aria-label":"Add category"})]}),b&&(0,i.jsxs)(i.Fragment,{children:[x.map(e=>(0,i.jsx)(a.j8w,{"data-testid":"user-classification-".concat(e),color:"white",closable:!0,onClose:()=>y(e),closeButtonLabel:"Remove category",children:p(e)},e)),(0,i.jsx)(a.j8w,{onClick:()=>v(!0),addable:!0,"data-testid":"taxonomy-add-btn","aria-label":"Add category"})]}),w&&(0,i.jsxs)(a.j8w,{onClick:()=>v(!0),color:"white","data-testid":"classification-".concat(m),hasSparkle:!0,children:[p(m),(0,i.jsx)(a.PJP.I8b,{size:10})]}),f&&(0,i.jsx)(a.xuv,{className:"select-wrapper",position:"absolute",zIndex:10,top:"0",left:"0",width:"100%",height:"max",bgColor:"#fff",children:(0,i.jsx)(r.Z,{selectedTaxonomies:x,onChange:e=>{v(!1),j(e)},onBlur:()=>v(!1),open:!0})})]})}},26183:function(e,t,n){"use strict";var i=n(24246);n(27378),t.Z=e=>{let{children:t,className:n,...a}=e;return(0,i.jsx)("div",{className:"relative flex w-full flex-wrap items-center gap-2 overflow-x-auto py-2 ".concat(n||""),...a,children:t})}},57072:function(e,t,n){"use strict";n.d(t,{Bd:function(){return i.Bd},L5:function(){return i.L5},MO:function(){return i.MO},qb:function(){return i.qb}});var i=n(5785)},72707:function(e){e.exports={option:"TaxonomySelect_option__vY6v2"}}}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1115],{77213:function(e,n,i){i.d(n,{Z:function(){return f}});var t=i(24246),s=i(
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1115],{77213:function(e,n,i){i.d(n,{Z:function(){return f}});var t=i(24246),s=i(98227),r=i(88038),a=i.n(r),o=i(86677);i(27378);var l=i(25980),c=i(90867),g=i(42478),d=i(77830),u=()=>{let e=(0,o.useRouter)();return(0,t.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,t.jsxs)(s.xuv,{children:[(0,t.jsxs)(s.Kqy,{direction:{base:"column",sm:"row"},justifyContent:"space-between",children:[(0,t.jsx)(s.xvT,{fontWeight:"semibold",children:"Configure your storage and messaging provider"}),(0,t.jsx)(s.wpx,{onClick:()=>{e.push(d.AD)},children:"Configure"})]}),(0,t.jsxs)(s.xvT,{children:["Before Fides can process your privacy requests we need two simple steps to configure your storage and email client."," "]})]})})},f=e=>{let{children:n,title:i,padded:r=!0,mainProps:d}=e,f=(0,l.hz)(),m=(0,o.useRouter)(),h="/privacy-requests"===m.pathname||"/datastore-connection"===m.pathname,x=!(f.flags.messagingConfiguration&&h),{data:p}=(0,g.JE)(void 0,{skip:x}),{data:y}=(0,c.PW)(void 0,{skip:x}),j=f.flags.messagingConfiguration&&(!p||!y)&&h;return(0,t.jsxs)(s.kCb,{"data-testid":i,direction:"column",h:"100vh",children:[(0,t.jsxs)(a(),{children:[(0,t.jsxs)("title",{children:["Fides Admin UI - ",i]}),(0,t.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,t.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,t.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",...d,children:[j?(0,t.jsx)(u,{}):null,n]})]})}},58754:function(e,n,i){var t=i(24246),s=i(98227),r=i(70788);n.Z=e=>{let{heading:n,breadcrumbItems:i,isSticky:a=!0,children:o,rightContent:l,style:c,...g}=e;return(0,t.jsxs)("div",{...g,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",...c}:{paddingBottom:"24px",...c},children:[(0,t.jsxs)(s.jqI,{justify:"space-between",children:["string"==typeof n?(0,t.jsx)(s.lQT,{className:i||o?"pb-4":void 0,level:1,"data-testid":"page-heading",children:n}):n,l&&(0,t.jsx)("div",{"data-testid":"page-header-right-content",children:l})]}),!!i&&(0,t.jsx)(r.m,{className:o?"pb-4":void 0,items:i,"data-testid":"page-breadcrumb"}),o]})}},70788:function(e,n,i){i.d(n,{m:function(){return c}});var t=i(24246),s=i(98227),r=i(79894),a=i.n(r),o=i(27378);let{Text:l}=s.AntTypography,c=e=>{let{items:n,...i}=e,r=(0,o.useMemo)(()=>null==n?void 0:n.map((e,i)=>{let r=i===n.length-1,o={...e},c=o.onClick&&!o.href;return("string"==typeof o.title&&(o.title=(0,t.jsx)(l,{style:{color:"inherit",maxWidth:r?void 0:400},ellipsis:!r,id:r?"breadcrumb-current-page":void 0,children:o.title})),c)?o.title=(0,t.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,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"anticon align-text-bottom",children:o.icon}),o.title]})),o.href&&o.title&&(o.title=(0,t.jsx)(a(),{href:o.href,className:"ant-breadcrumb-link",children:o.title}),delete o.href)),o}),[n]);return(0,t.jsx)(s.zrq,{items:r,...i})}},42478:function(e,n,i){i.d(n,{FU:function(){return c},JE:function(){return s},Ki:function(){return d},SU:function(){return u},W:function(){return f},h9:function(){return r},jc:function(){return t},qt:function(){return l},sn:function(){return g}});let{useGetEmailInviteStatusQuery:t,useGetActiveMessagingProviderQuery:s,useCreateMessagingConfigurationMutation:r,useCreateMessagingConfigurationSecretsMutation:a,useGetMessagingConfigurationDetailsQuery:o,useGetMessagingConfigurationsQuery:l,useGetMessagingConfigurationByKeyQuery:c,useUpdateMessagingConfigurationByKeyMutation:g,useUpdateMessagingConfigurationSecretsByKeyMutation:d,useCreateTestConnectionMessageMutation:u,useDeleteMessagingConfigurationByKeyMutation:f}=i(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,i,t)=>{let s=await t({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"]})})})},71115:function(e,n,i){i.r(n),i.d(n,{default:function(){return d}});var t=i(24246),s=i(98227),r=i(25980),a=i(62165),o=i(16394);let l=e=>{let{flag:n,value:i,override:r}=e;return"boolean"!=typeof i?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(s.xvT,{fontSize:"sm",children:n}),(0,t.jsx)(s.xvT,{fontSize:"sm",children:i})]}):a.Ky[n].userCannotModify?null:(0,t.jsxs)(s.NIc,{display:"contents",children:[(0,t.jsx)(s.xuv,{justifySelf:"center",children:(0,t.jsx)(s.rAg,{id:"flag-".concat(n),checked:i,onChange:()=>r({flag:n,value:!i})})}),(0,t.jsx)(s.xuv,{children:(0,t.jsx)(s.lXp,{margin:0,fontSize:"sm",htmlFor:"flag-".concat(n),title:n,children:(0,o.Py)(n)})}),(0,t.jsx)(s.xuv,{children:(0,t.jsx)(s.xvT,{fontSize:"sm",children:a.Ky[n].description})})]})};var c=i(77213),g=i(58754),d=e=>{let{showAlphaFeatures:n=!1}=e,i=(0,r.hz)(),{flags:o,override:d,reset:u}=(0,a.Vb)(),f=a.R$.filter(e=>e.startsWith("alpha")),m=a.R$.filter(e=>!e.startsWith("alpha"));return(0,t.jsxs)(c.Z,{title:"About Fides",children:[(0,t.jsx)(g.Z,{heading:"About Fides",children:(0,t.jsxs)(s.kCb,{direction:"column",gap:4,children:[(0,t.jsxs)(s.xuv,{children:[(0,t.jsxs)(s.xvT,{as:"span",fontWeight:"bold",children:["Fides Core Version:"," "]}),(0,t.jsx)(s.xvT,{as:"pre",display:"inline",children:i.version})]}),i.plusVersion?(0,t.jsxs)(s.xuv,{children:[(0,t.jsxs)(s.xvT,{as:"span",fontWeight:"bold",children:["Fides Plus Version:"," "]}),(0,t.jsx)(s.xvT,{as:"pre",display:"inline",children:i.plusVersion})]}):null,(0,t.jsx)(s.izJ,{})]})}),(0,t.jsxs)(s.kCb,{alignItems:"center",gap:4,children:[(0,t.jsx)(s.X6q,{as:"h2",fontSize:"xl",children:"Beta Features"}),(0,t.jsx)(s.wpx,{onClick:u,children:"Reset"})]}),(0,t.jsx)(s.rjZ,{gridTemplateColumns:"1fr 2fr 6fr",gridColumnGap:4,gridRowGap:2,alignItems:"center",className:"py-6",children:m.map(e=>(0,t.jsx)(l,{flag:e,value:o[e],override:d},e))}),n&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(s.kCb,{alignItems:"center",gap:4,children:[(0,t.jsx)(s.X6q,{as:"h2",fontSize:"xl",children:"Alpha Features"}),(0,t.jsx)(s.wpx,{onClick:u,children:"Reset"})]}),(0,t.jsx)(s.rjZ,{gridTemplateColumns:"1fr 2fr 6fr",gridColumnGap:4,gridRowGap:2,alignItems:"center",className:"py-6",children:f.map(e=>(0,t.jsx)(l,{flag:e,value:o[e],override:d},e))})]}),(0,t.jsxs)(s.xuv,{children:[(0,t.jsxs)(s.xvT,{fontSize:"sm",children:["Please visit"," ",(0,t.jsx)(s.rUS,{color:"complimentary.500",href:"https://docs.ethyca.com",isExternal:!0,children:"docs.ethyca.com"})," ","for more information on these features."]}),(0,t.jsxs)(s.xvT,{fontSize:"sm",children:["For questions and feedback, please join us at"," ",(0,t.jsx)(s.rUS,{color:"complimentary.500",href:"https://fidescommunity.slack.com",isExternal:!0,children:"fidescommunity.slack.com"}),"."]})]})]})}}}]);
|