ethyca-fides 2.57.1b7__py2.py3-none-any.whl → 2.57.1b9__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.57.1b7.dist-info → ethyca_fides-2.57.1b9.dist-info}/METADATA +1 -1
- {ethyca_fides-2.57.1b7.dist-info → ethyca_fides-2.57.1b9.dist-info}/RECORD +221 -216
- fides/_version.py +3 -3
- fides/api/api/v1/endpoints/generic_overrides.py +43 -6
- fides/api/main.py +4 -1
- fides/api/models/attachment.py +5 -5
- fides/api/models/connectionconfig.py +1 -1
- fides/api/oauth/utils.py +11 -11
- fides/api/schemas/dataset.py +22 -2
- fides/api/service/privacy_request/request_runner_service.py +8 -4
- fides/api/service/storage/s3.py +119 -59
- fides/api/tasks/__init__.py +3 -1
- fides/ui-build/static/admin/404.html +1 -1
- fides/ui-build/static/admin/_next/static/chunks/1100-053fc6b76c65a00f.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{1150-d4a5eef84e70de22.js → 1150-035a721a04f4451e.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/1376-5cea5ef9362215e8.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{2397-c6d0dcb3b921555f.js → 2397-ee53235fb21b5e97.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{255-bf1797f78249d090.js → 255-7db55b0e3a0f9dea.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/2fbcc6de-a6c61724c327e9fa.js +8 -0
- fides/ui-build/static/admin/_next/static/chunks/{3086-d099019708303444.js → 3086-b5054ec2c75700b9.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{3320-317483e6c10bae51.js → 3320-5dd62a256ecfc9c3.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{355-6a87b50acf54e985.js → 355-8a77c9a1cd027f2e.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/3615-5e2d062d684b8fa1.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{3855-4d5d936a58a0dd5f.js → 3855-b6b7865dedd7bc2a.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{3872-2b2bf5ebd4b0a70f.js → 3872-4e053c20d546f027.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{3662-6a0cafa3023aa7a2.js → 4060-8d165e1236ea521a.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{4481-f2f57e7a75a90e79.js → 4481-142e5a922d5a5548.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{4723-1a785d558dfb6441.js → 4723-0a3c5e2ce143a7d0.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{5258-a05dcab2f9315dab.js → 5258-0658dc2274df6832.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/5277-e8a036319456127f.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{5480-c6c1fb87006e471a.js → 5480-f49696df5e8ae500.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{5487-509639439bf9fb46.js → 5487-3ad50d21cdbc9209.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/570-c99f07161bd339cd.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{5826-e3970cd9440be33b.js → 5826-e5dcb4e68cfe6289.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/5973-9c58e4cce2f343a8.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/605-e692e9cfea2e2cb8.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/6060-cb1ab5be7067bf7b.js +4 -0
- fides/ui-build/static/admin/_next/static/chunks/{6315-daf94fa7520fb253.js → 6315-fa1519cdf080f42d.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{6372-41afe1e6a9181cc7.js → 6372-ca9c12ac8902365b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/6527-0eed08abe252a918.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/678d4732-50255cc09048e643.js +2 -0
- fides/ui-build/static/admin/_next/static/chunks/{6853-7f95c36e396d3fb8.js → 6853-8941824350c3c1a8.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{6954-f7daf613febc36ef.js → 6954-3b887fb444f9228c.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{7088.0e7c92a7cbb57562.js → 7088.eb76fca286e5f2e6.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{7434-3d4a0beb84ec57f7.js → 7434-e6fc02c2dd852991.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{7751-130668529ab1d0b6.js → 7751-a8f31c062d4cb09d.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{79-1c326c00cf111c00.js → 79-f9b948ebb186900f.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{7980-91800d54c5964ba3.js → 7980-4bd08957448dea32.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/7c79804f.7a7112aece470725.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{8433-b2a96b825124b596.js → 8433-b3008ecaf9834e7f.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{8499-34620330ecf2ac53.js → 8499-43606100edf42fdf.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/8702-d1c8296f9f6afc10.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{5908-532dfbc9d930f635.js → 9014-eeae6f581158e645.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{9046-e7b9a3fd010b01ad.js → 9046-04bd7becea207cb1.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/905-8ab919e7b274ed50.js +8 -0
- fides/ui-build/static/admin/_next/static/chunks/9187-851756440f79cd75.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/9282-2bfbdca45e84e810.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/9327-2cba327d10586683.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{9392.97b2e3327dceb7c9.js → 9392.da35a8e778812d91.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/9676.f297a1347ac09c56.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/9767-1a23925d2cb27b51.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{9999-8600f6f495a80b38.js → 9999-637e0e5341f15f4a.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/e3251fe7-5777b5d778e6fffa.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/main-24f422f93845a596.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/{main-app-2650f704701c6a7b.js → main-app-94a0711202e08b15.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{404-8e0baa6e128803ab.js → 404-b202c0d8f6fc75c3.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/_app-44256886387d7e3e.js +923 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/add-systems/{manual-f8c0b05aae0bbcd1.js → manual-c2705210ce986109.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/add-systems/{multiple-6a7208eee5e588fb.js → multiple-ba975134a85588f8.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{add-systems-a33f82e79cb09478.js → add-systems-d258f0c25fa020bf.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{ant-poc-39267961e03be6c5.js → ant-poc-b9932971a479f3a7.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/configure/{add-vendors-ba0c5fa9764cbd89.js → add-vendors-b34e5324461d0c87.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/configure-723cc3d4f5740ea6.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-experience/{[id]-c02510104f9e503a.js → [id]-cf51752eb0902233.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-experience/{new-e96415629f3b4223.js → new-be194737b41ccec9.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/{privacy-experience-ed38f18c095141fe.js → privacy-experience-c946b33b0322b8ad.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-notices/{[id]-66827da90b8a2d1e.js → [id]-72251b48e2e03a1e.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-notices/{new-13d48f980bf707e5.js → new-9611dd42856d6062.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/{privacy-notices-7339b3cdf5d4da32.js → privacy-notices-ea57f9d6ad17e957.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/{properties-b5b3196eba90246a.js → properties-e5748812ba055a56.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/{reporting-38b8ec1a221610ff.js → reporting-ae66e1a7e146a4de.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{consent-df2388d953c85c2a.js → consent-39d65f13cc8f1cf8.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]/{[resourceUrn]-5e851b9f27bda8a4.js → [resourceUrn]-ac033a16f043e6f9.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects/{[projectUrn]-9f9112b22fdfb32a.js → [projectUrn]-a29850536c85d4b8.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/{projects-ddca867936c89a72.js → projects-c44ce244122e96d5.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/resources/{[resourceUrn]-85e3d6f1b2afd3e7.js → [resourceUrn]-71e26d262afcaea5.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/{resources-9831226436d884b5.js → resources-305555b74c357bf2.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{data-catalog-1a3bb713fc7bc298.js → data-catalog-900004e402c31797.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/[monitorId]/{[systemId]-5892ca5d93ea6165.js → [systemId]-5182d356672a3b02.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/{[monitorId]-5c37c3ad1c3cfba5.js → [monitorId]-7c74373a4d666a3d.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center-02439d3aeecfb4b9.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/{activity-a0749240265da17d.js → activity-11b3ce9f61d9bfe9.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/detection/{[resourceUrn]-68122dbf449a11b4.js → [resourceUrn]-054ca46a782e99a5.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/{detection-0ceaf3c555e84714.js → detection-b75dd3e4306ac18e.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/discovery/{[resourceUrn]-22c27fe0f898ad2a.js → [resourceUrn]-1da20aeb6fc995e4.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/{discovery-8f2b102e19b0b8f2.js → discovery-cad50b0cc6d1050c.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{datamap-819ac99e7a56465a.js → datamap-8cb714cdd44ac40e.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/[collectionName]/[...subfieldNames]-d79551d4c64c398c.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/[collectionName]-7e5df4a0de7540bb.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/{[datasetId]-aaedf8f2a849c97f.js → [datasetId]-6ba18f92ba561114.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/new-803c1b577ab17ae3.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset-fa743ddc7f89d76b.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection/{[id]-f68c3ee92505994f.js → [id]-bbe1ca2793798e6b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection/{new-89bc670d278e3749.js → new-abc17fef69cd951b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection-a78a73b65929853a.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/fides-js-docs-80b241bf6cddb72e.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/{index-1072281d6cfe8295.js → index-bfaacdb55a5a6c9f.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/integrations/{[id]-3742c349e9a0020d.js → [id]-d4329043219fed9b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{integrations-577b95cb0006f387.js → integrations-adb6aced3bdb4899.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/messaging/{[id]-268918d8c1dfe82a.js → [id]-ad02e019b2467958.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/messaging/{add-template-cd75949bee7497b6.js → add-template-f9693cb6a0b7ded8.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/messaging-1e60754abec1ee6b.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/{[id]-d1f4178b8a7e2145.js → [id]-fe765154315782cf.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/messaging-f5f7a8069909ef24.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/storage-9f7eaad05e5b9292.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/{configure-37e800a20e654064.js → configure-2987edc77388e85a.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{privacy-requests-729fa8ed0f10bc8e.js → privacy-requests-d85c0d16ba09ba35.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/properties/{[id]-92145503c4d2d75e.js → [id]-94e2faa73dd6a3e6.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/properties/{add-property-ab94805694ebd35c.js → add-property-630a6a3dd6502ba6.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{properties-5e623dcd92418638.js → properties-20ca2f963906674b.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/reporting/datamap-afedc48ef4e7f858.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{about-175d39bdd74f148c.js → about-a49d0f84cf0cf05e.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/consent-89524101b7279f6e.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{custom-fields-1262d596c0cdcd81.js → custom-fields-52d030b1db2ca1b9.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{domain-records-f0c6e6034d37dbcf.js → domain-records-fa42d8f18df44927.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/domains-24cba38685dc872c.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{email-templates-6ee49492a7769f89.js → email-templates-6fd6071e2009b8f2.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{locations-deb754d42982562b.js → locations-66c757325cb58467.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{organization-f45920358a405167.js → organization-a08693d0d1e10bc8.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/{regulations-f9e97decfe56b018.js → regulations-c6c239996cfa6ae8.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/systems/configure/[id]/test-datasets-151571cff4e85894.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/systems/configure/{[id]-c234398ee8265485.js → [id]-d3ea9034461511cd.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{systems-4d6a17a7a24aca97.js → systems-abd68fc5ddde5482.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{taxonomy-46f47c04a01319cf.js → taxonomy-16b4d75c49276add.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/user-management/profile/{[id]-5b752ba934baee94.js → [id]-78eaf933f755bfe8.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/{user-management-4fbb29cf0a611aae.js → user-management-6c9ad62479a7d03e.js} +1 -1
- fides/ui-build/static/admin/_next/static/chunks/{webpack-815e3c35038201da.js → webpack-2c7ccac5843c4d8e.js} +1 -1
- fides/ui-build/static/admin/_next/static/css/{dd9922a434d21e22.css → 113d823fe71f6af0.css} +1 -1
- fides/ui-build/static/admin/_next/static/css/ab65b8cc3144bfc8.css +1 -0
- fides/ui-build/static/admin/_next/static/yhm3LM_VFpK2KeFRFEQyN/_buildManifest.js +1 -0
- fides/ui-build/static/admin/_next/static/yhm3LM_VFpK2KeFRFEQyN/_ssgManifest.js +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/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-ext-gpp.js +1 -1
- fides/ui-build/static/admin/lib/fides-headless.js +1 -1
- fides/ui-build/static/admin/lib/fides-tcf.js +3 -3
- fides/ui-build/static/admin/lib/fides.js +2 -2
- fides/ui-build/static/admin/login/[provider].html +1 -1
- fides/ui-build/static/admin/login.html +1 -1
- fides/ui-build/static/admin/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.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/1376-c177d8d0c60b1166.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/1995-0e4fc4f7b44ed72b.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/2201-0452b4135058f0fc.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/2780-8328de94968d05e4.js +0 -4
- fides/ui-build/static/admin/_next/static/chunks/3005-373de16453ed7eea.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/302-fb0e3cd140c4364d.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/3967-845c902667e47c4f.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/3e38ba78-4487e45fd4ed2479.js +0 -2
- fides/ui-build/static/admin/_next/static/chunks/4833-a85bd5d25ebc40c4.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/5246-ac8b0fcb44b00af7.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/5960-8895f51b30c35798.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/6362-0ca70f8cfd020723.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/7495-b7fa6fdbd910bd72.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/7c79804f.26834f883d5ad770.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/8837-cf26e5ca1ae5aaf5.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/9282-6ee061da1eb51d65.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/9676.f4d5977a5f148797.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/main-ce7f38a12ea8c223.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/_app-e53d13729068a001.js +0 -909
- fides/ui-build/static/admin/_next/static/chunks/pages/consent/configure-1af99ffa7a507e86.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center-4fac7e0a54eebc32.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/[collectionName]/[...subfieldNames]-259d4a94861afe2b.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/[collectionName]-25283f5bcac8fa73.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset/new-45016545c099e183.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/dataset-5ddd3cd7d29e89c0.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection-61adfcd5f7f69101.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/messaging-5a161e167c251519.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/messaging-c3e234ad95e6e213.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/storage-347e203faa31716f.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/reporting/datamap-710839776b9995ce.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/consent-ff6edba56dfec090.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/settings/domains-ad368857e86fe01b.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/systems/configure/[id]/test-datasets-ae133b6e8e1107f2.js +0 -1
- fides/ui-build/static/admin/_next/static/dctUooMB4AAq5YqgLKNt9/_buildManifest.js +0 -1
- fides/ui-build/static/admin/_next/static/dctUooMB4AAq5YqgLKNt9/_ssgManifest.js +0 -1
- {ethyca_fides-2.57.1b7.dist-info → ethyca_fides-2.57.1b9.dist-info}/LICENSE +0 -0
- {ethyca_fides-2.57.1b7.dist-info → ethyca_fides-2.57.1b9.dist-info}/WHEEL +0 -0
- {ethyca_fides-2.57.1b7.dist-info → ethyca_fides-2.57.1b9.dist-info}/entry_points.txt +0 -0
- {ethyca_fides-2.57.1b7.dist-info → ethyca_fides-2.57.1b9.dist-info}/top_level.txt +0 -0
- /fides/ui-build/static/admin/_next/static/chunks/pages/user-management/{new-d6717378b42982d5.js → new-be690621a944bfe2.js} +0 -0
@@ -1 +0,0 @@
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5960],{52033:function(t,e,n){var r=n(26194),i=n(26789)(r);t.exports=i},98129:function(t,e,n){var r=n(52033);t.exports=function(t,e){var n=[];return r(t,function(t,r,i){e(t,r,i)&&n.push(t)}),n}},49819:function(t,e,n){var r=n(18911)();t.exports=r},26194:function(t,e,n){var r=n(49819),i=n(50098);t.exports=function(t,e){return t&&r(t,e,i)}},75733:function(t){t.exports=function(t,e,n){var r=-1,i=t.length;e<0&&(e=-e>i?0:i+e),(n=n>i?i:n)<0&&(n+=i),i=e>n?0:n-e>>>0,e>>>=0;for(var o=Array(i);++r<i;)o[r]=t[r+e];return o}},70830:function(t,e,n){var r=n(76747),i=n(31159),o=n(64373),u=n(37948);t.exports=function(t,e){return e=r(e,t),null==(t=o(t,e))||delete t[u(i(e))]}},26789:function(t,e,n){var r=n(80068);t.exports=function(t,e){return function(n,i){if(null==n)return n;if(!r(n))return t(n,i);for(var o=n.length,u=e?o:-1,a=Object(n);(e?u--:++u<o)&&!1!==i(a[u],u,a););return n}}},18911:function(t){t.exports=function(t){return function(e,n,r){for(var i=-1,o=Object(e),u=r(e),a=u.length;a--;){var l=u[t?a:++i];if(!1===n(o[l],l,o))break}return e}}},64373:function(t,e,n){var r=n(79867),i=n(75733);t.exports=function(t,e){return e.length<2?t:r(t,i(e,0,-1))}},69238:function(t,e,n){var r=n(10263),i=n(98129),o=n(89278),u=n(19785);t.exports=function(t,e){return(u(t)?r:i)(t,o(e,3))}},90104:function(t,e,n){var r=n(20186),i=n(3533),o=n(2900),u=n(19785),a=n(80068),l=n(43854),s=n(56016),c=n(48519),h=Object.prototype.hasOwnProperty;t.exports=function(t){if(null==t)return!0;if(a(t)&&(u(t)||"string"==typeof t||"function"==typeof t.splice||l(t)||c(t)||o(t)))return!t.length;var e=i(t);if("[object Map]"==e||"[object Set]"==e)return!t.size;if(s(t))return!r(t).length;for(var n in t)if(h.call(t,n))return!1;return!0}},31159:function(t){t.exports=function(t){var e=null==t?0:t.length;return e?t[e-1]:void 0}},43551:function(t,e,n){var r=n(70830);t.exports=function(t,e){return null==t||r(t,e)}},51901:function(){},46080:function(t,e,n){"use strict";n.d(e,{t8:function(){return p},jD:function(){return h},QZ:function(){return y},IY:function(){return f},Ly:function(){return g},pB:function(){return m},oW:function(){return d},oC:function(){return rf},Ql:function(){return rm},FD:function(){return rv},X6:function(){return rA},Cz:function(){return rT},Z_:function(){return nQ},yF:function(){return rr},q7:function(){return na},n3:function(){return n8},Ki:function(){return nM},wQ:function(){return e5},Qj:function(){return e1},ZB:function(){return nT},Qu:function(){return nu},lM:function(){return nR},OQ:function(){return nq},oI:function(){return nx},Zp:function(){return e7},t_:function(){return nB},JU:function(){return n5},WD:function(){return nl},xx:function(){return nF},wv:function(){return nL},J6:function(){return no},S2:function(){return nH},W0:function(){return nn},dW:function(){return n4},Rf:function(){return nS},RX:function(){return ne},f5:function(){return nr},lp:function(){return nw},OW:function(){return n1},Hm:function(){return nU},$i:function(){return nz},so:function(){return ru},k5:function(){return e2},Ky:function(){return e3},J3:function(){return e4},RY:function(){return nK},s$:function(){return nX},Q5:function(){return n$},N5:function(){return nC},Vt:function(){return e8},kE:function(){return nb},J$:function(){return n_},nb:function(){return nI},PS:function(){return nm},hO:function(){return rl},m:function(){return nk},oj:function(){return nA},_2:function(){return nE},VV:function(){return rn},be:function(){return rs},B1:function(){return ra}});var r,i,o,u,a,l,s,c,h,f,d,p,y,g,m,v={value:()=>{}};function x(){for(var t,e=0,n=arguments.length,r={};e<n;++e){if(!(t=arguments[e]+"")||t in r||/[\s.]/.test(t))throw Error("illegal type: "+t);r[t]=[]}return new w(r)}function w(t){this._=t}function _(t,e,n){for(var r=0,i=t.length;r<i;++r)if(t[r].name===e){t[r]=v,t=t.slice(0,r).concat(t.slice(r+1));break}return null!=n&&t.push({name:e,value:n}),t}function b(){}function M(t){return null==t?b:function(){return this.querySelector(t)}}function E(){return[]}function k(t){return null==t?E:function(){return this.querySelectorAll(t)}}function A(t){return function(){return this.matches(t)}}function z(t){return function(e){return e.matches(t)}}w.prototype=x.prototype={constructor:w,on:function(t,e){var n,r=this._,i=(t+"").trim().split(/^|\s+/).map(function(t){var e="",n=t.indexOf(".");if(n>=0&&(e=t.slice(n+1),t=t.slice(0,n)),t&&!r.hasOwnProperty(t))throw Error("unknown type: "+t);return{type:t,name:e}}),o=-1,u=i.length;if(arguments.length<2){for(;++o<u;)if((n=(t=i[o]).type)&&(n=function(t,e){for(var n,r=0,i=t.length;r<i;++r)if((n=t[r]).name===e)return n.value}(r[n],t.name)))return n;return}if(null!=e&&"function"!=typeof e)throw Error("invalid callback: "+e);for(;++o<u;)if(n=(t=i[o]).type)r[n]=_(r[n],t.name,e);else if(null==e)for(n in r)r[n]=_(r[n],t.name,null);return this},copy:function(){var t={},e=this._;for(var n in e)t[n]=e[n].slice();return new w(t)},call:function(t,e){if((n=arguments.length-2)>0)for(var n,r,i=Array(n),o=0;o<n;++o)i[o]=arguments[o+2];if(!this._.hasOwnProperty(t))throw Error("unknown type: "+t);for(r=this._[t],o=0,n=r.length;o<n;++o)r[o].value.apply(e,i)},apply:function(t,e,n){if(!this._.hasOwnProperty(t))throw Error("unknown type: "+t);for(var r=this._[t],i=0,o=r.length;i<o;++i)r[i].value.apply(e,n)}};var $=Array.prototype.find;function N(){return this.firstElementChild}var S=Array.prototype.filter;function I(){return Array.from(this.children)}function T(t){return Array(t.length)}function P(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}function B(t,e,n,r,i,o){for(var u,a=0,l=e.length,s=o.length;a<s;++a)(u=e[a])?(u.__data__=o[a],r[a]=u):n[a]=new P(t,o[a]);for(;a<l;++a)(u=e[a])&&(i[a]=u)}function H(t,e,n,r,i,o,u){var a,l,s,c=new Map,h=e.length,f=o.length,d=Array(h);for(a=0;a<h;++a)(l=e[a])&&(d[a]=s=u.call(l,l.__data__,a,e)+"",c.has(s)?i[a]=l:c.set(s,l));for(a=0;a<f;++a)s=u.call(t,o[a],a,o)+"",(l=c.get(s))?(r[a]=l,l.__data__=o[a],c.delete(s)):n[a]=new P(t,o[a]);for(a=0;a<h;++a)(l=e[a])&&c.get(d[a])===l&&(i[a]=l)}function O(t){return t.__data__}function X(t,e){return t<e?-1:t>e?1:t>=e?0:NaN}P.prototype={constructor:P,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,e){return this._parent.insertBefore(t,e)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};var C="http://www.w3.org/1999/xhtml",L={svg:"http://www.w3.org/2000/svg",xhtml:C,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function Y(t){var e=t+="",n=e.indexOf(":");return n>=0&&"xmlns"!==(e=t.slice(0,n))&&(t=t.slice(n+1)),L.hasOwnProperty(e)?{space:L[e],local:t}:t}function R(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function j(t,e){return t.style.getPropertyValue(e)||R(t).getComputedStyle(t,null).getPropertyValue(e)}function V(t){return t.trim().split(/^|\s+/)}function q(t){return t.classList||new D(t)}function D(t){this._node=t,this._names=V(t.getAttribute("class")||"")}function F(t,e){for(var n=q(t),r=-1,i=e.length;++r<i;)n.add(e[r])}function K(t,e){for(var n=q(t),r=-1,i=e.length;++r<i;)n.remove(e[r])}function W(){this.textContent=""}function Z(){this.innerHTML=""}function Q(){this.nextSibling&&this.parentNode.appendChild(this)}function U(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function G(t){var e=Y(t);return(e.local?function(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}:function(t){return function(){var e=this.ownerDocument,n=this.namespaceURI;return n===C&&e.documentElement.namespaceURI===C?e.createElement(t):e.createElementNS(n,t)}})(e)}function J(){return null}function tt(){var t=this.parentNode;t&&t.removeChild(this)}function te(){var t=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function tn(){var t=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function tr(t){return function(){var e=this.__on;if(e){for(var n,r=0,i=-1,o=e.length;r<o;++r)(n=e[r],t.type&&n.type!==t.type||n.name!==t.name)?e[++i]=n:this.removeEventListener(n.type,n.listener,n.options);++i?e.length=i:delete this.__on}}}function ti(t,e,n){return function(){var r,i=this.__on,o=function(t){e.call(this,t,this.__data__)};if(i){for(var u=0,a=i.length;u<a;++u)if((r=i[u]).type===t.type&&r.name===t.name){this.removeEventListener(r.type,r.listener,r.options),this.addEventListener(r.type,r.listener=o,r.options=n),r.value=e;return}}this.addEventListener(t.type,o,n),r={type:t.type,name:t.name,value:e,listener:o,options:n},i?i.push(r):this.__on=[r]}}function to(t,e,n){var r=R(t),i=r.CustomEvent;"function"==typeof i?i=new i(e,n):(i=r.document.createEvent("Event"),n?(i.initEvent(e,n.bubbles,n.cancelable),i.detail=n.detail):i.initEvent(e,!1,!1)),t.dispatchEvent(i)}D.prototype={add:function(t){0>this._names.indexOf(t)&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},remove:function(t){var e=this._names.indexOf(t);e>=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};var tu=[null];function ta(t,e){this._groups=t,this._parents=e}function tl(){return new ta([[document.documentElement]],tu)}function ts(t){return"string"==typeof t?new ta([[document.querySelector(t)]],[document.documentElement]):new ta([[t]],tu)}function tc(t,e){if(t=function(t){let e;for(;e=t.sourceEvent;)t=e;return t}(t),void 0===e&&(e=t.currentTarget),e){var n=e.ownerSVGElement||e;if(n.createSVGPoint){var r=n.createSVGPoint();return r.x=t.clientX,r.y=t.clientY,[(r=r.matrixTransform(e.getScreenCTM().inverse())).x,r.y]}if(e.getBoundingClientRect){var i=e.getBoundingClientRect();return[t.clientX-i.left-e.clientLeft,t.clientY-i.top-e.clientTop]}}return[t.pageX,t.pageY]}ta.prototype=tl.prototype={constructor:ta,select:function(t){"function"!=typeof t&&(t=M(t));for(var e=this._groups,n=e.length,r=Array(n),i=0;i<n;++i)for(var o,u,a=e[i],l=a.length,s=r[i]=Array(l),c=0;c<l;++c)(o=a[c])&&(u=t.call(o,o.__data__,c,a))&&("__data__"in o&&(u.__data__=o.__data__),s[c]=u);return new ta(r,this._parents)},selectAll:function(t){if("function"==typeof t){var e;e=t,t=function(){var t;return t=e.apply(this,arguments),null==t?[]:Array.isArray(t)?t:Array.from(t)}}else t=k(t);for(var n=this._groups,r=n.length,i=[],o=[],u=0;u<r;++u)for(var a,l=n[u],s=l.length,c=0;c<s;++c)(a=l[c])&&(i.push(t.call(a,a.__data__,c,l)),o.push(a));return new ta(i,o)},selectChild:function(t){var e;return this.select(null==t?N:(e="function"==typeof t?t:z(t),function(){return $.call(this.children,e)}))},selectChildren:function(t){var e;return this.selectAll(null==t?I:(e="function"==typeof t?t:z(t),function(){return S.call(this.children,e)}))},filter:function(t){"function"!=typeof t&&(t=A(t));for(var e=this._groups,n=e.length,r=Array(n),i=0;i<n;++i)for(var o,u=e[i],a=u.length,l=r[i]=[],s=0;s<a;++s)(o=u[s])&&t.call(o,o.__data__,s,u)&&l.push(o);return new ta(r,this._parents)},data:function(t,e){if(!arguments.length)return Array.from(this,O);var n=e?H:B,r=this._parents,i=this._groups;"function"!=typeof t&&(v=t,t=function(){return v});for(var o=i.length,u=Array(o),a=Array(o),l=Array(o),s=0;s<o;++s){var c=r[s],h=i[s],f=h.length,d="object"==typeof(m=t.call(c,c&&c.__data__,s,r))&&"length"in m?m:Array.from(m),p=d.length,y=a[s]=Array(p),g=u[s]=Array(p);n(c,h,y,g,l[s]=Array(f),d,e);for(var m,v,x,w,_=0,b=0;_<p;++_)if(x=y[_]){for(_>=b&&(b=_+1);!(w=g[b])&&++b<p;);x._next=w||null}}return(u=new ta(u,r))._enter=a,u._exit=l,u},enter:function(){return new ta(this._enter||this._groups.map(T),this._parents)},exit:function(){return new ta(this._exit||this._groups.map(T),this._parents)},join:function(t,e,n){var r=this.enter(),i=this,o=this.exit();return"function"==typeof t?(r=t(r))&&(r=r.selection()):r=r.append(t+""),null!=e&&(i=e(i))&&(i=i.selection()),null==n?o.remove():n(o),r&&i?r.merge(i).order():i},merge:function(t){for(var e=t.selection?t.selection():t,n=this._groups,r=e._groups,i=n.length,o=r.length,u=Math.min(i,o),a=Array(i),l=0;l<u;++l)for(var s,c=n[l],h=r[l],f=c.length,d=a[l]=Array(f),p=0;p<f;++p)(s=c[p]||h[p])&&(d[p]=s);for(;l<i;++l)a[l]=n[l];return new ta(a,this._parents)},selection:function(){return this},order:function(){for(var t=this._groups,e=-1,n=t.length;++e<n;)for(var r,i=t[e],o=i.length-1,u=i[o];--o>=0;)(r=i[o])&&(u&&4^r.compareDocumentPosition(u)&&u.parentNode.insertBefore(r,u),u=r);return this},sort:function(t){function e(e,n){return e&&n?t(e.__data__,n.__data__):!e-!n}t||(t=X);for(var n=this._groups,r=n.length,i=Array(r),o=0;o<r;++o){for(var u,a=n[o],l=a.length,s=i[o]=Array(l),c=0;c<l;++c)(u=a[c])&&(s[c]=u);s.sort(e)}return new ta(i,this._parents).order()},call:function(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this},nodes:function(){return Array.from(this)},node:function(){for(var t=this._groups,e=0,n=t.length;e<n;++e)for(var r=t[e],i=0,o=r.length;i<o;++i){var u=r[i];if(u)return u}return null},size:function(){let t=0;for(let e of this)++t;return t},empty:function(){return!this.node()},each:function(t){for(var e=this._groups,n=0,r=e.length;n<r;++n)for(var i,o=e[n],u=0,a=o.length;u<a;++u)(i=o[u])&&t.call(i,i.__data__,u,o);return this},attr:function(t,e){var n=Y(t);if(arguments.length<2){var r=this.node();return n.local?r.getAttributeNS(n.space,n.local):r.getAttribute(n)}return this.each((null==e?n.local?function(t){return function(){this.removeAttributeNS(t.space,t.local)}}:function(t){return function(){this.removeAttribute(t)}}:"function"==typeof e?n.local?function(t,e){return function(){var n=e.apply(this,arguments);null==n?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,n)}}:function(t,e){return function(){var n=e.apply(this,arguments);null==n?this.removeAttribute(t):this.setAttribute(t,n)}}:n.local?function(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}:function(t,e){return function(){this.setAttribute(t,e)}})(n,e))},style:function(t,e,n){return arguments.length>1?this.each((null==e?function(t){return function(){this.style.removeProperty(t)}}:"function"==typeof e?function(t,e,n){return function(){var r=e.apply(this,arguments);null==r?this.style.removeProperty(t):this.style.setProperty(t,r,n)}}:function(t,e,n){return function(){this.style.setProperty(t,e,n)}})(t,e,null==n?"":n)):j(this.node(),t)},property:function(t,e){return arguments.length>1?this.each((null==e?function(t){return function(){delete this[t]}}:"function"==typeof e?function(t,e){return function(){var n=e.apply(this,arguments);null==n?delete this[t]:this[t]=n}}:function(t,e){return function(){this[t]=e}})(t,e)):this.node()[t]},classed:function(t,e){var n=V(t+"");if(arguments.length<2){for(var r=q(this.node()),i=-1,o=n.length;++i<o;)if(!r.contains(n[i]))return!1;return!0}return this.each(("function"==typeof e?function(t,e){return function(){(e.apply(this,arguments)?F:K)(this,t)}}:e?function(t){return function(){F(this,t)}}:function(t){return function(){K(this,t)}})(n,e))},text:function(t){return arguments.length?this.each(null==t?W:("function"==typeof t?function(t){return function(){var e=t.apply(this,arguments);this.textContent=null==e?"":e}}:function(t){return function(){this.textContent=t}})(t)):this.node().textContent},html:function(t){return arguments.length?this.each(null==t?Z:("function"==typeof t?function(t){return function(){var e=t.apply(this,arguments);this.innerHTML=null==e?"":e}}:function(t){return function(){this.innerHTML=t}})(t)):this.node().innerHTML},raise:function(){return this.each(Q)},lower:function(){return this.each(U)},append:function(t){var e="function"==typeof t?t:G(t);return this.select(function(){return this.appendChild(e.apply(this,arguments))})},insert:function(t,e){var n="function"==typeof t?t:G(t),r=null==e?J:"function"==typeof e?e:M(e);return this.select(function(){return this.insertBefore(n.apply(this,arguments),r.apply(this,arguments)||null)})},remove:function(){return this.each(tt)},clone:function(t){return this.select(t?tn:te)},datum:function(t){return arguments.length?this.property("__data__",t):this.node().__data__},on:function(t,e,n){var r,i,o=(t+"").trim().split(/^|\s+/).map(function(t){var e="",n=t.indexOf(".");return n>=0&&(e=t.slice(n+1),t=t.slice(0,n)),{type:t,name:e}}),u=o.length;if(arguments.length<2){var a=this.node().__on;if(a){for(var l,s=0,c=a.length;s<c;++s)for(r=0,l=a[s];r<u;++r)if((i=o[r]).type===l.type&&i.name===l.name)return l.value}return}for(r=0,a=e?ti:tr;r<u;++r)this.each(a(o[r],e,n));return this},dispatch:function(t,e){return this.each(("function"==typeof e?function(t,e){return function(){return to(this,t,e.apply(this,arguments))}}:function(t,e){return function(){return to(this,t,e)}})(t,e))},[Symbol.iterator]:function*(){for(var t=this._groups,e=0,n=t.length;e<n;++e)for(var r,i=t[e],o=0,u=i.length;o<u;++o)(r=i[o])&&(yield r)}};let th={passive:!1},tf={capture:!0,passive:!1};function td(t){t.stopImmediatePropagation()}function tp(t){t.preventDefault(),t.stopImmediatePropagation()}function ty(t){var e=t.document.documentElement,n=ts(t).on("dragstart.drag",tp,tf);"onselectstart"in e?n.on("selectstart.drag",tp,tf):(e.__noselect=e.style.MozUserSelect,e.style.MozUserSelect="none")}function tg(t,e){var n=t.document.documentElement,r=ts(t).on("dragstart.drag",null);e&&(r.on("click.drag",tp,tf),setTimeout(function(){r.on("click.drag",null)},0)),"onselectstart"in n?r.on("selectstart.drag",null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}var tm=t=>()=>t;function tv(t,{sourceEvent:e,subject:n,target:r,identifier:i,active:o,x:u,y:a,dx:l,dy:s,dispatch:c}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:e,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:o,enumerable:!0,configurable:!0},x:{value:u,enumerable:!0,configurable:!0},y:{value:a,enumerable:!0,configurable:!0},dx:{value:l,enumerable:!0,configurable:!0},dy:{value:s,enumerable:!0,configurable:!0},_:{value:c}})}function tx(t){return!t.ctrlKey&&!t.button}function tw(){return this.parentNode}function t_(t,e){return null==e?{x:t.x,y:t.y}:e}function tb(){return navigator.maxTouchPoints||"ontouchstart"in this}function tM(){var t,e,n,r,i=tx,o=tw,u=t_,a=tb,l={},s=x("start","drag","end"),c=0,h=0;function f(t){t.on("mousedown.drag",d).filter(a).on("touchstart.drag",g).on("touchmove.drag",m,th).on("touchend.drag touchcancel.drag",v).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function d(u,a){if(!r&&i.call(this,u,a)){var l=w(this,o.call(this,u,a),u,a,"mouse");l&&(ts(u.view).on("mousemove.drag",p,tf).on("mouseup.drag",y,tf),ty(u.view),td(u),n=!1,t=u.clientX,e=u.clientY,l("start",u))}}function p(r){if(tp(r),!n){var i=r.clientX-t,o=r.clientY-e;n=i*i+o*o>h}l.mouse("drag",r)}function y(t){ts(t.view).on("mousemove.drag mouseup.drag",null),tg(t.view,n),tp(t),l.mouse("end",t)}function g(t,e){if(i.call(this,t,e)){var n,r,u=t.changedTouches,a=o.call(this,t,e),l=u.length;for(n=0;n<l;++n)(r=w(this,a,t,e,u[n].identifier,u[n]))&&(td(t),r("start",t,u[n]))}}function m(t){var e,n,r=t.changedTouches,i=r.length;for(e=0;e<i;++e)(n=l[r[e].identifier])&&(tp(t),n("drag",t,r[e]))}function v(t){var e,n,i=t.changedTouches,o=i.length;for(r&&clearTimeout(r),r=setTimeout(function(){r=null},500),e=0;e<o;++e)(n=l[i[e].identifier])&&(td(t),n("end",t,i[e]))}function w(t,e,n,r,i,o){var a,h,d,p=s.copy(),y=tc(o||n,e);if(null!=(d=u.call(t,new tv("beforestart",{sourceEvent:n,target:f,identifier:i,active:c,x:y[0],y:y[1],dx:0,dy:0,dispatch:p}),r)))return a=d.x-y[0]||0,h=d.y-y[1]||0,function n(o,u,s){var g,m=y;switch(o){case"start":l[i]=n,g=c++;break;case"end":delete l[i],--c;case"drag":y=tc(s||u,e),g=c}p.call(o,t,new tv(o,{sourceEvent:u,subject:d,target:f,identifier:i,active:g,x:y[0]+a,y:y[1]+h,dx:y[0]-m[0],dy:y[1]-m[1],dispatch:p}),r)}}return f.filter=function(t){return arguments.length?(i="function"==typeof t?t:tm(!!t),f):i},f.container=function(t){return arguments.length?(o="function"==typeof t?t:tm(t),f):o},f.subject=function(t){return arguments.length?(u="function"==typeof t?t:tm(t),f):u},f.touchable=function(t){return arguments.length?(a="function"==typeof t?t:tm(!!t),f):a},f.on=function(){var t=s.on.apply(s,arguments);return t===s?f:t},f.clickDistance=function(t){return arguments.length?(h=(t=+t)*t,f):Math.sqrt(h)},f}function tE(t){return((t=Math.exp(t))+1/t)/2}tv.prototype.on=function(){var t=this._.on.apply(this._,arguments);return t===this._?this:t};var tk,tA,tz=function t(e,n,r){function i(t,i){var o,u,a=t[0],l=t[1],s=t[2],c=i[0],h=i[1],f=i[2],d=c-a,p=h-l,y=d*d+p*p;if(y<1e-12)u=Math.log(f/s)/e,o=function(t){return[a+t*d,l+t*p,s*Math.exp(e*t*u)]};else{var g=Math.sqrt(y),m=(f*f-s*s+r*y)/(2*s*n*g),v=(f*f-s*s-r*y)/(2*f*n*g),x=Math.log(Math.sqrt(m*m+1)-m);u=(Math.log(Math.sqrt(v*v+1)-v)-x)/e,o=function(t){var r,i,o=t*u,c=tE(x),h=s/(n*g)*(((r=Math.exp(2*(r=e*o+x)))-1)/(r+1)*c-((i=Math.exp(i=x))-1/i)/2);return[a+h*d,l+h*p,s*c/tE(e*o+x)]}}return o.duration=1e3*u*e/Math.SQRT2,o}return i.rho=function(e){var n=Math.max(.001,+e),r=n*n;return t(n,r,r*r)},i}(Math.SQRT2,2,4),t$=0,tN=0,tS=0,tI=0,tT=0,tP=0,tB="object"==typeof performance&&performance.now?performance:Date,tH="object"==typeof window&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};function tO(){return tT||(tH(tX),tT=tB.now()+tP)}function tX(){tT=0}function tC(){this._call=this._time=this._next=null}function tL(t,e,n){var r=new tC;return r.restart(t,e,n),r}function tY(){tT=(tI=tB.now())+tP,t$=tN=0;try{!function(){tO(),++t$;for(var t,e=tk;e;)(t=tT-e._time)>=0&&e._call.call(void 0,t),e=e._next;--t$}()}finally{t$=0,function(){for(var t,e,n=tk,r=1/0;n;)n._call?(r>n._time&&(r=n._time),t=n,n=n._next):(e=n._next,n._next=null,n=t?t._next=e:tk=e);tA=t,tj(r)}(),tT=0}}function tR(){var t=tB.now(),e=t-tI;e>1e3&&(tP-=e,tI=t)}function tj(t){!t$&&(tN&&(tN=clearTimeout(tN)),t-tT>24?(t<1/0&&(tN=setTimeout(tY,t-tB.now()-tP)),tS&&(tS=clearInterval(tS))):(tS||(tI=tB.now(),tS=setInterval(tR,1e3)),t$=1,tH(tY)))}function tV(t,e,n){var r=new tC;return e=null==e?0:+e,r.restart(n=>{r.stop(),t(n+e)},e,n),r}tC.prototype=tL.prototype={constructor:tC,restart:function(t,e,n){if("function"!=typeof t)throw TypeError("callback is not a function");n=(null==n?tO():+n)+(null==e?0:+e),this._next||tA===this||(tA?tA._next=this:tk=this,tA=this),this._call=t,this._time=n,tj()},stop:function(){this._call&&(this._call=null,this._time=1/0,tj())}};var tq=x("start","end","cancel","interrupt"),tD=[];function tF(t,e,n,r,i,o){var u=t.__transition;if(u){if(n in u)return}else t.__transition={};!function(t,e,n){var r,i=t.__transition;function o(l){var s,c,h,f;if(1!==n.state)return a();for(s in i)if((f=i[s]).name===n.name){if(3===f.state)return tV(o);4===f.state?(f.state=6,f.timer.stop(),f.on.call("interrupt",t,t.__data__,f.index,f.group),delete i[s]):+s<e&&(f.state=6,f.timer.stop(),f.on.call("cancel",t,t.__data__,f.index,f.group),delete i[s])}if(tV(function(){3===n.state&&(n.state=4,n.timer.restart(u,n.delay,n.time),u(l))}),n.state=2,n.on.call("start",t,t.__data__,n.index,n.group),2===n.state){for(s=0,n.state=3,r=Array(h=n.tween.length),c=-1;s<h;++s)(f=n.tween[s].value.call(t,t.__data__,n.index,n.group))&&(r[++c]=f);r.length=c+1}}function u(e){for(var i=e<n.duration?n.ease.call(null,e/n.duration):(n.timer.restart(a),n.state=5,1),o=-1,u=r.length;++o<u;)r[o].call(t,i);5===n.state&&(n.on.call("end",t,t.__data__,n.index,n.group),a())}function a(){for(var r in n.state=6,n.timer.stop(),delete i[e],i)return;delete t.__transition}i[e]=n,n.timer=tL(function(t){n.state=1,n.timer.restart(o,n.delay,n.time),n.delay<=t&&o(t-n.delay)},0,n.time)}(t,n,{name:e,index:r,group:i,on:tq,tween:tD,time:o.time,delay:o.delay,duration:o.duration,ease:o.ease,timer:null,state:0})}function tK(t,e){var n=tZ(t,e);if(n.state>0)throw Error("too late; already scheduled");return n}function tW(t,e){var n=tZ(t,e);if(n.state>3)throw Error("too late; already running");return n}function tZ(t,e){var n=t.__transition;if(!n||!(n=n[e]))throw Error("transition not found");return n}function tQ(t,e){var n,r,i,o=t.__transition,u=!0;if(o){for(i in e=null==e?null:e+"",o){if((n=o[i]).name!==e){u=!1;continue}r=n.state>2&&n.state<5,n.state=6,n.timer.stop(),n.on.call(r?"interrupt":"cancel",t,t.__data__,n.index,n.group),delete o[i]}u&&delete t.__transition}}function tU(t,e){return t=+t,e=+e,function(n){return t*(1-n)+e*n}}var tG=180/Math.PI,tJ={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function t0(t,e,n,r,i,o){var u,a,l;return(u=Math.sqrt(t*t+e*e))&&(t/=u,e/=u),(l=t*n+e*r)&&(n-=t*l,r-=e*l),(a=Math.sqrt(n*n+r*r))&&(n/=a,r/=a,l/=a),t*r<e*n&&(t=-t,e=-e,l=-l,u=-u),{translateX:i,translateY:o,rotate:Math.atan2(e,t)*tG,skewX:Math.atan(l)*tG,scaleX:u,scaleY:a}}function t1(t,e,n,r){function i(t){return t.length?t.pop()+" ":""}return function(o,u){var a,l,s,c,h=[],f=[];return o=t(o),u=t(u),!function(t,r,i,o,u,a){if(t!==i||r!==o){var l=u.push("translate(",null,e,null,n);a.push({i:l-4,x:tU(t,i)},{i:l-2,x:tU(r,o)})}else(i||o)&&u.push("translate("+i+e+o+n)}(o.translateX,o.translateY,u.translateX,u.translateY,h,f),(a=o.rotate)!==(l=u.rotate)?(a-l>180?l+=360:l-a>180&&(a+=360),f.push({i:h.push(i(h)+"rotate(",null,r)-2,x:tU(a,l)})):l&&h.push(i(h)+"rotate("+l+r),(s=o.skewX)!==(c=u.skewX)?f.push({i:h.push(i(h)+"skewX(",null,r)-2,x:tU(s,c)}):c&&h.push(i(h)+"skewX("+c+r),!function(t,e,n,r,o,u){if(t!==n||e!==r){var a=o.push(i(o)+"scale(",null,",",null,")");u.push({i:a-4,x:tU(t,n)},{i:a-2,x:tU(e,r)})}else(1!==n||1!==r)&&o.push(i(o)+"scale("+n+","+r+")")}(o.scaleX,o.scaleY,u.scaleX,u.scaleY,h,f),o=u=null,function(t){for(var e,n=-1,r=f.length;++n<r;)h[(e=f[n]).i]=e.x(t);return h.join("")}}}var t2=t1(function(t){let e=new("function"==typeof DOMMatrix?DOMMatrix:WebKitCSSMatrix)(t+"");return e.isIdentity?tJ:t0(e.a,e.b,e.c,e.d,e.e,e.f)},"px, ","px)","deg)"),t5=t1(function(t){return null==t?tJ:(c||(c=document.createElementNS("http://www.w3.org/2000/svg","g")),c.setAttribute("transform",t),t=c.transform.baseVal.consolidate())?t0((t=t.matrix).a,t.b,t.c,t.d,t.e,t.f):tJ},", ",")",")");function t3(t,e,n){var r=t._id;return t.each(function(){var t=tW(this,r);(t.value||(t.value={}))[e]=n.apply(this,arguments)}),function(t){return tZ(t,r).value[e]}}function t6(t,e,n){t.prototype=e.prototype=n,n.constructor=t}function t7(t,e){var n=Object.create(t.prototype);for(var r in e)n[r]=e[r];return n}function t4(){}var t8="\\s*([+-]?\\d+)\\s*",t9="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",et="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",ee=/^#([0-9a-f]{3,8})$/,en=RegExp(`^rgb\\(${t8},${t8},${t8}\\)$`),er=RegExp(`^rgb\\(${et},${et},${et}\\)$`),ei=RegExp(`^rgba\\(${t8},${t8},${t8},${t9}\\)$`),eo=RegExp(`^rgba\\(${et},${et},${et},${t9}\\)$`),eu=RegExp(`^hsl\\(${t9},${et},${et}\\)$`),ea=RegExp(`^hsla\\(${t9},${et},${et},${t9}\\)$`),el={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};function es(){return this.rgb().formatHex()}function ec(){return this.rgb().formatRgb()}function eh(t){var e,n;return t=(t+"").trim().toLowerCase(),(e=ee.exec(t))?(n=e[1].length,e=parseInt(e[1],16),6===n?ef(e):3===n?new ey(e>>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):8===n?ed(e>>24&255,e>>16&255,e>>8&255,(255&e)/255):4===n?ed(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|240&e,((15&e)<<4|15&e)/255):null):(e=en.exec(t))?new ey(e[1],e[2],e[3],1):(e=er.exec(t))?new ey(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=ei.exec(t))?ed(e[1],e[2],e[3],e[4]):(e=eo.exec(t))?ed(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=eu.exec(t))?e_(e[1],e[2]/100,e[3]/100,1):(e=ea.exec(t))?e_(e[1],e[2]/100,e[3]/100,e[4]):el.hasOwnProperty(t)?ef(el[t]):"transparent"===t?new ey(NaN,NaN,NaN,0):null}function ef(t){return new ey(t>>16&255,t>>8&255,255&t,1)}function ed(t,e,n,r){return r<=0&&(t=e=n=NaN),new ey(t,e,n,r)}function ep(t,e,n,r){var i;return 1==arguments.length?((i=t)instanceof t4||(i=eh(i)),i)?new ey((i=i.rgb()).r,i.g,i.b,i.opacity):new ey:new ey(t,e,n,null==r?1:r)}function ey(t,e,n,r){this.r=+t,this.g=+e,this.b=+n,this.opacity=+r}function eg(){return`#${ew(this.r)}${ew(this.g)}${ew(this.b)}`}function em(){let t=ev(this.opacity);return`${1===t?"rgb(":"rgba("}${ex(this.r)}, ${ex(this.g)}, ${ex(this.b)}${1===t?")":`, ${t})`}`}function ev(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function ex(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function ew(t){return((t=ex(t))<16?"0":"")+t.toString(16)}function e_(t,e,n,r){return r<=0?t=e=n=NaN:n<=0||n>=1?t=e=NaN:e<=0&&(t=NaN),new eM(t,e,n,r)}function eb(t){if(t instanceof eM)return new eM(t.h,t.s,t.l,t.opacity);if(t instanceof t4||(t=eh(t)),!t)return new eM;if(t instanceof eM)return t;var e=(t=t.rgb()).r/255,n=t.g/255,r=t.b/255,i=Math.min(e,n,r),o=Math.max(e,n,r),u=NaN,a=o-i,l=(o+i)/2;return a?(u=e===o?(n-r)/a+(n<r)*6:n===o?(r-e)/a+2:(e-n)/a+4,a/=l<.5?o+i:2-o-i,u*=60):a=l>0&&l<1?0:u,new eM(u,a,l,t.opacity)}function eM(t,e,n,r){this.h=+t,this.s=+e,this.l=+n,this.opacity=+r}function eE(t){return(t=(t||0)%360)<0?t+360:t}function ek(t){return Math.max(0,Math.min(1,t||0))}function eA(t,e,n){return(t<60?e+(n-e)*t/60:t<180?n:t<240?e+(n-e)*(240-t)/60:e)*255}function ez(t,e,n,r,i){var o=t*t,u=o*t;return((1-3*t+3*o-u)*e+(4-6*o+3*u)*n+(1+3*t+3*o-3*u)*r+u*i)/6}t6(t4,eh,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:es,formatHex:es,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return eb(this).formatHsl()},formatRgb:ec,toString:ec}),t6(ey,ep,t7(t4,{brighter(t){return t=null==t?1.4285714285714286:Math.pow(1.4285714285714286,t),new ey(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=null==t?.7:Math.pow(.7,t),new ey(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new ey(ex(this.r),ex(this.g),ex(this.b),ev(this.opacity))},displayable(){return -.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:eg,formatHex:eg,formatHex8:function(){return`#${ew(this.r)}${ew(this.g)}${ew(this.b)}${ew((isNaN(this.opacity)?1:this.opacity)*255)}`},formatRgb:em,toString:em})),t6(eM,function(t,e,n,r){return 1==arguments.length?eb(t):new eM(t,e,n,null==r?1:r)},t7(t4,{brighter(t){return t=null==t?1.4285714285714286:Math.pow(1.4285714285714286,t),new eM(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=null==t?.7:Math.pow(.7,t),new eM(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+(this.h<0)*360,e=isNaN(t)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*e,i=2*n-r;return new ey(eA(t>=240?t-240:t+120,i,r),eA(t,i,r),eA(t<120?t+240:t-120,i,r),this.opacity)},clamp(){return new eM(eE(this.h),ek(this.s),ek(this.l),ev(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let t=ev(this.opacity);return`${1===t?"hsl(":"hsla("}${eE(this.h)}, ${100*ek(this.s)}%, ${100*ek(this.l)}%${1===t?")":`, ${t})`}`}}));var e$=t=>()=>t;function eN(t,e){var n=e-t;return n?function(e){return t+e*n}:e$(isNaN(t)?e:t)}var eS=function t(e){var n,r=1==(n=+(n=e))?eN:function(t,e){var r,i,o;return e-t?(r=t,i=e,r=Math.pow(r,o=n),i=Math.pow(i,o)-r,o=1/o,function(t){return Math.pow(r+t*i,o)}):e$(isNaN(t)?e:t)};function i(t,e){var n=r((t=ep(t)).r,(e=ep(e)).r),i=r(t.g,e.g),o=r(t.b,e.b),u=eN(t.opacity,e.opacity);return function(e){return t.r=n(e),t.g=i(e),t.b=o(e),t.opacity=u(e),t+""}}return i.gamma=t,i}(1);function eI(t){return function(e){var n,r,i=e.length,o=Array(i),u=Array(i),a=Array(i);for(n=0;n<i;++n)r=ep(e[n]),o[n]=r.r||0,u[n]=r.g||0,a[n]=r.b||0;return o=t(o),u=t(u),a=t(a),r.opacity=1,function(t){return r.r=o(t),r.g=u(t),r.b=a(t),r+""}}}eI(function(t){var e=t.length-1;return function(n){var r=n<=0?n=0:n>=1?(n=1,e-1):Math.floor(n*e),i=t[r],o=t[r+1],u=r>0?t[r-1]:2*i-o,a=r<e-1?t[r+2]:2*o-i;return ez((n-r/e)*e,u,i,o,a)}}),eI(function(t){var e=t.length;return function(n){var r=Math.floor(((n%=1)<0?++n:n)*e),i=t[(r+e-1)%e],o=t[r%e],u=t[(r+1)%e],a=t[(r+2)%e];return ez((n-r/e)*e,i,o,u,a)}});var eT=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,eP=RegExp(eT.source,"g");function eB(t,e){var n;return("number"==typeof e?tU:e instanceof eh?eS:(n=eh(e))?(e=n,eS):function(t,e){var n,r,i,o,u,a=eT.lastIndex=eP.lastIndex=0,l=-1,s=[],c=[];for(t+="",e+="";(i=eT.exec(t))&&(o=eP.exec(e));)(u=o.index)>a&&(u=e.slice(a,u),s[l]?s[l]+=u:s[++l]=u),(i=i[0])===(o=o[0])?s[l]?s[l]+=o:s[++l]=o:(s[++l]=null,c.push({i:l,x:tU(i,o)})),a=eP.lastIndex;return a<e.length&&(u=e.slice(a),s[l]?s[l]+=u:s[++l]=u),s.length<2?c[0]?(n=c[0].x,function(t){return n(t)+""}):(r=e,function(){return r}):(e=c.length,function(t){for(var n,r=0;r<e;++r)s[(n=c[r]).i]=n.x(t);return s.join("")})})(t,e)}var eH=tl.prototype.constructor;function eO(t){return function(){this.style.removeProperty(t)}}var eX=0;function eC(t,e,n,r){this._groups=t,this._parents=e,this._name=n,this._id=r}var eL=tl.prototype;eC.prototype=(function(t){return tl().transition(t)}).prototype={constructor:eC,select:function(t){var e=this._name,n=this._id;"function"!=typeof t&&(t=M(t));for(var r=this._groups,i=r.length,o=Array(i),u=0;u<i;++u)for(var a,l,s=r[u],c=s.length,h=o[u]=Array(c),f=0;f<c;++f)(a=s[f])&&(l=t.call(a,a.__data__,f,s))&&("__data__"in a&&(l.__data__=a.__data__),h[f]=l,tF(h[f],e,n,f,h,tZ(a,n)));return new eC(o,this._parents,e,n)},selectAll:function(t){var e=this._name,n=this._id;"function"!=typeof t&&(t=k(t));for(var r=this._groups,i=r.length,o=[],u=[],a=0;a<i;++a)for(var l,s=r[a],c=s.length,h=0;h<c;++h)if(l=s[h]){for(var f,d=t.call(l,l.__data__,h,s),p=tZ(l,n),y=0,g=d.length;y<g;++y)(f=d[y])&&tF(f,e,n,y,d,p);o.push(d),u.push(l)}return new eC(o,u,e,n)},selectChild:eL.selectChild,selectChildren:eL.selectChildren,filter:function(t){"function"!=typeof t&&(t=A(t));for(var e=this._groups,n=e.length,r=Array(n),i=0;i<n;++i)for(var o,u=e[i],a=u.length,l=r[i]=[],s=0;s<a;++s)(o=u[s])&&t.call(o,o.__data__,s,u)&&l.push(o);return new eC(r,this._parents,this._name,this._id)},merge:function(t){if(t._id!==this._id)throw Error();for(var e=this._groups,n=t._groups,r=e.length,i=n.length,o=Math.min(r,i),u=Array(r),a=0;a<o;++a)for(var l,s=e[a],c=n[a],h=s.length,f=u[a]=Array(h),d=0;d<h;++d)(l=s[d]||c[d])&&(f[d]=l);for(;a<r;++a)u[a]=e[a];return new eC(u,this._parents,this._name,this._id)},selection:function(){return new eH(this._groups,this._parents)},transition:function(){for(var t=this._name,e=this._id,n=++eX,r=this._groups,i=r.length,o=0;o<i;++o)for(var u,a=r[o],l=a.length,s=0;s<l;++s)if(u=a[s]){var c=tZ(u,e);tF(u,t,n,s,a,{time:c.time+c.delay+c.duration,delay:0,duration:c.duration,ease:c.ease})}return new eC(r,this._parents,t,n)},call:eL.call,nodes:eL.nodes,node:eL.node,size:eL.size,empty:eL.empty,each:eL.each,on:function(t,e){var n,r,i,o=this._id;return arguments.length<2?tZ(this.node(),o).on.on(t):this.each((i=(t+"").trim().split(/^|\s+/).every(function(t){var e=t.indexOf(".");return e>=0&&(t=t.slice(0,e)),!t||"start"===t})?tK:tW,function(){var u=i(this,o),a=u.on;a!==n&&(r=(n=a).copy()).on(t,e),u.on=r}))},attr:function(t,e){var n=Y(t),r="transform"===n?t5:eB;return this.attrTween(t,"function"==typeof e?(n.local?function(t,e,n){var r,i,o;return function(){var u,a,l=n(this);return null==l?void this.removeAttributeNS(t.space,t.local):(u=this.getAttributeNS(t.space,t.local))===(a=l+"")?null:u===r&&a===i?o:(i=a,o=e(r=u,l))}}:function(t,e,n){var r,i,o;return function(){var u,a,l=n(this);return null==l?void this.removeAttribute(t):(u=this.getAttribute(t))===(a=l+"")?null:u===r&&a===i?o:(i=a,o=e(r=u,l))}})(n,r,t3(this,"attr."+t,e)):null==e?(n.local?function(t){return function(){this.removeAttributeNS(t.space,t.local)}}:function(t){return function(){this.removeAttribute(t)}})(n):(n.local?function(t,e,n){var r,i,o=n+"";return function(){var u=this.getAttributeNS(t.space,t.local);return u===o?null:u===r?i:i=e(r=u,n)}}:function(t,e,n){var r,i,o=n+"";return function(){var u=this.getAttribute(t);return u===o?null:u===r?i:i=e(r=u,n)}})(n,r,e))},attrTween:function(t,e){var n="attr."+t;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(null==e)return this.tween(n,null);if("function"!=typeof e)throw Error();var r=Y(t);return this.tween(n,(r.local?function(t,e){var n,r;function i(){var i=e.apply(this,arguments);return i!==r&&(n=(r=i)&&function(e){this.setAttributeNS(t.space,t.local,i.call(this,e))}),n}return i._value=e,i}:function(t,e){var n,r;function i(){var i=e.apply(this,arguments);return i!==r&&(n=(r=i)&&function(e){this.setAttribute(t,i.call(this,e))}),n}return i._value=e,i})(r,e))},style:function(t,e,n){var r,i,o,u,a,l,s,c,h,f,d,p,y,g,m,v,x,w,_,b,M,E="transform"==(t+="")?t2:eB;return null==e?this.styleTween(t,(r=t,function(){var t=j(this,r),e=(this.style.removeProperty(r),j(this,r));return t===e?null:t===i&&e===o?u:u=E(i=t,o=e)})).on("end.style."+t,eO(t)):"function"==typeof e?this.styleTween(t,(a=t,l=t3(this,"style."+t,e),function(){var t=j(this,a),e=l(this),n=e+"";return null==e&&(this.style.removeProperty(a),n=e=j(this,a)),t===n?null:t===s&&n===c?h:(c=n,h=E(s=t,e))})).each((f=this._id,x="end."+(v="style."+(d=t)),function(){var t=tW(this,f),e=t.on,n=null==t.value[v]?m||(m=eO(d)):void 0;(e!==p||g!==n)&&(y=(p=e).copy()).on(x,g=n),t.on=y})):this.styleTween(t,(w=t,M=e+"",function(){var t=j(this,w);return t===M?null:t===_?b:b=E(_=t,e)}),n).on("end.style."+t,null)},styleTween:function(t,e,n){var r="style."+(t+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(null==e)return this.tween(r,null);if("function"!=typeof e)throw Error();return this.tween(r,function(t,e,n){var r,i;function o(){var o=e.apply(this,arguments);return o!==i&&(r=(i=o)&&function(e){this.style.setProperty(t,o.call(this,e),n)}),r}return o._value=e,o}(t,e,null==n?"":n))},text:function(t){var e,n;return this.tween("text","function"==typeof t?(e=t3(this,"text",t),function(){var t=e(this);this.textContent=null==t?"":t}):(n=null==t?"":t+"",function(){this.textContent=n}))},textTween:function(t){var e="text";if(arguments.length<1)return(e=this.tween(e))&&e._value;if(null==t)return this.tween(e,null);if("function"!=typeof t)throw Error();return this.tween(e,function(t){var e,n;function r(){var r=t.apply(this,arguments);return r!==n&&(e=(n=r)&&function(t){this.textContent=r.call(this,t)}),e}return r._value=t,r}(t))},remove:function(){var t;return this.on("end.remove",(t=this._id,function(){var e=this.parentNode;for(var n in this.__transition)if(+n!==t)return;e&&e.removeChild(this)}))},tween:function(t,e){var n=this._id;if(t+="",arguments.length<2){for(var r,i=tZ(this.node(),n).tween,o=0,u=i.length;o<u;++o)if((r=i[o]).name===t)return r.value;return null}return this.each((null==e?function(t,e){var n,r;return function(){var i=tW(this,t),o=i.tween;if(o!==n){r=n=o;for(var u=0,a=r.length;u<a;++u)if(r[u].name===e){(r=r.slice()).splice(u,1);break}}i.tween=r}}:function(t,e,n){var r,i;if("function"!=typeof n)throw Error();return function(){var o=tW(this,t),u=o.tween;if(u!==r){i=(r=u).slice();for(var a={name:e,value:n},l=0,s=i.length;l<s;++l)if(i[l].name===e){i[l]=a;break}l===s&&i.push(a)}o.tween=i}})(n,t,e))},delay:function(t){var e=this._id;return arguments.length?this.each(("function"==typeof t?function(t,e){return function(){tK(this,t).delay=+e.apply(this,arguments)}}:function(t,e){return e=+e,function(){tK(this,t).delay=e}})(e,t)):tZ(this.node(),e).delay},duration:function(t){var e=this._id;return arguments.length?this.each(("function"==typeof t?function(t,e){return function(){tW(this,t).duration=+e.apply(this,arguments)}}:function(t,e){return e=+e,function(){tW(this,t).duration=e}})(e,t)):tZ(this.node(),e).duration},ease:function(t){var e=this._id;return arguments.length?this.each(function(t,e){if("function"!=typeof e)throw Error();return function(){tW(this,t).ease=e}}(e,t)):tZ(this.node(),e).ease},easeVarying:function(t){var e;if("function"!=typeof t)throw Error();return this.each((e=this._id,function(){var n=t.apply(this,arguments);if("function"!=typeof n)throw Error();tW(this,e).ease=n}))},end:function(){var t,e,n=this,r=n._id,i=n.size();return new Promise(function(o,u){var a={value:u},l={value:function(){0==--i&&o()}};n.each(function(){var n=tW(this,r),i=n.on;i!==t&&((e=(t=i).copy())._.cancel.push(a),e._.interrupt.push(a),e._.end.push(l)),n.on=e}),0===i&&o()})},[Symbol.iterator]:eL[Symbol.iterator]};var eY={time:null,delay:0,duration:250,ease:function(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}};tl.prototype.interrupt=function(t){return this.each(function(){tQ(this,t)})},tl.prototype.transition=function(t){var e,n;t instanceof eC?(e=t._id,t=t._name):(e=++eX,(n=eY).time=tO(),t=null==t?null:t+"");for(var r=this._groups,i=r.length,o=0;o<i;++o)for(var u,a=r[o],l=a.length,s=0;s<l;++s)(u=a[s])&&tF(u,t,e,s,a,n||function(t,e){for(var n;!(n=t.__transition)||!(n=n[e]);)if(!(t=t.parentNode))throw Error(`transition ${e} not found`);return n}(u,e));return new eC(r,this._parents,t,e)};var eR=t=>()=>t;function ej(t,{sourceEvent:e,target:n,transform:r,dispatch:i}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:e,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:i}})}function eV(t,e,n){this.k=t,this.x=e,this.y=n}eV.prototype={constructor:eV,scale:function(t){return 1===t?this:new eV(this.k*t,this.x,this.y)},translate:function(t,e){return 0===t&0===e?this:new eV(this.k,this.x+this.k*t,this.y+this.k*e)},apply:function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},applyX:function(t){return t*this.k+this.x},applyY:function(t){return t*this.k+this.y},invert:function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},invertX:function(t){return(t-this.x)/this.k},invertY:function(t){return(t-this.y)/this.k},rescaleX:function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},rescaleY:function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var eq=new eV(1,0,0);function eD(t){for(;!t.__zoom;)if(!(t=t.parentNode))return eq;return t.__zoom}function eF(t){t.stopImmediatePropagation()}function eK(t){t.preventDefault(),t.stopImmediatePropagation()}function eW(t){return(!t.ctrlKey||"wheel"===t.type)&&!t.button}function eZ(){var t=this;return t instanceof SVGElement?(t=t.ownerSVGElement||t).hasAttribute("viewBox")?[[(t=t.viewBox.baseVal).x,t.y],[t.x+t.width,t.y+t.height]]:[[0,0],[t.width.baseVal.value,t.height.baseVal.value]]:[[0,0],[t.clientWidth,t.clientHeight]]}function eQ(){return this.__zoom||eq}function eU(t){return-t.deltaY*(1===t.deltaMode?.05:t.deltaMode?1:.002)*(t.ctrlKey?10:1)}function eG(){return navigator.maxTouchPoints||"ontouchstart"in this}function eJ(t,e,n){var r=t.invertX(e[0][0])-n[0][0],i=t.invertX(e[1][0])-n[1][0],o=t.invertY(e[0][1])-n[0][1],u=t.invertY(e[1][1])-n[1][1];return t.translate(i>r?(r+i)/2:Math.min(0,r)||Math.max(0,i),u>o?(o+u)/2:Math.min(0,o)||Math.max(0,u))}function e0(){var t,e,n,r=eW,i=eZ,o=eJ,u=eU,a=eG,l=[0,1/0],s=[[-1/0,-1/0],[1/0,1/0]],c=250,h=tz,f=x("start","zoom","end"),d=0,p=10;function y(t){t.property("__zoom",eQ).on("wheel.zoom",M,{passive:!1}).on("mousedown.zoom",E).on("dblclick.zoom",k).filter(a).on("touchstart.zoom",A).on("touchmove.zoom",z).on("touchend.zoom touchcancel.zoom",$).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function g(t,e){return(e=Math.max(l[0],Math.min(l[1],e)))===t.k?t:new eV(e,t.x,t.y)}function m(t,e,n){var r=e[0]-n[0]*t.k,i=e[1]-n[1]*t.k;return r===t.x&&i===t.y?t:new eV(t.k,r,i)}function v(t){return[(+t[0][0]+ +t[1][0])/2,(+t[0][1]+ +t[1][1])/2]}function w(t,e,n,r){t.on("start.zoom",function(){_(this,arguments).event(r).start()}).on("interrupt.zoom end.zoom",function(){_(this,arguments).event(r).end()}).tween("zoom",function(){var t=arguments,o=_(this,t).event(r),u=i.apply(this,t),a=null==n?v(u):"function"==typeof n?n.apply(this,t):n,l=Math.max(u[1][0]-u[0][0],u[1][1]-u[0][1]),s=this.__zoom,c="function"==typeof e?e.apply(this,t):e,f=h(s.invert(a).concat(l/s.k),c.invert(a).concat(l/c.k));return function(t){if(1===t)t=c;else{var e=f(t),n=l/e[2];t=new eV(n,a[0]-e[0]*n,a[1]-e[1]*n)}o.zoom(null,t)}})}function _(t,e,n){return!n&&t.__zooming||new b(t,e)}function b(t,e){this.that=t,this.args=e,this.active=0,this.sourceEvent=null,this.extent=i.apply(t,e),this.taps=0}function M(t,...e){if(r.apply(this,arguments)){var n=_(this,e).event(t),i=this.__zoom,a=Math.max(l[0],Math.min(l[1],i.k*Math.pow(2,u.apply(this,arguments)))),c=tc(t);if(n.wheel)(n.mouse[0][0]!==c[0]||n.mouse[0][1]!==c[1])&&(n.mouse[1]=i.invert(n.mouse[0]=c)),clearTimeout(n.wheel);else{if(i.k===a)return;n.mouse=[c,i.invert(c)],tQ(this),n.start()}eK(t),n.wheel=setTimeout(function(){n.wheel=null,n.end()},150),n.zoom("mouse",o(m(g(i,a),n.mouse[0],n.mouse[1]),n.extent,s))}}function E(t,...e){if(!n&&r.apply(this,arguments)){var i=t.currentTarget,u=_(this,e,!0).event(t),a=ts(t.view).on("mousemove.zoom",function(t){if(eK(t),!u.moved){var e=t.clientX-c,n=t.clientY-h;u.moved=e*e+n*n>d}u.event(t).zoom("mouse",o(m(u.that.__zoom,u.mouse[0]=tc(t,i),u.mouse[1]),u.extent,s))},!0).on("mouseup.zoom",function(t){a.on("mousemove.zoom mouseup.zoom",null),tg(t.view,u.moved),eK(t),u.event(t).end()},!0),l=tc(t,i),c=t.clientX,h=t.clientY;ty(t.view),eF(t),u.mouse=[l,this.__zoom.invert(l)],tQ(this),u.start()}}function k(t,...e){if(r.apply(this,arguments)){var n=this.__zoom,u=tc(t.changedTouches?t.changedTouches[0]:t,this),a=n.invert(u),l=n.k*(t.shiftKey?.5:2),h=o(m(g(n,l),u,a),i.apply(this,e),s);eK(t),c>0?ts(this).transition().duration(c).call(w,h,u,t):ts(this).call(y.transform,h,u,t)}}function A(n,...i){if(r.apply(this,arguments)){var o,u,a,l,s=n.touches,c=s.length,h=_(this,i,n.changedTouches.length===c).event(n);for(eF(n),u=0;u<c;++u)l=[l=tc(a=s[u],this),this.__zoom.invert(l),a.identifier],h.touch0?h.touch1||h.touch0[2]===l[2]||(h.touch1=l,h.taps=0):(h.touch0=l,o=!0,h.taps=1+!!t);t&&(t=clearTimeout(t)),o&&(h.taps<2&&(e=l[0],t=setTimeout(function(){t=null},500)),tQ(this),h.start())}}function z(t,...e){if(this.__zooming){var n,r,i,u,a=_(this,e).event(t),l=t.changedTouches,c=l.length;for(eK(t),n=0;n<c;++n)i=tc(r=l[n],this),a.touch0&&a.touch0[2]===r.identifier?a.touch0[0]=i:a.touch1&&a.touch1[2]===r.identifier&&(a.touch1[0]=i);if(r=a.that.__zoom,a.touch1){var h=a.touch0[0],f=a.touch0[1],d=a.touch1[0],p=a.touch1[1],y=(y=d[0]-h[0])*y+(y=d[1]-h[1])*y,v=(v=p[0]-f[0])*v+(v=p[1]-f[1])*v;r=g(r,Math.sqrt(y/v)),i=[(h[0]+d[0])/2,(h[1]+d[1])/2],u=[(f[0]+p[0])/2,(f[1]+p[1])/2]}else{if(!a.touch0)return;i=a.touch0[0],u=a.touch0[1]}a.zoom("touch",o(m(r,i,u),a.extent,s))}}function $(t,...r){if(this.__zooming){var i,o,u=_(this,r).event(t),a=t.changedTouches,l=a.length;for(eF(t),n&&clearTimeout(n),n=setTimeout(function(){n=null},500),i=0;i<l;++i)o=a[i],u.touch0&&u.touch0[2]===o.identifier?delete u.touch0:u.touch1&&u.touch1[2]===o.identifier&&delete u.touch1;if(u.touch1&&!u.touch0&&(u.touch0=u.touch1,delete u.touch1),u.touch0)u.touch0[1]=this.__zoom.invert(u.touch0[0]);else if(u.end(),2===u.taps&&(o=tc(o,this),Math.hypot(e[0]-o[0],e[1]-o[1])<p)){var s=ts(this).on("dblclick.zoom");s&&s.apply(this,arguments)}}}return y.transform=function(t,e,n,r){var i=t.selection?t.selection():t;i.property("__zoom",eQ),t!==i?w(t,e,n,r):i.interrupt().each(function(){_(this,arguments).event(r).start().zoom(null,"function"==typeof e?e.apply(this,arguments):e).end()})},y.scaleBy=function(t,e,n,r){y.scaleTo(t,function(){var t=this.__zoom.k,n="function"==typeof e?e.apply(this,arguments):e;return t*n},n,r)},y.scaleTo=function(t,e,n,r){y.transform(t,function(){var t=i.apply(this,arguments),r=this.__zoom,u=null==n?v(t):"function"==typeof n?n.apply(this,arguments):n,a=r.invert(u),l="function"==typeof e?e.apply(this,arguments):e;return o(m(g(r,l),u,a),t,s)},n,r)},y.translateBy=function(t,e,n,r){y.transform(t,function(){return o(this.__zoom.translate("function"==typeof e?e.apply(this,arguments):e,"function"==typeof n?n.apply(this,arguments):n),i.apply(this,arguments),s)},null,r)},y.translateTo=function(t,e,n,r,u){y.transform(t,function(){var t=i.apply(this,arguments),u=this.__zoom,a=null==r?v(t):"function"==typeof r?r.apply(this,arguments):r;return o(eq.translate(a[0],a[1]).scale(u.k).translate("function"==typeof e?-e.apply(this,arguments):-e,"function"==typeof n?-n.apply(this,arguments):-n),t,s)},r,u)},b.prototype={event:function(t){return t&&(this.sourceEvent=t),this},start:function(){return 1==++this.active&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(t,e){return this.mouse&&"mouse"!==t&&(this.mouse[1]=e.invert(this.mouse[0])),this.touch0&&"touch"!==t&&(this.touch0[1]=e.invert(this.touch0[0])),this.touch1&&"touch"!==t&&(this.touch1[1]=e.invert(this.touch1[0])),this.that.__zoom=e,this.emit("zoom"),this},end:function(){return 0==--this.active&&(delete this.that.__zooming,this.emit("end")),this},emit:function(t){var e=ts(this.that).datum();f.call(t,this.that,new ej(t,{sourceEvent:this.sourceEvent,target:y,type:t,transform:this.that.__zoom,dispatch:f}),e)}},y.wheelDelta=function(t){return arguments.length?(u="function"==typeof t?t:eR(+t),y):u},y.filter=function(t){return arguments.length?(r="function"==typeof t?t:eR(!!t),y):r},y.touchable=function(t){return arguments.length?(a="function"==typeof t?t:eR(!!t),y):a},y.extent=function(t){return arguments.length?(i="function"==typeof t?t:eR([[+t[0][0],+t[0][1]],[+t[1][0],+t[1][1]]]),y):i},y.scaleExtent=function(t){return arguments.length?(l[0]=+t[0],l[1]=+t[1],y):[l[0],l[1]]},y.translateExtent=function(t){return arguments.length?(s[0][0]=+t[0][0],s[1][0]=+t[1][0],s[0][1]=+t[0][1],s[1][1]=+t[1][1],y):[[s[0][0],s[0][1]],[s[1][0],s[1][1]]]},y.constrain=function(t){return arguments.length?(o=t,y):o},y.duration=function(t){return arguments.length?(c=+t,y):c},y.interpolate=function(t){return arguments.length?(h=t,y):h},y.on=function(){var t=f.on.apply(f,arguments);return t===f?y:t},y.clickDistance=function(t){return arguments.length?(d=(t=+t)*t,y):Math.sqrt(d)},y.tapDistance=function(t){return arguments.length?(p=+t,y):p},y}eD.prototype=eV.prototype;let e1={error001:()=>"[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.dev/error#001",error002:()=>"It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.",error003:t=>`Node type "${t}" not found. Using fallback type "default".`,error004:()=>"The React Flow parent container needs a width and a height to render the graph.",error005:()=>"Only child nodes can use a parent extent.",error006:()=>"Can't create edge. An edge needs a source and a target.",error007:t=>`The old edge with id=${t} does not exist.`,error009:t=>`Marker type "${t}" doesn't exist.`,error008:(t,{id:e,sourceHandle:n,targetHandle:r})=>`Couldn't create edge for ${t} handle id: "${"source"===t?n:r}", edge id: ${e}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:t=>`Edge type "${t}" not found. Using fallback type "default".`,error012:t=>`Node with id "${t}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error013:(t="react")=>`It seems that you haven't loaded the styles. Please import '@xyflow/${t}/dist/style.css' or base.css to make sure everything is working properly.`},e2=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],e5=["Enter"," ","Escape"];(r=h||(h={})).Strict="strict",r.Loose="loose",(i=f||(f={})).Free="free",i.Vertical="vertical",i.Horizontal="horizontal",(o=d||(d={})).Partial="partial",o.Full="full";let e3={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null};(u=p||(p={})).Bezier="default",u.Straight="straight",u.Step="step",u.SmoothStep="smoothstep",u.SimpleBezier="simplebezier",(a=y||(y={})).Arrow="arrow",a.ArrowClosed="arrowclosed",(l=g||(g={})).Left="left",l.Top="top",l.Right="right",l.Bottom="bottom";let e6={[g.Left]:g.Right,[g.Right]:g.Left,[g.Top]:g.Bottom,[g.Bottom]:g.Top};function e7(t){return null===t?null:t?"valid":"invalid"}let e4=t=>"id"in t&&"source"in t&&"target"in t,e8=t=>"id"in t&&"position"in t&&!("source"in t)&&!("target"in t),e9=t=>"id"in t&&"internals"in t&&!("source"in t)&&!("target"in t),nt=(t,e=[0,0])=>{let{width:n,height:r}=nS(t),i=t.origin??e,o=n*i[0],u=r*i[1];return{x:t.position.x-o,y:t.position.y-u}},ne=(t,e={nodeOrigin:[0,0],nodeLookup:void 0})=>0===t.length?{x:0,y:0,width:0,height:0}:ng(t.reduce((t,n)=>{let r="string"==typeof n,i=e.nodeLookup||r?void 0:n;return e.nodeLookup&&(i=r?e.nodeLookup.get(n):e9(n)?n:e.nodeLookup.get(n.id)),np(t,i?nv(i,e.nodeOrigin):{x:0,y:0,x2:0,y2:0})},{x:1/0,y:1/0,x2:-1/0,y2:-1/0})),nn=(t,e={})=>{if(0===t.size)return{x:0,y:0,width:0,height:0};let n={x:1/0,y:1/0,x2:-1/0,y2:-1/0};return t.forEach(t=>{if(void 0===e.filter||e.filter(t)){let e=nv(t);n=np(n,e)}}),ng(n)},nr=(t,e,[n,r,i]=[0,0,1],o=!1,u=!1)=>{let a={...nk(e,[n,r,i]),width:e.width/i,height:e.height/i},l=[];for(let e of t.values()){let{measured:t,selectable:n=!0,hidden:r=!1}=e;if(u&&!n||r)continue;let i=t.width??e.width??e.initialWidth??null,s=t.height??e.height??e.initialHeight??null,c=nw(a,nm(e)),h=(i??0)*(s??0),f=o&&c>0;(!e.internals.handleBounds||f||c>=h||e.dragging)&&l.push(e)}return l},ni=(t,e)=>{let n=new Set;return t.forEach(t=>{n.add(t.id)}),e.filter(t=>n.has(t.source)||n.has(t.target))};function no(t,e){let n=new Map,r=e?.nodes?new Set(e.nodes.map(t=>t.id)):null;return t.forEach(t=>{t.measured.width&&t.measured.height&&(e?.includeHiddenNodes||!t.hidden)&&(!r||r.has(t.id))&&n.set(t.id,t)}),n}async function nu({nodes:t,width:e,height:n,panZoom:r,minZoom:i,maxZoom:o},u){if(0===t.size)return Promise.resolve(!1);let a=nz(nn(t),e,n,u?.minZoom??i,u?.maxZoom??o,u?.padding??.1);return await r.setViewport(a,{duration:u?.duration}),Promise.resolve(!0)}function na({nodeId:t,nextPosition:e,nodeLookup:n,nodeOrigin:r=[0,0],nodeExtent:i,onError:o}){let u=n.get(t),a=u.parentId?n.get(u.parentId):void 0,{x:l,y:s}=a?a.internals.positionAbsolute:{x:0,y:0},c=u.origin??r,h=i;if("parent"!==u.extent||u.expandParent)a&&nN(u.extent)&&(h=[[u.extent[0][0]+l,u.extent[0][1]+s],[u.extent[1][0]+l,u.extent[1][1]+s]]);else if(a){let t=a.measured.width,e=a.measured.height;t&&e&&(h=[[l,s],[l+t,s+e]])}else o?.("005",e1.error005());let f=nN(h)?nc(e,h,u.measured):e;return{position:{x:f.x-l+u.measured.width*c[0],y:f.y-s+u.measured.height*c[1]},positionAbsolute:f}}async function nl({nodesToRemove:t=[],edgesToRemove:e=[],nodes:n,edges:r,onBeforeDelete:i}){let o=new Set(t.map(t=>t.id)),u=[];for(let t of n){if(!1===t.deletable)continue;let e=o.has(t.id),n=!e&&t.parentId&&u.find(e=>e.id===t.parentId);(e||n)&&u.push(t)}let a=new Set(e.map(t=>t.id)),l=r.filter(t=>!1!==t.deletable),s=ni(u,l);for(let t of l)a.has(t.id)&&!s.find(e=>e.id===t.id)&&s.push(t);if(!i)return{edges:s,nodes:u};let c=await i({nodes:u,edges:s});return"boolean"==typeof c?c?{edges:s,nodes:u}:{edges:[],nodes:[]}:c}let ns=(t,e=0,n=1)=>Math.min(Math.max(t,e),n),nc=(t={x:0,y:0},e,n)=>({x:ns(t.x,e[0][0],e[1][0]-(n?.width??0)),y:ns(t.y,e[0][1],e[1][1]-(n?.height??0))});function nh(t,e,n){let{width:r,height:i}=nS(n),{x:o,y:u}=n.internals.positionAbsolute;return nc(t,[[o,u],[o+r,u+i]],e)}let nf=(t,e,n)=>t<e?ns(Math.abs(t-e),1,e)/e:t>n?-ns(Math.abs(t-n),1,e)/e:0,nd=(t,e,n=15,r=40)=>[nf(t.x,r,e.width-r)*n,nf(t.y,r,e.height-r)*n],np=(t,e)=>({x:Math.min(t.x,e.x),y:Math.min(t.y,e.y),x2:Math.max(t.x2,e.x2),y2:Math.max(t.y2,e.y2)}),ny=({x:t,y:e,width:n,height:r})=>({x:t,y:e,x2:t+n,y2:e+r}),ng=({x:t,y:e,x2:n,y2:r})=>({x:t,y:e,width:n-t,height:r-e}),nm=(t,e=[0,0])=>{let{x:n,y:r}=e9(t)?t.internals.positionAbsolute:nt(t,e);return{x:n,y:r,width:t.measured?.width??t.width??t.initialWidth??0,height:t.measured?.height??t.height??t.initialHeight??0}},nv=(t,e=[0,0])=>{let{x:n,y:r}=e9(t)?t.internals.positionAbsolute:nt(t,e);return{x:n,y:r,x2:n+(t.measured?.width??t.width??t.initialWidth??0),y2:r+(t.measured?.height??t.height??t.initialHeight??0)}},nx=(t,e)=>ng(np(ny(t),ny(e))),nw=(t,e)=>Math.ceil(Math.max(0,Math.min(t.x+t.width,e.x+e.width)-Math.max(t.x,e.x))*Math.max(0,Math.min(t.y+t.height,e.y+e.height)-Math.max(t.y,e.y))),n_=t=>nb(t.width)&&nb(t.height)&&nb(t.x)&&nb(t.y),nb=t=>!isNaN(t)&&isFinite(t),nM=(t,e)=>{},nE=(t,e=[1,1])=>({x:e[0]*Math.round(t.x/e[0]),y:e[1]*Math.round(t.y/e[1])}),nk=({x:t,y:e},[n,r,i],o=!1,u=[1,1])=>{let a={x:(t-n)/i,y:(e-r)/i};return o?nE(a,u):a},nA=({x:t,y:e},[n,r,i])=>({x:t*i+n,y:e*i+r}),nz=(t,e,n,r,i,o)=>{let u=ns(Math.min(e/(t.width*(1+o)),n/(t.height*(1+o))),r,i);return{x:e/2-(t.x+t.width/2)*u,y:n/2-(t.y+t.height/2)*u,zoom:u}},n$=()=>"undefined"!=typeof navigator&&navigator?.userAgent?.indexOf("Mac")>=0;function nN(t){return void 0!==t&&"parent"!==t}function nS(t){return{width:t.measured?.width??t.width??t.initialWidth??0,height:t.measured?.height??t.height??t.initialHeight??0}}function nI(t){return(t.measured?.width??t.width??t.initialWidth)!==void 0&&(t.measured?.height??t.height??t.initialHeight)!==void 0}function nT(t,e={width:0,height:0},n,r,i){let o=n,u={...t};for(;o;){let t=r.get(o);if(o=t?.parentId,t){let n=t.origin||i;u.x+=t.internals.positionAbsolute.x-(e.width??0)*n[0],u.y+=t.internals.positionAbsolute.y-(e.height??0)*n[1]}}return u}function nP(t,{snapGrid:e=[0,0],snapToGrid:n=!1,transform:r}){let{x:i,y:o}=nL(t),u=nk({x:i,y:o},r),{x:a,y:l}=n?nE(u,e):u;return{xSnapped:a,ySnapped:l,...u}}let nB=t=>({width:t.offsetWidth,height:t.offsetHeight}),nH=t=>t.getRootNode?.()||window?.document,nO=["INPUT","SELECT","TEXTAREA"];function nX(t){let e=t.composedPath?.()?.[0]||t.target;return nO.includes(e?.nodeName)||e?.hasAttribute("contenteditable")||!!e?.closest(".nokey")}let nC=t=>"clientX"in t,nL=(t,e)=>{let n=nC(t),r=n?t.clientX:t.touches?.[0].clientX,i=n?t.clientY:t.touches?.[0].clientY;return{x:r-(e?.left??0),y:i-(e?.top??0)}},nY=(t,e,n,r,i)=>{let o=e.querySelectorAll(`.${t}`);return o&&o.length?Array.from(o).map(e=>{let o=e.getBoundingClientRect();return{id:e.getAttribute("data-handleid"),type:t,nodeId:i,position:e.getAttribute("data-handlepos"),x:(o.left-n.left)/r,y:(o.top-n.top)/r,...nB(e)}}):null};function nR({sourceX:t,sourceY:e,targetX:n,targetY:r,sourceControlX:i,sourceControlY:o,targetControlX:u,targetControlY:a}){let l=.125*t+.375*i+.375*u+.125*n,s=.125*e+.375*o+.375*a+.125*r;return[l,s,Math.abs(l-t),Math.abs(s-e)]}function nj(t,e){return t>=0?.5*t:25*e*Math.sqrt(-t)}function nV({pos:t,x1:e,y1:n,x2:r,y2:i,c:o}){switch(t){case g.Left:return[e-nj(e-r,o),n];case g.Right:return[e+nj(r-e,o),n];case g.Top:return[e,n-nj(n-i,o)];case g.Bottom:return[e,n+nj(i-n,o)]}}function nq({sourceX:t,sourceY:e,sourcePosition:n=g.Bottom,targetX:r,targetY:i,targetPosition:o=g.Top,curvature:u=.25}){let[a,l]=nV({pos:n,x1:t,y1:e,x2:r,y2:i,c:u}),[s,c]=nV({pos:o,x1:r,y1:i,x2:t,y2:e,c:u}),[h,f,d,p]=nR({sourceX:t,sourceY:e,targetX:r,targetY:i,sourceControlX:a,sourceControlY:l,targetControlX:s,targetControlY:c});return[`M${t},${e} C${a},${l} ${s},${c} ${r},${i}`,h,f,d,p]}function nD({sourceX:t,sourceY:e,targetX:n,targetY:r}){let i=Math.abs(n-t)/2,o=Math.abs(r-e)/2;return[n<t?n+i:n-i,r<e?r+o:r-o,i,o]}function nF({sourceNode:t,targetNode:e,selected:n=!1,zIndex:r=0,elevateOnSelect:i=!1}){if(!i)return r;let o=n||e.selected||t.selected,u=Math.max(t.internals.z||0,e.internals.z||0,1e3);return r+(o?u:0)}function nK({sourceNode:t,targetNode:e,width:n,height:r,transform:i}){let o=np(nv(t),nv(e));return o.x===o.x2&&(o.x2+=1),o.y===o.y2&&(o.y2+=1),nw({x:-i[0]/i[2],y:-i[1]/i[2],width:n/i[2],height:r/i[2]},ng(o))>0}let nW=({source:t,sourceHandle:e,target:n,targetHandle:r})=>`xy-edge__${t}${e||""}-${n}${r||""}`,nZ=(t,e)=>e.some(e=>e.source===t.source&&e.target===t.target&&(e.sourceHandle===t.sourceHandle||!e.sourceHandle&&!t.sourceHandle)&&(e.targetHandle===t.targetHandle||!e.targetHandle&&!t.targetHandle)),nQ=(t,e)=>{let n;return t.source&&t.target?nZ(n=e4(t)?{...t}:{...t,id:nW(t)},e)?e:(null===n.sourceHandle&&delete n.sourceHandle,null===n.targetHandle&&delete n.targetHandle,e.concat(n)):(nM("006",e1.error006()),e)};function nU({sourceX:t,sourceY:e,targetX:n,targetY:r}){let[i,o,u,a]=nD({sourceX:t,sourceY:e,targetX:n,targetY:r});return[`M ${t},${e}L ${n},${r}`,i,o,u,a]}let nG={[g.Left]:{x:-1,y:0},[g.Right]:{x:1,y:0},[g.Top]:{x:0,y:-1},[g.Bottom]:{x:0,y:1}},nJ=({source:t,sourcePosition:e=g.Bottom,target:n})=>e===g.Left||e===g.Right?t.x<n.x?{x:1,y:0}:{x:-1,y:0}:t.y<n.y?{x:0,y:1}:{x:0,y:-1},n0=(t,e)=>Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2));function n1({sourceX:t,sourceY:e,sourcePosition:n=g.Bottom,targetX:r,targetY:i,targetPosition:o=g.Top,borderRadius:u=5,centerX:a,centerY:l,offset:s=20}){let[c,h,f,d,p]=function({source:t,sourcePosition:e=g.Bottom,target:n,targetPosition:r=g.Top,center:i,offset:o}){let u,a;let l=nG[e],s=nG[r],c={x:t.x+l.x*o,y:t.y+l.y*o},h={x:n.x+s.x*o,y:n.y+s.y*o},f=nJ({source:c,sourcePosition:e,target:h}),d=0!==f.x?"x":"y",p=f[d],y=[],m={x:0,y:0},v={x:0,y:0},[x,w,_,b]=nD({sourceX:t.x,sourceY:t.y,targetX:n.x,targetY:n.y});if(l[d]*s[d]==-1){u=i.x??x,a=i.y??w;let t=[{x:u,y:c.y},{x:u,y:h.y}],e=[{x:c.x,y:a},{x:h.x,y:a}];y=l[d]===p?"x"===d?t:e:"x"===d?e:t}else{let i=[{x:c.x,y:h.y}],f=[{x:h.x,y:c.y}];if(y="x"===d?l.x===p?f:i:l.y===p?i:f,e===r){let e=Math.abs(t[d]-n[d]);if(e<=o){let r=Math.min(o-1,o-e);l[d]===p?m[d]=(c[d]>t[d]?-1:1)*r:v[d]=(h[d]>n[d]?-1:1)*r}}if(e!==r){let t="x"===d?"y":"x",e=l[d]===s[t],n=c[t]>h[t],r=c[t]<h[t];(1===l[d]&&(!e&&n||e&&r)||1!==l[d]&&(!e&&r||e&&n))&&(y="x"===d?i:f)}let g={x:c.x+m.x,y:c.y+m.y},x={x:h.x+v.x,y:h.y+v.y};Math.max(Math.abs(g.x-y[0].x),Math.abs(x.x-y[0].x))>=Math.max(Math.abs(g.y-y[0].y),Math.abs(x.y-y[0].y))?(u=(g.x+x.x)/2,a=y[0].y):(u=y[0].x,a=(g.y+x.y)/2)}return[[t,{x:c.x+m.x,y:c.y+m.y},...y,{x:h.x+v.x,y:h.y+v.y},n],u,a,_,b]}({source:{x:t,y:e},sourcePosition:n,target:{x:r,y:i},targetPosition:o,center:{x:a,y:l},offset:s});return[c.reduce((t,e,n)=>t+(n>0&&n<c.length-1?function(t,e,n,r){let i=Math.min(n0(t,e)/2,n0(e,n)/2,r),{x:o,y:u}=e;if(t.x===o&&o===n.x||t.y===u&&u===n.y)return`L${o} ${u}`;if(t.y===u){let e=t.x<n.x?-1:1,r=t.y<n.y?1:-1;return`L ${o+i*e},${u}Q ${o},${u} ${o},${u+i*r}`}let a=t.x<n.x?1:-1,l=t.y<n.y?-1:1;return`L ${o},${u+i*l}Q ${o},${u} ${o+i*a},${u}`}(c[n-1],e,c[n+1],u):`${0===n?"M":"L"}${e.x} ${e.y}`),""),h,f,d,p]}function n2(t){return t&&!!(t.internals.handleBounds||t.handles?.length)&&!!(t.measured.width||t.width||t.initialWidth)}function n5(t){let{sourceNode:e,targetNode:n}=t;if(!n2(e)||!n2(n))return null;let r=e.internals.handleBounds||n3(e.handles),i=n.internals.handleBounds||n3(n.handles),o=n7(r?.source??[],t.sourceHandle),u=n7(t.connectionMode===h.Strict?i?.target??[]:(i?.target??[]).concat(i?.source??[]),t.targetHandle);if(!o||!u)return t.onError?.("008",e1.error008(o?"target":"source",{id:t.id,sourceHandle:t.sourceHandle,targetHandle:t.targetHandle})),null;let a=o?.position||g.Bottom,l=u?.position||g.Top,s=n6(e,o,a),c=n6(n,u,l);return{sourceX:s.x,sourceY:s.y,targetX:c.x,targetY:c.y,sourcePosition:a,targetPosition:l}}function n3(t){if(!t)return null;let e=[],n=[];for(let r of t)r.width=r.width??1,r.height=r.height??1,"source"===r.type?e.push(r):"target"===r.type&&n.push(r);return{source:e,target:n}}function n6(t,e,n=g.Left,r=!1){let i=(e?.x??0)+t.internals.positionAbsolute.x,o=(e?.y??0)+t.internals.positionAbsolute.y,{width:u,height:a}=e??nS(t);if(r)return{x:i+u/2,y:o+a/2};switch(e?.position??n){case g.Top:return{x:i+u/2,y:o};case g.Right:return{x:i+u,y:o+a/2};case g.Bottom:return{x:i+u/2,y:o+a};case g.Left:return{x:i,y:o+a/2}}}function n7(t,e){return t&&(e?t.find(t=>t.id===e):t[0])||null}function n4(t,e){if(!t)return"";if("string"==typeof t)return t;let n=e?`${e}__`:"";return`${n}${Object.keys(t).sort().map(e=>`${e}=${t[e]}`).join("&")}`}function n8(t,{id:e,defaultColor:n,defaultMarkerStart:r,defaultMarkerEnd:i}){let o=new Set;return t.reduce((t,u)=>([u.markerStart||r,u.markerEnd||i].forEach(r=>{if(r&&"object"==typeof r){let i=n4(r,e);o.has(i)||(t.push({id:i,color:r.color||n,...r}),o.add(i))}}),t),[]).sort((t,e)=>t.id.localeCompare(e.id))}let n9={nodeOrigin:[0,0],nodeExtent:e2,elevateNodesOnSelect:!0,defaults:{}},rt={...n9,checkEquality:!0};function re(t,e){let n={...t};for(let t in e)void 0!==e[t]&&(n[t]=e[t]);return n}function rn(t,e,n){let r=re(n9,n);for(let n of t.values())if(n.parentId)ri(n,t,e,r);else{let t=nc(nt(n,r.nodeOrigin),nN(n.extent)?n.extent:r.nodeExtent,nS(n));n.internals.positionAbsolute=t}}function rr(t,e,n,r){let i=re(rt,r),o=new Map(e),u=i?.elevateNodesOnSelect?1e3:0;for(let a of(e.clear(),n.clear(),t)){let t=o.get(a.id);if(i.checkEquality&&a===t?.internals.userNode)e.set(a.id,t);else{let n=nc(nt(a,i.nodeOrigin),nN(a.extent)?a.extent:i.nodeExtent,nS(a));t={...i.defaults,...a,measured:{width:a.measured?.width,height:a.measured?.height},internals:{positionAbsolute:n,handleBounds:a.measured?t?.internals.handleBounds:void 0,z:ro(a,u),userNode:a}},e.set(a.id,t)}a.parentId&&ri(t,e,n,r)}}function ri(t,e,n,r){let{elevateNodesOnSelect:i,nodeOrigin:o,nodeExtent:u}=re(n9,r),a=t.parentId,l=e.get(a);if(!l){console.warn(`Parent node ${a} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);return}!function(t,e){if(!t.parentId)return;let n=e.get(t.parentId);n?n.set(t.id,t):e.set(t.parentId,new Map([[t.id,t]]))}(t,n);let{x:s,y:c,z:h}=function(t,e,n,r,i){let{x:o,y:u}=e.internals.positionAbsolute,a=nS(t),l=nt(t,n),s=nN(t.extent)?nc(l,t.extent,a):l,c=nc({x:o+s.x,y:u+s.y},r,a);"parent"===t.extent&&(c=nh(c,a,e));let h=ro(t,i),f=e.internals.z??0;return{x:c.x,y:c.y,z:f>h?f:h}}(t,l,o,u,i?1e3:0),{positionAbsolute:f}=t.internals,d=s!==f.x||c!==f.y;(d||h!==t.internals.z)&&(t.internals={...t.internals,positionAbsolute:d?{x:s,y:c}:f,z:h})}function ro(t,e){return(nb(t.zIndex)?t.zIndex:0)+(t.selected?e:0)}function ru(t,e,n,r=[0,0]){let i=[],o=new Map;for(let n of t){let t=e.get(n.parentId);if(!t)continue;let r=nx(o.get(n.parentId)?.expandedRect??nm(t),n.rect);o.set(n.parentId,{expandedRect:r,parent:t})}return o.size>0&&o.forEach(({expandedRect:e,parent:o},u)=>{let a=o.internals.positionAbsolute,l=nS(o),s=o.origin??r,c=e.x<a.x?Math.round(Math.abs(a.x-e.x)):0,h=e.y<a.y?Math.round(Math.abs(a.y-e.y)):0,f=Math.max(l.width,Math.round(e.width)),d=Math.max(l.height,Math.round(e.height)),p=(f-l.width)*s[0],y=(d-l.height)*s[1];(c>0||h>0||p||y)&&(i.push({id:u,type:"position",position:{x:o.position.x-c+p,y:o.position.y-h+y}}),n.get(u)?.forEach(e=>{t.some(t=>t.id===e.id)||i.push({id:e.id,type:"position",position:{x:e.position.x+c,y:e.position.y+h}})})),(l.width<e.width||l.height<e.height||c||h)&&i.push({id:u,type:"dimensions",setAttributes:!0,dimensions:{width:f+(c?s[0]*c-p:0),height:d+(h?s[1]*h-y:0)}})}),i}function ra(t,e,n,r,i,o){let u=r?.querySelector(".xyflow__viewport"),a=!1;if(!u)return{changes:[],updatedInternals:a};let l=[],s=window.getComputedStyle(u),{m22:c}=new window.DOMMatrixReadOnly(s.transform),h=[];for(let r of t.values()){let t=e.get(r.id);if(t){if(t.hidden)t.internals={...t.internals,handleBounds:void 0},a=!0;else{let u=nB(r.nodeElement),s=t.measured.width!==u.width||t.measured.height!==u.height;if(u.width&&u.height&&(s||!t.internals.handleBounds||r.force)){let f=r.nodeElement.getBoundingClientRect(),d=nN(t.extent)?t.extent:o,{positionAbsolute:p}=t.internals;t.parentId&&"parent"===t.extent?p=nh(p,u,e.get(t.parentId)):d&&(p=nc(p,d,u)),t.measured=u,t.internals={...t.internals,positionAbsolute:p,handleBounds:{source:nY("source",r.nodeElement,f,c,t.id),target:nY("target",r.nodeElement,f,c,t.id)}},t.parentId&&ri(t,e,n,{nodeOrigin:i}),a=!0,s&&(l.push({id:t.id,type:"dimensions",dimensions:u}),t.expandParent&&t.parentId&&h.push({id:t.id,parentId:t.parentId,rect:nm(t,i)}))}}}}if(h.length>0){let t=ru(h,e,n,i);l.push(...t)}return{changes:l,updatedInternals:a}}async function rl({delta:t,panZoom:e,transform:n,translateExtent:r,width:i,height:o}){if(!e||!t.x&&!t.y)return Promise.resolve(!1);let u=await e.setViewportConstrained({x:n[0]+t.x,y:n[1]+t.y,zoom:n[2]},[[0,0],[i,o]],r);return Promise.resolve(!!u&&(u.x!==n[0]||u.y!==n[1]||u.k!==n[2]))}function rs(t,e,n){for(let r of(t.clear(),e.clear(),n)){let{source:n,target:i,sourceHandle:o=null,targetHandle:u=null}=r,a=`${n}-source-${o}`,l=`${i}-target-${u}`,s=t.get(a)||new Map,c=t.get(l)||new Map,h={edgeId:r.id,source:n,target:i,sourceHandle:o,targetHandle:u};e.set(r.id,r),t.set(a,s.set(`${i}-${u}`,h)),t.set(l,c.set(`${n}-${o}`,h))}}function rc(t,e,n){let r=t;do{if(r?.matches(e))return!0;if(r===n)break;r=r.parentElement}while(r);return!1}function rh({nodeId:t,dragItems:e,nodeLookup:n,dragging:r=!0}){let i=[];for(let[t,o]of e){let e=n.get(t)?.internals.userNode;e&&i.push({...e,position:o.position,dragging:r})}if(!t)return[i[0],i];let o=n.get(t).internals.userNode;return[{...o,position:e.get(t)?.position||o.position,dragging:r},i]}function rf({onNodeMouseDown:t,getStoreItems:e,onDragStart:n,onDrag:r,onDragStop:i}){let o={x:null,y:null},u=0,a=new Map,l=!1,s={x:0,y:0},c=null,h=!1,f=null,d=!1;return{update:function({noDragClassName:p,handleSelector:y,domNode:g,isSelectable:m,nodeId:v,nodeClickDistance:x=0}){function w({x:t,y:n},i){let{nodeLookup:u,nodeExtent:l,snapGrid:s,snapToGrid:c,nodeOrigin:h,onNodeDrag:f,onSelectionDrag:d,onError:p,updateNodePositions:y}=e();o={x:t,y:n};let g=!1,m={x:0,y:0,x2:0,y2:0};for(let[e,r]of(a.size>1&&l&&(m=ny(nn(a))),a)){if(!u.has(e))continue;let i={x:t-r.distance.x,y:n-r.distance.y};c&&(i=nE(i,s));let o=[[l[0][0],l[0][1]],[l[1][0],l[1][1]]];if(a.size>1&&l&&!r.extent){let{positionAbsolute:t}=r.internals,e=t.x-m.x+l[0][0],n=t.x+r.measured.width-m.x2+l[1][0];o=[[e,t.y-m.y+l[0][1]],[n,t.y+r.measured.height-m.y2+l[1][1]]]}let{position:f,positionAbsolute:d}=na({nodeId:e,nextPosition:i,nodeLookup:u,nodeExtent:o,nodeOrigin:h,onError:p});g=g||r.position.x!==f.x||r.position.y!==f.y,r.position=f,r.internals.positionAbsolute=d}if(g&&(y(a,!0),i&&(r||f||!v&&d))){let[t,e]=rh({nodeId:v,dragItems:a,nodeLookup:u});r?.(i,a,t,e),f?.(i,t,e),v||d?.(i,e)}}async function _(){if(!c)return;let{transform:t,panBy:n,autoPanSpeed:r}=e(),[i,a]=nd(s,c,r);(0!==i||0!==a)&&(o.x=(o.x??0)-i/t[2],o.y=(o.y??0)-a/t[2],await n({x:i,y:a})&&w(o,null)),u=requestAnimationFrame(_)}function b(r){let{nodeLookup:i,multiSelectionActive:u,nodesDraggable:l,transform:s,snapGrid:c,snapToGrid:f,selectNodesOnDrag:d,onNodeDragStart:p,onSelectionDragStart:y,unselectNodesAndEdges:g}=e();h=!0,d&&m||u||!v||i.get(v)?.selected||g(),m&&d&&v&&t?.(v);let x=nP(r.sourceEvent,{transform:s,snapGrid:c,snapToGrid:f});if(o=x,(a=function(t,e,n,r){let i=new Map;for(let[o,u]of t)if((u.selected||u.id===r)&&(!u.parentId||!function t(e,n){if(!e.parentId)return!1;let r=n.get(e.parentId);return!!r&&(!!r.selected||t(r,n))}(u,t))&&(u.draggable||e&&void 0===u.draggable)){let e=t.get(o);e&&i.set(o,{id:o,position:e.position||{x:0,y:0},distance:{x:n.x-e.internals.positionAbsolute.x,y:n.y-e.internals.positionAbsolute.y},extent:e.extent,parentId:e.parentId,origin:e.origin,expandParent:e.expandParent,internals:{positionAbsolute:e.internals.positionAbsolute||{x:0,y:0}},measured:{width:e.measured.width??0,height:e.measured.height??0}})}return i}(i,l,x,v)).size>0&&(n||p||!v&&y)){let[t,e]=rh({nodeId:v,dragItems:a,nodeLookup:i});n?.(r.sourceEvent,a,t,e),p?.(r.sourceEvent,t,e),v||y?.(r.sourceEvent,e)}}f=ts(g);let M=tM().clickDistance(x).on("start",t=>{let{domNode:n,nodeDragThreshold:r,transform:i,snapGrid:u,snapToGrid:a}=e();d=!1,0===r&&b(t),o=nP(t.sourceEvent,{transform:i,snapGrid:u,snapToGrid:a}),c=n?.getBoundingClientRect()||null,s=nL(t.sourceEvent,c)}).on("drag",t=>{let{autoPanOnNodeDrag:n,transform:r,snapGrid:i,snapToGrid:u,nodeDragThreshold:f,nodeLookup:p}=e(),y=nP(t.sourceEvent,{transform:r,snapGrid:i,snapToGrid:u});if(("touchmove"===t.sourceEvent.type&&t.sourceEvent.touches.length>1||v&&!p.has(v))&&(d=!0),!d){if(!l&&n&&h&&(l=!0,_()),!h){let e=y.xSnapped-(o.x??0),n=y.ySnapped-(o.y??0);Math.sqrt(e*e+n*n)>f&&b(t)}(o.x!==y.xSnapped||o.y!==y.ySnapped)&&a&&h&&(s=nL(t.sourceEvent,c),w(y,t.sourceEvent))}}).on("end",t=>{if(h&&!d&&(l=!1,h=!1,cancelAnimationFrame(u),a.size>0)){let{nodeLookup:n,updateNodePositions:r,onNodeDragStop:o,onSelectionDragStop:u}=e();if(r(a,!1),i||o||!v&&u){let[e,r]=rh({nodeId:v,dragItems:a,nodeLookup:n,dragging:!1});i?.(t.sourceEvent,a,e,r),o?.(t.sourceEvent,e,r),v||u?.(t.sourceEvent,r)}}}).filter(t=>{let e=t.target;return!t.button&&(!p||!rc(e,`.${p}`,g))&&(!y||rc(e,y,g))});f.call(M)},destroy:function(){f?.on(".drag",null)}}}function rd(t,e,n,r,i,o=!1){let u=r.get(t);if(!u)return null;let a="strict"===i?u.internals.handleBounds?.[e]:[...u.internals.handleBounds?.source??[],...u.internals.handleBounds?.target??[]],l=(n?a?.find(t=>t.id===n):a?.[0])??null;return l&&o?{...l,...n6(u,l,l.position,!0)}:l}function rp(t,e){return t||(e?.classList.contains("target")?"target":e?.classList.contains("source")?"source":null)}let ry=()=>!0;function rg(t,{handle:e,connectionMode:n,fromNodeId:r,fromHandleId:i,fromType:o,doc:u,lib:a,flowId:l,isValidConnection:s=ry,nodeLookup:c}){let f="target"===o,d=e?u.querySelector(`.${a}-flow__handle[data-id="${l}-${e?.nodeId}-${e?.id}-${e?.type}"]`):null,{x:p,y}=nL(t),g=u.elementFromPoint(p,y),m=g?.classList.contains(`${a}-flow__handle`)?g:d,v={handleDomNode:m,isValid:!1,connection:null,toHandle:null};if(m){let t=rp(void 0,m),e=m.getAttribute("data-nodeid"),o=m.getAttribute("data-handleid"),u=m.classList.contains("connectable"),a=m.classList.contains("connectableend");if(!e||!t)return v;let l={source:f?e:r,sourceHandle:f?o:i,target:f?r:e,targetHandle:f?i:o};v.connection=l;let d=u&&a&&(n===h.Strict?f&&"source"===t||!f&&"target"===t:e!==r||o!==i);v.isValid=d&&s(l),v.toHandle=rd(e,t,o,c,n,!1)}return v}let rm={onPointerDown:function(t,{connectionMode:e,connectionRadius:n,handleId:r,nodeId:i,edgeUpdaterType:o,isTarget:u,domNode:a,nodeLookup:l,lib:s,autoPanOnConnect:c,flowId:h,panBy:f,cancelConnection:d,onConnectStart:p,onConnect:y,onConnectEnd:m,isValidConnection:v=ry,onReconnectEnd:x,updateConnection:w,getTransform:_,getFromHandle:b,autoPanSpeed:M}){let E;let k=nH(t.target),A=0,{x:z,y:$}=nL(t),N=rp(o,k?.elementFromPoint(z,$)),S=a?.getBoundingClientRect();if(!S||!N)return;let I=rd(i,N,r,l,e);if(!I)return;let T=nL(t,S),P=!1,B=null,H=!1,O=null,X={...I,nodeId:i,type:N,position:I.position},C=l.get(i),L={inProgress:!0,isValid:null,from:n6(C,X,g.Left,!0),fromHandle:X,fromPosition:X.position,fromNode:C,to:T,toHandle:null,toPosition:e6[X.position],toNode:null};w(L);let Y=L;function R(t){var o,a;let d;if(!b()||!X){j(t);return}let p=_();E=function(t,e,n,r){let i=[],o=1/0;for(let u of function(t,e,n){let r=[],i={x:t.x-n,y:t.y-n,width:2*n,height:2*n};for(let t of e.values())nw(i,nm(t))>0&&r.push(t);return r}(t,n,e+250))for(let n of[...u.internals.handleBounds?.source??[],...u.internals.handleBounds?.target??[]]){if(r.nodeId===n.nodeId&&r.type===n.type&&r.id===n.id)continue;let{x:a,y:l}=n6(u,n,n.position,!0),s=Math.sqrt(Math.pow(a-t.x,2)+Math.pow(l-t.y,2));s>e||(s<o?(i=[{...n,x:a,y:l}],o=s):s===o&&i.push({...n,x:a,y:l}))}if(!i.length)return null;if(i.length>1){let t="source"===r.type?"target":"source";return i.find(e=>e.type===t)??i[0]}return i[0]}(nk(T=nL(t,S),p,!1,[1,1]),n,l,X),P||(function t(){if(!c||!S)return;let[e,n]=nd(T,S,M);f({x:e,y:n}),A=requestAnimationFrame(t)}(),P=!0);let y=rg(t,{handle:E,connectionMode:e,fromNodeId:i,fromHandleId:r,fromType:u?"target":"source",isValidConnection:v,doc:k,lib:s,flowId:h,nodeLookup:l});O=y.handleDomNode,B=y.connection,o=!!E,a=y.isValid,d=null,a?d=!0:o&&!a&&(d=!1),H=d;let g={...Y,isValid:H,to:E&&H?nA({x:E.x,y:E.y},p):T,toHandle:y.toHandle,toPosition:H&&y.toHandle?y.toHandle.position:e6[X.position],toNode:y.toHandle?l.get(y.toHandle.nodeId):null};H&&E&&Y.toHandle&&g.toHandle&&Y.toHandle.type===g.toHandle.type&&Y.toHandle.nodeId===g.toHandle.nodeId&&Y.toHandle.id===g.toHandle.id&&Y.to.x===g.to.x&&Y.to.y===g.to.y||(w(g),Y=g)}function j(t){(E||O)&&B&&H&&y?.(B);let{inProgress:e,...n}=Y,r={...n,toPosition:Y.toHandle?Y.toPosition:null};m?.(t,r),o&&x?.(t,r),d(),cancelAnimationFrame(A),P=!1,H=!1,B=null,O=null,k.removeEventListener("mousemove",R),k.removeEventListener("mouseup",j),k.removeEventListener("touchmove",R),k.removeEventListener("touchend",j)}p?.(t,{nodeId:i,handleId:r,handleType:N}),k.addEventListener("mousemove",R),k.addEventListener("mouseup",j),k.addEventListener("touchmove",R),k.addEventListener("touchend",j)},isValid:rg};function rv({domNode:t,panZoom:e,getTransform:n,getViewScale:r}){let i=ts(t);return{update:function({translateExtent:t,width:o,height:u,zoomStep:a=10,pannable:l=!0,zoomable:s=!0,inversePan:c=!1}){let h=[0,0],f=e0().on("start",t=>{("mousedown"===t.sourceEvent.type||"touchstart"===t.sourceEvent.type)&&(h=[t.sourceEvent.clientX??t.sourceEvent.touches[0].clientX,t.sourceEvent.clientY??t.sourceEvent.touches[0].clientY])}).on("zoom",l?i=>{let a=n();if("mousemove"!==i.sourceEvent.type&&"touchmove"!==i.sourceEvent.type||!e)return;let l=[i.sourceEvent.clientX??i.sourceEvent.touches[0].clientX,i.sourceEvent.clientY??i.sourceEvent.touches[0].clientY],s=[l[0]-h[0],l[1]-h[1]];h=l;let f=r()*Math.max(a[2],Math.log(a[2]))*(c?-1:1),d={x:a[0]-s[0]*f,y:a[1]-s[1]*f};e.setViewportConstrained({x:d.x,y:d.y,zoom:a[2]},[[0,0],[o,u]],t)}:null).on("zoom.wheel",s?t=>{let r=n();if("wheel"!==t.sourceEvent.type||!e)return;let i=-t.sourceEvent.deltaY*(1===t.sourceEvent.deltaMode?.05:t.sourceEvent.deltaMode?1:.002)*a,o=r[2]*Math.pow(2,i);e.scaleTo(o)}:null);i.call(f,{})},destroy:function(){i.on("zoom",null)},pointer:tc}}let rx=(t,e)=>t.x!==e.x||t.y!==e.y||t.zoom!==e.k,rw=t=>({x:t.x,y:t.y,zoom:t.k}),r_=({x:t,y:e,zoom:n})=>eq.translate(t,e).scale(n),rb=(t,e)=>t.target.closest(`.${e}`),rM=(t,e)=>2===e&&Array.isArray(t)&&t.includes(2),rE=(t,e=0,n=()=>{})=>{let r="number"==typeof e&&e>0;return r||n(),r?t.transition().duration(e).on("end",n):t},rk=t=>{let e=t.ctrlKey&&n$()?10:1;return-t.deltaY*(1===t.deltaMode?.05:t.deltaMode?1:.002)*e};function rA({domNode:t,minZoom:e,maxZoom:n,paneClickDistance:r,translateExtent:i,viewport:o,onPanZoom:u,onPanZoomStart:a,onPanZoomEnd:l,onDraggingChange:s}){let c={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{x:0,y:0,zoom:0},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},h=t.getBoundingClientRect(),d=e0().clickDistance(!nb(r)||r<0?0:r).scaleExtent([e,n]).translateExtent(i),p=ts(t).call(d);x({x:o.x,y:o.y,zoom:ns(o.zoom,e,n)},[[0,0],[h.width,h.height]],i);let y=p.on("wheel.zoom"),g=p.on("dblclick.zoom");function m(t,e){return p?new Promise(n=>{d?.transform(rE(p,e?.duration,()=>n(!0)),t)}):Promise.resolve(!1)}function v(){d.on("zoom",null)}async function x(t,e,n){let r=r_(t),i=d?.constrain()(r,e,n);return i&&await m(i),new Promise(t=>t(i))}return d.wheelDelta(rk),{update:function({noWheelClassName:t,noPanClassName:e,onPaneContextMenu:n,userSelectionActive:r,panOnScroll:i,panOnDrag:o,panOnScrollMode:h,panOnScrollSpeed:m,preventScrolling:x,zoomOnPinch:w,zoomOnScroll:_,zoomOnDoubleClick:b,zoomActivationKeyPressed:M,lib:E,onTransformChange:k}){r&&!c.isZoomingOrPanning&&v();let A=!i||M||r?function({noWheelClassName:t,preventScrolling:e,d3ZoomHandler:n}){return function(r,i){if(!e&&"wheel"===r.type&&!r.ctrlKey||rb(r,t))return null;r.preventDefault(),n.call(this,r,i)}}({noWheelClassName:t,preventScrolling:x,d3ZoomHandler:y}):function({zoomPanValues:t,noWheelClassName:e,d3Selection:n,d3Zoom:r,panOnScrollMode:i,panOnScrollSpeed:o,zoomOnPinch:u,onPanZoomStart:a,onPanZoom:l,onPanZoomEnd:s}){return c=>{if(rb(c,e))return!1;c.preventDefault(),c.stopImmediatePropagation();let h=n.property("__zoom").k||1;if(c.ctrlKey&&u){let t=tc(c),e=rk(c);r.scaleTo(n,h*Math.pow(2,e),t,c);return}let d=1===c.deltaMode?20:1,p=i===f.Vertical?0:c.deltaX*d,y=i===f.Horizontal?0:c.deltaY*d;!n$()&&c.shiftKey&&i!==f.Vertical&&(p=c.deltaY*d,y=0),r.translateBy(n,-(p/h)*o,-(y/h)*o,{internal:!0});let g=rw(n.property("__zoom"));clearTimeout(t.panScrollTimeout),t.isPanScrolling||(t.isPanScrolling=!0,a?.(c,g)),t.isPanScrolling&&(l?.(c,g),t.panScrollTimeout=setTimeout(()=>{s?.(c,g),t.isPanScrolling=!1},150))}}({zoomPanValues:c,noWheelClassName:t,d3Selection:p,d3Zoom:d,panOnScrollMode:h,panOnScrollSpeed:m,zoomOnPinch:w,onPanZoomStart:a,onPanZoom:u,onPanZoomEnd:l});if(p.on("wheel.zoom",A,{passive:!1}),!r){let t=function({zoomPanValues:t,onDraggingChange:e,onPanZoomStart:n}){return r=>{if(r.sourceEvent?.internal)return;let i=rw(r.transform);t.mouseButton=r.sourceEvent?.button||0,t.isZoomingOrPanning=!0,t.prevViewport=i,r.sourceEvent?.type==="mousedown"&&e(!0),n&&n?.(r.sourceEvent,i)}}({zoomPanValues:c,onDraggingChange:s,onPanZoomStart:a});d.on("start",t);let e=function({zoomPanValues:t,panOnDrag:e,onPaneContextMenu:n,onTransformChange:r,onPanZoom:i}){return o=>{t.usedRightMouseButton=!!(n&&rM(e,t.mouseButton??0)),o.sourceEvent?.sync||r([o.transform.x,o.transform.y,o.transform.k]),i&&!o.sourceEvent?.internal&&i?.(o.sourceEvent,rw(o.transform))}}({zoomPanValues:c,panOnDrag:o,onPaneContextMenu:!!n,onPanZoom:u,onTransformChange:k});d.on("zoom",e);let r=function({zoomPanValues:t,panOnDrag:e,panOnScroll:n,onDraggingChange:r,onPanZoomEnd:i,onPaneContextMenu:o}){return u=>{if(!u.sourceEvent?.internal&&(t.isZoomingOrPanning=!1,o&&rM(e,t.mouseButton??0)&&!t.usedRightMouseButton&&u.sourceEvent&&o(u.sourceEvent),t.usedRightMouseButton=!1,r(!1),i&&rx(t.prevViewport,u.transform))){let e=rw(u.transform);t.prevViewport=e,clearTimeout(t.timerId),t.timerId=setTimeout(()=>{i?.(u.sourceEvent,e)},n?150:0)}}}({zoomPanValues:c,panOnDrag:o,panOnScroll:i,onPaneContextMenu:n,onPanZoomEnd:l,onDraggingChange:s});d.on("end",r)}let z=function({zoomActivationKeyPressed:t,zoomOnScroll:e,zoomOnPinch:n,panOnDrag:r,panOnScroll:i,zoomOnDoubleClick:o,userSelectionActive:u,noWheelClassName:a,noPanClassName:l,lib:s}){return c=>{let h=t||e,f=n&&c.ctrlKey;if(1===c.button&&"mousedown"===c.type&&(rb(c,`${s}-flow__node`)||rb(c,`${s}-flow__edge`)))return!0;if(!r&&!h&&!i&&!o&&!n||u||rb(c,a)&&"wheel"===c.type||rb(c,l)&&("wheel"!==c.type||i&&"wheel"===c.type&&!t)||!n&&c.ctrlKey&&"wheel"===c.type)return!1;if(!n&&"touchstart"===c.type&&c.touches?.length>1)return c.preventDefault(),!1;if(!h&&!i&&!f&&"wheel"===c.type||!r&&("mousedown"===c.type||"touchstart"===c.type)||Array.isArray(r)&&!r.includes(c.button)&&"mousedown"===c.type)return!1;let d=Array.isArray(r)&&r.includes(c.button)||!c.button||c.button<=1;return(!c.ctrlKey||"wheel"===c.type)&&d}}({zoomActivationKeyPressed:M,panOnDrag:o,zoomOnScroll:_,panOnScroll:i,zoomOnDoubleClick:b,zoomOnPinch:w,userSelectionActive:r,noPanClassName:e,noWheelClassName:t,lib:E});d.filter(z),b?p.on("dblclick.zoom",g):p.on("dblclick.zoom",null)},destroy:v,setViewport:async function(t,e){let n=r_(t);return await m(n,e),new Promise(t=>t(n))},setViewportConstrained:x,getViewport:function(){let t=p?eD(p.node()):{x:0,y:0,k:1};return{x:t.x,y:t.y,zoom:t.k}},scaleTo:function(t,e){return p?new Promise(n=>{d?.scaleTo(rE(p,e?.duration,()=>n(!0)),t)}):Promise.resolve(!1)},scaleBy:function(t,e){return p?new Promise(n=>{d?.scaleBy(rE(p,e?.duration,()=>n(!0)),t)}):Promise.resolve(!1)},setScaleExtent:function(t){d?.scaleExtent(t)},setTranslateExtent:function(t){d?.translateExtent(t)},syncViewport:function(t){if(p){let e=r_(t),n=p.property("__zoom");(n.k!==t.zoom||n.x!==t.x||n.y!==t.y)&&d?.transform(p,e,null,{sync:!0})}},setClickDistance:function(t){let e=!nb(t)||t<0?0:t;d?.clickDistance(e)}}}function rz(t,e){return Math.max(0,e-t)}function r$(t,e){return Math.max(0,t-e)}function rN(t,e,n){return Math.max(0,e-t,t-n)}(s=m||(m={})).Line="line",s.Handle="handle";let rS={width:0,height:0,x:0,y:0},rI={...rS,pointerX:0,pointerY:0,aspectRatio:1};function rT({domNode:t,nodeId:e,getStoreItems:n,onChange:r,onEnd:i}){let o=ts(t);return{update:function({controlPosition:t,boundaries:u,keepAspectRatio:a,onResizeStart:l,onResize:s,onResizeEnd:c,shouldResize:h}){let f,d,p,y,g={...rS},m={...rI},v=function(t){let e=t.includes("right")||t.includes("left");return{isHorizontal:e,isVertical:t.includes("bottom")||t.includes("top"),affectsX:t.includes("left"),affectsY:t.includes("top")}}(t),x=[],w=tM().on("start",t=>{let{nodeLookup:r,transform:i,snapGrid:o,snapToGrid:u,nodeOrigin:a}=n();if(!(f=r.get(e)))return;let{xSnapped:s,ySnapped:c}=nP(t.sourceEvent,{transform:i,snapGrid:o,snapToGrid:u});if(m={...g={width:f.measured.width??0,height:f.measured.height??0,x:f.position.x??0,y:f.position.y??0},pointerX:s,pointerY:c,aspectRatio:g.width/g.height},d=void 0,f.parentId&&("parent"===f.extent||f.expandParent)){var h;p=(d=r.get(f.parentId))&&"parent"===f.extent?[[0,0],[(h=d).measured.width,h.measured.height]]:void 0}for(let[t,n]of(x=[],y=void 0,r))if(n.parentId===e&&(x.push({id:t,position:{...n.position},extent:n.extent}),"parent"===n.extent||n.expandParent)){let t=function(t,e,n){let r=e.position.x+t.position.x,i=e.position.y+t.position.y,o=t.measured.width??0,u=t.measured.height??0,a=n[0]*o,l=n[1]*u;return[[r-a,i-l],[r+o-a,i+u-l]]}(n,f,n.origin??a);y=y?[[Math.min(t[0][0],y[0][0]),Math.min(t[0][1],y[0][1])],[Math.max(t[1][0],y[1][0]),Math.max(t[1][1],y[1][1])]]:t}l?.(t,{...g})}).on("drag",t=>{let{transform:e,snapGrid:i,snapToGrid:o,nodeOrigin:l}=n(),c=nP(t.sourceEvent,{transform:e,snapGrid:i,snapToGrid:o}),w=[];if(!f)return;let{x:_,y:b,width:M,height:E}=g,k={},A=f.origin??l,{width:z,height:$,x:N,y:S}=function(t,e,n,r,i,o,u,a){let{affectsX:l,affectsY:s}=e,{isHorizontal:c,isVertical:h}=e,f=c&&h,{xSnapped:d,ySnapped:p}=n,{minWidth:y,maxWidth:g,minHeight:m,maxHeight:v}=r,{x:x,y:w,width:_,height:b,aspectRatio:M}=t,E=Math.floor(c?d-t.pointerX:0),k=Math.floor(h?p-t.pointerY:0),A=_+(l?-E:E),z=b+(s?-k:k),$=-o[0]*_,N=-o[1]*b,S=rN(A,y,g),I=rN(z,m,v);if(u){let t=0,e=0;l&&E<0?t=rz(x+E+$,u[0][0]):!l&&E>0&&(t=r$(x+A+$,u[1][0])),s&&k<0?e=rz(w+k+N,u[0][1]):!s&&k>0&&(e=r$(w+z+N,u[1][1])),S=Math.max(S,t),I=Math.max(I,e)}if(a){let t=0,e=0;l&&E>0?t=r$(x+E,a[0][0]):!l&&E<0&&(t=rz(x+A,a[1][0])),s&&k>0?e=r$(w+k,a[0][1]):!s&&k<0&&(e=rz(w+z,a[1][1])),S=Math.max(S,t),I=Math.max(I,e)}if(i&&(c&&(S=Math.max(S,rN(A/M,m,v)*M),u&&(S=Math.max(S,(l||s)&&(!l||s||!f)?rz(w+N+(l?E:-E)/M,u[0][1])*M:r$(w+N+A/M,u[1][1])*M)),a&&(S=Math.max(S,(l||s)&&(!l||s||!f)?r$(w+(l?E:-E)/M,a[0][1])*M:rz(w+A/M,a[1][1])*M))),h&&(I=Math.max(I,rN(z*M,y,g)/M),u&&(I=Math.max(I,(l||s)&&(!s||l||!f)?rz(x+(s?k:-k)*M+$,u[0][0])/M:r$(x+z*M+$,u[1][0])/M)),a&&(I=Math.max(I,(l||s)&&(!s||l||!f)?r$(x+(s?k:-k)*M,a[0][0])/M:rz(x+z*M,a[1][0])/M)))),k+=k<0?I:-I,E+=E<0?S:-S,i){if(f){var T,P,B,H;A>z*M?k=((T=l,P=s,T?!P:P)?-E:E)/M:E=((B=l,H=s,B?!H:H)?-k:k)*M}else c?(k=E/M,s=l):(E=k*M,l=s)}let O=l?x+E:x,X=s?w+k:w;return{width:_+(l?-E:E),height:b+(s?-k:k),x:o[0]*E*(l?-1:1)+O,y:o[1]*k*(s?-1:1)+X}}(m,v,c,u,a,A,p,y),I=z!==M,T=$!==E,P=N!==_&&I,B=S!==b&&T;if(!P&&!B&&!I&&!T)return;if((P||B||1===A[0]||1===A[1])&&(k.x=P?N:g.x,k.y=B?S:g.y,g.x=k.x,g.y=k.y,x.length>0)){let t=N-_,e=S-b;for(let n of x)n.position={x:n.position.x-t+A[0]*(z-M),y:n.position.y-e+A[1]*($-E)},w.push(n)}if((I||T)&&(k.width=I?z:g.width,k.height=T?$:g.height,g.width=k.width,g.height=k.height),d&&f.expandParent){let t=A[0]*(k.width??0);k.x&&k.x<t&&(g.x=t,m.x=m.x-(k.x-t));let e=A[1]*(k.height??0);k.y&&k.y<e&&(g.y=e,m.y=m.y-(k.y-e))}let H=function({width:t,prevWidth:e,height:n,prevHeight:r,affectsX:i,affectsY:o}){let u=t-e,a=n-r,l=[u>0?1:u<0?-1:0,a>0?1:a<0?-1:0];return u&&i&&(l[0]=-1*l[0]),a&&o&&(l[1]=-1*l[1]),l}({width:g.width,prevWidth:M,height:g.height,prevHeight:E,affectsX:v.affectsX,affectsY:v.affectsY}),O={...g,direction:H};!1!==h?.(t,O)&&(s?.(t,O),r(k,w))}).on("end",t=>{c?.(t,{...g}),i?.()});o.call(w)},destroy:function(){o.on(".drag",null)}}}},7008:function(t,e,n){"use strict";n.d(e,{Z:function(){return function t(e){if("string"==typeof e||"number"==typeof e)return""+e;let n="";if(Array.isArray(e))for(let r=0,i;r<e.length;r++)""!==(i=t(e[r]))&&(n+=(n&&" ")+i);else for(let t in e)e[t]&&(n+=(n&&" ")+t);return n}}})},42139:function(t,e,n){"use strict";function r(t){var e=0,n=t.children,r=n&&n.length;if(r)for(;--r>=0;)e+=n[r].value;else e=1;t.value=e}function i(t,e){t instanceof Map?(t=[void 0,t],void 0===e&&(e=u)):void 0===e&&(e=o);for(var n,r,i,a,c,h=new s(t),f=[h];n=f.pop();)if((i=e(n.data))&&(c=(i=Array.from(i)).length))for(n.children=i,a=c-1;a>=0;--a)f.push(r=i[a]=new s(i[a])),r.parent=n,r.depth=n.depth+1;return h.eachBefore(l)}function o(t){return t.children}function u(t){return Array.isArray(t)?t[1]:null}function a(t){void 0!==t.data.value&&(t.value=t.data.value),t.data=t.data.data}function l(t){var e=0;do t.height=e;while((t=t.parent)&&t.height<++e)}function s(t){this.data=t,this.depth=this.height=0,this.parent=null}n.d(e,{NB:function(){return s},le:function(){return l}}),s.prototype=i.prototype={constructor:s,count:function(){return this.eachAfter(r)},each:function(t,e){let n=-1;for(let r of this)t.call(e,r,++n,this);return this},eachAfter:function(t,e){for(var n,r,i,o=this,u=[o],a=[],l=-1;o=u.pop();)if(a.push(o),n=o.children)for(r=0,i=n.length;r<i;++r)u.push(n[r]);for(;o=a.pop();)t.call(e,o,++l,this);return this},eachBefore:function(t,e){for(var n,r,i=this,o=[i],u=-1;i=o.pop();)if(t.call(e,i,++u,this),n=i.children)for(r=n.length-1;r>=0;--r)o.push(n[r]);return this},find:function(t,e){let n=-1;for(let r of this)if(t.call(e,r,++n,this))return r},sum:function(t){return this.eachAfter(function(e){for(var n=+t(e.data)||0,r=e.children,i=r&&r.length;--i>=0;)n+=r[i].value;e.value=n})},sort:function(t){return this.eachBefore(function(e){e.children&&e.children.sort(t)})},path:function(t){for(var e=this,n=function(t,e){if(t===e)return t;var n=t.ancestors(),r=e.ancestors(),i=null;for(t=n.pop(),e=r.pop();t===e;)i=t,t=n.pop(),e=r.pop();return i}(e,t),r=[e];e!==n;)r.push(e=e.parent);for(var i=r.length;t!==n;)r.splice(i,0,t),t=t.parent;return r},ancestors:function(){for(var t=this,e=[t];t=t.parent;)e.push(t);return e},descendants:function(){return Array.from(this)},leaves:function(){var t=[];return this.eachBefore(function(e){e.children||t.push(e)}),t},links:function(){var t=this,e=[];return t.each(function(n){n!==t&&e.push({source:n.parent,target:n})}),e},copy:function(){return i(this).eachBefore(a)},[Symbol.iterator]:function*(){var t,e,n,r,i=this,o=[i];do for(t=o.reverse(),o=[];i=t.pop();)if(yield i,e=i.children)for(n=0,r=e.length;n<r;++n)o.push(e[n]);while(o.length)}}},79658:function(t,e,n){"use strict";function r(t){return null==t?null:function(t){if("function"!=typeof t)throw Error();return t}(t)}n.d(e,{Z:function(){return c}});var i=n(42139),o={depth:-1},u={},a={};function l(t){return t.id}function s(t){return t.parentId}function c(){var t,e=l,n=s;function c(r){var l,s,c,d,p,y,g,m,v=Array.from(r),x=e,w=n,_=new Map;if(null!=t){let e=v.map((e,n)=>{var i;let o;return i=t(e,n,r),o=(i=`${i}`).length,f(i,o-1)&&!f(i,o-2)&&(i=i.slice(0,-1)),"/"===i[0]?i:`/${i}`}),n=e.map(h),i=new Set(e).add("");for(let t of n)i.has(t)||(i.add(t),e.push(t),n.push(h(t)),v.push(a));x=(t,n)=>e[n],w=(t,e)=>n[e]}for(c=0,l=v.length;c<l;++c)s=v[c],y=v[c]=new i.NB(s),null!=(g=x(s,c,r))&&(g+="")&&(m=y.id=g,_.set(m,_.has(m)?u:y)),null!=(g=w(s,c,r))&&(g+="")&&(y.parent=g);for(c=0;c<l;++c)if(g=(y=v[c]).parent){if(!(p=_.get(g)))throw Error("missing: "+g);if(p===u)throw Error("ambiguous: "+g);p.children?p.children.push(y):p.children=[y],y.parent=p}else{if(d)throw Error("multiple roots");d=y}if(!d)throw Error("no root");if(null!=t){for(;d.data===a&&1===d.children.length;)d=d.children[0],--l;for(let t=v.length-1;t>=0&&(y=v[t]).data===a;--t)y.data=null}if(d.parent=o,d.eachBefore(function(t){t.depth=t.parent.depth+1,--l}).eachBefore(i.le),d.parent=null,l>0)throw Error("cycle");return d}return c.id=function(t){return arguments.length?(e=r(t),c):e},c.parentId=function(t){return arguments.length?(n=r(t),c):n},c.path=function(e){return arguments.length?(t=r(e),c):t},c}function h(t){let e=t.length;if(e<2)return"";for(;--e>1&&!f(t,e););return t.slice(0,e)}function f(t,e){if("/"===t[e]){let n=0;for(;e>0&&"\\"===t[--e];)++n;if((1&n)==0)return!0}return!1}},62266:function(t,e,n){"use strict";n.d(e,{Z:function(){return l}});var r=n(42139);function i(t,e){return t.parent===e.parent?1:2}function o(t){var e=t.children;return e?e[0]:t.t}function u(t){var e=t.children;return e?e[e.length-1]:t.t}function a(t,e){this._=t,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=e}function l(){var t=i,e=1,n=1,r=null;function l(i){var o=function(t){for(var e,n,r,i,o,u=new a(t,0),l=[u];e=l.pop();)if(r=e._.children)for(e.children=Array(o=r.length),i=o-1;i>=0;--i)l.push(n=e.children[i]=new a(r[i],i)),n.parent=e;return(u.parent=new a(null,0)).children=[u],u}(i);if(o.eachAfter(s),o.parent.m=-o.z,o.eachBefore(c),r)i.eachBefore(h);else{var u=i,l=i,f=i;i.eachBefore(function(t){t.x<u.x&&(u=t),t.x>l.x&&(l=t),t.depth>f.depth&&(f=t)});var d=u===l?1:t(u,l)/2,p=d-u.x,y=e/(l.x+d+p),g=n/(f.depth||1);i.eachBefore(function(t){t.x=(t.x+p)*y,t.y=t.depth*g})}return i}function s(e){var n=e.children,r=e.parent.children,i=e.i?r[e.i-1]:null;if(n){!function(t){for(var e,n=0,r=0,i=t.children,o=i.length;--o>=0;)e=i[o],e.z+=n,e.m+=n,n+=e.s+(r+=e.c)}(e);var a=(n[0].z+n[n.length-1].z)/2;i?(e.z=i.z+t(e._,i._),e.m=e.z-a):e.z=a}else i&&(e.z=i.z+t(e._,i._));e.parent.A=function(e,n,r){if(n){for(var i,a,l,s=e,c=e,h=n,f=s.parent.children[0],d=s.m,p=c.m,y=h.m,g=f.m;h=u(h),s=o(s),h&&s;)f=o(f),(c=u(c)).a=e,(l=h.z+y-s.z-d+t(h._,s._))>0&&(function(t,e,n){var r=n/(e.i-t.i);e.c-=r,e.s+=n,t.c+=r,e.z+=n,e.m+=n}((i=h,a=r,i.a.parent===e.parent?i.a:a),e,l),d+=l,p+=l),y+=h.m,d+=s.m,g+=f.m,p+=c.m;h&&!u(c)&&(c.t=h,c.m+=y-p),s&&!o(f)&&(f.t=s,f.m+=d-g,r=e)}return r}(e,i,e.parent.A||r[0])}function c(t){t._.x=t.z+t.parent.m,t.m+=t.parent.m}function h(t){t.x*=e,t.y=t.depth*n}return l.separation=function(e){return arguments.length?(t=e,l):t},l.size=function(t){return arguments.length?(r=!1,e=+t[0],n=+t[1],l):r?null:[e,n]},l.nodeSize=function(t){return arguments.length?(r=!0,e=+t[0],n=+t[1],l):r?[e,n]:null},l}a.prototype=Object.create(r.NB.prototype)},4157:function(t,e,n){"use strict";function r(t,e){if(Object.is(t,e))return!0;if("object"!=typeof t||null===t||"object"!=typeof e||null===e)return!1;if(t instanceof Map&&e instanceof Map){if(t.size!==e.size)return!1;for(let[n,r]of t)if(!Object.is(r,e.get(n)))return!1;return!0}if(t instanceof Set&&e instanceof Set){if(t.size!==e.size)return!1;for(let n of t)if(!e.has(n))return!1;return!0}let n=Object.keys(t);if(n.length!==Object.keys(e).length)return!1;for(let r of n)if(!Object.prototype.hasOwnProperty.call(e,r)||!Object.is(t[r],e[r]))return!1;return!0}n.d(e,{X:function(){return r}})},22353:function(t,e,n){"use strict";n.d(e,{F:function(){return f},s:function(){return c}});var r=n(27378),i=n(60626);let o=t=>{let e;let n=new Set,r=(t,r)=>{let i="function"==typeof t?t(e):t;if(!Object.is(i,e)){let t=e;e=(null!=r?r:"object"!=typeof i||null===i)?i:Object.assign({},e,i),n.forEach(n=>n(e,t))}},i=()=>e,o={setState:r,getState:i,getInitialState:()=>u,subscribe:t=>(n.add(t),()=>n.delete(t)),destroy:()=>{console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),n.clear()}},u=e=t(r,i,o);return o},u=t=>t?o(t):o,{useDebugValue:a}=r,{useSyncExternalStoreWithSelector:l}=i,s=t=>t;function c(t,e=s,n){let r=l(t.subscribe,t.getState,t.getServerState||t.getInitialState,e,n);return a(r),r}let h=(t,e)=>{let n=u(t),r=(t,r=e)=>c(n,t,r);return Object.assign(r,n),r},f=(t,e)=>t?h(t,e):h}}]);
|
@@ -1 +0,0 @@
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[6362],{812:function(e,t,i){i.d(t,{D4:function(){return s.D4},MM:function(){return h},Ot:function(){return d},c6:function(){return r},cj:function(){return p},e$:function(){return l},fn:function(){return o},iC:function(){return x},nU:function(){return u},tB:function(){return c}});var n,r,s=i(19043);let a="An unexpected error occurred. Please try again.",l=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:a;if((0,s.Bw)(e)){if((0,s.hE)(e.data))return e.data.detail;if((0,s.cz)(e.data)){var i;let t=null===(i=e.data.detail)||void 0===i?void 0:i[0];return"".concat(null==t?void 0:t.msg,": ").concat(null==t?void 0:t.loc)}if(409===e.status&&(0,s.Dy)(e.data)||404===e.status&&(0,s.XD)(e.data))return"".concat(e.data.detail.error," (").concat(e.data.detail.fides_key,")")}return t};function o(e){return"object"==typeof e&&null!=e&&"status"in e}function d(e){return"object"==typeof e&&null!=e&&"data"in e&&"string"==typeof e.data.detail}function c(e){return"object"==typeof e&&null!=e&&"data"in e&&Array.isArray(e.data.detail)}let u=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{status:500,message:a};if((0,s.oK)(e))return{status:e.originalStatus,message:e.data};if((0,s.Bw)(e)){let{status:i}=e;return{status:i,message:l(e,t.message)}}return t},h=e=>Object.entries(e).map(e=>({value:e[1],label:e[1]}));(n=r||(r={})).GVL="gvl",n.AC="gacp",n.COMPASS="compass";let x={gvl:{label:"GVL",fullName:"Global Vendor List"},gacp:{label:"AC",fullName:"Google Additional Consent List"},compass:{label:"",fullName:""}},p=e=>{let t=e.split(".")[0];return"gacp"===t?"gacp":"gvl"===t?"gvl":"compass"}},14047:function(e,t,i){i.d(t,{H:function(){return s},V:function(){return n.V}});var n=i(84306),r=i(812);let s=()=>{let{errorAlert:e}=(0,n.V)();return{handleError:t=>{let i="An unexpected error occurred. Please try again.";(0,r.Ot)(t)?i=t.data.detail:(0,r.tB)(t)&&(i=t.data.detail[0].msg),e(i)}}}},84306:function(e,t,i){i.d(t,{V:function(){return s}});var n=i(24246),r=i(56351);let s=()=>{let e=(0,r.pmc)();return{errorAlert:(t,i,s)=>{let a={...s,position:(null==s?void 0:s.position)||"top",render:e=>{let{onClose:s}=e;return(0,n.jsxs)(r.bZj,{alignItems:"normal",status:"error","data-testid":"error-alert",children:[(0,n.jsx)(r.zMQ,{}),(0,n.jsxs)(r.xuv,{children:[i&&(0,n.jsx)(r.CdC,{children:i}),(0,n.jsx)(r.XaZ,{children:t})]}),(0,n.jsx)(r.PZ7,{onClick:s,position:"relative",right:0,size:"sm",top:-1})]})}};(null==s?void 0:s.id)&&e.isActive(s.id)?e.update(s.id,a):e(a)},successAlert:(t,i,s)=>{let a={...s,position:(null==s?void 0:s.position)||"top",render:e=>{let{onClose:s}=e;return(0,n.jsxs)(r.bZj,{alignItems:"normal",status:"success",variant:"subtle","data-testid":"success-alert",children:[(0,n.jsx)(r.zMQ,{}),(0,n.jsxs)(r.xuv,{children:[i&&(0,n.jsx)(r.CdC,{children:i}),(0,n.jsx)(r.XaZ,{children:t})]}),(0,n.jsx)(r.PZ7,{onClick:s,position:"relative",right:0,size:"sm",top:-1})]})}};(null==s?void 0:s.id)&&e.isActive(s.id)?e.update(s.id,a):e(a)}}}},39715:function(e,t,i){var n=i(24246),r=i(56351);i(27378),t.Z=e=>{let{isEmptyState:t,yamlError:i}=e;return(0,n.jsx)(r.Rg9,{in:!0,children:(0,n.jsxs)(r.xuv,{w:"fit-content",bg:"white",p:3,borderRadius:3,children:[(0,n.jsxs)(r.Ugi,{children:[(0,n.jsx)(r.X6q,{as:"h5",color:"gray.700",size:"xs",children:"YAML"}),(0,n.jsx)(r.Vp9,{colorScheme:"red",size:"sm",variant:"solid",children:"Error"})]}),(0,n.jsx)(r.xuv,{bg:"red.50",border:"1px solid",borderColor:"red.300",color:"red.300",mt:"16px",borderRadius:"6px",children:(0,n.jsxs)(r.Ugi,{alignItems:"flex-start",margin:["14px","17px","14px","17px"],children:[(0,n.jsx)(r.f9v,{}),t&&(0,n.jsxs)(r.xuv,{children:[(0,n.jsx)(r.X6q,{as:"h5",color:"red.500",fontWeight:"semibold",size:"xs",children:"Error message:"}),(0,n.jsx)(r.xvT,{color:"gray.700",fontSize:"sm",fontWeight:"400",children:"Yaml system is required"})]}),i&&(0,n.jsxs)(r.xuv,{children:[(0,n.jsx)(r.X6q,{as:"h5",color:"red.500",fontWeight:"semibold",size:"xs",children:"Error message:"}),(0,n.jsx)(r.xvT,{color:"gray.700",fontSize:"sm",fontWeight:"400",children:i.message}),(0,n.jsx)(r.xvT,{color:"gray.700",fontSize:"sm",fontWeight:"400",children:i.reason}),(0,n.jsxs)(r.xvT,{color:"gray.700",fontSize:"sm",fontWeight:"400",children:["Ln ",(0,n.jsx)("b",{children:i.mark.line}),", Col"," ",(0,n.jsx)("b",{children:i.mark.column}),", Pos"," ",(0,n.jsx)("b",{children:i.mark.position})]})]})]})})]})})}},41207:function(e,t,i){i.d(t,{F:function(){return a},M:function(){return s}});var n=i(76649),r=i(65218);let s=i.n(r)()(()=>i.e(7088).then(i.bind(i,57088)).then(e=>e.default),{loadableGenerated:{webpack:()=>[57088]},ssr:!1}),a=e=>(0,n.Ln)({name:"string"},e)&&"YAMLException"===e.name},1226:function(e,t,i){var n=i(24246);i(27378);var r=i(77213);t.Z=e=>{let{children:t}=e;return(0,n.jsx)(r.Z,{title:"Connections",children:t})}},11274:function(e,t,i){i.d(t,{s:function(){return W}});var n=i(24246),r=i(96356),s=i(56351),a=i(86677),l=i(27378),o=i(16134),d=i(77830),c=i(21702),u=i(14047),h=i(84306),x=i(14207),p=i(45007),m=i(34090);let f=(e,t)=>{let i={...e};return Object.entries(t.properties).forEach(t=>{let[n,r]=t;if("integer"===r.type){let t=r.default?Number(r.default):e[n];i[n]=t||0}else{var s;let t=null!==(s=r.default)&&void 0!==s?s:e[n];i[n]=null!=t?t:null}}),i},g="#/definitions/FidesDatasetReference";var y=e=>{let{data:t,defaultValues:i,isSubmitting:a=!1,onSaveClick:d,onTestConnectionClick:h,testButtonLabel:p="Test integration"}=e,y=(0,l.useRef)(!1),{handleError:j}=(0,u.H)(),{connection:v,connectionOption:b}=(0,o.C)(r.ZZ),[k,C]=(0,x.h2)(),_=e=>{let t;return(void 0===e||""===e)&&(t="Connection Identifier is required"),e&&(0,s.kEn)(e)&&(t="Connection Identifier must be an alphanumeric value"),t},S=(e,t,i)=>{let n;return(void 0===t||""===t)&&(n="".concat(e," is required")),i===g&&(t.includes(".")?t.split(".").length<3&&(n="Dataset reference must include at least three parts"):n="Dataset reference must be dot delimited"),n},w=(e,t)=>(0,n.jsx)(s.lXp,{color:"gray.900",fontSize:"14px",fontWeight:"semibold",htmlFor:e,minWidth:"150px",children:t}),I=e=>{var t;if((null===(t=e.allOf)||void 0===t?void 0:t[0].$ref)===g)return"Enter dataset.collection.field"},z=(e,i)=>{var r;return(0,n.jsx)(m.gN,{id:e,name:e,validate:(null!==(r=t.required)&&void 0!==r&&!!r.includes(e)||"integer"===i.type)&&(e=>{var t;return S(i.title,e,null===(t=i.allOf)||void 0===t?void 0:t[0].$ref)}),children:r=>{var a;let{field:l,form:o}=r;return(0,n.jsxs)(s.NIc,{display:"flex",isRequired:null===(a=t.required)||void 0===a?void 0:a.includes(e),isInvalid:o.errors[e]&&o.touched[e],children:[w(e,i.title),(0,n.jsxs)(s.gCW,{align:"flex-start",w:"inherit",children:["integer"!==i.type&&(0,n.jsx)(s.IIB,{...l,value:l.value||"",placeholder:I(i),autoComplete:"off",color:"gray.700",size:"sm"}),"integer"===i.type&&(0,n.jsxs)(s.Y2U,{allowMouseWheel:!0,color:"gray.700",defaultValue:0,min:0,size:"sm",children:[(0,n.jsx)(s.zuI,{...l,autoComplete:"off"}),(0,n.jsxs)(s.FiK,{children:[(0,n.jsx)(s.WQu,{}),(0,n.jsx)(s.Y_d,{})]})]}),(0,n.jsx)(s.J1D,{children:o.errors[e]})]}),(0,n.jsx)(s.ua7,{"aria-label":i.description,hasArrow:!0,label:i.description,placement:"right-start",openDelay:500,children:(0,n.jsx)(s.kCb,{alignItems:"center",h:"32px",visibility:i.description?"visible":"hidden",children:(0,n.jsx)(s.ITP,{marginLeft:"8px",_hover:{cursor:"pointer"}})})})]})}},e)},R=async()=>{try{await k(v.key).unwrap()}catch(e){j(e)}};return(0,l.useEffect)(()=>(y.current=!0,C.isSuccess&&h(C),()=>{y.current=!1}),[h,C]),(0,n.jsx)(m.J9,{enableReinitialize:!0,initialValues:(()=>{let e={...i};if(null==v?void 0:v.key){var n,r;e.name=null!==(r=v.name)&&void 0!==r?r:"",e.description=v.description,e.instance_key=v.connection_type===c.Rj.SAAS?null===(n=v.saas_config)||void 0===n?void 0:n.fides_key:v.key}return f(e,t)})(),onSubmit:(e,i)=>{let n={...e};Object.keys(t.properties).forEach(i=>{var r;if((null===(r=t.properties[i].allOf)||void 0===r?void 0:r[0].$ref)===g){let t=e[i].split(".");n[i]={dataset:t.shift(),field:t.join("."),direction:"from"}}}),d(n,i)},validateOnBlur:!1,validateOnChange:!1,children:e=>(0,n.jsx)(m.l0,{noValidate:!0,children:(0,n.jsxs)(s.gCW,{align:"stretch",gap:"16px",children:[(0,n.jsx)(m.gN,{id:"name",name:"name",validate:e=>S("Name",e),children:t=>{let{field:i}=t;return(0,n.jsxs)(s.NIc,{display:"flex",isRequired:!0,isInvalid:e.errors.name&&e.touched.name,children:[w("name","Name"),(0,n.jsxs)(s.gCW,{align:"flex-start",w:"inherit",children:[(0,n.jsx)(s.IIB,{...i,autoComplete:"off",autoFocus:!0,color:"gray.700",placeholder:"Enter a friendly name for your new ".concat(b.human_readable," connection"),size:"sm","data-testid":"input-name"}),(0,n.jsx)(s.J1D,{children:e.errors.name})]}),(0,n.jsx)(s.kCb,{alignItems:"center",h:"32px",visibility:"hidden",children:(0,n.jsx)(s.ITP,{marginLeft:"8px"})})]})}}),(0,n.jsx)(m.gN,{id:"description",name:"description",children:e=>{let{field:t}=e;return(0,n.jsxs)(s.NIc,{display:"flex",children:[w("description","Description"),(0,n.jsx)(s.gxH,{...t,color:"gray.700",placeholder:"Enter a description for your new ".concat(b.human_readable," connection"),resize:"none",size:"sm",value:t.value||""}),(0,n.jsx)(s.kCb,{alignItems:"center",h:"32px",visibility:"hidden",children:(0,n.jsx)(s.ITP,{marginLeft:"8px"})})]})}}),(0,n.jsx)(m.gN,{id:"instance_key",name:"instance_key",validate:_,children:t=>{let{field:i}=t;return(0,n.jsxs)(s.NIc,{display:"flex",isRequired:!0,isInvalid:e.errors.instance_key&&e.touched.instance_key,children:[w("instance_key","Connection Identifier"),(0,n.jsxs)(s.gCW,{align:"flex-start",w:"inherit",children:[(0,n.jsx)(s.IIB,{...i,autoComplete:"off",color:"gray.700",isDisabled:!!(null==v?void 0:v.key),placeholder:"A unique identifier for your new ".concat(b.human_readable," connection"),size:"sm"}),(0,n.jsx)(s.J1D,{children:e.errors.instance_key})]}),(0,n.jsx)(s.ua7,{"aria-label":"The fides_key will allow fidesops to associate dataset field references appropriately. Must be a unique alphanumeric value with no spaces (underscores allowed) to represent this connection.",hasArrow:!0,label:"The fides_key will allow fidesops to associate dataset field references appropriately. Must be a unique alphanumeric value with no spaces (underscores allowed) to represent this connection.",placement:"right-start",openDelay:500,children:(0,n.jsx)(s.kCb,{alignItems:"center",h:"32px",children:(0,n.jsx)(s.ITP,{marginLeft:"8px",_hover:{cursor:"pointer"}})})})]})}}),Object.entries(t.properties).map(e=>{let[t,i]=e;return"advanced_settings"===t?null:z(t,i)}),(0,n.jsxs)("div",{className:"flex gap-2",children:[(0,n.jsx)(s.wpx,{disabled:!(null==v?void 0:v.key),loading:C.isLoading||C.isFetching,onClick:R,"data-testid":"test-connection-button",children:p}),(0,n.jsx)(s.wpx,{htmlType:"submit",type:"primary",disabled:a,loading:a,children:"Save"})]})]})})})},j=i(3968);let v=e=>{let{onConnectionCreated:t,data:i}=e,s=(0,p.I0)(),{errorAlert:a,successAlert:d}=(0,h.V)(),{handleError:m}=(0,u.H)(),[f,g]=(0,l.useState)(!1),{connection:y,connectionOption:v}=(0,o.C)(r.ZZ),[b]=(0,x.pH)(),[k]=(0,x.Du)();return{isSubmitting:f,handleSubmit:async e=>{try{var l;g(!0);let o={access:c.uv.WRITE,connection_type:null==v?void 0:v.identifier,description:e.description,disabled:!1,key:(0,j.E)(e.instance_key),name:e.name},u=await b(o).unwrap();if((null===(l=u.failed)||void 0===l?void 0:l.length)>0)a(u.failed[0].message);else{let l={connection_key:u.succeeded[0].key,secrets:{}};Object.entries(i.properties).forEach(t=>{l.secrets[t[0]]=e[t[0]]});let o=await k(l).unwrap();"failed"===o.test_status?a((0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("b",{children:"Message:"})," ",o.msg,(0,n.jsx)("br",{}),(0,n.jsx)("b",{children:"Failure Reason:"})," ",o.failure_reason]})):(s((0,r.lm)(u.succeeded[0])),d("Connector successfully ".concat((null==y?void 0:y.key)?"updated":"added","!")),(null==y?void 0:y.key)||!t||t())}}catch(e){m(e)}finally{g(!1)}},connectionOption:v}},b=e=>{let{data:t,onConnectionCreated:i,onTestConnectionClick:r}=e,{isSubmitting:a,handleSubmit:l,connectionOption:o}=v({onConnectionCreated:i,data:t});return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)(s.xuv,{color:"gray.700",fontSize:"14px",h:"80px",children:["Connect to your ",o.human_readable," environment by providing the information below. Once you have saved the form, you may test the integration to confirm that it's working correctly."]}),(0,n.jsx)(y,{data:t,defaultValues:{description:"",instance_key:"",name:""},isSubmitting:a,onSaveClick:l,onTestConnectionClick:r})]})},k={description:"",instance_key:"",name:""},C=e=>{let{data:t,onConnectionCreated:i,onTestEmail:r}=e,{connectionOption:a,isSubmitting:l,handleSubmit:o}=v({onConnectionCreated:i,data:t});return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)(s.xuv,{color:"gray.700",fontSize:"14px",h:"80px",children:["Configure your ",a.human_readable," connector by providing the connector name, description and a test email address. Once you have saved the details, you can click test email to check the format of the email."]}),(0,n.jsx)(y,{data:t,defaultValues:k,isSubmitting:l,onSaveClick:e=>{o(e)},onTestConnectionClick:r,testButtonLabel:"Test email"})]})};var _=i(59389),S=i(27259),w=i(67762),I=e=>{let{defaultValues:t,isSubmitting:i=!1,onSaveClick:l}=e,c=(0,a.useRouter)(),{connection:u,connectionOption:h}=(0,o.C)(r.ZZ);return(0,n.jsx)(m.J9,{initialValues:(()=>{if(null==u?void 0:u.key){var e;t.name=null!==(e=u.name)&&void 0!==e?e:"",t.description=u.description}return t})(),onSubmit:(e,t)=>{l(e,t)},validateOnBlur:!1,validateOnChange:!1,validationSchema:_.Ry().shape({name:_.Z_().required("Name is required")}),children:(0,n.jsx)(m.l0,{noValidate:!0,children:(0,n.jsxs)(s.gCW,{align:"stretch",gap:"16px",children:[(0,n.jsx)(S.Z,{autoFocus:!0,disabled:!!(null==u?void 0:u.key),isRequired:!0,label:"Name",name:"name",placeholder:"Enter a friendly name for your new ".concat(h.human_readable," connection")}),(0,n.jsx)(S.Z,{label:"Description",name:"description",placeholder:"Enter a description for your new ".concat(h.human_readable," connection"),type:"textarea"}),(0,n.jsx)(w.h,{isSubmitting:i,onCancelClick:()=>{c.push(d.JR)}})]})})})};let z=e=>{let{onConnectionCreated:t}=e,i=(0,p.I0)(),{errorAlert:a,successAlert:d}=(0,h.V)(),{handleError:m}=(0,u.H)(),[f,g]=(0,l.useState)(!1),{connection:y,connectionOption:j}=(0,o.C)(r.ZZ),[v]=(0,x.pH)(),b=async(e,n)=>{try{var s;g(!0);let n={access:c.uv.WRITE,connection_type:null==j?void 0:j.identifier,description:e.description,disabled:!1,name:e.name,key:null==y?void 0:y.key},l=await v(n).unwrap();(null===(s=l.failed)||void 0===s?void 0:s.length)>0?a(l.failed[0].message):(i((0,r.lm)(l.succeeded[0])),d("Connector successfully ".concat((null==y?void 0:y.key)?"updated":"added","!")),(null==y?void 0:y.key)||!t||t())}catch(e){m(e)}finally{g(!1)}};return(0,n.jsxs)(s.gCW,{align:"stretch",gap:"16px",children:[(0,n.jsxs)(s.xuv,{color:"gray.700",fontSize:"14px",children:["To begin setting up your new ",j.human_readable," ","connector you must first assign a name to the connector and a description.",(0,n.jsx)("br",{}),(0,n.jsx)("br",{}),"Once you have completed this section you can then progress onto"," ",(0,n.jsx)(s.xvT,{display:"inline-block",fontWeight:"700",children:"DSR customization"})," ","using the menu on the left hand side."]}),(0,n.jsx)(I,{defaultValues:{description:"",name:""},isSubmitting:f,onSaveClick:b})]})},R=e=>{let{data:t,onConnectionCreated:i,onTestConnectionClick:a}=e,d=(0,p.I0)(),{errorAlert:m,successAlert:f}=(0,h.V)(),{handleError:g}=(0,u.H)(),[v,b]=(0,l.useState)(!1),{connection:k,connectionOption:C}=(0,o.C)(r.ZZ),[_]=(0,x.pL)(),[S]=(0,x.pH)(),[w]=(0,x.Du)(),I=async(e,s)=>{try{if(b(!0),k){var a;let i={access:c.uv.WRITE,connection_type:k.connection_type,description:e.description,disabled:!1,key:k.key,name:e.name},s=await S(i).unwrap();if((null===(a=s.failed)||void 0===a?void 0:a.length)>0)m(s.failed[0].message);else{d((0,r.lm)(s.succeeded[0]));let i={connection_key:k.key,secrets:{}};Object.entries(t.properties).forEach(t=>{i.secrets[t[0]]=e[t[0]]});let a=await w(i).unwrap();"failed"===a.test_status?m((0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("b",{children:"Message:"})," ",a.msg,(0,n.jsx)("br",{}),(0,n.jsx)("b",{children:"Failure Reason:"})," ",a.failure_reason]})):f("Connector successfully updated!")}}else{let n={description:e.description,name:e.name,instance_key:(0,j.E)(e.instance_key),saas_connector_type:C.identifier,secrets:{}};Object.entries(t.properties).forEach(t=>{n.secrets[t[0]]=e[t[0]]});let s=await _(n).unwrap();d((0,r.lm)(s.connection)),f("Connector successfully added!"),null==i||i()}}catch(e){g(e)}finally{b(!1)}};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)(s.xuv,{color:"gray.700",fontSize:"14px",h:"80px",children:["Connect to your ",C.human_readable," environment by providing the information below. Once you have saved the form, you may test the integration to confirm that it's working correctly."]}),(0,n.jsx)(y,{data:t,defaultValues:{description:"",instance_key:"",name:""},isSubmitting:v,onSaveClick:I,onTestConnectionClick:a})]})};var Z=i(16394);let T=e=>{var t,i;let{response:a}=e,{connectionOption:l}=(0,o.C)(r.ZZ);return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(s.izJ,{color:"gray.100"}),(0,n.jsxs)(s.gCW,{align:"flex-start",mt:"16px",children:[(null===(t=a.data)||void 0===t?void 0:t.test_status)==="succeeded"&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)(s.Ugi,{children:[(0,n.jsxs)(s.X6q,{as:"h5",color:"gray.700",size:"xs",children:["Successfully connected to ",l.human_readable]}),(0,n.jsx)(s.Vp9,{colorScheme:"green",size:"sm",variant:"solid",children:"Success"})]}),(0,n.jsx)(s.xvT,{color:"gray.500",fontSize:"sm",mt:"12px !important",children:(0,Z.p6)(a.fulfilledTimeStamp)}),(0,n.jsx)(s.xuv,{bg:"green.100",border:"1px solid",borderColor:"green.300",color:"green.700",mt:"16px",borderRadius:"6px",children:(0,n.jsxs)(s.Ugi,{alignItems:"flex-start",margin:["14px","17px","14px","17px"],children:[(0,n.jsx)(s.StI,{}),(0,n.jsxs)(s.xuv,{children:[(0,n.jsx)(s.X6q,{as:"h5",color:"green.500",fontWeight:"semibold",size:"xs",children:"Success message:"}),(0,n.jsx)(s.xvT,{color:"gray.700",fontSize:"sm",fontWeight:"400",children:a.data.msg})]})]})})]}),(null===(i=a.data)||void 0===i?void 0:i.test_status)==="failed"&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)(s.Ugi,{children:[(0,n.jsxs)(s.X6q,{as:"h5",color:"gray.700",size:"xs",children:["Output error to ",l.human_readable]}),(0,n.jsx)(s.Vp9,{colorScheme:"red",size:"sm",variant:"solid",children:"Error"})]}),(0,n.jsx)(s.xvT,{color:"gray.500",fontSize:"sm",mt:"12px !important",children:(0,Z.p6)(a.fulfilledTimeStamp)}),(0,n.jsx)(s.xuv,{bg:"red.50",border:"1px solid",borderColor:"red.300",color:"red.300",mt:"16px",borderRadius:"6px",children:(0,n.jsxs)(s.Ugi,{alignItems:"flex-start",margin:["14px","17px","14px","17px"],children:[(0,n.jsx)(s.f9v,{}),(0,n.jsxs)(s.xuv,{children:[(0,n.jsx)(s.X6q,{as:"h5",color:"red.500",fontWeight:"semibold",size:"xs",children:"Error message:"}),(0,n.jsx)(s.xvT,{color:"gray.700",fontSize:"sm",fontWeight:"400",children:a.data.failure_reason}),(0,n.jsx)(s.xvT,{color:"gray.700",fontSize:"sm",fontWeight:"400",children:a.data.msg})]})]})})]})]})]})},W=e=>{let{onConnectionCreated:t}=e,i=(0,a.useRouter)(),{connectionOption:u}=(0,o.C)(r.ZZ),h=u&&u.type===c.Zi.MANUAL,{data:x,isFetching:p,isLoading:m,isSuccess:f}=(0,r.n3)(u.identifier,{skip:h}),[g,y]=(0,l.useState)(),j=e=>{y(e)},v=(0,l.useCallback)(()=>{i.push(d.JR)},[i]),k=(0,l.useCallback)(()=>{switch(null==u?void 0:u.type){case c.Zi.DATABASE:if(f&&x)return(0,n.jsx)(b,{data:x,onConnectionCreated:t,onTestConnectionClick:j});break;case c.Zi.MANUAL:return(0,n.jsx)(z,{onConnectionCreated:t});case c.Zi.SAAS:if(f&&x)return(0,n.jsx)(R,{data:x,onConnectionCreated:t,onTestConnectionClick:j});break;case c.Zi.EMAIL:if(f&&x)return(0,n.jsx)(C,{data:x,onConnectionCreated:v,onTestEmail:j})}},[null==u?void 0:u.type,x,f,t,v]);return(0,n.jsxs)(s.kCb,{gap:"97px",children:[(0,n.jsxs)(s.gCW,{w:"579px",gap:"16px",align:"stretch",children:[(p||m)&&(0,n.jsx)(s.M5Y,{children:(0,n.jsx)(s.$jN,{})}),k()]}),g&&(0,n.jsxs)(s.Rg9,{in:!0,children:[" ",(0,n.jsx)(s.xuv,{mt:"16px",maxW:"528px",w:"fit-content",children:(0,n.jsx)(T,{response:g})})]})]})}},38212:function(e,t,i){i.d(t,{Z:function(){return v}});var n=i(24246),r=i(14047),s=i(96356),a=i(14207),l=i(56351),o=i(86677),d=i(27378),c=i(16134),u=i(812),h=i(77830),x=i(41966),p=i(84306),m=i(66527),f=i(41207),g=i(39715),y=e=>{let{data:t=[],isSubmitting:i=!1,onSubmit:r,onCancel:s,disabled:a}=e,o=(0,d.useRef)(null),{errorAlert:c}=(0,p.V)(),u=t.length>0?m.ZP.dump(t):void 0,[h,y]=(0,d.useState)(void 0),[j,v]=(0,d.useState)(!1),[b,k]=(0,d.useState)(!u),C=(0,l.qY0)(),{data:_}=(0,x.NR)(),[S,w]=(0,d.useState)([]),I=e=>{m.ZP.load(e,{json:!0}),y(void 0)},z=()=>{let e=o.current.getValue();r(m.ZP.load(e,{json:!0})),w([])};return(0,n.jsxs)(l.kCb,{gap:"97px",children:[(0,n.jsxs)(l.gCW,{align:"stretch",w:"800px",children:[(0,n.jsx)(f.M,{defaultLanguage:"yaml",defaultValue:u,height:"calc(100vh - 526px)",onChange:e=>{try{v(!0),I(e),k(!!(!e||""===e.trim()))}catch(e){(0,f.F)(e)?y(e):c("Could not parse the supplied YAML")}},onMount:(e,t)=>{o.current=e,o.current.focus()},options:{fontFamily:"Menlo",fontSize:13,minimap:{enabled:!0},readOnly:a},theme:"light"}),(0,n.jsxs)(l.Ugi,{justifyContent:"flex-end",pr:6,children:[s&&(0,n.jsx)(l.wpx,{onClick:s,children:"Cancel"}),(0,n.jsx)(l.wpx,{type:"primary",disabled:a||b||!!h||i,loading:i,onClick:()=>{if(_&&_.length){let e=o.current.getValue(),t=_.filter(t=>e.includes("fides_key: ".concat(t.fides_key,"\n"))).map(e=>e.fides_key);if(w(t),t.length){C.onOpen();return}}z()},htmlType:"submit","data-testid":"save-yaml-btn",children:"Save"})]})]}),j&&(b||h)&&(0,n.jsx)(g.Z,{isEmptyState:b,yamlError:h}),(0,n.jsx)(l.cVQ,{isOpen:C.isOpen,onClose:C.onClose,onConfirm:()=>{z(),C.onClose()},title:"Overwrite dataset",message:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)(l.xvT,{children:["You are about to overwrite the dataset",S.length>1?"s":""," ",S.map((e,t)=>{let i=t===S.length-1;return(0,n.jsxs)(d.Fragment,{children:[(0,n.jsx)(l.xvT,{color:"complimentary.500",as:"span",fontWeight:"bold",children:e}),i?".":", "]},e)})]}),(0,n.jsx)(l.xvT,{children:"Are you sure you would like to continue?"})]})})]})};let j=e=>{let{children:t,...i}=e;return(0,n.jsx)(l.xvT,{color:"gray.700",fontSize:"14px",...i,children:t})};var v=()=>{let e=(0,o.useRouter)(),{errorAlert:t,successAlert:i}=(0,r.V)(),{handleError:p}=(0,r.H)(),[m,f]=(0,d.useState)(!1),{connection:g}=(0,c.C)(s.ZZ),{data:v,isFetching:b,isLoading:k,isSuccess:C}=(0,a.Eg)(g.key),[_]=(0,a.Lz)(),[S]=(0,x.EG)(),{data:w,isLoading:I,error:z}=(0,x.NR)(),[R,Z]=(0,d.useState)(void 0);(0,d.useEffect)(()=>{v&&v.items.length&&Z(v.items[0].ctl_dataset.fides_key)},[v]);let T=async n=>{var r;let s={connection_key:null==g?void 0:g.key,dataset_pairs:n},a=await _(s).unwrap();(null===(r=a.failed)||void 0===r?void 0:r.length)>0?t(a.failed[0].message):i("Dataset successfully updated!"),e.push(h.JR)},W=async()=>{if(R)try{let e=R;v&&v.items.length&&(e=v.items[0].fides_key);let t=[{fides_key:e,ctl_dataset_fides_key:R}];T(t)}catch(e){p(e)}},F=async e=>{try{f(!0);let i=Array.isArray(e)?e:[e],n=await S(i);if("error"in n){let e=(0,u.e$)(n.error);t(e);return}let r=i.map(e=>({fides_key:e.fides_key,ctl_dataset_fides_key:e.fides_key}));if(v&&v.items.length){let{items:e}=v;r=e.map((e,t)=>({fides_key:e.fides_key,ctl_dataset_fides_key:i[t].fides_key}))}T(r)}catch(e){p(e)}finally{f(!1)}},A=""!==R&&void 0!==R;if(b||k||I&&!z)return(0,n.jsx)(l.M5Y,{children:(0,n.jsx)(l.$jN,{})});let E=w&&w.length;return(0,n.jsxs)(l.gCW,{alignItems:"left",gap:4,children:[z&&(0,n.jsx)(j,{color:"red",children:"There was a problem loading existing datasets, please try again."}),(0,n.jsxs)(l.gCW,{alignItems:"flex-start",children:[E&&(0,n.jsx)("div",{children:(0,n.jsx)(l.gCW,{alignSelf:"start",gap:4,children:(0,n.jsxs)(l.xuv,{"data-testid":"dataset-selector-section",children:[(0,n.jsx)(j,{mb:4,children:"Choose a dataset to associate with this connector."}),(0,n.jsxs)(l.Ugi,{children:[(0,n.jsx)(l.WPr,{allowClear:!0,options:w.map(e=>({label:e.fides_key,value:e.fides_key})),className:"w-full",placeholder:"Select",onChange:e=>Z(e),value:R,"data-testid":"dataset-selector"}),(0,n.jsx)(l.wpx,{onClick:W,type:"primary",className:"self-start",disabled:!A,"data-testid":"save-dataset-link-btn",children:"Save"})]})]})})}),E&&C&&(null==v?void 0:v.items)&&(0,n.jsx)(l.htM,{plain:!0,children:"or"}),C&&(null==v?void 0:v.items)&&(0,n.jsxs)(l.xuv,{"data-testid":"yaml-editor-section",children:[(0,n.jsx)(j,{mb:4,children:"View your dataset YAML below!"}),(0,n.jsx)(y,{data:v.items.map(e=>e.ctl_dataset),isSubmitting:m,onSubmit:F,disabled:A})]})]})]})}},27259:function(e,t,i){var n=i(24246),r=i(56351),s=i(34090);t.Z=e=>{let{disabled:t=!1,displayHelpIcon:i=!0,helpIconVisibility:a=!1,isRequired:l=!1,label:o,placeholder:d,type:c="text",...u}=e,{id:h,autoFocus:x}=u,[p,m]=(0,s.U$)(u);return(0,n.jsxs)(r.NIc,{display:"flex",isRequired:l,isInvalid:!!(m.error&&m.touched),children:[o&&(0,n.jsx)(r.lXp,{color:"gray.900",fontSize:"14px",fontWeight:"semibold",htmlFor:h,minWidth:"150px",children:o}),(0,n.jsxs)(r.gCW,{align:"flex-start",w:"inherit",children:["number"===c&&(0,n.jsxs)(r.Y2U,{allowMouseWheel:!0,color:"gray.700",defaultValue:0,min:0,size:"sm",children:[(0,n.jsx)(r.zuI,{...p,autoComplete:"off",autoFocus:x}),(0,n.jsxs)(r.FiK,{children:[(0,n.jsx)(r.WQu,{}),(0,n.jsx)(r.Y_d,{})]})]}),"text"===c&&(0,n.jsx)(r.IIB,{...p,autoComplete:"off",autoFocus:x,color:"gray.700",isDisabled:t,placeholder:d,size:"sm"}),"textarea"===c&&(0,n.jsx)(r.gxH,{...p,autoComplete:"off",autoFocus:x,color:"gray.700",placeholder:d,resize:"none",size:"sm",value:p.value||""}),(0,n.jsx)(r.J1D,{children:m.error})]}),i&&(0,n.jsx)(r.kCb,{alignContent:"center",h:"32px",visibility:a?"visible":"hidden",children:(0,n.jsx)(r.ITP,{marginLeft:"8px",_hover:{cursor:"pointer"}})})]})}},67762:function(e,t,i){i.d(t,{h:function(){return s}});var n=i(24246),r=i(56351);i(27378);let s=e=>{let{isSubmitting:t=!1,onCancelClick:i}=e;return(0,n.jsxs)(r.hE2,{size:"sm",spacing:"8px",variant:"outline",children:[(0,n.jsx)(r.zxk,{onClick:i,variant:"outline",children:"Cancel"}),(0,n.jsx)(r.zxk,{bg:"primary.800",color:"white",isDisabled:t,isLoading:t,loadingText:"Submitting",size:"sm",variant:"solid",type:"submit",_active:{bg:"primary.500"},_disabled:{opacity:"inherit"},_hover:{bg:"primary.400"},children:"Save"})]})}},50881:function(e,t,i){i.d(t,{Z:function(){return v}});var n=i(24246),r=i(14047),s=i(96356),a=i(14207),l=i(56351),o=i(86677),d=i(27378),c=i(16134),u=i(77830),h=i(34090),x=i(59389),p=i(97181),m=i(57072),f=i(39864),g=i(27259),y=i(67762),j=e=>{let{data:t=[],isSubmitting:i=!1,onSaveClick:s}=e,{isLoading:a}=(0,m.MO)(),d=(0,c.C)(f.qb),j=(0,o.useRouter)(),{errorAlert:v}=(0,r.V)(),b=()=>{j.push(u.JR)};return a?null:(0,n.jsx)(h.J9,{enableReinitialize:!0,initialValues:{fields:t.length>0?t:[{pii_field:"",dsr_package_label:"",data_categories:[]}]},onSubmit:(e,t)=>{if(new Set(e.fields.map(e=>e.pii_field)).size<e.fields.length){v("PII Field must be unique");return}s(e,t)},validateOnBlur:!1,validateOnChange:!1,validationSchema:x.Ry({fields:x.IX().of(x.Ry().shape({pii_field:x.Z_().required("PII Field is required").min(1,"PII Field must have at least one character").max(200,"PII Field has a maximum of 200 characters").label("PII Field"),dsr_package_label:x.Z_().required("DSR Package Label is required").min(1,"DSR Package Label must have at least one character").max(200,"DSR Package Label has a maximum of 200 characters").label("DSR Package Label"),data_categories:x.IX(x.Z_()).label("Data Categories")}))}),children:e=>(0,n.jsx)(h.l0,{style:{marginTop:0},noValidate:!0,children:(0,n.jsx)(l.gCW,{align:"stretch",children:(0,n.jsx)(h.F2,{name:"fields",render:t=>{let{fields:r}=e.values;return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)(l.Ugi,{color:"gray.900",flex:"1",fontSize:"14px",fontWeight:"semibold",lineHeight:"20px",mb:"6px",spacing:"24px",children:[(0,n.jsx)(l.xuv,{w:"416px",children:"PII Field"}),(0,n.jsx)(l.xuv,{w:"416px",children:"DSR Package Label"}),(0,n.jsx)(l.xuv,{w:"416px",children:"Data Categories"}),(0,n.jsx)(l.xuv,{visibility:"hidden",children:(0,n.jsx)(l.lr0,{})})]}),(0,n.jsx)(l.xuv,{children:r&&r.length>0?r.map((e,i)=>(0,n.jsxs)(l.Ugi,{mt:i>0?"12px":void 0,spacing:"24px",align:"flex-start",children:[(0,n.jsx)(l.xuv,{minH:"57px",w:"416px",children:(0,n.jsx)(g.Z,{autoFocus:0===i,displayHelpIcon:!1,isRequired:!0,name:"fields.".concat(i,".pii_field")})}),(0,n.jsx)(l.xuv,{minH:"57px",w:"416px",children:(0,n.jsx)(g.Z,{displayHelpIcon:!1,isRequired:!0,name:"fields.".concat(i,".dsr_package_label")})}),(0,n.jsx)(l.xuv,{minH:"57px",w:"416px",children:(0,n.jsx)(p.d,{name:"fields.".concat(i,".data_categories"),options:d.map(e=>({value:e.fides_key,label:e.fides_key})),isRequired:!0,mode:"multiple"})}),(0,n.jsx)(l.xuv,{h:"57px",visibility:i>0?"visible":"hidden",children:(0,n.jsx)(l.lr0,{onClick:()=>t.remove(i),_hover:{cursor:"pointer"}})})]},i)):null}),(0,n.jsx)(l.xvT,{color:"complimentary.500",fontWeight:"medium",fontSize:"sm",mb:"24px !important",mt:"24px !important",onClick:()=>{t.push({pii_field:"",dsr_package_label:"",data_categories:[]})},_hover:{cursor:"pointer"},children:"Add new PII field"}),(0,n.jsx)(y.h,{isSubmitting:i,onCancelClick:b})]})}})})})})},v=()=>{let e=(0,d.useRef)(!1),t=(0,o.useRouter)(),{successAlert:i}=(0,r.V)(),{handleError:h}=(0,r.H)(),[x,p]=(0,d.useState)(!1),[m,f]=(0,d.useState)([]),{connection:g}=(0,c.C)(s.ZZ),{data:y,isFetching:v,isLoading:b,isSuccess:k}=(0,a.QV)(g.key),[C]=(0,a.jF)(),[_]=(0,a._d)(),S=async(e,n)=>{try{p(!0);let n={connection_key:null==g?void 0:g.key,body:{...e}};m.length>0?await _(n).unwrap():await C(n).unwrap(),i("DSR customization ".concat(m.length>0?"updated":"added","!")),t.push(u.JR)}catch(e){h(e)}finally{p(!1)}};return(0,d.useEffect)(()=>(e.current=!0,k&&y&&f(y.fields),()=>{e.current=!1}),[y,k]),(0,n.jsxs)(l.gCW,{align:"stretch",gap:"16px",children:[(0,n.jsx)(l.xuv,{color:"gray.700",fontSize:"14px",w:"572px",children:"Customize your PII fields to create a friendly label name for your privacy request packages. This “Package Label” is the label your user will see in their downloaded package."}),(v||b)&&(0,n.jsx)(l.M5Y,{children:(0,n.jsx)(l.$jN,{})}),e.current&&!b?(0,n.jsx)(j,{data:m,isSubmitting:x,onSaveClick:S}):null]})}},19043:function(e,t,i){i.d(t,{Bw:function(){return a},D4:function(){return r},Dy:function(){return o},XD:function(){return d},cz:function(){return c},hE:function(){return l},oK:function(){return s}});var n=i(76649);let r=e=>"error"in e,s=e=>(0,n.Ln)({status:"string"},e)&&"PARSING_ERROR"===e.status,a=e=>(0,n.Ln)({status:"number",data:{}},e),l=e=>(0,n.Ln)({detail:"string"},e),o=e=>(0,n.Ln)({detail:{error:"string",resource_type:"string",fides_key:"string"}},e),d=e=>(0,n.Ln)({detail:{error:"string",resource_type:"string",fides_key:"string"}},e),c=e=>(0,n.Ln)({detail:[{loc:["string","number"],msg:"string",type:"string"}]},e)},76649:function(e,t,i){i.d(t,{Ln:function(){return n}});let n=(e,t)=>s(e,t),r=Symbol("SOME"),s=(e,t)=>"string"==typeof e?e===typeof t:Array.isArray(e)?r 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,i])=>s(i,t[e]));class a{static narrow(e){return new a(t=>n(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,i=e instanceof a?e.NF:e instanceof Function?e:t=>n(e,t);return new a(e=>t(e)&&i(e))}}new a(e=>!0)}}]);
|
@@ -1 +0,0 @@
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7495],{18225:function(e,s,t){var i=t(24246),a=t(56351);s.Z=e=>{let{...s}=e;return(0,i.jsx)(a.kCb,{boxSize:"full",align:"center",justify:"center",children:(0,i.jsx)(a.$jN,{color:"primary",...s})})}},79789:function(e,s,t){t.d(s,{Hn:function(){return o},XU:function(){return r},Z5:function(){return c},aG:function(){return h},cB:function(){return n},hX:function(){return l},vQ:function(){return d}});var i=t(24246),a=t(56351);let n=e=>{let{text:s,...t}=e;return(0,i.jsx)(a.X6q,{fontSize:"sm",mt:4,mb:1,...t,children:s})},r=e=>{let{children:s}=e;return(0,i.jsx)(a.xvT,{fontSize:"14px",mb:4,children:s})},o=e=>{let{children:s,href:t}=e;return(0,i.jsx)(a.rUS,{href:t,textDecoration:"underline",isExternal:!0,children:s})},c=e=>{let{children:s}=e;return(0,i.jsx)(a.QI$,{fontSize:"14px",mb:4,children:s})},d=e=>{let{children:s}=e;return(0,i.jsx)(a.GSI,{fontSize:"14px",mb:4,ml:6,children:s})},l=e=>{let{children:s}=e;return(0,i.jsx)(a.EKh,{display:"block",whiteSpace:"pre",p:4,mb:4,overflowX:"scroll",children:s})},h=e=>{let{data:s}=e;return(0,i.jsxs)(a.iA_,{fontSize:"14px",children:[(0,i.jsx)(a.hrZ,{children:(0,i.jsxs)(a.Tr,{children:[(0,i.jsx)(a.Th,{children:"Permission"}),(0,i.jsx)(a.Th,{children:"Description"})]})}),(0,i.jsx)(a.p3B,{children:s.map(e=>(0,i.jsxs)(a.Tr,{children:[(0,i.jsx)(a.Td,{children:(0,i.jsx)(a.Vp9,{children:e.permission})}),(0,i.jsx)(a.Td,{children:e.description})]},e.permission))})]})}},8133:function(e,s,t){var i=t(24246),a=t(56351);s.Z=e=>{let{title:s,children:t,isOpen:n,onClose:r,...o}=e;return(0,i.jsxs)(a.u_l,{isOpen:n,onClose:r,isCentered:!0,scrollBehavior:"inside",size:"xl",id:"add-modal",...o,children:[(0,i.jsx)(a.ZAr,{}),(0,i.jsxs)(a.hzk,{textAlign:"left",p:0,"data-testid":"add-modal-content",children:[(0,i.jsx)(a.xBx,{p:0,children:(0,i.jsx)(a.xuv,{backgroundColor:"gray.50",px:6,py:4,border:"1px",borderColor:"gray.200",borderTopRadius:6,display:"flex",justifyContent:"space-between",alignItems:"center",children:(0,i.jsx)(a.X6q,{as:"h3",size:"sm",children:s})})}),(0,i.jsx)(a.fef,{pb:4,overflow:"auto",children:t})]})]})}},15872:function(e,s,t){var i=t(24246),a=t(56351),n=t(86677);t(27378);var r=t(77830),o=t(14207);s.Z=e=>{let{connection_key:s,showMenu:t}=e,{isOpen:c,onOpen:d,onClose:l}=(0,a.qY0)(),[h,u]=(0,o.R5)(),x=(0,n.useRouter)(),j=()=>{u.isLoading||l()};return(0,i.jsxs)(i.Fragment,{children:[t&&(0,i.jsx)(a.sNh,{_focus:{color:"complimentary.500",bg:"gray.100"},onClick:d,children:(0,i.jsx)(a.xvT,{fontSize:"sm",children:"Delete"})}),!t&&(0,i.jsx)(a.wpx,{onClick:d,children:"Delete integration"}),(0,i.jsxs)(a.u_l,{isCentered:!0,isOpen:c,onClose:j,children:[(0,i.jsx)(a.ZAr,{}),(0,i.jsxs)(a.hzk,{children:[(0,i.jsx)(a.xBx,{children:"Delete integration"}),(0,i.jsx)(a.olH,{}),(0,i.jsx)(a.fef,{pb:6,children:(0,i.jsx)(a.Kqy,{direction:"column",spacing:"15px",children:(0,i.jsx)(a.xvT,{color:"gray.600",fontSize:"sm",fontWeight:"sm",lineHeight:"20px",children:"Deleting an integration may impact any privacy request that is currently in progress. Do you wish to proceed?"})})}),(0,i.jsxs)(a.mzw,{className:"flex gap-4",children:[(0,i.jsx)(a.wpx,{onClick:j,className:"w-1/2",children:"Cancel"}),(0,i.jsx)(a.wpx,{onClick:()=>{s&&(h(s),t||x.push(r.KH))},loading:u.isLoading,type:"primary",className:"w-1/2",children:"Delete integration"})]})]})]})]})}},45216:function(e,s,t){var i=t(56351),a=t(812),n=t(16394),r=t(14207);s.Z=e=>{let[s,{data:t,fulfilledTimeStamp:o,isLoading:c,isFetching:d}]=(0,r.h2)(),l=(0,i.pmc)();return{testConnection:async()=>{var t,i;if(!e)return;let n=await s(e.key);n.isError?l({status:"error",description:(0,a.e$)(n.error,"Unable to test connection. Please try again.")}):(null===(t=n.data)||void 0===t?void 0:t.test_status)==="succeeded"?l({status:"success",description:"Connected successfully"}):(null===(i=n.data)||void 0===i?void 0:i.test_status)==="failed"&&l({status:"warning",description:"Connection test failed"})},isLoading:c||d,testData:{timestamp:o?(0,n.p6)(o):null==e?void 0:e.last_test_timestamp,succeeded:t?"succeeded"===t.test_status:!!(null==e?void 0:e.last_test_succeeded)}}}},41553:function(e,s,t){var i=t(24246),a=t(56351),n=t(16394);s.Z=e=>{let{testData:s}=e;if(!s.timestamp)return(0,i.jsx)(a.xvT,{"data-testid":"connection-status",children:"Connection not tested"});let t=(0,n.p6)(s.timestamp);return s.succeeded?(0,i.jsxs)(a.kCb,{color:"success-text.900",align:"center","data-testid":"connection-status",children:[(0,i.jsx)(a.rE2,{mr:2,boxSize:4}),(0,i.jsxs)(a.xvT,{children:["Last connected ",t]})]}):(0,i.jsxs)(a.kCb,{color:"error-text.900",align:"center","data-testid":"connection-status",children:[(0,i.jsx)(a.iid,{mr:2,boxSize:4}),(0,i.jsxs)(a.xvT,{children:["Last connection failed ",t]})]})}},75595:function(e,s,t){var i=t(24246),a=t(56351),n=t(41337),r=t(15872),o=t(45216),c=t(7621),d=t(41553);s.Z=e=>{let{integration:s,showTestNotice:t,otherButtons:l,showDeleteButton:h,configureButtonLabel:u="Configure",onConfigureClick:x}=e,{testConnection:j,isLoading:m,testData:p}=(0,o.Z)(s),g=(0,c.ZP)(null==s?void 0:s.connection_type);return(0,i.jsxs)(a.xuv,{maxW:"760px",borderWidth:1,borderRadius:"lg",overflow:"hidden",padding:"12px",marginBottom:"24px","data-testid":"integration-info-".concat(null==s?void 0:s.key),children:[(0,i.jsxs)(a.kCb,{children:[(0,i.jsx)(n.Z,{data:null!=s?s:"",boxSize:"50px"}),(0,i.jsxs)(a.kCb,{direction:"column",flexGrow:1,marginLeft:"16px",children:[(0,i.jsx)(a.xvT,{color:"gray.700",fontWeight:"semibold",children:(null==s?void 0:s.name)||"(No name)"}),t?(0,i.jsx)(d.Z,{testData:p}):(0,i.jsx)(a.xvT,{color:"gray.700",fontSize:"sm",fontWeight:"semibold",mt:1,children:g.category})]}),(0,i.jsxs)("div",{className:"flex gap-4",children:[h&&s&&(0,i.jsx)(r.Z,{showMenu:!1,connection_key:s.key}),t&&(0,i.jsx)(a.wpx,{onClick:j,loading:m,"data-testid":"test-connection-btn",children:"Test connection"}),l,x&&(0,i.jsx)(a.wpx,{onClick:x,"data-testid":"configure-btn",children:u})]})]}),(0,i.jsx)(a.Eq9,{marginTop:"16px",children:g.tags.map(e=>(0,i.jsx)(a.j8w,{children:e},e))})]})}},15987:function(e,s,t){var i=t(24246),a=t(56351),n=t(34090),r=t(90104),o=t.n(r),c=t(92465),d=t.n(c),l=t(25389),h=t.n(l),u=t(15539),x=t.n(u),j=t(59389),m=t(18225),p=t(97181),g=t(40324),y=t(812),v=t(20682),S=t(94725),C=t(3968),A=t(1315),f=t(21702),D=t(31883);s.Z=e=>{var s,t;let{connection:r,connectionOption:c,onCancel:l}=e,[u,{isLoading:b}]=(0,S.Pp)(),[w,{isLoading:E}]=(0,S.pH)(),[R,{isLoading:_}]=(0,A.qd)(),{data:H,isLoading:B}=(0,v.n3)(c.identifier),{data:T}=(0,A.K3)(),F=null==T?void 0:T.map(e=>{var s;return{label:null!==(s=e.name)&&void 0!==s?s:e.fides_key,value:e.fides_key}}),L=b||E||_,k={name:null!==(s=null==r?void 0:r.name)&&void 0!==s?s:"",description:null!==(t=null==r?void 0:r.description)&&void 0!==t?t:"",secrets:h()(null==H?void 0:H.properties,(e,s)=>{var t,i;return null!==(i=null==r?void 0:null===(t=r.secrets)||void 0===t?void 0:t[s])&&void 0!==i?i:""})},I=(0,a.pmc)(),O=!!r,M=e=>x()(h()(e,(e,s)=>{var t,i;return(null!==(i=null==r?void 0:null===(t=r.secrets)||void 0===t?void 0:t[s])&&void 0!==i?i:"")===e?void 0:e}),d()),U=async e=>{var s;let t;let i=M(e.secrets),a=O?{...r,disabled:null!==(s=r.disabled)&&void 0!==s&&s,name:e.name,description:e.description,secrets:void 0}:{name:e.name,key:(0,C.E)(e.name),connection_type:c.identifier,access:f.uv.READ,disabled:!1,description:e.description,secrets:e.secrets};if(t=e.system_fides_key?await R({systemFidesKey:e.system_fides_key,connectionConfigs:[a]}):await w(a),(0,D.D4)(t)){I({status:"error",description:(0,y.e$)(t.error,"A problem occurred while ".concat(O?"updating":"creating"," this integration. Please try again."))});return}if(!e.secrets){I({status:"success",description:"Integration ".concat(O?"updated":"created"," successfully")});return}if(!o()(i)){let e=await u({connection_key:a.key,secrets:i});if((0,D.D4)(e)){I({status:"error",description:(0,y.e$)(e.error,"An error occurred while ".concat(O?"updating":"creating"," this integration's secret. Please try again."))});return}}I({status:"success",description:"Integration secret ".concat(O?"updated":"created"," successfully")}),l()};if(B)return(0,i.jsx)(m.Z,{});let P=e=>Object.entries(e.properties).map(s=>{let[t,a]=s,n="secrets.".concat(t);return(0,i.jsx)(g.j0,{name:n,id:n,type:a.sensitive?"password":void 0,label:a.title,isRequired:e.required.includes(t),tooltip:a.description,variant:"stacked"},n)});return(0,i.jsx)(n.J9,{initialValues:k,enableReinitialize:!0,onSubmit:U,validationSchema:(e=>{let s=Object.entries(e.properties).map(s=>{let[t,i]=s;return[t,e.required.includes(t)?j.Z_().required().label(i.title):j.Z_().nullable().label(i.title)]});return j.Ry().shape({name:j.Z_().required().label("Name"),description:j.Z_().nullable().label("Description"),secrets:j.Ry().shape(Object.fromEntries(s))})})(H),children:e=>{let{dirty:s,isValid:t,resetForm:r}=e;return(0,i.jsx)(n.l0,{children:(0,i.jsxs)(a.gCW,{alignItems:"start",spacing:6,mt:4,children:[(0,i.jsx)(g.j0,{id:"name",name:"name",label:"Name",variant:"stacked",isRequired:!0}),(0,i.jsx)(g.j0,{id:"description",name:"description",label:"Description",variant:"stacked"}),P(H),!O&&(0,i.jsx)(p.d,{id:"system_fides_key",name:"system_fides_key",options:null!=F?F:[],label:"System",tooltip:"The system to associate with the integration",layout:"stacked"}),(0,i.jsxs)("div",{className:"flex w-full justify-between",children:[(0,i.jsx)(a.wpx,{onClick:()=>{l(),r()},children:"Cancel"}),(0,i.jsx)(a.wpx,{htmlType:"submit",type:"primary",disabled:!s||!t,loading:L,"data-testid":"save-btn",children:"Save"})]})]})})}})}},7621:function(e,s,t){t.d(s,{FO:function(){return _},jq:function(){return H},ZP:function(){return T}}),(i=a||(a={})).DATA_CATALOG="Data Catalog",i.DATA_WAREHOUSE="Data Warehouse",i.DATABASE="Database",i.WEBSITE="Website";var i,a,n=t(24246),r=t(56351),o=t(79789),c=e=>{let{children:s}=e,{isOpen:t,onToggle:i}=(0,r.qY0)();return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(r.UO1,{in:t,children:s}),(0,n.jsx)(r.xvT,{fontSize:"sm",cursor:"pointer",textDecoration:"underline",onClick:i,children:t?"Show less":"Show more"})]})},d=t(21702);let l={name:"Google BigQuery",key:"bq_placeholder",connection_type:d.Rj.BIGQUERY,access:d.uv.READ,created_at:""},h=[{permission:"bigquery.jobs.create",description:"Run jobs (e.g. queries) within the project. This is only needed for the Fides Project where the Fides service account is located."},{permission:"bigquery.jobs.list",description:"Manage the queries that the service account performs. This is only needed for the Fides Project where the Fides service account is located."},{permission:"bigquery.routines.get",description:"Allow the service account to retrieve custom routines (e.g. queries) on associated datasets and tables."},{permission:"bigquery.routines.list",description:"Allow the service account to manage the custom routines (e.g. queries) that run on associated datasets and tables."}],u=[{permission:"bigquery.datasets.get",description:"Retrieve metadata and list tables for the specified project."},{permission:"bigquery.tables.get",description:"Retrieve metadata for the specified table."},{permission:"bigquery.tables.getData",description:"Read data in the specified table."},{permission:"bigquery.tables.list",description:"List all tables in the specified dataset."},{permission:"resourcemanager.projects.get",description:"Retrieve metadata for the specified project."}],x={placeholder:l,category:a.DATA_WAREHOUSE,overview:(0,n.jsx)(()=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(o.cB,{text:"Overview"}),(0,n.jsx)(o.XU,{children:"Continuously monitor BigQuery to detect and track schema-level changes, automatically discover and label data categories as well as automatically process DSR (privacy requests) and consent enforcement to proactively manage data governance risks."}),(0,n.jsxs)(c,{children:[(0,n.jsx)(o.cB,{text:"Categories"}),(0,n.jsxs)(o.Z5,{children:[(0,n.jsx)(r.HCh,{children:"Data Warehouse"}),(0,n.jsx)(r.HCh,{children:"Storage system"}),(0,n.jsx)(r.HCh,{children:"Cloud provider"}),(0,n.jsx)(r.HCh,{children:"Data detection"}),(0,n.jsx)(r.HCh,{children:"Data discovery"}),(0,n.jsx)(r.HCh,{children:"DSR automation"}),(0,n.jsx)(r.HCh,{children:"Consent orchestration"})]}),(0,n.jsx)(o.cB,{text:"Permissions"}),(0,n.jsx)(o.XU,{children:"For detection and discovery, Fides requires a read-only BigQuery service account with limited permissions. If you intend to automate governance for DSR or Consent, Fides requires a read-and-write BigQuery service account to any project you would like Fides to govern."}),(0,n.jsx)(o.XU,{children:"A BigQuery administrator can create the necessary role for Fides using BigQuery's roles guide and assign this to a service account using BigQuery's service account guide."}),(0,n.jsx)(o.XU,{children:"The permissions allow Fides to read the schema of, and data stored in projects, datasets and tables as well write restricted updates based on your policy configurations to tables you specify as part of DSR and Consent orchestration."}),(0,n.jsx)(o.cB,{text:"Permissions list"}),(0,n.jsxs)(o.Z5,{children:[(0,n.jsx)(r.HCh,{children:"bigquery.jobs.create"}),(0,n.jsx)(r.HCh,{children:"bigquery.jobs.list"}),(0,n.jsx)(r.HCh,{children:"bigquery.routines.get"}),(0,n.jsx)(r.HCh,{children:"bigquery.routines.list"}),(0,n.jsx)(r.HCh,{children:"bigquery.datasets.get"}),(0,n.jsx)(r.HCh,{children:"bigquery.tables.get"}),(0,n.jsx)(r.HCh,{children:"bigquery.tables.getData"}),(0,n.jsx)(r.HCh,{children:"bigquery.tables.list"}),(0,n.jsx)(r.HCh,{children:"bigquery.tables.updateData"}),(0,n.jsx)(r.HCh,{children:"resourcemanager.projects.get"})]})]})]}),{}),instructions:(0,n.jsx)(()=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(o.cB,{text:"Configuring a Fides -> BigQuery Integration"}),(0,n.jsx)(o.cB,{text:"Step 1: Create a Fides project"}),(0,n.jsxs)(o.XU,{children:["Create a Fides Project using"," ",(0,n.jsx)(o.Hn,{href:"https://cloud.google.com/resource-manager/docs/creating-managing-projects#creating_a_project",children:"BigQuery's project creation guide"}),"."]}),(0,n.jsx)(o.cB,{text:"Step 2: Create a Fides role in GCP"}),(0,n.jsxs)(o.vQ,{children:[(0,n.jsxs)(r.HCh,{children:["Create a custom role for Fides using BigQuery's"," ",(0,n.jsx)(o.Hn,{href:"https://cloud.google.com/iam/docs/creating-custom-roles#creating_a_custom_role",children:"roles guide"}),"."]}),(0,n.jsx)(r.HCh,{children:"Follow the sections below to grant permissions to this role for the Fides project and any project you would like Fides to manage."})]}),(0,n.jsxs)(c,{children:[(0,n.jsx)(o.cB,{text:"Step 3: Assign permissions to the Fides project"}),(0,n.jsx)(o.XU,{children:"Assign the following permissions to the Fides Project that will be used by your Fides service account to run queries:"}),(0,n.jsx)(o.aG,{data:h}),(0,n.jsx)(o.cB,{text:"Step 4: Assign permissions to any project you’d like Fides to monitor"}),(0,n.jsx)(o.XU,{children:"Grant the following permissions to the Fides service account in every project where you would like Fides detection and discovery monitoring."}),(0,n.jsx)(o.aG,{data:u}),(0,n.jsx)(o.cB,{text:"Step 5: Create a Fides service account in the Fides Project"}),(0,n.jsxs)(o.vQ,{children:[(0,n.jsxs)(r.HCh,{children:["Create a service account for Fides using BigQuery's"," ",(0,n.jsx)(o.Hn,{href:"https://cloud.google.com/iam/docs/service-accounts-create",children:"service account guide"}),"."]}),(0,n.jsx)(r.HCh,{children:"Assign the previously created role to this service account."}),(0,n.jsxs)(r.HCh,{children:["Download the service account JSON keyfile."," ",(0,n.jsx)("strong",{children:"Note: this is sensitive information that should not be shared."})," ","An example of this is below:"]})]}),(0,n.jsx)(o.hX,{children:'{\n "type": "service_account",\n "project_id": "project-id-123456",\n "private_key_id": "0123456789abcdef0123456789abcdef01234567",\n "private_key": "-----BEGIN PRIVATE KEY-----\\nMIIyourkey-----\\nEND PRIVATE KEY-----\\n",\n "client_email": "test@project-id-123456.iam.gserviceaccount.com",\n "client_id": "012345678901234567890",\n "auth_uri": "https://accounts.google.com/o/oauth2/auth",\n "token_uri": "https://oauth2.googleapis.com/token",\n "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",\n "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/test%40project-id-123456.iam.gserviceaccount.com"\n}'}),(0,n.jsx)(o.cB,{text:"Step 6: Use the JSON key to authenticate your integration"}),(0,n.jsx)(o.XU,{children:"Provide the JSON key to your Fides instance to securely connect Fides."})]})]}),{}),tags:["Data Warehouse","BigQuery","Discovery","Inventory"]},j={placeholder:{name:"Datahub",key:"datahub_placeholder",connection_type:d.Rj.DATAHUB,access:d.uv.READ,created_at:""},category:a.DATA_CATALOG,overview:(0,n.jsx)(()=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(o.cB,{text:"Overview"}),(0,n.jsx)(o.XU,{children:"DataHub is a metadata platform designed to help organizations manage and govern their data. It acts as a centralized repository for tracking and discovering data assets across an organization, helping data teams understand where their data resides, how it's used, and how it flows through various systems."}),(0,n.jsxs)(c,{children:[(0,n.jsx)(o.cB,{text:"Categories"}),(0,n.jsx)(o.Z5,{children:(0,n.jsx)(r.HCh,{children:"Data Catalog"})}),(0,n.jsx)(o.cB,{text:"Permissions"}),(0,n.jsx)(o.Z5,{children:(0,n.jsx)(r.HCh,{children:"Placeholder"})})]})]}),{}),tags:["Data catalog"]},m={name:"DynamoDB",key:"dynamo_placeholder",connection_type:d.Rj.DYNAMODB,access:d.uv.READ,created_at:""},p=[{permission:"AmazonDynamoDBReadOnlyAccess",description:"Provides read-only access to Amazon DynamoDB via the AWS Management Console."},{permission:"AmazonDynamoDBFullAccess",description:"Provides full access to Amazon DynamoDB via the AWS Management Console. Only needed if automating governance for DSR or Consent."}],g={placeholder:m,category:a.DATABASE,overview:(0,n.jsx)(()=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(o.cB,{text:"Overview"}),(0,n.jsx)(o.XU,{children:"Continuously monitor DynamoDB to detect and track schema-level changes, automatically discover and label data categories as well as automatically process DSR (privacy requests) and consent enforcement to proactively manage data governance risks."}),(0,n.jsxs)(c,{children:[(0,n.jsx)(o.cB,{text:"Categories"}),(0,n.jsxs)(o.Z5,{children:[(0,n.jsx)(r.HCh,{children:"NoSQL database"}),(0,n.jsx)(r.HCh,{children:"Storage system"}),(0,n.jsx)(r.HCh,{children:"Cloud provider"}),(0,n.jsx)(r.HCh,{children:"Data detection"}),(0,n.jsx)(r.HCh,{children:"Data discovery"})]}),(0,n.jsx)(o.cB,{text:"Permissions and Policies"}),(0,n.jsxs)(o.XU,{children:["For detection and discovery, Fides requires an IAM user with read-only DynamoDB permissions in order to detect, discover, and classify sensitive data. The AWS-managed"," ",(0,n.jsx)(r.EKh,{children:"AmazonDynamoDBReadOnlyAccess"})," policy can be used to assign these permissions. If you intend to automate governance for DSR or Consent, Fides requires an IAM user with read-and-write DynamoDB permissions. The AWS-managed",(0,n.jsx)(r.EKh,{children:"AmazonDynamoDBFullAccess"})," policy can be used to assign these permissions. An IAM administrator can create the necessary principal for Fides using the AWS IAM guides, and assign the appropriate permissions policy to the IAM user."]}),(0,n.jsx)(o.XU,{children:"The permissions allow Fides to read the schema of, and data stored in, DynamoDB tables. This data is inspected only for the purpose of detecting sensitive data risks and no data is stored by Fides. As part of DSR or Consent orchestration, Fides will only write restricted updates to the tables specified by your Fides policy configuration."}),(0,n.jsx)(o.cB,{text:"Policy List"}),(0,n.jsx)(o.XU,{children:"The following AWS-managed policies provide the necessary permissions for Fides:"}),(0,n.jsxs)(o.Z5,{children:[(0,n.jsx)(r.HCh,{children:"AmazonDynamoDBReadOnlyAccess"}),(0,n.jsx)(r.HCh,{children:"AmazonDynamoDBFullAccess (only needed if automating governance for DSR or Consent)"})]})]})]}),{}),instructions:(0,n.jsx)(()=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(o.cB,{text:"Configuring a Fides -> DynamoDB Integration"}),(0,n.jsx)(o.cB,{text:"Step 1: Create an IAM user in AWS"}),(0,n.jsxs)(o.XU,{children:["Create an IAM user for Fides' DynamoDB access following the"," ",(0,n.jsx)(o.Hn,{href:"https://docs.aws.amazon.com/IAM/latest/UserGuide/getting-started.html#getting-started-iam-user",children:"AWS IAM user guide"}),"."]}),(0,n.jsxs)(c,{children:[(0,n.jsx)(o.cB,{text:"Step 2: Assign policies to the IAM user"}),(0,n.jsx)(o.XU,{children:"Grant the necessary permissions to the IAM user by attaching directly the appropriate AWS-managed policy for your use case:"}),(0,n.jsx)(o.aG,{data:p}),(0,n.jsx)(o.cB,{text:"Step 3: Create an access key for the IAM user"}),(0,n.jsxs)(o.vQ,{children:[(0,n.jsxs)(r.HCh,{children:["Create an access key for the IAM user under"," ",(0,n.jsx)("strong",{children:"Security credentials"})]}),(0,n.jsx)(r.HCh,{children:"Select the Other use case"}),(0,n.jsx)(r.HCh,{children:"Copy the Access Key ID and Secret Access Key"})]}),(0,n.jsx)(o.cB,{text:"Use the Credentials to Authenticate Your Integration"}),(0,n.jsx)(o.XU,{children:"Provide the credentials to your Fides instance to securely connect Fides."})]})]}),{}),tags:["Database","DynamoDB","Discovery","Inventory"]},y={placeholder:{name:"Google Cloud SQL for MySQL",key:"google_cloud_sql_for_mysql_placeholder",connection_type:d.Rj.GOOGLE_CLOUD_SQL_MYSQL,access:d.uv.READ,created_at:""},category:a.DATABASE,overview:(0,n.jsx)(()=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(o.cB,{text:"Overview"}),(0,n.jsx)(o.XU,{children:"Google Cloud SQL for MySQL is a fully-managed relational database service that simplifies the setup, maintenance, management, and administration of MySQL databases. Connect Fides to your Google Cloud SQL for MySQL to detect and track changes in schemas and tables and automatically discover and label data categories to proactively manage data governance risks."}),(0,n.jsxs)(c,{children:[(0,n.jsx)(o.cB,{text:"Categories"}),(0,n.jsxs)(o.Z5,{children:[(0,n.jsx)(r.HCh,{children:"Database"}),(0,n.jsx)(r.HCh,{children:"SQL database"}),(0,n.jsx)(r.HCh,{children:"Storage system"}),(0,n.jsx)(r.HCh,{children:"Data detection"}),(0,n.jsx)(r.HCh,{children:"Data discovery"}),(0,n.jsx)(r.HCh,{children:"DSR automation"})]}),(0,n.jsx)(o.cB,{text:"Permissions"}),(0,n.jsx)(o.XU,{children:"For detection and discovery, Fides requires a user with the SELECT permission on the database. If you intend to automate governance for DSR or Consent, Fides requires a user with the SELECT, UPDATE, and DELETE The permissions allow Fides to read the schema of, and data stored in tables, and fields as well as write restricted updates based on your policy configurations to tables you specify as part of DSR and Consent orchestration. For a complete list of permissions view the Google Cloud SQL for MySQL DB documentation."}),(0,n.jsx)(o.cB,{text:"Permissions list"}),(0,n.jsxs)(o.Z5,{children:[(0,n.jsx)(r.HCh,{children:"GRANT SELECT"}),(0,n.jsx)(r.HCh,{children:"GRANT UPDATE"}),(0,n.jsx)(r.HCh,{children:"GRANT DELETE"})]})]})]}),{}),tags:["Database","Detection","Discovery","DSR automation","GCP","MySQL"]},v={placeholder:{name:"Google Cloud SQL for Postgres",key:"google_cloud_sql_for_postgres_placeholder",connection_type:d.Rj.GOOGLE_CLOUD_SQL_POSTGRES,access:d.uv.READ,created_at:""},category:a.DATABASE,overview:(0,n.jsx)(()=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(o.cB,{text:"Overview"}),(0,n.jsx)(o.XU,{children:"Google Cloud SQL for Postgres is a fully-managed relational database service that simplifies the setup, maintenance, management, and administration of Postgres databases. Connect Fides to your Google Cloud SQL for Postgres to detect and track changes in schemas and tables and automatically discover and label data categories to proactively manage data governance risks."}),(0,n.jsxs)(c,{children:[(0,n.jsx)(o.cB,{text:"Categories"}),(0,n.jsxs)(o.Z5,{children:[(0,n.jsx)(r.HCh,{children:"Database"}),(0,n.jsx)(r.HCh,{children:"SQL database"}),(0,n.jsx)(r.HCh,{children:"Storage system"}),(0,n.jsx)(r.HCh,{children:"Data detection"}),(0,n.jsx)(r.HCh,{children:"Data discovery"}),(0,n.jsx)(r.HCh,{children:"DSR automation"})]}),(0,n.jsx)(o.cB,{text:"Permissions"}),(0,n.jsx)(o.XU,{children:"For detection and discovery, Fides requires a user with the SELECT permission on the database. If you intend to automate governance for DSR or Consent, Fides requires a user with the SELECT, UPDATE, and DELETE permission. The permissions allow Fides to read the schema of, and data stored in tables, and fields as well as write restricted updates based on your policy configurations to tables you specify as part of DSR and orchestration. For a complete list of permissions view the Google Cloud SQL for Postgres DB documentation."}),(0,n.jsx)(o.XU,{children:"The following GCP service account permissions are needed when setting up Google Cloud SQL for Postgres."}),(0,n.jsx)(o.cB,{text:"Permissions list"}),(0,n.jsxs)(o.Z5,{children:[(0,n.jsx)(r.HCh,{children:"cloudsql.instances.connect"}),(0,n.jsx)(r.HCh,{children:"cloudsql.instances.get"}),(0,n.jsx)(r.HCh,{children:"cloudsql.instances.login"})]})]})]}),{}),tags:["Database","Detection","Discovery","DSR automation","GCP","Postgres"]},S={placeholder:{name:"Microsoft SQL Server",key:"microsoft_sql_server_placeholder",connection_type:d.Rj.MSSQL,access:d.uv.READ,created_at:""},category:a.DATABASE,overview:(0,n.jsx)(()=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(o.cB,{text:"Overview"}),(0,n.jsx)(o.XU,{children:"Microsoft SQL Server, is a relational database management system (RDBMS) developed by Microsoft. It is designed to store, manage, and retrieve data as requested by other software applications, which may run either on the same computer or across a network."}),(0,n.jsxs)(c,{children:[(0,n.jsx)(o.cB,{text:"Categories"}),(0,n.jsxs)(o.Z5,{children:[(0,n.jsx)(r.HCh,{children:"Database"}),(0,n.jsx)(r.HCh,{children:"SQL database"}),(0,n.jsx)(r.HCh,{children:"Storage system"}),(0,n.jsx)(r.HCh,{children:"Data detection"}),(0,n.jsx)(r.HCh,{children:"Data discovery"})]}),(0,n.jsx)(o.cB,{text:"Permissions"}),(0,n.jsx)(o.XU,{children:"For detecting databases, Fides requires a user with the following permissions/role:"}),(0,n.jsxs)(o.Z5,{children:[(0,n.jsx)(r.HCh,{children:"CREATE LOGIN username WITH PASSWORD = 'password';"}),(0,n.jsx)(r.HCh,{children:"GRANT SELECT, INSERT, UPDATE TO username;"})]})]})]}),{}),tags:["Database","Detection","Discovery","Microsoft SQL Server"]},C={placeholder:{name:"MySQL",key:"mysql_placeholder",connection_type:d.Rj.MYSQL,access:d.uv.READ,created_at:""},category:a.DATABASE,overview:(0,n.jsx)(()=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(o.cB,{text:"Overview"}),(0,n.jsx)(o.XU,{children:"Add infotext"}),(0,n.jsxs)(c,{children:[(0,n.jsx)(o.cB,{text:"Categories"}),(0,n.jsxs)(o.Z5,{children:[(0,n.jsx)(r.HCh,{children:"Database"}),(0,n.jsx)(r.HCh,{children:"SQL database"}),(0,n.jsx)(r.HCh,{children:"Storage system"}),(0,n.jsx)(r.HCh,{children:"Data detection"}),(0,n.jsx)(r.HCh,{children:"Data discovery"})]}),(0,n.jsx)(o.cB,{text:"Permissions"}),(0,n.jsx)(o.XU,{children:"For detecting databases, Fides requires a user with the following permissions/role:"}),(0,n.jsxs)(o.Z5,{children:[(0,n.jsx)(r.HCh,{children:"CREATE USER 'username' IDENTIFIED WITH authentication_plugin BY 'password';"}),(0,n.jsx)(r.HCh,{children:"GRANT SELECT, INSERT ON database.* TO 'username'@'%';"})]})]})]}),{}),tags:["Database","Detection","Discovery","MySQL"]},A={placeholder:{name:"Amazon RDS MySQL",key:"rds_mysql_placeholder",connection_type:d.Rj.RDS_MYSQL,access:d.uv.READ,created_at:""},category:a.DATABASE,overview:(0,n.jsx)(()=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(o.cB,{text:"Overview"}),(0,n.jsx)(o.XU,{children:"Amazon RDS MySQL is a fully-managed relational database service that simplifies the setup, maintenance, management, and administration of MySQL databases. Connect Fides to your Amazon RDS MySQL to detect and track changes in schemas and tables and automatically discover and label data categories to proactively manage data governance risks."}),(0,n.jsxs)(c,{children:[(0,n.jsx)(o.cB,{text:"Categories"}),(0,n.jsxs)(o.Z5,{children:[(0,n.jsx)(r.HCh,{children:"Database"}),(0,n.jsx)(r.HCh,{children:"SQL database"}),(0,n.jsx)(r.HCh,{children:"Storage system"}),(0,n.jsx)(r.HCh,{children:"Data detection"}),(0,n.jsx)(r.HCh,{children:"Data discovery"})]}),(0,n.jsx)(o.cB,{text:"Permissions"}),(0,n.jsx)(o.XU,{children:"For detecting database RDS instances and clusters, Fides requires an IAM user with the following permissions/role:"}),(0,n.jsxs)(o.Z5,{children:[(0,n.jsx)(r.HCh,{children:"rds:DescribeDBClusters"}),(0,n.jsx)(r.HCh,{children:"rds:DescribeDBInstances"}),(0,n.jsx)(r.HCh,{children:"rds-db:connect"})]}),(0,n.jsx)(o.XU,{children:"And per database instance and database it requires the following permissions, where 'username' is the user set up for Fides, and 'database' is the database name, you want to connect to."}),(0,n.jsxs)(o.Z5,{children:[(0,n.jsx)(r.HCh,{children:"CREATE USER 'username' IDENTIFIED WITH AWSAuthenticationPlugin AS 'RDS';"}),(0,n.jsx)(r.HCh,{children:"GRANT SELECT, INSERT ON database.* TO 'username'@'%';"})]})]})]}),{}),tags:["Database","Detection","Discovery","RDS","MySQL"]},f={placeholder:{name:"Amazon RDS Postgres",key:"rds_postgres_placeholder",connection_type:d.Rj.RDS_POSTGRES,access:d.uv.READ,created_at:""},category:a.DATABASE,overview:(0,n.jsx)(()=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(o.cB,{text:"Overview"}),(0,n.jsx)(o.XU,{children:"Amazon RDS Postgres is a fully-managed relational database service that simplifies the setup, maintenance, management, and administration of Postgres databases. Connect Fides to your Amazon RDS Postgres to detect and track changes in schemas and tables and automatically discover and label data categories to proactively manage data governance risks."}),(0,n.jsxs)(c,{children:[(0,n.jsx)(o.cB,{text:"Categories"}),(0,n.jsxs)(o.Z5,{children:[(0,n.jsx)(r.HCh,{children:"Database"}),(0,n.jsx)(r.HCh,{children:"SQL database"}),(0,n.jsx)(r.HCh,{children:"Storage system"}),(0,n.jsx)(r.HCh,{children:"Data detection"}),(0,n.jsx)(r.HCh,{children:"Data discovery"})]}),(0,n.jsx)(o.cB,{text:"Permissions"}),(0,n.jsx)(o.XU,{children:"For detecting database RDS instances and clusters, Fides requires an IAM user with the following permissions/role:"}),(0,n.jsxs)(o.Z5,{children:[(0,n.jsx)(r.HCh,{children:"rds:DescribeDBClusters"}),(0,n.jsx)(r.HCh,{children:"rds:DescribeDBInstances"}),(0,n.jsx)(r.HCh,{children:"rds-db:connect"})]}),(0,n.jsx)(o.XU,{children:"For each database instance and database, Fides requires the following permissions, where 'username' is the user set up for Fides, and 'database' is the name of the database you want to connect to."}),(0,n.jsxs)(o.Z5,{children:[(0,n.jsx)(r.HCh,{children:"CREATE USER username WITH LOGIN;"}),(0,n.jsx)(r.HCh,{children:"GRANT rds_iam TO username;"}),(0,n.jsx)(r.HCh,{children:"GRANT SELECT ON ALL TABLES IN SCHEMA public TO username;"}),(0,n.jsx)(r.HCh,{children:"GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO username;"})]})]})]}),{}),tags:["Database","Detection","Discovery","RDS","Postgres"]},D={placeholder:{name:"Amazon S3",key:"s3_placeholder",connection_type:d.Rj.S3,access:d.uv.READ,created_at:""},category:a.DATA_WAREHOUSE,overview:(0,n.jsx)(()=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(o.cB,{text:"Overview"}),(0,n.jsx)(o.XU,{children:"Continuously monitor S3 to detect and track schema-level changes, automatically discover and label data categories as well as automatically process DSR (privacy requests) and consent enforcement to proactively manage data governance risks."}),(0,n.jsxs)(c,{children:[(0,n.jsx)(o.cB,{text:"Categories"}),(0,n.jsxs)(o.Z5,{children:[(0,n.jsx)(r.HCh,{children:"Object storage"}),(0,n.jsx)(r.HCh,{children:"Storage system"}),(0,n.jsx)(r.HCh,{children:"Cloud provider"}),(0,n.jsx)(r.HCh,{children:"Data detection"}),(0,n.jsx)(r.HCh,{children:"Data discovery"})]}),(0,n.jsx)(o.cB,{text:"Permissions"}),(0,n.jsx)(o.XU,{children:"Fides requires an IAM principal with read-only S3 permissions in order to detect, discover, and classify sensitive data. The AWS-managed AmazonS3ReadOnlyAccess policy can be used to assign these permissions. An IAM administrator can create the necessary principal for Fides using the AWS IAM guides, and assign the appropriate permissions policy to the IAM principal."}),(0,n.jsx)(o.XU,{children:"The permissions allow Fides to list buckets and read object data data stored in those buckets. This data is inspected only for the purpose of detecting sensitive data risks and no data is stored by Fides."}),(0,n.jsx)(o.XU,{children:"Ethyca recommends creating an IAM role with the appropriate permissions, which will be assumed by Fides at runtime, with ephemeral credentials. There must also be an IAM user with fixed credentials that Fides uses strictly for assuming the IAM role with the appropriate permissions. If desired, Fides also supports authenticating directly as an IAM user with the appropriate permissions, but this is considered a less secure option."}),(0,n.jsx)(o.cB,{text:"Permissions list"}),(0,n.jsx)(o.Z5,{children:(0,n.jsx)(r.HCh,{children:"AmazonS3ReadOnlyAccess"})})]})]}),{}),instructions:(0,n.jsx)(()=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(o.cB,{text:"Configuring a Fides -> Amazon S3 Integration"}),(0,n.jsx)(o.cB,{text:"Step 1: Create an IAM role in AWS"}),(0,n.jsx)(o.XU,{children:"Create an IAM role for Fides' S3 access following the AWS IAM roles guide. This role will be referred to below as the Fides S3 Access Role."}),(0,n.jsxs)(c,{children:[(0,n.jsx)(o.cB,{text:"Step 2: Assign policies to the IAM role"}),(0,n.jsx)(o.XU,{children:"Grant the necessary permissions to the IAM role by attaching the following AWS-managed policy:"}),(0,n.jsx)(o.aG,{data:[{permission:"AmazonS3ReadOnlyAccess",description:"Provides read-only access to all buckets via the AWS Management Console."}]}),(0,n.jsx)(o.cB,{text:"Step 3: Create an IAM user for assuming a role"}),(0,n.jsxs)(o.XU,{children:["Follow the ",(0,n.jsx)(o.Hn,{href:"https://docs.aws.amazon.com/IAM/latest/UserGuide/getting-started.html#getting-started-iam-user",children:"AWS guide"})," for creating an IAM user to create an IAM user that Fides will authenticate as in order to assume the Fides S3 Access Role created above, and retrieve ephemeral credentials."]}),(0,n.jsx)(o.cB,{text:"Step 4: Grant the IAM user permission to assume the Fides S3 Access Role"}),(0,n.jsx)(o.XU,{children:"Navigate to the IAM user’s Permissions page and add a permission by creating an inline policy. This permission should grant the IAM user permission to assume the Fides S3 Access Role created above (you’ll need to retrieve the role ARN). The inline policy should look similar to this:"}),(0,n.jsx)(o.hX,{children:'{\n "Version": "2012-10-17",\n "Statement": [\n {\n "Sid": "VisualEditor0",\n "Effect": "Allow",\n "Action": "sts:AssumeRole",\n "Resource": "arn:aws:iam::[AWS ACCOUNT NUMBER]:role/[Fides S3 Access Role ARN]"\n }\n ]\n}'}),(0,n.jsx)(o.cB,{text:"Step 5: Create an access key for the IAM user"}),(0,n.jsxs)(o.vQ,{children:[(0,n.jsxs)(r.HCh,{children:["Create an access key for the IAM user under"," ",(0,n.jsx)("strong",{children:"Security credentials"}),"."]}),(0,n.jsx)(r.HCh,{children:"Select the Other use case"}),(0,n.jsx)(r.HCh,{children:"Copy the Access Key ID and Secret Access Key"})]}),(0,n.jsx)(o.cB,{text:"Step 6: Use the credentials to authenticate your integration"}),(0,n.jsxs)(o.XU,{children:["Provide the credentials to your Fides instance to securely connect Fides. For the Assume Role ARN, provide the ARN for the Fides S3 Access Role created in step 1."," "]})]})]}),{}),tags:["Data Warehouse","S3","Detection","Discovery"]},b={placeholder:{name:"Scylla",key:"scylla_placeholder",connection_type:d.Rj.SCYLLA,access:d.uv.READ,created_at:""},category:a.DATABASE,overview:(0,n.jsx)(()=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(o.cB,{text:"Overview"}),(0,n.jsx)(o.XU,{children:"ScyllaDB is an open-sources distributed NoSQL data store designed to be compatible with Apache Cassandra. Connect Fides to your ScyllaDB to detect and track changes in keyspaces and tables and automatically discover and label data categories to proactively manage data governance risks."}),(0,n.jsxs)(c,{children:[(0,n.jsx)(o.cB,{text:"Categories"}),(0,n.jsxs)(o.Z5,{children:[(0,n.jsx)(r.HCh,{children:"Database"}),(0,n.jsx)(r.HCh,{children:"NoSQL database"}),(0,n.jsx)(r.HCh,{children:"Storage system"}),(0,n.jsx)(r.HCh,{children:"Data detection"}),(0,n.jsx)(r.HCh,{children:"Data discovery"}),(0,n.jsx)(r.HCh,{children:"DSR automation"})]}),(0,n.jsx)(o.cB,{text:"Permissions"}),(0,n.jsx)(o.XU,{children:"For detection and discovery, Fides requires a user with the SELECT permission on all keyspaces. If you intend to automate governance for DSR or Consent, Fides requires the role to to be granted SELECT and MODIFY on all keyspaces. The permissions allow Fides to read the schema of, and data stored in keyspaces, tables, and fields as well as write restricted updates based on your policy configurations to tables you specify as part of DSR and Consent orchestration. For a complete list of permissions view the Scylla DB documentation."}),(0,n.jsx)(o.cB,{text:"Permissions list"}),(0,n.jsxs)(o.Z5,{children:[(0,n.jsx)(r.HCh,{children:"SELECT ALL KEYSPACES"}),(0,n.jsx)(r.HCh,{children:"MODIFY ALL KEYSPACES"})]})]})]}),{}),tags:["Database","Detection","Discovery","DSR automation","ScyllaDB"]},w={placeholder:{name:"Snowflake",key:"snowflake_placeholder",connection_type:d.Rj.SNOWFLAKE,access:d.uv.READ,created_at:""},category:a.DATABASE,overview:(0,n.jsx)(()=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(o.cB,{text:"Overview"}),(0,n.jsx)(o.XU,{children:"Snowflake is a cloud-based data warehousing platform designed for handling large-scale data storage and analytics. It enables organizations to store, manage, and analyze massive amounts of data efficiently, offering features like scalability, performance, and flexibility."}),(0,n.jsxs)(c,{children:[(0,n.jsx)(o.cB,{text:"Categories"}),(0,n.jsxs)(o.Z5,{children:[(0,n.jsx)(r.HCh,{children:"Database"}),(0,n.jsx)(r.HCh,{children:"SQL database"}),(0,n.jsx)(r.HCh,{children:"Storage system"}),(0,n.jsx)(r.HCh,{children:"Data detection"}),(0,n.jsx)(r.HCh,{children:"Data discovery"})]}),(0,n.jsx)(o.cB,{text:"Permissions"}),(0,n.jsxs)(o.Z5,{children:[(0,n.jsx)(r.HCh,{children:"CREATE ROLE my_monitor_role;"}),(0,n.jsx)(r.HCh,{children:"GRANT USAGE ON DATABASE DATABASE_1 TO ROLE my_monitor_role;"}),(0,n.jsx)(r.HCh,{children:"GRANT USAGE ON SCHEMA DATABASE_1.TEST_SCHEMA TO ROLE my_monitor_role;"}),(0,n.jsx)(r.HCh,{children:"GRANT SELECT ON ALL TABLES IN SCHEMA DATABASE_1.TEST_SCHEMA TO ROLE my_monitor_role;"}),(0,n.jsx)(r.HCh,{children:"CREATE USER test_user PASSWORD='***';"}),(0,n.jsx)(r.HCh,{children:"GRANT ROLE my_monitor_role TO USER test_user;"})]})]})]}),{}),tags:["Data warehouse","Detection","Discovery","DSR automation"]},E={placeholder:{name:"Website",key:"website_placeholder",connection_type:d.Rj.WEBSITE,access:d.uv.READ,created_at:""},category:a.WEBSITE,tags:["Website","Discovery","Inventory"],overview:(0,n.jsx)(()=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(o.cB,{text:"Overview"}),(0,n.jsx)(o.XU,{children:"Websites, or “properties”, often process user data. Adding a website as an integration lets you configure a Consent Management Platform (CMP), a site-specific privacy center, and Cross-Origin requests via Fides. You can also set up monitors to detect vendors, track technologies like cookies or pixels, and ensure compliance."})]}),{})},R={[d.Rj.BIGQUERY]:x,[d.Rj.DATAHUB]:j,[d.Rj.DYNAMODB]:g,[d.Rj.GOOGLE_CLOUD_SQL_MYSQL]:y,[d.Rj.GOOGLE_CLOUD_SQL_POSTGRES]:v,[d.Rj.MSSQL]:S,[d.Rj.RDS_MYSQL]:A,[d.Rj.RDS_POSTGRES]:f,[d.Rj.S3]:D,[d.Rj.SCYLLA]:b,[d.Rj.SNOWFLAKE]:w,[d.Rj.MYSQL]:C,[d.Rj.WEBSITE]:E},_=Object.values(R),H=Object.keys(R),B={placeholder:{name:"",key:"placeholder",connection_type:d.Rj.MANUAL,access:d.uv.READ,created_at:""},category:a.DATA_WAREHOUSE,tags:[]};var T=e=>{var s;return e&&null!==(s=R[e])&&void 0!==s?s:B}},64176:function(e,s,t){var i=t(27378),a=t(20682);s.Z=e=>{let{data:s}=(0,a.$I)({});return(0,i.useMemo)(()=>null==s?void 0:s.items.find(s=>s.identifier===e),[s,e])}},31883:function(e,s,t){t.d(s,{Bw:function(){return i.Bw},D4:function(){return i.D4}});var i=t(19043)}}]);
|