ethyca-fides 2.68.1b2__py2.py3-none-any.whl → 2.68.1b4__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.68.1b2.dist-info → ethyca_fides-2.68.1b4.dist-info}/METADATA +3 -1
- {ethyca_fides-2.68.1b2.dist-info → ethyca_fides-2.68.1b4.dist-info}/RECORD +253 -232
- fides/_version.py +3 -3
- fides/api/alembic/migrations/versions/90502bcda282_update_request_tasks_add_polling_async.py +35 -0
- fides/api/alembic/migrations/versions/b1a2c3d4e5f6_add_location_to_privacy_request.py +26 -0
- fides/api/api/v1/api.py +2 -0
- fides/api/api/v1/endpoints/dsr_package_link.py +167 -0
- fides/api/api/v1/endpoints/privacy_request_endpoints.py +31 -1
- fides/api/api/v1/endpoints/user_endpoints.py +4 -0
- fides/api/common_exceptions.py +12 -3
- fides/api/models/detection_discovery/core.py +6 -0
- fides/api/models/privacy_request/privacy_request.py +1 -0
- fides/api/models/privacy_request/request_task.py +25 -0
- fides/api/models/privacy_request/webhook.py +33 -1
- fides/api/oauth/utils.py +122 -57
- fides/api/schemas/application_config.py +7 -0
- fides/api/schemas/connection_configuration/connection_type_system_map.py +6 -0
- fides/api/schemas/enums/__init__.py +0 -0
- fides/api/schemas/enums/connection_category.py +20 -0
- fides/api/schemas/enums/integration_feature.py +23 -0
- fides/api/schemas/external_https.py +9 -0
- fides/api/schemas/privacy_center_config.py +48 -19
- fides/api/schemas/privacy_request.py +16 -0
- fides/api/schemas/saas/display_info.py +19 -0
- fides/api/schemas/saas/saas_config.py +2 -0
- fides/api/schemas/storage/storage.py +4 -0
- fides/api/service/async_dsr/__init__.py +0 -0
- fides/api/service/async_dsr/async_dsr_service.py +75 -0
- fides/api/service/connectors/saas_connector.py +5 -6
- fides/api/service/privacy_request/dsr_package/dsr_report_builder.py +6 -4
- fides/api/service/privacy_request/request_runner_service.py +41 -4
- fides/api/service/privacy_request/request_service.py +50 -2
- fides/api/service/storage/storage_uploader_service.py +80 -5
- fides/api/service/storage/streaming/__init__.py +42 -0
- fides/api/service/storage/streaming/base_storage_client.py +61 -0
- fides/api/service/storage/streaming/dsr_storage.py +98 -0
- fides/api/service/storage/streaming/retry.py +282 -0
- fides/api/service/storage/streaming/s3/__init__.py +5 -0
- fides/api/service/storage/streaming/s3/s3_storage_client.py +113 -0
- fides/api/service/storage/streaming/s3/streaming_s3.py +196 -0
- fides/api/service/storage/streaming/schemas.py +173 -0
- fides/api/service/storage/streaming/smart_open_client.py +265 -0
- fides/api/service/storage/streaming/smart_open_streaming_storage.py +998 -0
- fides/api/service/storage/streaming/storage_client_factory.py +60 -0
- fides/api/task/graph_task.py +4 -4
- fides/api/task/manual/manual_task_graph_task.py +3 -4
- fides/api/util/connection_type.py +20 -0
- fides/api/util/text.py +51 -0
- fides/common/api/v1/urn_registry.py +3 -0
- fides/config/execution_settings.py +4 -0
- fides/service/privacy_request/privacy_request_service.py +84 -9
- fides/ui-build/static/admin/404.html +1 -1
- fides/ui-build/static/admin/_next/static/LRCvfOqg1kP5kGnkD84G4/_buildManifest.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/1099-b973dfdfc5c3de90.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/1345-b60d1f3442379c73.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{1817-c90365325f8a3d75.js → 1817-74692de5d760a664.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{1975.e5cc7a1ccd477671.js → 1975.78e719130cfe3fd6.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{2921-46f9465c2852a46b.js → 2921-2d9261e8e2e127c0.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/3620-ebd89f91b82661e8.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/3729-ccf90cdaae158f39.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/3847-2759bf1f47a1d29e.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/3855-4174a4d4c205d6e8.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/3872-660aba76572c811b.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{3923-a33633feba5e655e.js → 3923-c6cdc2e5278ae9a7.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{401-741bb31b586b7c96.js → 401-8bc2c6c84172c096.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{4121-94354b50a41f8497.js → 4121-9a4ebceff9accb7f.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/431-86ad2beeb93c95c9.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/4608-4d31340b0d0157c1.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/4786-aaef673b30c19e2e.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/4808-a654c7f7a1ca62c8.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/4844-cd7e1d0c7bb94094.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/5258-bc4a25d43e4aa07d.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/5487-37c78c4799ba5223.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/549-2213dc1c34143cda.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{6084-02abe12327fc3dbc.js → 6084-55cc66e7c94f0686.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{6853-270261ef5537a106.js → 6853-313ce974d33432fb.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/6954-021bd06d0ab59c3c.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/7476-2fc286c2a9125eb8.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/7630-b9a41262a69edf5e.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/768-034e121688a3bbdd.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{787-5ba991cad1f7664a.js → 787-8df7118742e84908.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/79-d2ace89108ead8ae.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/796-2de6dac5f311d54a.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/8002-cfdc6574bd841892.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/9046-c44e41da49338c6c.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/9676.b7d5d1d90b9da224.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{9826-8c81c97a72510fcf.js → 9826-d9addbd5ac990fa4.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/9951-6ee5c0a23951a07f.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/{404-9174cdb70126c2c5.js → 404-9644eb282f2dcd71.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{_app-2c10f6b217b7978b.js → _app-284cba7174fa1f16.js} +136 -135
- fides/ui-build/static/admin/_next/static/chunks/pages/add-systems/{manual-621416493c89ef01.js → manual-42b7fd34712f49bd.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/add-systems/{multiple-0b9908c3e1dfe49e.js → multiple-4f164eab0960bbe0.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/add-systems-985d3c9179e69d7f.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/configure/{add-vendors-5bb1b31ae8752250.js → add-vendors-61090926e5f98a5d.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/configure-17ffe691b91cee2e.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-experience/{[id]-4e4d9426743b5cb4.js → [id]-95c13bca5c1e575e.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/{privacy-experience-d72460348fadcab8.js → privacy-experience-609399510a60beb9.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-notices/{[id]-3e7ddc252da00c98.js → [id]-d7d8f228ac74b26e.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-notices/{new-35a7c305beee9428.js → new-821c0f82d5a2b7d4.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-notices-8365782543cf6ab9.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/{properties-ab96939421639153.js → properties-40a7aa65f4d13cf9.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/reporting-e4bacfc5c2ed2324.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/{consent-13240e3ca77acfeb.js → consent-70c5c6aa5389d99f.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]/{[resourceUrn]-aad6047a4604b945.js → [resourceUrn]-adc500a03e239857.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects/{[projectUrn]-bd37b407c80c6986.js → [projectUrn]-3207f62e5012611b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects-7b42dee0fb696658.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/resources/{[resourceUrn]-b6b98cea25dd94fa.js → [resourceUrn]-c8b3d090e4ba60d3.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog-31a45ea2ca2a7f04.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/[monitorId]/[systemId]-6172c2eb539319fd.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/[monitorId]-945d354ff057fb03.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center-d9795e00f39cf4e9.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/activity-657833fd8528280f.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/detection/{[resourceUrn]-31e6c54794a9883e.js → [resourceUrn]-22eec362dfbb1d2a.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/{detection-2822a423a7ad0550.js → detection-4decce5ef996e563.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/discovery/{[resourceUrn]-f98dd251babb7e28.js → [resourceUrn]-01acdd1ad492fd89.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/{discovery-56eb4c014f0d96a3.js → discovery-85fdbf4cde60d910.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{datamap-8f88dc31c5144ea8.js → datamap-3a4b89fb21d14753.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/[collectionName]/[...subfieldNames]-cb8d303f56091bd5.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/[collectionName]-401c8be76d9daec7.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]-97e2d375b21cfe43.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/new-40ef544ca1f2c9b9.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset-e3c763f8e71f8e24.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection/{[id]-67a7fe58b96ea739.js → [id]-152e5d15705ec072.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection/new-651b10cae0e99a05.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection-03c54bc9fb18d2b0.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/{index-876bfd7210040cec.js → index-3d19b9ffa15a928a.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/integrations/[id]-4b0bb4ccfb237d41.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/integrations-78d4e0c14654148b.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/messaging/{[id]-6e796c3fe632280b.js → [id]-72cb360a6d14e701.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/messaging/{add-template-fa0f3841c5bdfdeb.js → add-template-0ed67cf774d5cbf5.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/messaging-b06a2204e2a5b667.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/ant-components-7050899b3f792129.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/{AntForm-11503454a62d8d7b.js → AntForm-7c3466f4d5797e55.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/{FormikAntFormItem-a504941807bdb7f1.js → FormikAntFormItem-8de252f25871bab9.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/{FormikControlled-0119403c8ff97f83.js → FormikControlled-cd6de0da47f980cf.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/{FormikField-94f6d57d6c94ddf7.js → FormikField-7c238a881fe30e28.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/{forms-ed1a3ae09d72df89.js → forms-d4f3e8f67f76f146.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/table-migration-c9220e20c1d93758.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/[id]-b9d6886a3f157120.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/messaging-9c1fd7867b2d80d7.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/storage-fc959ed21dbce38c.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure-44a4a638dcb2722a.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests-1433c9f9501a884f.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/properties/{[id]-41976b28503623cd.js → [id]-16e0b42cb342aa5f.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/properties/{add-property-cb438d8f5ec6007a.js → add-property-ebd114a86b809391.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{properties-b6db7036993709b3.js → properties-901be5fa4a48f48c.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/reporting/datamap-da9ced1e20681154.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/about/alpha-0174554c0ac5958f.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/about-6f45ddbf675e66d2.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/consent/[configuration_id]/[purpose_id]-275c49e6089c5c9f.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/consent-1a8d05e19f06d857.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/custom-fields-49d86b9ca4523ca6.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{domain-records-386368bf7cb31771.js → domain-records-f71b4b95d91db926.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/domains-a595cad18cf04673.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/email-templates-6f7f9751689b042c.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{locations-b41fb5ad277088ab.js → locations-e2c88d7f779fe604.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/organization-c65acd2b7ab04753.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{regulations-a94dfeea43fbca7d.js → regulations-c1c699eeb40a9dc0.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/systems/configure/[id]/test-datasets-a274e2191b87e315.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/systems/configure/{[id]-18b316e2dad73731.js → [id]-4a48b4f996a64957.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/systems-30debc87925634d9.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/taxonomy-ca625b1296a029f0.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/user-management/profile/{[id]-3237881945acc0ee.js → [id]-7a3180b235eb8846.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{user-management-a3a50d9d79066935.js → user-management-5e2d0acf575252ca.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{webpack-69658aeaf6155d89.js → webpack-4502d4d67006b48f.js} +1 -1
- fides/ui-build/static/admin/_next/static/css/43d0c0fc207767eb.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/[monitorId]/[systemId].html +1 -1
- fides/ui-build/static/admin/data-discovery/action-center/[monitorId].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/lib/fides-preview.js +1 -1
- fides/ui-build/static/admin/lib/fides-tcf.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/messaging/[id].html +1 -1
- fides/ui-build/static/admin/messaging/add-template.html +1 -1
- fides/ui-build/static/admin/messaging.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/messaging.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.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/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/203-0c6cadcda98bdd33.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/3450-9314e1b15df8a8da.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/3855-4267fd8193e7f525.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/3872-ac5feefd40b61ae3.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/409-5bc4369b80a8c11d.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/4230-1ebc8c0ab293a077.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/431-a34d7ceff17c2169.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/4608-557fb24665b2e4bf.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/5309-ffdec884eec79d29.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/5574-831167a8da90e2e6.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/6662-499c189f932a35aa.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/6780-7d28e030f6516e5d.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/6882-7cc1d14e27a80c10.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/6954-7784e8d5ad6b8110.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/7476-4de465016d3433b4.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/7630-2a5c57787632693d.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/7725-c79513b04113112b.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/79-98cfab20bb831137.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/796-0b768155bf20505f.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/8735-f84afcc50885883c.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/9046-97a972cc8a8ed24d.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/9226-318dadf1c050ecda.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/9676.9e6828b42ef05e06.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/9951-4df2b67e0def5500.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/add-systems-18e96ce81dab51a4.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/configure-54d7c7310763c66d.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-notices-6bc3b73a21576869.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/reporting-fe3d6887fecf0f86.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects-e4770acf7044e2f5.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog-0db635c3483c9da8.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/[monitorId]/[systemId]-0c0e0a7798345541.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/[monitorId]-3c56e5fe072a44c6.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center-58827eb86516931f.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/activity-6a90131dcecd694c.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/[collectionName]/[...subfieldNames]-145fe9e4cfcb231d.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/[collectionName]-8a1e5d140785c1e9.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]-227b5db4b472a6a7.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/new-8401f17fe5d9a1dc.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset-7d77b3ad069be268.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection/new-90a8df230cb89877.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection-cfb25b02abb8da71.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/integrations/[id]-4e286a1e501a0c73.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/integrations-3fdc55d4c129e618.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/messaging-8f9c006b6166f002.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/ant-components-6ba7ae4f26c06cb0.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/poc/table-migration-e8db3ad525e7ddbd.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/[id]-c14dd24592369467.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/messaging-100d7d03930629a8.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/storage-6f8d1b3ec83cfcf0.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure-3ce15577435d47cb.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests-709bcb0bc6a5382d.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/reporting/datamap-4bc3e281409265cc.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/about/alpha-1ea40fcd6b4268bf.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/about-65c7600fadc6e55a.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/consent/[configuration_id]/[purpose_id]-33dab986141b3663.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/consent-1195042727c399ed.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/custom-fields-71b98858ecb4e097.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/domains-cf427e04f862b5d2.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/email-templates-eabeeec5bf2773c6.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/organization-ee56698ae3a6a78b.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/systems/configure/[id]/test-datasets-0e2e98cc38ee5499.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/systems-c32589c86081b750.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/taxonomy-a8f09bf8f3204ca7.js +0 -1
- fides/ui-build/static/admin/_next/static/css/a72179b1754aadd3.css +0 -1
- fides/ui-build/static/admin/_next/static/qvk5eMANVfwYkdURE7fgG/_buildManifest.js +0 -1
- {ethyca_fides-2.68.1b2.dist-info → ethyca_fides-2.68.1b4.dist-info}/WHEEL +0 -0
- {ethyca_fides-2.68.1b2.dist-info → ethyca_fides-2.68.1b4.dist-info}/entry_points.txt +0 -0
- {ethyca_fides-2.68.1b2.dist-info → ethyca_fides-2.68.1b4.dist-info}/licenses/LICENSE +0 -0
- {ethyca_fides-2.68.1b2.dist-info → ethyca_fides-2.68.1b4.dist-info}/top_level.txt +0 -0
- /fides/ui-build/static/admin/_next/static/{qvk5eMANVfwYkdURE7fgG → LRCvfOqg1kP5kGnkD84G4}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"""Factory for creating provider-specific storage clients."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from typing import Any
|
|
6
|
+
|
|
7
|
+
from fides.api.service.storage.streaming.base_storage_client import BaseStorageClient
|
|
8
|
+
from fides.api.service.storage.streaming.s3.s3_storage_client import S3StorageClient
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class StorageClientFactory:
|
|
12
|
+
"""Factory for creating provider-specific storage clients.
|
|
13
|
+
|
|
14
|
+
This factory creates the appropriate storage client implementation based on
|
|
15
|
+
the storage type, providing a clean separation between the main client and
|
|
16
|
+
provider-specific logic.
|
|
17
|
+
"""
|
|
18
|
+
|
|
19
|
+
@staticmethod
|
|
20
|
+
def create_client(storage_type: str, storage_secrets: Any) -> BaseStorageClient:
|
|
21
|
+
"""Create a provider-specific storage client.
|
|
22
|
+
|
|
23
|
+
Args:
|
|
24
|
+
storage_type: Type of storage ('s3', 'gcs', 'azure')
|
|
25
|
+
storage_secrets: Storage credentials and configuration.
|
|
26
|
+
Will be passed to the specific storage client implementation.
|
|
27
|
+
|
|
28
|
+
Returns:
|
|
29
|
+
Provider-specific storage client implementation
|
|
30
|
+
|
|
31
|
+
Raises:
|
|
32
|
+
ValueError: If the storage type is not supported
|
|
33
|
+
"""
|
|
34
|
+
normalized_type = StorageClientFactory._normalize_storage_type(storage_type)
|
|
35
|
+
|
|
36
|
+
if normalized_type == "s3":
|
|
37
|
+
return S3StorageClient(storage_secrets)
|
|
38
|
+
if normalized_type == "gcs":
|
|
39
|
+
raise NotImplementedError("GCS storage is not yet supported")
|
|
40
|
+
raise ValueError(f"Unsupported storage type: {storage_type}")
|
|
41
|
+
|
|
42
|
+
@staticmethod
|
|
43
|
+
def _normalize_storage_type(storage_type: str) -> str:
|
|
44
|
+
"""Normalize storage type to standard values.
|
|
45
|
+
|
|
46
|
+
Args:
|
|
47
|
+
storage_type: Raw storage type string
|
|
48
|
+
|
|
49
|
+
Returns:
|
|
50
|
+
Normalized storage type string
|
|
51
|
+
"""
|
|
52
|
+
storage_type = storage_type.lower()
|
|
53
|
+
|
|
54
|
+
# Normalize storage type
|
|
55
|
+
if storage_type in {"gcs", "gcp", "google"}:
|
|
56
|
+
return "gcs"
|
|
57
|
+
if storage_type == "s3":
|
|
58
|
+
return "s3"
|
|
59
|
+
|
|
60
|
+
return storage_type
|
fides/api/task/graph_task.py
CHANGED
|
@@ -13,7 +13,7 @@ from sqlalchemy.orm import Session
|
|
|
13
13
|
from fides.api.api.deps import get_autoclose_db_session as get_db
|
|
14
14
|
from fides.api.common_exceptions import (
|
|
15
15
|
ActionDisabled,
|
|
16
|
-
|
|
16
|
+
AwaitingAsyncTask,
|
|
17
17
|
CollectionDisabled,
|
|
18
18
|
NotSupportedForCollection,
|
|
19
19
|
PrivacyRequestErasureEmailSendRequired,
|
|
@@ -114,17 +114,17 @@ def retry(
|
|
|
114
114
|
self.log_start(action_type)
|
|
115
115
|
# Run access or erasure request
|
|
116
116
|
return func(*args, **kwargs)
|
|
117
|
-
except
|
|
117
|
+
except AwaitingAsyncTask as ex:
|
|
118
118
|
traceback.print_exc()
|
|
119
119
|
logger.warning(
|
|
120
|
-
"Request Task {} {} {} awaiting async
|
|
120
|
+
"Request Task {} {} {} awaiting async continuation",
|
|
121
121
|
self.request_task.id if self.request_task.id else None,
|
|
122
122
|
method_name,
|
|
123
123
|
self.execution_node.address,
|
|
124
124
|
)
|
|
125
125
|
# Log the awaiting processing status and exit without retrying.
|
|
126
126
|
self.log_awaiting_processing(action_type, ex)
|
|
127
|
-
# Request Task put in "awaiting_processing" status and exited, awaiting Async
|
|
127
|
+
# Request Task put in "awaiting_processing" status and exited, awaiting for Async continuation
|
|
128
128
|
return None
|
|
129
129
|
except PrivacyRequestErasureEmailSendRequired as exc:
|
|
130
130
|
traceback.print_exc()
|
|
@@ -3,7 +3,7 @@ from typing import Any, Optional
|
|
|
3
3
|
from loguru import logger
|
|
4
4
|
from pydantic.v1.utils import deep_update
|
|
5
5
|
|
|
6
|
-
from fides.api.common_exceptions import
|
|
6
|
+
from fides.api.common_exceptions import AwaitingAsyncTask
|
|
7
7
|
from fides.api.models.attachment import AttachmentType
|
|
8
8
|
from fides.api.models.manual_task import (
|
|
9
9
|
ManualTask,
|
|
@@ -138,7 +138,7 @@ class ManualTaskGraphTask(GraphTask):
|
|
|
138
138
|
Execute manual task logic following the standard GraphTask pattern:
|
|
139
139
|
1. Create ManualTaskInstances if they don't exist
|
|
140
140
|
2. Check if all required submissions are present
|
|
141
|
-
3. Return data if submitted, raise
|
|
141
|
+
3. Return data if submitted, raise AwaitingAsyncTask if not
|
|
142
142
|
"""
|
|
143
143
|
manual_task = self._get_manual_task_or_none()
|
|
144
144
|
if manual_task is None:
|
|
@@ -265,7 +265,7 @@ class ManualTaskGraphTask(GraphTask):
|
|
|
265
265
|
base_msg = f"Manual task for {self.connection_key} requires user input"
|
|
266
266
|
if awaiting_detail_message:
|
|
267
267
|
base_msg = f"{base_msg}. {awaiting_detail_message}"
|
|
268
|
-
raise
|
|
268
|
+
raise AwaitingAsyncTask(base_msg)
|
|
269
269
|
|
|
270
270
|
def _ensure_manual_task_instances(
|
|
271
271
|
self,
|
|
@@ -435,7 +435,6 @@ class ManualTaskGraphTask(GraphTask):
|
|
|
435
435
|
]
|
|
436
436
|
|
|
437
437
|
if instances_to_remove:
|
|
438
|
-
|
|
439
438
|
# Remove instances from the database
|
|
440
439
|
for instance in instances_to_remove:
|
|
441
440
|
instance.delete(self.resources.session)
|
|
@@ -230,6 +230,23 @@ def get_saas_connection_types(
|
|
|
230
230
|
for item in saas_types:
|
|
231
231
|
connector_template = ConnectorRegistry.get_connector_template(item)
|
|
232
232
|
if connector_template is not None:
|
|
233
|
+
# Read display info from SAAS config if available
|
|
234
|
+
category = None
|
|
235
|
+
tags = None
|
|
236
|
+
enabled_features = None
|
|
237
|
+
|
|
238
|
+
try:
|
|
239
|
+
saas_config = SaaSConfig(
|
|
240
|
+
**load_config_from_string(connector_template.config)
|
|
241
|
+
)
|
|
242
|
+
if saas_config.display_info:
|
|
243
|
+
category = saas_config.display_info.category
|
|
244
|
+
tags = saas_config.display_info.tags
|
|
245
|
+
enabled_features = saas_config.display_info.enabled_features
|
|
246
|
+
except Exception:
|
|
247
|
+
# If config parsing fails, leave display info as None
|
|
248
|
+
pass
|
|
249
|
+
|
|
233
250
|
saas_connection_types.append(
|
|
234
251
|
ConnectionSystemTypeMap(
|
|
235
252
|
identifier=item,
|
|
@@ -239,6 +256,9 @@ def get_saas_connection_types(
|
|
|
239
256
|
authorization_required=connector_template.authorization_required,
|
|
240
257
|
user_guide=connector_template.user_guide,
|
|
241
258
|
supported_actions=connector_template.supported_actions,
|
|
259
|
+
category=category,
|
|
260
|
+
tags=tags,
|
|
261
|
+
enabled_features=enabled_features,
|
|
242
262
|
)
|
|
243
263
|
)
|
|
244
264
|
|
fides/api/util/text.py
CHANGED
|
@@ -2,6 +2,57 @@ import re
|
|
|
2
2
|
|
|
3
3
|
from anyascii import anyascii # type: ignore
|
|
4
4
|
|
|
5
|
+
# Regex to validate a ISO 3166-2 code:
|
|
6
|
+
# 1. Starts with a 2 letter country code (e.g. "US", "GB") (see ISO 3166-1 alpha-2)
|
|
7
|
+
# 2. (Optional) Ends with a 1-3 alphanumeric character region code (e.g. "CA", "123", "X") (see ISO 3166-2)
|
|
8
|
+
# 3. Country & region codes must be separated by a hyphen (e.g. "US-CA")
|
|
9
|
+
#
|
|
10
|
+
# Fides also supports a special `EEA` geolocation code to denote the European
|
|
11
|
+
# Economic Area; this is not part of ISO 3166-2, but is supported for convenience.
|
|
12
|
+
VALID_ISO_3166_LOCATION_REGEX = re.compile(
|
|
13
|
+
r"^(?:([a-z]{2})(-[a-z0-9]{1,3})?|(eea))$", re.IGNORECASE
|
|
14
|
+
)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
def normalize_location_code(location: str) -> str:
|
|
18
|
+
"""
|
|
19
|
+
Normalize a location code to ISO 3166-2 format.
|
|
20
|
+
|
|
21
|
+
Converts location codes to the idiomatic format:
|
|
22
|
+
- Uppercase (e.g., "us-ca" -> "US-CA")
|
|
23
|
+
- Hyphens instead of underscores (e.g., "US_CA" -> "US-CA")
|
|
24
|
+
- Supports special codes like "EEA"
|
|
25
|
+
|
|
26
|
+
Args:
|
|
27
|
+
location: Input location code (e.g., "us-ca", "US_NY", "gb", "eea")
|
|
28
|
+
|
|
29
|
+
Returns:
|
|
30
|
+
Normalized location code (e.g., "US-CA", "US-NY", "GB", "EEA")
|
|
31
|
+
|
|
32
|
+
Raises:
|
|
33
|
+
ValueError: If the normalized location doesn't match ISO 3166-2 format
|
|
34
|
+
|
|
35
|
+
Examples:
|
|
36
|
+
normalize_location_code("us-ca") -> "US-CA"
|
|
37
|
+
normalize_location_code("US_NY") -> "US-NY"
|
|
38
|
+
normalize_location_code("gb") -> "GB"
|
|
39
|
+
normalize_location_code("eea") -> "EEA"
|
|
40
|
+
"""
|
|
41
|
+
if not location:
|
|
42
|
+
raise ValueError("Location code cannot be empty")
|
|
43
|
+
|
|
44
|
+
# Convert to uppercase and replace underscores with hyphens
|
|
45
|
+
normalized = location.upper().replace("_", "-")
|
|
46
|
+
|
|
47
|
+
# Validate against ISO 3166-2 format
|
|
48
|
+
if not VALID_ISO_3166_LOCATION_REGEX.match(normalized):
|
|
49
|
+
raise ValueError(
|
|
50
|
+
f"Invalid location format '{location}'. Must follow ISO 3166 format "
|
|
51
|
+
"(e.g., 'US', 'US-CA', 'GB', 'CA-ON', 'EEA')"
|
|
52
|
+
)
|
|
53
|
+
|
|
54
|
+
return normalized
|
|
55
|
+
|
|
5
56
|
|
|
6
57
|
def to_snake_case(text: str) -> str:
|
|
7
58
|
"""
|
|
@@ -73,6 +73,9 @@ MESSAGING_EMAIL_INVITE_STATUS = "/messaging/email-invite/status"
|
|
|
73
73
|
POLICY_LIST = "/dsr/policy"
|
|
74
74
|
POLICY_DETAIL = "/dsr/policy/{policy_key}"
|
|
75
75
|
|
|
76
|
+
# Privacy Center URLs
|
|
77
|
+
PRIVACY_CENTER_DSR_PACKAGE = "/privacy-request/{privacy_request_id}/access-package"
|
|
78
|
+
|
|
76
79
|
# Privacy request URLs
|
|
77
80
|
PRIVACY_REQUESTS = "/privacy-request"
|
|
78
81
|
PRIVACY_REQUEST_APPROVE = "/privacy-request/administrate/approve"
|
|
@@ -61,6 +61,10 @@ class ExecutionSettings(FidesSettings):
|
|
|
61
61
|
default=3,
|
|
62
62
|
description="The number of times a privacy request will be requeued when its tasks are interrupted before being marked as error",
|
|
63
63
|
)
|
|
64
|
+
async_tasks_status_polling_interval_seconds: int = Field(
|
|
65
|
+
default=3600,
|
|
66
|
+
description="Seconds between polling for async tasks to requeue",
|
|
67
|
+
)
|
|
64
68
|
use_dsr_3_0: bool = Field(
|
|
65
69
|
default=False,
|
|
66
70
|
description="Temporary flag to switch to using DSR 3.0 to process your tasks.",
|
|
@@ -7,11 +7,15 @@ from sqlalchemy.orm import Session
|
|
|
7
7
|
from fides.api.common_exceptions import (
|
|
8
8
|
FidesopsException,
|
|
9
9
|
MessageDispatchException,
|
|
10
|
+
PrivacyRequestError,
|
|
10
11
|
RedisNotConfigured,
|
|
11
12
|
)
|
|
12
13
|
from fides.api.models.audit_log import AuditLog, AuditLogAction
|
|
13
14
|
from fides.api.models.policy import Policy
|
|
14
15
|
from fides.api.models.pre_approval_webhook import PreApprovalWebhook
|
|
16
|
+
from fides.api.models.privacy_center_config import (
|
|
17
|
+
PrivacyCenterConfig as PrivacyCenterConfigModel,
|
|
18
|
+
)
|
|
15
19
|
from fides.api.models.privacy_preference import PrivacyPreferenceHistory
|
|
16
20
|
from fides.api.models.privacy_request import (
|
|
17
21
|
ConsentRequest,
|
|
@@ -24,6 +28,10 @@ from fides.api.models.worker_task import ExecutionLogStatus
|
|
|
24
28
|
from fides.api.schemas.api import BulkUpdateFailed
|
|
25
29
|
from fides.api.schemas.messaging.messaging import MessagingActionType
|
|
26
30
|
from fides.api.schemas.policy import ActionType, CurrentStep
|
|
31
|
+
from fides.api.schemas.privacy_center_config import LocationCustomPrivacyRequestField
|
|
32
|
+
from fides.api.schemas.privacy_center_config import (
|
|
33
|
+
PrivacyCenterConfig as PrivacyCenterConfigSchema,
|
|
34
|
+
)
|
|
27
35
|
from fides.api.schemas.privacy_request import (
|
|
28
36
|
BulkPostPrivacyRequests,
|
|
29
37
|
BulkReviewResponse,
|
|
@@ -51,15 +59,6 @@ from fides.service.messaging.messaging_service import (
|
|
|
51
59
|
)
|
|
52
60
|
|
|
53
61
|
|
|
54
|
-
class PrivacyRequestError(Exception):
|
|
55
|
-
"""Base exception for privacy request operations."""
|
|
56
|
-
|
|
57
|
-
def __init__(self, message: str, data: Optional[Dict] = None):
|
|
58
|
-
self.message = message
|
|
59
|
-
self.data = data
|
|
60
|
-
super().__init__(message)
|
|
61
|
-
|
|
62
|
-
|
|
63
62
|
class PrivacyRequestService:
|
|
64
63
|
def __init__(
|
|
65
64
|
self,
|
|
@@ -79,6 +78,78 @@ class PrivacyRequestService:
|
|
|
79
78
|
logger.info(f"Privacy request with ID {privacy_request_id} was not found.")
|
|
80
79
|
return privacy_request
|
|
81
80
|
|
|
81
|
+
def _validate_required_location_fields(
|
|
82
|
+
self, privacy_request_data: PrivacyRequestCreate
|
|
83
|
+
) -> None:
|
|
84
|
+
"""Validate that location is provided for required location fields.
|
|
85
|
+
|
|
86
|
+
Looks up the actual Privacy Center configuration to check if any location
|
|
87
|
+
fields are marked as required for the specified policy.
|
|
88
|
+
"""
|
|
89
|
+
# If location is already provided, no validation needed
|
|
90
|
+
if privacy_request_data.location:
|
|
91
|
+
return
|
|
92
|
+
|
|
93
|
+
# Get the Privacy Center configuration from the database
|
|
94
|
+
privacy_center_config_record = PrivacyCenterConfigModel.filter(
|
|
95
|
+
db=self.db, conditions=PrivacyCenterConfigModel.single_row # type: ignore[arg-type]
|
|
96
|
+
).first()
|
|
97
|
+
|
|
98
|
+
if not privacy_center_config_record:
|
|
99
|
+
# No Privacy Center config found, skip validation
|
|
100
|
+
return
|
|
101
|
+
|
|
102
|
+
try:
|
|
103
|
+
# Parse the config using the Pydantic schema
|
|
104
|
+
privacy_center_config = PrivacyCenterConfigSchema.model_validate(
|
|
105
|
+
privacy_center_config_record.config
|
|
106
|
+
)
|
|
107
|
+
except Exception as exc:
|
|
108
|
+
logger.warning(
|
|
109
|
+
f"Could not parse Privacy Center config for location validation: {exc}"
|
|
110
|
+
)
|
|
111
|
+
return
|
|
112
|
+
|
|
113
|
+
# Find the action that matches the policy key
|
|
114
|
+
matching_action = None
|
|
115
|
+
for action in privacy_center_config.actions:
|
|
116
|
+
if action.policy_key == privacy_request_data.policy_key:
|
|
117
|
+
matching_action = action
|
|
118
|
+
break
|
|
119
|
+
|
|
120
|
+
if not matching_action or not matching_action.custom_privacy_request_fields:
|
|
121
|
+
# No matching action or no custom fields defined
|
|
122
|
+
return
|
|
123
|
+
|
|
124
|
+
# Check if any location fields are required
|
|
125
|
+
for (
|
|
126
|
+
field_name,
|
|
127
|
+
field_config,
|
|
128
|
+
) in matching_action.custom_privacy_request_fields.items():
|
|
129
|
+
if isinstance(field_config, LocationCustomPrivacyRequestField):
|
|
130
|
+
# This is a location field - check if it's required
|
|
131
|
+
if field_config.required:
|
|
132
|
+
# Check if this field has a value in the request
|
|
133
|
+
field_has_value = False
|
|
134
|
+
if privacy_request_data.custom_privacy_request_fields:
|
|
135
|
+
field_data = (
|
|
136
|
+
privacy_request_data.custom_privacy_request_fields.get(
|
|
137
|
+
field_name
|
|
138
|
+
)
|
|
139
|
+
)
|
|
140
|
+
if (
|
|
141
|
+
field_data
|
|
142
|
+
and hasattr(field_data, "value")
|
|
143
|
+
and field_data.value
|
|
144
|
+
):
|
|
145
|
+
field_has_value = True
|
|
146
|
+
|
|
147
|
+
if not field_has_value:
|
|
148
|
+
raise PrivacyRequestError(
|
|
149
|
+
f"Location is required for field '{field_name}' but was not provided",
|
|
150
|
+
privacy_request_data.model_dump(mode="json"),
|
|
151
|
+
)
|
|
152
|
+
|
|
82
153
|
# pylint: disable=too-many-branches
|
|
83
154
|
def create_privacy_request(
|
|
84
155
|
self,
|
|
@@ -119,6 +190,9 @@ class PrivacyRequestService:
|
|
|
119
190
|
privacy_request_data.model_dump(mode="json"),
|
|
120
191
|
)
|
|
121
192
|
|
|
193
|
+
# Validate location is provided for required location fields
|
|
194
|
+
self._validate_required_location_fields(privacy_request_data)
|
|
195
|
+
|
|
122
196
|
policy = Policy.get_by(
|
|
123
197
|
db=self.db,
|
|
124
198
|
field="key",
|
|
@@ -159,6 +233,7 @@ class PrivacyRequestService:
|
|
|
159
233
|
"consent_preferences",
|
|
160
234
|
"property_id",
|
|
161
235
|
"source",
|
|
236
|
+
"location",
|
|
162
237
|
]
|
|
163
238
|
|
|
164
239
|
for field in OPTIONAL_FIELDS:
|
|
@@ -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/43d0c0fc207767eb.css" as="style"/><link rel="stylesheet" href="/_next/static/css/43d0c0fc207767eb.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-4502d4d67006b48f.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-284cba7174fa1f16.js" defer=""></script><script src="/_next/static/chunks/pages/404-9644eb282f2dcd71.js" defer=""></script><script src="/_next/static/LRCvfOqg1kP5kGnkD84G4/_buildManifest.js" defer=""></script><script src="/_next/static/LRCvfOqg1kP5kGnkD84G4/_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":"LRCvfOqg1kP5kGnkD84G4","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
self.__BUILD_MANIFEST=function(s,e,t,c,a,n,i,d,o,r,p,u,g,f,m,j,k,b,h,y,l,v,I,F,x,_,U,w,q,N,A,S,B,C,z,D,E,L,M,T,P,G,H,J,K,O,Q,R){return{__rewrites:{afterFiles:[],beforeFiles:[],fallback:[]},"/":[F,"static/chunks/pages/index-3d19b9ffa15a928a.js"],"/404":["static/chunks/pages/404-9644eb282f2dcd71.js"],"/_error":["static/chunks/pages/_error-bede3a8288930dcf.js"],"/add-systems":[s,e,F,"static/chunks/pages/add-systems-985d3c9179e69d7f.js"],"/add-systems/manual":[t,s,c,a,n,g,e,d,f,m,h,x,_,"static/chunks/pages/add-systems/manual-42b7fd34712f49bd.js"],"/add-systems/multiple":[d,j,U,"static/chunks/pages/add-systems/multiple-4f164eab0960bbe0.js"],"/consent":["static/chunks/pages/consent-70c5c6aa5389d99f.js"],"/consent/configure":[d,j,"static/chunks/pages/consent/configure-17ffe691b91cee2e.js"],"/consent/configure/add-vendors":[d,j,U,"static/chunks/pages/consent/configure/add-vendors-61090926e5f98a5d.js"],"/consent/privacy-experience":[g,w,"static/chunks/pages/consent/privacy-experience-609399510a60beb9.js"],"/consent/privacy-experience/new":[t,o,k,b,q,"static/chunks/pages/consent/privacy-experience/new-e74cb5ea87f15b40.js"],"/consent/privacy-experience/[id]":[t,o,k,b,q,"static/chunks/pages/consent/privacy-experience/[id]-95c13bca5c1e575e.js"],"/consent/privacy-notices":[w,"static/chunks/pages/consent/privacy-notices-8365782543cf6ab9.js"],"/consent/privacy-notices/new":[t,o,k,b,N,"static/chunks/pages/consent/privacy-notices/new-821c0f82d5a2b7d4.js"],"/consent/privacy-notices/[id]":[t,o,k,b,N,"static/chunks/pages/consent/privacy-notices/[id]-d7d8f228ac74b26e.js"],"/consent/properties":[A,"static/chunks/pages/consent/properties-40a7aa65f4d13cf9.js"],"/consent/reporting":["static/chunks/2150-930ffaf2c4718edc.js","static/chunks/pages/consent/reporting-e4bacfc5c2ed2324.js"],"/data-catalog":[t,c,a,"static/css/95ac327e5d70148d.css","static/chunks/pages/data-catalog-31a45ea2ca2a7f04.js"],"/data-catalog/[systemId]/projects":[t,c,a,p,y,i,"static/chunks/pages/data-catalog/[systemId]/projects-7b42dee0fb696658.js"],"/data-catalog/[systemId]/projects/[projectUrn]":[S,"static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]-3207f62e5012611b.js"],"/data-catalog/[systemId]/projects/[projectUrn]/[resourceUrn]":[t,s,c,a,e,p,y,B,i,"static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]/[resourceUrn]-adc500a03e239857.js"],"/data-catalog/[systemId]/resources":[S,"static/chunks/pages/data-catalog/[systemId]/resources-6c3714ee97a718c1.js"],"/data-catalog/[systemId]/resources/[resourceUrn]":[t,s,c,a,e,p,y,B,i,"static/chunks/pages/data-catalog/[systemId]/resources/[resourceUrn]-c8b3d090e4ba60d3.js"],"/data-discovery/action-center":["static/chunks/pages/data-discovery/action-center-d9795e00f39cf4e9.js"],"/data-discovery/action-center/[monitorId]":[t,s,c,a,e,C,l,"static/chunks/pages/data-discovery/action-center/[monitorId]-945d354ff057fb03.js"],"/data-discovery/action-center/[monitorId]/[systemId]":[t,s,c,a,e,d,h,C,"static/css/23cf870196941c9a.css","static/chunks/pages/data-discovery/action-center/[monitorId]/[systemId]-6172c2eb539319fd.js"],"/data-discovery/activity":[s,e,u,"static/chunks/pages/data-discovery/activity-657833fd8528280f.js"],"/data-discovery/detection":[s,e,u,z,"static/chunks/pages/data-discovery/detection-4decce5ef996e563.js"],"/data-discovery/detection/[resourceUrn]":[s,e,u,z,"static/chunks/pages/data-discovery/detection/[resourceUrn]-22eec362dfbb1d2a.js"],"/data-discovery/discovery":[t,s,c,a,e,u,p,D,i,"static/chunks/pages/data-discovery/discovery-85fdbf4cde60d910.js"],"/data-discovery/discovery/[resourceUrn]":[t,s,c,a,e,u,p,D,i,"static/chunks/pages/data-discovery/discovery/[resourceUrn]-01acdd1ad492fd89.js"],"/datamap":[s,a,"static/chunks/255-1bc0cbef7a59cdc6.js",e,f,E,"static/chunks/pages/datamap-3a4b89fb21d14753.js"],"/dataset":[r,"static/chunks/pages/dataset-e3c763f8e71f8e24.js"],"/dataset/new":[s,r,e,"static/chunks/pages/dataset/new-40ef544ca1f2c9b9.js"],"/dataset/[datasetId]":["static/chunks/9729-fcf6ff4e3534e4a8.js",v,"static/chunks/pages/dataset/[datasetId]-97e2d375b21cfe43.js"],"/dataset/[datasetId]/[collectionName]":[t,c,a,n,v,L,i,"static/chunks/pages/dataset/[datasetId]/[collectionName]-401c8be76d9daec7.js"],"/dataset/[datasetId]/[collectionName]/[...subfieldNames]":[t,c,a,n,v,L,i,"static/chunks/pages/dataset/[datasetId]/[collectionName]/[...subfieldNames]-cb8d303f56091bd5.js"],"/datastore-connection":["static/css/5f393dea1c0d031c.css","static/chunks/pages/datastore-connection-03c54bc9fb18d2b0.js"],"/datastore-connection/new":[t,s,n,r,g,M,e,T,"static/chunks/pages/datastore-connection/new-651b10cae0e99a05.js"],"/datastore-connection/[id]":[t,s,n,r,M,e,T,"static/chunks/pages/datastore-connection/[id]-152e5d15705ec072.js"],"/fides-js-docs":["static/chunks/2fbcc6de-a6c61724c327e9fa.js","static/chunks/e3251fe7-5777b5d778e6fffa.js",t,c,a,n,r,"static/chunks/5619-9b50cec521203989.js",P,"static/css/0b4b1b65cc874774.css","static/chunks/5596-bb601cbf40e47a0f.js","static/chunks/pages/fides-js-docs-1f4335dca5c09860.js"],"/integrations":[t,s,c,a,n,o,G,e,m,H,i,"static/chunks/pages/integrations-78d4e0c14654148b.js"],"/integrations/[id]":[t,s,c,a,n,o,G,e,m,H,i,"static/chunks/pages/integrations/[id]-4b0bb4ccfb237d41.js"],"/login":["static/chunks/pages/login-0cb0eb44bf2dd24c.js"],"/login/[provider]":["static/chunks/pages/login/[provider]-c58beef131c3a82d.js"],"/messaging":[t,c,"static/chunks/346-aa3b88efb85f2e28.js","static/chunks/pages/messaging-b06a2204e2a5b667.js"],"/messaging/add-template":[J,"static/chunks/pages/messaging/add-template-0ed67cf774d5cbf5.js"],"/messaging/[id]":[J,"static/chunks/pages/messaging/[id]-72cb360a6d14e701.js"],"/poc/ant-components":["static/chunks/pages/poc/ant-components-7050899b3f792129.js"],"/poc/form-experiments/AntForm":["static/chunks/pages/poc/form-experiments/AntForm-7c3466f4d5797e55.js"],"/poc/form-experiments/FormikAntFormItem":["static/chunks/pages/poc/form-experiments/FormikAntFormItem-8de252f25871bab9.js"],"/poc/form-experiments/FormikControlled":["static/chunks/pages/poc/form-experiments/FormikControlled-cd6de0da47f980cf.js"],"/poc/form-experiments/FormikField":["static/chunks/pages/poc/form-experiments/FormikField-7c238a881fe30e28.js"],"/poc/form-experiments/FormikSpreadField":[K,"static/chunks/pages/poc/form-experiments/FormikSpreadField-af097d661f6abcf4.js"],"/poc/forms":[K,"static/chunks/pages/poc/forms-d4f3e8f67f76f146.js"],"/poc/table-migration":[d,j,"static/chunks/pages/poc/table-migration-c9220e20c1d93758.js"],"/privacy-requests":[t,s,"static/chunks/3550-d04125c828d591a1.js",e,"static/chunks/pages/privacy-requests-1433c9f9501a884f.js"],"/privacy-requests/configure":["static/chunks/pages/privacy-requests/configure-44a4a638dcb2722a.js"],"/privacy-requests/configure/messaging":[s,e,"static/chunks/pages/privacy-requests/configure/messaging-9c1fd7867b2d80d7.js"],"/privacy-requests/configure/storage":[s,e,"static/chunks/pages/privacy-requests/configure/storage-fc959ed21dbce38c.js"],"/privacy-requests/[id]":[s,e,"static/css/073713cd1eddda79.css","static/chunks/pages/privacy-requests/[id]-b9d6886a3f157120.js"],"/properties":[A,"static/chunks/pages/properties-901be5fa4a48f48c.js"],"/properties/add-property":[O,"static/chunks/pages/properties/add-property-ebd114a86b809391.js"],"/properties/[id]":[O,"static/chunks/pages/properties/[id]-16e0b42cb342aa5f.js"],"/reporting/datamap":[t,s,c,a,P,e,f,E,"static/chunks/pages/reporting/datamap-da9ced1e20681154.js"],"/settings/about":["static/chunks/pages/settings/about-6f45ddbf675e66d2.js"],"/settings/about/alpha":["static/chunks/pages/settings/about/alpha-0174554c0ac5958f.js"],"/settings/consent":["static/chunks/pages/settings/consent-1a8d05e19f06d857.js"],"/settings/consent/[configuration_id]/[purpose_id]":["static/chunks/pages/settings/consent/[configuration_id]/[purpose_id]-275c49e6089c5c9f.js"],"/settings/custom-fields":[s,e,"static/chunks/pages/settings/custom-fields-49d86b9ca4523ca6.js"],"/settings/domain-records":["static/chunks/pages/settings/domain-records-f71b4b95d91db926.js"],"/settings/domains":["static/chunks/pages/settings/domains-a595cad18cf04673.js"],"/settings/email-templates":["static/chunks/pages/settings/email-templates-6f7f9751689b042c.js"],"/settings/locations":[Q,l,"static/chunks/pages/settings/locations-e2c88d7f779fe604.js"],"/settings/organization":["static/chunks/pages/settings/organization-c65acd2b7ab04753.js"],"/settings/regulations":[Q,l,"static/chunks/pages/settings/regulations-c1c699eeb40a9dc0.js"],"/systems":["static/chunks/pages/systems-30debc87925634d9.js"],"/systems/configure/[id]":[t,s,c,a,n,g,e,d,f,m,h,x,_,"static/chunks/pages/systems/configure/[id]-4a48b4f996a64957.js"],"/systems/configure/[id]/test-datasets":[r,"static/chunks/pages/systems/configure/[id]/test-datasets-a274e2191b87e315.js"],"/taxonomy":["static/chunks/678d4732-50255cc09048e643.js",t,s,c,o,"static/chunks/6148-59a59d5c5925344f.js",e,"static/css/34a7eb08b86ddb57.css","static/chunks/pages/taxonomy-ca625b1296a029f0.js"],"/user-management":[I,"static/chunks/pages/user-management-5e2d0acf575252ca.js"],"/user-management/new":[I,R,"static/chunks/pages/user-management/new-de8cb3739ab99c09.js"],"/user-management/profile/[id]":[I,R,"static/chunks/pages/user-management/profile/[id]-7a3180b235eb8846.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/[monitorId]","/data-discovery/action-center/[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]","/messaging","/messaging/add-template","/messaging/[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/messaging","/privacy-requests/configure/storage","/privacy-requests/[id]","/properties","/properties/add-property","/properties/[id]","/reporting/datamap","/settings/about","/settings/about/alpha","/settings/consent","/settings/consent/[configuration_id]/[purpose_id]","/settings/custom-fields","/settings/domain-records","/settings/domains","/settings/email-templates","/settings/locations","/settings/organization","/settings/regulations","/systems","/systems/configure/[id]","/systems/configure/[id]/test-datasets","/taxonomy","/user-management","/user-management/new","/user-management/profile/[id]"]}}("static/chunks/431-86ad2beeb93c95c9.js","static/chunks/768-034e121688a3bbdd.js","static/chunks/8765-f622a35b40a7ec63.js","static/chunks/9278-08cc704317fe535e.js","static/chunks/5163-e682273cd76a7d07.js","static/chunks/699-8ca44b0de9fa20f0.js","static/css/d2d4e9a6923e6730.css","static/chunks/401-8bc2c6c84172c096.js","static/chunks/3662-f6a1ddca5ee42076.js","static/chunks/6527-0eed08abe252a918.js","static/chunks/1099-b973dfdfc5c3de90.js","static/chunks/8002-cfdc6574bd841892.js","static/chunks/5277-e8a036319456127f.js","static/chunks/9951-6ee5c0a23951a07f.js","static/chunks/4808-a654c7f7a1ca62c8.js","static/chunks/3923-c6cdc2e5278ae9a7.js","static/chunks/6419-d0c00d661b01f8fa.js","static/chunks/6084-55cc66e7c94f0686.js","static/chunks/4844-cd7e1d0c7bb94094.js","static/chunks/3620-ebd89f91b82661e8.js","static/css/10994e916bc9a00a.css","static/chunks/5487-37c78c4799ba5223.js","static/chunks/7476-2fc286c2a9125eb8.js","static/css/972dc7eef106ee7c.css","static/chunks/4786-aaef673b30c19e2e.js","static/css/304c6f148886a8d4.css","static/chunks/796-2de6dac5f311d54a.js","static/chunks/6853-313ce974d33432fb.js","static/chunks/1817-74692de5d760a664.js","static/chunks/6954-021bd06d0ab59c3c.js","static/chunks/79-d2ace89108ead8ae.js","static/chunks/3872-660aba76572c811b.js","static/chunks/3855-4174a4d4c205d6e8.js","static/chunks/3847-2759bf1f47a1d29e.js","static/chunks/1345-b60d1f3442379c73.js","static/chunks/9046-c44e41da49338c6c.js","static/chunks/5258-bc4a25d43e4aa07d.js","static/chunks/549-2213dc1c34143cda.js","static/chunks/1467-8808ec8836e033f9.js","static/chunks/4608-4d31340b0d0157c1.js","static/chunks/9187-7438242f0d380bb0.js","static/chunks/1316-2606e19807c08aa5.js","static/chunks/3729-ccf90cdaae158f39.js","static/chunks/7630-b9a41262a69edf5e.js","static/chunks/2921-2d9261e8e2e127c0.js","static/chunks/787-8df7118742e84908.js","static/chunks/9826-d9addbd5ac990fa4.js","static/chunks/4121-9a4ebceff9accb7f.js"),self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1099],{56632:function(e,t,n){var a=n(89278),i=n(80068),o=n(50098);e.exports=function(e){return function(t,n,r){var s=Object(t);if(!i(t)){var l=a(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 a=n(56632)(n(66259));e.exports=a},66259:function(e,t,n){var a=n(95372),i=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)),a(e,i(t,3),l)}},94919:function(e,t,n){var a=n(91936),i=1/0;e.exports=function(e){return e?(e=a(e))===i||e===-i?(e<0?-1:1)*17976931348623157e292:e==e?e:0:0===e?e:0}},47991:function(e,t,n){var a=n(94919);e.exports=function(e){var t=a(e),n=t%1;return t==t?n?t-n:t:0}},12627:function(e,t,n){"use strict";var a=n(24246),i=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,a.jsx)(i.l,{options:c,...r})}},79283:function(e,t,n){"use strict";n.d(t,{l:function(){return l}});var a=n(24246),i=n(96306),o=n(72707),r=n.n(o);let s=e=>{let{data:{formattedTitle:t,description:n,name:o,primaryName:r}}=e;return(0,a.jsxs)(i.jqI,{gap:12,title:"".concat(t," - ").concat(n),children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:r||o}),r&&": ".concat(o)]}),(0,a.jsx)("em",{children:n})]})},l=e=>{let{options:t,...n}=e,o=null==t?void 0:t.map(e=>({...e,className:r().option,formattedTitle:[e.primaryName,e.name].filter(e=>e).join(": ")}));return(0,a.jsx)(i.WPr,{options:o,filterOption:(e,t)=>(null==t?void 0:t.formattedTitle.toLowerCase().includes(e.toLowerCase()))||(null==t?void 0:t.value.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 a=n(24246),i=n(64925),o=n.n(i),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)(),a=(0,s.C)(d.qb),{isLoading:i}=(0,l.te)();return{dataUses:t,dataSubjects:(0,s.C)(l.ZL),dataCategories:a,isLoading:e||n||i}};t.Z=()=>{let{dataUses:e,dataCategories:t,dataSubjects:n,isLoading:i}=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,a=t(e);if(!a)return{};let i=t(s(e,n)),o=!!a.parent_key;return{name:a.name||void 0,primaryName:o&&(null==i?void 0:i.name)!==a.name&&(null==i?void 0:i.name)||void 0}},c=function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,{name:i,primaryName:o}=l(e,t,n);return i?o?(0,a.jsxs)(r.Fragment,{children:[(0,a.jsxs)("strong",{children:[o,":"]})," ",i]},e):(0,a.jsx)("strong",{children:i},e):e},d=t=>o()(e,{fides_key:t}),f=e=>o()(t,{fides_key:e}),g=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:g,getDataSubjectDisplayName:e=>{let t=g(e);return t?t.name:e},getPrimaryKey:s,isLoading:i}}},61099:function(e,t,n){"use strict";var a=n(24246),i=n(96306),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,g]=(0,o.useState)(!1),{getDataCategoryDisplayName:v}=(0,s.Z)(),[p]=(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=>{p({staged_resource_urn:u.urn,monitor_config_id:u.monitor_config_id,user_assigned_data_categories:[...x,e]})},y=e=>{var t;p({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,a.jsxs)(l.Z,{"data-testid":"edit-category-cell",children:[h&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(i.j8w,{"data-testid":"no-classifications",color:"white",children:"None"}),!_&&(0,a.jsx)(i.j8w,{onClick:()=>g(!0),addable:!0,"data-testid":"taxonomy-add-btn","aria-label":"Add category"})]}),b&&(0,a.jsxs)(a.Fragment,{children:[x.map(e=>(0,a.jsx)(i.j8w,{"data-testid":"user-classification-".concat(e),color:"white",closable:!0,onClose:()=>y(e),closeButtonLabel:"Remove category",children:v(e)},e)),(0,a.jsx)(i.j8w,{onClick:()=>g(!0),addable:!0,"data-testid":"taxonomy-add-btn","aria-label":"Add category"})]}),w&&(0,a.jsxs)(i.j8w,{onClick:()=>g(!0),color:"white","data-testid":"classification-".concat(m),hasSparkle:!0,children:[v(m),(0,a.jsx)(i.PJP.I8b,{size:10})]}),f&&(0,a.jsx)(i.xuv,{className:"select-wrapper",position:"absolute",zIndex:10,top:"0",left:"0",width:"100%",height:"max",bgColor:"#fff",children:(0,a.jsx)(r.Z,{selectedTaxonomies:x,onChange:e=>{g(!1),j(e)},onBlur:()=>g(!1),open:!0})})]})}},26183:function(e,t,n){"use strict";var a=n(24246);n(27378),t.Z=e=>{let{children:t,className:n,...i}=e;return(0,a.jsx)("div",{className:"relative flex w-full flex-wrap items-center gap-2 overflow-x-auto py-2 ".concat(n||""),...i,children:t})}},72707:function(e){e.exports={option:"TaxonomySelect_option__vY6v2"}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1345],{11611:function(e){e.exports=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}},55193:function(e,t,i){var a=i(99736),r=i(92360);e.exports=function(e){return"symbol"==typeof e||r(e)&&"[object Symbol]"==a(e)}},14908:function(e,t,i){"use strict";var a=i(86677),r=i(27378);let s=e=>e.startsWith("#")?e.slice(1):e;t.Z=e=>{let{tabKeys:t,initialTab:i}=e,l=(0,a.useRouter)(),o=l.asPath.split("#")[1]||t[0],[n,c]=(0,r.useState)(o);return(0,r.useEffect)(()=>{i&&t.includes(i)&&c(i)},[i,t,l.isReady]),{activeTab:n,onTabChange:(0,r.useCallback)(async e=>{if(!t.includes(e)){await l.replace({pathname:l.pathname,query:l.query,hash:void 0}),c(t[0]);return}l.isReady&&(await l.replace({pathname:l.pathname,query:l.query,hash:s(e)},void 0,{shallow:!0}),c(e))},[l,t])}}},69828:function(e,t,i){"use strict";i.d(t,{Y:function(){return l}});var a=i(24246),r=i(96306),s=i(70788);let l=[(0,a.jsx)(r.PJP.S9g,{},"layers"),(0,a.jsx)(r.PJP.ehp,{},"dataset"),(0,a.jsx)(r.PJP.iA_,{},"table"),(0,a.jsx)(r.PJP.$4y,{style:{transform:"rotate(-90deg)"}},"field")];t.Z=e=>{let{resourceUrn:t,parentLink:i,onPathClick:r=()=>{}}=e,o=[];if(t||o.push({title:"All activity"}),t){o.push({title:"All activity",href:i});let e=t.split(".");e.forEach((t,i)=>{0!==i&&o.push({title:t,icon:l[i-1],onClick:t=>{t.preventDefault(),r(e.slice(0,i+1).join("."))}})})}return(0,a.jsx)(s.m,{"data-testid":"results-breadcrumb",items:o})}},1039:function(e,t,i){"use strict";i.d(t,{Z:function(){return I}});var a,r,s=i(24246),l=i(59003),o=i(92222),n=i(96306),c=i(27378),d=i(47935),u=i(70675),h=i(72625),m=i(54409),g=i(79947),x=i(87667),j=i(50169),v=i(28278),L=i(54682),p=i(74241),f=e=>{let{resourceType:t,changeTypeOverride:i}=e,a=(0,o.Cl)(),r=[];return t?t===L.D$.SCHEMA?{columns:[a.accessor(e=>e.name,{id:"name",cell:e=>(0,s.jsx)(x.Z,{changeTypeOverride:i,result:e.row.original}),header:e=>(0,s.jsx)(d.Rr,{value:"Name",...e}),size:300}),a.accessor(e=>e.urn,{id:"project",cell:e=>(0,s.jsx)(d.G3,{value:(0,p.Z)(e.getValue())}),header:e=>(0,s.jsx)(d.Rr,{value:"Project",...e})}),a.display({id:"status",cell:e=>(0,s.jsx)(j.Z,{changeTypeOverride:i,result:e.row.original}),header:e=>(0,s.jsx)(d.Rr,{value:"Status",...e})}),a.accessor(e=>e.system,{id:"system",cell:e=>(0,s.jsx)(d.G3,{value:e.getValue()}),header:e=>(0,s.jsx)(d.Rr,{value:"System",...e})}),a.accessor(e=>e.monitor_config_id,{id:"monitor",cell:e=>(0,s.jsx)(d.G3,{value:e.getValue()}),header:e=>(0,s.jsx)(d.Rr,{value:"Detected by",...e})}),a.accessor(e=>e.updated_at,{id:"time",cell:e=>(0,s.jsx)(h.Cy,{time:e.getValue()}),header:e=>(0,s.jsx)(d.Rr,{value:"When",...e})}),a.display({id:"actions",cell:e=>(0,s.jsx)(m.Z,{ignoreChildActions:i===v.E.MONITORED||i===v.E.MUTED,resource:e.row.original}),header:"Actions",size:200,meta:{disableRowClick:!0}})]}:t===L.D$.TABLE?{columns:[a.accessor(e=>e.name,{id:"name",cell:e=>(0,s.jsx)(x.Z,{changeTypeOverride:i,result:e.row.original}),header:e=>(0,s.jsx)(d.Rr,{value:"Table name",...e}),size:300}),a.accessor(e=>e.description,{id:"description",cell:e=>(0,s.jsx)(d.G3,{value:e.getValue(),cellProps:e}),header:e=>(0,s.jsx)(d.Rr,{value:"Description",...e}),meta:{showHeaderMenu:!0}}),a.display({id:"status",cell:e=>(0,s.jsx)(j.Z,{changeTypeOverride:i,result:e.row.original}),header:e=>(0,s.jsx)(d.Rr,{value:"Status",...e})}),a.accessor(e=>e.monitor_config_id,{id:"monitor",cell:e=>(0,s.jsx)(d.G3,{value:e.getValue()}),header:e=>(0,s.jsx)(d.Rr,{value:"Detected by",...e})}),a.accessor(e=>e.updated_at,{id:"time",cell:e=>(0,s.jsx)(h.Cy,{time:e.getValue()}),header:e=>(0,s.jsx)(d.Rr,{value:"When",...e})}),a.display({id:"actions",cell:e=>(0,s.jsx)(m.Z,{resource:e.row.original}),header:"Actions",size:200,meta:{disableRowClick:!0}})]}:t===L.D$.FIELD?{columns:[a.accessor(e=>e.name,{id:"name",cell:e=>(0,s.jsx)(x.Z,{changeTypeOverride:i,result:e.row.original}),header:e=>(0,s.jsx)(d.Rr,{value:"Field name",...e}),size:300}),a.accessor(e=>e.source_data_type,{id:"data-type",cell:e=>(0,s.jsx)(g.Z,{type:e.getValue()}),header:e=>(0,s.jsx)(d.Rr,{value:"Data type",...e})}),a.accessor(e=>e.description,{id:"description",cell:e=>(0,s.jsx)(d.G3,{value:e.getValue(),cellProps:e}),header:e=>(0,s.jsx)(d.Rr,{value:"Description",...e}),meta:{showHeaderMenu:!0}}),a.display({id:"status",cell:e=>(0,s.jsx)(j.Z,{changeTypeOverride:i,result:e.row.original}),header:e=>(0,s.jsx)(d.Rr,{value:"Status",...e})}),a.accessor(e=>e.monitor_config_id,{id:"monitor",cell:e=>(0,s.jsx)(d.G3,{value:e.getValue()}),header:e=>(0,s.jsx)(d.Rr,{value:"Detected by",...e})}),a.accessor(e=>e.updated_at,{id:"time",cell:e=>(0,s.jsx)(h.Cy,{time:e.getValue()}),header:e=>(0,s.jsx)(d.Rr,{value:"When",...e})}),a.display({id:"actions",cell:e=>(0,s.jsx)(m.Z,{resource:e.row.original}),header:"Actions",size:200,meta:{disableRowClick:!0}})]}:t===L.D$.ENDPOINT?{columns:[a.accessor(e=>e.name,{id:"name",cell:e=>(0,s.jsx)(x.Z,{changeTypeOverride:i,result:e.row.original}),header:e=>(0,s.jsx)(d.Rr,{value:"Object",...e}),size:300}),a.accessor(e=>e.description,{id:"description",cell:e=>(0,s.jsx)(d.G3,{value:e.getValue(),cellProps:e}),header:e=>(0,s.jsx)(d.Rr,{value:"Description",...e}),meta:{showHeaderMenu:!0}}),a.display({id:"status",cell:e=>(0,s.jsx)(j.Z,{changeTypeOverride:i,result:e.row.original}),header:e=>(0,s.jsx)(d.Rr,{value:"Status",...e})}),a.accessor(e=>e.monitor_config_id,{id:"monitor",cell:e=>(0,s.jsx)(d.G3,{value:e.getValue()}),header:e=>(0,s.jsx)(d.Rr,{value:"Detected by",...e})}),a.accessor(e=>e.updated_at,{id:"time",cell:e=>(0,s.jsx)(h.Cy,{time:e.getValue()}),header:e=>(0,s.jsx)(d.Rr,{value:"When",...e})}),a.display({id:"actions",cell:e=>(0,s.jsx)(m.Z,{resource:e.row.original}),header:"Actions",size:200,meta:{disableRowClick:!0}})]}:{columns:r}:{columns:r}},y=i(14908);(a=r||(r={})).ACTION_REQUIRED="action-required",a.MONITORED="monitored",a.UNMONITORED="unmonitored";let D={"action-required":{label:"Action Required",key:"action-required",filters:[L.LL.ADDITION,L.LL.REMOVAL],childFilters:[L.LL.ADDITION,L.LL.REMOVAL]},monitored:{label:"Monitored",key:"monitored",filters:[L.LL.MONITORED],childFilters:[],changeTypeOverride:v.E.MONITORED},unmonitored:{label:"Unmonitored",key:"unmonitored",filters:[L.LL.MUTED],childFilters:[],changeTypeOverride:v.E.MUTED}};var R=()=>{var e,t,i;let{activeTab:a,onTabChange:s}=(0,y.Z)({tabKeys:Object.values(r)});return{filterTabs:Object.values(D),activeTabKey:a,onTabChange:s,activeDiffFilters:null===(e=D[a])||void 0===e?void 0:e.filters,activeChildDiffFilters:null===(t=D[a])||void 0===t?void 0:t.childFilters,activeChangeTypeOverride:null===(i=D[a])||void 0===i?void 0:i.changeTypeOverride}},b=i(47182),_=i(38347),T=i(7940),w=i(80285),C=i(36168),O=i(30952);let H={items:[],total:0,page:1,size:50,pages:1},M=()=>(0,s.jsx)(n.gCW,{mt:6,p:10,spacing:4,borderRadius:"base",maxW:"70%","data-testid":"empty-state",alignSelf:"center",margin:"auto",children:(0,s.jsxs)(n.gCW,{children:[(0,s.jsx)(n.xvT,{fontSize:"md",fontWeight:"600",children:"No activity found"}),(0,s.jsx)(n.xvT,{fontSize:"sm",children:"You're up to date!"})]})});var I=e=>{let{resourceUrn:t}=e,[i,a]=(0,c.useState)(""),{filterTabs:r,activeTabKey:h,onTabChange:m,activeDiffFilters:g,activeChildDiffFilters:x,activeChangeTypeOverride:j}=R(),{PAGE_SIZES:v,pageSize:p,setPageSize:y,onPreviousPageClick:D,isPreviousPageDisabled:I,onNextPageClick:E,isNextPageDisabled:Z,startRange:k,endRange:A,pageIndex:N,setTotalPages:P,resetPageIndexToDefault:V}=(0,d.oi)();(0,c.useEffect)(()=>{V()},[t,i,V,g,x]);let{isFetching:S,isLoading:F,data:z}=(0,u.z8)({staged_resource_urn:t,page:N,size:p,child_diff_status:x,diff_status:g,search:i}),U=(0,T.G)(null==z?void 0:z.items[0]),{columns:$}=f({resourceType:U,changeTypeOverride:j}),{items:G,total:q,pages:W}=(0,c.useMemo)(()=>null!=z?z:H,[z]);(0,c.useEffect)(()=>{P(W)},[W,P]);let B=(0,c.useMemo)(()=>$,[$]),{navigateToDetectionResults:J}=(0,b.Z)(),K=(0,l.b7)({getCoreRowModel:(0,o.sC)(),getGroupedRowModel:(0,o.qe)(),getExpandedRowModel:(0,o.rV)(),getRowId:w.Z,columns:B,manualPagination:!0,data:G,columnResizeMode:"onChange"});return F?(0,s.jsx)(d.I4,{rowHeight:36,numRows:36}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.A5g,{items:r.map(e=>({key:e.key,label:e.label})),activeKey:h,onChange:e=>m(e)}),(0,s.jsx)(d.Q$,{children:(0,s.jsx)(n.kCb,{direction:"row",alignItems:"center",justifyContent:"space-between",width:"full",children:(0,s.jsxs)(n.kCb,{gap:6,align:"center",children:[(0,s.jsx)(n.xuv,{flexShrink:0,children:(0,s.jsx)(O.f,{value:i,onChange:a})}),(0,s.jsx)(_.a,{})]})})}),(0,s.jsx)(d.ZK,{tableInstance:K,onRowClick:e=>J({resourceUrn:e.urn,filterTab:h}),getRowIsClickable:e=>U!==L.D$.FIELD||(0,C.Z)(e),emptyTableNotice:(0,s.jsx)(M,{})}),(0,s.jsx)(d.s8,{totalRows:q||0,pageSizes:v,setPageSize:y,onPreviousPageClick:D,isPreviousPageDisabled:I||S,onNextPageClick:E,isNextPageDisabled:Z||S,startRange:k,endRange:A})]})}},54409:function(e,t,i){"use strict";i.d(t,{Z:function(){return g}});var a=i(24246),r=i(96306),s=i(812),l=i(75573),o=i(54682),n=i(31883);let c=(0,r.IUT)({displayName:"MonitorOffIcon",viewBox:"0 0 12 12",path:(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M5.47125 1H5.85H6.15H6.51188L6.58875 1.36914L7.52062 5.83268L6.42408 4.98635L6.03375 3.11719L5.8038 4.50761L4.99323 3.882L5.40562 1.38867L5.47125 1ZM4.80795 5.0022L4.67675 5.79545L5.48735 6.42109L5.61854 5.62783L4.80795 5.0022ZM6.73856 6.49227L6.96125 7.55866L8.42407 8.6877L8.69498 8.00228L7.94864 7.42624L7.88625 7.58398L7.83501 7.33853L6.73856 6.49227ZM8.33138 6.45844L9.07755 7.03434L9.30188 6.4668H11.55H12V5.5293H11.55H9H8.69812L8.58375 5.82031L8.33138 6.45844ZM7.27551 9.06443L7.35399 9.125H7.28813L7.27551 9.06443ZM4.49147 6.91566L5.30209 7.54131L4.79437 10.6113L4.72875 11H4.35H4.05H3.69563L3.61313 10.6406L2.64563 6.46875H0.45H0V5.53125H0.45H2.69777L3.49646 6.1477L4.15125 8.97266L4.49147 6.91566Z",fill:"currentColor"}),(0,a.jsx)("g",{clipPath:"url(#clip0_341_3102)",children:(0,a.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M10.6755 10.4168L0.164222 2.304L0.775218 1.51237L11.2865 9.62517L10.6755 10.4168Z",fill:"currentColor"})}),(0,a.jsx)("defs",{children:(0,a.jsx)("clipPath",{id:"clip0_341_3102",children:(0,a.jsx)("rect",{width:"11.5",height:"9",fill:"white",transform:"translate(0 1.5)"})})})]})}),d=(0,r.IUT)({displayName:"MonitorOnIcon",viewBox:"0 0 12 10",path:(0,a.jsx)("path",{d:"M5.47125 0H5.85H6.15H6.51188L6.58875 0.369141L7.88625 6.58398L8.58375 4.82031L8.69812 4.5293H9H11.55H12V5.4668H11.55H9.30188L8.36625 7.83398L8.25188 8.125H7.95H7.65H7.28813L7.21125 7.75586L6.03375 2.11719L4.79437 9.61133L4.72875 10H4.35H4.05H3.69563L3.61313 9.64062L2.64563 5.46875H0.45H0V4.53125H0.45H3H3.35438L3.43688 4.89062L4.15125 7.97266L5.40562 0.388672L5.47125 0Z",fill:"currentColor"})});var u=i(79494),h=i(70675),m=i(7940),g=e=>{let{resource:t,ignoreChildActions:i=!1}=e,g=(0,m.G)(t),[x,{isLoading:j}]=(0,h.v8)(),[v,{isLoading:L}]=(0,h.vi)(),[p,{isLoading:f}]=(0,h.Tl)(),{successAlert:y,errorAlert:D}=(0,l.VY)(),R=async()=>{let e=await x({staged_resource_urn:t.urn,monitor_config_id:t.monitor_config_id});(0,n.D4)(e)?D((0,s.e$)(e.error,"Failed to confirm resource")):y("Data discovery has started. The results may take some time to appear in the “Data discovery“ tab.","".concat(t.name||"The resource"," is now being monitored."))},b=async()=>{let e=await p({staged_resource_urn:t.urn});(0,n.D4)(e)?D((0,s.e$)(e.error),"Failed to un-mute resource"):y("".concat(t.name||"The resource"," has been un-muted and is now being monitored."))},_=async()=>{let e=await x({staged_resource_urn:t.urn,monitor_config_id:t.monitor_config_id,unmute_children:!0,classify_monitored_resources:!0});(0,n.D4)(e)?D((0,s.e$)(e.error),"Failed to un-mute resource"):y("Data discovery has started. The results may take some time to appear in the “Data discovery“ tab.","".concat(t.name||"The resource"," is now being monitored."))},T=async()=>{let e=await v({staged_resource_urn:t.urn});(0,n.D4)(e)?D((0,s.e$)(e.error),"Failed to mute resource"):y("Ignored data will not be monitored for changes or added to Fides datasets.","".concat(t.name||"Resource"," ignored"))},w=j||L||f,{diff_status:C,child_diff_statuses:O}=t,H=g===o.D$.SCHEMA,M=g===o.D$.FIELD,I=O&&(O[o.LL.CLASSIFICATION_ADDITION]||O[o.LL.CLASSIFICATION_UPDATE]),E=H&&void 0===C||!M&&C===o.LL.ADDITION||I,Z=C!==o.LL.MUTED,k=C===o.LL.MUTED&&!M,A=C===o.LL.MUTED&&M,N=O&&(O[o.LL.ADDITION]||O[o.LL.REMOVAL]),P=C===o.LL.MONITORED&&!i&&N&&!I;return(0,a.jsxs)(r.Ugi,{children:[(E||P)&&(0,a.jsx)(u.Z,{title:"Monitor",icon:(0,a.jsx)(d,{}),onClick:R,disabled:w,loading:j}),A&&(0,a.jsx)(u.Z,{title:"Un-Mute",icon:(0,a.jsx)(d,{}),onClick:b,disabled:w,loading:j}),k&&(0,a.jsx)(u.Z,{title:"Monitor",icon:(0,a.jsx)(d,{}),onClick:_,disabled:w,loading:j}),Z&&(0,a.jsx)(u.Z,{title:"Ignore",icon:(0,a.jsx)(c,{}),onClick:T,disabled:w,loading:L})]})}},79947:function(e,t,i){"use strict";var a=i(24246),r=i(96306);t.Z=e=>{let{type:t}=e;return(0,a.jsx)(r.kCb,{align:"center",h:"full",children:!!t&&(0,a.jsx)(r.j8w,{children:t})})}},31883:function(e,t,i){"use strict";i.d(t,{Bw:function(){return a.Bw},D4:function(){return a.D4}});var a=i(19043)}}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1817],{11817:function(e,t,n){"use strict";n.d(t,{Z:function(){return B}});var i=n(24246),o=n(27824),r=n(34090),a=n(86677),s=n(27378),l=n(55484),c=n(16134),d=n(812);let u=(0,o.IUT)({displayName:"DesktopIcon",viewBox:"0 0 24 24",path:(0,i.jsx)("path",{fill:"currentColor",d:"M20.5556 4.05556H3.44444C3.10833 4.05556 2.83333 4.33056 2.83333 4.66667V12H21.1667V4.66667C21.1667 4.33056 20.8917 4.05556 20.5556 4.05556ZM23 12V13.8333V15.6667C23 17.0149 21.9038 18.1111 20.5556 18.1111H14.9142L15.2198 19.9445H17.1944C17.7024 19.9445 18.1111 20.3531 18.1111 20.8611C18.1111 21.3691 17.7024 21.7778 17.1944 21.7778H14.4444H9.55556H6.80556C6.29757 21.7778 5.88889 21.3691 5.88889 20.8611C5.88889 20.3531 6.29757 19.9445 6.80556 19.9445H8.78021L9.08576 18.1111H3.44444C2.09618 18.1111 1 17.0149 1 15.6667V13.8333V12V4.66667C1 3.31841 2.09618 2.22223 3.44444 2.22223H20.5556C21.9038 2.22223 23 3.31841 23 4.66667V12ZM2.83333 13.8333V15.6667C2.83333 16.0028 3.10833 16.2778 3.44444 16.2778H10.1476C10.159 16.2778 10.1705 16.2778 10.1781 16.2778H13.8142C13.8257 16.2778 13.8372 16.2778 13.8448 16.2778H20.5556C20.8917 16.2778 21.1667 16.0028 21.1667 15.6667V13.8333H2.83333ZM10.6365 19.9445H13.3597L13.0542 18.1111H10.942L10.6365 19.9445Z"})}),p=(0,o.IUT)({displayName:"MobileIcon",viewBox:"0 0 24 24",path:(0,i.jsx)("path",{fill:"currentColor",d:"M6.5 20.25C6.5 20.6281 6.80938 20.9375 7.1875 20.9375H16.8125C17.1906 20.9375 17.5 20.6281 17.5 20.25V16.8125H6.5V20.25ZM6.5 14.75H17.5V3.75C17.5 3.37188 17.1906 3.0625 16.8125 3.0625H7.1875C6.80938 3.0625 6.5 3.37188 6.5 3.75V14.75ZM4.4375 3.75C4.4375 2.2332 5.6707 1 7.1875 1H16.8125C18.3293 1 19.5625 2.2332 19.5625 3.75V20.25C19.5625 21.7668 18.3293 23 16.8125 23H7.1875C5.6707 23 4.4375 21.7668 4.4375 20.25V3.75ZM12 17.8438C12.2735 17.8438 12.5358 17.9524 12.7292 18.1458C12.9226 18.3392 13.0312 18.6015 13.0312 18.875C13.0312 19.1485 12.9226 19.4108 12.7292 19.6042C12.5358 19.7976 12.2735 19.9062 12 19.9062C11.7265 19.9062 11.4642 19.7976 11.2708 19.6042C11.0774 19.4108 10.9688 19.1485 10.9688 18.875C10.9688 18.6015 11.0774 18.3392 11.2708 18.1458C11.4642 17.9524 11.7265 17.8438 12 17.8438Z"})});var _=n(77830),v=n(46628),f=n(7426),m=n(60325);let h={language:{label:"Language",validation:l.Z_()},title:{label:"Title",validation:l.Z_()},description:{label:"Description",validation:l.Z_()},accept_button_label:{label:"Accept button label",validation:l.Z_()},reject_button_label:{label:"Reject button label",validation:l.Z_()},save_button_label:{label:"Save button label",validation:l.Z_()},acknowledge_button_label:{label:"Acknowledge button label",validation:l.Z_()},privacy_policy_url:{label:"Privacy policy URL",validation:l.Z_().url()},privacy_preferences_link_label:{label:"Privacy preferences link label",validation:l.Z_()},banner_title:{label:"Banner title",validation:l.Z_()},banner_description:{label:"Banner description",validation:l.Z_()},purpose_header:{label:"Purpose header",validation:l.Z_()},privacy_policy_link_label:{label:"Privacy policy link label",validation:l.Z_()},modal_link_label:{label:"Modal link label",validation:l.Z_()},is_default:{label:"Default language",validation:l.O7()}};var g=n(34334),y=n(13083),b=n.n(y),x=n(43218),S=n.n(x),w=n(52253),C=n(32885),j=n(54682);let R={language:j.eU.EN,accept_button_label:"Accept",acknowledge_button_label:"OK",banner_description:"",banner_title:"",purpose_header:"",description:"Description",privacy_policy_link_label:"",privacy_policy_url:"",modal_link_label:"",privacy_preferences_link_label:"Privacy preferences",reject_button_label:"Reject All",save_button_label:"Save",title:"Manage your consent preferences",is_default:!0},F=e=>({...R,...e.translations?e.translations[0]:{}}),A=(e,t)=>{var n,i,o,r;let a={options:{allowHTMLDescription:!0,base64Cookie:!1,debug:!1,fidesApiUrl:"http://localhost:8080/api/v1",fidesClearCookie:!0,fidesDisableSaveApi:!0,fidesDisableNoticesServedApi:!0,fidesJsBaseUrl:"",fidesLocale:null===(i=e.translations)||void 0===i?void 0:null===(n=i[0])||void 0===n?void 0:n.language,fidesString:null,geolocationApiUrl:"",isGeolocationEnabled:!1,isOverlayEnabled:!0,isPrefetchEnabled:!1,modalLinkId:null,overlayParentId:w.Vk,preventDismissal:null!==(r=e.dismissable)&&void 0!==r&&r,privacyCenterUrl:"http://localhost:3000",showFidesBrandLink:!0},experience:{available_locales:null===(o=e.translations)||void 0===o?void 0:o.map(e=>e.language),component:e.component,experience_config:{allow_language_selection:!0,auto_detect_language:!0,auto_subdomain_cookie_deletion:!0,component:e.component,disabled:!1,dismissable:e.dismissable,id:"pri_222",is_default:!0,language:"en",layer1_button_options:j.Of.OPT_IN_OPT_OUT,properties:[],regions:["us_ca"],show_layer1_notices:!1,translations:[F(e)]},id:"pri_111",privacy_notices:t,region:"us_ca"},geolocation:{country:"US",location:"US-CA",region:"CA"}};return e.component===j.re.TCF_OVERLAY&&(a.options.fidesTcfGdprApplies=!0,a.options.tcf_enabled=!0,a.geolocation={location:"eea",country:"eea"},a.experience.experience_config.regions=["eea"],a.experience={...a.experience,region:"eea",minimal_tcf:!0,gvl:{vendors:{}},tcf_purpose_names:["Store and/or access information on a device","Use limited data to select advertising","Create profiles for personalised advertising","Use profiles to select personalised advertising","Create profiles to personalise content","Use profiles to select personalised content","Measure advertising performance","Measure content performance","Understand audiences through statistics or combinations of data from different sources","Develop and improve services","Use limited data to select content"]},a.options.apiOptions={getPrivacyExperienceFn:async()=>a.experience}),a},k=e=>{let{language:t,is_default:n,...i}=R,o=Object.keys(i).map(t=>{let n=e[t];return{[t]:void 0!==n?n:R[t]}}).reduce((e,t)=>({...e,...t}),{});return{language:e.language,is_default:e.is_default,...o}},O=(e,t,n)=>e?e.map(e=>n.find(t=>(null==t?void 0:t.id)===e)).map(e=>t===j.re.TCF_OVERLAY&&void 0!==e?{...e,translations:[{language:"en",text:null==e?void 0:e.name}]}:e).filter(e=>void 0!==e):[];var T=n(74022),E=n(32222);let V=e=>{let{title:t,description:n}=e;return(0,i.jsx)(o.jqI,{className:"h-full items-center justify-center",children:(0,i.jsxs)(o.jqI,{className:"items-center gap-2 rounded-md p-6",style:{backgroundColor:T.Z.colors.white,boxShadow:T.Z.shadows.md,maxWidth:512},vertical:!0,"data-testid":"no-preview-notice",children:[(0,i.jsx)(o.xvT,{fontSize:"lg",fontWeight:"500",align:"center",children:t}),(0,i.jsx)(o.xvT,{color:"gray.500",align:"center",children:n})]})})};var z=e=>{var t,n;let{allPrivacyNotices:l,initialValues:c,translation:d,isMobilePreview:u}=e,p=(0,a.useRouter)().pathname.includes("/new"),{values:_}=(0,r.u6)(),[v,f]=(0,s.useState)([]),[m,h]=(0,s.useState)(!1),[g,y]=(0,s.useState)(),x=[j.re.BANNER_AND_MODAL,j.re.MODAL,j.re.TCF_OVERLAY].includes(_.component),{data:R}=(0,C.de)({pageIndex:1,pageSize:1}),F=(0,s.useMemo)(()=>(null==R?void 0:R.total)||0,[null==R?void 0:R.total]);(0,s.useEffect)(()=>{var e,t;return x&&m&&window.FidesPreview&&_.component&&((null===(e=_.privacy_notice_ids)||void 0===e?void 0:e.length)||_.component===j.re.TCF_OVERLAY)?_.component===j.re.TCF_OVERLAY?(window.FidesPreview("tcf"),y("tcf")):(window.FidesPreview("standard"),y("standard")):window.FidesPreview&&(null===(t=window.FidesPreview)||void 0===t||t.cleanup()),()=>{var e;y(void 0),null===(e=window.FidesPreview)||void 0===e||e.cleanup()}},[_.component,m,x,null===(t=_.privacy_notice_ids)||void 0===t?void 0:t.length,p]),(0,s.useEffect)(()=>{c&&_.component&&l&&(_.privacy_notice_ids?f(O(_.privacy_notice_ids,_.component,l)):f([]))},[_.privacy_notice_ids,l,_.component,c]);let T=(0,s.useMemo)(()=>_.component?A({...c,component:_.component},v):null,[c,v,_.component]);(0,s.useEffect)(()=>{var e,t,n,i;if(!x||!m||!window.FidesPreview||!window.Fides||!(null===(e=_.privacy_notice_ids)||void 0===e?void 0:e.length)&&_.component!==j.re.TCF_OVERLAY)return;_.component===j.re.MODAL&&(T.experience.experience_config.component=j.re.MODAL);let o=null===(t=_.translations)||void 0===t?void 0:t.find(e=>e.language===(null==d?void 0:d.language));(null===(n=_.translations)||void 0===n?void 0:n.length)&&(o?(T.experience.available_locales=[...T.experience.available_locales||[],o.language],T.experience.experience_config.translations[0]=k(o),T.options.fidesLocale=o.language):_.translations&&(T.experience.experience_config.translations[0]=k(_.translations[0]),T.options.fidesLocale=_.translations[0].language)),T.experience.experience_config.show_layer1_notices=!!(null===(i=_.privacy_notice_ids)||void 0===i?void 0:i.length)&&!!_.show_layer1_notices,T.experience.experience_config.layer1_button_options=(_.component===j.re.BANNER_AND_MODAL||_.component===j.re.TCF_OVERLAY)&&_.layer1_button_options?_.layer1_button_options:j.Of.OPT_IN_OPT_OUT,T.options.preventDismissal=!_.dismissable,T.experience.vendor_count=F,T.experience.experience_config.component=_.component,window.Fides.init(T)},[d,T,l,x,F,m,g,_.privacy_notice_ids,_.component,_.translations,_.show_layer1_notices,_.layer1_button_options,_.dismissable,c,v]);let z=document.getElementById("fides-modal");return(z&&z.removeAttribute("tabindex"),_.component)?x?(null===(n=_.privacy_notice_ids)||void 0===n?void 0:n.length)||_.component===j.re.TCF_OVERLAY?(0,i.jsxs)(o.jqI,{className:"size-full items-center justify-center overflow-scroll",children:[(0,i.jsx)(b(),{id:"4b2ec2183c5a567e",dynamic:[w.Vk,_.component!==j.re.TCF_OVERLAY?"padding-bottom: 45px;":""],children:"div#fides-overlay{z-index:5000!important}div#".concat(w.Vk,"{width:100%;padding-top:45px;").concat(_.component!==j.re.TCF_OVERLAY?"padding-bottom: 45px;":""," margin: auto;pointer-events:none}div#fides-banner-container{position:static!important;-webkit-transform:none!important;-moz-transform:none!important;-ms-transform:none!important;-o-transform:none!important;transform:none!important;-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;transition:none!important}div#fides-banner-container.fides-banner-hidden{display:none}.fides-modal-container{background-color:unset!important;position:static!important;display:none!important}.fides-modal-overlay{background-color:inherit!important;position:static!important;display:none!important}div.fides-modal-content{position:relative!important;-webkit-transform:none!important;-moz-transform:none!important;-ms-transform:none!important;-o-transform:none!important;transform:none!important;left:initial!important;top:initial!important}div.fides-modal-footer{width:unset}")}),x?(0,i.jsx)("style",{children:"div#fides-modal {\n display: flex !important;\n justify-content: center;\n background-color: unset;\n ".concat(_.component===j.re.BANNER_AND_MODAL||_.component===j.re.TCF_OVERLAY?"padding-bottom: 3rem;":"","\n }")}):null,u?(0,i.jsx)("style",{children:"\n div#fides-overlay-wrapper {\n max-width: 400px;\n margin: auto;\n }\n div.fides-modal-button-group {\n flex-direction: column !important;\n }\n div#fides-banner {\n padding: 24px;\n width: 100%;\n }\n\n div#fides-banner-description {\n margin-bottom: 0px;\n }\n\n div#fides-banner-inner div#fides-button-group {\n flex-direction: column;\n align-items: flex-start;\n gap: 12px;\n padding-top: 24px;\n }\n\n .fides-banner-button-group {\n flex-direction: column;\n width: 100%;\n }\n\n button.fides-banner-button {\n margin: 0px;\n width: 100%;\n }\n\n div#fides-banner-inner-container {\n display: flex;\n flex-direction: column;\n max-height: 50vh;\n overflow-y: auto;\n scrollbar-gutter: stable;\n }\n\n div#fides-privacy-policy-link {\n order: 1;\n width: 100%;\n }\n .fides-modal-footer {\n max-width: 100%;\n }\n .fides-banner-secondary-actions {\n flex-direction: column-reverse;\n gap: 12px;\n }\n "}):(0,i.jsx)("style",{children:"\n div#fides-banner {\n width: 60%;\n }\n @media (min-width: 768px) {\n div#fides-banner {\n width: 100%;\n }\n }\n @media (min-width: 1155px) {\n div#fides-banner {\n width: 90%;\n }\n }\n @media (min-width: 1440px) {\n div#fides-banner {\n width: 60%;\n }\n }\n "}),(0,i.jsx)(S(),{id:"fides-js-script",src:"/lib/fides-preview.js",onReady:()=>{h(!0)}}),(0,i.jsx)("div",{id:w.Vk,"data-a11y-dialog-ignore-focus-trap":"",inert:"",className:b().dynamic([["4b2ec2183c5a567e",[w.Vk,_.component!==j.re.TCF_OVERLAY?"padding-bottom: 45px;":""]]])},_.component)]}):(0,i.jsx)(V,{title:"No privacy notices added",description:'To view a preview of this experience, add a privacy notice under "Privacy Notices" to the left.'}):(0,i.jsx)(V,{title:"".concat(E.J.get(_.component)," preview not available"),description:"There is no preview available for ".concat(E.J.get(_.component),". You can edit the available settings\n and languages to the left.")}):(0,i.jsx)(V,{title:"No privacy experience type selected",description:"Please select a privacy experience type to preview."})},N=n(94315),L=n(5331),P=n(16277),Z=n(71922),I=n(31883);let M=e=>{let t=(0,m.y3)(e),n={};return Object.entries(t).forEach(e=>{let[t,i]=e;if(i.included){let e=h[t];n[t]=i.required?e.validation.required().label(e.label):e.validation.nullable().label(e.label)}}),l.Ry().shape(n)},D=e=>{let{componentType:t}=e;return M(t)},H=l.Ry().shape({name:l.Z_().required().label("Experience name"),component:l.Z_().required().label("Experience type"),translations:l.IX().when("component",(e,t)=>{let[n]=e;return t.of(D({componentType:n}))})});var B=e=>{var t;let{passedInExperience:n,passedInTranslations:l}=e,[h]=(0,N.mJ)(),[y]=(0,N.$d)(),b=(0,o.pmc)(),[x,S]=(0,s.useState)(!1),w=(0,a.useRouter)(),{data:C}=(0,f.tB)({api_set:!1}),j=null==C?void 0:null===(t=C.plus_consent_settings)||void 0===t?void 0:t.enable_translations,R=(0,c.C)(g.Zp),F=(0,c.C)(g.G1);(0,g.Ah)({page:R,size:F});let A=(0,c.C)(g.fJ),k=(0,c.C)(Z.sX),O=n?{...m.DD,...(0,m.Uv)(n)}:m.DD,T=async e=>{var t,i;let o;e.privacy_notice_ids=null===(t=e.privacy_notice_ids)||void 0===t?void 0:t.filter(e=>"tcf_purposes_placeholder"!==e),O.tcf_configuration_id&&!e.tcf_configuration_id&&(e.tcf_configuration_id=null);let r={...e,disabled:null===(i=null==n?void 0:n.disabled)||void 0===i||i,allow_language_selection:e.translations&&e.translations.length>1};if(n){let{component:e,...t}=r;o=await y({...t,id:n.id})}else o=await h(r);(0,I.D4)(o)?b((0,v.Vo)((0,d.e$)(o.error))):(b((0,v.t5)("Privacy experience successfully ".concat(n?"updated":"created"))),w.push(_.w0))},[E,V]=(0,s.useState)(void 0),[M,D]=(0,s.useState)(!1);return(0,i.jsx)(r.J9,{initialValues:O,enableReinitialize:!0,onSubmit:T,validationSchema:H,children:(0,i.jsx)(r.l0,{style:{height:"100vh"},children:(0,i.jsxs)(o.jqI,{className:"size-full","data-testid":"privacy-experience-detail-page",children:[E?(0,i.jsx)(P.Z,{translation:E,translationsEnabled:j,isOOB:M,onReturnToMainForm:()=>{V(void 0),D(!1)}}):(0,i.jsx)(L.d0,{allPrivacyNotices:k,translationsEnabled:j,onSelectTranslation:e=>{V({...e,name:(0,m.Go)(e,A)})},onCreateTranslation:e=>{let t=null==l?void 0:l.find(t=>t.language===e);return t&&D(!0),null!=t?t:{language:e,is_default:!1}}}),(0,i.jsxs)(o.jqI,{vertical:!0,className:"w-full overflow-y-hidden",style:{backgroundColor:o.rSc.colors.gray[50]},children:[(0,i.jsxs)(o.jqI,{className:"flex-row items-center p-4",style:{backgroundColor:o.rSc.colors.white,borderBottom:"1px solid ".concat(o.rSc.colors.gray[100])},children:[(0,i.jsx)(o.xvT,{fontSize:"md",fontWeight:"semibold",children:"PREVIEW"}),(0,i.jsx)(o.LZC,{}),(0,i.jsxs)(o.y02.Group,{onChange:e=>S(e.target.value),defaultValue:!1,children:[(0,i.jsx)(o.y02.Button,{value:!0,title:"View mobile preview",children:(0,i.jsx)(p,{})}),(0,i.jsx)(o.y02.Button,{value:!1,title:"View desktop preview",children:(0,i.jsx)(u,{})})]})]}),(0,i.jsx)(z,{allPrivacyNotices:k,initialValues:O,translation:E,isMobilePreview:x})]})]})})})}},32222:function(e,t,n){"use strict";n.d(t,{J:function(){return i}});let i=new Map([["overlay","Overlay"],["privacy_center","Privacy center"],["tcf_overlay","TCF overlay"],["modal","Modal"],["banner_and_modal","Banner and modal"],["headless","Headless"]])},31883:function(e,t,n){"use strict";n.d(t,{Bw:function(){return i.Bw},D4:function(){return i.D4}});var i=n(19043)},26607:function(e,t,n){"use strict";var i=n(27061);n(25123);var o=n(27378),r=o&&"object"==typeof o&&"default"in o?o:{default:o},a=void 0!==i&&i.env&&!0,s=function(e){return"[object String]"===Object.prototype.toString.call(e)},l=function(){function e(e){var t=void 0===e?{}:e,n=t.name,i=void 0===n?"stylesheet":n,o=t.optimizeForSpeed,r=void 0===o?a:o;c(s(i),"`name` must be a string"),this._name=i,this._deletedRulePlaceholder="#"+i+"-deleted-rule____{}",c("boolean"==typeof r,"`optimizeForSpeed` must be a boolean"),this._optimizeForSpeed=r,this._serverSheet=void 0,this._tags=[],this._injected=!1,this._rulesCount=0;var l=document.querySelector('meta[property="csp-nonce"]');this._nonce=l?l.getAttribute("content"):null}var t=e.prototype;return t.setOptimizeForSpeed=function(e){c("boolean"==typeof e,"`setOptimizeForSpeed` accepts a boolean"),c(0===this._rulesCount,"optimizeForSpeed cannot be when rules have already been inserted"),this.flush(),this._optimizeForSpeed=e,this.inject()},t.isOptimizeForSpeed=function(){return this._optimizeForSpeed},t.inject=function(){var e=this;if(c(!this._injected,"sheet already injected"),this._injected=!0,this._optimizeForSpeed){this._tags[0]=this.makeStyleTag(this._name),this._optimizeForSpeed="insertRule"in this.getSheet(),this._optimizeForSpeed||(a||console.warn("StyleSheet: optimizeForSpeed mode not supported falling back to standard mode."),this.flush(),this._injected=!0);return}this._serverSheet={cssRules:[],insertRule:function(t,n){return"number"==typeof n?e._serverSheet.cssRules[n]={cssText:t}:e._serverSheet.cssRules.push({cssText:t}),n},deleteRule:function(t){e._serverSheet.cssRules[t]=null}}},t.getSheetForTag=function(e){if(e.sheet)return e.sheet;for(var t=0;t<document.styleSheets.length;t++)if(document.styleSheets[t].ownerNode===e)return document.styleSheets[t]},t.getSheet=function(){return this.getSheetForTag(this._tags[this._tags.length-1])},t.insertRule=function(e,t){if(c(s(e),"`insertRule` accepts only strings"),this._optimizeForSpeed){var n=this.getSheet();"number"!=typeof t&&(t=n.cssRules.length);try{n.insertRule(e,t)}catch(t){return a||console.warn("StyleSheet: illegal rule: \n\n"+e+"\n\nSee https://stackoverflow.com/q/20007992 for more info"),-1}}else{var i=this._tags[t];this._tags.push(this.makeStyleTag(this._name,e,i))}return this._rulesCount++},t.replaceRule=function(e,t){if(this._optimizeForSpeed){var n=this.getSheet();if(t.trim()||(t=this._deletedRulePlaceholder),!n.cssRules[e])return e;n.deleteRule(e);try{n.insertRule(t,e)}catch(i){a||console.warn("StyleSheet: illegal rule: \n\n"+t+"\n\nSee https://stackoverflow.com/q/20007992 for more info"),n.insertRule(this._deletedRulePlaceholder,e)}}else{var i=this._tags[e];c(i,"old rule at index `"+e+"` not found"),i.textContent=t}return e},t.deleteRule=function(e){if(this._optimizeForSpeed)this.replaceRule(e,"");else{var t=this._tags[e];c(t,"rule at index `"+e+"` not found"),t.parentNode.removeChild(t),this._tags[e]=null}},t.flush=function(){this._injected=!1,this._rulesCount=0,this._tags.forEach(function(e){return e&&e.parentNode.removeChild(e)}),this._tags=[]},t.cssRules=function(){var e=this;return this._tags.reduce(function(t,n){return n?t=t.concat(Array.prototype.map.call(e.getSheetForTag(n).cssRules,function(t){return t.cssText===e._deletedRulePlaceholder?null:t})):t.push(null),t},[])},t.makeStyleTag=function(e,t,n){t&&c(s(t),"makeStyleTag accepts only strings as second parameter");var i=document.createElement("style");this._nonce&&i.setAttribute("nonce",this._nonce),i.type="text/css",i.setAttribute("data-"+e,""),t&&i.appendChild(document.createTextNode(t));var o=document.head||document.getElementsByTagName("head")[0];return n?o.insertBefore(i,n):o.appendChild(i),i},function(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}(e.prototype,[{key:"length",get:function(){return this._rulesCount}}]),e}();function c(e,t){if(!e)throw Error("StyleSheet: "+t+".")}var d=function(e){for(var t=5381,n=e.length;n;)t=33*t^e.charCodeAt(--n);return t>>>0},u={};function p(e,t){if(!t)return"jsx-"+e;var n=String(t),i=e+n;return u[i]||(u[i]="jsx-"+d(e+"-"+n)),u[i]}function _(e,t){var n=e+t;return u[n]||(u[n]=t.replace(/__jsx-style-dynamic-selector/g,e)),u[n]}var v=function(){function e(e){var t=void 0===e?{}:e,n=t.styleSheet,i=void 0===n?null:n,o=t.optimizeForSpeed,r=void 0!==o&&o;this._sheet=i||new l({name:"styled-jsx",optimizeForSpeed:r}),this._sheet.inject(),i&&"boolean"==typeof r&&(this._sheet.setOptimizeForSpeed(r),this._optimizeForSpeed=this._sheet.isOptimizeForSpeed()),this._fromServer=void 0,this._indices={},this._instancesCounts={}}var t=e.prototype;return t.add=function(e){var t=this;void 0===this._optimizeForSpeed&&(this._optimizeForSpeed=Array.isArray(e.children),this._sheet.setOptimizeForSpeed(this._optimizeForSpeed),this._optimizeForSpeed=this._sheet.isOptimizeForSpeed()),this._fromServer||(this._fromServer=this.selectFromServer(),this._instancesCounts=Object.keys(this._fromServer).reduce(function(e,t){return e[t]=0,e},{}));var n=this.getIdAndRules(e),i=n.styleId,o=n.rules;if(i in this._instancesCounts){this._instancesCounts[i]+=1;return}var r=o.map(function(e){return t._sheet.insertRule(e)}).filter(function(e){return -1!==e});this._indices[i]=r,this._instancesCounts[i]=1},t.remove=function(e){var t=this,n=this.getIdAndRules(e).styleId;if(function(e,t){if(!e)throw Error("StyleSheetRegistry: "+t+".")}(n in this._instancesCounts,"styleId: `"+n+"` not found"),this._instancesCounts[n]-=1,this._instancesCounts[n]<1){var i=this._fromServer&&this._fromServer[n];i?(i.parentNode.removeChild(i),delete this._fromServer[n]):(this._indices[n].forEach(function(e){return t._sheet.deleteRule(e)}),delete this._indices[n]),delete this._instancesCounts[n]}},t.update=function(e,t){this.add(t),this.remove(e)},t.flush=function(){this._sheet.flush(),this._sheet.inject(),this._fromServer=void 0,this._indices={},this._instancesCounts={}},t.cssRules=function(){var e=this,t=this._fromServer?Object.keys(this._fromServer).map(function(t){return[t,e._fromServer[t]]}):[],n=this._sheet.cssRules();return t.concat(Object.keys(this._indices).map(function(t){return[t,e._indices[t].map(function(e){return n[e].cssText}).join(e._optimizeForSpeed?"":"\n")]}).filter(function(e){return!!e[1]}))},t.styles=function(e){var t,n;return t=this.cssRules(),void 0===(n=e)&&(n={}),t.map(function(e){var t=e[0],i=e[1];return r.default.createElement("style",{id:"__"+t,key:"__"+t,nonce:n.nonce?n.nonce:void 0,dangerouslySetInnerHTML:{__html:i}})})},t.getIdAndRules=function(e){var t=e.children,n=e.dynamic,i=e.id;if(n){var o=p(i,n);return{styleId:o,rules:Array.isArray(t)?t.map(function(e){return _(o,e)}):[_(o,t)]}}return{styleId:p(i),rules:Array.isArray(t)?t:[t]}},t.selectFromServer=function(){return Array.prototype.slice.call(document.querySelectorAll('[id^="__jsx-"]')).reduce(function(e,t){return e[t.id.slice(2)]=t,e},{})},e}(),f=o.createContext(null);f.displayName="StyleSheetContext";var m=r.default.useInsertionEffect||r.default.useLayoutEffect,h=new v;function g(e){var t=h||o.useContext(f);return t&&m(function(){return t.add(e),function(){t.remove(e)}},[e.id,String(e.dynamic)]),null}g.dynamic=function(e){return e.map(function(e){return p(e[0],e[1])}).join(" ")},t.style=g},13083:function(e,t,n){"use strict";e.exports=n(26607).style},25123:function(){},43218:function(e,t,n){e.exports=n(43530)}}]);
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1817],{11817:function(e,t,n){"use strict";n.d(t,{Z:function(){return B}});var i=n(24246),o=n(96306),r=n(34090),a=n(86677),s=n(27378),l=n(55484),c=n(16134),d=n(812);let u=(0,o.IUT)({displayName:"DesktopIcon",viewBox:"0 0 24 24",path:(0,i.jsx)("path",{fill:"currentColor",d:"M20.5556 4.05556H3.44444C3.10833 4.05556 2.83333 4.33056 2.83333 4.66667V12H21.1667V4.66667C21.1667 4.33056 20.8917 4.05556 20.5556 4.05556ZM23 12V13.8333V15.6667C23 17.0149 21.9038 18.1111 20.5556 18.1111H14.9142L15.2198 19.9445H17.1944C17.7024 19.9445 18.1111 20.3531 18.1111 20.8611C18.1111 21.3691 17.7024 21.7778 17.1944 21.7778H14.4444H9.55556H6.80556C6.29757 21.7778 5.88889 21.3691 5.88889 20.8611C5.88889 20.3531 6.29757 19.9445 6.80556 19.9445H8.78021L9.08576 18.1111H3.44444C2.09618 18.1111 1 17.0149 1 15.6667V13.8333V12V4.66667C1 3.31841 2.09618 2.22223 3.44444 2.22223H20.5556C21.9038 2.22223 23 3.31841 23 4.66667V12ZM2.83333 13.8333V15.6667C2.83333 16.0028 3.10833 16.2778 3.44444 16.2778H10.1476C10.159 16.2778 10.1705 16.2778 10.1781 16.2778H13.8142C13.8257 16.2778 13.8372 16.2778 13.8448 16.2778H20.5556C20.8917 16.2778 21.1667 16.0028 21.1667 15.6667V13.8333H2.83333ZM10.6365 19.9445H13.3597L13.0542 18.1111H10.942L10.6365 19.9445Z"})}),p=(0,o.IUT)({displayName:"MobileIcon",viewBox:"0 0 24 24",path:(0,i.jsx)("path",{fill:"currentColor",d:"M6.5 20.25C6.5 20.6281 6.80938 20.9375 7.1875 20.9375H16.8125C17.1906 20.9375 17.5 20.6281 17.5 20.25V16.8125H6.5V20.25ZM6.5 14.75H17.5V3.75C17.5 3.37188 17.1906 3.0625 16.8125 3.0625H7.1875C6.80938 3.0625 6.5 3.37188 6.5 3.75V14.75ZM4.4375 3.75C4.4375 2.2332 5.6707 1 7.1875 1H16.8125C18.3293 1 19.5625 2.2332 19.5625 3.75V20.25C19.5625 21.7668 18.3293 23 16.8125 23H7.1875C5.6707 23 4.4375 21.7668 4.4375 20.25V3.75ZM12 17.8438C12.2735 17.8438 12.5358 17.9524 12.7292 18.1458C12.9226 18.3392 13.0312 18.6015 13.0312 18.875C13.0312 19.1485 12.9226 19.4108 12.7292 19.6042C12.5358 19.7976 12.2735 19.9062 12 19.9062C11.7265 19.9062 11.4642 19.7976 11.2708 19.6042C11.0774 19.4108 10.9688 19.1485 10.9688 18.875C10.9688 18.6015 11.0774 18.3392 11.2708 18.1458C11.4642 17.9524 11.7265 17.8438 12 17.8438Z"})});var _=n(77830),v=n(46628),f=n(7426),m=n(60325);let h={language:{label:"Language",validation:l.Z_()},title:{label:"Title",validation:l.Z_()},description:{label:"Description",validation:l.Z_()},accept_button_label:{label:"Accept button label",validation:l.Z_()},reject_button_label:{label:"Reject button label",validation:l.Z_()},save_button_label:{label:"Save button label",validation:l.Z_()},acknowledge_button_label:{label:"Acknowledge button label",validation:l.Z_()},privacy_policy_url:{label:"Privacy policy URL",validation:l.Z_().url()},privacy_preferences_link_label:{label:"Privacy preferences link label",validation:l.Z_()},banner_title:{label:"Banner title",validation:l.Z_()},banner_description:{label:"Banner description",validation:l.Z_()},purpose_header:{label:"Purpose header",validation:l.Z_()},privacy_policy_link_label:{label:"Privacy policy link label",validation:l.Z_()},modal_link_label:{label:"Modal link label",validation:l.Z_()},is_default:{label:"Default language",validation:l.O7()}};var g=n(34334),y=n(13083),b=n.n(y),x=n(43218),S=n.n(x),w=n(52253),C=n(32885),j=n(54682);let R={language:j.eU.EN,accept_button_label:"Accept",acknowledge_button_label:"OK",banner_description:"",banner_title:"",purpose_header:"",description:"Description",privacy_policy_link_label:"",privacy_policy_url:"",modal_link_label:"",privacy_preferences_link_label:"Privacy preferences",reject_button_label:"Reject All",save_button_label:"Save",title:"Manage your consent preferences",is_default:!0},F=e=>({...R,...e.translations?e.translations[0]:{}}),A=(e,t)=>{var n,i,o,r;let a={options:{allowHTMLDescription:!0,base64Cookie:!1,debug:!1,fidesApiUrl:"http://localhost:8080/api/v1",fidesClearCookie:!0,fidesDisableSaveApi:!0,fidesDisableNoticesServedApi:!0,fidesJsBaseUrl:"",fidesLocale:null===(i=e.translations)||void 0===i?void 0:null===(n=i[0])||void 0===n?void 0:n.language,fidesString:null,geolocationApiUrl:"",isGeolocationEnabled:!1,isOverlayEnabled:!0,isPrefetchEnabled:!1,modalLinkId:null,overlayParentId:w.Vk,preventDismissal:null!==(r=e.dismissable)&&void 0!==r&&r,privacyCenterUrl:"http://localhost:3000",showFidesBrandLink:!0},experience:{available_locales:null===(o=e.translations)||void 0===o?void 0:o.map(e=>e.language),component:e.component,experience_config:{allow_language_selection:!0,auto_detect_language:!0,auto_subdomain_cookie_deletion:!0,component:e.component,disabled:!1,dismissable:e.dismissable,id:"pri_222",is_default:!0,language:"en",layer1_button_options:j.Of.OPT_IN_OPT_OUT,properties:[],regions:["us_ca"],show_layer1_notices:!1,translations:[F(e)]},id:"pri_111",privacy_notices:t,region:"us_ca"},geolocation:{country:"US",location:"US-CA",region:"CA"}};return e.component===j.re.TCF_OVERLAY&&(a.options.fidesTcfGdprApplies=!0,a.options.tcf_enabled=!0,a.geolocation={location:"eea",country:"eea"},a.experience.experience_config.regions=["eea"],a.experience={...a.experience,region:"eea",minimal_tcf:!0,gvl:{vendors:{}},tcf_purpose_names:["Store and/or access information on a device","Use limited data to select advertising","Create profiles for personalised advertising","Use profiles to select personalised advertising","Create profiles to personalise content","Use profiles to select personalised content","Measure advertising performance","Measure content performance","Understand audiences through statistics or combinations of data from different sources","Develop and improve services","Use limited data to select content"]},a.options.apiOptions={getPrivacyExperienceFn:async()=>a.experience}),a},k=e=>{let{language:t,is_default:n,...i}=R,o=Object.keys(i).map(t=>{let n=e[t];return{[t]:void 0!==n?n:R[t]}}).reduce((e,t)=>({...e,...t}),{});return{language:e.language,is_default:e.is_default,...o}},O=(e,t,n)=>e?e.map(e=>n.find(t=>(null==t?void 0:t.id)===e)).map(e=>t===j.re.TCF_OVERLAY&&void 0!==e?{...e,translations:[{language:"en",text:null==e?void 0:e.name}]}:e).filter(e=>void 0!==e):[];var T=n(74022),E=n(32222);let V=e=>{let{title:t,description:n}=e;return(0,i.jsx)(o.jqI,{className:"h-full items-center justify-center",children:(0,i.jsxs)(o.jqI,{className:"items-center gap-2 rounded-md p-6",style:{backgroundColor:T.Z.colors.white,boxShadow:T.Z.shadows.md,maxWidth:512},vertical:!0,"data-testid":"no-preview-notice",children:[(0,i.jsx)(o.xvT,{fontSize:"lg",fontWeight:"500",align:"center",children:t}),(0,i.jsx)(o.xvT,{color:"gray.500",align:"center",children:n})]})})};var z=e=>{var t,n;let{allPrivacyNotices:l,initialValues:c,translation:d,isMobilePreview:u}=e,p=(0,a.useRouter)().pathname.includes("/new"),{values:_}=(0,r.u6)(),[v,f]=(0,s.useState)([]),[m,h]=(0,s.useState)(!1),[g,y]=(0,s.useState)(),x=[j.re.BANNER_AND_MODAL,j.re.MODAL,j.re.TCF_OVERLAY].includes(_.component),{data:R}=(0,C.de)({pageIndex:1,pageSize:1}),F=(0,s.useMemo)(()=>(null==R?void 0:R.total)||0,[null==R?void 0:R.total]);(0,s.useEffect)(()=>{var e,t;return x&&m&&window.FidesPreview&&_.component&&((null===(e=_.privacy_notice_ids)||void 0===e?void 0:e.length)||_.component===j.re.TCF_OVERLAY)?_.component===j.re.TCF_OVERLAY?(window.FidesPreview("tcf"),y("tcf")):(window.FidesPreview("standard"),y("standard")):window.FidesPreview&&(null===(t=window.FidesPreview)||void 0===t||t.cleanup()),()=>{var e;y(void 0),null===(e=window.FidesPreview)||void 0===e||e.cleanup()}},[_.component,m,x,null===(t=_.privacy_notice_ids)||void 0===t?void 0:t.length,p]),(0,s.useEffect)(()=>{c&&_.component&&l&&(_.privacy_notice_ids?f(O(_.privacy_notice_ids,_.component,l)):f([]))},[_.privacy_notice_ids,l,_.component,c]);let T=(0,s.useMemo)(()=>_.component?A({...c,component:_.component},v):null,[c,v,_.component]);(0,s.useEffect)(()=>{var e,t,n,i;if(!x||!m||!window.FidesPreview||!window.Fides||!(null===(e=_.privacy_notice_ids)||void 0===e?void 0:e.length)&&_.component!==j.re.TCF_OVERLAY)return;_.component===j.re.MODAL&&(T.experience.experience_config.component=j.re.MODAL);let o=null===(t=_.translations)||void 0===t?void 0:t.find(e=>e.language===(null==d?void 0:d.language));(null===(n=_.translations)||void 0===n?void 0:n.length)&&(o?(T.experience.available_locales=[...T.experience.available_locales||[],o.language],T.experience.experience_config.translations[0]=k(o),T.options.fidesLocale=o.language):_.translations&&(T.experience.experience_config.translations[0]=k(_.translations[0]),T.options.fidesLocale=_.translations[0].language)),T.experience.experience_config.show_layer1_notices=!!(null===(i=_.privacy_notice_ids)||void 0===i?void 0:i.length)&&!!_.show_layer1_notices,T.experience.experience_config.layer1_button_options=(_.component===j.re.BANNER_AND_MODAL||_.component===j.re.TCF_OVERLAY)&&_.layer1_button_options?_.layer1_button_options:j.Of.OPT_IN_OPT_OUT,T.options.preventDismissal=!_.dismissable,T.experience.vendor_count=F,T.experience.experience_config.component=_.component,window.Fides.init(T)},[d,T,l,x,F,m,g,_.privacy_notice_ids,_.component,_.translations,_.show_layer1_notices,_.layer1_button_options,_.dismissable,c,v]);let z=document.getElementById("fides-modal");return(z&&z.removeAttribute("tabindex"),_.component)?x?(null===(n=_.privacy_notice_ids)||void 0===n?void 0:n.length)||_.component===j.re.TCF_OVERLAY?(0,i.jsxs)(o.jqI,{className:"size-full items-center justify-center overflow-scroll",children:[(0,i.jsx)(b(),{id:"4b2ec2183c5a567e",dynamic:[w.Vk,_.component!==j.re.TCF_OVERLAY?"padding-bottom: 45px;":""],children:"div#fides-overlay{z-index:5000!important}div#".concat(w.Vk,"{width:100%;padding-top:45px;").concat(_.component!==j.re.TCF_OVERLAY?"padding-bottom: 45px;":""," margin: auto;pointer-events:none}div#fides-banner-container{position:static!important;-webkit-transform:none!important;-moz-transform:none!important;-ms-transform:none!important;-o-transform:none!important;transform:none!important;-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;transition:none!important}div#fides-banner-container.fides-banner-hidden{display:none}.fides-modal-container{background-color:unset!important;position:static!important;display:none!important}.fides-modal-overlay{background-color:inherit!important;position:static!important;display:none!important}div.fides-modal-content{position:relative!important;-webkit-transform:none!important;-moz-transform:none!important;-ms-transform:none!important;-o-transform:none!important;transform:none!important;left:initial!important;top:initial!important}div.fides-modal-footer{width:unset}")}),x?(0,i.jsx)("style",{children:"div#fides-modal {\n display: flex !important;\n justify-content: center;\n background-color: unset;\n ".concat(_.component===j.re.BANNER_AND_MODAL||_.component===j.re.TCF_OVERLAY?"padding-bottom: 3rem;":"","\n }")}):null,u?(0,i.jsx)("style",{children:"\n div#fides-overlay-wrapper {\n max-width: 400px;\n margin: auto;\n }\n div.fides-modal-button-group {\n flex-direction: column !important;\n }\n div#fides-banner {\n padding: 24px;\n width: 100%;\n }\n\n div#fides-banner-description {\n margin-bottom: 0px;\n }\n\n div#fides-banner-inner div#fides-button-group {\n flex-direction: column;\n align-items: flex-start;\n gap: 12px;\n padding-top: 24px;\n }\n\n .fides-banner-button-group {\n flex-direction: column;\n width: 100%;\n }\n\n button.fides-banner-button {\n margin: 0px;\n width: 100%;\n }\n\n div#fides-banner-inner-container {\n display: flex;\n flex-direction: column;\n max-height: 50vh;\n overflow-y: auto;\n scrollbar-gutter: stable;\n }\n\n div#fides-privacy-policy-link {\n order: 1;\n width: 100%;\n }\n .fides-modal-footer {\n max-width: 100%;\n }\n .fides-banner-secondary-actions {\n flex-direction: column-reverse;\n gap: 12px;\n }\n "}):(0,i.jsx)("style",{children:"\n div#fides-banner {\n width: 60%;\n }\n @media (min-width: 768px) {\n div#fides-banner {\n width: 100%;\n }\n }\n @media (min-width: 1155px) {\n div#fides-banner {\n width: 90%;\n }\n }\n @media (min-width: 1440px) {\n div#fides-banner {\n width: 60%;\n }\n }\n "}),(0,i.jsx)(S(),{id:"fides-js-script",src:"/lib/fides-preview.js",onReady:()=>{h(!0)}}),(0,i.jsx)("div",{id:w.Vk,"data-a11y-dialog-ignore-focus-trap":"",inert:"",className:b().dynamic([["4b2ec2183c5a567e",[w.Vk,_.component!==j.re.TCF_OVERLAY?"padding-bottom: 45px;":""]]])},_.component)]}):(0,i.jsx)(V,{title:"No privacy notices added",description:'To view a preview of this experience, add a privacy notice under "Privacy Notices" to the left.'}):(0,i.jsx)(V,{title:"".concat(E.J.get(_.component)," preview not available"),description:"There is no preview available for ".concat(E.J.get(_.component),". You can edit the available settings\n and languages to the left.")}):(0,i.jsx)(V,{title:"No privacy experience type selected",description:"Please select a privacy experience type to preview."})},N=n(94315),L=n(5331),P=n(16277),Z=n(71922),I=n(31883);let M=e=>{let t=(0,m.y3)(e),n={};return Object.entries(t).forEach(e=>{let[t,i]=e;if(i.included){let e=h[t];n[t]=i.required?e.validation.required().label(e.label):e.validation.nullable().label(e.label)}}),l.Ry().shape(n)},D=e=>{let{componentType:t}=e;return M(t)},H=l.Ry().shape({name:l.Z_().required().label("Experience name"),component:l.Z_().required().label("Experience type"),translations:l.IX().when("component",(e,t)=>{let[n]=e;return t.of(D({componentType:n}))})});var B=e=>{var t;let{passedInExperience:n,passedInTranslations:l}=e,[h]=(0,N.mJ)(),[y]=(0,N.$d)(),b=(0,o.pmc)(),[x,S]=(0,s.useState)(!1),w=(0,a.useRouter)(),{data:C}=(0,f.tB)({api_set:!1}),j=null==C?void 0:null===(t=C.plus_consent_settings)||void 0===t?void 0:t.enable_translations,R=(0,c.C)(g.Zp),F=(0,c.C)(g.G1);(0,g.Ah)({page:R,size:F});let A=(0,c.C)(g.fJ),k=(0,c.C)(Z.sX),O=n?{...m.DD,...(0,m.Uv)(n)}:m.DD,T=async e=>{var t,i;let o;e.privacy_notice_ids=null===(t=e.privacy_notice_ids)||void 0===t?void 0:t.filter(e=>"tcf_purposes_placeholder"!==e),O.tcf_configuration_id&&!e.tcf_configuration_id&&(e.tcf_configuration_id=null);let r={...e,disabled:null===(i=null==n?void 0:n.disabled)||void 0===i||i,allow_language_selection:e.translations&&e.translations.length>1};if(n){let{component:e,...t}=r;o=await y({...t,id:n.id})}else o=await h(r);(0,I.D4)(o)?b((0,v.Vo)((0,d.e$)(o.error))):(b((0,v.t5)("Privacy experience successfully ".concat(n?"updated":"created"))),w.push(_.w0))},[E,V]=(0,s.useState)(void 0),[M,D]=(0,s.useState)(!1);return(0,i.jsx)(r.J9,{initialValues:O,enableReinitialize:!0,onSubmit:T,validationSchema:H,children:(0,i.jsx)(r.l0,{style:{height:"100vh"},children:(0,i.jsxs)(o.jqI,{className:"size-full","data-testid":"privacy-experience-detail-page",children:[E?(0,i.jsx)(P.Z,{translation:E,translationsEnabled:j,isOOB:M,onReturnToMainForm:()=>{V(void 0),D(!1)}}):(0,i.jsx)(L.d0,{allPrivacyNotices:k,translationsEnabled:j,onSelectTranslation:e=>{V({...e,name:(0,m.Go)(e,A)})},onCreateTranslation:e=>{let t=null==l?void 0:l.find(t=>t.language===e);return t&&D(!0),null!=t?t:{language:e,is_default:!1}}}),(0,i.jsxs)(o.jqI,{vertical:!0,className:"w-full overflow-y-hidden",style:{backgroundColor:o.rSc.colors.gray[50]},children:[(0,i.jsxs)(o.jqI,{className:"flex-row items-center p-4",style:{backgroundColor:o.rSc.colors.white,borderBottom:"1px solid ".concat(o.rSc.colors.gray[100])},children:[(0,i.jsx)(o.xvT,{fontSize:"md",fontWeight:"semibold",children:"PREVIEW"}),(0,i.jsx)(o.LZC,{}),(0,i.jsxs)(o.y02.Group,{onChange:e=>S(e.target.value),defaultValue:!1,children:[(0,i.jsx)(o.y02.Button,{value:!0,title:"View mobile preview",children:(0,i.jsx)(p,{})}),(0,i.jsx)(o.y02.Button,{value:!1,title:"View desktop preview",children:(0,i.jsx)(u,{})})]})]}),(0,i.jsx)(z,{allPrivacyNotices:k,initialValues:O,translation:E,isMobilePreview:x})]})]})})})}},32222:function(e,t,n){"use strict";n.d(t,{J:function(){return i}});let i=new Map([["overlay","Overlay"],["privacy_center","Privacy center"],["tcf_overlay","TCF overlay"],["modal","Modal"],["banner_and_modal","Banner and modal"],["headless","Headless"]])},31883:function(e,t,n){"use strict";n.d(t,{Bw:function(){return i.Bw},D4:function(){return i.D4}});var i=n(19043)},26607:function(e,t,n){"use strict";var i=n(27061);n(25123);var o=n(27378),r=o&&"object"==typeof o&&"default"in o?o:{default:o},a=void 0!==i&&i.env&&!0,s=function(e){return"[object String]"===Object.prototype.toString.call(e)},l=function(){function e(e){var t=void 0===e?{}:e,n=t.name,i=void 0===n?"stylesheet":n,o=t.optimizeForSpeed,r=void 0===o?a:o;c(s(i),"`name` must be a string"),this._name=i,this._deletedRulePlaceholder="#"+i+"-deleted-rule____{}",c("boolean"==typeof r,"`optimizeForSpeed` must be a boolean"),this._optimizeForSpeed=r,this._serverSheet=void 0,this._tags=[],this._injected=!1,this._rulesCount=0;var l=document.querySelector('meta[property="csp-nonce"]');this._nonce=l?l.getAttribute("content"):null}var t=e.prototype;return t.setOptimizeForSpeed=function(e){c("boolean"==typeof e,"`setOptimizeForSpeed` accepts a boolean"),c(0===this._rulesCount,"optimizeForSpeed cannot be when rules have already been inserted"),this.flush(),this._optimizeForSpeed=e,this.inject()},t.isOptimizeForSpeed=function(){return this._optimizeForSpeed},t.inject=function(){var e=this;if(c(!this._injected,"sheet already injected"),this._injected=!0,this._optimizeForSpeed){this._tags[0]=this.makeStyleTag(this._name),this._optimizeForSpeed="insertRule"in this.getSheet(),this._optimizeForSpeed||(a||console.warn("StyleSheet: optimizeForSpeed mode not supported falling back to standard mode."),this.flush(),this._injected=!0);return}this._serverSheet={cssRules:[],insertRule:function(t,n){return"number"==typeof n?e._serverSheet.cssRules[n]={cssText:t}:e._serverSheet.cssRules.push({cssText:t}),n},deleteRule:function(t){e._serverSheet.cssRules[t]=null}}},t.getSheetForTag=function(e){if(e.sheet)return e.sheet;for(var t=0;t<document.styleSheets.length;t++)if(document.styleSheets[t].ownerNode===e)return document.styleSheets[t]},t.getSheet=function(){return this.getSheetForTag(this._tags[this._tags.length-1])},t.insertRule=function(e,t){if(c(s(e),"`insertRule` accepts only strings"),this._optimizeForSpeed){var n=this.getSheet();"number"!=typeof t&&(t=n.cssRules.length);try{n.insertRule(e,t)}catch(t){return a||console.warn("StyleSheet: illegal rule: \n\n"+e+"\n\nSee https://stackoverflow.com/q/20007992 for more info"),-1}}else{var i=this._tags[t];this._tags.push(this.makeStyleTag(this._name,e,i))}return this._rulesCount++},t.replaceRule=function(e,t){if(this._optimizeForSpeed){var n=this.getSheet();if(t.trim()||(t=this._deletedRulePlaceholder),!n.cssRules[e])return e;n.deleteRule(e);try{n.insertRule(t,e)}catch(i){a||console.warn("StyleSheet: illegal rule: \n\n"+t+"\n\nSee https://stackoverflow.com/q/20007992 for more info"),n.insertRule(this._deletedRulePlaceholder,e)}}else{var i=this._tags[e];c(i,"old rule at index `"+e+"` not found"),i.textContent=t}return e},t.deleteRule=function(e){if(this._optimizeForSpeed)this.replaceRule(e,"");else{var t=this._tags[e];c(t,"rule at index `"+e+"` not found"),t.parentNode.removeChild(t),this._tags[e]=null}},t.flush=function(){this._injected=!1,this._rulesCount=0,this._tags.forEach(function(e){return e&&e.parentNode.removeChild(e)}),this._tags=[]},t.cssRules=function(){var e=this;return this._tags.reduce(function(t,n){return n?t=t.concat(Array.prototype.map.call(e.getSheetForTag(n).cssRules,function(t){return t.cssText===e._deletedRulePlaceholder?null:t})):t.push(null),t},[])},t.makeStyleTag=function(e,t,n){t&&c(s(t),"makeStyleTag accepts only strings as second parameter");var i=document.createElement("style");this._nonce&&i.setAttribute("nonce",this._nonce),i.type="text/css",i.setAttribute("data-"+e,""),t&&i.appendChild(document.createTextNode(t));var o=document.head||document.getElementsByTagName("head")[0];return n?o.insertBefore(i,n):o.appendChild(i),i},function(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}(e.prototype,[{key:"length",get:function(){return this._rulesCount}}]),e}();function c(e,t){if(!e)throw Error("StyleSheet: "+t+".")}var d=function(e){for(var t=5381,n=e.length;n;)t=33*t^e.charCodeAt(--n);return t>>>0},u={};function p(e,t){if(!t)return"jsx-"+e;var n=String(t),i=e+n;return u[i]||(u[i]="jsx-"+d(e+"-"+n)),u[i]}function _(e,t){var n=e+t;return u[n]||(u[n]=t.replace(/__jsx-style-dynamic-selector/g,e)),u[n]}var v=function(){function e(e){var t=void 0===e?{}:e,n=t.styleSheet,i=void 0===n?null:n,o=t.optimizeForSpeed,r=void 0!==o&&o;this._sheet=i||new l({name:"styled-jsx",optimizeForSpeed:r}),this._sheet.inject(),i&&"boolean"==typeof r&&(this._sheet.setOptimizeForSpeed(r),this._optimizeForSpeed=this._sheet.isOptimizeForSpeed()),this._fromServer=void 0,this._indices={},this._instancesCounts={}}var t=e.prototype;return t.add=function(e){var t=this;void 0===this._optimizeForSpeed&&(this._optimizeForSpeed=Array.isArray(e.children),this._sheet.setOptimizeForSpeed(this._optimizeForSpeed),this._optimizeForSpeed=this._sheet.isOptimizeForSpeed()),this._fromServer||(this._fromServer=this.selectFromServer(),this._instancesCounts=Object.keys(this._fromServer).reduce(function(e,t){return e[t]=0,e},{}));var n=this.getIdAndRules(e),i=n.styleId,o=n.rules;if(i in this._instancesCounts){this._instancesCounts[i]+=1;return}var r=o.map(function(e){return t._sheet.insertRule(e)}).filter(function(e){return -1!==e});this._indices[i]=r,this._instancesCounts[i]=1},t.remove=function(e){var t=this,n=this.getIdAndRules(e).styleId;if(function(e,t){if(!e)throw Error("StyleSheetRegistry: "+t+".")}(n in this._instancesCounts,"styleId: `"+n+"` not found"),this._instancesCounts[n]-=1,this._instancesCounts[n]<1){var i=this._fromServer&&this._fromServer[n];i?(i.parentNode.removeChild(i),delete this._fromServer[n]):(this._indices[n].forEach(function(e){return t._sheet.deleteRule(e)}),delete this._indices[n]),delete this._instancesCounts[n]}},t.update=function(e,t){this.add(t),this.remove(e)},t.flush=function(){this._sheet.flush(),this._sheet.inject(),this._fromServer=void 0,this._indices={},this._instancesCounts={}},t.cssRules=function(){var e=this,t=this._fromServer?Object.keys(this._fromServer).map(function(t){return[t,e._fromServer[t]]}):[],n=this._sheet.cssRules();return t.concat(Object.keys(this._indices).map(function(t){return[t,e._indices[t].map(function(e){return n[e].cssText}).join(e._optimizeForSpeed?"":"\n")]}).filter(function(e){return!!e[1]}))},t.styles=function(e){var t,n;return t=this.cssRules(),void 0===(n=e)&&(n={}),t.map(function(e){var t=e[0],i=e[1];return r.default.createElement("style",{id:"__"+t,key:"__"+t,nonce:n.nonce?n.nonce:void 0,dangerouslySetInnerHTML:{__html:i}})})},t.getIdAndRules=function(e){var t=e.children,n=e.dynamic,i=e.id;if(n){var o=p(i,n);return{styleId:o,rules:Array.isArray(t)?t.map(function(e){return _(o,e)}):[_(o,t)]}}return{styleId:p(i),rules:Array.isArray(t)?t:[t]}},t.selectFromServer=function(){return Array.prototype.slice.call(document.querySelectorAll('[id^="__jsx-"]')).reduce(function(e,t){return e[t.id.slice(2)]=t,e},{})},e}(),f=o.createContext(null);f.displayName="StyleSheetContext";var m=r.default.useInsertionEffect||r.default.useLayoutEffect,h=new v;function g(e){var t=h||o.useContext(f);return t&&m(function(){return t.add(e),function(){t.remove(e)}},[e.id,String(e.dynamic)]),null}g.dynamic=function(e){return e.map(function(e){return p(e[0],e[1])}).join(" ")},t.style=g},13083:function(e,t,n){"use strict";e.exports=n(26607).style},25123:function(){},43218:function(e,t,n){e.exports=n(43530)}}]);
|