ethyca-fides 2.60.1rc0__py2.py3-none-any.whl → 2.60.2b0__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.
- {ethyca_fides-2.60.1rc0.dist-info → ethyca_fides-2.60.2b0.dist-info}/METADATA +1 -1
- {ethyca_fides-2.60.1rc0.dist-info → ethyca_fides-2.60.2b0.dist-info}/RECORD +192 -191
- {ethyca_fides-2.60.1rc0.dist-info → ethyca_fides-2.60.2b0.dist-info}/WHEEL +1 -1
- fides/_version.py +3 -3
- fides/api/api/deps.py +18 -2
- fides/api/api/v1/endpoints/admin.py +4 -3
- fides/api/app_setup.py +13 -5
- fides/api/db/database.py +11 -14
- fides/api/db/seed.py +88 -85
- fides/api/util/data_category.py +1 -0
- fides/api/util/logger.py +6 -0
- fides/api/util/sqlalchemy_filter.py +30 -0
- fides/ui-build/static/admin/404.html +1 -1
- fides/ui-build/static/admin/_next/static/WSibKOvTP1wQ2ioehb_pY/_buildManifest.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{1100-c3d52c9d7d6d0a39.js → 1100-574adc8f50f9ef3a.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{1817-64ec6ac3d4a06930.js → 1817-ee8d8da2ea918cb2.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{1904-00404c45e69d3225.js → 1904-3aa43570520790fc.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{2479-064aefb3d187d6a2.js → 2479-b91631f5e7ad58fe.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{3503-296468f82b067ec4.js → 3503-f8b68879ea28e6ee.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/3505-a94b641168547225.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/3513-bcef489f2c8e30e1.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{3702-929a386a64d55f19.js → 3702-95692cf4ec13e698.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{3855-3345160a78baa978.js → 3855-cf98ef0345aa9cca.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{3872-d7045d15aafffa12.js → 3872-7382a9d55bb94d53.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{401-1ba7e037992ac460.js → 401-f18cd4739b98ce74.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{4060-dd7b6e0472703a2e.js → 4060-891319185929d1ae.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{4121-01c43bbbfc6b8fd1.js → 4121-6d5719d695f696ca.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{4481-cd91353711218b86.js → 4481-c587763cfbc603c7.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{5487-fd9b930f4246520a.js → 5487-1035279f9f4aaa81.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{5826-5f6e7a91e9ff71d1.js → 5826-dbb96ab3cc360ed4.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{5973-9199898696748d0c.js → 5973-6bb609a5771dfe2a.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{6277-6c465012cef1bd3d.js → 6277-70d615c50ac54e1d.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{6372-e35fc0a8874fdecf.js → 6372-a91f7f83fd6d2fd2.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{6853-df71f47693b139d3.js → 6853-38e3fd5a7b1bde87.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/69-5f2103ace46481d6.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{6954-00d6683243cc75d8.js → 6954-92f362ffea739388.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{7751-b3af4819eac0bc9c.js → 7751-b61c0979c4f5ba79.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{79-110e5199495a81c7.js → 79-82c500f39db614d1.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{8433-2c6947927b1e74f5.js → 8433-8d6487450daa5dcf.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{8934-41284e609c329cdd.js → 8934-5e141988ad7c1000.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{9327-2be9f27fbce039b0.js → 9327-1b672d64969cfafb.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{9392.9178313b7a01d889.js → 9392.bfca299d4f39a9e0.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{9572-c3e70eb702e9d879.js → 9572-235d37e0b7db0257.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{9676.d1e42fd1d03c4a76.js → 9676.97fdbec9c2a48c68.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{9719-8ce33427015f12ae.js → 9719-f411ae7eaf9ca1e8.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{9767-e8b0b48d602451d8.js → 9767-8d96e7f8fd72eadc.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{9951-d8d1174b00f9dac1.js → 9951-d8d18047e05b1df4.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{9965-023779db7a1b4aa2.js → 9965-4149f5bb9ccf2c54.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{404-73e79d3760ef2658.js → 404-599d88e7bb11c133.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{_app-79807dd0b151eaa4.js → _app-e2f86c400e5d4c5d.js} +9 -9
- fides/ui-build/static/admin/_next/static/chunks/pages/add-systems/{manual-2edda5eb5412ffb2.js → manual-2b39e3d90b16c88d.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/add-systems/{multiple-27c3bdcc05a1f18e.js → multiple-aed3ff8f334381ad.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/add-systems-72768fa90f31d936.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/{ant-poc-3c256e928748177a.js → ant-poc-4cad8b20c7fa422c.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/configure/{add-vendors-b3d62016149e5aa4.js → add-vendors-c3f11050818ddba3.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/{configure-790c7c61ff9500f1.js → configure-7d3f39e6207c0d4d.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-experience/{[id]-6641f24adf72b00c.js → [id]-df8bbe621a78f0ff.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-experience/{new-300fd2800c417d0b.js → new-7f38473ce267348a.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/{privacy-experience-f0ba90152c43c742.js → privacy-experience-08bcc477fa5544b6.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-notices/{[id]-669b1039a5f0dcb6.js → [id]-77f44ebc908dfbbc.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-notices/{new-e24975eaeedc7c51.js → new-79c27e52c8c8f621.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/{privacy-notices-90b331a666216e38.js → privacy-notices-22693568fd342608.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/{properties-b9919fa183e9308a.js → properties-4bce89ef8e17866f.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/{reporting-1762ed46d98cebad.js → reporting-c71f7e3ef8a3bdd4.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{consent-07bc6a18cbad414a.js → consent-49cec8727ba462e1.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects/{[projectUrn]-864af917f60d8f35.js → [projectUrn]-810bd0acfa7ae444.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/{projects-45ac2c54f21a57d5.js → projects-a637d57347ad4bd7.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{data-catalog-8e0bc6d01176081a.js → data-catalog-f416c61699380589.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/[monitorId]/{[systemId]-a1259aa44bf99194.js → [systemId]-d59f6f49d91c4166.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/{[monitorId]-a8b44307dfd5c23e.js → [monitorId]-fc99be4f494946cf.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/{action-center-333964fc8ce20616.js → action-center-36e75ed0154c9d07.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/{activity-438ab93c6cd5c2a6.js → activity-aec2dd0d89d11c1f.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{datamap-05144da6383ba6a4.js → datamap-359ab1b6513a5329.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/[collectionName]/{[...subfieldNames]-a3311bdf11e5bb1b.js → [...subfieldNames]-4ae24f9f954ea59f.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/{[collectionName]-b584029b66084b2a.js → [collectionName]-294442f48f0b1d80.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/{[datasetId]-2ababde59fc9efb4.js → [datasetId]-c73892f2cc94bf64.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/new-274b8cf0932e2741.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/{dataset-5190a42b4bddac7d.js → dataset-9b3ab8de38e343b9.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection/{[id]-63af795429688cac.js → [id]-2b2d8474ff4a7ec3.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection/new-fc637b767513d3fb.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/{datastore-connection-92dce084869b6a94.js → datastore-connection-3a196ef552fb5352.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{index-7220a947bb52c5a8.js → index-e5fa3ad65420815b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/integrations/{[id]-5a600a16f2ad5fa0.js → [id]-900e1581de2811c1.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{integrations-372906eb228e73b7.js → integrations-750f32b5bd24542a.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/messaging/{[id]-34e5d096311c5aab.js → [id]-d4b136d56734e0b2.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/messaging/{add-template-722590a322ea866b.js → add-template-bd5d5c3a62e2e6bc.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{messaging-77726c8d9ad39a64.js → messaging-226fdc9ccf65bf88.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/{[id]-12037a323158a7be.js → [id]-f208ea9573f5d16f.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/{messaging-df490b611f1360fa.js → messaging-9103ff5824f10280.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/{storage-8575fd1d25457b4d.js → storage-ccc8829fb8e6d889.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/{configure-66c6d3725fc1861f.js → configure-f0fcddade8258445.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{privacy-requests-ff5856fc531097b2.js → privacy-requests-0cd0024113f958da.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/properties/{[id]-7f8cc582fc11b46d.js → [id]-dd197054dacf6c99.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/properties/{add-property-b739361d2b5714db.js → add-property-2b204911aadeef3b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{properties-febd16a18011fd1e.js → properties-1cdb0094c4caf07e.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/reporting/{datamap-6d046c2bf03ce067.js → datamap-4aafe0b82fe05626.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{about-95e9953afaad9260.js → about-1b1273e9eb69ac45.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/consent/[configuration_id]/{[purpose_id]-0d593a93ef57dbd7.js → [purpose_id]-e4bee84add8a913b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/consent-60f6d15fa6c6b1af.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{custom-fields-d6e18187d6412a34.js → custom-fields-298fa77e090bf7cb.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{domain-records-0392d1bc2b8ec616.js → domain-records-3b59fd523eee38fc.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/domains-1c1f4f775561e528.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/email-templates-ebb37a1ae630931a.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{locations-38ce7883fd27b61f.js → locations-84f0c04250972998.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/organization-2fcbf2b113dce00c.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{regulations-22d97471513e835d.js → regulations-259d0c058065e14d.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/systems/configure/[id]/test-datasets-7bf0c1ff8d1d09cf.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/systems/configure/{[id]-69e582763772aec9.js → [id]-3a2a18084f89dc04.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{systems-d7a63f851cc99583.js → systems-c921992c82514912.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/taxonomy-07d26364d187c7c3.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/user-management/profile/{[id]-f29f0fbd62e10b6d.js → [id]-7546e00c78835823.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{user-management-f2dc8220e4aab9d7.js → user-management-a207e8f745c7e26b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{webpack-32c43a8d709ca5c6.js → webpack-ebb8d3b45b871241.js} +1 -1
- fides/ui-build/static/admin/add-systems/manual.html +1 -1
- fides/ui-build/static/admin/add-systems/multiple.html +1 -1
- fides/ui-build/static/admin/add-systems.html +1 -1
- fides/ui-build/static/admin/ant-poc.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 +1 -1
- fides/ui-build/static/admin/lib/fides.js +1 -1
- fides/ui-build/static/admin/login/[provider].html +1 -1
- fides/ui-build/static/admin/login.html +1 -1
- fides/ui-build/static/admin/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/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.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/3513-d03549cb201e7938.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/5835-057c2dec5117817c.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/9282-6b14898de61ba6f0.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/add-systems-2c64d0a87784019b.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/new-60a80195eafe9839.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection/new-32ff2757c1fb5a00.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/consent-41e6213e69789c1b.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/domains-db42cce5ec0ca55b.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/email-templates-297f558258a46f74.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/organization-3dc30591cc0a8881.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/systems/configure/[id]/test-datasets-f408ebdc01892ff0.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/taxonomy-244453d6d5413d6c.js +0 -1
- fides/ui-build/static/admin/_next/static/pNwRIyc_W4mC7MPm4ebOC/_buildManifest.js +0 -1
- {ethyca_fides-2.60.1rc0.dist-info → ethyca_fides-2.60.2b0.dist-info}/entry_points.txt +0 -0
- {ethyca_fides-2.60.1rc0.dist-info → ethyca_fides-2.60.2b0.dist-info}/licenses/LICENSE +0 -0
- {ethyca_fides-2.60.1rc0.dist-info → ethyca_fides-2.60.2b0.dist-info}/top_level.txt +0 -0
- /fides/ui-build/static/admin/_next/static/{pNwRIyc_W4mC7MPm4ebOC → WSibKOvTP1wQ2ioehb_pY}/_ssgManifest.js +0 -0
fides/_version.py
CHANGED
@@ -8,11 +8,11 @@ import json
|
|
8
8
|
|
9
9
|
version_json = '''
|
10
10
|
{
|
11
|
-
"date": "2025-04-
|
11
|
+
"date": "2025-04-29T13:17:52-0600",
|
12
12
|
"dirty": false,
|
13
13
|
"error": null,
|
14
|
-
"full-revisionid": "
|
15
|
-
"version": "2.60.
|
14
|
+
"full-revisionid": "ed1a2dadaf65a3a8ea7f862c82728a938e9d187b",
|
15
|
+
"version": "2.60.2b0"
|
16
16
|
}
|
17
17
|
''' # END VERSION_JSON
|
18
18
|
|
fides/api/api/deps.py
CHANGED
@@ -1,10 +1,12 @@
|
|
1
|
-
from contextlib import contextmanager
|
2
|
-
from typing import Generator
|
1
|
+
from contextlib import asynccontextmanager, contextmanager
|
2
|
+
from typing import AsyncGenerator, Generator
|
3
3
|
|
4
4
|
from fastapi import Depends
|
5
|
+
from sqlalchemy.ext.asyncio import AsyncSession
|
5
6
|
from sqlalchemy.orm import Session
|
6
7
|
|
7
8
|
from fides.api.common_exceptions import RedisNotConfigured
|
9
|
+
from fides.api.db.ctl_session import async_session
|
8
10
|
from fides.api.db.session import get_db_engine, get_db_session
|
9
11
|
from fides.api.util.cache import get_cache as get_redis_connection
|
10
12
|
from fides.config import CONFIG, FidesConfig
|
@@ -102,3 +104,17 @@ def get_cache() -> Generator:
|
|
102
104
|
"Application redis cache required, but it is currently disabled! Please update your application configuration to enable integration with a Redis cache."
|
103
105
|
)
|
104
106
|
yield get_redis_connection()
|
107
|
+
|
108
|
+
|
109
|
+
@asynccontextmanager
|
110
|
+
async def get_async_autoclose_db_session() -> AsyncGenerator[AsyncSession, None]:
|
111
|
+
"""
|
112
|
+
Return an async database session as an async context manager that automatically closes when the context exits.
|
113
|
+
|
114
|
+
Use this when you need manual control over the async session lifecycle outside of API endpoints.
|
115
|
+
"""
|
116
|
+
session = async_session()
|
117
|
+
try:
|
118
|
+
yield session
|
119
|
+
finally:
|
120
|
+
await session.close()
|
@@ -16,6 +16,7 @@ ADMIN_ROUTER = APIRouter(prefix=API_PREFIX, tags=["Admin"])
|
|
16
16
|
|
17
17
|
class DBActions(str, Enum):
|
18
18
|
"The available path parameters for the `/admin/db/{action}` endpoint."
|
19
|
+
|
19
20
|
upgrade = "upgrade"
|
20
21
|
reset = "reset"
|
21
22
|
downgrade = "downgrade"
|
@@ -29,7 +30,7 @@ class DBActions(str, Enum):
|
|
29
30
|
],
|
30
31
|
status_code=status.HTTP_200_OK,
|
31
32
|
)
|
32
|
-
|
33
|
+
def db_action(action: DBActions, revision: Optional[str] = "head") -> Dict:
|
33
34
|
"""
|
34
35
|
Initiate one of the enumerated DBActions.
|
35
36
|
|
@@ -40,7 +41,7 @@ async def db_action(action: DBActions, revision: Optional[str] = "head") -> Dict
|
|
40
41
|
|
41
42
|
if action == DBActions.downgrade:
|
42
43
|
try:
|
43
|
-
|
44
|
+
migrate_db(database_url=CONFIG.database.sync_database_uri, revision=revision, downgrade=True) # type: ignore[arg-type]
|
44
45
|
action_text = "downgrade"
|
45
46
|
except Exception as e:
|
46
47
|
logger.exception("Database downgrade failed")
|
@@ -68,7 +69,7 @@ async def db_action(action: DBActions, revision: Optional[str] = "head") -> Dict
|
|
68
69
|
|
69
70
|
try:
|
70
71
|
logger.info("Database being configured...")
|
71
|
-
|
72
|
+
configure_db(CONFIG.database.sync_database_uri, revision=revision)
|
72
73
|
except Exception as e:
|
73
74
|
logger.exception("Database configuration failed: {e}")
|
74
75
|
raise HTTPException(
|
fides/api/app_setup.py
CHANGED
@@ -16,7 +16,11 @@ from slowapi.extension import _rate_limit_exceeded_handler # type: ignore
|
|
16
16
|
from slowapi.middleware import SlowAPIMiddleware # type: ignore
|
17
17
|
|
18
18
|
import fides
|
19
|
-
from fides.api.api.deps import
|
19
|
+
from fides.api.api.deps import (
|
20
|
+
get_api_session,
|
21
|
+
get_async_autoclose_db_session,
|
22
|
+
get_autoclose_db_session,
|
23
|
+
)
|
20
24
|
from fides.api.api.v1 import CTL_ROUTER
|
21
25
|
from fides.api.api.v1.api import api_router
|
22
26
|
from fides.api.api.v1.endpoints.admin import ADMIN_ROUTER
|
@@ -24,7 +28,8 @@ from fides.api.api.v1.endpoints.generic_overrides import GENERIC_OVERRIDES_ROUTE
|
|
24
28
|
from fides.api.api.v1.endpoints.health import HEALTH_ROUTER
|
25
29
|
from fides.api.api.v1.exception_handlers import ExceptionHandlers
|
26
30
|
from fides.api.common_exceptions import RedisConnectionError, RedisNotConfigured
|
27
|
-
from fides.api.db
|
31
|
+
from fides.api.db import seed
|
32
|
+
from fides.api.db.database import configure_db, seed_db
|
28
33
|
from fides.api.db.seed import create_or_update_parent_user
|
29
34
|
from fides.api.models.application_config import ApplicationConfig
|
30
35
|
from fides.api.oauth.system_manager_oauth_util import (
|
@@ -165,9 +170,12 @@ async def run_database_startup(app: FastAPI) -> None:
|
|
165
170
|
|
166
171
|
if CONFIG.database.automigrate:
|
167
172
|
try:
|
168
|
-
|
169
|
-
|
170
|
-
|
173
|
+
configure_db(CONFIG.database.sync_database_uri)
|
174
|
+
with get_autoclose_db_session() as session:
|
175
|
+
seed_db(session)
|
176
|
+
if CONFIG.database.load_samples:
|
177
|
+
async with get_async_autoclose_db_session() as async_session:
|
178
|
+
await seed.load_samples(async_session)
|
171
179
|
except Exception as e:
|
172
180
|
logger.error("Error occurred during database configuration: {}", str(e))
|
173
181
|
else:
|
fides/api/db/database.py
CHANGED
@@ -14,8 +14,7 @@ from sqlalchemy_utils.functions import create_database, database_exists
|
|
14
14
|
from sqlalchemy_utils.types.encrypted.encrypted_type import InvalidCiphertextError
|
15
15
|
|
16
16
|
from fides.api.db.base import Base # type: ignore[attr-defined]
|
17
|
-
from fides.api.db.
|
18
|
-
from fides.api.db.seed import load_default_resources, load_samples
|
17
|
+
from fides.api.db.seed import load_default_resources
|
19
18
|
from fides.api.util.errors import get_full_exception_name
|
20
19
|
from fides.core.utils import get_db_engine
|
21
20
|
|
@@ -48,9 +47,8 @@ def downgrade_db(alembic_config: Config, revision: str = "head") -> None:
|
|
48
47
|
command.downgrade(alembic_config, revision)
|
49
48
|
|
50
49
|
|
51
|
-
|
50
|
+
def migrate_db(
|
52
51
|
database_url: str,
|
53
|
-
samples: bool = False,
|
54
52
|
revision: str = "head",
|
55
53
|
downgrade: bool = False,
|
56
54
|
) -> None:
|
@@ -66,11 +64,6 @@ async def migrate_db(
|
|
66
64
|
else:
|
67
65
|
upgrade_db(alembic_config, revision)
|
68
66
|
|
69
|
-
async with async_session() as session:
|
70
|
-
await load_default_resources(session)
|
71
|
-
if samples:
|
72
|
-
await load_samples(session)
|
73
|
-
|
74
67
|
|
75
68
|
def create_db_if_not_exists(database_url: str) -> None:
|
76
69
|
"""
|
@@ -121,13 +114,17 @@ def get_db_health(
|
|
121
114
|
return ("unhealthy", None)
|
122
115
|
|
123
116
|
|
124
|
-
|
125
|
-
|
126
|
-
)
|
127
|
-
|
117
|
+
def seed_db(session: Session) -> None:
|
118
|
+
"""Load default resources into the database, and optionally load samples."""
|
119
|
+
load_default_resources(session)
|
120
|
+
|
121
|
+
|
122
|
+
def configure_db(database_url: str, revision: Optional[str] = "head") -> None:
|
123
|
+
"""Set up the db to be used by the app. Creates db if needed and runs migrations."""
|
128
124
|
try:
|
129
125
|
create_db_if_not_exists(database_url)
|
130
|
-
|
126
|
+
migrate_db(database_url, revision=revision) # type: ignore[arg-type]
|
127
|
+
|
131
128
|
except InvalidCiphertextError as cipher_error:
|
132
129
|
log.error(
|
133
130
|
"Unable to configure database due to a decryption error! Check to ensure your `app_encryption_key` has not changed."
|
fides/api/db/seed.py
CHANGED
@@ -25,6 +25,7 @@ from fides.api.models.fides_user_permissions import FidesUserPermissions
|
|
25
25
|
from fides.api.models.policy import Policy, Rule, RuleTarget
|
26
26
|
from fides.api.models.sql_models import ( # type: ignore[attr-defined]
|
27
27
|
Dataset,
|
28
|
+
Organization,
|
28
29
|
System,
|
29
30
|
sql_model_map,
|
30
31
|
)
|
@@ -44,7 +45,7 @@ from fides.api.util.text import to_snake_case
|
|
44
45
|
from fides.config import CONFIG
|
45
46
|
from fides.service.dataset.dataset_config_service import DatasetConfigService
|
46
47
|
|
47
|
-
from .crud import
|
48
|
+
from .crud import upsert_resources
|
48
49
|
from .samples import (
|
49
50
|
load_sample_connections_from_project,
|
50
51
|
load_sample_resources_from_project,
|
@@ -282,106 +283,41 @@ def load_default_erasure_policy(
|
|
282
283
|
)
|
283
284
|
|
284
285
|
|
285
|
-
def load_default_dsr_policies() -> None:
|
286
|
+
def load_default_dsr_policies(session: Session) -> None:
|
286
287
|
"""
|
287
288
|
Checks whether DSR execution policies exist in the database, and
|
288
289
|
inserts them to target a default set of data categories if not.
|
289
290
|
"""
|
290
|
-
|
291
|
-
client_id = get_client_id(db_session)
|
291
|
+
client_id = get_client_id(session)
|
292
292
|
|
293
|
-
|
294
|
-
|
295
|
-
|
296
|
-
|
297
|
-
|
298
|
-
|
299
|
-
|
293
|
+
# By default, include all categories *except* those related to a user's
|
294
|
+
# financial, payment, and credentials data. These are typically not
|
295
|
+
# included in access and erasure requests as they are covered by other
|
296
|
+
# compliance programs (e.g. legal, tax, security) and most
|
297
|
+
# organizations need to be extra careful about how these are used -
|
298
|
+
# especially for erasure! Therefore, a safe default for "out of the
|
299
|
+
# box" behaviour is to exclude these
|
300
300
|
|
301
|
-
|
301
|
+
default_data_categories = get_user_data_categories()
|
302
302
|
|
303
|
-
|
304
|
-
|
305
|
-
)
|
306
|
-
|
307
|
-
load_default_access_policy(db_session, client_id, default_data_categories)
|
308
|
-
load_default_erasure_policy(db_session, client_id, default_data_categories)
|
309
|
-
|
310
|
-
log.info("All default policies & rules created")
|
311
|
-
|
312
|
-
|
313
|
-
async def load_default_organization(async_session: AsyncSession) -> None:
|
314
|
-
"""
|
315
|
-
Seed the database with a default organization unless
|
316
|
-
one with a matching name already exists.
|
317
|
-
"""
|
318
|
-
|
319
|
-
log.info("Loading the default organization...")
|
320
|
-
organizations: List[Dict] = list(
|
321
|
-
map(dict, DEFAULT_TAXONOMY.model_dump(mode="json")["organization"])
|
303
|
+
log.debug(
|
304
|
+
f"Preparing to create default rules for the following Data Categories: {default_data_categories} if they do not already exist"
|
322
305
|
)
|
323
306
|
|
324
|
-
|
325
|
-
|
326
|
-
try:
|
327
|
-
existing = await get_resource(
|
328
|
-
sql_model_map["organization"],
|
329
|
-
org["fides_key"],
|
330
|
-
async_session,
|
331
|
-
raise_not_found=False,
|
332
|
-
)
|
333
|
-
if not existing:
|
334
|
-
await create_resource(sql_model_map["organization"], org, async_session)
|
335
|
-
inserted += 1
|
336
|
-
except AlreadyExistsError:
|
337
|
-
pass
|
307
|
+
load_default_access_policy(session, client_id, default_data_categories)
|
308
|
+
load_default_erasure_policy(session, client_id, default_data_categories)
|
338
309
|
|
339
|
-
log.
|
340
|
-
log.debug(f"SKIPPED {len(organizations)-inserted} organization resource(s)")
|
341
|
-
|
342
|
-
|
343
|
-
async def load_default_taxonomy(async_session: AsyncSession) -> None:
|
344
|
-
"""Seed the database with the default taxonomy resources."""
|
345
|
-
|
346
|
-
upsert_resource_types = list(DEFAULT_TAXONOMY.model_fields_set)
|
347
|
-
upsert_resource_types.remove("organization")
|
348
|
-
|
349
|
-
log.info("Loading the default fideslang taxonomy resources...")
|
350
|
-
for resource_type in upsert_resource_types:
|
351
|
-
log.debug(f"Processing {resource_type} resources...")
|
352
|
-
default_resources = DEFAULT_TAXONOMY.model_dump(mode="json")[resource_type]
|
353
|
-
existing_resources = await list_resource(
|
354
|
-
sql_model_map[resource_type], async_session
|
355
|
-
)
|
356
|
-
existing_keys = [item.fides_key for item in existing_resources]
|
357
|
-
resources = [
|
358
|
-
resource
|
359
|
-
for resource in default_resources
|
360
|
-
if resource["fides_key"] not in existing_keys
|
361
|
-
]
|
362
|
-
|
363
|
-
if len(resources) == 0:
|
364
|
-
log.debug(f"No new {resource_type} resources to add from default taxonomy.")
|
365
|
-
continue
|
366
|
-
|
367
|
-
try:
|
368
|
-
await upsert_resources(
|
369
|
-
sql_model_map[resource_type], resources, async_session
|
370
|
-
)
|
371
|
-
except QueryError: # pragma: no cover
|
372
|
-
pass # The create_resource function will log the error
|
373
|
-
else:
|
374
|
-
log.debug(f"UPSERTED {len(resources)} {resource_type} resource(s)")
|
310
|
+
log.info("All default policies & rules created")
|
375
311
|
|
376
312
|
|
377
|
-
|
313
|
+
def load_default_resources(session: Session) -> None:
|
378
314
|
"""
|
379
315
|
Seed the database with default resources that the application
|
380
316
|
expects to be available.
|
381
317
|
"""
|
382
|
-
|
383
|
-
|
384
|
-
load_default_dsr_policies()
|
318
|
+
load_default_organization(session)
|
319
|
+
load_default_taxonomy(session)
|
320
|
+
load_default_dsr_policies(session)
|
385
321
|
|
386
322
|
|
387
323
|
async def load_samples(async_session: AsyncSession) -> None:
|
@@ -549,3 +485,70 @@ async def load_samples(async_session: AsyncSession) -> None:
|
|
549
485
|
|
550
486
|
except QueryError: # pragma: no cover
|
551
487
|
pass # The upsert_resources function will log any error
|
488
|
+
|
489
|
+
|
490
|
+
def load_default_organization(db: Session) -> None:
|
491
|
+
"""
|
492
|
+
Seed the database with a default organization unless
|
493
|
+
one with a matching name already exists.
|
494
|
+
"""
|
495
|
+
log.info("Loading the default organization...")
|
496
|
+
organizations: List[Dict] = list(
|
497
|
+
map(dict, DEFAULT_TAXONOMY.model_dump(mode="json")["organization"])
|
498
|
+
)
|
499
|
+
|
500
|
+
inserted = 0
|
501
|
+
for org in organizations:
|
502
|
+
try:
|
503
|
+
existing = Organization.get_by(
|
504
|
+
db=db, field="fides_key", value=org["fides_key"]
|
505
|
+
)
|
506
|
+
if not existing:
|
507
|
+
Organization.create(db=db, data=org, check_name=False)
|
508
|
+
inserted += 1
|
509
|
+
except AlreadyExistsError:
|
510
|
+
pass
|
511
|
+
|
512
|
+
log.debug(f"INSERTED {inserted} organization resource(s)")
|
513
|
+
log.debug(f"SKIPPED {len(organizations)-inserted} organization resource(s)")
|
514
|
+
|
515
|
+
|
516
|
+
def load_default_taxonomy(db: Session) -> None:
|
517
|
+
"""Synchronous version: Seed the database with the default taxonomy resources."""
|
518
|
+
upsert_resource_types = list(DEFAULT_TAXONOMY.model_fields_set)
|
519
|
+
upsert_resource_types.remove("organization")
|
520
|
+
|
521
|
+
log.info("Loading the default fideslang taxonomy resources...")
|
522
|
+
for resource_type in upsert_resource_types:
|
523
|
+
sql_model = sql_model_map[resource_type]
|
524
|
+
log.debug(f"Processing {resource_type} resources...")
|
525
|
+
default_resources = DEFAULT_TAXONOMY.model_dump(mode="json")[resource_type]
|
526
|
+
|
527
|
+
try:
|
528
|
+
# Fetch existing keys first
|
529
|
+
existing_keys = {item[0] for item in db.query(sql_model.fides_key).all()}
|
530
|
+
except Exception as exc:
|
531
|
+
log.error(f"Error fetching existing keys for {resource_type}: {exc}")
|
532
|
+
continue # Skip this resource type if we can't get existing keys
|
533
|
+
|
534
|
+
# Filter for resources that don't exist
|
535
|
+
resources_to_create = [
|
536
|
+
resource
|
537
|
+
for resource in default_resources
|
538
|
+
if resource["fides_key"] not in existing_keys
|
539
|
+
]
|
540
|
+
|
541
|
+
if not resources_to_create:
|
542
|
+
log.debug(f"No new {resource_type} resources to add from default taxonomy.")
|
543
|
+
continue
|
544
|
+
|
545
|
+
created_count = 0
|
546
|
+
for resource_data in resources_to_create:
|
547
|
+
try:
|
548
|
+
sql_model.create_or_update(db=db, data=resource_data)
|
549
|
+
created_count += 1
|
550
|
+
except Exception:
|
551
|
+
pass
|
552
|
+
|
553
|
+
if created_count > 0:
|
554
|
+
log.debug(f"UPSERTED {created_count} {resource_type} resource(s)")
|
fides/api/util/data_category.py
CHANGED
fides/api/util/logger.py
CHANGED
@@ -15,6 +15,7 @@ from loguru import logger
|
|
15
15
|
from loguru._handler import Message
|
16
16
|
|
17
17
|
from fides.api.schemas.privacy_request import LogEntry, PrivacyRequestSource
|
18
|
+
from fides.api.util.sqlalchemy_filter import SQLAlchemyGeneratedFilter
|
18
19
|
from fides.config import CONFIG, FidesConfig
|
19
20
|
|
20
21
|
if TYPE_CHECKING:
|
@@ -160,6 +161,11 @@ def setup(config: FidesConfig) -> None:
|
|
160
161
|
logging.getLogger(name).handlers = []
|
161
162
|
logging.getLogger(name).propagate = True
|
162
163
|
|
164
|
+
# Apply filter to remove generated timing logs
|
165
|
+
sqlalchemy_generated_filter = SQLAlchemyGeneratedFilter()
|
166
|
+
sqlalchemy_engine_logger = logging.getLogger("sqlalchemy.engine.Engine")
|
167
|
+
sqlalchemy_engine_logger.addFilter(sqlalchemy_generated_filter)
|
168
|
+
|
163
169
|
handlers = []
|
164
170
|
|
165
171
|
# Configure main sink from config
|
@@ -0,0 +1,30 @@
|
|
1
|
+
import logging
|
2
|
+
|
3
|
+
|
4
|
+
class SQLAlchemyGeneratedFilter(logging.Filter):
|
5
|
+
"""
|
6
|
+
Logging filter that removes SQLAlchemy engine logs containing timing information.
|
7
|
+
|
8
|
+
This filter specifically targets logs containing error messages from sqlalchemy.engine.Engine
|
9
|
+
which typically come from sqlalchemy.engine.Engine when executing cached queries.
|
10
|
+
"""
|
11
|
+
|
12
|
+
def __init__(self) -> None:
|
13
|
+
super().__init__()
|
14
|
+
# List of substrings to filter out
|
15
|
+
self.patterns = [
|
16
|
+
"cached since",
|
17
|
+
"caching disabled",
|
18
|
+
"does not support caching",
|
19
|
+
]
|
20
|
+
|
21
|
+
def filter(self, record: logging.LogRecord) -> bool:
|
22
|
+
# Only filter records from sqlalchemy.engine.Engine
|
23
|
+
if record.name == "sqlalchemy.engine.Engine":
|
24
|
+
message = record.getMessage()
|
25
|
+
# Check if any of the patterns exist in the message
|
26
|
+
for pattern in self.patterns:
|
27
|
+
if pattern in message:
|
28
|
+
return False # Filter out the log entry
|
29
|
+
|
30
|
+
return True # Keep all other log entries
|
@@ -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/a063d3d67fe688f6.css" as="style"/><link rel="stylesheet" href="/_next/static/css/a063d3d67fe688f6.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-
|
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/a063d3d67fe688f6.css" as="style"/><link rel="stylesheet" href="/_next/static/css/a063d3d67fe688f6.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-ebb8d3b45b871241.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-e2f86c400e5d4c5d.js" defer=""></script><script src="/_next/static/chunks/pages/404-599d88e7bb11c133.js" defer=""></script><script src="/_next/static/WSibKOvTP1wQ2ioehb_pY/_buildManifest.js" defer=""></script><script src="/_next/static/WSibKOvTP1wQ2ioehb_pY/_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":"WSibKOvTP1wQ2ioehb_pY","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
|
@@ -0,0 +1 @@
|
|
1
|
+
self.__BUILD_MANIFEST=function(s,e,t,a,c,n,i,d,o,r,u,f,g,p,j,b,k,h,m,y,l,v,I,_,U,w,q,x,N,B,F,z,A,D,E,L,M,S,T,C,P,G,H,J,K,O){return{__rewrites:{afterFiles:[],beforeFiles:[],fallback:[]},"/":[U,"static/chunks/pages/index-e5fa3ad65420815b.js"],"/404":["static/chunks/pages/404-599d88e7bb11c133.js"],"/_error":["static/chunks/pages/_error-bede3a8288930dcf.js"],"/add-systems":[U,"static/chunks/pages/add-systems-72768fa90f31d936.js"],"/add-systems/manual":[s,e,a,c,n,j,t,r,b,m,w,i,"static/chunks/pages/add-systems/manual-2b39e3d90b16c88d.js"],"/add-systems/multiple":[s,e,t,r,y,q,"static/chunks/pages/add-systems/multiple-aed3ff8f334381ad.js"],"/ant-poc":["static/chunks/pages/ant-poc-4cad8b20c7fa422c.js"],"/consent":["static/chunks/pages/consent-49cec8727ba462e1.js"],"/consent/configure":[s,e,t,r,y,"static/chunks/pages/consent/configure-7d3f39e6207c0d4d.js"],"/consent/configure/add-vendors":[s,e,t,r,y,q,"static/chunks/pages/consent/configure/add-vendors-c3f11050818ddba3.js"],"/consent/privacy-experience":[s,e,j,t,x,"static/chunks/pages/consent/privacy-experience-08bcc477fa5544b6.js"],"/consent/privacy-experience/new":[a,c,f,N,d,k,B,"static/chunks/pages/consent/privacy-experience/new-7f38473ce267348a.js"],"/consent/privacy-experience/[id]":[a,c,f,N,d,k,B,"static/chunks/pages/consent/privacy-experience/[id]-df8bbe621a78f0ff.js"],"/consent/privacy-notices":[s,e,t,x,"static/chunks/pages/consent/privacy-notices-22693568fd342608.js"],"/consent/privacy-notices/new":[a,c,f,F,d,k,z,"static/chunks/pages/consent/privacy-notices/new-79c27e52c8c8f621.js"],"/consent/privacy-notices/[id]":[a,c,f,F,d,k,z,"static/chunks/pages/consent/privacy-notices/[id]-77f44ebc908dfbbc.js"],"/consent/properties":[s,e,t,A,"static/chunks/pages/consent/properties-4bce89ef8e17866f.js"],"/consent/reporting":[s,e,a,t,"static/chunks/pages/consent/reporting-c71f7e3ef8a3bdd4.js"],"/data-catalog":[s,e,a,c,n,t,"static/css/95ac327e5d70148d.css","static/chunks/pages/data-catalog-f416c61699380589.js"],"/data-catalog/[systemId]/projects":[s,e,a,c,n,t,g,l,i,"static/chunks/pages/data-catalog/[systemId]/projects-a637d57347ad4bd7.js"],"/data-catalog/[systemId]/projects/[projectUrn]":[s,e,t,D,"static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]-810bd0acfa7ae444.js"],"/data-catalog/[systemId]/projects/[projectUrn]/[resourceUrn]":[s,e,a,c,n,t,g,l,E,i,"static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]/[resourceUrn]-ac033a16f043e6f9.js"],"/data-catalog/[systemId]/resources":[s,e,t,D,"static/chunks/pages/data-catalog/[systemId]/resources-305555b74c357bf2.js"],"/data-catalog/[systemId]/resources/[resourceUrn]":[s,e,a,c,n,t,g,l,E,i,"static/chunks/pages/data-catalog/[systemId]/resources/[resourceUrn]-71e26d262afcaea5.js"],"/data-discovery/action-center":[s,e,t,"static/chunks/pages/data-discovery/action-center-36e75ed0154c9d07.js"],"/data-discovery/action-center/[monitorId]":[s,e,a,c,n,t,o,"static/chunks/pages/data-discovery/action-center/[monitorId]-fc99be4f494946cf.js"],"/data-discovery/action-center/[monitorId]/[systemId]":[s,e,a,c,n,t,o,r,m,i,"static/chunks/pages/data-discovery/action-center/[monitorId]/[systemId]-d59f6f49d91c4166.js"],"/data-discovery/activity":[s,e,t,"static/chunks/pages/data-discovery/activity-aec2dd0d89d11c1f.js"],"/data-discovery/detection":[s,e,t,o,h,L,"static/chunks/pages/data-discovery/detection-f473b2ee1c67be3c.js"],"/data-discovery/detection/[resourceUrn]":[s,e,t,o,h,L,"static/chunks/pages/data-discovery/detection/[resourceUrn]-10f789d4ab2b8927.js"],"/data-discovery/discovery":[s,e,a,c,n,t,o,g,h,M,i,"static/chunks/pages/data-discovery/discovery-ad077f30849fdc0a.js"],"/data-discovery/discovery/[resourceUrn]":[s,e,a,c,n,t,o,g,h,M,i,"static/chunks/pages/data-discovery/discovery/[resourceUrn]-2569551ae75ea5a2.js"],"/datamap":[s,e,"static/chunks/255-7db55b0e3a0f9dea.js",t,b,S,"static/chunks/pages/datamap-359ab1b6513a5329.js"],"/dataset":[s,e,u,t,p,"static/chunks/pages/dataset-9b3ab8de38e343b9.js"],"/dataset/new":[u,p,"static/chunks/pages/dataset/new-274b8cf0932e2741.js"],"/dataset/[datasetId]":[s,e,"static/chunks/9729-fcf6ff4e3534e4a8.js",t,v,"static/chunks/pages/dataset/[datasetId]-c73892f2cc94bf64.js"],"/dataset/[datasetId]/[collectionName]":[s,e,a,c,n,I,t,v,i,"static/chunks/pages/dataset/[datasetId]/[collectionName]-294442f48f0b1d80.js"],"/dataset/[datasetId]/[collectionName]/[...subfieldNames]":[s,e,a,c,n,I,t,v,i,"static/chunks/pages/dataset/[datasetId]/[collectionName]/[...subfieldNames]-4ae24f9f954ea59f.js"],"/datastore-connection":["static/css/5f393dea1c0d031c.css","static/chunks/pages/datastore-connection-3a196ef552fb5352.js"],"/datastore-connection/new":[u,j,p,T,"static/chunks/pages/datastore-connection/new-fc637b767513d3fb.js"],"/datastore-connection/[id]":[u,p,T,"static/chunks/pages/datastore-connection/[id]-2b2d8474ff4a7ec3.js"],"/fides-js-docs":["static/chunks/2fbcc6de-a6c61724c327e9fa.js","static/chunks/e3251fe7-5777b5d778e6fffa.js",a,c,n,u,I,C,"static/css/ab65b8cc3144bfc8.css","static/chunks/905-8ab919e7b274ed50.js","static/chunks/pages/fides-js-docs-80b241bf6cddb72e.js"],"/integrations":[a,c,n,"static/chunks/6834-dcda0a8ed484775e.js",P,"static/chunks/pages/integrations-750f32b5bd24542a.js"],"/integrations/[id]":[s,e,a,c,n,t,P,"static/css/92c81f666644c594.css","static/chunks/pages/integrations/[id]-900e1581de2811c1.js"],"/login":["static/chunks/pages/login-0cb0eb44bf2dd24c.js"],"/login/[provider]":["static/chunks/pages/login/[provider]-c58beef131c3a82d.js"],"/messaging":[s,e,a,c,n,t,"static/chunks/pages/messaging-226fdc9ccf65bf88.js"],"/messaging/add-template":[d,G,"static/chunks/pages/messaging/add-template-bd5d5c3a62e2e6bc.js"],"/messaging/[id]":[d,G,"static/chunks/pages/messaging/[id]-d4b136d56734e0b2.js"],"/privacy-requests":[s,e,t,H,"static/chunks/pages/privacy-requests-0cd0024113f958da.js"],"/privacy-requests/configure":["static/chunks/pages/privacy-requests/configure-f0fcddade8258445.js"],"/privacy-requests/configure/messaging":["static/chunks/pages/privacy-requests/configure/messaging-9103ff5824f10280.js"],"/privacy-requests/configure/storage":["static/chunks/pages/privacy-requests/configure/storage-ccc8829fb8e6d889.js"],"/privacy-requests/[id]":[a,c,n,H,"static/css/b89fc4b36b501cf6.css","static/chunks/pages/privacy-requests/[id]-f208ea9573f5d16f.js"],"/properties":[s,e,t,A,"static/chunks/pages/properties-1cdb0094c4caf07e.js"],"/properties/add-property":[d,J,"static/chunks/pages/properties/add-property-2b204911aadeef3b.js"],"/properties/[id]":[d,J,"static/chunks/pages/properties/[id]-dd197054dacf6c99.js"],"/reporting/datamap":[s,e,a,c,n,C,t,b,S,"static/chunks/pages/reporting/datamap-4aafe0b82fe05626.js"],"/settings/about":["static/chunks/pages/settings/about-1b1273e9eb69ac45.js"],"/settings/consent":["static/chunks/pages/settings/consent-60f6d15fa6c6b1af.js"],"/settings/consent/[configuration_id]/[purpose_id]":[s,e,t,"static/chunks/pages/settings/consent/[configuration_id]/[purpose_id]-e4bee84add8a913b.js"],"/settings/custom-fields":[s,e,t,"static/chunks/pages/settings/custom-fields-298fa77e090bf7cb.js"],"/settings/domain-records":[s,e,t,"static/chunks/pages/settings/domain-records-3b59fd523eee38fc.js"],"/settings/domains":["static/chunks/pages/settings/domains-1c1f4f775561e528.js"],"/settings/email-templates":["static/chunks/pages/settings/email-templates-ebb37a1ae630931a.js"],"/settings/locations":[s,K,"static/chunks/pages/settings/locations-84f0c04250972998.js"],"/settings/organization":["static/chunks/pages/settings/organization-2fcbf2b113dce00c.js"],"/settings/regulations":[s,K,"static/chunks/pages/settings/regulations-259d0c058065e14d.js"],"/systems":[s,e,t,"static/chunks/pages/systems-c921992c82514912.js"],"/systems/configure/[id]":[s,e,a,c,n,j,t,o,r,b,m,w,i,"static/chunks/pages/systems/configure/[id]-3a2a18084f89dc04.js"],"/systems/configure/[id]/test-datasets":[u,p,"static/chunks/pages/systems/configure/[id]/test-datasets-7bf0c1ff8d1d09cf.js"],"/taxonomy":["static/chunks/678d4732-50255cc09048e643.js",a,c,n,f,"static/chunks/570-c99f07161bd339cd.js","static/css/34a7eb08b86ddb57.css","static/chunks/pages/taxonomy-07d26364d187c7c3.js"],"/user-management":[_,"static/chunks/pages/user-management-a207e8f745c7e26b.js"],"/user-management/new":[_,O,"static/chunks/pages/user-management/new-65ef1bdebb679666.js"],"/user-management/profile/[id]":[_,O,"static/chunks/pages/user-management/profile/[id]-7546e00c78835823.js"],sortedPages:["/","/404","/_app","/_error","/add-systems","/add-systems/manual","/add-systems/multiple","/ant-poc","/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]","/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/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/c78d26b1-88a3e1bacb2a03c2.js","static/chunks/6060-cb1ab5be7067bf7b.js","static/chunks/4481-c587763cfbc603c7.js","static/chunks/2858-0b44609b6be7850b.js","static/chunks/2866-a73888c17a195cbe.js","static/chunks/9278-9b1b5970f0702668.js","static/css/d2d4e9a6923e6730.css","static/chunks/69-5f2103ace46481d6.js","static/chunks/9719-f411ae7eaf9ca1e8.js","static/chunks/401-f18cd4739b98ce74.js","static/chunks/6527-0eed08abe252a918.js","static/chunks/4294-5b3aa9d605217915.js","static/chunks/6372-a91f7f83fd6d2fd2.js","static/chunks/9327-1b672d64969cfafb.js","static/chunks/5277-e8a036319456127f.js","static/chunks/9951-d8d18047e05b1df4.js","static/chunks/6277-70d615c50ac54e1d.js","static/chunks/3702-95692cf4ec13e698.js","static/chunks/3503-f8b68879ea28e6ee.js","static/chunks/8934-5e141988ad7c1000.js","static/chunks/7751-b61c0979c4f5ba79.js","static/chunks/5487-1035279f9f4aaa81.js","static/chunks/8702-d1c8296f9f6afc10.js","static/chunks/3513-bcef489f2c8e30e1.js","static/css/972dc7eef106ee7c.css","static/chunks/9965-4149f5bb9ccf2c54.js","static/chunks/5826-dbb96ab3cc360ed4.js","static/chunks/6853-38e3fd5a7b1bde87.js","static/chunks/9014-eeae6f581158e645.js","static/chunks/1817-ee8d8da2ea918cb2.js","static/chunks/3615-5e2d062d684b8fa1.js","static/chunks/6954-92f362ffea739388.js","static/chunks/79-82c500f39db614d1.js","static/chunks/3872-7382a9d55bb94d53.js","static/chunks/3855-cf98ef0345aa9cca.js","static/chunks/2479-b91631f5e7ad58fe.js","static/chunks/1904-3aa43570520790fc.js","static/chunks/9572-235d37e0b7db0257.js","static/chunks/9767-8d96e7f8fd72eadc.js","static/chunks/9187-851756440f79cd75.js","static/chunks/5973-6bb609a5771dfe2a.js","static/chunks/1100-574adc8f50f9ef3a.js","static/chunks/8433-8d6487450daa5dcf.js","static/chunks/4060-891319185929d1ae.js","static/chunks/3505-a94b641168547225.js","static/chunks/4121-6d5719d695f696ca.js"),self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
|
@@ -1 +1 @@
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1100],{58754:function(e,t,n){var r=n(24246),i=n(91922),s=n(70788);t.Z=e=>{let{heading:t,breadcrumbItems:n,isSticky:a=!0,children:l,rightContent:o,style:u,...c}=e;return(0,r.jsxs)("div",{...c,style:a?{position:"sticky",top:"-24px",paddingTop:"24px",paddingBottom:"24px",paddingLeft:"40px",marginLeft:"-40px",paddingRight:"40px",marginRight:"-40px",marginTop:"-24px",left:0,zIndex:20,backgroundColor:"white",...u}:{paddingBottom:"24px",...u},children:[(0,r.jsxs)(i.jqI,{justify:"space-between",children:["string"==typeof t?(0,r.jsx)(i.lQT,{className:n||l?"pb-4":void 0,level:1,"data-testid":"page-heading",children:t}):t,o&&(0,r.jsx)("div",{"data-testid":"page-header-right-content",children:o})]}),!!n&&(0,r.jsx)(s.m,{className:l?"pb-4":void 0,items:n,"data-testid":"page-breadcrumb"}),l]})}},10342:function(e,t,n){var r=n(24246),i=n(91922),s=n(46238);t.Z=e=>{let{title:t,tooltip:n,children:a,...l}=e;return(0,r.jsxs)(i.xuv,{borderRadius:"md",border:"1px solid",borderColor:"gray.200",...l,children:[(0,r.jsxs)(i.X6q,{as:"h3",fontSize:"sm",fontWeight:"semibold",color:"gray.700",py:4,px:6,backgroundColor:"gray.50",borderRadius:"md",textAlign:"left",children:[t,n?(0,r.jsx)(i.xvT,{as:"span",mx:1,children:(0,r.jsx)(s.b,{label:n})}):void 0]}),(0,r.jsx)(i.Kqy,{p:6,spacing:6,children:a})]})}},70788:function(e,t,n){n.d(t,{m:function(){return u}});var r=n(24246),i=n(91922),s=n(79894),a=n.n(s),l=n(27378);let{Text:o}=i.AntTypography,u=e=>{let{items:t,...n}=e,s=(0,l.useMemo)(()=>null==t?void 0:t.map((e,n)=>{let s=n===t.length-1,l={...e},u=l.onClick&&!l.href;return("string"==typeof l.title&&(l.title=(0,r.jsx)(o,{style:{color:"inherit",maxWidth:s?void 0:400},ellipsis:!s,children:l.title})),u)?l.title=(0,r.jsx)(i.wpx,{type:"text",size:"small",icon:l.icon,onClick:l.onClick,className:"ant-breadcrumb-link -mt-px px-1 text-inherit",children:l.title}):(l.icon&&(l.title=(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("span",{className:"anticon align-text-bottom",children:l.icon}),l.title]})),l.href&&l.title&&(l.title=(0,r.jsx)(a(),{href:l.href,className:"ant-breadcrumb-link",children:l.title}),delete l.href)),l}),[t]);return(0,r.jsx)(i.zrq,{items:s,...n})}},67810:function(e,t,n){n.d(t,{Z:function(){return s}}),(r=i||(i={})).PRIVACY_REQUEST_REVIEW_APPROVE="privacy_request_review_approve",r.PRIVACY_REQUEST_REVIEW_DENY="privacy_request_review_deny",r.PRIVACY_REQUEST_RECEIPT="privacy_request_receipt",r.PRIVACY_REQUEST_COMPLETE_ACCESS="privacy_request_complete_access",r.PRIVACY_REQUEST_COMPLETE_DELETION="privacy_request_complete_deletion",r.SUBJECT_IDENTITY_VERIFICATION="subject_identity_verification";var r,i,s={[i.PRIVACY_REQUEST_COMPLETE_ACCESS]:"Access request completed",[i.PRIVACY_REQUEST_COMPLETE_DELETION]:"Erasure request completed",[i.PRIVACY_REQUEST_RECEIPT]:"Privacy request received",[i.PRIVACY_REQUEST_REVIEW_APPROVE]:"Privacy request approved",[i.PRIVACY_REQUEST_REVIEW_DENY]:"Privacy request denied",[i.SUBJECT_IDENTITY_VERIFICATION]:"Subject identity verification"}},20149:function(e,t,n){var r=n(24246),i=n(77830),s=n(91922),a=n(34090),l=n(86677),o=n(16134),u=n(10342),c=n(40324),d=n(51472),p=n(67810),m=n(64826);let g=()=>{var e;let t=(0,o.C)(m.Zp),n=(0,o.C)(m.G1);(0,m.gz)({page:t,size:n});let i=(0,o.C)(m.YO),{values:s,setFieldValue:l}=(0,a.u6)();return(0,r.jsx)(d.Z,{label:"Associated properties",addButtonLabel:"Add property",idField:"id",nameField:"name",allItems:i.map(e=>({id:e.id,name:e.name})),values:null!==(e=s.properties)&&void 0!==e?e:[],setValues:e=>l("properties",e),draggable:!0,maxHeight:100,baseTestId:"property"})};t.Z=e=>{let{template:t,handleSubmit:n,handleDelete:o}=e,d=(0,l.useRouter)(),m=()=>{d.push(i.q)},f={type:t.type,content:t.content,properties:t.properties||[],is_enabled:t.is_enabled,id:t.id||""};return(0,r.jsx)(a.J9,{enableReinitialize:!0,initialValues:f,onSubmit:n,children:e=>{let{dirty:t,isValid:n,isSubmitting:i}=e;return(0,r.jsxs)(a.l0,{style:{paddingTop:"12px",paddingBottom:"12px"},children:[(0,r.jsx)(s.xuv,{py:3,children:(0,r.jsxs)(u.Z,{title:"".concat(p.Z[f.type]),children:[(0,r.jsx)(c.j0,{isRequired:!0,label:"Email subject",name:"content.subject",variant:"stacked"}),(0,r.jsx)(c.Ks,{isRequired:!0,label:"Message body",name:"content.body",value:"test",variant:"stacked",resize:!0}),(0,r.jsx)(s.xuv,{py:3,children:(0,r.jsx)(g,{})}),(0,r.jsx)(c.w8,{name:"is_enabled",label:"Enable message",variant:"switchFirst"})]})}),(0,r.jsxs)(s.kCb,{justifyContent:"space-between",width:"100%",paddingTop:2,children:[f.id&&o&&(0,r.jsx)(s.wpx,{"data-testid":"delete-template-button",loading:!1,className:"mr-3",onClick:o,children:"Delete"}),(0,r.jsxs)(s.kCb,{justifyContent:"right",width:"100%",paddingTop:2,children:[(0,r.jsx)(s.wpx,{loading:!1,className:"mr-3",onClick:m,children:"Cancel"}),(0,r.jsx)(s.wpx,{htmlType:"submit",type:"primary",disabled:i||!t||!n,loading:i,"data-testid":"submit-btn",children:"Save"})]})]})]})}})}},5058:function(e,t,n){n.d(t,{Vw:function(){return s},ms:function(){return r},pS:function(){return i},vm:function(){return a}});let{useGetSummaryMessagingTemplatesQuery:r,usePutMessagingTemplateByIdMutation:i,useCreateMessagingTemplateByTypeMutation:s,usePatchMessagingTemplateByIdMutation:a}=n(78780).u.injectEndpoints({endpoints:e=>({getSummaryMessagingTemplates:e.query({query:e=>({method:"GET",url:"plus/messaging/templates/summary",params:e}),providesTags:()=>["Property-Specific Messaging Templates"]}),putMessagingTemplateById:e.mutation({query:e=>{let{templateId:t,template:n}=e;return{url:"plus/messaging/templates/".concat(t),method:"PUT",body:n}},invalidatesTags:()=>["Property-Specific Messaging Templates"]}),patchMessagingTemplateById:e.mutation({query:e=>{let{templateId:t,template:n}=e;return{url:"plus/messaging/templates/".concat(t),method:"PATCH",body:n}},invalidatesTags:()=>["Property-Specific Messaging Templates"]}),createMessagingTemplateByType:e.mutation({query:e=>{let{templateType:t,template:n}=e;return{url:"plus/messaging/templates/".concat(t),method:"POST",body:n}},invalidatesTags:()=>["Property-Specific Messaging Templates"]})})})},47466:function(e,t,n){n.d(t,{KC:function(){return a},ew:function(){return l},gQ:function(){return s},jM:function(){return r},lE:function(){return i}});let{useGetMessagingTemplatesQuery:r,useUpdateMessagingTemplatesMutation:i,useGetMessagingTemplateByIdQuery:s,useGetMessagingTemplateDefaultQuery:a,useDeleteMessagingTemplateByIdMutation:l}=n(78780).u.injectEndpoints({endpoints:e=>({getMessagingTemplates:e.query({query:()=>({url:"messaging/templates"}),providesTags:()=>["Messaging Templates"]}),updateMessagingTemplates:e.mutation({query:e=>({url:"messaging/templates",method:"PUT",body:e}),invalidatesTags:()=>["Messaging Templates"]}),getMessagingTemplateById:e.query({query:e=>({url:"/messaging/templates/".concat(e)}),providesTags:()=>["Property-Specific Messaging Templates"]}),getMessagingTemplateDefault:e.query({query:e=>({url:"/messaging/templates/default/".concat(e)})}),deleteMessagingTemplateById:e.mutation({query:e=>({url:"/messaging/templates/".concat(e),method:"DELETE"}),invalidatesTags:()=>["Property-Specific Messaging Templates"]})})})},31883:function(e,t,n){n.d(t,{Bw:function(){return r.Bw},D4:function(){return r.D4}});var r=n(19043)},11055:function(e,t,n){n.d(t,{M:function(){return d}});var r=n(24246),i=n(29427),s=n(27378),a=n(40976),l=n(18397),o=n(42308),u=n(25431),c=n(39556);let d=(0,s.forwardRef)(function({children:e,as:t="ul",axis:n="y",onReorder:d,values:g,...f},y){let h=(0,o.h)(()=>l.E[t]),x=[],E=(0,s.useRef)(!1);return(0,i.k)(!!g,"Reorder.Group must be provided a values prop"),(0,s.useEffect)(()=>{E.current=!1}),(0,r.jsx)(h,{...f,ref:y,ignoreStrict:!0,children:(0,r.jsx)(a.Y.Provider,{value:{axis:n,registerItem:(e,t)=>{let r=x.findIndex(t=>e===t.value);-1!==r?x[r].layout=t[n]:x.push({value:e,layout:t[n]}),x.sort(m)},updateOrder:(e,t,n)=>{if(E.current)return;let r=function(e,t,n,r){if(!r)return e;let i=e.findIndex(e=>e.value===t);if(-1===i)return e;let s=r>0?1:-1,a=e[i+s];if(!a)return e;let l=e[i],o=a.layout,d=(0,c.t)(o.min,o.max,.5);return 1===s&&l.layout.max+n>d||-1===s&&l.layout.min+n<d?(0,u.uo)(e,i,i+s):e}(x,e,t,n);x!==r&&(E.current=!0,d(r.map(p).filter(e=>-1!==g.indexOf(e))))}},children:e})})});function p(e){return e.value}function m(e,t){return e.layout.min-t.layout.min}},7078:function(e,t,n){n.d(t,{e:function(){return T}});var r=n(24246),i=n(29427),s=n(27378),a=n(40976),l=n(18397),o=n(42308),u=n(69222),c=n(67412);function d(e){let t=(0,o.h)(()=>(0,u.BX)(e)),{isStatic:n}=(0,s.useContext)(c._);if(n){let[,n]=(0,s.useState)(e);(0,s.useEffect)(()=>t.on("change",n),[])}return t}var p=n(13998);let m=e=>e&&"object"==typeof e&&e.mix,g=e=>m(e)?e.mix:void 0;var f=n(64306),y=n(95984);function h(e,t){let n=d(t()),r=()=>n.set(t());return r(),(0,f.L)(()=>{let t=()=>y.Wi.preRender(r,!1,!0),n=e.map(e=>e.on("change",t));return()=>{n.forEach(e=>e()),(0,y.Pn)(r)}}),n}function x(e,t){let n=(0,o.h)(()=>[]);return h(e,()=>{n.length=0;let r=e.length;for(let t=0;t<r;t++)n[t]=e[t].get();return t(n)})}var E=n(3522);function v(e,t=0){return(0,E.i)(e)?e:d(t)}let T=(0,s.forwardRef)(function({children:e,style:t={},value:n,as:c="li",onDrag:d,layout:m=!0,...f},y){let E=(0,o.h)(()=>l.E[c]),T=(0,s.useContext)(a.Y),b={x:v(t.x),y:v(t.y)},_=function(e,t,n,r){if("function"==typeof e)return function(e){u.S1.current=[],e();let t=h(u.S1.current,e);return u.S1.current=void 0,t}(e);let i="function"==typeof t?t:function(...e){let t=!Array.isArray(e[0]),n=t?0:-1,r=e[0+n],i=e[1+n],s=e[2+n],a=e[3+n],l=(0,p.s)(i,s,{mixer:g(s[0]),...a});return t?l(r):l}(t,void 0,void 0);return Array.isArray(e)?x(e,i):x([e],([e])=>i(e))}([b.x,b.y],([e,t])=>e||t?1:"unset");(0,i.k)(!!T,"Reorder.Item must be a child of Reorder.Group");let{axis:C,registerItem:j,updateOrder:R}=T;return(0,r.jsx)(E,{drag:C,...f,dragSnapToOrigin:!0,style:{...t,x:b.x,y:b.y,zIndex:_},layout:m,onDrag:(e,t)=>{let{velocity:r}=t;r[C]&&R(n,b[C].get(),r[C]),d&&d(e,t)},onLayoutMeasure:e=>j(n,e),ref:y,ignoreStrict:!0,children:e})})},40976:function(e,t,n){n.d(t,{Y:function(){return r}});let r=(0,n(27378).createContext)(null)},47397:function(e,t,n){n.d(t,{o:function(){return a}});var r=n(42308);class i{constructor(){this.componentControls=new Set}subscribe(e){return this.componentControls.add(e),()=>this.componentControls.delete(e)}start(e,t){this.componentControls.forEach(n=>{n.start(e.nativeEvent||e,t)})}}let s=()=>new i;function a(){return(0,r.h)(s)}},76649:function(e,t,n){n.d(t,{Ln:function(){return r}});let r=(e,t)=>s(e,t),i=Symbol("SOME"),s=(e,t)=>"string"==typeof e?e===typeof t:Array.isArray(e)?i in e?e.some(e=>s(e,t)):!!Array.isArray(t)&&(0===e.length||t.every(t=>e.some(e=>s(e,t)))):"object"==typeof t&&null!==t&&Object.entries(e).every(([e,n])=>s(n,t[e]));class a{static narrow(e){return new a(t=>r(e,t))}constructor(e){this.NF=void 0,this.NF=e}satisfied(e){return this.NF(e)}build(e){return e}and(e){let t=this.NF,n=e instanceof a?e.NF:e instanceof Function?e:t=>r(e,t);return new a(e=>t(e)&&n(e))}}new a(e=>!0)}}]);
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1100],{58754:function(e,t,n){var r=n(24246),i=n(91942),s=n(70788);t.Z=e=>{let{heading:t,breadcrumbItems:n,isSticky:a=!0,children:l,rightContent:o,style:u,...c}=e;return(0,r.jsxs)("div",{...c,style:a?{position:"sticky",top:"-24px",paddingTop:"24px",paddingBottom:"24px",paddingLeft:"40px",marginLeft:"-40px",paddingRight:"40px",marginRight:"-40px",marginTop:"-24px",left:0,zIndex:20,backgroundColor:"white",...u}:{paddingBottom:"24px",...u},children:[(0,r.jsxs)(i.jqI,{justify:"space-between",children:["string"==typeof t?(0,r.jsx)(i.lQT,{className:n||l?"pb-4":void 0,level:1,"data-testid":"page-heading",children:t}):t,o&&(0,r.jsx)("div",{"data-testid":"page-header-right-content",children:o})]}),!!n&&(0,r.jsx)(s.m,{className:l?"pb-4":void 0,items:n,"data-testid":"page-breadcrumb"}),l]})}},10342:function(e,t,n){var r=n(24246),i=n(91942),s=n(46238);t.Z=e=>{let{title:t,tooltip:n,children:a,...l}=e;return(0,r.jsxs)(i.xuv,{borderRadius:"md",border:"1px solid",borderColor:"gray.200",...l,children:[(0,r.jsxs)(i.X6q,{as:"h3",fontSize:"sm",fontWeight:"semibold",color:"gray.700",py:4,px:6,backgroundColor:"gray.50",borderRadius:"md",textAlign:"left",children:[t,n?(0,r.jsx)(i.xvT,{as:"span",mx:1,children:(0,r.jsx)(s.b,{label:n})}):void 0]}),(0,r.jsx)(i.Kqy,{p:6,spacing:6,children:a})]})}},70788:function(e,t,n){n.d(t,{m:function(){return u}});var r=n(24246),i=n(91942),s=n(79894),a=n.n(s),l=n(27378);let{Text:o}=i.AntTypography,u=e=>{let{items:t,...n}=e,s=(0,l.useMemo)(()=>null==t?void 0:t.map((e,n)=>{let s=n===t.length-1,l={...e},u=l.onClick&&!l.href;return("string"==typeof l.title&&(l.title=(0,r.jsx)(o,{style:{color:"inherit",maxWidth:s?void 0:400},ellipsis:!s,children:l.title})),u)?l.title=(0,r.jsx)(i.wpx,{type:"text",size:"small",icon:l.icon,onClick:l.onClick,className:"ant-breadcrumb-link -mt-px px-1 text-inherit",children:l.title}):(l.icon&&(l.title=(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("span",{className:"anticon align-text-bottom",children:l.icon}),l.title]})),l.href&&l.title&&(l.title=(0,r.jsx)(a(),{href:l.href,className:"ant-breadcrumb-link",children:l.title}),delete l.href)),l}),[t]);return(0,r.jsx)(i.zrq,{items:s,...n})}},67810:function(e,t,n){n.d(t,{Z:function(){return s}}),(r=i||(i={})).PRIVACY_REQUEST_REVIEW_APPROVE="privacy_request_review_approve",r.PRIVACY_REQUEST_REVIEW_DENY="privacy_request_review_deny",r.PRIVACY_REQUEST_RECEIPT="privacy_request_receipt",r.PRIVACY_REQUEST_COMPLETE_ACCESS="privacy_request_complete_access",r.PRIVACY_REQUEST_COMPLETE_DELETION="privacy_request_complete_deletion",r.SUBJECT_IDENTITY_VERIFICATION="subject_identity_verification";var r,i,s={[i.PRIVACY_REQUEST_COMPLETE_ACCESS]:"Access request completed",[i.PRIVACY_REQUEST_COMPLETE_DELETION]:"Erasure request completed",[i.PRIVACY_REQUEST_RECEIPT]:"Privacy request received",[i.PRIVACY_REQUEST_REVIEW_APPROVE]:"Privacy request approved",[i.PRIVACY_REQUEST_REVIEW_DENY]:"Privacy request denied",[i.SUBJECT_IDENTITY_VERIFICATION]:"Subject identity verification"}},20149:function(e,t,n){var r=n(24246),i=n(77830),s=n(91942),a=n(34090),l=n(86677),o=n(16134),u=n(10342),c=n(40324),d=n(51472),p=n(67810),m=n(64826);let g=()=>{var e;let t=(0,o.C)(m.Zp),n=(0,o.C)(m.G1);(0,m.gz)({page:t,size:n});let i=(0,o.C)(m.YO),{values:s,setFieldValue:l}=(0,a.u6)();return(0,r.jsx)(d.Z,{label:"Associated properties",addButtonLabel:"Add property",idField:"id",nameField:"name",allItems:i.map(e=>({id:e.id,name:e.name})),values:null!==(e=s.properties)&&void 0!==e?e:[],setValues:e=>l("properties",e),draggable:!0,maxHeight:100,baseTestId:"property"})};t.Z=e=>{let{template:t,handleSubmit:n,handleDelete:o}=e,d=(0,l.useRouter)(),m=()=>{d.push(i.q)},f={type:t.type,content:t.content,properties:t.properties||[],is_enabled:t.is_enabled,id:t.id||""};return(0,r.jsx)(a.J9,{enableReinitialize:!0,initialValues:f,onSubmit:n,children:e=>{let{dirty:t,isValid:n,isSubmitting:i}=e;return(0,r.jsxs)(a.l0,{style:{paddingTop:"12px",paddingBottom:"12px"},children:[(0,r.jsx)(s.xuv,{py:3,children:(0,r.jsxs)(u.Z,{title:"".concat(p.Z[f.type]),children:[(0,r.jsx)(c.j0,{isRequired:!0,label:"Email subject",name:"content.subject",variant:"stacked"}),(0,r.jsx)(c.Ks,{isRequired:!0,label:"Message body",name:"content.body",value:"test",variant:"stacked",resize:!0}),(0,r.jsx)(s.xuv,{py:3,children:(0,r.jsx)(g,{})}),(0,r.jsx)(c.w8,{name:"is_enabled",label:"Enable message",variant:"switchFirst"})]})}),(0,r.jsxs)(s.kCb,{justifyContent:"space-between",width:"100%",paddingTop:2,children:[f.id&&o&&(0,r.jsx)(s.wpx,{"data-testid":"delete-template-button",loading:!1,className:"mr-3",onClick:o,children:"Delete"}),(0,r.jsxs)(s.kCb,{justifyContent:"right",width:"100%",paddingTop:2,children:[(0,r.jsx)(s.wpx,{loading:!1,className:"mr-3",onClick:m,children:"Cancel"}),(0,r.jsx)(s.wpx,{htmlType:"submit",type:"primary",disabled:i||!t||!n,loading:i,"data-testid":"submit-btn",children:"Save"})]})]})]})}})}},5058:function(e,t,n){n.d(t,{Vw:function(){return s},ms:function(){return r},pS:function(){return i},vm:function(){return a}});let{useGetSummaryMessagingTemplatesQuery:r,usePutMessagingTemplateByIdMutation:i,useCreateMessagingTemplateByTypeMutation:s,usePatchMessagingTemplateByIdMutation:a}=n(78780).u.injectEndpoints({endpoints:e=>({getSummaryMessagingTemplates:e.query({query:e=>({method:"GET",url:"plus/messaging/templates/summary",params:e}),providesTags:()=>["Property-Specific Messaging Templates"]}),putMessagingTemplateById:e.mutation({query:e=>{let{templateId:t,template:n}=e;return{url:"plus/messaging/templates/".concat(t),method:"PUT",body:n}},invalidatesTags:()=>["Property-Specific Messaging Templates"]}),patchMessagingTemplateById:e.mutation({query:e=>{let{templateId:t,template:n}=e;return{url:"plus/messaging/templates/".concat(t),method:"PATCH",body:n}},invalidatesTags:()=>["Property-Specific Messaging Templates"]}),createMessagingTemplateByType:e.mutation({query:e=>{let{templateType:t,template:n}=e;return{url:"plus/messaging/templates/".concat(t),method:"POST",body:n}},invalidatesTags:()=>["Property-Specific Messaging Templates"]})})})},47466:function(e,t,n){n.d(t,{KC:function(){return a},ew:function(){return l},gQ:function(){return s},jM:function(){return r},lE:function(){return i}});let{useGetMessagingTemplatesQuery:r,useUpdateMessagingTemplatesMutation:i,useGetMessagingTemplateByIdQuery:s,useGetMessagingTemplateDefaultQuery:a,useDeleteMessagingTemplateByIdMutation:l}=n(78780).u.injectEndpoints({endpoints:e=>({getMessagingTemplates:e.query({query:()=>({url:"messaging/templates"}),providesTags:()=>["Messaging Templates"]}),updateMessagingTemplates:e.mutation({query:e=>({url:"messaging/templates",method:"PUT",body:e}),invalidatesTags:()=>["Messaging Templates"]}),getMessagingTemplateById:e.query({query:e=>({url:"/messaging/templates/".concat(e)}),providesTags:()=>["Property-Specific Messaging Templates"]}),getMessagingTemplateDefault:e.query({query:e=>({url:"/messaging/templates/default/".concat(e)})}),deleteMessagingTemplateById:e.mutation({query:e=>({url:"/messaging/templates/".concat(e),method:"DELETE"}),invalidatesTags:()=>["Property-Specific Messaging Templates"]})})})},31883:function(e,t,n){n.d(t,{Bw:function(){return r.Bw},D4:function(){return r.D4}});var r=n(19043)},11055:function(e,t,n){n.d(t,{M:function(){return d}});var r=n(24246),i=n(29427),s=n(27378),a=n(40976),l=n(18397),o=n(42308),u=n(25431),c=n(39556);let d=(0,s.forwardRef)(function({children:e,as:t="ul",axis:n="y",onReorder:d,values:g,...f},y){let h=(0,o.h)(()=>l.E[t]),x=[],E=(0,s.useRef)(!1);return(0,i.k)(!!g,"Reorder.Group must be provided a values prop"),(0,s.useEffect)(()=>{E.current=!1}),(0,r.jsx)(h,{...f,ref:y,ignoreStrict:!0,children:(0,r.jsx)(a.Y.Provider,{value:{axis:n,registerItem:(e,t)=>{let r=x.findIndex(t=>e===t.value);-1!==r?x[r].layout=t[n]:x.push({value:e,layout:t[n]}),x.sort(m)},updateOrder:(e,t,n)=>{if(E.current)return;let r=function(e,t,n,r){if(!r)return e;let i=e.findIndex(e=>e.value===t);if(-1===i)return e;let s=r>0?1:-1,a=e[i+s];if(!a)return e;let l=e[i],o=a.layout,d=(0,c.t)(o.min,o.max,.5);return 1===s&&l.layout.max+n>d||-1===s&&l.layout.min+n<d?(0,u.uo)(e,i,i+s):e}(x,e,t,n);x!==r&&(E.current=!0,d(r.map(p).filter(e=>-1!==g.indexOf(e))))}},children:e})})});function p(e){return e.value}function m(e,t){return e.layout.min-t.layout.min}},7078:function(e,t,n){n.d(t,{e:function(){return T}});var r=n(24246),i=n(29427),s=n(27378),a=n(40976),l=n(18397),o=n(42308),u=n(69222),c=n(67412);function d(e){let t=(0,o.h)(()=>(0,u.BX)(e)),{isStatic:n}=(0,s.useContext)(c._);if(n){let[,n]=(0,s.useState)(e);(0,s.useEffect)(()=>t.on("change",n),[])}return t}var p=n(13998);let m=e=>e&&"object"==typeof e&&e.mix,g=e=>m(e)?e.mix:void 0;var f=n(64306),y=n(95984);function h(e,t){let n=d(t()),r=()=>n.set(t());return r(),(0,f.L)(()=>{let t=()=>y.Wi.preRender(r,!1,!0),n=e.map(e=>e.on("change",t));return()=>{n.forEach(e=>e()),(0,y.Pn)(r)}}),n}function x(e,t){let n=(0,o.h)(()=>[]);return h(e,()=>{n.length=0;let r=e.length;for(let t=0;t<r;t++)n[t]=e[t].get();return t(n)})}var E=n(3522);function v(e,t=0){return(0,E.i)(e)?e:d(t)}let T=(0,s.forwardRef)(function({children:e,style:t={},value:n,as:c="li",onDrag:d,layout:m=!0,...f},y){let E=(0,o.h)(()=>l.E[c]),T=(0,s.useContext)(a.Y),b={x:v(t.x),y:v(t.y)},_=function(e,t,n,r){if("function"==typeof e)return function(e){u.S1.current=[],e();let t=h(u.S1.current,e);return u.S1.current=void 0,t}(e);let i="function"==typeof t?t:function(...e){let t=!Array.isArray(e[0]),n=t?0:-1,r=e[0+n],i=e[1+n],s=e[2+n],a=e[3+n],l=(0,p.s)(i,s,{mixer:g(s[0]),...a});return t?l(r):l}(t,void 0,void 0);return Array.isArray(e)?x(e,i):x([e],([e])=>i(e))}([b.x,b.y],([e,t])=>e||t?1:"unset");(0,i.k)(!!T,"Reorder.Item must be a child of Reorder.Group");let{axis:C,registerItem:j,updateOrder:R}=T;return(0,r.jsx)(E,{drag:C,...f,dragSnapToOrigin:!0,style:{...t,x:b.x,y:b.y,zIndex:_},layout:m,onDrag:(e,t)=>{let{velocity:r}=t;r[C]&&R(n,b[C].get(),r[C]),d&&d(e,t)},onLayoutMeasure:e=>j(n,e),ref:y,ignoreStrict:!0,children:e})})},40976:function(e,t,n){n.d(t,{Y:function(){return r}});let r=(0,n(27378).createContext)(null)},47397:function(e,t,n){n.d(t,{o:function(){return a}});var r=n(42308);class i{constructor(){this.componentControls=new Set}subscribe(e){return this.componentControls.add(e),()=>this.componentControls.delete(e)}start(e,t){this.componentControls.forEach(n=>{n.start(e.nativeEvent||e,t)})}}let s=()=>new i;function a(){return(0,r.h)(s)}},76649:function(e,t,n){n.d(t,{Ln:function(){return r}});let r=(e,t)=>s(e,t),i=Symbol("SOME"),s=(e,t)=>"string"==typeof e?e===typeof t:Array.isArray(e)?i in e?e.some(e=>s(e,t)):!!Array.isArray(t)&&(0===e.length||t.every(t=>e.some(e=>s(e,t)))):"object"==typeof t&&null!==t&&Object.entries(e).every(([e,n])=>s(n,t[e]));class a{static narrow(e){return new a(t=>r(e,t))}constructor(e){this.NF=void 0,this.NF=e}satisfied(e){return this.NF(e)}build(e){return e}and(e){let t=this.NF,n=e instanceof a?e.NF:e instanceof Function?e:t=>r(e,t);return new a(e=>t(e)&&n(e))}}new a(e=>!0)}}]);
|