ethyca-fides 2.71.1b1__py2.py3-none-any.whl → 2.71.2b0__py2.py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of ethyca-fides might be problematic. Click here for more details.

Files changed (324) hide show
  1. {ethyca_fides-2.71.1b1.dist-info → ethyca_fides-2.71.2b0.dist-info}/METADATA +1 -1
  2. {ethyca_fides-2.71.1b1.dist-info → ethyca_fides-2.71.2b0.dist-info}/RECORD +262 -248
  3. fides/_version.py +3 -3
  4. fides/api/alembic/migrations/versions/4bfbeff34611_add_polling_status.py +35 -0
  5. fides/api/alembic/migrations/versions/7db29f9cd77b_create_new_sub_request_table.py +95 -0
  6. fides/api/alembic/migrations/versions/b97e92b038d2_add_digest_execution_model.py +117 -0
  7. fides/api/common_exceptions.py +4 -0
  8. fides/api/main.py +2 -2
  9. fides/api/models/attachment.py +1 -0
  10. fides/api/models/digest/__init__.py +2 -0
  11. fides/api/models/digest/digest_config.py +10 -1
  12. fides/api/models/digest/digest_execution.py +132 -0
  13. fides/api/models/event_audit.py +8 -0
  14. fides/api/models/privacy_request/privacy_request.py +1 -1
  15. fides/api/models/privacy_request/request_task.py +98 -1
  16. fides/api/models/worker_task.py +8 -0
  17. fides/api/schemas/saas/async_polling_configuration.py +81 -0
  18. fides/api/schemas/saas/saas_config.py +10 -3
  19. fides/api/schemas/saas/strategy_configuration.py +0 -12
  20. fides/api/service/async_dsr/handlers/__init__.py +0 -0
  21. fides/api/service/async_dsr/handlers/polling_attachment_handler.py +155 -0
  22. fides/api/service/async_dsr/handlers/polling_request_handler.py +88 -0
  23. fides/api/service/async_dsr/handlers/polling_response_handler.py +261 -0
  24. fides/api/service/async_dsr/handlers/polling_sub_request_handler.py +123 -0
  25. fides/api/service/async_dsr/strategies/__init__.py +0 -0
  26. fides/api/service/async_dsr/strategies/async_dsr_strategy.py +52 -0
  27. fides/api/service/async_dsr/strategies/async_dsr_strategy_callback.py +199 -0
  28. fides/api/service/async_dsr/strategies/async_dsr_strategy_factory.py +72 -0
  29. fides/api/service/async_dsr/strategies/async_dsr_strategy_polling.py +678 -0
  30. fides/api/service/async_dsr/utils.py +130 -0
  31. fides/api/service/connectors/fides/fides_client.py +63 -1
  32. fides/api/service/connectors/query_configs/saas_query_config.py +20 -5
  33. fides/api/service/connectors/saas_connector.py +86 -70
  34. fides/api/service/privacy_request/attachment_handling.py +9 -2
  35. fides/api/service/privacy_request/request_runner_service.py +9 -83
  36. fides/api/service/privacy_request/request_service.py +47 -74
  37. fides/api/service/saas_request/saas_request_override_factory.py +66 -1
  38. fides/api/task/execute_request_tasks.py +5 -2
  39. fides/api/task/filter_results.py +35 -2
  40. fides/api/task/graph_task.py +34 -2
  41. fides/api/util/saas_util.py +1 -0
  42. fides/config/execution_settings.py +7 -3
  43. fides/data/language/languages.yml +2 -0
  44. fides/ui-build/static/admin/404.html +1 -1
  45. fides/ui-build/static/admin/_next/static/chunks/1099-27b2d4e59a569b38.js +1 -0
  46. fides/ui-build/static/admin/_next/static/chunks/{1115-90baef2a89f361ad.js → 1115-8fb5000847f73ec7.js} +1 -1
  47. fides/ui-build/static/admin/_next/static/chunks/1437-fb699e9d69c3e325.js +1 -0
  48. fides/ui-build/static/admin/_next/static/chunks/155-3d03f101c662c054.js +1 -0
  49. fides/ui-build/static/admin/_next/static/chunks/{1817-1ad037b7d6d2f6d2.js → 1817-10b392e1dd9c4673.js} +1 -1
  50. fides/ui-build/static/admin/_next/static/chunks/{1975.78e719130cfe3fd6.js → 1975.50599b6774562644.js} +1 -1
  51. fides/ui-build/static/admin/_next/static/chunks/{2040-fdecc41a18e40bdc.js → 2040-01d5edb1802d3482.js} +1 -1
  52. fides/ui-build/static/admin/_next/static/chunks/2397-40506a386a3a469a.js +1 -0
  53. fides/ui-build/static/admin/_next/static/chunks/{2921-66f65496c3a09316.js → 2921-edfdffa353a611e4.js} +1 -1
  54. fides/ui-build/static/admin/_next/static/chunks/3377-4c129258b4c4ea28.js +1 -0
  55. fides/ui-build/static/admin/_next/static/chunks/{3696-90c8b336bbc46782.js → 3696-259be222ea12392a.js} +1 -1
  56. fides/ui-build/static/admin/_next/static/chunks/3700-42976bfaad3b91c9.js +1 -0
  57. fides/ui-build/static/admin/_next/static/chunks/3772-aa7beafe5df5e656.js +1 -0
  58. fides/ui-build/static/admin/_next/static/chunks/{3923-98bea73b618292aa.js → 3923-fa1d71afc7dc9e6e.js} +1 -1
  59. fides/ui-build/static/admin/_next/static/chunks/{401-ffe4e8436e1eceb9.js → 401-5270e3e23b08ab2b.js} +1 -1
  60. fides/ui-build/static/admin/_next/static/chunks/431-e01ee730c8ad9ece.js +1 -0
  61. fides/ui-build/static/admin/_next/static/chunks/4817-5f9b9c9bafe888f1.js +1 -0
  62. fides/ui-build/static/admin/_next/static/chunks/{5185-51eaa78e3ed6bfb7.js → 5185-325e5435a0c7dcb7.js} +1 -1
  63. fides/ui-build/static/admin/_next/static/chunks/5258-2d28b2c64acf5de3.js +1 -0
  64. fides/ui-build/static/admin/_next/static/chunks/{5279-12c9cbdc67ad7b14.js → 5279-21929b12c927b022.js} +1 -1
  65. fides/ui-build/static/admin/_next/static/chunks/549-c3b4c51f45a84a52.js +1 -0
  66. fides/ui-build/static/admin/_next/static/chunks/{5643-10a36584c399526c.js → 5643-7583c1f8dbd83273.js} +1 -1
  67. fides/ui-build/static/admin/_next/static/chunks/{5783-d119cb132abd8a91.js → 5783-55c0387508e50f3e.js} +1 -1
  68. fides/ui-build/static/admin/_next/static/chunks/{6277-182efc294d413f64.js → 6277-ca31d48a33202761.js} +1 -1
  69. fides/ui-build/static/admin/_next/static/chunks/6315-2d4e86a32fc40458.js +1 -0
  70. fides/ui-build/static/admin/_next/static/chunks/6344-ca66a6e10d128179.js +1 -0
  71. fides/ui-build/static/admin/_next/static/chunks/{6853-7004a8c420b1ca02.js → 6853-cb15625a713b3ef9.js} +1 -1
  72. fides/ui-build/static/admin/_next/static/chunks/{6954-4b24e1731c1cc3b3.js → 6954-08b59d28d7a2a43b.js} +1 -1
  73. fides/ui-build/static/admin/_next/static/chunks/7245-895bb7c6a6c797bc.js +1 -0
  74. fides/ui-build/static/admin/_next/static/chunks/{7476-d055aa931da47ac0.js → 7476-f25fce73eeb1f9c6.js} +1 -1
  75. fides/ui-build/static/admin/_next/static/chunks/7488-df17b592fbeaa1eb.js +1 -0
  76. fides/ui-build/static/admin/_next/static/chunks/{7630-d0d3a0fe3f95e971.js → 7630-71582de0e818e28f.js} +1 -1
  77. fides/ui-build/static/admin/_next/static/chunks/7773-98d34d188ae0a694.js +1 -0
  78. fides/ui-build/static/admin/_next/static/chunks/{796-02086581996a0548.js → 796-7944f684f8945506.js} +1 -1
  79. fides/ui-build/static/admin/_next/static/chunks/8011-56031d82d5428981.js +1 -0
  80. fides/ui-build/static/admin/_next/static/chunks/8373-7f940f5ac9c38b1f.js +1 -0
  81. fides/ui-build/static/admin/_next/static/chunks/9046-31b16a7e872c22be.js +1 -0
  82. fides/ui-build/static/admin/_next/static/chunks/9070-13f237db78da586d.js +1 -0
  83. fides/ui-build/static/admin/_next/static/chunks/9330-cea1bf40f5d27e53.js +1 -0
  84. fides/ui-build/static/admin/_next/static/chunks/{9676.b86ecbcfe5afd25d.js → 9676.1ea49d4b6e0541f2.js} +1 -1
  85. fides/ui-build/static/admin/_next/static/chunks/9682-2754256aeae141bb.js +1 -0
  86. fides/ui-build/static/admin/_next/static/chunks/{9826-ccedc28e978ca9e1.js → 9826-e71887e2c4283249.js} +1 -1
  87. fides/ui-build/static/admin/_next/static/chunks/9899-15530c468d5656a1.js +1 -0
  88. fides/ui-build/static/admin/_next/static/chunks/9965-54037b6c8f36d14b.js +1 -0
  89. fides/ui-build/static/admin/_next/static/chunks/pages/{404-2eb8aed4939f1142.js → 404-2014144a1a0fa64f.js} +1 -1
  90. fides/ui-build/static/admin/_next/static/chunks/pages/{_app-c1c2f757b1f3da12.js → _app-9e869a44215709ed.js} +9 -9
  91. fides/ui-build/static/admin/_next/static/chunks/pages/add-systems/manual-4f3ba02774f27795.js +1 -0
  92. fides/ui-build/static/admin/_next/static/chunks/pages/add-systems/{multiple-2ca59996860a33c5.js → multiple-1c9cef80deccb15d.js} +1 -1
  93. fides/ui-build/static/admin/_next/static/chunks/pages/add-systems-4adeec3bcec05f7b.js +1 -0
  94. fides/ui-build/static/admin/_next/static/chunks/pages/consent/configure/{add-vendors-7a258b7ecd6da4b8.js → add-vendors-f7bdc2da53137ffd.js} +1 -1
  95. fides/ui-build/static/admin/_next/static/chunks/pages/consent/{configure-fb5017ff5fa54fcc.js → configure-a27b220fe76bdc8e.js} +1 -1
  96. fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-experience/{[id]-e1e2fd704ac2d71d.js → [id]-542fd4a4322122f1.js} +1 -1
  97. fides/ui-build/static/admin/_next/static/chunks/pages/consent/{privacy-experience-92182be6603c2842.js → privacy-experience-4254abef7bb52edd.js} +1 -1
  98. fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-notices/{[id]-5fc78b78a51c239c.js → [id]-d31d1c233e94dc1f.js} +1 -1
  99. fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-notices/{new-b79bcb93b5f4c734.js → new-2ea057e6217993f9.js} +1 -1
  100. fides/ui-build/static/admin/_next/static/chunks/pages/consent/{privacy-notices-ab54b19609bff325.js → privacy-notices-8e76cbfaf71fdcb9.js} +1 -1
  101. fides/ui-build/static/admin/_next/static/chunks/pages/consent/{properties-069f4e3ee96ebf77.js → properties-eb557180eded0abd.js} +1 -1
  102. fides/ui-build/static/admin/_next/static/chunks/pages/consent/reporting-93730a4316c0d980.js +1 -0
  103. fides/ui-build/static/admin/_next/static/chunks/pages/{consent-d2bf72508c3cad55.js → consent-c64589e53338e59a.js} +1 -1
  104. fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]/{[resourceUrn]-2fa4b3a58f75f81d.js → [resourceUrn]-d3d1841bc8105e56.js} +1 -1
  105. fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]-8cd4d1d6ba000333.js +1 -0
  106. fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects-69b429a9d30ebaf1.js +1 -0
  107. fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/resources/{[resourceUrn]-5b31e3d7727b917a.js → [resourceUrn]-791c522ad1d9a2ce.js} +1 -1
  108. fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/resources-8c7103ebf01d6e6a.js +1 -0
  109. fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog-a53ef0161235ee47.js +1 -0
  110. fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/[monitorId]/[systemId]-f85f4f8fcf1bfbdb.js +1 -0
  111. fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/[monitorId]/data-explorer-3619e454763dba09.js +1 -0
  112. fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/[monitorId]-ace848575e688200.js +1 -0
  113. fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center-53ca31c50c43007f.js +1 -0
  114. fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/activity-f87e4a0f664f4cde.js +1 -0
  115. fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/detection/{[resourceUrn]-844a8de0d1b506e2.js → [resourceUrn]-699762cb8a66237e.js} +1 -1
  116. fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/{detection-11b07cf2d91b17ef.js → detection-d970d0b82db36c88.js} +1 -1
  117. fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/discovery/{[resourceUrn]-5525cf287d4ab493.js → [resourceUrn]-a6343038a447699c.js} +1 -1
  118. fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/{discovery-ed4723e1b67d890e.js → discovery-ce82ba79f9bf825c.js} +1 -1
  119. fides/ui-build/static/admin/_next/static/chunks/pages/datamap-ae7a4c1c4eabc0d4.js +1 -0
  120. fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/[collectionName]/[...subfieldNames]-179e5d09ccff50c1.js +1 -0
  121. fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/[collectionName]-59466e5e238c59d0.js +1 -0
  122. fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]-36d90c8c39fb0d1c.js +1 -0
  123. fides/ui-build/static/admin/_next/static/chunks/pages/dataset/new-db54d01fd8f6df50.js +1 -0
  124. fides/ui-build/static/admin/_next/static/chunks/pages/dataset-55d312af5228e098.js +1 -0
  125. fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection/[id]-488beba62e832660.js +1 -0
  126. fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection/new-4aad5495f9bf81ce.js +1 -0
  127. fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection-496ec7ecca8259dc.js +1 -0
  128. fides/ui-build/static/admin/_next/static/chunks/pages/{index-b74d1e8608ae5b5d.js → index-8a2ba955d92d52ee.js} +1 -1
  129. fides/ui-build/static/admin/_next/static/chunks/pages/integrations/[id]-4580f70eb41b6a7d.js +1 -0
  130. fides/ui-build/static/admin/_next/static/chunks/pages/integrations-f69b04d3b4cf43b1.js +1 -0
  131. fides/ui-build/static/admin/_next/static/chunks/pages/messaging/{[id]-e8d2140787045acd.js → [id]-d6eed2dc5d27f625.js} +1 -1
  132. fides/ui-build/static/admin/_next/static/chunks/pages/messaging/{add-template-e3f93462a08251bf.js → add-template-c7b43fa365f4be10.js} +1 -1
  133. fides/ui-build/static/admin/_next/static/chunks/pages/{messaging-b5f7d6afdecd013d.js → messaging-c7ba755c2e0e2377.js} +1 -1
  134. fides/ui-build/static/admin/_next/static/chunks/pages/poc/{ant-components-248ad9f65a872442.js → ant-components-f14bfd5890a0e939.js} +1 -1
  135. fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/{AntForm-aedb66a62042b10a.js → AntForm-e4274a4d5d23eea9.js} +1 -1
  136. fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/{FormikAntFormItem-018df38b7cd77fdb.js → FormikAntFormItem-f5bce1ceb0502f04.js} +1 -1
  137. fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/{FormikControlled-6ca9099d03aab817.js → FormikControlled-90b4ea9f9deca6e2.js} +1 -1
  138. fides/ui-build/static/admin/_next/static/chunks/pages/poc/form-experiments/{FormikField-0f2c90786ea005a4.js → FormikField-d6043ae8dae6ef7d.js} +1 -1
  139. fides/ui-build/static/admin/_next/static/chunks/pages/poc/{forms-200b51a725f8b2d1.js → forms-520ba5ae02f47bda.js} +1 -1
  140. fides/ui-build/static/admin/_next/static/chunks/pages/poc/{table-migration-29fb7b39f8962650.js → table-migration-b46f432b51421fae.js} +1 -1
  141. fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/[id]-fe4ed3ad75151e36.js +1 -0
  142. fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/storage-de681c2d022c9e0d.js +1 -0
  143. fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/{configure-8f577df28ebca869.js → configure-04ebf2fb6fc4358a.js} +1 -1
  144. fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests-cd8ba2eef9085377.js +1 -0
  145. fides/ui-build/static/admin/_next/static/chunks/pages/properties/{[id]-57a75c7e9659271a.js → [id]-f75a407d78857ab3.js} +1 -1
  146. fides/ui-build/static/admin/_next/static/chunks/pages/properties/{add-property-8964c2300206bc89.js → add-property-975ff605e1dbc09c.js} +1 -1
  147. fides/ui-build/static/admin/_next/static/chunks/pages/{properties-08472b2a6bf1d392.js → properties-e7fdf3a9a3e8c267.js} +1 -1
  148. fides/ui-build/static/admin/_next/static/chunks/pages/reporting/datamap-764b6ce8e030d4a1.js +1 -0
  149. fides/ui-build/static/admin/_next/static/chunks/pages/settings/consent/[configuration_id]/{[purpose_id]-f3e6e74e0efb005c.js → [purpose_id]-da78452b3c41b29e.js} +1 -1
  150. fides/ui-build/static/admin/_next/static/chunks/pages/settings/{consent-4d658222ec800511.js → consent-6442e761ecb5c65a.js} +1 -1
  151. fides/ui-build/static/admin/_next/static/chunks/pages/settings/custom-fields-ea9baf24de35d3b1.js +1 -0
  152. fides/ui-build/static/admin/_next/static/chunks/pages/settings/{domain-records-744f669431b84f71.js → domain-records-44d06e280990854d.js} +1 -1
  153. fides/ui-build/static/admin/_next/static/chunks/pages/settings/{domains-a3275554ffe8e640.js → domains-6f61d886aa6f5ce7.js} +1 -1
  154. fides/ui-build/static/admin/_next/static/chunks/pages/settings/{email-templates-604790638c656fbd.js → email-templates-11148b182370fd83.js} +1 -1
  155. fides/ui-build/static/admin/_next/static/chunks/pages/settings/{locations-be2a885150adc133.js → locations-33448bf0a1d53870.js} +1 -1
  156. fides/ui-build/static/admin/_next/static/chunks/pages/settings/messaging-providers/{[key]-77239269acc2d31a.js → [key]-4a18d8135c0dbf2a.js} +1 -1
  157. fides/ui-build/static/admin/_next/static/chunks/pages/settings/messaging-providers/{new-8bf1821722b082e9.js → new-41957281b8ec26b1.js} +1 -1
  158. fides/ui-build/static/admin/_next/static/chunks/pages/settings/messaging-providers-776258bad0941a7d.js +1 -0
  159. fides/ui-build/static/admin/_next/static/chunks/pages/settings/{organization-3c86162afe9759df.js → organization-3c315036f1fc9f90.js} +1 -1
  160. fides/ui-build/static/admin/_next/static/chunks/pages/settings/privacy-requests-00917525c9245a90.js +1 -0
  161. fides/ui-build/static/admin/_next/static/chunks/pages/settings/{regulations-4fe3b90747d885e5.js → regulations-5d924b2f1f926b88.js} +1 -1
  162. fides/ui-build/static/admin/_next/static/chunks/pages/systems/configure/[id]/{test-datasets-2deb6becece69d46.js → test-datasets-8067e12227210f48.js} +1 -1
  163. fides/ui-build/static/admin/_next/static/chunks/pages/systems/configure/{[id]-4d470bbf199a2f9c.js → [id]-1a902922759cae76.js} +1 -1
  164. fides/ui-build/static/admin/_next/static/chunks/pages/systems-277ea1f34c3714cf.js +1 -0
  165. fides/ui-build/static/admin/_next/static/chunks/pages/taxonomy-cecea5832cb1f3b0.js +1 -0
  166. fides/ui-build/static/admin/_next/static/chunks/pages/user-management/profile/{[id]-98f737e735eaa0f0.js → [id]-726fbc0a34ffba1f.js} +1 -1
  167. fides/ui-build/static/admin/_next/static/chunks/pages/{user-management-562624e5461083ec.js → user-management-df9b75ab01c1a2ea.js} +1 -1
  168. fides/ui-build/static/admin/_next/static/chunks/{webpack-2766492c5dbceb0a.js → webpack-118fb4723d13c14f.js} +1 -1
  169. fides/ui-build/static/admin/_next/static/css/372d6a236c84613f.css +1 -0
  170. fides/ui-build/static/admin/_next/static/css/f38242c11f7fea64.css +1 -0
  171. fides/ui-build/static/admin/_next/static/zmEQMSpOBih8kmA1t-EWO/_buildManifest.js +1 -0
  172. fides/ui-build/static/admin/add-systems/manual.html +1 -1
  173. fides/ui-build/static/admin/add-systems/multiple.html +1 -1
  174. fides/ui-build/static/admin/add-systems.html +1 -1
  175. fides/ui-build/static/admin/consent/configure/add-vendors.html +1 -1
  176. fides/ui-build/static/admin/consent/configure.html +1 -1
  177. fides/ui-build/static/admin/consent/privacy-experience/[id].html +1 -1
  178. fides/ui-build/static/admin/consent/privacy-experience/new.html +1 -1
  179. fides/ui-build/static/admin/consent/privacy-experience.html +1 -1
  180. fides/ui-build/static/admin/consent/privacy-notices/[id].html +1 -1
  181. fides/ui-build/static/admin/consent/privacy-notices/new.html +1 -1
  182. fides/ui-build/static/admin/consent/privacy-notices.html +1 -1
  183. fides/ui-build/static/admin/consent/properties.html +1 -1
  184. fides/ui-build/static/admin/consent/reporting.html +1 -1
  185. fides/ui-build/static/admin/consent.html +1 -1
  186. fides/ui-build/static/admin/data-catalog/[systemId]/projects/[projectUrn]/[resourceUrn].html +1 -1
  187. fides/ui-build/static/admin/data-catalog/[systemId]/projects/[projectUrn].html +1 -1
  188. fides/ui-build/static/admin/data-catalog/[systemId]/projects.html +1 -1
  189. fides/ui-build/static/admin/data-catalog/[systemId]/resources/[resourceUrn].html +1 -1
  190. fides/ui-build/static/admin/data-catalog/[systemId]/resources.html +1 -1
  191. fides/ui-build/static/admin/data-catalog.html +1 -1
  192. fides/ui-build/static/admin/data-discovery/action-center/[monitorId]/[systemId].html +1 -1
  193. fides/ui-build/static/admin/data-discovery/action-center/[monitorId]/data-explorer.html +1 -0
  194. fides/ui-build/static/admin/data-discovery/action-center/[monitorId].html +1 -1
  195. fides/ui-build/static/admin/data-discovery/action-center.html +1 -1
  196. fides/ui-build/static/admin/data-discovery/activity.html +1 -1
  197. fides/ui-build/static/admin/data-discovery/detection/[resourceUrn].html +1 -1
  198. fides/ui-build/static/admin/data-discovery/detection.html +1 -1
  199. fides/ui-build/static/admin/data-discovery/discovery/[resourceUrn].html +1 -1
  200. fides/ui-build/static/admin/data-discovery/discovery.html +1 -1
  201. fides/ui-build/static/admin/datamap.html +1 -1
  202. fides/ui-build/static/admin/dataset/[datasetId]/[collectionName]/[...subfieldNames].html +1 -1
  203. fides/ui-build/static/admin/dataset/[datasetId]/[collectionName].html +1 -1
  204. fides/ui-build/static/admin/dataset/[datasetId].html +1 -1
  205. fides/ui-build/static/admin/dataset/new.html +1 -1
  206. fides/ui-build/static/admin/dataset.html +1 -1
  207. fides/ui-build/static/admin/datastore-connection/[id].html +1 -1
  208. fides/ui-build/static/admin/datastore-connection/new.html +1 -1
  209. fides/ui-build/static/admin/datastore-connection.html +1 -1
  210. fides/ui-build/static/admin/index.html +1 -1
  211. fides/ui-build/static/admin/integrations/[id].html +1 -1
  212. fides/ui-build/static/admin/integrations.html +1 -1
  213. fides/ui-build/static/admin/login/[provider].html +1 -1
  214. fides/ui-build/static/admin/login.html +1 -1
  215. fides/ui-build/static/admin/messaging/[id].html +1 -1
  216. fides/ui-build/static/admin/messaging/add-template.html +1 -1
  217. fides/ui-build/static/admin/messaging.html +1 -1
  218. fides/ui-build/static/admin/poc/ant-components.html +1 -1
  219. fides/ui-build/static/admin/poc/form-experiments/AntForm.html +1 -1
  220. fides/ui-build/static/admin/poc/form-experiments/FormikAntFormItem.html +1 -1
  221. fides/ui-build/static/admin/poc/form-experiments/FormikControlled.html +1 -1
  222. fides/ui-build/static/admin/poc/form-experiments/FormikField.html +1 -1
  223. fides/ui-build/static/admin/poc/form-experiments/FormikSpreadField.html +1 -1
  224. fides/ui-build/static/admin/poc/forms.html +1 -1
  225. fides/ui-build/static/admin/poc/table-migration.html +1 -1
  226. fides/ui-build/static/admin/privacy-requests/[id].html +1 -1
  227. fides/ui-build/static/admin/privacy-requests/configure/storage.html +1 -1
  228. fides/ui-build/static/admin/privacy-requests/configure.html +1 -1
  229. fides/ui-build/static/admin/privacy-requests.html +1 -1
  230. fides/ui-build/static/admin/properties/[id].html +1 -1
  231. fides/ui-build/static/admin/properties/add-property.html +1 -1
  232. fides/ui-build/static/admin/properties.html +1 -1
  233. fides/ui-build/static/admin/reporting/datamap.html +1 -1
  234. fides/ui-build/static/admin/settings/about/alpha.html +1 -1
  235. fides/ui-build/static/admin/settings/about.html +1 -1
  236. fides/ui-build/static/admin/settings/consent/[configuration_id]/[purpose_id].html +1 -1
  237. fides/ui-build/static/admin/settings/consent.html +1 -1
  238. fides/ui-build/static/admin/settings/custom-fields/[id].html +1 -1
  239. fides/ui-build/static/admin/settings/custom-fields/new.html +1 -1
  240. fides/ui-build/static/admin/settings/custom-fields.html +1 -1
  241. fides/ui-build/static/admin/settings/domain-records.html +1 -1
  242. fides/ui-build/static/admin/settings/domains.html +1 -1
  243. fides/ui-build/static/admin/settings/email-templates.html +1 -1
  244. fides/ui-build/static/admin/settings/locations.html +1 -1
  245. fides/ui-build/static/admin/settings/messaging-providers/[key].html +1 -1
  246. fides/ui-build/static/admin/settings/messaging-providers/new.html +1 -1
  247. fides/ui-build/static/admin/settings/messaging-providers.html +1 -1
  248. fides/ui-build/static/admin/settings/organization.html +1 -1
  249. fides/ui-build/static/admin/settings/privacy-requests.html +1 -1
  250. fides/ui-build/static/admin/settings/regulations.html +1 -1
  251. fides/ui-build/static/admin/systems/configure/[id]/test-datasets.html +1 -1
  252. fides/ui-build/static/admin/systems/configure/[id].html +1 -1
  253. fides/ui-build/static/admin/systems.html +1 -1
  254. fides/ui-build/static/admin/taxonomy.html +1 -1
  255. fides/ui-build/static/admin/user-management/new.html +1 -1
  256. fides/ui-build/static/admin/user-management/profile/[id].html +1 -1
  257. fides/ui-build/static/admin/user-management.html +1 -1
  258. fides/api/service/async_dsr/async_dsr_service.py +0 -195
  259. fides/api/service/async_dsr/async_dsr_strategy.py +0 -5
  260. fides/api/service/async_dsr/async_dsr_strategy_callback.py +0 -16
  261. fides/api/service/async_dsr/async_dsr_strategy_factory.py +0 -63
  262. fides/api/service/async_dsr/async_dsr_strategy_polling.py +0 -94
  263. fides/ui-build/static/admin/_next/static/_IxwgneyQjdSaZFEF3Tqu/_buildManifest.js +0 -1
  264. fides/ui-build/static/admin/_next/static/chunks/155-b4337d0826d5addc.js +0 -1
  265. fides/ui-build/static/admin/_next/static/chunks/3585-f728d32fda6f1ac1.js +0 -1
  266. fides/ui-build/static/admin/_next/static/chunks/3855-ed226b8a8050bd40.js +0 -1
  267. fides/ui-build/static/admin/_next/static/chunks/3872-04d3afbfa41a7782.js +0 -1
  268. fides/ui-build/static/admin/_next/static/chunks/409-5c3d31163028339f.js +0 -1
  269. fides/ui-build/static/admin/_next/static/chunks/431-78bf05f35d7eec4f.js +0 -1
  270. fides/ui-build/static/admin/_next/static/chunks/4558-8305aee48def1dcd.js +0 -1
  271. fides/ui-build/static/admin/_next/static/chunks/4608-0c6ef78e30a51f84.js +0 -1
  272. fides/ui-build/static/admin/_next/static/chunks/4718-3a412bdb90add82f.js +0 -1
  273. fides/ui-build/static/admin/_next/static/chunks/502-0d9f4ac29ef34a1c.js +0 -1
  274. fides/ui-build/static/admin/_next/static/chunks/504-88caa30c03374e9b.js +0 -1
  275. fides/ui-build/static/admin/_next/static/chunks/5309-3b6cf0cc9d0c6a83.js +0 -1
  276. fides/ui-build/static/admin/_next/static/chunks/5574-c31ea831371610d5.js +0 -1
  277. fides/ui-build/static/admin/_next/static/chunks/6882-dbe0a25dcf1a8ee0.js +0 -1
  278. fides/ui-build/static/admin/_next/static/chunks/7045-14e955890f1147e4.js +0 -1
  279. fides/ui-build/static/admin/_next/static/chunks/7079-50571e9f3269d74d.js +0 -1
  280. fides/ui-build/static/admin/_next/static/chunks/7158-04745cc8d684b2e7.js +0 -1
  281. fides/ui-build/static/admin/_next/static/chunks/7218-e2983b96b95e33b4.js +0 -1
  282. fides/ui-build/static/admin/_next/static/chunks/7725-f2a7be705b75dcc3.js +0 -1
  283. fides/ui-build/static/admin/_next/static/chunks/7929-0fd0d4948bc8d70e.js +0 -1
  284. fides/ui-build/static/admin/_next/static/chunks/8002-ed832921ad190832.js +0 -1
  285. fides/ui-build/static/admin/_next/static/chunks/9046-b6616ba7b59d947e.js +0 -1
  286. fides/ui-build/static/admin/_next/static/chunks/9226-4a7027057f55ca2a.js +0 -1
  287. fides/ui-build/static/admin/_next/static/chunks/pages/add-systems/manual-4ec03eed67572861.js +0 -1
  288. fides/ui-build/static/admin/_next/static/chunks/pages/add-systems-19214babd1f219e3.js +0 -1
  289. fides/ui-build/static/admin/_next/static/chunks/pages/consent/reporting-c1a3caf3c286bf5d.js +0 -1
  290. fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]-4a1af12d2d7cd660.js +0 -1
  291. fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects-99573a1ee3ef8f4c.js +0 -1
  292. fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/resources-6e429b7511028d60.js +0 -1
  293. fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog-b7326c51d88cc2cc.js +0 -1
  294. fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/[monitorId]/[systemId]-5b57f9132426fe52.js +0 -1
  295. fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/[monitorId]-0d512528b498d75c.js +0 -1
  296. fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center-040813022f0890c9.js +0 -1
  297. fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/activity-a28cc0e23bbe4fc8.js +0 -1
  298. fides/ui-build/static/admin/_next/static/chunks/pages/datamap-7d22222608ec3aac.js +0 -1
  299. fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/[collectionName]/[...subfieldNames]-0abd30eada811b5b.js +0 -1
  300. fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/[collectionName]-007965429368d9a3.js +0 -1
  301. fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]-60a4a9eb4aab4c11.js +0 -1
  302. fides/ui-build/static/admin/_next/static/chunks/pages/dataset/new-d514cd4ec62e3b03.js +0 -1
  303. fides/ui-build/static/admin/_next/static/chunks/pages/dataset-0e3a6ac4797ffbbb.js +0 -1
  304. fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection/[id]-816e02b6cbe4a684.js +0 -1
  305. fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection/new-b6838162200141b3.js +0 -1
  306. fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection-223c2d1ded51bfb1.js +0 -1
  307. fides/ui-build/static/admin/_next/static/chunks/pages/integrations/[id]-153eb88ab4e7dc6d.js +0 -1
  308. fides/ui-build/static/admin/_next/static/chunks/pages/integrations-331544e9b85c4ac2.js +0 -1
  309. fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/[id]-7dac2302f573f5ee.js +0 -1
  310. fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/storage-479890582973deaf.js +0 -1
  311. fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests-7af00f72cf694077.js +0 -1
  312. fides/ui-build/static/admin/_next/static/chunks/pages/reporting/datamap-f7753e9effae3816.js +0 -1
  313. fides/ui-build/static/admin/_next/static/chunks/pages/settings/custom-fields-2fcd95c41e578d57.js +0 -1
  314. fides/ui-build/static/admin/_next/static/chunks/pages/settings/messaging-providers-8d92be437793c96f.js +0 -1
  315. fides/ui-build/static/admin/_next/static/chunks/pages/settings/privacy-requests-97221067330c0c27.js +0 -1
  316. fides/ui-build/static/admin/_next/static/chunks/pages/systems-6c91bdea40875227.js +0 -1
  317. fides/ui-build/static/admin/_next/static/chunks/pages/taxonomy-3059aba38adefa56.js +0 -1
  318. fides/ui-build/static/admin/_next/static/css/073713cd1eddda79.css +0 -1
  319. fides/ui-build/static/admin/_next/static/css/295d729ea1b11885.css +0 -1
  320. {ethyca_fides-2.71.1b1.dist-info → ethyca_fides-2.71.2b0.dist-info}/WHEEL +0 -0
  321. {ethyca_fides-2.71.1b1.dist-info → ethyca_fides-2.71.2b0.dist-info}/entry_points.txt +0 -0
  322. {ethyca_fides-2.71.1b1.dist-info → ethyca_fides-2.71.2b0.dist-info}/licenses/LICENSE +0 -0
  323. {ethyca_fides-2.71.1b1.dist-info → ethyca_fides-2.71.2b0.dist-info}/top_level.txt +0 -0
  324. /fides/ui-build/static/admin/_next/static/{_IxwgneyQjdSaZFEF3Tqu → zmEQMSpOBih8kmA1t-EWO}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1051],{55342:function(e,n,i){(window.__NEXT_P=window.__NEXT_P||[]).push(["/settings/domain-records",function(){return i(64872)}])},77213:function(e,n,i){"use strict";i.d(n,{Z:function(){return f}});var t=i(24246),s=i(96306),o=i(88038),a=i.n(o),r=i(86677);i(27378);var g=i(25980),u=i(90867),c=i(42478),d=i(77830),l=()=>{let e=(0,r.useRouter)();return(0,t.jsx)(s.xuv,{bg:"gray.50",border:"1px solid",borderColor:"blue.400",borderRadius:"md",justifyContent:"space-between",p:5,mb:5,mt:5,children:(0,t.jsxs)(s.xuv,{children:[(0,t.jsxs)(s.Kqy,{direction:{base:"column",sm:"row"},justifyContent:"space-between",children:[(0,t.jsx)(s.xvT,{fontWeight:"semibold",children:"Configure your storage and messaging provider"}),(0,t.jsx)(s.wpx,{onClick:()=>{e.push(d.AD)},children:"Configure"})]}),(0,t.jsxs)(s.xvT,{children:["Before Fides can process your privacy requests we need two simple steps to configure your storage and email client."," "]})]})})},f=e=>{let{children:n,title:i,padded:o=!0,mainProps:d}=e,f=(0,g.hz)(),m=(0,r.useRouter)(),y="/privacy-requests"===m.pathname||"/datastore-connection"===m.pathname,h=!(f.flags.messagingConfiguration&&y),{data:v}=(0,c.JE)(void 0,{skip:h}),{data:x}=(0,u.PW)(void 0,{skip:h}),p=f.flags.messagingConfiguration&&(!v||!x)&&y;return(0,t.jsxs)(s.kCb,{"data-testid":i,direction:"column",h:"100vh",children:[(0,t.jsxs)(a(),{children:[(0,t.jsxs)("title",{children:["Fides Admin UI - ",i]}),(0,t.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,t.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,t.jsxs)(s.kCb,{as:"main",direction:"column",py:o?6:0,px:o?10:0,h:o?"calc(100% - 48px)":"full",flex:1,minWidth:0,overflow:"auto",...d,children:[p?(0,t.jsx)(l,{}):null,n]})]})}},42478:function(e,n,i){"use strict";i.d(n,{FU:function(){return u},JE:function(){return s},Ki:function(){return d},SU:function(){return l},W:function(){return f},h9:function(){return o},jc:function(){return t},qt:function(){return g},sn:function(){return c}});let{useGetEmailInviteStatusQuery:t,useGetActiveMessagingProviderQuery:s,useCreateMessagingConfigurationMutation:o,useCreateMessagingConfigurationSecretsMutation:a,useGetMessagingConfigurationDetailsQuery:r,useGetMessagingConfigurationsQuery:g,useGetMessagingConfigurationByKeyQuery:u,useUpdateMessagingConfigurationByKeyMutation:c,useUpdateMessagingConfigurationSecretsByKeyMutation:d,useCreateTestConnectionMessageMutation:l,useDeleteMessagingConfigurationByKeyMutation:f}=i(78780).u.injectEndpoints({endpoints:e=>({getEmailInviteStatus:e.query({query:()=>({url:"/messaging/email-invite/status"}),providesTags:()=>["Email Invite Status"]}),createMessagingConfiguration:e.mutation({query:e=>({url:"messaging/config",method:"POST",body:e}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getActiveMessagingProvider:e.query({queryFn:async(e,n,i,t)=>{let s=await t({url:"messaging/default/active"});return s.error&&404===s.error.status?{data:null}:s},providesTags:["Messaging Config"]}),createMessagingConfigurationSecrets:e.mutation({query:e=>({url:"messaging/default/".concat(e.service_type,"/secret"),method:"PUT",body:e.details}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getMessagingConfigurationDetails:e.query({query:e=>({url:"messaging/default/".concat(e.type)}),providesTags:["Messaging Config"]}),getMessagingConfigurations:e.query({query:()=>({url:"messaging/config"}),providesTags:["Messaging Config"]}),getMessagingConfigurationByKey:e.query({query:e=>({url:"messaging/config/".concat(e.key)}),providesTags:["Messaging Config"]}),createTestConnectionMessage:e.mutation({query:e=>({url:"messaging/test/".concat(e.service_type),method:"POST",body:e.details}),invalidatesTags:["Messaging Config"]}),updateMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"PATCH",body:e.config}),invalidatesTags:["Messaging Config","Configuration Settings"]}),updateMessagingConfigurationSecretsByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key,"/secret"),method:"PUT",body:e.secrets}),invalidatesTags:["Messaging Config","Configuration Settings"]}),deleteMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"DELETE"}),invalidatesTags:["Messaging Config","Configuration Settings"]})})})},64872:function(e,n,i){"use strict";i.r(n);var t=i(24246),s=i(92222),o=i(59003),a=i(96306),r=i(27378),g=i(88340),u=i(77213),c=i(47935),d=i(32885);let l=(0,s.Cl)();n.default=()=>{let e=(0,r.useMemo)(()=>[l.accessor(e=>e.hostName,{header:"Name",cell:e=>(0,t.jsx)(c.G3,{value:e.getValue()})}),l.accessor(e=>e.type,{header:"Type",cell:e=>(0,t.jsx)(c.G3,{value:e.getValue()})}),l.accessor(e=>e.data,{header:"Value",cell:e=>(0,t.jsx)(c.G3,{value:e.getValue()})}),l.display({id:"actions",cell:e=>{let{row:n}=e;return(0,t.jsx)(g.Z,{copyText:n.original.data,type:"default",size:"small"})},header:"Actions",maxSize:65})],[]),{data:n,isLoading:i}=(0,d.Vh)(),f=(0,r.useMemo)(()=>(null==n?void 0:n.domain_verification_records)?n.domain_verification_records.map(e=>({hostName:"www",type:"CNAME",data:e})):[],[n]),m=(0,o.b7)({getCoreRowModel:(0,s.sC)(),columns:e,data:f,columnResizeMode:"onChange"});return(0,t.jsx)(u.Z,{title:"Domain records",children:(0,t.jsxs)(a.xuv,{"data-testid":"domain-records",children:[(0,t.jsx)(a.X6q,{marginBottom:4,fontSize:"2xl",children:"Domain records"}),(0,t.jsxs)(a.xuv,{maxWidth:"600px",children:[(0,t.jsx)(a.xvT,{marginBottom:2,fontSize:"md",children:"Set the following record on your DNS provider to continue."}),(0,t.jsxs)(a.xvT,{mb:10,fontSize:"sm",children:["Please visit"," ",(0,t.jsx)(a.rUS,{color:"complimentary.500",href:"https://fid.es/manage-dns",isExternal:!0,children:"docs.ethyca.com"})," ","for more information on how to configure Domain records."]}),i?(0,t.jsx)(a.xuv,{p:2,borderWidth:1,children:(0,t.jsx)(c.I4,{rowHeight:26,numRows:5})}):(0,t.jsx)(c.ZK,{tableInstance:m})]})]})})}}},function(e){e.O(0,[2888,9774,179],function(){return e(e.s=55342)}),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1051],{55342:function(e,n,i){(window.__NEXT_P=window.__NEXT_P||[]).push(["/settings/domain-records",function(){return i(64872)}])},77213:function(e,n,i){"use strict";i.d(n,{Z:function(){return f}});var t=i(24246),s=i(20595),o=i(88038),a=i.n(o),r=i(86677);i(27378);var g=i(25980),u=i(90867),c=i(42478),d=i(77830),l=()=>{let e=(0,r.useRouter)();return(0,t.jsx)(s.xuv,{bg:"gray.50",border:"1px solid",borderColor:"blue.400",borderRadius:"md",justifyContent:"space-between",p:5,mb:5,mt:5,children:(0,t.jsxs)(s.xuv,{children:[(0,t.jsxs)(s.Kqy,{direction:{base:"column",sm:"row"},justifyContent:"space-between",children:[(0,t.jsx)(s.xvT,{fontWeight:"semibold",children:"Configure your storage and messaging provider"}),(0,t.jsx)(s.wpx,{onClick:()=>{e.push(d.AD)},children:"Configure"})]}),(0,t.jsxs)(s.xvT,{children:["Before Fides can process your privacy requests we need two simple steps to configure your storage and email client."," "]})]})})},f=e=>{let{children:n,title:i,padded:o=!0,mainProps:d}=e,f=(0,g.hz)(),m=(0,r.useRouter)(),y="/privacy-requests"===m.pathname||"/datastore-connection"===m.pathname,h=!(f.flags.messagingConfiguration&&y),{data:v}=(0,c.JE)(void 0,{skip:h}),{data:x}=(0,u.PW)(void 0,{skip:h}),p=f.flags.messagingConfiguration&&(!v||!x)&&y;return(0,t.jsxs)(s.kCb,{"data-testid":i,direction:"column",h:"100vh",children:[(0,t.jsxs)(a(),{children:[(0,t.jsxs)("title",{children:["Fides Admin UI - ",i]}),(0,t.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,t.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,t.jsxs)(s.kCb,{as:"main",direction:"column",py:o?6:0,px:o?10:0,h:o?"calc(100% - 48px)":"full",flex:1,minWidth:0,overflow:"auto",...d,children:[p?(0,t.jsx)(l,{}):null,n]})]})}},42478:function(e,n,i){"use strict";i.d(n,{FU:function(){return u},JE:function(){return s},Ki:function(){return d},SU:function(){return l},W:function(){return f},h9:function(){return o},jc:function(){return t},qt:function(){return g},sn:function(){return c}});let{useGetEmailInviteStatusQuery:t,useGetActiveMessagingProviderQuery:s,useCreateMessagingConfigurationMutation:o,useCreateMessagingConfigurationSecretsMutation:a,useGetMessagingConfigurationDetailsQuery:r,useGetMessagingConfigurationsQuery:g,useGetMessagingConfigurationByKeyQuery:u,useUpdateMessagingConfigurationByKeyMutation:c,useUpdateMessagingConfigurationSecretsByKeyMutation:d,useCreateTestConnectionMessageMutation:l,useDeleteMessagingConfigurationByKeyMutation:f}=i(78780).u.injectEndpoints({endpoints:e=>({getEmailInviteStatus:e.query({query:()=>({url:"/messaging/email-invite/status"}),providesTags:()=>["Email Invite Status"]}),createMessagingConfiguration:e.mutation({query:e=>({url:"messaging/config",method:"POST",body:e}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getActiveMessagingProvider:e.query({queryFn:async(e,n,i,t)=>{let s=await t({url:"messaging/default/active"});return s.error&&404===s.error.status?{data:null}:s},providesTags:["Messaging Config"]}),createMessagingConfigurationSecrets:e.mutation({query:e=>({url:"messaging/default/".concat(e.service_type,"/secret"),method:"PUT",body:e.details}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getMessagingConfigurationDetails:e.query({query:e=>({url:"messaging/default/".concat(e.type)}),providesTags:["Messaging Config"]}),getMessagingConfigurations:e.query({query:()=>({url:"messaging/config"}),providesTags:["Messaging Config"]}),getMessagingConfigurationByKey:e.query({query:e=>({url:"messaging/config/".concat(e.key)}),providesTags:["Messaging Config"]}),createTestConnectionMessage:e.mutation({query:e=>({url:"messaging/test/".concat(e.service_type),method:"POST",body:e.details}),invalidatesTags:["Messaging Config"]}),updateMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"PATCH",body:e.config}),invalidatesTags:["Messaging Config","Configuration Settings"]}),updateMessagingConfigurationSecretsByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key,"/secret"),method:"PUT",body:e.secrets}),invalidatesTags:["Messaging Config","Configuration Settings"]}),deleteMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"DELETE"}),invalidatesTags:["Messaging Config","Configuration Settings"]})})})},64872:function(e,n,i){"use strict";i.r(n);var t=i(24246),s=i(92222),o=i(59003),a=i(20595),r=i(27378),g=i(88340),u=i(77213),c=i(47935),d=i(32885);let l=(0,s.Cl)();n.default=()=>{let e=(0,r.useMemo)(()=>[l.accessor(e=>e.hostName,{header:"Name",cell:e=>(0,t.jsx)(c.G3,{value:e.getValue()})}),l.accessor(e=>e.type,{header:"Type",cell:e=>(0,t.jsx)(c.G3,{value:e.getValue()})}),l.accessor(e=>e.data,{header:"Value",cell:e=>(0,t.jsx)(c.G3,{value:e.getValue()})}),l.display({id:"actions",cell:e=>{let{row:n}=e;return(0,t.jsx)(g.Z,{copyText:n.original.data,type:"default",size:"small"})},header:"Actions",maxSize:65})],[]),{data:n,isLoading:i}=(0,d.Vh)(),f=(0,r.useMemo)(()=>(null==n?void 0:n.domain_verification_records)?n.domain_verification_records.map(e=>({hostName:"www",type:"CNAME",data:e})):[],[n]),m=(0,o.b7)({getCoreRowModel:(0,s.sC)(),columns:e,data:f,columnResizeMode:"onChange"});return(0,t.jsx)(u.Z,{title:"Domain records",children:(0,t.jsxs)(a.xuv,{"data-testid":"domain-records",children:[(0,t.jsx)(a.X6q,{marginBottom:4,fontSize:"2xl",children:"Domain records"}),(0,t.jsxs)(a.xuv,{maxWidth:"600px",children:[(0,t.jsx)(a.xvT,{marginBottom:2,fontSize:"md",children:"Set the following record on your DNS provider to continue."}),(0,t.jsxs)(a.xvT,{mb:10,fontSize:"sm",children:["Please visit"," ",(0,t.jsx)(a.rUS,{color:"complimentary.500",href:"https://fid.es/manage-dns",isExternal:!0,children:"docs.ethyca.com"})," ","for more information on how to configure Domain records."]}),i?(0,t.jsx)(a.xuv,{p:2,borderWidth:1,children:(0,t.jsx)(c.I4,{rowHeight:26,numRows:5})}):(0,t.jsx)(c.ZK,{tableInstance:m})]})]})})}}},function(e){e.O(0,[2888,9774,179],function(){return e(e.s=55342)}),_N_E=e.O()}]);
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9252],{98648:function(e,i,n){(window.__NEXT_P=window.__NEXT_P||[]).push(["/settings/domains",function(){return n(76974)}])},59301:function(e,i,n){"use strict";var t=n(24246);let{Link:s}=n(96306).AntTypography;i.Z=e=>(0,t.jsx)(s,{target:"_blank",rel:"noopener noreferrer",...e})},77213:function(e,i,n){"use strict";n.d(i,{Z:function(){return m}});var t=n(24246),s=n(96306),r=n(88038),a=n.n(r),o=n(86677);n(27378);var c=n(25980),d=n(90867),l=n(42478),g=n(77830),u=()=>{let e=(0,o.useRouter)();return(0,t.jsx)(s.xuv,{bg:"gray.50",border:"1px solid",borderColor:"blue.400",borderRadius:"md",justifyContent:"space-between",p:5,mb:5,mt:5,children:(0,t.jsxs)(s.xuv,{children:[(0,t.jsxs)(s.Kqy,{direction:{base:"column",sm:"row"},justifyContent:"space-between",children:[(0,t.jsx)(s.xvT,{fontWeight:"semibold",children:"Configure your storage and messaging provider"}),(0,t.jsx)(s.wpx,{onClick:()=>{e.push(g.AD)},children:"Configure"})]}),(0,t.jsxs)(s.xvT,{children:["Before Fides can process your privacy requests we need two simple steps to configure your storage and email client."," "]})]})})},m=e=>{let{children:i,title:n,padded:r=!0,mainProps:g}=e,m=(0,c.hz)(),p=(0,o.useRouter)(),h="/privacy-requests"===p.pathname||"/datastore-connection"===p.pathname,x=!(m.flags.messagingConfiguration&&h),{data:f}=(0,l.JE)(void 0,{skip:x}),{data:y}=(0,d.PW)(void 0,{skip:x}),v=m.flags.messagingConfiguration&&(!f||!y)&&h;return(0,t.jsxs)(s.kCb,{"data-testid":n,direction:"column",h:"100vh",children:[(0,t.jsxs)(a(),{children:[(0,t.jsxs)("title",{children:["Fides Admin UI - ",n]}),(0,t.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,t.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,t.jsxs)(s.kCb,{as:"main",direction:"column",py:r?6:0,px:r?10:0,h:r?"calc(100% - 48px)":"full",flex:1,minWidth:0,overflow:"auto",...g,children:[v?(0,t.jsx)(u,{}):null,i]})]})}},58754:function(e,i,n){"use strict";var t=n(24246),s=n(96306),r=n(70788);i.Z=e=>{let{heading:i,breadcrumbItems:n,isSticky:a=!0,children:o,rightContent:c,style:d,...l}=e;return(0,t.jsxs)("div",{...l,style:a?{position:"sticky",top:"-24px",paddingTop:"24px",paddingBottom:"24px",paddingLeft:"40px",marginLeft:"-40px",paddingRight:"40px",marginRight:"-40px",marginTop:"-24px",left:0,zIndex:20,backgroundColor:"white",...d}:{paddingBottom:"24px",...d},children:[(0,t.jsxs)(s.jqI,{justify:"space-between",children:["string"==typeof i?(0,t.jsx)(s.lQT,{className:n||o?"pb-4":void 0,level:1,"data-testid":"page-heading",children:i}):i,c&&(0,t.jsx)("div",{"data-testid":"page-header-right-content",children:c})]}),!!n&&(0,t.jsx)(r.m,{className:o?"pb-4":void 0,items:n,"data-testid":"page-breadcrumb"}),o]})}},10342:function(e,i,n){"use strict";var t=n(24246),s=n(96306),r=n(46238);i.Z=e=>{let{title:i,tooltip:n,children:a,...o}=e;return(0,t.jsxs)(s.xuv,{borderRadius:"md",border:"1px solid",borderColor:"gray.200",...o,children:[(0,t.jsxs)(s.X6q,{as:"h3",fontSize:"sm",fontWeight:"semibold",color:"gray.700",py:4,px:6,backgroundColor:"gray.50",borderRadius:"md",textAlign:"left",children:[i,n?(0,t.jsx)(s.xvT,{as:"span",mx:1,children:(0,t.jsx)(r.b,{label:n})}):void 0]}),(0,t.jsx)(s.Kqy,{p:6,spacing:6,children:a})]})}},70788:function(e,i,n){"use strict";n.d(i,{m:function(){return d}});var t=n(24246),s=n(96306),r=n(79894),a=n.n(r),o=n(27378);let{Text:c}=s.AntTypography,d=e=>{let{items:i,...n}=e,r=(0,o.useMemo)(()=>null==i?void 0:i.map((e,n)=>{let r=n===i.length-1,o={...e},d=o.onClick&&!o.href;return("string"==typeof o.title&&(o.title=(0,t.jsx)(c,{style:{color:"inherit",maxWidth:r?void 0:400},ellipsis:!r,id:r?"breadcrumb-current-page":void 0,children:o.title})),d)?o.title=(0,t.jsx)(s.wpx,{type:"text",size:"small",icon:o.icon,onClick:o.onClick,className:"ant-breadcrumb-link -mt-px px-1 text-inherit",children:o.title}):(o.icon&&(o.title=(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"anticon align-text-bottom",children:o.icon}),o.title]})),o.href&&o.title&&(o.title=(0,t.jsx)(a(),{href:o.href,className:"ant-breadcrumb-link",children:o.title}),delete o.href)),o}),[i]);return(0,t.jsx)(s.zrq,{items:r,...n})}},42478:function(e,i,n){"use strict";n.d(i,{FU:function(){return d},JE:function(){return s},Ki:function(){return g},SU:function(){return u},W:function(){return m},h9:function(){return r},jc:function(){return t},qt:function(){return c},sn:function(){return l}});let{useGetEmailInviteStatusQuery:t,useGetActiveMessagingProviderQuery:s,useCreateMessagingConfigurationMutation:r,useCreateMessagingConfigurationSecretsMutation:a,useGetMessagingConfigurationDetailsQuery:o,useGetMessagingConfigurationsQuery:c,useGetMessagingConfigurationByKeyQuery:d,useUpdateMessagingConfigurationByKeyMutation:l,useUpdateMessagingConfigurationSecretsByKeyMutation:g,useCreateTestConnectionMessageMutation:u,useDeleteMessagingConfigurationByKeyMutation:m}=n(78780).u.injectEndpoints({endpoints:e=>({getEmailInviteStatus:e.query({query:()=>({url:"/messaging/email-invite/status"}),providesTags:()=>["Email Invite Status"]}),createMessagingConfiguration:e.mutation({query:e=>({url:"messaging/config",method:"POST",body:e}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getActiveMessagingProvider:e.query({queryFn:async(e,i,n,t)=>{let s=await t({url:"messaging/default/active"});return s.error&&404===s.error.status?{data:null}:s},providesTags:["Messaging Config"]}),createMessagingConfigurationSecrets:e.mutation({query:e=>({url:"messaging/default/".concat(e.service_type,"/secret"),method:"PUT",body:e.details}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getMessagingConfigurationDetails:e.query({query:e=>({url:"messaging/default/".concat(e.type)}),providesTags:["Messaging Config"]}),getMessagingConfigurations:e.query({query:()=>({url:"messaging/config"}),providesTags:["Messaging Config"]}),getMessagingConfigurationByKey:e.query({query:e=>({url:"messaging/config/".concat(e.key)}),providesTags:["Messaging Config"]}),createTestConnectionMessage:e.mutation({query:e=>({url:"messaging/test/".concat(e.service_type),method:"POST",body:e.details}),invalidatesTags:["Messaging Config"]}),updateMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"PATCH",body:e.config}),invalidatesTags:["Messaging Config","Configuration Settings"]}),updateMessagingConfigurationSecretsByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key,"/secret"),method:"PUT",body:e.secrets}),invalidatesTags:["Messaging Config","Configuration Settings"]}),deleteMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"DELETE"}),invalidatesTags:["Messaging Config","Configuration Settings"]})})})},76974:function(e,i,n){"use strict";n.r(i);var t=n(24246),s=n(96306),r=n(34090),a=n(55484),o=n(16134),c=n(59301),d=n(10342),l=n(40324),g=n(812),u=n(77213),m=n(58754),p=n(46628),h=n(7426);i.default=()=>{var e;let{isLoading:i}=(0,h.tB)({api_set:!0}),{isLoading:n}=(0,h.tB)({api_set:!1}),x=(0,o.C)(h.ak),f=x.apiSet,y=x.configSet,v=!!((null===(e=y.cors_origins)||void 0===e?void 0:e.length)||y.cors_origin_regex),j=(0,o.C)((0,h.U7)()),[b,{isLoading:C}]=(0,h.km)(),_=(0,s.pmc)(),w=e=>{if(!e||!(e.startsWith("https://")||e.startsWith("http://")))return!1;try{new URL(e)}catch(e){return!1}return!0},k=e=>!!e&&!e.includes("*"),T=e=>{if(!e)return!1;try{let i=new URL(e);return"/"===i.pathname&&!e.endsWith("/")}catch(e){return!1}},q=a.Ry().shape({cors_origins:a.IX().nullable().of(a.Z_().required().trim().test("is-valid-url",e=>{let{label:i}=e;return"".concat(i," must be a valid URL (e.g. https://example.com)")},e=>w(e)).test("has-no-wildcard",e=>{let{label:i}=e;return"".concat(i," cannot contain a wildcard (e.g. https://*.example.com)")},e=>k(e)).test("has-no-path",e=>{let{label:i}=e;return"".concat(i," cannot contain a path (e.g. https://example.com/path)")},e=>T(e)).label("Domain"))}),M=async(e,i)=>{let n=e.cors_origins&&e.cors_origins.length>0?e.cors_origins:void 0,t={...j,security:{cors_origins:n}};(n=>{if(_.closeAll(),(0,g.D4)(n)){let e=(0,g.e$)(n.error,"An unexpected error occurred while saving domains. Please try again.");_((0,p.Vo)(e))}else _((0,p.t5)("Domains saved successfully")),i.resetForm({values:e})})(await b(t))};return(0,t.jsx)(u.Z,{title:"Domains",children:(0,t.jsxs)(s.xuv,{"data-testid":"management-domains",children:[(0,t.jsx)(m.Z,{heading:"Domains"}),(0,t.jsxs)(s.xuv,{maxW:"600px",children:[(0,t.jsxs)(s.xvT,{fontSize:"sm",pb:6,children:["For Fides to work on your website(s), each of your domains must be listed below. You can add and remove domains at any time up to the quantity included in your license. For more information on managing domains"," ",(0,t.jsx)(c.Z,{href:"https://fid.es/domain-configuration",children:"read here"}),"."]}),(0,t.jsx)(d.Z,{"data-testid":"api-set-domains-form",title:"Organization domains",tooltip:"Fides uses these domains to enforce cross-origin resource sharing (CORS), a browser-based security standard. Each domain must be a valid URL (e.g. https://example.com) without any wildcards '*' or paths '/blog'",children:i||C?(0,t.jsx)(s.kCb,{justifyContent:"center",children:(0,t.jsx)(s.$jN,{})}):(0,t.jsx)(r.J9,{initialValues:f,enableReinitialize:!0,onSubmit:M,validationSchema:q,validateOnChange:!0,children:e=>{let{dirty:i,values:n,isValid:a}=e;return(0,t.jsxs)(r.l0,{children:[(0,t.jsx)(r.F2,{name:"cors_origins",render:e=>(0,t.jsxs)(s.kCb,{flexDir:"column",children:[n.cors_origins.map((i,n)=>(0,t.jsxs)(s.kCb,{flexDir:"row",my:3,children:[(0,t.jsx)(l.j0,{variant:"stacked",name:"cors_origins[".concat(n,"]"),placeholder:"https://subdomain.example.com:9090"}),(0,t.jsx)(s.wpx,{"aria-label":"delete-domain",className:"z-[2] ml-4",icon:(0,t.jsx)(s.pJl,{}),onClick:()=>{e.remove(n)}})]},n)),(0,t.jsx)(s.kCb,{justifyContent:"center",mt:3,children:(0,t.jsx)(s.wpx,{"aria-label":"add-domain",className:"w-full",onClick:()=>{e.push("")},children:"Add domain"})})]})}),(0,t.jsx)(s.xuv,{mt:6,children:(0,t.jsx)(s.wpx,{htmlType:"submit",type:"primary",disabled:C||!i||!a,loading:C,"data-testid":"save-btn",children:"Save"})})]})}})})]}),(0,t.jsx)(s.xuv,{maxW:"600px",marginY:3,children:(0,t.jsx)(d.Z,{"data-testid":"config-set-domains-form",title:"Advanced settings",tooltip:"These domains are configured by an administrator with access to Fides security settings and can support more advanced options such as wildcards and regex.",children:n?(0,t.jsx)(s.kCb,{justifyContent:"center",children:(0,t.jsx)(s.$jN,{})}):(0,t.jsxs)(s.kCb,{flexDir:"column",children:[y.cors_origins.map((e,i)=>(0,t.jsx)(l.oi,{"data-testid":"input-config_cors_origins[".concat(i,"]"),marginY:3,value:e,isDisabled:!0,isPassword:!1},i)),y.cors_origin_regex?(0,t.jsx)(l.oi,{"data-testid":"input-config_cors_origin_regex",marginY:3,value:y.cors_origin_regex,isDisabled:!0,isPassword:!1},"cors_origin_regex"):void 0,v?void 0:(0,t.jsx)(s.xvT,{fontSize:"xs",color:"gray.500",children:"No advanced domain settings configured."})]})})})]})})}}},function(e){e.O(0,[2888,9774,179],function(){return e(e.s=98648)}),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9252],{98648:function(e,i,n){(window.__NEXT_P=window.__NEXT_P||[]).push(["/settings/domains",function(){return n(76974)}])},59301:function(e,i,n){"use strict";var t=n(24246);let{Link:s}=n(20595).AntTypography;i.Z=e=>(0,t.jsx)(s,{target:"_blank",rel:"noopener noreferrer",...e})},77213:function(e,i,n){"use strict";n.d(i,{Z:function(){return m}});var t=n(24246),s=n(20595),r=n(88038),a=n.n(r),o=n(86677);n(27378);var c=n(25980),d=n(90867),l=n(42478),g=n(77830),u=()=>{let e=(0,o.useRouter)();return(0,t.jsx)(s.xuv,{bg:"gray.50",border:"1px solid",borderColor:"blue.400",borderRadius:"md",justifyContent:"space-between",p:5,mb:5,mt:5,children:(0,t.jsxs)(s.xuv,{children:[(0,t.jsxs)(s.Kqy,{direction:{base:"column",sm:"row"},justifyContent:"space-between",children:[(0,t.jsx)(s.xvT,{fontWeight:"semibold",children:"Configure your storage and messaging provider"}),(0,t.jsx)(s.wpx,{onClick:()=>{e.push(g.AD)},children:"Configure"})]}),(0,t.jsxs)(s.xvT,{children:["Before Fides can process your privacy requests we need two simple steps to configure your storage and email client."," "]})]})})},m=e=>{let{children:i,title:n,padded:r=!0,mainProps:g}=e,m=(0,c.hz)(),p=(0,o.useRouter)(),h="/privacy-requests"===p.pathname||"/datastore-connection"===p.pathname,x=!(m.flags.messagingConfiguration&&h),{data:f}=(0,l.JE)(void 0,{skip:x}),{data:y}=(0,d.PW)(void 0,{skip:x}),v=m.flags.messagingConfiguration&&(!f||!y)&&h;return(0,t.jsxs)(s.kCb,{"data-testid":n,direction:"column",h:"100vh",children:[(0,t.jsxs)(a(),{children:[(0,t.jsxs)("title",{children:["Fides Admin UI - ",n]}),(0,t.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,t.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,t.jsxs)(s.kCb,{as:"main",direction:"column",py:r?6:0,px:r?10:0,h:r?"calc(100% - 48px)":"full",flex:1,minWidth:0,overflow:"auto",...g,children:[v?(0,t.jsx)(u,{}):null,i]})]})}},58754:function(e,i,n){"use strict";var t=n(24246),s=n(20595),r=n(70788);i.Z=e=>{let{heading:i,breadcrumbItems:n,isSticky:a=!0,children:o,rightContent:c,style:d,...l}=e;return(0,t.jsxs)("div",{...l,style:a?{position:"sticky",top:"-24px",paddingTop:"24px",paddingBottom:"24px",paddingLeft:"40px",marginLeft:"-40px",paddingRight:"40px",marginRight:"-40px",marginTop:"-24px",left:0,zIndex:20,backgroundColor:"white",...d}:{paddingBottom:"24px",...d},children:[(0,t.jsxs)(s.jqI,{justify:"space-between",children:["string"==typeof i?(0,t.jsx)(s.lQT,{className:n||o?"pb-4":void 0,level:1,"data-testid":"page-heading",children:i}):i,c&&(0,t.jsx)("div",{"data-testid":"page-header-right-content",children:c})]}),!!n&&(0,t.jsx)(r.m,{className:o?"pb-4":void 0,items:n,"data-testid":"page-breadcrumb"}),o]})}},10342:function(e,i,n){"use strict";var t=n(24246),s=n(20595),r=n(46238);i.Z=e=>{let{title:i,tooltip:n,children:a,...o}=e;return(0,t.jsxs)(s.xuv,{borderRadius:"md",border:"1px solid",borderColor:"gray.200",...o,children:[(0,t.jsxs)(s.X6q,{as:"h3",fontSize:"sm",fontWeight:"semibold",color:"gray.700",py:4,px:6,backgroundColor:"gray.50",borderRadius:"md",textAlign:"left",children:[i,n?(0,t.jsx)(s.xvT,{as:"span",mx:1,children:(0,t.jsx)(r.b,{label:n})}):void 0]}),(0,t.jsx)(s.Kqy,{p:6,spacing:6,children:a})]})}},70788:function(e,i,n){"use strict";n.d(i,{m:function(){return d}});var t=n(24246),s=n(20595),r=n(79894),a=n.n(r),o=n(27378);let{Text:c}=s.AntTypography,d=e=>{let{items:i,...n}=e,r=(0,o.useMemo)(()=>null==i?void 0:i.map((e,n)=>{let r=n===i.length-1,o={...e},d=o.onClick&&!o.href;return("string"==typeof o.title&&(o.title=(0,t.jsx)(c,{style:{color:"inherit",maxWidth:r?void 0:400},ellipsis:!r,id:r?"breadcrumb-current-page":void 0,children:o.title})),d)?o.title=(0,t.jsx)(s.wpx,{type:"text",size:"small",icon:o.icon,onClick:o.onClick,className:"ant-breadcrumb-link -mt-px px-1 text-inherit",children:o.title}):(o.icon&&(o.title=(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"anticon align-text-bottom",children:o.icon}),o.title]})),o.href&&o.title&&(o.title=(0,t.jsx)(a(),{href:o.href,className:"ant-breadcrumb-link",children:o.title}),delete o.href)),o}),[i]);return(0,t.jsx)(s.zrq,{items:r,...n})}},42478:function(e,i,n){"use strict";n.d(i,{FU:function(){return d},JE:function(){return s},Ki:function(){return g},SU:function(){return u},W:function(){return m},h9:function(){return r},jc:function(){return t},qt:function(){return c},sn:function(){return l}});let{useGetEmailInviteStatusQuery:t,useGetActiveMessagingProviderQuery:s,useCreateMessagingConfigurationMutation:r,useCreateMessagingConfigurationSecretsMutation:a,useGetMessagingConfigurationDetailsQuery:o,useGetMessagingConfigurationsQuery:c,useGetMessagingConfigurationByKeyQuery:d,useUpdateMessagingConfigurationByKeyMutation:l,useUpdateMessagingConfigurationSecretsByKeyMutation:g,useCreateTestConnectionMessageMutation:u,useDeleteMessagingConfigurationByKeyMutation:m}=n(78780).u.injectEndpoints({endpoints:e=>({getEmailInviteStatus:e.query({query:()=>({url:"/messaging/email-invite/status"}),providesTags:()=>["Email Invite Status"]}),createMessagingConfiguration:e.mutation({query:e=>({url:"messaging/config",method:"POST",body:e}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getActiveMessagingProvider:e.query({queryFn:async(e,i,n,t)=>{let s=await t({url:"messaging/default/active"});return s.error&&404===s.error.status?{data:null}:s},providesTags:["Messaging Config"]}),createMessagingConfigurationSecrets:e.mutation({query:e=>({url:"messaging/default/".concat(e.service_type,"/secret"),method:"PUT",body:e.details}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getMessagingConfigurationDetails:e.query({query:e=>({url:"messaging/default/".concat(e.type)}),providesTags:["Messaging Config"]}),getMessagingConfigurations:e.query({query:()=>({url:"messaging/config"}),providesTags:["Messaging Config"]}),getMessagingConfigurationByKey:e.query({query:e=>({url:"messaging/config/".concat(e.key)}),providesTags:["Messaging Config"]}),createTestConnectionMessage:e.mutation({query:e=>({url:"messaging/test/".concat(e.service_type),method:"POST",body:e.details}),invalidatesTags:["Messaging Config"]}),updateMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"PATCH",body:e.config}),invalidatesTags:["Messaging Config","Configuration Settings"]}),updateMessagingConfigurationSecretsByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key,"/secret"),method:"PUT",body:e.secrets}),invalidatesTags:["Messaging Config","Configuration Settings"]}),deleteMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"DELETE"}),invalidatesTags:["Messaging Config","Configuration Settings"]})})})},76974:function(e,i,n){"use strict";n.r(i);var t=n(24246),s=n(20595),r=n(34090),a=n(55484),o=n(16134),c=n(59301),d=n(10342),l=n(40324),g=n(812),u=n(77213),m=n(58754),p=n(46628),h=n(7426);i.default=()=>{var e;let{isLoading:i}=(0,h.tB)({api_set:!0}),{isLoading:n}=(0,h.tB)({api_set:!1}),x=(0,o.C)(h.ak),f=x.apiSet,y=x.configSet,v=!!((null===(e=y.cors_origins)||void 0===e?void 0:e.length)||y.cors_origin_regex),j=(0,o.C)((0,h.U7)()),[b,{isLoading:C}]=(0,h.km)(),_=(0,s.pmc)(),w=e=>{if(!e||!(e.startsWith("https://")||e.startsWith("http://")))return!1;try{new URL(e)}catch(e){return!1}return!0},k=e=>!!e&&!e.includes("*"),T=e=>{if(!e)return!1;try{let i=new URL(e);return"/"===i.pathname&&!e.endsWith("/")}catch(e){return!1}},q=a.Ry().shape({cors_origins:a.IX().nullable().of(a.Z_().required().trim().test("is-valid-url",e=>{let{label:i}=e;return"".concat(i," must be a valid URL (e.g. https://example.com)")},e=>w(e)).test("has-no-wildcard",e=>{let{label:i}=e;return"".concat(i," cannot contain a wildcard (e.g. https://*.example.com)")},e=>k(e)).test("has-no-path",e=>{let{label:i}=e;return"".concat(i," cannot contain a path (e.g. https://example.com/path)")},e=>T(e)).label("Domain"))}),M=async(e,i)=>{let n=e.cors_origins&&e.cors_origins.length>0?e.cors_origins:void 0,t={...j,security:{cors_origins:n}};(n=>{if(_.closeAll(),(0,g.D4)(n)){let e=(0,g.e$)(n.error,"An unexpected error occurred while saving domains. Please try again.");_((0,p.Vo)(e))}else _((0,p.t5)("Domains saved successfully")),i.resetForm({values:e})})(await b(t))};return(0,t.jsx)(u.Z,{title:"Domains",children:(0,t.jsxs)(s.xuv,{"data-testid":"management-domains",children:[(0,t.jsx)(m.Z,{heading:"Domains"}),(0,t.jsxs)(s.xuv,{maxW:"600px",children:[(0,t.jsxs)(s.xvT,{fontSize:"sm",pb:6,children:["For Fides to work on your website(s), each of your domains must be listed below. You can add and remove domains at any time up to the quantity included in your license. For more information on managing domains"," ",(0,t.jsx)(c.Z,{href:"https://fid.es/domain-configuration",children:"read here"}),"."]}),(0,t.jsx)(d.Z,{"data-testid":"api-set-domains-form",title:"Organization domains",tooltip:"Fides uses these domains to enforce cross-origin resource sharing (CORS), a browser-based security standard. Each domain must be a valid URL (e.g. https://example.com) without any wildcards '*' or paths '/blog'",children:i||C?(0,t.jsx)(s.kCb,{justifyContent:"center",children:(0,t.jsx)(s.$jN,{})}):(0,t.jsx)(r.J9,{initialValues:f,enableReinitialize:!0,onSubmit:M,validationSchema:q,validateOnChange:!0,children:e=>{let{dirty:i,values:n,isValid:a}=e;return(0,t.jsxs)(r.l0,{children:[(0,t.jsx)(r.F2,{name:"cors_origins",render:e=>(0,t.jsxs)(s.kCb,{flexDir:"column",children:[n.cors_origins.map((i,n)=>(0,t.jsxs)(s.kCb,{flexDir:"row",my:3,children:[(0,t.jsx)(l.j0,{variant:"stacked",name:"cors_origins[".concat(n,"]"),placeholder:"https://subdomain.example.com:9090"}),(0,t.jsx)(s.wpx,{"aria-label":"delete-domain",className:"z-[2] ml-4",icon:(0,t.jsx)(s.pJl,{}),onClick:()=>{e.remove(n)}})]},n)),(0,t.jsx)(s.kCb,{justifyContent:"center",mt:3,children:(0,t.jsx)(s.wpx,{"aria-label":"add-domain",className:"w-full",onClick:()=>{e.push("")},children:"Add domain"})})]})}),(0,t.jsx)(s.xuv,{mt:6,children:(0,t.jsx)(s.wpx,{htmlType:"submit",type:"primary",disabled:C||!i||!a,loading:C,"data-testid":"save-btn",children:"Save"})})]})}})})]}),(0,t.jsx)(s.xuv,{maxW:"600px",marginY:3,children:(0,t.jsx)(d.Z,{"data-testid":"config-set-domains-form",title:"Advanced settings",tooltip:"These domains are configured by an administrator with access to Fides security settings and can support more advanced options such as wildcards and regex.",children:n?(0,t.jsx)(s.kCb,{justifyContent:"center",children:(0,t.jsx)(s.$jN,{})}):(0,t.jsxs)(s.kCb,{flexDir:"column",children:[y.cors_origins.map((e,i)=>(0,t.jsx)(l.oi,{"data-testid":"input-config_cors_origins[".concat(i,"]"),marginY:3,value:e,isDisabled:!0,isPassword:!1},i)),y.cors_origin_regex?(0,t.jsx)(l.oi,{"data-testid":"input-config_cors_origin_regex",marginY:3,value:y.cors_origin_regex,isDisabled:!0,isPassword:!1},"cors_origin_regex"):void 0,v?void 0:(0,t.jsx)(s.xvT,{fontSize:"xs",color:"gray.500",children:"No advanced domain settings configured."})]})})})]})})}}},function(e){e.O(0,[2888,9774,179],function(){return e(e.s=98648)}),_N_E=e.O()}]);
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4966],{18193:function(e,t,i){(window.__NEXT_P=window.__NEXT_P||[]).push(["/settings/email-templates",function(){return i(43104)}])},77213:function(e,t,i){"use strict";i.d(t,{Z:function(){return m}});var n=i(24246),s=i(96306),a=i(88038),r=i.n(a),o=i(86677);i(27378);var l=i(25980),g=i(90867),u=i(42478),d=i(77830),c=()=>{let e=(0,o.useRouter)();return(0,n.jsx)(s.xuv,{bg:"gray.50",border:"1px solid",borderColor:"blue.400",borderRadius:"md",justifyContent:"space-between",p:5,mb:5,mt:5,children:(0,n.jsxs)(s.xuv,{children:[(0,n.jsxs)(s.Kqy,{direction:{base:"column",sm:"row"},justifyContent:"space-between",children:[(0,n.jsx)(s.xvT,{fontWeight:"semibold",children:"Configure your storage and messaging provider"}),(0,n.jsx)(s.wpx,{onClick:()=>{e.push(d.AD)},children:"Configure"})]}),(0,n.jsxs)(s.xvT,{children:["Before Fides can process your privacy requests we need two simple steps to configure your storage and email client."," "]})]})})},m=e=>{let{children:t,title:i,padded:a=!0,mainProps:d}=e,m=(0,l.hz)(),p=(0,o.useRouter)(),f="/privacy-requests"===p.pathname||"/datastore-connection"===p.pathname,h=!(m.flags.messagingConfiguration&&f),{data:y}=(0,u.JE)(void 0,{skip:h}),{data:x}=(0,g.PW)(void 0,{skip:h}),j=m.flags.messagingConfiguration&&(!y||!x)&&f;return(0,n.jsxs)(s.kCb,{"data-testid":i,direction:"column",h:"100vh",children:[(0,n.jsxs)(r(),{children:[(0,n.jsxs)("title",{children:["Fides Admin UI - ",i]}),(0,n.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,n.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,n.jsxs)(s.kCb,{as:"main",direction:"column",py:a?6:0,px:a?10:0,h:a?"calc(100% - 48px)":"full",flex:1,minWidth:0,overflow:"auto",...d,children:[j?(0,n.jsx)(c,{}):null,t]})]})}},58754:function(e,t,i){"use strict";var n=i(24246),s=i(96306),a=i(70788);t.Z=e=>{let{heading:t,breadcrumbItems:i,isSticky:r=!0,children:o,rightContent:l,style:g,...u}=e;return(0,n.jsxs)("div",{...u,style:r?{position:"sticky",top:"-24px",paddingTop:"24px",paddingBottom:"24px",paddingLeft:"40px",marginLeft:"-40px",paddingRight:"40px",marginRight:"-40px",marginTop:"-24px",left:0,zIndex:20,backgroundColor:"white",...g}:{paddingBottom:"24px",...g},children:[(0,n.jsxs)(s.jqI,{justify:"space-between",children:["string"==typeof t?(0,n.jsx)(s.lQT,{className:i||o?"pb-4":void 0,level:1,"data-testid":"page-heading",children:t}):t,l&&(0,n.jsx)("div",{"data-testid":"page-header-right-content",children:l})]}),!!i&&(0,n.jsx)(a.m,{className:o?"pb-4":void 0,items:i,"data-testid":"page-breadcrumb"}),o]})}},10342:function(e,t,i){"use strict";var n=i(24246),s=i(96306),a=i(46238);t.Z=e=>{let{title:t,tooltip:i,children:r,...o}=e;return(0,n.jsxs)(s.xuv,{borderRadius:"md",border:"1px solid",borderColor:"gray.200",...o,children:[(0,n.jsxs)(s.X6q,{as:"h3",fontSize:"sm",fontWeight:"semibold",color:"gray.700",py:4,px:6,backgroundColor:"gray.50",borderRadius:"md",textAlign:"left",children:[t,i?(0,n.jsx)(s.xvT,{as:"span",mx:1,children:(0,n.jsx)(a.b,{label:i})}):void 0]}),(0,n.jsx)(s.Kqy,{p:6,spacing:6,children:r})]})}},70788:function(e,t,i){"use strict";i.d(t,{m:function(){return g}});var n=i(24246),s=i(96306),a=i(79894),r=i.n(a),o=i(27378);let{Text:l}=s.AntTypography,g=e=>{let{items:t,...i}=e,a=(0,o.useMemo)(()=>null==t?void 0:t.map((e,i)=>{let a=i===t.length-1,o={...e},g=o.onClick&&!o.href;return("string"==typeof o.title&&(o.title=(0,n.jsx)(l,{style:{color:"inherit",maxWidth:a?void 0:400},ellipsis:!a,id:a?"breadcrumb-current-page":void 0,children:o.title})),g)?o.title=(0,n.jsx)(s.wpx,{type:"text",size:"small",icon:o.icon,onClick:o.onClick,className:"ant-breadcrumb-link -mt-px px-1 text-inherit",children:o.title}):(o.icon&&(o.title=(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"anticon align-text-bottom",children:o.icon}),o.title]})),o.href&&o.title&&(o.title=(0,n.jsx)(r(),{href:o.href,className:"ant-breadcrumb-link",children:o.title}),delete o.href)),o}),[t]);return(0,n.jsx)(s.zrq,{items:a,...i})}},47466:function(e,t,i){"use strict";i.d(t,{KC:function(){return r},ew:function(){return o},gQ:function(){return a},jM:function(){return n},lE:function(){return s}});let{useGetMessagingTemplatesQuery:n,useUpdateMessagingTemplatesMutation:s,useGetMessagingTemplateByIdQuery:a,useGetMessagingTemplateDefaultQuery:r,useDeleteMessagingTemplateByIdMutation:o}=i(78780).u.injectEndpoints({endpoints:e=>({getMessagingTemplates:e.query({query:()=>({url:"messaging/templates"}),providesTags:()=>["Messaging Templates"]}),updateMessagingTemplates:e.mutation({query:e=>({url:"messaging/templates",method:"PUT",body:e}),invalidatesTags:()=>["Messaging Templates"]}),getMessagingTemplateById:e.query({query:e=>({url:"/messaging/templates/".concat(e)}),providesTags:()=>["Property-Specific Messaging Templates"]}),getMessagingTemplateDefault:e.query({query:e=>({url:"/messaging/templates/default/".concat(e)})}),deleteMessagingTemplateById:e.mutation({query:e=>({url:"/messaging/templates/".concat(e),method:"DELETE"}),invalidatesTags:()=>["Property-Specific Messaging Templates"]})})})},42478:function(e,t,i){"use strict";i.d(t,{FU:function(){return g},JE:function(){return s},Ki:function(){return d},SU:function(){return c},W:function(){return m},h9:function(){return a},jc:function(){return n},qt:function(){return l},sn:function(){return u}});let{useGetEmailInviteStatusQuery:n,useGetActiveMessagingProviderQuery:s,useCreateMessagingConfigurationMutation:a,useCreateMessagingConfigurationSecretsMutation:r,useGetMessagingConfigurationDetailsQuery:o,useGetMessagingConfigurationsQuery:l,useGetMessagingConfigurationByKeyQuery:g,useUpdateMessagingConfigurationByKeyMutation:u,useUpdateMessagingConfigurationSecretsByKeyMutation:d,useCreateTestConnectionMessageMutation:c,useDeleteMessagingConfigurationByKeyMutation:m}=i(78780).u.injectEndpoints({endpoints:e=>({getEmailInviteStatus:e.query({query:()=>({url:"/messaging/email-invite/status"}),providesTags:()=>["Email Invite Status"]}),createMessagingConfiguration:e.mutation({query:e=>({url:"messaging/config",method:"POST",body:e}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getActiveMessagingProvider:e.query({queryFn:async(e,t,i,n)=>{let s=await n({url:"messaging/default/active"});return s.error&&404===s.error.status?{data:null}:s},providesTags:["Messaging Config"]}),createMessagingConfigurationSecrets:e.mutation({query:e=>({url:"messaging/default/".concat(e.service_type,"/secret"),method:"PUT",body:e.details}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getMessagingConfigurationDetails:e.query({query:e=>({url:"messaging/default/".concat(e.type)}),providesTags:["Messaging Config"]}),getMessagingConfigurations:e.query({query:()=>({url:"messaging/config"}),providesTags:["Messaging Config"]}),getMessagingConfigurationByKey:e.query({query:e=>({url:"messaging/config/".concat(e.key)}),providesTags:["Messaging Config"]}),createTestConnectionMessage:e.mutation({query:e=>({url:"messaging/test/".concat(e.service_type),method:"POST",body:e.details}),invalidatesTags:["Messaging Config"]}),updateMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"PATCH",body:e.config}),invalidatesTags:["Messaging Config","Configuration Settings"]}),updateMessagingConfigurationSecretsByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key,"/secret"),method:"PUT",body:e.secrets}),invalidatesTags:["Messaging Config","Configuration Settings"]}),deleteMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"DELETE"}),invalidatesTags:["Messaging Config","Configuration Settings"]})})})},43104:function(e,t,i){"use strict";i.r(t),i.d(t,{default:function(){return p}});var n=i(24246),s=i(96306),a=i(77213),r=i(58754),o=i(34090),l=i(10342),g=i(40324),u=i(812),d=i(46628),c=i(47466),m=e=>{let{emailTemplates:t}=e,[i,{isLoading:a}]=(0,c.lE)(),r=(0,s.pmc)(),m=async(e,t)=>{let n=Object.entries(e).map(e=>{let[t,{content:i}]=e;return{type:t,content:i}});(i=>{if((0,u.D4)(i)){let e=(0,u.e$)(i.error,"An unexpected error occurred while editing the email templates. Please try again.");r((0,d.Vo)(e))}else r((0,d.t5)("Email templates saved.")),t.resetForm({values:e})})(await i(n))},p=t.reduce((e,t)=>({...e,[t.type]:{label:t.label,content:t.content}}),{});return(0,n.jsx)(o.J9,{enableReinitialize:!0,initialValues:p,onSubmit:m,children:()=>(0,n.jsxs)(o.l0,{style:{paddingTop:"12px",paddingBottom:"12px"},children:[Object.entries(p).map(e=>{let[t,i]=e;return(0,n.jsx)(s.xuv,{py:3,children:(0,n.jsxs)(l.Z,{title:i.label,children:[(0,n.jsx)(g.j0,{label:"Message subject",name:"".concat(t,".content.subject"),variant:"stacked"}),(0,n.jsx)(g.Ks,{label:"Message body",name:"".concat(t,".content.body"),variant:"stacked",resize:!0})]})},t)}),(0,n.jsx)(s.kCb,{justifyContent:"right",width:"100%",paddingTop:2,children:(0,n.jsx)(s.wpx,{htmlType:"submit",type:"primary",loading:a,children:"Save"})})]})})},p=()=>{let{data:e,isLoading:t}=(0,c.jM)();return t?(0,n.jsx)(a.Z,{title:"Email templates",children:(0,n.jsx)(s.$jN,{})}):(0,n.jsx)(a.Z,{title:"Email templates",children:(0,n.jsxs)(s.xuv,{"data-testid":"email-templates",children:[(0,n.jsx)(r.Z,{heading:"Email Templates"}),(0,n.jsxs)(s.xuv,{maxWidth:"720px",children:[(0,n.jsx)(s.xvT,{fontSize:"sm",children:"When privacy requests are submitted, Fides emails the data subject to confirm their identity and keep them updated on the status of the request. The templates below allow you to configure the subject and body of the email to suit your business needs. To change the appearance of the email, you may use the editors within your messaging provider (e.g. Mailgun, SendGrid, Twilio)."}),(0,n.jsx)(s.xuv,{padding:2,children:(0,n.jsx)(m,{emailTemplates:e})})]})]})})}}},function(e){e.O(0,[2888,9774,179],function(){return e(e.s=18193)}),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4966],{18193:function(e,t,i){(window.__NEXT_P=window.__NEXT_P||[]).push(["/settings/email-templates",function(){return i(43104)}])},77213:function(e,t,i){"use strict";i.d(t,{Z:function(){return m}});var n=i(24246),s=i(20595),a=i(88038),r=i.n(a),o=i(86677);i(27378);var l=i(25980),g=i(90867),u=i(42478),d=i(77830),c=()=>{let e=(0,o.useRouter)();return(0,n.jsx)(s.xuv,{bg:"gray.50",border:"1px solid",borderColor:"blue.400",borderRadius:"md",justifyContent:"space-between",p:5,mb:5,mt:5,children:(0,n.jsxs)(s.xuv,{children:[(0,n.jsxs)(s.Kqy,{direction:{base:"column",sm:"row"},justifyContent:"space-between",children:[(0,n.jsx)(s.xvT,{fontWeight:"semibold",children:"Configure your storage and messaging provider"}),(0,n.jsx)(s.wpx,{onClick:()=>{e.push(d.AD)},children:"Configure"})]}),(0,n.jsxs)(s.xvT,{children:["Before Fides can process your privacy requests we need two simple steps to configure your storage and email client."," "]})]})})},m=e=>{let{children:t,title:i,padded:a=!0,mainProps:d}=e,m=(0,l.hz)(),p=(0,o.useRouter)(),f="/privacy-requests"===p.pathname||"/datastore-connection"===p.pathname,h=!(m.flags.messagingConfiguration&&f),{data:y}=(0,u.JE)(void 0,{skip:h}),{data:x}=(0,g.PW)(void 0,{skip:h}),j=m.flags.messagingConfiguration&&(!y||!x)&&f;return(0,n.jsxs)(s.kCb,{"data-testid":i,direction:"column",h:"100vh",children:[(0,n.jsxs)(r(),{children:[(0,n.jsxs)("title",{children:["Fides Admin UI - ",i]}),(0,n.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,n.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,n.jsxs)(s.kCb,{as:"main",direction:"column",py:a?6:0,px:a?10:0,h:a?"calc(100% - 48px)":"full",flex:1,minWidth:0,overflow:"auto",...d,children:[j?(0,n.jsx)(c,{}):null,t]})]})}},58754:function(e,t,i){"use strict";var n=i(24246),s=i(20595),a=i(70788);t.Z=e=>{let{heading:t,breadcrumbItems:i,isSticky:r=!0,children:o,rightContent:l,style:g,...u}=e;return(0,n.jsxs)("div",{...u,style:r?{position:"sticky",top:"-24px",paddingTop:"24px",paddingBottom:"24px",paddingLeft:"40px",marginLeft:"-40px",paddingRight:"40px",marginRight:"-40px",marginTop:"-24px",left:0,zIndex:20,backgroundColor:"white",...g}:{paddingBottom:"24px",...g},children:[(0,n.jsxs)(s.jqI,{justify:"space-between",children:["string"==typeof t?(0,n.jsx)(s.lQT,{className:i||o?"pb-4":void 0,level:1,"data-testid":"page-heading",children:t}):t,l&&(0,n.jsx)("div",{"data-testid":"page-header-right-content",children:l})]}),!!i&&(0,n.jsx)(a.m,{className:o?"pb-4":void 0,items:i,"data-testid":"page-breadcrumb"}),o]})}},10342:function(e,t,i){"use strict";var n=i(24246),s=i(20595),a=i(46238);t.Z=e=>{let{title:t,tooltip:i,children:r,...o}=e;return(0,n.jsxs)(s.xuv,{borderRadius:"md",border:"1px solid",borderColor:"gray.200",...o,children:[(0,n.jsxs)(s.X6q,{as:"h3",fontSize:"sm",fontWeight:"semibold",color:"gray.700",py:4,px:6,backgroundColor:"gray.50",borderRadius:"md",textAlign:"left",children:[t,i?(0,n.jsx)(s.xvT,{as:"span",mx:1,children:(0,n.jsx)(a.b,{label:i})}):void 0]}),(0,n.jsx)(s.Kqy,{p:6,spacing:6,children:r})]})}},70788:function(e,t,i){"use strict";i.d(t,{m:function(){return g}});var n=i(24246),s=i(20595),a=i(79894),r=i.n(a),o=i(27378);let{Text:l}=s.AntTypography,g=e=>{let{items:t,...i}=e,a=(0,o.useMemo)(()=>null==t?void 0:t.map((e,i)=>{let a=i===t.length-1,o={...e},g=o.onClick&&!o.href;return("string"==typeof o.title&&(o.title=(0,n.jsx)(l,{style:{color:"inherit",maxWidth:a?void 0:400},ellipsis:!a,id:a?"breadcrumb-current-page":void 0,children:o.title})),g)?o.title=(0,n.jsx)(s.wpx,{type:"text",size:"small",icon:o.icon,onClick:o.onClick,className:"ant-breadcrumb-link -mt-px px-1 text-inherit",children:o.title}):(o.icon&&(o.title=(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"anticon align-text-bottom",children:o.icon}),o.title]})),o.href&&o.title&&(o.title=(0,n.jsx)(r(),{href:o.href,className:"ant-breadcrumb-link",children:o.title}),delete o.href)),o}),[t]);return(0,n.jsx)(s.zrq,{items:a,...i})}},47466:function(e,t,i){"use strict";i.d(t,{KC:function(){return r},ew:function(){return o},gQ:function(){return a},jM:function(){return n},lE:function(){return s}});let{useGetMessagingTemplatesQuery:n,useUpdateMessagingTemplatesMutation:s,useGetMessagingTemplateByIdQuery:a,useGetMessagingTemplateDefaultQuery:r,useDeleteMessagingTemplateByIdMutation:o}=i(78780).u.injectEndpoints({endpoints:e=>({getMessagingTemplates:e.query({query:()=>({url:"messaging/templates"}),providesTags:()=>["Messaging Templates"]}),updateMessagingTemplates:e.mutation({query:e=>({url:"messaging/templates",method:"PUT",body:e}),invalidatesTags:()=>["Messaging Templates"]}),getMessagingTemplateById:e.query({query:e=>({url:"/messaging/templates/".concat(e)}),providesTags:()=>["Property-Specific Messaging Templates"]}),getMessagingTemplateDefault:e.query({query:e=>({url:"/messaging/templates/default/".concat(e)})}),deleteMessagingTemplateById:e.mutation({query:e=>({url:"/messaging/templates/".concat(e),method:"DELETE"}),invalidatesTags:()=>["Property-Specific Messaging Templates"]})})})},42478:function(e,t,i){"use strict";i.d(t,{FU:function(){return g},JE:function(){return s},Ki:function(){return d},SU:function(){return c},W:function(){return m},h9:function(){return a},jc:function(){return n},qt:function(){return l},sn:function(){return u}});let{useGetEmailInviteStatusQuery:n,useGetActiveMessagingProviderQuery:s,useCreateMessagingConfigurationMutation:a,useCreateMessagingConfigurationSecretsMutation:r,useGetMessagingConfigurationDetailsQuery:o,useGetMessagingConfigurationsQuery:l,useGetMessagingConfigurationByKeyQuery:g,useUpdateMessagingConfigurationByKeyMutation:u,useUpdateMessagingConfigurationSecretsByKeyMutation:d,useCreateTestConnectionMessageMutation:c,useDeleteMessagingConfigurationByKeyMutation:m}=i(78780).u.injectEndpoints({endpoints:e=>({getEmailInviteStatus:e.query({query:()=>({url:"/messaging/email-invite/status"}),providesTags:()=>["Email Invite Status"]}),createMessagingConfiguration:e.mutation({query:e=>({url:"messaging/config",method:"POST",body:e}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getActiveMessagingProvider:e.query({queryFn:async(e,t,i,n)=>{let s=await n({url:"messaging/default/active"});return s.error&&404===s.error.status?{data:null}:s},providesTags:["Messaging Config"]}),createMessagingConfigurationSecrets:e.mutation({query:e=>({url:"messaging/default/".concat(e.service_type,"/secret"),method:"PUT",body:e.details}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getMessagingConfigurationDetails:e.query({query:e=>({url:"messaging/default/".concat(e.type)}),providesTags:["Messaging Config"]}),getMessagingConfigurations:e.query({query:()=>({url:"messaging/config"}),providesTags:["Messaging Config"]}),getMessagingConfigurationByKey:e.query({query:e=>({url:"messaging/config/".concat(e.key)}),providesTags:["Messaging Config"]}),createTestConnectionMessage:e.mutation({query:e=>({url:"messaging/test/".concat(e.service_type),method:"POST",body:e.details}),invalidatesTags:["Messaging Config"]}),updateMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"PATCH",body:e.config}),invalidatesTags:["Messaging Config","Configuration Settings"]}),updateMessagingConfigurationSecretsByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key,"/secret"),method:"PUT",body:e.secrets}),invalidatesTags:["Messaging Config","Configuration Settings"]}),deleteMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"DELETE"}),invalidatesTags:["Messaging Config","Configuration Settings"]})})})},43104:function(e,t,i){"use strict";i.r(t),i.d(t,{default:function(){return p}});var n=i(24246),s=i(20595),a=i(77213),r=i(58754),o=i(34090),l=i(10342),g=i(40324),u=i(812),d=i(46628),c=i(47466),m=e=>{let{emailTemplates:t}=e,[i,{isLoading:a}]=(0,c.lE)(),r=(0,s.pmc)(),m=async(e,t)=>{let n=Object.entries(e).map(e=>{let[t,{content:i}]=e;return{type:t,content:i}});(i=>{if((0,u.D4)(i)){let e=(0,u.e$)(i.error,"An unexpected error occurred while editing the email templates. Please try again.");r((0,d.Vo)(e))}else r((0,d.t5)("Email templates saved.")),t.resetForm({values:e})})(await i(n))},p=t.reduce((e,t)=>({...e,[t.type]:{label:t.label,content:t.content}}),{});return(0,n.jsx)(o.J9,{enableReinitialize:!0,initialValues:p,onSubmit:m,children:()=>(0,n.jsxs)(o.l0,{style:{paddingTop:"12px",paddingBottom:"12px"},children:[Object.entries(p).map(e=>{let[t,i]=e;return(0,n.jsx)(s.xuv,{py:3,children:(0,n.jsxs)(l.Z,{title:i.label,children:[(0,n.jsx)(g.j0,{label:"Message subject",name:"".concat(t,".content.subject"),variant:"stacked"}),(0,n.jsx)(g.Ks,{label:"Message body",name:"".concat(t,".content.body"),variant:"stacked",resize:!0})]})},t)}),(0,n.jsx)(s.kCb,{justifyContent:"right",width:"100%",paddingTop:2,children:(0,n.jsx)(s.wpx,{htmlType:"submit",type:"primary",loading:a,children:"Save"})})]})})},p=()=>{let{data:e,isLoading:t}=(0,c.jM)();return t?(0,n.jsx)(a.Z,{title:"Email templates",children:(0,n.jsx)(s.$jN,{})}):(0,n.jsx)(a.Z,{title:"Email templates",children:(0,n.jsxs)(s.xuv,{"data-testid":"email-templates",children:[(0,n.jsx)(r.Z,{heading:"Email Templates"}),(0,n.jsxs)(s.xuv,{maxWidth:"720px",children:[(0,n.jsx)(s.xvT,{fontSize:"sm",children:"When privacy requests are submitted, Fides emails the data subject to confirm their identity and keep them updated on the status of the request. The templates below allow you to configure the subject and body of the email to suit your business needs. To change the appearance of the email, you may use the editors within your messaging provider (e.g. Mailgun, SendGrid, Twilio)."}),(0,n.jsx)(s.xuv,{padding:2,children:(0,n.jsx)(m,{emailTemplates:e})})]})]})})}}},function(e){e.O(0,[2888,9774,179],function(){return e(e.s=18193)}),_N_E=e.O()}]);
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2462],{40135:function(e,t,n){(window.__NEXT_P=window.__NEXT_P||[]).push(["/settings/locations",function(){return n(36956)}])},36956:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return Z}});var i=n(24246),l=n(96306),s=n(16134),o=n(77213),a=n(58754),r=n(98784),d=n.n(r),c=n(86677),u=n(27378),h=n(812),g=n(58452),m=n(26917),x=n(46628),p=n(21910),j=n(31883),f=n(77830),v=n(26089),C=n(61524),y=n(46238),w=e=>{let{id:t,isChecked:n,onChange:s}=e;return(0,i.jsxs)(l.kCb,{alignItems:"center",gap:"8px",children:[(0,i.jsx)(l.rAg,{checked:n,size:"small",onChange:s,id:t,"data-testid":"regulated-toggle"}),(0,i.jsx)(l.lXp,{fontSize:"sm",m:0,htmlFor:t,children:"Regulated"}),(0,i.jsx)(y.b,{label:"Toggle on to see only locations in this region with privacy regulations supported by Fides"})]})},b=n(67991),k=n(12282),S=n(85759),_=e=>{let{groups:t,locations:n,isOpen:s,onClose:o,selected:a,onChange:r}=e,[d,c]=(0,u.useState)(a),[h,g]=(0,u.useState)(!1),{filteredLocations:m,locationsByGroup:x}=(0,u.useMemo)(()=>{let e=h?n.filter(e=>{var t;return null===(t=e.regulation)||void 0===t?void 0:t.length}):n;return{locationsByGroup:(0,S.VT)(e),filteredLocations:e}},[n,h]),{allSelected:p,handleToggleAll:j,handleToggleSelection:f}=(0,b.QZ)({items:m,selected:d,onChange:c}),v=d.filter(e=>!Object.keys(x).includes(e)).length,C=n[0].continent,y=Object.keys(x),_=!(1===y.length&&"Other"===y[0]);return(0,i.jsxs)(l.u_l,{size:"2xl",isOpen:s,onClose:o,isCentered:!0,children:[(0,i.jsx)(l.ZAr,{}),(0,i.jsxs)(l.hzk,{"data-testid":"subgroup-modal",children:[(0,i.jsx)(k.h4,{title:"Select locations"}),(0,i.jsxs)(l.fef,{p:6,maxHeight:"70vh",overflowY:"auto",children:[(0,i.jsx)(k.x$,{title:C,allSelected:p,onToggleAll:j,numSelected:v,children:(0,i.jsx)(w,{id:"".concat(C,"-modal-regulated"),isChecked:h,onChange:()=>g(!h)})}),_?(0,i.jsx)(l.UQy,{allowToggle:!0,allowMultiple:!0,children:Object.entries(x).map(e=>{let[n,s]=e,o=t.find(e=>n===e.id),a=o?o.name:n;return(0,i.jsxs)(l.Qdk,{"data-testid":"".concat(a,"-accordion"),children:[(0,i.jsx)("h2",{children:(0,i.jsxs)(l.KFZ,{children:[(0,i.jsx)(l.xuv,{as:"span",flex:"1",textAlign:"left",fontWeight:"semibold",fontSize:"sm",children:a}),(0,i.jsx)(l.XEm,{})]})}),(0,i.jsx)(l.Hk3,{pb:4,children:(0,i.jsx)(l.MIq,{columns:3,spacing:6,children:s.map(e=>(0,i.jsx)(l.XZJ,{size:"sm",colorScheme:"complimentary",isChecked:d.includes(e.id),onChange:()=>f(e.id),"data-testid":"".concat(e.name,"-checkbox"),children:e.name},e.id))})})]},n)})}):(0,i.jsx)(l.MIq,{columns:3,spacing:6,paddingInline:4,children:m.map(e=>(0,i.jsx)(l.XZJ,{size:"sm",colorScheme:"complimentary",isChecked:d.includes(e.id),onChange:()=>f(e.id),"data-testid":"".concat(e.name,"-checkbox"),children:e.name},e.id))})]}),(0,i.jsx)(k.$_,{onApply:()=>{let e=new Set(d);Object.entries(x).forEach(t=>{let[n,i]=t;i.every(e=>d.includes(e.id))?e.add(n):e.delete(n)}),r(Array.from(e)),o()},onClose:o})]})]})};let O=(e,t)=>{var n;return null===(n=e.name)||void 0===n?void 0:n.toLocaleLowerCase().includes(t.toLocaleLowerCase())};var E=e=>{let{title:t,groups:n,locations:s,selected:o,onChange:a,search:r}=e,d=(0,l.qY0)(),[c,h]=(0,u.useState)(!1),g=!!(null==r?void 0:r.length),m=n.length>0,x=s;n.length&&(x=n),g&&(x=[...s,...n].sort((e,t)=>e.name.localeCompare(t.name)));let p=c?x.filter(e=>(0,S.$q)(e,s)):x,j=r?p.filter(e=>O(e,r)):p,f=n.filter(e=>"checked"===(0,S.ji)({group:e,selected:o,locations:s})).map(e=>e.id),v=n.filter(e=>"indeterminate"===(0,S.ji)({group:e,selected:o,locations:s})).map(e=>e.id),y=m?[...f,...o]:o,b=o.length,k=e=>{a(s.map(t=>e.includes(t.id)?{...t,selected:!0}:{...t,selected:!1}))};return 0===j.length&&r?null:(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(C.ZP,{title:t,items:j,selected:y,indeterminate:m?v:[],onChange:e=>{let t=new Set(e),i=new Set(y);e.forEach(e=>{!i.has(e)&&n.find(t=>t.id===e)&&s.filter(t=>{var n;return null===(n=t.belongs_to)||void 0===n?void 0:n.includes(e)}).forEach(e=>{t.add(e.id)})}),i.forEach(e=>{!t.has(e)&&n.find(t=>t.id===e)&&s.filter(t=>{var n;return null===(n=t.belongs_to)||void 0===n?void 0:n.includes(e)}).forEach(e=>{t.delete(e.id)})}),k(Array.from(t))},onViewMore:()=>{d.onOpen()},numSelected:b,toggle:(0,i.jsx)(w,{id:"".concat(t,"-regulated"),isChecked:c,onChange:()=>h(!c)})}),(0,i.jsx)(_,{groups:n,locations:s,isOpen:d.isOpen,onClose:d.onClose,selected:o,onChange:k},"subgroup-modal-selected-".concat(y.length))]})},L=n(64781),A=e=>{var t,n;let{data:s}=e,o=(0,l.pmc)(),a=(0,l.qY0)(),[r,C]=(0,u.useState)(null!==(n=null===(t=s.locations)||void 0===t?void 0:t.filter(e=>e.id!==p._F.GLOBAL))&&void 0!==n?n:[]),[y,w]=(0,u.useState)(""),[b,{isLoading:k}]=(0,L.WA)(),_=(0,u.useMemo)(()=>(0,S.Il)((s.locations||[]).filter(e=>e.id!==p._F.GLOBAL),s.location_groups||[]),[s]),O=!d().isEqual(r,s.locations),A=(0,c.useRouter)(),Z=()=>{A.push(f.vY).then(()=>{o.closeAll()})},F=async()=>{let e=await b({locations:r.map(e=>({id:e.id,selected:e.selected})),regulations:[]});(0,j.D4)(e)?o((0,x.Vo)((0,h.e$)(e.error))):o((0,x.t5)((0,i.jsxs)(l.xvT,{display:"inline",children:["Fides has automatically associated the relevant regulations with your location choices."," ",(0,i.jsx)(v.Z,{onClick:Z,children:"View regulations here."})]})))},M=e=>{C(r.map(t=>{let n=e.find(e=>e.id===t.id);return null!=n?n:t}))};return(0,i.jsxs)(l.gCW,{alignItems:"start",spacing:4,children:[(0,i.jsx)(l.xuv,{maxWidth:"510px",width:"100%",children:(0,i.jsx)(m.Z,{onChange:w,placeholder:"Search",value:y,onClear:()=>w("")})}),(0,i.jsx)(l.MIq,{columns:{base:1,md:2,xl:3},spacing:6,width:"100%",children:Object.entries(_).map(e=>{let[t,n]=e;return(0,i.jsx)(E,{title:t,groups:n.locationGroups,locations:n.locations,selected:r.filter(e=>n.locations.find(t=>t.id===e.id)&&e.selected).map(e=>e.id),onChange:M,search:y},t)})}),(0,i.jsx)(g.Z,{isOpen:a.isOpen,onClose:a.onClose,onConfirm:()=>{F(),a.onClose()},title:"Regulation updates",message:"Modifications in your location settings may also affect your regulation settings to simplify management. You can override any Fides-initiated changes directly in the regulation settings.",isCentered:!0,icon:(0,i.jsx)(l.aNP,{color:"orange"})}),O?(0,i.jsx)(l.wpx,{type:"primary",onClick:a.onOpen,loading:k,"data-testid":"save-btn",children:"Save"}):null]})},Z=()=>{let{isLoading:e}=(0,L.QM)(),t=(0,s.C)(L.P8);return(0,i.jsx)(o.Z,{title:"Locations",children:(0,i.jsxs)(l.xuv,{"data-testid":"location-management",children:[(0,i.jsx)(a.Z,{heading:"Locations"}),(0,i.jsx)(l.xvT,{fontSize:"sm",maxWidth:"720px",pb:6,children:"Select the locations that you operate in and Fides will make sure that you are automatically presented with the relevant regulatory guidelines and global frameworks for your locations."}),(0,i.jsx)(l.xuv,{children:e?(0,i.jsx)(l.$jN,{}):(0,i.jsx)(A,{data:t})})]})})}}},function(e){e.O(0,[9826,2888,9774,179],function(){return e(e.s=40135)}),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2462],{40135:function(e,t,n){(window.__NEXT_P=window.__NEXT_P||[]).push(["/settings/locations",function(){return n(36956)}])},36956:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return Z}});var i=n(24246),l=n(20595),s=n(16134),o=n(77213),a=n(58754),r=n(98784),d=n.n(r),c=n(86677),u=n(27378),h=n(812),g=n(58452),m=n(26917),x=n(46628),p=n(85054),j=n(31883),f=n(77830),v=n(26089),C=n(61524),y=n(46238),w=e=>{let{id:t,isChecked:n,onChange:s}=e;return(0,i.jsxs)(l.kCb,{alignItems:"center",gap:"8px",children:[(0,i.jsx)(l.rAg,{checked:n,size:"small",onChange:s,id:t,"data-testid":"regulated-toggle"}),(0,i.jsx)(l.lXp,{fontSize:"sm",m:0,htmlFor:t,children:"Regulated"}),(0,i.jsx)(y.b,{label:"Toggle on to see only locations in this region with privacy regulations supported by Fides"})]})},b=n(67991),k=n(12282),S=n(85759),_=e=>{let{groups:t,locations:n,isOpen:s,onClose:o,selected:a,onChange:r}=e,[d,c]=(0,u.useState)(a),[h,g]=(0,u.useState)(!1),{filteredLocations:m,locationsByGroup:x}=(0,u.useMemo)(()=>{let e=h?n.filter(e=>{var t;return null===(t=e.regulation)||void 0===t?void 0:t.length}):n;return{locationsByGroup:(0,S.VT)(e),filteredLocations:e}},[n,h]),{allSelected:p,handleToggleAll:j,handleToggleSelection:f}=(0,b.QZ)({items:m,selected:d,onChange:c}),v=d.filter(e=>!Object.keys(x).includes(e)).length,C=n[0].continent,y=Object.keys(x),_=!(1===y.length&&"Other"===y[0]);return(0,i.jsxs)(l.u_l,{size:"2xl",isOpen:s,onClose:o,isCentered:!0,children:[(0,i.jsx)(l.ZAr,{}),(0,i.jsxs)(l.hzk,{"data-testid":"subgroup-modal",children:[(0,i.jsx)(k.h4,{title:"Select locations"}),(0,i.jsxs)(l.fef,{p:6,maxHeight:"70vh",overflowY:"auto",children:[(0,i.jsx)(k.x$,{title:C,allSelected:p,onToggleAll:j,numSelected:v,children:(0,i.jsx)(w,{id:"".concat(C,"-modal-regulated"),isChecked:h,onChange:()=>g(!h)})}),_?(0,i.jsx)(l.UQy,{allowToggle:!0,allowMultiple:!0,children:Object.entries(x).map(e=>{let[n,s]=e,o=t.find(e=>n===e.id),a=o?o.name:n;return(0,i.jsxs)(l.Qdk,{"data-testid":"".concat(a,"-accordion"),children:[(0,i.jsx)("h2",{children:(0,i.jsxs)(l.KFZ,{children:[(0,i.jsx)(l.xuv,{as:"span",flex:"1",textAlign:"left",fontWeight:"semibold",fontSize:"sm",children:a}),(0,i.jsx)(l.XEm,{})]})}),(0,i.jsx)(l.Hk3,{pb:4,children:(0,i.jsx)(l.MIq,{columns:3,spacing:6,children:s.map(e=>(0,i.jsx)(l.XZJ,{size:"sm",colorScheme:"complimentary",isChecked:d.includes(e.id),onChange:()=>f(e.id),"data-testid":"".concat(e.name,"-checkbox"),children:e.name},e.id))})})]},n)})}):(0,i.jsx)(l.MIq,{columns:3,spacing:6,paddingInline:4,children:m.map(e=>(0,i.jsx)(l.XZJ,{size:"sm",colorScheme:"complimentary",isChecked:d.includes(e.id),onChange:()=>f(e.id),"data-testid":"".concat(e.name,"-checkbox"),children:e.name},e.id))})]}),(0,i.jsx)(k.$_,{onApply:()=>{let e=new Set(d);Object.entries(x).forEach(t=>{let[n,i]=t;i.every(e=>d.includes(e.id))?e.add(n):e.delete(n)}),r(Array.from(e)),o()},onClose:o})]})]})};let O=(e,t)=>{var n;return null===(n=e.name)||void 0===n?void 0:n.toLocaleLowerCase().includes(t.toLocaleLowerCase())};var E=e=>{let{title:t,groups:n,locations:s,selected:o,onChange:a,search:r}=e,d=(0,l.qY0)(),[c,h]=(0,u.useState)(!1),g=!!(null==r?void 0:r.length),m=n.length>0,x=s;n.length&&(x=n),g&&(x=[...s,...n].sort((e,t)=>e.name.localeCompare(t.name)));let p=c?x.filter(e=>(0,S.$q)(e,s)):x,j=r?p.filter(e=>O(e,r)):p,f=n.filter(e=>"checked"===(0,S.ji)({group:e,selected:o,locations:s})).map(e=>e.id),v=n.filter(e=>"indeterminate"===(0,S.ji)({group:e,selected:o,locations:s})).map(e=>e.id),y=m?[...f,...o]:o,b=o.length,k=e=>{a(s.map(t=>e.includes(t.id)?{...t,selected:!0}:{...t,selected:!1}))};return 0===j.length&&r?null:(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(C.ZP,{title:t,items:j,selected:y,indeterminate:m?v:[],onChange:e=>{let t=new Set(e),i=new Set(y);e.forEach(e=>{!i.has(e)&&n.find(t=>t.id===e)&&s.filter(t=>{var n;return null===(n=t.belongs_to)||void 0===n?void 0:n.includes(e)}).forEach(e=>{t.add(e.id)})}),i.forEach(e=>{!t.has(e)&&n.find(t=>t.id===e)&&s.filter(t=>{var n;return null===(n=t.belongs_to)||void 0===n?void 0:n.includes(e)}).forEach(e=>{t.delete(e.id)})}),k(Array.from(t))},onViewMore:()=>{d.onOpen()},numSelected:b,toggle:(0,i.jsx)(w,{id:"".concat(t,"-regulated"),isChecked:c,onChange:()=>h(!c)})}),(0,i.jsx)(_,{groups:n,locations:s,isOpen:d.isOpen,onClose:d.onClose,selected:o,onChange:k},"subgroup-modal-selected-".concat(y.length))]})},L=n(64781),A=e=>{var t,n;let{data:s}=e,o=(0,l.pmc)(),a=(0,l.qY0)(),[r,C]=(0,u.useState)(null!==(n=null===(t=s.locations)||void 0===t?void 0:t.filter(e=>e.id!==p._F.GLOBAL))&&void 0!==n?n:[]),[y,w]=(0,u.useState)(""),[b,{isLoading:k}]=(0,L.WA)(),_=(0,u.useMemo)(()=>(0,S.Il)((s.locations||[]).filter(e=>e.id!==p._F.GLOBAL),s.location_groups||[]),[s]),O=!d().isEqual(r,s.locations),A=(0,c.useRouter)(),Z=()=>{A.push(f.vY).then(()=>{o.closeAll()})},F=async()=>{let e=await b({locations:r.map(e=>({id:e.id,selected:e.selected})),regulations:[]});(0,j.D4)(e)?o((0,x.Vo)((0,h.e$)(e.error))):o((0,x.t5)((0,i.jsxs)(l.xvT,{display:"inline",children:["Fides has automatically associated the relevant regulations with your location choices."," ",(0,i.jsx)(v.Z,{onClick:Z,children:"View regulations here."})]})))},M=e=>{C(r.map(t=>{let n=e.find(e=>e.id===t.id);return null!=n?n:t}))};return(0,i.jsxs)(l.gCW,{alignItems:"start",spacing:4,children:[(0,i.jsx)(l.xuv,{maxWidth:"510px",width:"100%",children:(0,i.jsx)(m.Z,{onChange:w,placeholder:"Search",value:y,onClear:()=>w("")})}),(0,i.jsx)(l.MIq,{columns:{base:1,md:2,xl:3},spacing:6,width:"100%",children:Object.entries(_).map(e=>{let[t,n]=e;return(0,i.jsx)(E,{title:t,groups:n.locationGroups,locations:n.locations,selected:r.filter(e=>n.locations.find(t=>t.id===e.id)&&e.selected).map(e=>e.id),onChange:M,search:y},t)})}),(0,i.jsx)(g.Z,{isOpen:a.isOpen,onClose:a.onClose,onConfirm:()=>{F(),a.onClose()},title:"Regulation updates",message:"Modifications in your location settings may also affect your regulation settings to simplify management. You can override any Fides-initiated changes directly in the regulation settings.",isCentered:!0,icon:(0,i.jsx)(l.aNP,{color:"orange"})}),O?(0,i.jsx)(l.wpx,{type:"primary",onClick:a.onOpen,loading:k,"data-testid":"save-btn",children:"Save"}):null]})},Z=()=>{let{isLoading:e}=(0,L.QM)(),t=(0,s.C)(L.P8);return(0,i.jsx)(o.Z,{title:"Locations",children:(0,i.jsxs)(l.xuv,{"data-testid":"location-management",children:[(0,i.jsx)(a.Z,{heading:"Locations"}),(0,i.jsx)(l.xvT,{fontSize:"sm",maxWidth:"720px",pb:6,children:"Select the locations that you operate in and Fides will make sure that you are automatically presented with the relevant regulatory guidelines and global frameworks for your locations."}),(0,i.jsx)(l.xuv,{children:e?(0,i.jsx)(l.$jN,{}):(0,i.jsx)(A,{data:t})})]})})}}},function(e){e.O(0,[9826,2888,9774,179],function(){return e(e.s=40135)}),_N_E=e.O()}]);
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4046],{10234:function(e,i,n){(window.__NEXT_P=window.__NEXT_P||[]).push(["/settings/messaging-providers/[key]",function(){return n(55066)}])},55066:function(e,i,n){"use strict";n.r(i),n.d(i,{default:function(){return h}});var t=n(24246),r=n(86677),s=n(77213),c=n(90980),o=n(77830),d=n(96306),u=n(27378),l=n(17245),a=n(90710),f=n(42478),x=n(10792);let g=e=>{let{configKey:i}=e,{handleError:n}=(0,l.HK)(),{data:r,isLoading:s,error:c}=(0,f.FU)({key:i});if((0,u.useEffect)(()=>{c&&n(c)},[c,n]),s)return(0,t.jsx)(d.xuv,{display:"flex",justifyContent:"center",alignItems:"center",height:"200px",children:(0,t.jsx)(d.$jN,{})});if(!r)return(0,t.jsx)(d.V4A,{children:(0,t.jsxs)(d.xvT,{color:"red.500",children:["Messaging configuration not found for key: ",i]})});let o=r.service_type;return(0,t.jsxs)(d.xuv,{children:[(0,t.jsx)(d.X6q,{fontSize:"2xl",fontWeight:"semibold",mb:6,children:"Edit messaging provider"}),Object.values(a.q).includes(o)?(0,t.jsx)(x.Z,{configKey:i,initialProviderType:o}):(0,t.jsxs)(d.xvT,{color:"red.500",children:["Unsupported service type: ",o]})]})};var h=()=>{let{key:e}=(0,r.useRouter)().query;return e&&"string"==typeof e?(0,t.jsxs)(s.Z,{title:"Edit Messaging Provider - ".concat(e),children:[(0,t.jsx)(c.Z,{backPath:o.AD}),(0,t.jsx)(g,{configKey:e})]}):(0,t.jsxs)(s.Z,{title:"Edit Messaging Provider",children:[(0,t.jsx)(c.Z,{backPath:o.AD}),(0,t.jsx)("div",{children:"Invalid messaging provider key"})]})}}},function(e){e.O(0,[8765,431,9278,3662,9037,502,7158,2888,9774,179],function(){return e(e.s=10234)}),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4046],{10234:function(e,i,n){(window.__NEXT_P=window.__NEXT_P||[]).push(["/settings/messaging-providers/[key]",function(){return n(55066)}])},55066:function(e,i,n){"use strict";n.r(i),n.d(i,{default:function(){return h}});var t=n(24246),r=n(86677),s=n(77213),c=n(90980),o=n(77830),d=n(20595),u=n(27378),l=n(17245),a=n(90710),f=n(42478),x=n(10792);let g=e=>{let{configKey:i}=e,{handleError:n}=(0,l.HK)(),{data:r,isLoading:s,error:c}=(0,f.FU)({key:i});if((0,u.useEffect)(()=>{c&&n(c)},[c,n]),s)return(0,t.jsx)(d.xuv,{display:"flex",justifyContent:"center",alignItems:"center",height:"200px",children:(0,t.jsx)(d.$jN,{})});if(!r)return(0,t.jsx)(d.V4A,{children:(0,t.jsxs)(d.xvT,{color:"red.500",children:["Messaging configuration not found for key: ",i]})});let o=r.service_type;return(0,t.jsxs)(d.xuv,{children:[(0,t.jsx)(d.X6q,{fontSize:"2xl",fontWeight:"semibold",mb:6,children:"Edit messaging provider"}),Object.values(a.q).includes(o)?(0,t.jsx)(x.Z,{configKey:i,initialProviderType:o}):(0,t.jsxs)(d.xvT,{color:"red.500",children:["Unsupported service type: ",o]})]})};var h=()=>{let{key:e}=(0,r.useRouter)().query;return e&&"string"==typeof e?(0,t.jsxs)(s.Z,{title:"Edit Messaging Provider - ".concat(e),children:[(0,t.jsx)(c.Z,{backPath:o.AD}),(0,t.jsx)(g,{configKey:e})]}):(0,t.jsxs)(s.Z,{title:"Edit Messaging Provider",children:[(0,t.jsx)(c.Z,{backPath:o.AD}),(0,t.jsx)("div",{children:"Invalid messaging provider key"})]})}}},function(e){e.O(0,[431,8765,9278,3662,9037,7245,3377,2888,9774,179],function(){return e(e.s=10234)}),_N_E=e.O()}]);
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2992],{84983:function(n,e,i){(window.__NEXT_P=window.__NEXT_P||[]).push(["/settings/messaging-providers/new",function(){return i(51192)}])},51192:function(n,e,i){"use strict";i.r(e),i.d(e,{default:function(){return c}});var s=i(24246),t=i(96306),r=i(77213),u=i(90980),o=i(77830),f=i(10792);let a=()=>(0,s.jsxs)(r.Z,{title:"Create Messaging Configuration",children:[(0,s.jsx)(u.Z,{backPath:o.AD}),(0,s.jsx)(t.X6q,{fontSize:"2xl",fontWeight:"semibold",mb:6,children:"Configure your messaging provider"}),(0,s.jsx)(f.Z,{})]});var c=()=>(0,s.jsx)(a,{})}},function(n){n.O(0,[8765,431,9278,3662,9037,502,7158,2888,9774,179],function(){return n(n.s=84983)}),_N_E=n.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2992],{84983:function(n,e,i){(window.__NEXT_P=window.__NEXT_P||[]).push(["/settings/messaging-providers/new",function(){return i(51192)}])},51192:function(n,e,i){"use strict";i.r(e),i.d(e,{default:function(){return c}});var s=i(24246),t=i(20595),r=i(77213),u=i(90980),o=i(77830),f=i(10792);let a=()=>(0,s.jsxs)(r.Z,{title:"Create Messaging Configuration",children:[(0,s.jsx)(u.Z,{backPath:o.AD}),(0,s.jsx)(t.X6q,{fontSize:"2xl",fontWeight:"semibold",mb:6,children:"Configure your messaging provider"}),(0,s.jsx)(f.Z,{})]});var c=()=>(0,s.jsx)(a,{})}},function(n){n.O(0,[431,8765,9278,3662,9037,7245,3377,2888,9774,179],function(){return n(n.s=84983)}),_N_E=n.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5935],{9255:function(e,t,i){(window.__NEXT_P=window.__NEXT_P||[]).push(["/settings/messaging-providers",function(){return i(60612)}])},77213:function(e,t,i){"use strict";i.d(t,{Z:function(){return f}});var n=i(24246),s=i(20595),a=i(88038),r=i.n(a),o=i(86677);i(27378);var l=i(25980),u=i(90867),c=i(42478),d=i(77830),g=()=>{let e=(0,o.useRouter)();return(0,n.jsx)(s.xuv,{bg:"gray.50",border:"1px solid",borderColor:"blue.400",borderRadius:"md",justifyContent:"space-between",p:5,mb:5,mt:5,children:(0,n.jsxs)(s.xuv,{children:[(0,n.jsxs)(s.Kqy,{direction:{base:"column",sm:"row"},justifyContent:"space-between",children:[(0,n.jsx)(s.xvT,{fontWeight:"semibold",children:"Configure your storage and messaging provider"}),(0,n.jsx)(s.wpx,{onClick:()=>{e.push(d.AD)},children:"Configure"})]}),(0,n.jsxs)(s.xvT,{children:["Before Fides can process your privacy requests we need two simple steps to configure your storage and email client."," "]})]})})},f=e=>{let{children:t,title:i,padded:a=!0,mainProps:d}=e,f=(0,l.hz)(),p=(0,o.useRouter)(),m="/privacy-requests"===p.pathname||"/datastore-connection"===p.pathname,h=!(f.flags.messagingConfiguration&&m),{data:v}=(0,c.JE)(void 0,{skip:h}),{data:x}=(0,u.PW)(void 0,{skip:h}),y=f.flags.messagingConfiguration&&(!v||!x)&&m;return(0,n.jsxs)(s.kCb,{"data-testid":i,direction:"column",h:"100vh",children:[(0,n.jsxs)(r(),{children:[(0,n.jsxs)("title",{children:["Fides Admin UI - ",i]}),(0,n.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,n.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,n.jsxs)(s.kCb,{as:"main",direction:"column",py:a?6:0,px:a?10:0,h:a?"calc(100% - 48px)":"full",flex:1,minWidth:0,overflow:"auto",...d,children:[y?(0,n.jsx)(g,{}):null,t]})]})}},19904:function(e,t,i){"use strict";i.d(t,{Tg:function(){return r}});var n=i(24246),s=i(16134),a=i(31793);let r=e=>(0,s.C)(a.uu).filter(t=>e.includes(t)).length>0;t.ZP=e=>{let{scopes:t,children:i}=e;return r(t)?(0,n.jsx)(n.Fragment,{children:i}):null}},8125:function(e,t,i){"use strict";i.d(t,{V:function(){return a},o:function(){return u}});var n=i(27378),s=i(32735);let a=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{enableSelection:i=!1,getRowKey:a,bulkActions:r,isLoading:o=!1,isFetching:l=!1,dataSource:u=[],totalRows:c=0,currentPage:d,pageSize:g,customTableProps:f={}}=t,p=(0,n.useCallback)(e=>{if(e&&"object"==typeof e){if(e.id)return String(e.id);if(e.key)return String(e.key)}return String(e)},[]),m=a||p,[h,v]=(0,n.useState)([]),[x,y]=(0,n.useState)([]),j=(0,n.useCallback)(()=>{v([]),y([])},[]),C=(0,n.useMemo)(()=>({selectedRowKeys:h,selectedRows:x,resetSelections:j}),[h,x,j]),b=(0,n.useMemo)(()=>{if(i)return{selectedRowKeys:h,onChange:(e,t)=>{v(e),y(t)}}},[i,h]),w=(0,n.useCallback)((t,i,n)=>{var s,a;let r=null!==(s=t.current)&&void 0!==s?s:e.pageIndex,o=null!==(a=t.pageSize)&&void 0!==a?a:e.pageSize,l=r!==e.pageIndex||o!==e.pageSize;l?(t.current&&t.current!==e.pageIndex&&e.updatePageIndex(t.current),t.pageSize&&t.pageSize!==e.pageSize&&e.updatePageSize(t.pageSize)):e.updateFilters(i||{});let u=n&&!Array.isArray(n)?n.field:void 0,c=n&&!Array.isArray(n)&&null!==n.order?n.order:void 0;l||e.updateSorting(u,c)},[e]),S=(0,n.useMemo)(()=>{var t,i,n,a,r;return{current:null!=d?d:e.pageIndex,pageSize:null!=g?g:e.pageSize,total:c,showSizeChanger:null===(a=null===(t=e.paginationConfig)||void 0===t?void 0:t.showSizeChanger)||void 0===a||a,pageSizeOptions:null!==(r=null===(n=e.paginationConfig)||void 0===n?void 0:null===(i=n.pageSizeOptions)||void 0===i?void 0:i.map(String))&&void 0!==r?r:s.VZ}},[d,e.pageIndex,g,e.pageSize,c,e.paginationConfig]),k=(0,n.useMemo)(()=>({dataSource:u,loading:o||l,pagination:S,onChange:w,rowKey:m,scroll:{x:"max-content",scrollToFirstRowOnChange:!0},size:"small",bordered:!0,...f}),[u,o,l,S,w,m,f]),z=h.map(String),M=x.length>0,_=(0,n.useCallback)(e=>{let t=null==r?void 0:r.actions.find(t=>t.key===e);return t?{disabled:!M||!!t.disabled&&t.disabled(x),loading:t.loading||!1,onClick:()=>t.onClick(x)}:{disabled:!0,loading:!1}},[r,M,x]);return(0,n.useMemo)(()=>({tableProps:k,selectionProps:b,selectionState:C,selectedRows:x,selectedKeys:z,hasSelectedRows:M,resetSelections:j,getBulkActionProps:_,isLoadingOrFetching:o||l,hasData:u.length>0}),[k,b,C,x,z,M,j,_,o,l,u.length])};var r=i(40431),o=i(17245);let l=()=>({filters:(0,r.WJ)(e=>e).withDefault({})}),u=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{pagination:t={},sorting:i={},search:s={},onStateChange:a}=e,{pageIndex:u,pageSize:c,resetPagination:d,updatePageIndex:g,updatePageSize:f,pageSizeOptions:p,showSizeChanger:m}=(0,o.h0)(t),{sortKey:h,sortOrder:v,updateSorting:x,resetSorting:y}=(0,o.rK)(i),{searchQuery:j,updateSearch:C,resetSearch:b}=(0,o.Rx)(s),w=(0,n.useMemo)(()=>l(),[]),[S,k]=(0,r.XI)(w,{history:"push"}),z=(0,n.useMemo)(()=>{var e;return{pageIndex:u,pageSize:c,sortKey:h,sortOrder:v,columnFilters:null!==(e=S.filters)&&void 0!==e?e:{},searchQuery:j}},[S,u,c,h,v,j]),M=(0,n.useCallback)((e,t)=>{x(e,t),d()},[x,d]),_=(0,n.useCallback)(e=>{let t=Object.fromEntries(Object.entries(e).filter(e=>{let[,t]=e;return null!=t}));k({filters:Object.keys(t).length>0?t:null}),d()},[k,d]),T=(0,n.useCallback)(e=>{C(e),d()},[C,d]),P=(0,n.useCallback)(()=>{k({filters:null}),d(),y(),b()},[k,d,y,b]);return(0,n.useEffect)(()=>{a&&a(z)},[z,a]),{state:z,pageIndex:z.pageIndex,pageSize:z.pageSize,updatePageIndex:g,updatePageSize:f,sortKey:z.sortKey,sortOrder:z.sortOrder,updateSorting:M,columnFilters:z.columnFilters,updateFilters:_,searchQuery:z.searchQuery,updateSearch:T,resetState:P,paginationConfig:{pageSizeOptions:p,showSizeChanger:m}}}},17828:function(e,t,i){"use strict";var n=i(24246);i(27378),t.Z=()=>(0,n.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink",viewBox:"0 0 74.375 85",width:"20",height:"20",fill:"#fff",fillRule:"evenodd",stroke:"#000",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,n.jsx)("use",{xlinkHref:"#A",x:"2.188",y:"2.5"}),(0,n.jsx)("symbol",{id:"A",overflow:"visible",children:(0,n.jsxs)("g",{stroke:"none",children:[(0,n.jsx)("path",{d:"M16.558 12.75L0 38.591l16.558 25.841 13.227-3.324.654-44.869-13.881-3.489z",fill:"#876929"}),(0,n.jsx)("path",{d:"M35.049 59.786l-18.491 4.645V12.75l18.491 4.645v42.391z",fill:"#d9a741"}),(0,n.jsxs)("g",{fill:"#876929",children:[(0,n.jsx)("path",{d:"M32.849 21.614L35.05 80 70 62.867l-.01-43.615-8.914 1.448-28.228.913z"}),(0,n.jsx)("path",{d:"M46.184 33.149l10.906-.632 10.778-19.164L40.612 0 30.439 4.364l15.745 28.785z"})]}),(0,n.jsx)("path",{d:"M40.612 0l27.256 13.353-10.778 19.164L40.612 0z",fill:"#d9a741"}),(0,n.jsx)("path",{d:"M35.049 5.539L57.09 44.742l3.788 22.595L35.049 80l-10.46-5.131V9.64l10.45-4.101h.01z",fill:"#876929"}),(0,n.jsx)("path",{d:"M69.991 19.251L70 62.867 35.05 80V5.539l22.041 39.203 12.899-25.491z",fill:"#d9a741"})]})})]})},44907:function(e,t,i){"use strict";var n=i(24246);i(27378),t.Z=()=>(0,n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",preserveAspectRatio:"xMidYMid",viewBox:"-0.5 0 257 257",children:(0,n.jsx)("path",{fill:"#C02428",d:"M128.418 80.526c-26.51 0-48.884 21.475-48.884 48.728a48.197 48.197 0 0014.187 34.579 48.532 48.532 0 0034.697 14.14c26.511 0 48.875-21.476 48.875-48.719 0-27.253-22.364-48.728-48.875-48.728zm-76.22 47.895c0-41.285 33.968-75.138 75.395-75.138 41.417 0 75.385 33.853 75.385 75.138 0 2.478 0 5.788-.825 8.266-.835 7.422 4.972 13.2 12.43 13.2 12.43 0 14.08-15.678 14.08-21.466 0-55.328-45.573-100.746-101.07-100.746-55.518 0-101.07 45.418-101.07 100.746 0 55.339 45.552 100.747 101.07 100.747 29.822 0 56.333-12.388 74.56-33.03l20.703 17.342c-22.364 26.43-57.158 42.952-94.448 42.952-34.097.105-66.827-13.35-90.932-37.384C13.37 195.016-.118 162.392 0 128.411 0 58.228 57.159.432 128.418.432 198.832.432 256 58.238 256 128.432c0 28.075-13.256 51.205-40.591 51.205-11.605 0-19.053-5.787-23.2-11.565-13.255 21.476-37.29 35.508-64.626 35.508-20.017.068-39.234-7.827-53.388-21.933a74.755 74.755 0 01-22.008-53.205l.01-.02zm76.21-22.297c12.43 0 22.374 9.91 22.374 22.297 0 12.388-9.944 22.298-22.364 22.298a22.322 22.322 0 01-15.848-6.504 22.169 22.169 0 01-6.526-15.794c0-12.387 9.944-22.297 22.374-22.297h-.01z"})})},5144:function(e,t,i){"use strict";var n=i(24246);t.Z=()=>(0,n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",preserveAspectRatio:"xMidYMid",viewBox:"0 0 256 256",children:(0,n.jsx)("path",{fill:"#F12E45",d:"M128 0c70.656 0 128 57.344 128 128s-57.344 128-128 128S0 198.656 0 128 57.344 0 128 0zm0 33.792c-52.224 0-94.208 41.984-94.208 94.208S75.776 222.208 128 222.208s94.208-41.984 94.208-94.208S180.224 33.792 128 33.792zm31.744 99.328c14.704 0 26.624 11.92 26.624 26.624 0 14.704-11.92 26.624-26.624 26.624-14.704 0-26.624-11.92-26.624-26.624 0-14.704 11.92-26.624 26.624-26.624zm-63.488 0c14.704 0 26.624 11.92 26.624 26.624 0 14.704-11.92 26.624-26.624 26.624-14.704 0-26.624-11.92-26.624-26.624 0-14.704 11.92-26.624 26.624-26.624zm63.488-63.488c14.704 0 26.624 11.92 26.624 26.624 0 14.704-11.92 26.624-26.624 26.624-14.704 0-26.624-11.92-26.624-26.624 0-14.704 11.92-26.624 26.624-26.624zm-63.488 0c14.704 0 26.624 11.92 26.624 26.624 0 14.704-11.92 26.624-26.624 26.624-14.704 0-26.624-11.92-26.624-26.624 0-14.704 11.92-26.624 26.624-26.624z"})})},42478:function(e,t,i){"use strict";i.d(t,{FU:function(){return u},JE:function(){return s},Ki:function(){return d},SU:function(){return g},W:function(){return f},h9:function(){return a},jc:function(){return n},qt:function(){return l},sn:function(){return c}});let{useGetEmailInviteStatusQuery:n,useGetActiveMessagingProviderQuery:s,useCreateMessagingConfigurationMutation:a,useCreateMessagingConfigurationSecretsMutation:r,useGetMessagingConfigurationDetailsQuery:o,useGetMessagingConfigurationsQuery:l,useGetMessagingConfigurationByKeyQuery:u,useUpdateMessagingConfigurationByKeyMutation:c,useUpdateMessagingConfigurationSecretsByKeyMutation:d,useCreateTestConnectionMessageMutation:g,useDeleteMessagingConfigurationByKeyMutation:f}=i(78780).u.injectEndpoints({endpoints:e=>({getEmailInviteStatus:e.query({query:()=>({url:"/messaging/email-invite/status"}),providesTags:()=>["Email Invite Status"]}),createMessagingConfiguration:e.mutation({query:e=>({url:"messaging/config",method:"POST",body:e}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getActiveMessagingProvider:e.query({queryFn:async(e,t,i,n)=>{let s=await n({url:"messaging/default/active"});return s.error&&404===s.error.status?{data:null}:s},providesTags:["Messaging Config"]}),createMessagingConfigurationSecrets:e.mutation({query:e=>({url:"messaging/default/".concat(e.service_type,"/secret"),method:"PUT",body:e.details}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getMessagingConfigurationDetails:e.query({query:e=>({url:"messaging/default/".concat(e.type)}),providesTags:["Messaging Config"]}),getMessagingConfigurations:e.query({query:()=>({url:"messaging/config"}),providesTags:["Messaging Config"]}),getMessagingConfigurationByKey:e.query({query:e=>({url:"messaging/config/".concat(e.key)}),providesTags:["Messaging Config"]}),createTestConnectionMessage:e.mutation({query:e=>({url:"messaging/test/".concat(e.service_type),method:"POST",body:e.details}),invalidatesTags:["Messaging Config"]}),updateMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"PATCH",body:e.config}),invalidatesTags:["Messaging Config","Configuration Settings"]}),updateMessagingConfigurationSecretsByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key,"/secret"),method:"PUT",body:e.secrets}),invalidatesTags:["Messaging Config","Configuration Settings"]}),deleteMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"DELETE"}),invalidatesTags:["Messaging Config","Configuration Settings"]})})})},60612:function(e,t,i){"use strict";i.r(t),i.d(t,{default:function(){return _}});var n,s,a=i(24246),r=i(20595),o=i(77213),l=i(77830),u=i(47935),c=i(812),d=i(17245),g=i(86677),f=i(27378),p=i(8125),m=i(7426),h=i(85054),v=i(19904),x=i(17828),y=i(44907),j=i(5144),C=i(42478),b=i(51980),w=i(16394),S=e=>{let{messagingConfig:t}=e,{last_test_succeeded:i,last_test_timestamp:n}=t;if(!n)return(0,a.jsx)(r.j8w,{children:"Verify configuration"});let s=new Date(n),o=(0,w.p6)(s),l=(0,b.B)(s,new Date,{addSuffix:!0});return(0,a.jsx)(r.esZ,{title:"Last verified: ".concat(o),children:(0,a.jsxs)(r.j8w,{color:i?"success":"error","data-testid":i?"test-success":"test-error",children:[i?"Succeeded":"Failed"," ",l]})})};(n=s||(s={})).NAME="name",n.VERIFICATION_STATUS="verification_status",n.ENABLED="enabled",n.ACTIONS="actions";let k=()=>{let e=(0,g.useRouter)(),{handleError:t}=(0,d.HK)(),[i,n]=(0,f.useState)(null),[o]=(0,m.L)(),[u]=(0,C.W)(),b=(0,v.Tg)([h.Sh.MESSAGING_CREATE_OR_UPDATE]),[w,k]=(0,f.useState)(!1),[z,M]=(0,f.useState)(null),_=(0,p.o)({pagination:{defaultPageSize:25,pageSizeOptions:[25,50,100]},sorting:{validColumns:Object.values(s),defaultSortKey:"name",defaultSortOrder:"ascend"}}),{data:T,isLoading:P}=(0,C.JE)(),{data:E,isLoading:q}=(0,C.qt)();(0,f.useEffect)(()=>{T?n(T.service_type):n(null)},[T]);let A=(0,f.useCallback)(async e=>{try{let i=await o({notifications:{notification_service_type:e}});(0,c.D4)(i)?t(i.error):(n(e),r.Pg3.success(e?"Updated active messaging config":"Disabled active messaging config"))}catch(e){t(e)}},[o,t,n]),I=(0,f.useCallback)(t=>{var i,n;let s=l.GE.replace("[key]",t.key);e.push({pathname:s,query:{last_test_succeeded:null!==(i=t.last_test_succeeded)&&void 0!==i?i:"",last_test_timestamp:null!==(n=t.last_test_timestamp)&&void 0!==n?n:""}})},[e]),O=(0,f.useCallback)((e,t)=>{M({key:e,name:t}),k(!0)},[]),L=(0,f.useCallback)(async()=>{if(z)try{let e=await u({key:z.key});(0,c.D4)(e)?t(e.error):r.Pg3.success("Messaging configuration successfully deleted")}catch(e){t(e)}finally{k(!1),M(null)}},[z,u,t]),D=(0,f.useCallback)(()=>{k(!1),M(null)},[]),F=(0,f.useMemo)(()=>({enableSelection:!1,getRowKey:e=>e.key,isLoading:q||P,dataSource:(null==E?void 0:E.items)||[],totalRows:(null==E?void 0:E.total)||0,customTableProps:{size:"small",pagination:{hideOnSinglePage:!0,showSizeChanger:!0,pageSizeOptions:["25","50","100"]}}}),[q,P,null==E?void 0:E.items,null==E?void 0:E.total]),R=(0,p.V)(_,F),K=(0,f.useMemo)(()=>[{title:"Provider type",dataIndex:"name",key:"name",render:(e,t)=>(0,a.jsxs)(r.Ugi,{children:[(()=>{switch(t.service_type){case"mailgun":return(0,a.jsx)(y.Z,{});case"twilio_text":case"twilio_email":default:return(0,a.jsx)(j.Z,{});case"aws_ses":return(0,a.jsx)(x.Z,{})}})(),(0,a.jsx)(r.xvT,{children:e})]})},{title:"Verification status",key:"verification_status",render:(e,t)=>(0,a.jsx)(S,{messagingConfig:t})},{title:"Enabled",key:"enabled",width:100,render:(e,t)=>{let n=t.service_type===i,s=!!t.last_test_timestamp&&""!==t.last_test_timestamp&&!1===t.last_test_succeeded&&!n,o=(0,a.jsx)(r.rAg,{checked:n,disabled:s,onChange:e=>{e?A(t.service_type):A(null)}});return s?(0,a.jsx)(r.esZ,{title:"This provider cannot be enabled because its last test failed. Please fix the configuration and test again.",children:o}):o}},{title:"Actions",key:"actions",render:(e,t)=>(0,a.jsxs)(r.Ugi,{children:[b&&(0,a.jsx)(r.wpx,{onClick:e=>{e.stopPropagation(),I(t)},size:"small",icon:(0,a.jsx)(r.PJP.I8b,{}),title:"Edit","aria-label":"Edit messaging configuration","data-testid":"edit-messaging-config-btn"}),b&&(0,a.jsx)(r.wpx,{onClick:e=>{e.stopPropagation(),O(t.key,t.name)},size:"small",icon:(0,a.jsx)(r.PJP.ZNm,{}),title:"Delete","aria-label":"Delete messaging configuration","data-testid":"delete-messaging-config-btn"})]})}],[b,i,I,O,A]),Z=(0,f.useMemo)(()=>(0,a.jsx)(r.$zI,{title:"Delete messaging configuration",open:w,onCancel:D,footer:[(0,a.jsx)(r.wpx,{onClick:D,children:"Cancel"},"cancel"),(0,a.jsx)(r.wpx,{type:"primary",danger:!0,onClick:L,children:"Delete"},"delete")],children:(0,a.jsxs)(r.vyj,{direction:"vertical",children:[(0,a.jsxs)(r.xvT,{children:['Are you sure you want to delete "',(0,a.jsx)("strong",{children:null==z?void 0:z.name}),'" messaging configuration?']}),(0,a.jsx)(r.xvT,{children:"This action cannot be undone."})]})}),[w,null==z?void 0:z.name,D,L]);return{columns:K,tableProps:R.tableProps,selectionProps:R.selectionProps,userCanUpdate:b,isLoading:q||P,deleteModal:Z,handleEditConfiguration:I,handleDeleteConfiguration:O,setActiveServiceType:A}},z=()=>(0,a.jsx)(r.gCW,{mt:6,p:10,spacing:4,borderRadius:"base",maxW:"70%","data-testid":"no-results-notice",alignSelf:"center",margin:"auto",children:(0,a.jsxs)(r.gCW,{children:[(0,a.jsx)(r.xvT,{fontSize:"md",fontWeight:"600",children:"No messaging providers found."}),(0,a.jsx)(r.xvT,{fontSize:"sm",children:'Click "Add a messaging provider" to add your first messaging provider to Fides.'})]})}),M=()=>{let{columns:e,tableProps:t,userCanUpdate:i,isLoading:n,deleteModal:s}=k();return(0,a.jsxs)(o.Z,{title:"Messaging providers",children:[(0,a.jsx)(r.X6q,{mb:5,fontSize:"2xl",fontWeight:"semibold",children:"Manage messaging providers"}),(0,a.jsxs)(r.xvT,{fontSize:"sm",mb:8,width:{base:"100%",lg:"70%"},children:["Fides requires a messaging provider for sending processing notices to privacy request subjects, and allows for Subject Identity Verification in privacy requests. Please follow the"," ",(0,a.jsx)(r.xvT,{as:"span",color:"complimentary.500",children:"documentation"})," ","to setup a messaging service that Fides supports. Ensure you have completed the setup for the preferred messaging provider and have the details handy prior to the following steps."]}),(0,a.jsxs)(r.kCb,{flex:1,direction:"column",overflow:"auto",children:[i&&(0,a.jsx)(r.vyj,{direction:"horizontal",style:{width:"100%",justifyContent:"flex-end",marginBottom:16},children:(0,a.jsx)(r.wpx,{href:"".concat(l.AD,"/new"),role:"link",type:"primary",icon:(0,a.jsx)(r.PJP.mm_,{}),iconPosition:"end","data-testid":"add-messaging-provider-btn",children:"Add a messaging provider"})}),n?(0,a.jsx)(u.I4,{rowHeight:36,numRows:5}):(0,a.jsx)(r.V5H,{...t,columns:e,locale:{emptyText:(0,a.jsx)(z,{})}})]}),s]})};var _=()=>(0,a.jsx)(M,{})}},function(e){e.O(0,[431,7245,2888,9774,179],function(){return e(e.s=9255)}),_N_E=e.O()}]);
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2828],{85082:function(e,i,t){(window.__NEXT_P=window.__NEXT_P||[]).push(["/settings/organization",function(){return t(5417)}])},77213:function(e,i,t){"use strict";t.d(i,{Z:function(){return m}});var n=t(24246),r=t(96306),a=t(88038),s=t.n(a),o=t(86677);t(27378);var l=t(25980),d=t(90867),c=t(42478),u=t(77830),g=()=>{let e=(0,o.useRouter)();return(0,n.jsx)(r.xuv,{bg:"gray.50",border:"1px solid",borderColor:"blue.400",borderRadius:"md",justifyContent:"space-between",p:5,mb:5,mt:5,children:(0,n.jsxs)(r.xuv,{children:[(0,n.jsxs)(r.Kqy,{direction:{base:"column",sm:"row"},justifyContent:"space-between",children:[(0,n.jsx)(r.xvT,{fontWeight:"semibold",children:"Configure your storage and messaging provider"}),(0,n.jsx)(r.wpx,{onClick:()=>{e.push(u.AD)},children:"Configure"})]}),(0,n.jsxs)(r.xvT,{children:["Before Fides can process your privacy requests we need two simple steps to configure your storage and email client."," "]})]})})},m=e=>{let{children:i,title:t,padded:a=!0,mainProps:u}=e,m=(0,l.hz)(),p=(0,o.useRouter)(),x="/privacy-requests"===p.pathname||"/datastore-connection"===p.pathname,f=!(m.flags.messagingConfiguration&&x),{data:v}=(0,c.JE)(void 0,{skip:f}),{data:h}=(0,d.PW)(void 0,{skip:f}),j=m.flags.messagingConfiguration&&(!v||!h)&&x;return(0,n.jsxs)(r.kCb,{"data-testid":t,direction:"column",h:"100vh",children:[(0,n.jsxs)(s(),{children:[(0,n.jsxs)("title",{children:["Fides Admin UI - ",t]}),(0,n.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,n.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,n.jsxs)(r.kCb,{as:"main",direction:"column",py:a?6:0,px:a?10:0,h:a?"calc(100% - 48px)":"full",flex:1,minWidth:0,overflow:"auto",...u,children:[j?(0,n.jsx)(g,{}):null,i]})]})}},58754:function(e,i,t){"use strict";var n=t(24246),r=t(96306),a=t(70788);i.Z=e=>{let{heading:i,breadcrumbItems:t,isSticky:s=!0,children:o,rightContent:l,style:d,...c}=e;return(0,n.jsxs)("div",{...c,style:s?{position:"sticky",top:"-24px",paddingTop:"24px",paddingBottom:"24px",paddingLeft:"40px",marginLeft:"-40px",paddingRight:"40px",marginRight:"-40px",marginTop:"-24px",left:0,zIndex:20,backgroundColor:"white",...d}:{paddingBottom:"24px",...d},children:[(0,n.jsxs)(r.jqI,{justify:"space-between",children:["string"==typeof i?(0,n.jsx)(r.lQT,{className:t||o?"pb-4":void 0,level:1,"data-testid":"page-heading",children:i}):i,l&&(0,n.jsx)("div",{"data-testid":"page-header-right-content",children:l})]}),!!t&&(0,n.jsx)(a.m,{className:o?"pb-4":void 0,items:t,"data-testid":"page-breadcrumb"}),o]})}},19904:function(e,i,t){"use strict";t.d(i,{Tg:function(){return s}});var n=t(24246),r=t(16134),a=t(31793);let s=e=>(0,r.C)(a.uu).filter(i=>e.includes(i)).length>0;i.ZP=e=>{let{scopes:i,children:t}=e;return s(i)?(0,n.jsx)(n.Fragment,{children:t}):null}},97181:function(e,i,t){"use strict";t.d(i,{d:function(){return d}});var n=t(24246),r=t(96306),a=t(34090),s=t(27378),o=t(46238),l=t(40324);let d=e=>{let{name:i,label:t,labelProps:d,tooltip:c,isRequired:u,layout:g="inline",helperText:m,...p}=e,[x,f,{setValue:v}]=(0,a.U$)(i),h=!!(f.touched&&f.error),[j,y]=(0,s.useState)("");x.value||"tags"!==p.mode&&"multiple"!==p.mode||(x.value=[]),"tags"===p.mode&&"string"==typeof x.value&&(x.value=[x.value]);let b="tags"===p.mode?(e,i)=>e?e.value!==j||x.value.includes(j)?p.optionRender?p.optionRender(e,i):e.label:'Create "'.concat(j,'"'):void 0:p.optionRender||void 0,C=e=>{y(e),p.onSearch&&p.onSearch(e)},k=(e,i)=>{v(e),p.onChange&&p.onChange(e,i)};return"inline"===g?(0,n.jsx)(r.NIc,{isInvalid:h,isRequired:u,children:(0,n.jsxs)(r.rjZ,{templateColumns:t?"1fr 3fr":"1fr",children:[t?(0,n.jsx)(l.__,{htmlFor:p.id||i,...d,children:t}):null,(0,n.jsxs)(r.jqI,{align:"center",children:[(0,n.jsxs)(r.jqI,{vertical:!0,flex:1,className:"mr-2",children:[(0,n.jsx)(r.WPr,{...x,id:p.id||i,"data-testid":"controlled-select-".concat(x.name),...p,optionRender:b,onSearch:"tags"===p.mode?C:void 0,onChange:k,value:x.value||void 0,status:h?"error":void 0}),m&&(0,n.jsx)(r.Q6r,{children:m}),(0,n.jsx)(l.Bc,{isInvalid:h,message:f.error,fieldName:x.name})]}),(0,n.jsx)(o.b,{label:c,className:h?"mt-2 self-start":void 0})]})]})}):(0,n.jsx)(r.NIc,{isInvalid:h,isRequired:u,children:(0,n.jsxs)(r.gCW,{alignItems:"start",children:[(0,n.jsxs)(r.jqI,{align:"center",children:[t?(0,n.jsx)(l.__,{htmlFor:p.id||i,fontSize:"xs",my:0,mr:1,...d,children:t}):null,(0,n.jsx)(o.b,{label:c})]}),(0,n.jsx)(r.WPr,{...x,id:p.id||i,"data-testid":"controlled-select-".concat(x.name),...p,optionRender:b,onSearch:"tags"===p.mode?C:void 0,onChange:k,value:x.value||void 0,status:h?"error":void 0}),m&&(0,n.jsx)(r.Q6r,{style:{marginTop:0},children:m}),(0,n.jsx)(l.Bc,{isInvalid:h,message:f.error,fieldName:x.name})]})})}},8133:function(e,i,t){"use strict";var n=t(24246),r=t(96306);i.Z=e=>{let{title:i,children:t,isOpen:a,onClose:s,modalContentProps:o,showCloseButton:l=!1,footer:d,...c}=e;return(0,n.jsxs)(r.u_l,{isOpen:a,onClose:s,isCentered:!0,scrollBehavior:"inside",size:"xl",id:"add-modal",...c,children:[(0,n.jsx)(r.ZAr,{}),(0,n.jsxs)(r.hzk,{textAlign:"left",p:0,"data-testid":"add-modal-content",...o,children:[l&&(0,n.jsx)(r.olH,{}),(0,n.jsx)(r.xBx,{p:0,children:(0,n.jsx)(r.xuv,{backgroundColor:"gray.50",px:6,py:4,border:"1px",borderColor:"gray.200",borderTopRadius:6,display:"flex",justifyContent:"space-between",alignItems:"center",children:(0,n.jsx)(r.X6q,{as:"h3",size:"sm",children:i})})}),(0,n.jsx)(r.fef,{pb:4,overflow:"auto",children:t}),d&&(0,n.jsx)(r.mzw,{children:d})]})]})}},70788:function(e,i,t){"use strict";t.d(i,{m:function(){return d}});var n=t(24246),r=t(96306),a=t(79894),s=t.n(a),o=t(27378);let{Text:l}=r.AntTypography,d=e=>{let{items:i,...t}=e,a=(0,o.useMemo)(()=>null==i?void 0:i.map((e,t)=>{let a=t===i.length-1,o={...e},d=o.onClick&&!o.href;return("string"==typeof o.title&&(o.title=(0,n.jsx)(l,{style:{color:"inherit",maxWidth:a?void 0:400},ellipsis:!a,id:a?"breadcrumb-current-page":void 0,children:o.title})),d)?o.title=(0,n.jsx)(r.wpx,{type:"text",size:"small",icon:o.icon,onClick:o.onClick,className:"ant-breadcrumb-link -mt-px px-1 text-inherit",children:o.title}):(o.icon&&(o.title=(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"anticon align-text-bottom",children:o.icon}),o.title]})),o.href&&o.title&&(o.title=(0,n.jsx)(s(),{href:o.href,className:"ant-breadcrumb-link",children:o.title}),delete o.href)),o}),[i]);return(0,n.jsx)(r.zrq,{items:a,...t})}},42478:function(e,i,t){"use strict";t.d(i,{FU:function(){return d},JE:function(){return r},Ki:function(){return u},SU:function(){return g},W:function(){return m},h9:function(){return a},jc:function(){return n},qt:function(){return l},sn:function(){return c}});let{useGetEmailInviteStatusQuery:n,useGetActiveMessagingProviderQuery:r,useCreateMessagingConfigurationMutation:a,useCreateMessagingConfigurationSecretsMutation:s,useGetMessagingConfigurationDetailsQuery:o,useGetMessagingConfigurationsQuery:l,useGetMessagingConfigurationByKeyQuery:d,useUpdateMessagingConfigurationByKeyMutation:c,useUpdateMessagingConfigurationSecretsByKeyMutation:u,useCreateTestConnectionMessageMutation:g,useDeleteMessagingConfigurationByKeyMutation:m}=t(78780).u.injectEndpoints({endpoints:e=>({getEmailInviteStatus:e.query({query:()=>({url:"/messaging/email-invite/status"}),providesTags:()=>["Email Invite Status"]}),createMessagingConfiguration:e.mutation({query:e=>({url:"messaging/config",method:"POST",body:e}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getActiveMessagingProvider:e.query({queryFn:async(e,i,t,n)=>{let r=await n({url:"messaging/default/active"});return r.error&&404===r.error.status?{data:null}:r},providesTags:["Messaging Config"]}),createMessagingConfigurationSecrets:e.mutation({query:e=>({url:"messaging/default/".concat(e.service_type,"/secret"),method:"PUT",body:e.details}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getMessagingConfigurationDetails:e.query({query:e=>({url:"messaging/default/".concat(e.type)}),providesTags:["Messaging Config"]}),getMessagingConfigurations:e.query({query:()=>({url:"messaging/config"}),providesTags:["Messaging Config"]}),getMessagingConfigurationByKey:e.query({query:e=>({url:"messaging/config/".concat(e.key)}),providesTags:["Messaging Config"]}),createTestConnectionMessage:e.mutation({query:e=>({url:"messaging/test/".concat(e.service_type),method:"POST",body:e.details}),invalidatesTags:["Messaging Config"]}),updateMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"PATCH",body:e.config}),invalidatesTags:["Messaging Config","Configuration Settings"]}),updateMessagingConfigurationSecretsByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key,"/secret"),method:"PUT",body:e.secrets}),invalidatesTags:["Messaging Config","Configuration Settings"]}),deleteMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"DELETE"}),invalidatesTags:["Messaging Config","Configuration Settings"]})})})},5417:function(e,i,t){"use strict";t.r(i),t.d(i,{default:function(){return I}});var n=t(24246),r=t(19904),a=t(96306),s=t(25980),o=t(77213),l=t(58754),d=t(8133),c=t(34090),u=t(27378),g=t(55484),m=t(40324),p=t(812),x=t(46628),f=t(76174),v=t(97181);let h={identifier:"",name:"",client_id:"",client_secret:""},j=e=>({...e}),y=g.Ry().shape({provider:g.Z_().required().label("Provider"),name:g.Z_().required().label("Name"),client_id:g.Z_().required().label("Client ID"),client_secret:g.Z_().required().label("Client Secret")});var b=e=>{let{openIDProvider:i,onSuccess:t,onClose:r}=e,[s]=(0,f.Qc)(),[o]=(0,f.oP)(),l=(0,u.useMemo)(()=>i?j(i):h,[i]),d=(0,a.pmc)(),g=async(e,i)=>{(e=>{if((0,p.D4)(e)){let i=(0,p.e$)(e.error,"An unexpected error occurred while editing the SSO provider. Please try again.");d((0,x.Vo)(i))}else d((0,x.t5)("SSO provider configuration saved.")),r(),i.resetForm({}),t&&t(e.data)})(l.id?await o(e):await s(e))},b=[{label:"Azure",value:"azure"},{label:"Google",value:"google"},{label:"Okta",value:"okta"},{label:"Custom",value:"custom"}],C=()=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(m.j0,{id:"authorization_url",name:"authorization_url",label:"Authorization URL",tooltip:"Authorization URL for your provider",variant:"stacked",isRequired:!0}),(0,n.jsx)(m.j0,{id:"token_url",name:"token_url",label:"Token URL",tooltip:"Token URL for your provider",variant:"stacked",isRequired:!0})]}),k=()=>(0,n.jsx)(m.j0,{id:"domain",name:"domain",label:"Domain",tooltip:"Domain for your Okta provider",variant:"stacked",isRequired:!0}),q=()=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(m.j0,{id:"authorization_url",name:"authorization_url",label:"Authorization URL",tooltip:"Authorization URL for your provider",variant:"stacked",isRequired:!0}),(0,n.jsx)(m.j0,{id:"token_url",name:"token_url",label:"Token URL",tooltip:"Token URL for your provider",variant:"stacked",isRequired:!0}),(0,n.jsx)(m.j0,{id:"userinfo_url",name:"user_info_url",label:"User Info URL",tooltip:"User Info URL for your provider",variant:"stacked",isRequired:!0})]});return(0,n.jsx)(c.J9,{initialValues:l,enableReinitialize:!0,onSubmit:g,validationSchema:y,children:e=>{let{dirty:i,isValid:t,values:s}=e;return(0,n.jsx)(c.l0,{"data-testid":"openIDProvider-form",children:(0,n.jsxs)(a.Kqy,{spacing:4,children:[(0,n.jsx)(v.d,{name:"provider",label:"Provider",options:b,layout:"stacked",isRequired:!0}),(0,n.jsx)(m.j0,{id:"identifier",name:"identifier",label:"Identifier",tooltip:"Unique identifier for your provider",variant:"stacked",isRequired:!0,disabled:!!l.id}),(0,n.jsx)(m.j0,{id:"name",name:"name",label:"Name",tooltip:"Display name for your provider",variant:"stacked",isRequired:!0}),(0,n.jsx)(m.j0,{id:"client_id",name:"client_id",label:"Client ID",type:"password",tooltip:"Client ID for your provider",variant:"stacked",isRequired:!0}),(0,n.jsx)(m.j0,{id:"client_secret",name:"client_secret",label:"Client secret",type:"password",tooltip:"Client secret for your provider",variant:"stacked",isRequired:!0}),"azure"===s.provider&&C(),"okta"===s.provider&&k(),"custom"===s.provider&&q(),(0,n.jsxs)(a.xuv,{textAlign:"right",children:[(0,n.jsx)(a.wpx,{htmlType:"button","data-testid":"cancel-btn",className:"mr-3",onClick:r,children:"Cancel"}),(0,n.jsx)(a.wpx,{htmlType:"submit",type:"primary",disabled:!i||!t,"data-testid":"save-btn",children:"Save"})]})]})})}})},C=e=>{let{isOpen:i,onClose:t}=e;return(0,n.jsx)(d.Z,{isOpen:i,onClose:t,title:"Add SSO Provider",children:(0,n.jsx)(b,{onClose:t})})},k=e=>{let{isOpen:i,onClose:t,openIDProvider:r}=e;return(0,n.jsx)(d.Z,{isOpen:i,onClose:t,title:"Edit SSO Provider",children:(0,n.jsx)(b,{openIDProvider:r,onClose:t})})},q=e=>{let{openIDProvider:i}=e,{onOpen:t,isOpen:r,onClose:s}=(0,a.qY0)(),{onOpen:o,isOpen:l,onClose:d}=(0,a.qY0)(),c=(0,a.pmc)(),[u]=(0,f.rB)(),g=async()=>{let e=await u(i.identifier);if((0,p.D4)(e)){c((0,x.Vo)((0,p.e$)(e.error))),d();return}c((0,x.t5)("SSO provider deleted successfully")),d()};return(0,n.jsxs)(a.xuv,{alignItems:"center",borderRadius:"lg",borderWidth:"1px",display:"flex",height:"74px",marginBottom:"24px",padding:2,children:[(0,n.jsxs)(a.xuv,{display:"flex",alignItems:"center",children:[(0,n.jsx)(a.Eep,{src:"/images/oauth-login/".concat(i.provider,".svg"),alt:"".concat(i.provider," icon"),width:"40px",height:"40px"}),(0,n.jsxs)(a.xuv,{display:"flex",flexDirection:"column",children:[(0,n.jsx)(a.xvT,{fontSize:"medium",fontWeight:"bold",marginLeft:"16px",children:i.name}),(0,n.jsx)(a.xvT,{fontSize:"medium",marginLeft:"16px",children:i.identifier})]})]}),(0,n.jsxs)(a.xuv,{flexGrow:1,display:"flex",justifyContent:"flex-end",children:[(0,n.jsx)(a.wpx,{className:"mr-3",onClick:o,"data-testid":"remove-sso-provider-btn",children:"Remove"}),(0,n.jsx)(a.wpx,{className:"mr-3",onClick:t,"data-testid":"edit-sso-provider-btn",children:"Edit"})]}),(0,n.jsx)(k,{isOpen:r,onClose:s,openIDProvider:i}),(0,n.jsx)(a.cVQ,{isOpen:l,onClose:d,onConfirm:g,title:"Remove SSO provider",message:(0,n.jsx)(a.xvT,{children:"You are about to permanently remove this SSO provider. Are you sure you would like to continue?"})})]})},S=()=>{let{onOpen:e,isOpen:i,onClose:t}=(0,a.qY0)(),{data:r}=(0,f.qv)();return(0,n.jsxs)(a.xuv,{maxWidth:"600px",marginTop:"40px",children:[(0,n.jsxs)(a.X6q,{marginBottom:4,fontSize:"lg",display:"flex",justifyContent:"space-between",children:["SSO Providers",r&&r.length<5&&(0,n.jsx)(a.wpx,{onClick:e,"data-testid":"add-sso-provider-btn",children:"Add SSO Provider"})]}),(0,n.jsx)(a.xvT,{marginBottom:"30px",fontSize:"sm",children:"Use this area to add and manage SSO providers for you organization. Select “Add SSO provider” to add a new provider."}),null==r?void 0:r.map(e=>(0,n.jsx)(q,{openIDProvider:e},e.identifier)),(0,n.jsx)(C,{isOpen:i,onClose:t})]})},_=t(83265);let R={description:"",fides_key:_.Av,name:""},T=e=>({...e}),z=e=>({description:e.description,fides_key:e.fides_key,name:e.name}),w=g.Ry().shape({description:g.Z_().required().label("Description"),fides_key:g.Z_().required().label("Organization Fides Key"),name:g.Z_().required().label("Name")}),O=e=>{let{organization:i,onSuccess:t}=e,[r,s]=(0,_.$f)(),o=(0,u.useMemo)(()=>i?T(i):R,[i]),l=(0,a.pmc)(),d=async(e,i)=>{let n=z(e);(r=>{if((0,p.D4)(r)){let e=(0,p.e$)(r.error,"An unexpected error occurred while editing the organization. Please try again.");l((0,x.Vo)(e))}else l((0,x.t5)("Organization configuration saved.")),i.resetForm({values:e}),t&&t(n)})(await r(n))},g=!i||s.isLoading;return(0,n.jsx)(c.J9,{initialValues:o,enableReinitialize:!0,onSubmit:d,validationSchema:w,children:e=>{let{dirty:i,isValid:t}=e;return(0,n.jsx)(c.l0,{"data-testid":"organization-form",children:(0,n.jsxs)(a.Kqy,{spacing:4,children:[(0,n.jsx)(m.j0,{id:"fides_key",name:"fides_key",label:"Fides Key",disabled:!0,tooltip:"A unique key that identifies your organization. Not editable via UI.",variant:"stacked"}),(0,n.jsx)(m.j0,{id:"name",name:"name",label:"Name",disabled:g,tooltip:"User-friendly name for your organization, used in messaging to end-users and other public locations.",variant:"stacked"}),(0,n.jsx)(m.j0,{id:"description",name:"description",label:"Description",disabled:g,tooltip:"Short description of your organization, your services, etc.",variant:"stacked"}),(0,n.jsx)(a.xuv,{textAlign:"right",children:(0,n.jsx)(a.wpx,{htmlType:"submit",type:"primary",disabled:g||!i||!t,loading:g,"data-testid":"save-btn",children:"Save"})})]})})}})};var P=t(21910),I=()=>{let{data:e}=(0,_.GQ)(_.Av),{plus:i}=(0,s.hz)();return(0,n.jsx)(o.Z,{title:"Organization",children:(0,n.jsxs)(a.xuv,{"data-testid":"organization-management",children:[(0,n.jsx)(l.Z,{heading:"Organization Management"}),(0,n.jsxs)(a.xuv,{maxWidth:"600px",children:[(0,n.jsx)(a.xvT,{pb:6,fontSize:"sm",children:"Please use this section to manage your organization‘s details, including key information that will be recorded in the RoPA (Record of Processing Activities)."}),(0,n.jsx)(a.xuv,{background:"gray.50",padding:2,children:(0,n.jsx)(O,{organization:e})}),i&&(0,n.jsx)(r.ZP,{scopes:[P.Sh.OPENID_PROVIDER_CREATE],children:(0,n.jsx)(S,{})})]})]})})}}},function(e){e.O(0,[2888,9774,179],function(){return e(e.s=85082)}),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2828],{85082:function(e,i,t){(window.__NEXT_P=window.__NEXT_P||[]).push(["/settings/organization",function(){return t(5417)}])},77213:function(e,i,t){"use strict";t.d(i,{Z:function(){return m}});var n=t(24246),r=t(20595),a=t(88038),s=t.n(a),o=t(86677);t(27378);var l=t(25980),d=t(90867),c=t(42478),u=t(77830),g=()=>{let e=(0,o.useRouter)();return(0,n.jsx)(r.xuv,{bg:"gray.50",border:"1px solid",borderColor:"blue.400",borderRadius:"md",justifyContent:"space-between",p:5,mb:5,mt:5,children:(0,n.jsxs)(r.xuv,{children:[(0,n.jsxs)(r.Kqy,{direction:{base:"column",sm:"row"},justifyContent:"space-between",children:[(0,n.jsx)(r.xvT,{fontWeight:"semibold",children:"Configure your storage and messaging provider"}),(0,n.jsx)(r.wpx,{onClick:()=>{e.push(u.AD)},children:"Configure"})]}),(0,n.jsxs)(r.xvT,{children:["Before Fides can process your privacy requests we need two simple steps to configure your storage and email client."," "]})]})})},m=e=>{let{children:i,title:t,padded:a=!0,mainProps:u}=e,m=(0,l.hz)(),p=(0,o.useRouter)(),x="/privacy-requests"===p.pathname||"/datastore-connection"===p.pathname,f=!(m.flags.messagingConfiguration&&x),{data:v}=(0,c.JE)(void 0,{skip:f}),{data:h}=(0,d.PW)(void 0,{skip:f}),j=m.flags.messagingConfiguration&&(!v||!h)&&x;return(0,n.jsxs)(r.kCb,{"data-testid":t,direction:"column",h:"100vh",children:[(0,n.jsxs)(s(),{children:[(0,n.jsxs)("title",{children:["Fides Admin UI - ",t]}),(0,n.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,n.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,n.jsxs)(r.kCb,{as:"main",direction:"column",py:a?6:0,px:a?10:0,h:a?"calc(100% - 48px)":"full",flex:1,minWidth:0,overflow:"auto",...u,children:[j?(0,n.jsx)(g,{}):null,i]})]})}},58754:function(e,i,t){"use strict";var n=t(24246),r=t(20595),a=t(70788);i.Z=e=>{let{heading:i,breadcrumbItems:t,isSticky:s=!0,children:o,rightContent:l,style:d,...c}=e;return(0,n.jsxs)("div",{...c,style:s?{position:"sticky",top:"-24px",paddingTop:"24px",paddingBottom:"24px",paddingLeft:"40px",marginLeft:"-40px",paddingRight:"40px",marginRight:"-40px",marginTop:"-24px",left:0,zIndex:20,backgroundColor:"white",...d}:{paddingBottom:"24px",...d},children:[(0,n.jsxs)(r.jqI,{justify:"space-between",children:["string"==typeof i?(0,n.jsx)(r.lQT,{className:t||o?"pb-4":void 0,level:1,"data-testid":"page-heading",children:i}):i,l&&(0,n.jsx)("div",{"data-testid":"page-header-right-content",children:l})]}),!!t&&(0,n.jsx)(a.m,{className:o?"pb-4":void 0,items:t,"data-testid":"page-breadcrumb"}),o]})}},19904:function(e,i,t){"use strict";t.d(i,{Tg:function(){return s}});var n=t(24246),r=t(16134),a=t(31793);let s=e=>(0,r.C)(a.uu).filter(i=>e.includes(i)).length>0;i.ZP=e=>{let{scopes:i,children:t}=e;return s(i)?(0,n.jsx)(n.Fragment,{children:t}):null}},97181:function(e,i,t){"use strict";t.d(i,{d:function(){return d}});var n=t(24246),r=t(20595),a=t(34090),s=t(27378),o=t(46238),l=t(40324);let d=e=>{let{name:i,label:t,labelProps:d,tooltip:c,isRequired:u,layout:g="inline",helperText:m,...p}=e,[x,f,{setValue:v}]=(0,a.U$)(i),h=!!(f.touched&&f.error),[j,y]=(0,s.useState)("");x.value||"tags"!==p.mode&&"multiple"!==p.mode||(x.value=[]),"tags"===p.mode&&"string"==typeof x.value&&(x.value=[x.value]);let b="tags"===p.mode?(e,i)=>e?e.value!==j||x.value.includes(j)?p.optionRender?p.optionRender(e,i):e.label:'Create "'.concat(j,'"'):void 0:p.optionRender||void 0,C=e=>{y(e),p.onSearch&&p.onSearch(e)},k=(e,i)=>{v(e),p.onChange&&p.onChange(e,i)};return"inline"===g?(0,n.jsx)(r.NIc,{isInvalid:h,isRequired:u,children:(0,n.jsxs)(r.rjZ,{templateColumns:t?"1fr 3fr":"1fr",children:[t?(0,n.jsx)(l.__,{htmlFor:p.id||i,...d,children:t}):null,(0,n.jsxs)(r.jqI,{align:"center",children:[(0,n.jsxs)(r.jqI,{vertical:!0,flex:1,className:"mr-2",children:[(0,n.jsx)(r.WPr,{...x,id:p.id||i,"data-testid":"controlled-select-".concat(x.name),...p,optionRender:b,onSearch:"tags"===p.mode?C:void 0,onChange:k,value:x.value||void 0,status:h?"error":void 0}),m&&(0,n.jsx)(r.Q6r,{children:m}),(0,n.jsx)(l.Bc,{isInvalid:h,message:f.error,fieldName:x.name})]}),(0,n.jsx)(o.b,{label:c,className:h?"mt-2 self-start":void 0})]})]})}):(0,n.jsx)(r.NIc,{isInvalid:h,isRequired:u,children:(0,n.jsxs)(r.gCW,{alignItems:"start",children:[(0,n.jsxs)(r.jqI,{align:"center",children:[t?(0,n.jsx)(l.__,{htmlFor:p.id||i,fontSize:"xs",my:0,mr:1,...d,children:t}):null,(0,n.jsx)(o.b,{label:c})]}),(0,n.jsx)(r.WPr,{...x,id:p.id||i,"data-testid":"controlled-select-".concat(x.name),...p,optionRender:b,onSearch:"tags"===p.mode?C:void 0,onChange:k,value:x.value||void 0,status:h?"error":void 0}),m&&(0,n.jsx)(r.Q6r,{style:{marginTop:0},children:m}),(0,n.jsx)(l.Bc,{isInvalid:h,message:f.error,fieldName:x.name})]})})}},8133:function(e,i,t){"use strict";var n=t(24246),r=t(20595);i.Z=e=>{let{title:i,children:t,isOpen:a,onClose:s,modalContentProps:o,showCloseButton:l=!1,footer:d,...c}=e;return(0,n.jsxs)(r.u_l,{isOpen:a,onClose:s,isCentered:!0,scrollBehavior:"inside",size:"xl",id:"add-modal",...c,children:[(0,n.jsx)(r.ZAr,{}),(0,n.jsxs)(r.hzk,{textAlign:"left",p:0,"data-testid":"add-modal-content",...o,children:[l&&(0,n.jsx)(r.olH,{}),(0,n.jsx)(r.xBx,{p:0,children:(0,n.jsx)(r.xuv,{backgroundColor:"gray.50",px:6,py:4,border:"1px",borderColor:"gray.200",borderTopRadius:6,display:"flex",justifyContent:"space-between",alignItems:"center",children:(0,n.jsx)(r.X6q,{as:"h3",size:"sm",children:i})})}),(0,n.jsx)(r.fef,{pb:4,overflow:"auto",children:t}),d&&(0,n.jsx)(r.mzw,{children:d})]})]})}},70788:function(e,i,t){"use strict";t.d(i,{m:function(){return d}});var n=t(24246),r=t(20595),a=t(79894),s=t.n(a),o=t(27378);let{Text:l}=r.AntTypography,d=e=>{let{items:i,...t}=e,a=(0,o.useMemo)(()=>null==i?void 0:i.map((e,t)=>{let a=t===i.length-1,o={...e},d=o.onClick&&!o.href;return("string"==typeof o.title&&(o.title=(0,n.jsx)(l,{style:{color:"inherit",maxWidth:a?void 0:400},ellipsis:!a,id:a?"breadcrumb-current-page":void 0,children:o.title})),d)?o.title=(0,n.jsx)(r.wpx,{type:"text",size:"small",icon:o.icon,onClick:o.onClick,className:"ant-breadcrumb-link -mt-px px-1 text-inherit",children:o.title}):(o.icon&&(o.title=(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"anticon align-text-bottom",children:o.icon}),o.title]})),o.href&&o.title&&(o.title=(0,n.jsx)(s(),{href:o.href,className:"ant-breadcrumb-link",children:o.title}),delete o.href)),o}),[i]);return(0,n.jsx)(r.zrq,{items:a,...t})}},42478:function(e,i,t){"use strict";t.d(i,{FU:function(){return d},JE:function(){return r},Ki:function(){return u},SU:function(){return g},W:function(){return m},h9:function(){return a},jc:function(){return n},qt:function(){return l},sn:function(){return c}});let{useGetEmailInviteStatusQuery:n,useGetActiveMessagingProviderQuery:r,useCreateMessagingConfigurationMutation:a,useCreateMessagingConfigurationSecretsMutation:s,useGetMessagingConfigurationDetailsQuery:o,useGetMessagingConfigurationsQuery:l,useGetMessagingConfigurationByKeyQuery:d,useUpdateMessagingConfigurationByKeyMutation:c,useUpdateMessagingConfigurationSecretsByKeyMutation:u,useCreateTestConnectionMessageMutation:g,useDeleteMessagingConfigurationByKeyMutation:m}=t(78780).u.injectEndpoints({endpoints:e=>({getEmailInviteStatus:e.query({query:()=>({url:"/messaging/email-invite/status"}),providesTags:()=>["Email Invite Status"]}),createMessagingConfiguration:e.mutation({query:e=>({url:"messaging/config",method:"POST",body:e}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getActiveMessagingProvider:e.query({queryFn:async(e,i,t,n)=>{let r=await n({url:"messaging/default/active"});return r.error&&404===r.error.status?{data:null}:r},providesTags:["Messaging Config"]}),createMessagingConfigurationSecrets:e.mutation({query:e=>({url:"messaging/default/".concat(e.service_type,"/secret"),method:"PUT",body:e.details}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getMessagingConfigurationDetails:e.query({query:e=>({url:"messaging/default/".concat(e.type)}),providesTags:["Messaging Config"]}),getMessagingConfigurations:e.query({query:()=>({url:"messaging/config"}),providesTags:["Messaging Config"]}),getMessagingConfigurationByKey:e.query({query:e=>({url:"messaging/config/".concat(e.key)}),providesTags:["Messaging Config"]}),createTestConnectionMessage:e.mutation({query:e=>({url:"messaging/test/".concat(e.service_type),method:"POST",body:e.details}),invalidatesTags:["Messaging Config"]}),updateMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"PATCH",body:e.config}),invalidatesTags:["Messaging Config","Configuration Settings"]}),updateMessagingConfigurationSecretsByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key,"/secret"),method:"PUT",body:e.secrets}),invalidatesTags:["Messaging Config","Configuration Settings"]}),deleteMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"DELETE"}),invalidatesTags:["Messaging Config","Configuration Settings"]})})})},5417:function(e,i,t){"use strict";t.r(i),t.d(i,{default:function(){return I}});var n=t(24246),r=t(19904),a=t(20595),s=t(25980),o=t(77213),l=t(58754),d=t(8133),c=t(34090),u=t(27378),g=t(55484),m=t(40324),p=t(812),x=t(46628),f=t(76174),v=t(97181);let h={identifier:"",name:"",client_id:"",client_secret:""},j=e=>({...e}),y=g.Ry().shape({provider:g.Z_().required().label("Provider"),name:g.Z_().required().label("Name"),client_id:g.Z_().required().label("Client ID"),client_secret:g.Z_().required().label("Client Secret")});var b=e=>{let{openIDProvider:i,onSuccess:t,onClose:r}=e,[s]=(0,f.Qc)(),[o]=(0,f.oP)(),l=(0,u.useMemo)(()=>i?j(i):h,[i]),d=(0,a.pmc)(),g=async(e,i)=>{(e=>{if((0,p.D4)(e)){let i=(0,p.e$)(e.error,"An unexpected error occurred while editing the SSO provider. Please try again.");d((0,x.Vo)(i))}else d((0,x.t5)("SSO provider configuration saved.")),r(),i.resetForm({}),t&&t(e.data)})(l.id?await o(e):await s(e))},b=[{label:"Azure",value:"azure"},{label:"Google",value:"google"},{label:"Okta",value:"okta"},{label:"Custom",value:"custom"}],C=()=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(m.j0,{id:"authorization_url",name:"authorization_url",label:"Authorization URL",tooltip:"Authorization URL for your provider",variant:"stacked",isRequired:!0}),(0,n.jsx)(m.j0,{id:"token_url",name:"token_url",label:"Token URL",tooltip:"Token URL for your provider",variant:"stacked",isRequired:!0})]}),k=()=>(0,n.jsx)(m.j0,{id:"domain",name:"domain",label:"Domain",tooltip:"Domain for your Okta provider",variant:"stacked",isRequired:!0}),q=()=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(m.j0,{id:"authorization_url",name:"authorization_url",label:"Authorization URL",tooltip:"Authorization URL for your provider",variant:"stacked",isRequired:!0}),(0,n.jsx)(m.j0,{id:"token_url",name:"token_url",label:"Token URL",tooltip:"Token URL for your provider",variant:"stacked",isRequired:!0}),(0,n.jsx)(m.j0,{id:"userinfo_url",name:"user_info_url",label:"User Info URL",tooltip:"User Info URL for your provider",variant:"stacked",isRequired:!0})]});return(0,n.jsx)(c.J9,{initialValues:l,enableReinitialize:!0,onSubmit:g,validationSchema:y,children:e=>{let{dirty:i,isValid:t,values:s}=e;return(0,n.jsx)(c.l0,{"data-testid":"openIDProvider-form",children:(0,n.jsxs)(a.Kqy,{spacing:4,children:[(0,n.jsx)(v.d,{name:"provider",label:"Provider",options:b,layout:"stacked",isRequired:!0}),(0,n.jsx)(m.j0,{id:"identifier",name:"identifier",label:"Identifier",tooltip:"Unique identifier for your provider",variant:"stacked",isRequired:!0,disabled:!!l.id}),(0,n.jsx)(m.j0,{id:"name",name:"name",label:"Name",tooltip:"Display name for your provider",variant:"stacked",isRequired:!0}),(0,n.jsx)(m.j0,{id:"client_id",name:"client_id",label:"Client ID",type:"password",tooltip:"Client ID for your provider",variant:"stacked",isRequired:!0}),(0,n.jsx)(m.j0,{id:"client_secret",name:"client_secret",label:"Client secret",type:"password",tooltip:"Client secret for your provider",variant:"stacked",isRequired:!0}),"azure"===s.provider&&C(),"okta"===s.provider&&k(),"custom"===s.provider&&q(),(0,n.jsxs)(a.xuv,{textAlign:"right",children:[(0,n.jsx)(a.wpx,{htmlType:"button","data-testid":"cancel-btn",className:"mr-3",onClick:r,children:"Cancel"}),(0,n.jsx)(a.wpx,{htmlType:"submit",type:"primary",disabled:!i||!t,"data-testid":"save-btn",children:"Save"})]})]})})}})},C=e=>{let{isOpen:i,onClose:t}=e;return(0,n.jsx)(d.Z,{isOpen:i,onClose:t,title:"Add SSO Provider",children:(0,n.jsx)(b,{onClose:t})})},k=e=>{let{isOpen:i,onClose:t,openIDProvider:r}=e;return(0,n.jsx)(d.Z,{isOpen:i,onClose:t,title:"Edit SSO Provider",children:(0,n.jsx)(b,{openIDProvider:r,onClose:t})})},q=e=>{let{openIDProvider:i}=e,{onOpen:t,isOpen:r,onClose:s}=(0,a.qY0)(),{onOpen:o,isOpen:l,onClose:d}=(0,a.qY0)(),c=(0,a.pmc)(),[u]=(0,f.rB)(),g=async()=>{let e=await u(i.identifier);if((0,p.D4)(e)){c((0,x.Vo)((0,p.e$)(e.error))),d();return}c((0,x.t5)("SSO provider deleted successfully")),d()};return(0,n.jsxs)(a.xuv,{alignItems:"center",borderRadius:"lg",borderWidth:"1px",display:"flex",height:"74px",marginBottom:"24px",padding:2,children:[(0,n.jsxs)(a.xuv,{display:"flex",alignItems:"center",children:[(0,n.jsx)(a.Eep,{src:"/images/oauth-login/".concat(i.provider,".svg"),alt:"".concat(i.provider," icon"),width:"40px",height:"40px"}),(0,n.jsxs)(a.xuv,{display:"flex",flexDirection:"column",children:[(0,n.jsx)(a.xvT,{fontSize:"medium",fontWeight:"bold",marginLeft:"16px",children:i.name}),(0,n.jsx)(a.xvT,{fontSize:"medium",marginLeft:"16px",children:i.identifier})]})]}),(0,n.jsxs)(a.xuv,{flexGrow:1,display:"flex",justifyContent:"flex-end",children:[(0,n.jsx)(a.wpx,{className:"mr-3",onClick:o,"data-testid":"remove-sso-provider-btn",children:"Remove"}),(0,n.jsx)(a.wpx,{className:"mr-3",onClick:t,"data-testid":"edit-sso-provider-btn",children:"Edit"})]}),(0,n.jsx)(k,{isOpen:r,onClose:s,openIDProvider:i}),(0,n.jsx)(a.cVQ,{isOpen:l,onClose:d,onConfirm:g,title:"Remove SSO provider",message:(0,n.jsx)(a.xvT,{children:"You are about to permanently remove this SSO provider. Are you sure you would like to continue?"})})]})},S=()=>{let{onOpen:e,isOpen:i,onClose:t}=(0,a.qY0)(),{data:r}=(0,f.qv)();return(0,n.jsxs)(a.xuv,{maxWidth:"600px",marginTop:"40px",children:[(0,n.jsxs)(a.X6q,{marginBottom:4,fontSize:"lg",display:"flex",justifyContent:"space-between",children:["SSO Providers",r&&r.length<5&&(0,n.jsx)(a.wpx,{onClick:e,"data-testid":"add-sso-provider-btn",children:"Add SSO Provider"})]}),(0,n.jsx)(a.xvT,{marginBottom:"30px",fontSize:"sm",children:"Use this area to add and manage SSO providers for you organization. Select “Add SSO provider” to add a new provider."}),null==r?void 0:r.map(e=>(0,n.jsx)(q,{openIDProvider:e},e.identifier)),(0,n.jsx)(C,{isOpen:i,onClose:t})]})},_=t(83265);let R={description:"",fides_key:_.Av,name:""},T=e=>({...e}),z=e=>({description:e.description,fides_key:e.fides_key,name:e.name}),w=g.Ry().shape({description:g.Z_().required().label("Description"),fides_key:g.Z_().required().label("Organization Fides Key"),name:g.Z_().required().label("Name")}),O=e=>{let{organization:i,onSuccess:t}=e,[r,s]=(0,_.$f)(),o=(0,u.useMemo)(()=>i?T(i):R,[i]),l=(0,a.pmc)(),d=async(e,i)=>{let n=z(e);(r=>{if((0,p.D4)(r)){let e=(0,p.e$)(r.error,"An unexpected error occurred while editing the organization. Please try again.");l((0,x.Vo)(e))}else l((0,x.t5)("Organization configuration saved.")),i.resetForm({values:e}),t&&t(n)})(await r(n))},g=!i||s.isLoading;return(0,n.jsx)(c.J9,{initialValues:o,enableReinitialize:!0,onSubmit:d,validationSchema:w,children:e=>{let{dirty:i,isValid:t}=e;return(0,n.jsx)(c.l0,{"data-testid":"organization-form",children:(0,n.jsxs)(a.Kqy,{spacing:4,children:[(0,n.jsx)(m.j0,{id:"fides_key",name:"fides_key",label:"Fides Key",disabled:!0,tooltip:"A unique key that identifies your organization. Not editable via UI.",variant:"stacked"}),(0,n.jsx)(m.j0,{id:"name",name:"name",label:"Name",disabled:g,tooltip:"User-friendly name for your organization, used in messaging to end-users and other public locations.",variant:"stacked"}),(0,n.jsx)(m.j0,{id:"description",name:"description",label:"Description",disabled:g,tooltip:"Short description of your organization, your services, etc.",variant:"stacked"}),(0,n.jsx)(a.xuv,{textAlign:"right",children:(0,n.jsx)(a.wpx,{htmlType:"submit",type:"primary",disabled:g||!i||!t,loading:g,"data-testid":"save-btn",children:"Save"})})]})})}})};var P=t(85054),I=()=>{let{data:e}=(0,_.GQ)(_.Av),{plus:i}=(0,s.hz)();return(0,n.jsx)(o.Z,{title:"Organization",children:(0,n.jsxs)(a.xuv,{"data-testid":"organization-management",children:[(0,n.jsx)(l.Z,{heading:"Organization Management"}),(0,n.jsxs)(a.xuv,{maxWidth:"600px",children:[(0,n.jsx)(a.xvT,{pb:6,fontSize:"sm",children:"Please use this section to manage your organization‘s details, including key information that will be recorded in the RoPA (Record of Processing Activities)."}),(0,n.jsx)(a.xuv,{background:"gray.50",padding:2,children:(0,n.jsx)(O,{organization:e})}),i&&(0,n.jsx)(r.ZP,{scopes:[P.Sh.OPENID_PROVIDER_CREATE],children:(0,n.jsx)(S,{})})]})]})})}}},function(e){e.O(0,[2888,9774,179],function(){return e(e.s=85082)}),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8687],{69489:function(e,t,n){(window.__NEXT_P=window.__NEXT_P||[]).push(["/settings/privacy-requests",function(){return n(26819)}])},77213:function(e,t,n){"use strict";n.d(t,{Z:function(){return p}});var i=n(24246),a=n(20595),s=n(88038),r=n.n(s),o=n(86677);n(27378);var l=n(25980),d=n(90867),c=n(42478),u=n(77830),g=()=>{let e=(0,o.useRouter)();return(0,i.jsx)(a.xuv,{bg:"gray.50",border:"1px solid",borderColor:"blue.400",borderRadius:"md",justifyContent:"space-between",p:5,mb:5,mt:5,children:(0,i.jsxs)(a.xuv,{children:[(0,i.jsxs)(a.Kqy,{direction:{base:"column",sm:"row"},justifyContent:"space-between",children:[(0,i.jsx)(a.xvT,{fontWeight:"semibold",children:"Configure your storage and messaging provider"}),(0,i.jsx)(a.wpx,{onClick:()=>{e.push(u.AD)},children:"Configure"})]}),(0,i.jsxs)(a.xvT,{children:["Before Fides can process your privacy requests we need two simple steps to configure your storage and email client."," "]})]})})},p=e=>{let{children:t,title:n,padded:s=!0,mainProps:u}=e,p=(0,l.hz)(),m=(0,o.useRouter)(),f="/privacy-requests"===m.pathname||"/datastore-connection"===m.pathname,x=!(p.flags.messagingConfiguration&&f),{data:h}=(0,c.JE)(void 0,{skip:x}),{data:y}=(0,d.PW)(void 0,{skip:x}),v=p.flags.messagingConfiguration&&(!h||!y)&&f;return(0,i.jsxs)(a.kCb,{"data-testid":n,direction:"column",h:"100vh",children:[(0,i.jsxs)(r(),{children:[(0,i.jsxs)("title",{children:["Fides Admin UI - ",n]}),(0,i.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,i.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,i.jsxs)(a.kCb,{as:"main",direction:"column",py:s?6:0,px:s?10:0,h:s?"calc(100% - 48px)":"full",flex:1,minWidth:0,overflow:"auto",...u,children:[v?(0,i.jsx)(g,{}):null,t]})]})}},58754:function(e,t,n){"use strict";var i=n(24246),a=n(20595),s=n(70788);t.Z=e=>{let{heading:t,breadcrumbItems:n,isSticky:r=!0,children:o,rightContent:l,style:d,...c}=e;return(0,i.jsxs)("div",{...c,style:r?{position:"sticky",top:"-24px",paddingTop:"24px",paddingBottom:"24px",paddingLeft:"40px",marginLeft:"-40px",paddingRight:"40px",marginRight:"-40px",marginTop:"-24px",left:0,zIndex:20,backgroundColor:"white",...d}:{paddingBottom:"24px",...d},children:[(0,i.jsxs)(a.jqI,{justify:"space-between",children:["string"==typeof t?(0,i.jsx)(a.lQT,{className:n||o?"pb-4":void 0,level:1,"data-testid":"page-heading",children:t}):t,l&&(0,i.jsx)("div",{"data-testid":"page-header-right-content",children:l})]}),!!n&&(0,i.jsx)(s.m,{className:o?"pb-4":void 0,items:n,"data-testid":"page-breadcrumb"}),o]})}},10342:function(e,t,n){"use strict";var i=n(24246),a=n(20595),s=n(46238);t.Z=e=>{let{title:t,tooltip:n,children:r,...o}=e;return(0,i.jsxs)(a.xuv,{borderRadius:"md",border:"1px solid",borderColor:"gray.200",...o,children:[(0,i.jsxs)(a.X6q,{as:"h3",fontSize:"sm",fontWeight:"semibold",color:"gray.700",py:4,px:6,backgroundColor:"gray.50",borderRadius:"md",textAlign:"left",children:[t,n?(0,i.jsx)(a.xvT,{as:"span",mx:1,children:(0,i.jsx)(s.b,{label:n})}):void 0]}),(0,i.jsx)(a.Kqy,{p:6,spacing:6,children:r})]})}},70788:function(e,t,n){"use strict";n.d(t,{m:function(){return d}});var i=n(24246),a=n(20595),s=n(79894),r=n.n(s),o=n(27378);let{Text:l}=a.AntTypography,d=e=>{let{items:t,...n}=e,s=(0,o.useMemo)(()=>null==t?void 0:t.map((e,n)=>{let s=n===t.length-1,o={...e},d=o.onClick&&!o.href;return("string"==typeof o.title&&(o.title=(0,i.jsx)(l,{style:{color:"inherit",maxWidth:s?void 0:400},ellipsis:!s,id:s?"breadcrumb-current-page":void 0,children:o.title})),d)?o.title=(0,i.jsx)(a.wpx,{type:"text",size:"small",icon:o.icon,onClick:o.onClick,className:"ant-breadcrumb-link -mt-px px-1 text-inherit",children:o.title}):(o.icon&&(o.title=(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)("span",{className:"anticon align-text-bottom",children:o.icon}),o.title]})),o.href&&o.title&&(o.title=(0,i.jsx)(r(),{href:o.href,className:"ant-breadcrumb-link",children:o.title}),delete o.href)),o}),[t]);return(0,i.jsx)(a.zrq,{items:s,...n})}},42478:function(e,t,n){"use strict";n.d(t,{FU:function(){return d},JE:function(){return a},Ki:function(){return u},SU:function(){return g},W:function(){return p},h9:function(){return s},jc:function(){return i},qt:function(){return l},sn:function(){return c}});let{useGetEmailInviteStatusQuery:i,useGetActiveMessagingProviderQuery:a,useCreateMessagingConfigurationMutation:s,useCreateMessagingConfigurationSecretsMutation:r,useGetMessagingConfigurationDetailsQuery:o,useGetMessagingConfigurationsQuery:l,useGetMessagingConfigurationByKeyQuery:d,useUpdateMessagingConfigurationByKeyMutation:c,useUpdateMessagingConfigurationSecretsByKeyMutation:u,useCreateTestConnectionMessageMutation:g,useDeleteMessagingConfigurationByKeyMutation:p}=n(78780).u.injectEndpoints({endpoints:e=>({getEmailInviteStatus:e.query({query:()=>({url:"/messaging/email-invite/status"}),providesTags:()=>["Email Invite Status"]}),createMessagingConfiguration:e.mutation({query:e=>({url:"messaging/config",method:"POST",body:e}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getActiveMessagingProvider:e.query({queryFn:async(e,t,n,i)=>{let a=await i({url:"messaging/default/active"});return a.error&&404===a.error.status?{data:null}:a},providesTags:["Messaging Config"]}),createMessagingConfigurationSecrets:e.mutation({query:e=>({url:"messaging/default/".concat(e.service_type,"/secret"),method:"PUT",body:e.details}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getMessagingConfigurationDetails:e.query({query:e=>({url:"messaging/default/".concat(e.type)}),providesTags:["Messaging Config"]}),getMessagingConfigurations:e.query({query:()=>({url:"messaging/config"}),providesTags:["Messaging Config"]}),getMessagingConfigurationByKey:e.query({query:e=>({url:"messaging/config/".concat(e.key)}),providesTags:["Messaging Config"]}),createTestConnectionMessage:e.mutation({query:e=>({url:"messaging/test/".concat(e.service_type),method:"POST",body:e.details}),invalidatesTags:["Messaging Config"]}),updateMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"PATCH",body:e.config}),invalidatesTags:["Messaging Config","Configuration Settings"]}),updateMessagingConfigurationSecretsByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key,"/secret"),method:"PUT",body:e.secrets}),invalidatesTags:["Messaging Config","Configuration Settings"]}),deleteMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"DELETE"}),invalidatesTags:["Messaging Config","Configuration Settings"]})})})},26819:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return y}});var i=n(24246),a=n(77213),s=n(58754),r=n(20595),o=n(34090),l=n(55484),d=n(10342),c=n(40324),u=n(812),g=n(17245);let{useGetPrivacyRequestRedactionPatternsQuery:p,useUpdatePrivacyRequestRedactionPatternsMutation:m}=n(78780).u.injectEndpoints({endpoints:e=>({getPrivacyRequestRedactionPatterns:e.query({query:()=>({url:"privacy-request/redaction-patterns",method:"GET"}),providesTags:["Privacy Request Redaction Patterns"]}),updatePrivacyRequestRedactionPatterns:e.mutation({query:e=>({url:"privacy-request/redaction-patterns",method:"PUT",body:e}),invalidatesTags:["Privacy Request Redaction Patterns"]})})}),f=e=>!!(e&&e.trim().length>0),x=l.Ry().shape({patterns:l.IX().nullable().of(l.Ry().shape({id:l.Z_().required(),value:l.Z_().required().test("is-valid-pattern","Pattern cannot be empty",f).label("Pattern")}))});var h=()=>{let{errorAlert:e,successAlert:t}=(0,g.VY)(),{data:n}=p(void 0),[a,{isLoading:s}]=m(),l=async n=>{let i=n.patterns.filter(e=>f(e.value)).map(e=>e.value.trim()),s=await a({patterns:i});(0,u.D4)(s)?e((0,u.e$)(s.error),"Failed to update privacy request redaction patterns"):t("Privacy request redaction patterns updated successfully.")},h={patterns:((null==n?void 0:n.patterns)||[]).map((e,t)=>({id:"pattern-".concat(t),value:e}))};return(0,i.jsx)(r.xuv,{"data-testid":"privacy-request-redaction-patterns",children:(0,i.jsxs)(r.xuv,{maxW:"600px",children:[(0,i.jsx)(r.xvT,{fontSize:"sm",pb:6,children:"List of regex patterns used to mask dataset, collection, and field names in DSR package reports. Names matching these patterns will be replaced with position-based identifiers (e.g. dataset_1, collection_2, field_3)."}),(0,i.jsx)(d.Z,{"data-testid":"privacy-request-redaction-patterns-form",title:"Regex patterns",children:(0,i.jsx)(o.J9,{initialValues:h,enableReinitialize:!0,onSubmit:l,validationSchema:x,validateOnChange:!0,children:e=>{let{dirty:t,values:n,isValid:a}=e;return(0,i.jsxs)(o.l0,{children:[(0,i.jsx)(o.F2,{name:"patterns",render:e=>(0,i.jsxs)(r.kCb,{flexDir:"column",children:[n.patterns.map((t,n)=>(0,i.jsxs)(r.kCb,{flexDir:"row",my:3,children:[(0,i.jsx)(c.j0,{variant:"stacked",name:"patterns[".concat(n,"].value"),placeholder:"Enter regex pattern (e.g., sensitive_.*)"}),(0,i.jsx)(r.wpx,{"aria-label":"remove-pattern",className:"z-[2] ml-4",icon:(0,i.jsx)(r.pJl,{}),onClick:()=>{e.remove(n)}})]},t.id)),(0,i.jsx)(r.kCb,{justifyContent:"center",mt:3,children:(0,i.jsx)(r.wpx,{"aria-label":"add-pattern",className:"w-full",onClick:()=>{e.push({id:"pattern-new-".concat(n.patterns.length),value:""})},children:"Add regex pattern +"})})]})}),(0,i.jsx)(r.xuv,{mt:6,textAlign:"right",children:(0,i.jsx)(r.wpx,{htmlType:"submit",type:"primary",disabled:s||!t||!a,loading:s,"data-testid":"save-btn",children:"Save"})})]})}})})]})})},y=()=>(0,i.jsxs)(a.Z,{title:"Privacy request redaction patterns",children:[(0,i.jsx)(s.Z,{heading:"Privacy request redaction patterns"}),(0,i.jsx)(h,{})]})}},function(e){e.O(0,[431,7245,2888,9774,179],function(){return e(e.s=69489)}),_N_E=e.O()}]);
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4650],{68523:function(e,n,t){(window.__NEXT_P=window.__NEXT_P||[]).push(["/settings/regulations",function(){return t(66773)}])},66773:function(e,n,t){"use strict";t.r(n),t.d(n,{default:function(){return q}});var i=t(24246),s=t(96306),l=t(79894),o=t.n(l),a=t(16134),r=t(77213),c=t(77830),d=t(58754),u=t(64781),h=t(98784),g=t.n(h),m=t(86677),x=t(27378),p=t(812),j=t(58452),C=t(26917),v=t(46628),f=t(26089),y=t(31883),w=t(61524),_=t(67991),S=t(12282),k=e=>{let{regulations:n,isOpen:t,onClose:l,selected:o,onChange:a}=e,[r,c]=(0,x.useState)(o),{allSelected:d,handleToggleAll:u,handleToggleSelection:h}=(0,_.QZ)({items:n,selected:r,onChange:c}),g=r.length,m=n[0].continent;return(0,i.jsxs)(s.u_l,{size:"2xl",isOpen:t,onClose:l,isCentered:!0,children:[(0,i.jsx)(s.ZAr,{}),(0,i.jsxs)(s.hzk,{"data-testid":"regulation-modal",children:[(0,i.jsx)(S.h4,{title:"Select regulations"}),(0,i.jsxs)(s.fef,{p:6,maxHeight:"70vh",overflowY:"auto",children:[(0,i.jsx)(S.x$,{title:m,allSelected:d,onToggleAll:u,numSelected:g}),(0,i.jsx)(s.MIq,{columns:3,spacing:6,paddingInline:4,children:n.map(e=>(0,i.jsx)(s.XZJ,{size:"sm",colorScheme:"complimentary",isChecked:r.includes(e.id),onChange:()=>h(e.id),"data-testid":"".concat(e.name,"-checkbox"),children:e.name},e.id))})]}),(0,i.jsx)(S.$_,{onApply:()=>{a(r),l()},onClose:l})]})]})},O=e=>{let{title:n,items:t,selected:l,onChange:o}=e,a=(0,s.qY0)();return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(w.ZP,{title:n,items:t,selected:l,onChange:o,numSelected:l.length,indeterminate:[],onViewMore:t.length>w.I_?a.onOpen:void 0}),(0,i.jsx)(k,{regulations:t,isOpen:a.isOpen,onClose:a.onClose,selected:l,onChange:o},"regulation-modal-selected-".concat(l.length))]})},Z=t(85759);let b=(e,n)=>{var t;return null===(t=e.name)||void 0===t?void 0:t.toLocaleLowerCase().includes(n.toLocaleLowerCase())};var N=e=>{var n;let{data:t}=e,l=(0,s.pmc)(),o=(0,s.qY0)(),[a,r]=(0,x.useState)(null!==(n=t.regulations)&&void 0!==n?n:[]),[d,h]=(0,x.useState)(""),[w,{isLoading:_}]=(0,u.WA)(),S=(0,x.useMemo)(()=>{var e,n;let i=null!==(n=null===(e=t.regulations)||void 0===e?void 0:e.filter(e=>b(e,d)))&&void 0!==n?n:[];return(0,Z.F7)(i)},[t.regulations,d]),k=!g().isEqual(a,t.regulations),N=(0,m.useRouter)(),q=()=>{N.push(c.r5).then(()=>{l.closeAll()})},E=async()=>{let e=await w({regulations:a.map(e=>({id:e.id,selected:e.selected})),locations:[]});(0,y.D4)(e)?l((0,v.Vo)((0,p.e$)(e.error))):l((0,v.t5)((0,i.jsxs)(s.xvT,{display:"inline",children:["Fides has automatically associated the relevant locations with your regulation choices.",(0,i.jsx)(f.Z,{onClick:q,children:"View locations here."})]})))},L=e=>{r(a.map(n=>{let t=e.find(e=>e.id===n.id);return null!=t?t:n}))};return(0,i.jsxs)(s.gCW,{alignItems:"start",spacing:4,children:[(0,i.jsx)(s.xuv,{maxWidth:"510px",width:"100%",children:(0,i.jsx)(C.Z,{onChange:h,placeholder:"Search",value:d,onClear:()=>h("")})}),(0,i.jsx)(s.MIq,{columns:{base:1,md:2,xl:3},spacing:6,width:"100%",children:Object.entries(S).map(e=>{let[n,t]=e,s=a.filter(e=>t.find(n=>n.id===e.id)&&e.selected).map(e=>e.id);return(0,i.jsx)(O,{title:n,items:t,selected:s,onChange:e=>{L(t.map(n=>e.includes(n.id)?{...n,selected:!0}:{...n,selected:!1}))}},n)})}),(0,i.jsx)(j.Z,{isOpen:o.isOpen,onClose:o.onClose,onConfirm:()=>{E(),o.onClose()},title:"Location updates",message:"Modifications in your regulation settings may also affect your location settings to simplify management. You can override any Fides-initiated changes directly in the location settings.",isCentered:!0,icon:(0,i.jsx)(s.aNP,{color:"orange"})}),k&&(0,i.jsx)(s.wpx,{type:"primary",onClick:o.onOpen,loading:_,"data-testid":"save-btn",children:"Save"})]})},q=()=>{let{isLoading:e}=(0,u.QM)(),n=(0,a.C)(u.P8);return(0,i.jsx)(r.Z,{title:"Regulations",children:(0,i.jsxs)(s.xuv,{"data-testid":"regulation-management",children:[(0,i.jsx)(d.Z,{heading:"Regulations"}),(0,i.jsxs)(s.xvT,{pb:6,fontSize:"sm",maxWidth:"600px",children:["Select the regulations that apply to your organizations compliance requirements. The selections you make here will automatically update your location selections."," ",(0,i.jsx)(s.rUS,{as:o(),href:c.r5,color:"complimentary.500",children:"You can view your location settings here."})]}),(0,i.jsx)(s.xuv,{children:e?(0,i.jsx)(s.$jN,{}):(0,i.jsx)(N,{data:n})})]})})}}},function(e){e.O(0,[9826,2888,9774,179],function(){return e(e.s=68523)}),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4650],{68523:function(e,n,t){(window.__NEXT_P=window.__NEXT_P||[]).push(["/settings/regulations",function(){return t(66773)}])},66773:function(e,n,t){"use strict";t.r(n),t.d(n,{default:function(){return q}});var i=t(24246),s=t(20595),l=t(79894),o=t.n(l),a=t(16134),r=t(77213),c=t(77830),d=t(58754),u=t(64781),h=t(98784),g=t.n(h),m=t(86677),x=t(27378),p=t(812),j=t(58452),C=t(26917),v=t(46628),f=t(26089),y=t(31883),w=t(61524),_=t(67991),S=t(12282),k=e=>{let{regulations:n,isOpen:t,onClose:l,selected:o,onChange:a}=e,[r,c]=(0,x.useState)(o),{allSelected:d,handleToggleAll:u,handleToggleSelection:h}=(0,_.QZ)({items:n,selected:r,onChange:c}),g=r.length,m=n[0].continent;return(0,i.jsxs)(s.u_l,{size:"2xl",isOpen:t,onClose:l,isCentered:!0,children:[(0,i.jsx)(s.ZAr,{}),(0,i.jsxs)(s.hzk,{"data-testid":"regulation-modal",children:[(0,i.jsx)(S.h4,{title:"Select regulations"}),(0,i.jsxs)(s.fef,{p:6,maxHeight:"70vh",overflowY:"auto",children:[(0,i.jsx)(S.x$,{title:m,allSelected:d,onToggleAll:u,numSelected:g}),(0,i.jsx)(s.MIq,{columns:3,spacing:6,paddingInline:4,children:n.map(e=>(0,i.jsx)(s.XZJ,{size:"sm",colorScheme:"complimentary",isChecked:r.includes(e.id),onChange:()=>h(e.id),"data-testid":"".concat(e.name,"-checkbox"),children:e.name},e.id))})]}),(0,i.jsx)(S.$_,{onApply:()=>{a(r),l()},onClose:l})]})]})},O=e=>{let{title:n,items:t,selected:l,onChange:o}=e,a=(0,s.qY0)();return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(w.ZP,{title:n,items:t,selected:l,onChange:o,numSelected:l.length,indeterminate:[],onViewMore:t.length>w.I_?a.onOpen:void 0}),(0,i.jsx)(k,{regulations:t,isOpen:a.isOpen,onClose:a.onClose,selected:l,onChange:o},"regulation-modal-selected-".concat(l.length))]})},Z=t(85759);let b=(e,n)=>{var t;return null===(t=e.name)||void 0===t?void 0:t.toLocaleLowerCase().includes(n.toLocaleLowerCase())};var N=e=>{var n;let{data:t}=e,l=(0,s.pmc)(),o=(0,s.qY0)(),[a,r]=(0,x.useState)(null!==(n=t.regulations)&&void 0!==n?n:[]),[d,h]=(0,x.useState)(""),[w,{isLoading:_}]=(0,u.WA)(),S=(0,x.useMemo)(()=>{var e,n;let i=null!==(n=null===(e=t.regulations)||void 0===e?void 0:e.filter(e=>b(e,d)))&&void 0!==n?n:[];return(0,Z.F7)(i)},[t.regulations,d]),k=!g().isEqual(a,t.regulations),N=(0,m.useRouter)(),q=()=>{N.push(c.r5).then(()=>{l.closeAll()})},E=async()=>{let e=await w({regulations:a.map(e=>({id:e.id,selected:e.selected})),locations:[]});(0,y.D4)(e)?l((0,v.Vo)((0,p.e$)(e.error))):l((0,v.t5)((0,i.jsxs)(s.xvT,{display:"inline",children:["Fides has automatically associated the relevant locations with your regulation choices.",(0,i.jsx)(f.Z,{onClick:q,children:"View locations here."})]})))},L=e=>{r(a.map(n=>{let t=e.find(e=>e.id===n.id);return null!=t?t:n}))};return(0,i.jsxs)(s.gCW,{alignItems:"start",spacing:4,children:[(0,i.jsx)(s.xuv,{maxWidth:"510px",width:"100%",children:(0,i.jsx)(C.Z,{onChange:h,placeholder:"Search",value:d,onClear:()=>h("")})}),(0,i.jsx)(s.MIq,{columns:{base:1,md:2,xl:3},spacing:6,width:"100%",children:Object.entries(S).map(e=>{let[n,t]=e,s=a.filter(e=>t.find(n=>n.id===e.id)&&e.selected).map(e=>e.id);return(0,i.jsx)(O,{title:n,items:t,selected:s,onChange:e=>{L(t.map(n=>e.includes(n.id)?{...n,selected:!0}:{...n,selected:!1}))}},n)})}),(0,i.jsx)(j.Z,{isOpen:o.isOpen,onClose:o.onClose,onConfirm:()=>{E(),o.onClose()},title:"Location updates",message:"Modifications in your regulation settings may also affect your location settings to simplify management. You can override any Fides-initiated changes directly in the location settings.",isCentered:!0,icon:(0,i.jsx)(s.aNP,{color:"orange"})}),k&&(0,i.jsx)(s.wpx,{type:"primary",onClick:o.onOpen,loading:_,"data-testid":"save-btn",children:"Save"})]})},q=()=>{let{isLoading:e}=(0,u.QM)(),n=(0,a.C)(u.P8);return(0,i.jsx)(r.Z,{title:"Regulations",children:(0,i.jsxs)(s.xuv,{"data-testid":"regulation-management",children:[(0,i.jsx)(d.Z,{heading:"Regulations"}),(0,i.jsxs)(s.xvT,{pb:6,fontSize:"sm",maxWidth:"600px",children:["Select the regulations that apply to your organizations compliance requirements. The selections you make here will automatically update your location selections."," ",(0,i.jsx)(s.rUS,{as:o(),href:c.r5,color:"complimentary.500",children:"You can view your location settings here."})]}),(0,i.jsx)(s.xuv,{children:e?(0,i.jsx)(s.$jN,{}):(0,i.jsx)(N,{data:n})})]})})}}},function(e){e.O(0,[9826,2888,9774,179],function(){return e(e.s=68523)}),_N_E=e.O()}]);
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1617],{54543:function(e,t,i){(window.__NEXT_P=window.__NEXT_P||[]).push(["/systems/configure/[id]/test-datasets",function(){return i(94010)}])},18225:function(e,t,i){"use strict";var n=i(24246),s=i(96306);t.Z=e=>{let{alignment:t="center",...i}=e;return(0,n.jsx)(s.kCb,{boxSize:"full",align:"center",justify:t,children:(0,n.jsx)(s.$jN,{color:"primary",...i})})}},77213:function(e,t,i){"use strict";i.d(t,{Z:function(){return g}});var n=i(24246),s=i(96306),r=i(88038),a=i.n(r),l=i(86677);i(27378);var o=i(25980),d=i(90867),u=i(42478),c=i(77830),f=()=>{let e=(0,l.useRouter)();return(0,n.jsx)(s.xuv,{bg:"gray.50",border:"1px solid",borderColor:"blue.400",borderRadius:"md",justifyContent:"space-between",p:5,mb:5,mt:5,children:(0,n.jsxs)(s.xuv,{children:[(0,n.jsxs)(s.Kqy,{direction:{base:"column",sm:"row"},justifyContent:"space-between",children:[(0,n.jsx)(s.xvT,{fontWeight:"semibold",children:"Configure your storage and messaging provider"}),(0,n.jsx)(s.wpx,{onClick:()=>{e.push(c.AD)},children:"Configure"})]}),(0,n.jsxs)(s.xvT,{children:["Before Fides can process your privacy requests we need two simple steps to configure your storage and email client."," "]})]})})},g=e=>{let{children:t,title:i,padded:r=!0,mainProps:c}=e,g=(0,o.hz)(),p=(0,l.useRouter)(),m="/privacy-requests"===p.pathname||"/datastore-connection"===p.pathname,h=!(g.flags.messagingConfiguration&&m),{data:y}=(0,u.JE)(void 0,{skip:h}),{data:v}=(0,d.PW)(void 0,{skip:h}),x=g.flags.messagingConfiguration&&(!y||!v)&&m;return(0,n.jsxs)(s.kCb,{"data-testid":i,direction:"column",h:"100vh",children:[(0,n.jsxs)(a(),{children:[(0,n.jsxs)("title",{children:["Fides Admin UI - ",i]}),(0,n.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,n.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,n.jsxs)(s.kCb,{as:"main",direction:"column",py:r?6:0,px:r?10:0,h:r?"calc(100% - 48px)":"full",flex:1,minWidth:0,overflow:"auto",...c,children:[x?(0,n.jsx)(f,{}):null,t]})]})}},58754:function(e,t,i){"use strict";var n=i(24246),s=i(96306),r=i(70788);t.Z=e=>{let{heading:t,breadcrumbItems:i,isSticky:a=!0,children:l,rightContent:o,style:d,...u}=e;return(0,n.jsxs)("div",{...u,style:a?{position:"sticky",top:"-24px",paddingTop:"24px",paddingBottom:"24px",paddingLeft:"40px",marginLeft:"-40px",paddingRight:"40px",marginRight:"-40px",marginTop:"-24px",left:0,zIndex:20,backgroundColor:"white",...d}:{paddingBottom:"24px",...d},children:[(0,n.jsxs)(s.jqI,{justify:"space-between",children:["string"==typeof t?(0,n.jsx)(s.lQT,{className:i||l?"pb-4":void 0,level:1,"data-testid":"page-heading",children:t}):t,o&&(0,n.jsx)("div",{"data-testid":"page-header-right-content",children:o})]}),!!i&&(0,n.jsx)(r.m,{className:l?"pb-4":void 0,items:i,"data-testid":"page-breadcrumb"}),l]})}},70788:function(e,t,i){"use strict";i.d(t,{m:function(){return d}});var n=i(24246),s=i(96306),r=i(79894),a=i.n(r),l=i(27378);let{Text:o}=s.AntTypography,d=e=>{let{items:t,...i}=e,r=(0,l.useMemo)(()=>null==t?void 0:t.map((e,i)=>{let r=i===t.length-1,l={...e},d=l.onClick&&!l.href;return("string"==typeof l.title&&(l.title=(0,n.jsx)(o,{style:{color:"inherit",maxWidth:r?void 0:400},ellipsis:!r,id:r?"breadcrumb-current-page":void 0,children:l.title})),d)?l.title=(0,n.jsx)(s.wpx,{type:"text",size:"small",icon:l.icon,onClick:l.onClick,className:"ant-breadcrumb-link -mt-px px-1 text-inherit",children:l.title}):(l.icon&&(l.title=(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"anticon align-text-bottom",children:l.icon}),l.title]})),l.href&&l.title&&(l.title=(0,n.jsx)(a(),{href:l.href,className:"ant-breadcrumb-link",children:l.title}),delete l.href)),l}),[t]);return(0,n.jsx)(s.zrq,{items:r,...i})}},41207:function(e,t,i){"use strict";i.d(t,{F:function(){return a},M:function(){return r}});var n=i(76649),s=i(65218);let r=i.n(s)()(()=>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},42478:function(e,t,i){"use strict";i.d(t,{FU:function(){return d},JE:function(){return s},Ki:function(){return c},SU:function(){return f},W:function(){return g},h9:function(){return r},jc:function(){return n},qt:function(){return o},sn:function(){return u}});let{useGetEmailInviteStatusQuery:n,useGetActiveMessagingProviderQuery:s,useCreateMessagingConfigurationMutation:r,useCreateMessagingConfigurationSecretsMutation:a,useGetMessagingConfigurationDetailsQuery:l,useGetMessagingConfigurationsQuery:o,useGetMessagingConfigurationByKeyQuery:d,useUpdateMessagingConfigurationByKeyMutation:u,useUpdateMessagingConfigurationSecretsByKeyMutation:c,useCreateTestConnectionMessageMutation:f,useDeleteMessagingConfigurationByKeyMutation:g}=i(78780).u.injectEndpoints({endpoints:e=>({getEmailInviteStatus:e.query({query:()=>({url:"/messaging/email-invite/status"}),providesTags:()=>["Email Invite Status"]}),createMessagingConfiguration:e.mutation({query:e=>({url:"messaging/config",method:"POST",body:e}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getActiveMessagingProvider:e.query({queryFn:async(e,t,i,n)=>{let s=await n({url:"messaging/default/active"});return s.error&&404===s.error.status?{data:null}:s},providesTags:["Messaging Config"]}),createMessagingConfigurationSecrets:e.mutation({query:e=>({url:"messaging/default/".concat(e.service_type,"/secret"),method:"PUT",body:e.details}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getMessagingConfigurationDetails:e.query({query:e=>({url:"messaging/default/".concat(e.type)}),providesTags:["Messaging Config"]}),getMessagingConfigurations:e.query({query:()=>({url:"messaging/config"}),providesTags:["Messaging Config"]}),getMessagingConfigurationByKey:e.query({query:e=>({url:"messaging/config/".concat(e.key)}),providesTags:["Messaging Config"]}),createTestConnectionMessage:e.mutation({query:e=>({url:"messaging/test/".concat(e.service_type),method:"POST",body:e.details}),invalidatesTags:["Messaging Config"]}),updateMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"PATCH",body:e.config}),invalidatesTags:["Messaging Config","Configuration Settings"]}),updateMessagingConfigurationSecretsByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key,"/secret"),method:"PUT",body:e.secrets}),invalidatesTags:["Messaging Config","Configuration Settings"]}),deleteMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"DELETE"}),invalidatesTags:["Messaging Config","Configuration Settings"]})})})},94010:function(e,t,i){"use strict";i.r(t),i.d(t,{default:function(){return A}});var n=i(24246),s=i(96306),r=i(86677),a=i(18225),l=i(77213),o=i(77830),d=i(58754),u=i(1315),c=i(66527),f=i(27378),g=i(16134),p=i(88340),m=i(812),h=i(46628),y=i(41207),v=i(41966),x=i(94725),b=i(88124);let _=e=>Array.isArray(e)?e.map(e=>_(e)).filter(e=>null!==e):e&&"object"==typeof e?Object.fromEntries(Object.entries(e).map(e=>{let[t,i]=e;return[t,_(i)]}).filter(e=>{let[,t]=e;return null!==t})):e,j=e=>{if(Array.isArray(e)){let t=e[0];if(!t)return"";let i=t.msg||"",n=t.loc?" (".concat(t.loc,")"):"";return"".concat(i).concat(n)}return e};var C=e=>{let{connectionKey:t}=e,i=(0,s.pmc)(),r=(0,g.T)(),[a]=(0,v.TG)(),[l,o]=(0,f.useState)(""),d=(0,g.C)(b.fD),u=(0,g.C)(b.lR),{data:C,isLoading:k,refetch:T}=(0,x.Eg)(t,{skip:!t}),{data:w,refetch:S}=(0,x.tW)({connectionKey:t,datasetKey:(null==d?void 0:d.fides_key)||"",policyKey:u},{skip:!t||!(null==d?void 0:d.fides_key)||!u});(0,f.useEffect)(()=>{w&&r((0,b.x0)(w.reachable))},[w,r]);let E=(0,f.useMemo)(()=>((null==C?void 0:C.items)||[]).map(e=>({value:e.fides_key,label:e.fides_key})),[null==C?void 0:C.items]);(0,f.useEffect)(()=>{if((null==C?void 0:C.items.length)&&(!d||!C.items.find(e=>e.fides_key===d.fides_key))){let e=C.items[0];r((0,b.w7)(e))}},[C,d,r]),(0,f.useEffect)(()=>{(null==d?void 0:d.ctl_dataset)&&o(c.ZP.dump(_(null==d?void 0:d.ctl_dataset)))},[d]),(0,f.useEffect)(()=>{u&&(null==d?void 0:d.fides_key)&&t&&S()},[u,null==d?void 0:d.fides_key,t,S]),(0,f.useEffect)(()=>{w&&r((0,b.x0)(w.reachable))},[w,r]);let q=async e=>{let t=null==C?void 0:C.items.find(t=>t.fides_key===e);t&&r((0,b.w7)(t))},M=async()=>{let e;if(!d)return;try{e=c.ZP.load(l)}catch(e){i((0,h.Vo)("YAML Parsing Error: ".concat(e instanceof c._L?"".concat(e.reason," ").concat(e.mark?"at line ".concat(e.mark.line):""):"Invalid YAML format")));return}let t=await a(e);if((0,m.D4)(t)){i((0,h.Vo)((0,m.e$)(t.error)));return}r((0,b.w7)({fides_key:d.fides_key,ctl_dataset:t.data})),i((0,h.t5)("Successfully modified dataset")),await T(),await S()},O=async()=>{try{let{data:e}=await T(),t=null==e?void 0:e.items.find(e=>e.fides_key===(null==d?void 0:d.fides_key));(null==t?void 0:t.ctl_dataset)&&o(c.ZP.dump(_(t.ctl_dataset))),i((0,h.t5)("Successfully refreshed datasets"))}catch(e){i((0,h.Vo)((0,m.e$)(e)))}};return(0,n.jsxs)(s.gCW,{alignItems:"stretch",flex:"1",maxWidth:"70vw",maxHeight:"100vh",children:[(0,n.jsxs)(s.X6q,{as:"h3",size:"sm",display:"flex",alignItems:"center",justifyContent:"space-between",children:[(0,n.jsxs)(s.Ugi,{children:[(0,n.jsx)(s.xvT,{children:"Edit dataset: "}),(0,n.jsx)(s.WPr,{id:"format","data-testid":"export-format-select",value:(null==d?void 0:d.fides_key)||"",options:E,onChange:q,className:"w-64"}),(0,n.jsx)(p.Z,{copyText:l})]}),(0,n.jsxs)(s.Ugi,{spacing:2,children:[(0,n.jsx)(s.esZ,{title:"Refresh to load the latest data from the database. This will overwrite any unsaved local changes.",placement:"top",children:(0,n.jsx)(s.wpx,{htmlType:"submit",size:"small","data-testid":"refresh-btn",onClick:O,loading:k,children:"Refresh"})}),(0,n.jsx)(s.esZ,{title:"Save your changes to update the dataset in the database.",placement:"top",children:(0,n.jsx)(s.wpx,{htmlType:"submit",size:"small",onClick:M,children:"Save"})})]})]}),(0,n.jsx)(s.Kqy,{border:"1px solid",borderColor:"gray.200",borderRadius:"md",justifyContent:"space-between",py:4,pr:4,"data-testid":"empty-state",flex:"1 1 auto",minHeight:"200px",children:(0,n.jsx)(y.M,{defaultLanguage:"yaml",value:l,height:"100%",onChange:e=>o(e||""),onMount:()=>{},options:{fontFamily:"Menlo",fontSize:13,minimap:{enabled:!1},readOnly:!1,hideCursorInOverviewRuler:!0,overviewRulerBorder:!1,scrollBeyondLastLine:!1},theme:"light"})}),w&&(0,n.jsx)(s.Kqy,{backgroundColor:(null==w?void 0:w.reachable)?"green.50":"red.50",border:"1px solid",borderColor:(null==w?void 0:w.reachable)?"green.500":"red.500",borderRadius:"md",p:2,flexShrink:0,mt:2,children:(0,n.jsx)(s.Ugi,{alignItems:"center",children:(0,n.jsxs)(s.Ugi,{flex:"1",children:[(null==w?void 0:w.reachable)?(0,n.jsx)(s.StI,{}):(0,n.jsx)(s.f9v,{}),(0,n.jsx)(s.xvT,{fontSize:"sm",whiteSpace:"pre-wrap",children:(null==w?void 0:w.reachable)?"Dataset is reachable":"Dataset is not reachable. ".concat(j(null==w?void 0:w.details))})]})})})]})},k=i(54458),T=i(16125),w=i(99716);let S=e=>{let t=new Date(e);return(0,k.WU)(t,"yyyy-MM-dd HH:mm:ss.SSS")},E=e=>{switch(e){case"ERROR":return"red.500";case"WARNING":return"orange.500";case"INFO":return"blue.500";default:return"gray.500"}},q=(0,f.memo)(e=>{let{log:t}=e;return(0,n.jsxs)(s.xuv,{as:"pre",margin:0,fontSize:"xs",fontFamily:"monospace",whiteSpace:"pre-wrap",wordBreak:"break-word",children:[(0,n.jsx)(s.xvT,{as:"span",color:"green.500",children:S(t.timestamp)}),(0,n.jsx)(s.xvT,{as:"span",children:" | "}),(0,n.jsx)(s.xvT,{as:"span",color:E(t.level),children:t.level.padEnd(8)}),(0,n.jsx)(s.xvT,{as:"span",children:" | "}),(0,n.jsx)(s.xvT,{as:"span",color:"cyan.500",children:t.module_info}),(0,n.jsx)(s.xvT,{as:"span",children:" - "}),(0,n.jsx)(s.xvT,{as:"span",color:"ERROR"===t.level||"WARNING"===t.level?E(t.level):"gray.800",children:t.message})]})});q.displayName="LogLine";var M=(0,f.memo)(()=>{let e=(0,g.T)(),t=(0,f.useRef)(null),i=(0,T.v9)(b.HN),r=(0,T.v9)(b.pz),{data:a}=(0,w.fV)({privacy_request_id:i},{skip:!i,pollingInterval:1e3});(0,f.useEffect)(()=>{a&&e((0,b.Hy)(a))},[a,e]);let l=(0,f.useCallback)(()=>{t.current&&(t.current.scrollTop=t.current.scrollHeight)},[]);(0,f.useEffect)(()=>{l()},[r,l]);let o=(0,f.useMemo)(()=>(null==r?void 0:r.map(e=>"".concat(S(e.timestamp)," | ").concat(e.level," | ").concat(e.module_info," - ").concat(e.message)).join("\n"))||"",[r]);return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(s.X6q,{as:"h3",size:"sm",display:"flex",alignItems:"center",justifyContent:"space-between",children:(0,n.jsxs)(s.Ugi,{children:[(0,n.jsx)(s.xvT,{children:"Test logs"}),(0,n.jsx)(p.Z,{copyText:o})]})}),(0,n.jsx)(s.xuv,{ref:t,height:"200px",overflowY:"auto",borderWidth:1,borderColor:"gray.200",borderRadius:"md",p:2,children:null==r?void 0:r.map(e=>(0,n.jsx)(q,{log:e},"".concat(e.timestamp,"-").concat(e.module_info,"-").concat(e.message)))})]})}),O=i(46238);let{useGetPoliciesQuery:R}=i(78780).u.injectEndpoints({endpoints:e=>({getPolicies:e.query({query:()=>({url:"/dsr/policy"}),providesTags:()=>["Policies"]})})});var P=i(21910),N=i(31883),I=e=>{let{connectionKey:t}=e,i=(0,s.pmc)(),r=(0,g.T)(),[a]=(0,x.s7)(),l=(0,T.v9)(b.fD),o=(0,T.v9)(b.YS),d=(0,T.v9)(b.Af),u=(0,T.v9)(b.zn),c=(0,T.v9)(b.lR),y=(0,T.v9)(b.M_),v=(0,T.v9)(b.HN),[_,j]=(0,f.useState)("{}");(0,f.useEffect)(()=>{l&&j(JSON.stringify(u,null,2))},[l,u]);let{data:C,error:k}=(0,w.Z2)({privacy_request_id:v},{skip:!v||!(null==l?void 0:l.fides_key),pollingInterval:2e3}),{refetch:S}=(0,w.fV)({privacy_request_id:v},{skip:!v}),{refetch:E}=(0,x.I1)({connectionKey:t,datasetKey:(null==l?void 0:l.fides_key)||""},{skip:!t||!(null==l?void 0:l.fides_key),refetchOnMountOrArgChange:!0}),{data:q}=R(),M=(0,f.useMemo)(()=>((null==q?void 0:q.items)||[]).filter(e=>{var t;return null===(t=e.rules)||void 0===t?void 0:t.some(e=>"access"===e.action_type)}).map(e=>({value:e.key,label:e.name})),[null==q?void 0:q.items]);(0,f.useEffect)(()=>{let e=null==l?void 0:l.fides_key;t&&e&&E().then(t=>{t.data&&(null==l?void 0:l.fides_key)===e&&r((0,b.qD)({datasetKey:e,values:t.data}))})},[l,t,r,E]),(0,f.useEffect)(()=>{let e=null==l?void 0:l.fides_key;if(k&&"status"in k&&404===k.status){r((0,b.hT)()),i((0,h.Vo)("Test run failed"));return}if(!C||C.privacy_request_id!==v||!e)return;let t={datasetKey:e,values:JSON.stringify(C,null,2)};C.status===P.q2.COMPLETE?y&&S().then(()=>{r((0,b.EO)(t)),r((0,b.hT)()),i((0,h.t5)("Test run completed successfully"))}):C.status===P.q2.ERROR&&S().then(()=>{r((0,b.EO)(t)),r((0,b.hT)()),i((0,h.Vo)("Test run failed"))})},[C,k,v,l,y,r,i,S]);let I=(0,f.useMemo)(()=>c&&(null==q?void 0:q.items)?c:null,[c,null==q?void 0:q.items]),D=async()=>{if((null==l?void 0:l.fides_key)&&c)try{let e;try{e=JSON.parse(_)}catch(e){i((0,h.Vo)("Invalid JSON in test input"));return}r((0,b.Vh)(l.fides_key)),i((0,h.t5)("Test run started"));let n=await a({connection_key:t,dataset_key:l.fides_key,identities:e,policy_key:c});(0,N.D4)(n)?(i((0,h.Vo)((0,m.e$)(n.error))),r((0,b.hT)())):"data"in n?r((0,b.eY)(n.data.privacy_request_id)):(r((0,b.hT)()),i((0,h.Vo)("No privacy request ID in response")))}catch(e){r((0,b.hT)()),i((0,h.Vo)("Failed to start test run"))}};return(0,n.jsxs)(s.gCW,{alignItems:"stretch",flex:"1",maxWidth:"70vw",minHeight:"0",children:[(0,n.jsxs)(s.X6q,{as:"h3",size:"sm",display:"flex",alignItems:"center",justifyContent:"space-between",children:[(0,n.jsxs)(s.Ugi,{children:[(0,n.jsx)(s.xvT,{children:"Test inputs"}),(0,n.jsx)(p.Z,{copyText:_})]}),(0,n.jsxs)(s.Ugi,{children:[(0,n.jsx)(s.WPr,{id:"policy","aria-label":"Policy selector","data-testid":"policy-select",placeholder:"Select policy",value:I,options:M,onChange:e=>{r((0,b.kF)(e))},className:"w-64"}),(0,n.jsx)(s.wpx,{htmlType:"submit",size:"small",type:"primary","data-testid":"run-btn",onClick:y?()=>{r((0,b.qU)()),i((0,h.t5)("Test manually stopped by user"))}:D,disabled:!c||!o,children:y?"Stop":"Run"}),(0,n.jsx)(O.b,{label:y?"Stop the currently running test":"Run a test access request using the provided test input data and the selected access policy"})]})]}),(0,n.jsx)(s.gxH,{size:"sm",focusBorderColor:"primary.600",color:"gray.800",isDisabled:y,height:"100%",value:_,onChange:e=>{let t=e.target.value;j(t);try{let e=JSON.parse(t);l&&r((0,b.qD)({datasetKey:l.fides_key,values:e}))}catch(e){}}}),(0,n.jsxs)(s.X6q,{as:"h3",size:"sm",children:["Test results ",(0,n.jsx)(p.Z,{copyText:d})]}),(0,n.jsx)(s.gxH,{isReadOnly:!0,size:"sm",focusBorderColor:"primary.600",color:"gray.800",isDisabled:!1,height:"100%",value:d})]})};let D=e=>e.id?Array.isArray(e.id)?e.id[0]:e.id:"";var A=()=>{var e;let t=D((0,r.useRouter)().query),{data:i,isLoading:c}=(0,u.rn)(t,{skip:!t}),f=(null==i?void 0:null===(e=i.connection_configs)||void 0===e?void 0:e.key)||"";return c?(0,n.jsx)(l.Z,{title:"Systems",children:(0,n.jsx)(a.Z,{})}):(0,n.jsxs)(l.Z,{title:"System inventory",mainProps:{height:"100vh",display:"flex",flexDirection:"column"},children:[(0,n.jsx)(d.Z,{heading:"System inventory",breadcrumbItems:[{title:"System inventory",href:o.So},{title:(null==i?void 0:i.name)||"",href:"/systems/configure/".concat(t,"#integrations")},{title:"Test datasets"}]}),(0,n.jsxs)(s.gCW,{alignItems:"stretch",flex:"1",minHeight:"0",spacing:"4",padding:"0",children:[(0,n.jsxs)(s.Ugi,{alignItems:"stretch",flex:"1",minHeight:"0",spacing:"4",maxHeight:"60vh",children:[(0,n.jsx)(C,{connectionKey:f}),(0,n.jsx)(I,{connectionKey:f})]}),(0,n.jsx)(s.xuv,{flex:"0 0 auto",children:(0,n.jsx)(M,{})})]})]})}},31883:function(e,t,i){"use strict";i.d(t,{Bw:function(){return n.Bw},D4:function(){return n.D4}});var n=i(19043)},76737:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var i in t)Object.defineProperty(e,i,{enumerable:!0,get:t[i]})}(t,{default:function(){return l},noSSR:function(){return a}});let n=i(51538);i(24246),i(27378);let s=n._(i(21887));function r(e){return{default:(null==e?void 0:e.default)||e}}function a(e,t){return delete t.webpack,delete t.modules,e(t)}function l(e,t){let i=s.default,n={loading:e=>{let{error:t,isLoading:i,pastDelay:n}=e;return null}};e instanceof Promise?n.loader=()=>e:"function"==typeof e?n.loader=e:"object"==typeof e&&(n={...n,...e});let l=(n={...n,...t}).loader;return(n.loadableGenerated&&(n={...n,...n.loadableGenerated},delete n.loadableGenerated),"boolean"!=typeof n.ssr||n.ssr)?i({...n,loader:()=>null!=l?l().then(r):Promise.resolve(r(()=>null))}):(delete n.webpack,delete n.modules,a(i,n))}("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},28438:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"LoadableContext",{enumerable:!0,get:function(){return n}});let n=i(51538)._(i(27378)).default.createContext(null)},21887:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return f}});let n=i(51538)._(i(27378)),s=i(28438),r=[],a=[],l=!1;function o(e){let t=e(),i={loading:!0,loaded:null,error:null};return i.promise=t.then(e=>(i.loading=!1,i.loaded=e,e)).catch(e=>{throw i.loading=!1,i.error=e,e}),i}class d{promise(){return this._res.promise}retry(){this._clearTimeouts(),this._res=this._loadFn(this._opts.loader),this._state={pastDelay:!1,timedOut:!1};let{_res:e,_opts:t}=this;e.loading&&("number"==typeof t.delay&&(0===t.delay?this._state.pastDelay=!0:this._delay=setTimeout(()=>{this._update({pastDelay:!0})},t.delay)),"number"==typeof t.timeout&&(this._timeout=setTimeout(()=>{this._update({timedOut:!0})},t.timeout))),this._res.promise.then(()=>{this._update({}),this._clearTimeouts()}).catch(e=>{this._update({}),this._clearTimeouts()}),this._update({})}_update(e){this._state={...this._state,error:this._res.error,loaded:this._res.loaded,loading:this._res.loading,...e},this._callbacks.forEach(e=>e())}_clearTimeouts(){clearTimeout(this._delay),clearTimeout(this._timeout)}getCurrentValue(){return this._state}subscribe(e){return this._callbacks.add(e),()=>{this._callbacks.delete(e)}}constructor(e,t){this._loadFn=e,this._opts=t,this._callbacks=new Set,this._delay=null,this._timeout=null,this.retry()}}function u(e){return function(e,t){let i=Object.assign({loader:null,loading:null,delay:200,timeout:null,webpack:null,modules:null},t),r=null;function o(){if(!r){let t=new d(e,i);r={getCurrentValue:t.getCurrentValue.bind(t),subscribe:t.subscribe.bind(t),retry:t.retry.bind(t),promise:t.promise.bind(t)}}return r.promise()}if(!l){let e=i.webpack?i.webpack():i.modules;e&&a.push(t=>{for(let i of e)if(t.includes(i))return o()})}function u(e,t){!function(){o();let e=n.default.useContext(s.LoadableContext);e&&Array.isArray(i.modules)&&i.modules.forEach(t=>{e(t)})}();let a=n.default.useSyncExternalStore(r.subscribe,r.getCurrentValue,r.getCurrentValue);return n.default.useImperativeHandle(t,()=>({retry:r.retry}),[]),n.default.useMemo(()=>{var t;return a.loading||a.error?n.default.createElement(i.loading,{isLoading:a.loading,pastDelay:a.pastDelay,timedOut:a.timedOut,error:a.error,retry:r.retry}):a.loaded?n.default.createElement((t=a.loaded)&&t.default?t.default:t,e):null},[e,a])}return u.preload=()=>o(),u.displayName="LoadableComponent",n.default.forwardRef(u)}(o,e)}function c(e,t){let i=[];for(;e.length;){let n=e.pop();i.push(n(t))}return Promise.all(i).then(()=>{if(e.length)return c(e,t)})}u.preloadAll=()=>new Promise((e,t)=>{c(r).then(e,t)}),u.preloadReady=e=>(void 0===e&&(e=[]),new Promise(t=>{let i=()=>(l=!0,t());c(a,e).then(i,i)})),window.__NEXT_PRELOADREADY=u.preloadReady;let f=u},65218:function(e,t,i){e.exports=i(76737)}},function(e){e.O(0,[6527,2888,9774,179],function(){return e(e.s=54543)}),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1617],{54543:function(e,t,i){(window.__NEXT_P=window.__NEXT_P||[]).push(["/systems/configure/[id]/test-datasets",function(){return i(94010)}])},18225:function(e,t,i){"use strict";var n=i(24246),s=i(20595);t.Z=e=>{let{alignment:t="center",...i}=e;return(0,n.jsx)(s.kCb,{boxSize:"full",align:"center",justify:t,children:(0,n.jsx)(s.$jN,{color:"primary",...i})})}},77213:function(e,t,i){"use strict";i.d(t,{Z:function(){return g}});var n=i(24246),s=i(20595),r=i(88038),a=i.n(r),l=i(86677);i(27378);var o=i(25980),d=i(90867),u=i(42478),c=i(77830),f=()=>{let e=(0,l.useRouter)();return(0,n.jsx)(s.xuv,{bg:"gray.50",border:"1px solid",borderColor:"blue.400",borderRadius:"md",justifyContent:"space-between",p:5,mb:5,mt:5,children:(0,n.jsxs)(s.xuv,{children:[(0,n.jsxs)(s.Kqy,{direction:{base:"column",sm:"row"},justifyContent:"space-between",children:[(0,n.jsx)(s.xvT,{fontWeight:"semibold",children:"Configure your storage and messaging provider"}),(0,n.jsx)(s.wpx,{onClick:()=>{e.push(c.AD)},children:"Configure"})]}),(0,n.jsxs)(s.xvT,{children:["Before Fides can process your privacy requests we need two simple steps to configure your storage and email client."," "]})]})})},g=e=>{let{children:t,title:i,padded:r=!0,mainProps:c}=e,g=(0,o.hz)(),p=(0,l.useRouter)(),m="/privacy-requests"===p.pathname||"/datastore-connection"===p.pathname,h=!(g.flags.messagingConfiguration&&m),{data:y}=(0,u.JE)(void 0,{skip:h}),{data:v}=(0,d.PW)(void 0,{skip:h}),x=g.flags.messagingConfiguration&&(!y||!v)&&m;return(0,n.jsxs)(s.kCb,{"data-testid":i,direction:"column",h:"100vh",children:[(0,n.jsxs)(a(),{children:[(0,n.jsxs)("title",{children:["Fides Admin UI - ",i]}),(0,n.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,n.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,n.jsxs)(s.kCb,{as:"main",direction:"column",py:r?6:0,px:r?10:0,h:r?"calc(100% - 48px)":"full",flex:1,minWidth:0,overflow:"auto",...c,children:[x?(0,n.jsx)(f,{}):null,t]})]})}},58754:function(e,t,i){"use strict";var n=i(24246),s=i(20595),r=i(70788);t.Z=e=>{let{heading:t,breadcrumbItems:i,isSticky:a=!0,children:l,rightContent:o,style:d,...u}=e;return(0,n.jsxs)("div",{...u,style:a?{position:"sticky",top:"-24px",paddingTop:"24px",paddingBottom:"24px",paddingLeft:"40px",marginLeft:"-40px",paddingRight:"40px",marginRight:"-40px",marginTop:"-24px",left:0,zIndex:20,backgroundColor:"white",...d}:{paddingBottom:"24px",...d},children:[(0,n.jsxs)(s.jqI,{justify:"space-between",children:["string"==typeof t?(0,n.jsx)(s.lQT,{className:i||l?"pb-4":void 0,level:1,"data-testid":"page-heading",children:t}):t,o&&(0,n.jsx)("div",{"data-testid":"page-header-right-content",children:o})]}),!!i&&(0,n.jsx)(r.m,{className:l?"pb-4":void 0,items:i,"data-testid":"page-breadcrumb"}),l]})}},70788:function(e,t,i){"use strict";i.d(t,{m:function(){return d}});var n=i(24246),s=i(20595),r=i(79894),a=i.n(r),l=i(27378);let{Text:o}=s.AntTypography,d=e=>{let{items:t,...i}=e,r=(0,l.useMemo)(()=>null==t?void 0:t.map((e,i)=>{let r=i===t.length-1,l={...e},d=l.onClick&&!l.href;return("string"==typeof l.title&&(l.title=(0,n.jsx)(o,{style:{color:"inherit",maxWidth:r?void 0:400},ellipsis:!r,id:r?"breadcrumb-current-page":void 0,children:l.title})),d)?l.title=(0,n.jsx)(s.wpx,{type:"text",size:"small",icon:l.icon,onClick:l.onClick,className:"ant-breadcrumb-link -mt-px px-1 text-inherit",children:l.title}):(l.icon&&(l.title=(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"anticon align-text-bottom",children:l.icon}),l.title]})),l.href&&l.title&&(l.title=(0,n.jsx)(a(),{href:l.href,className:"ant-breadcrumb-link",children:l.title}),delete l.href)),l}),[t]);return(0,n.jsx)(s.zrq,{items:r,...i})}},41207:function(e,t,i){"use strict";i.d(t,{F:function(){return a},M:function(){return r}});var n=i(76649),s=i(65218);let r=i.n(s)()(()=>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},42478:function(e,t,i){"use strict";i.d(t,{FU:function(){return d},JE:function(){return s},Ki:function(){return c},SU:function(){return f},W:function(){return g},h9:function(){return r},jc:function(){return n},qt:function(){return o},sn:function(){return u}});let{useGetEmailInviteStatusQuery:n,useGetActiveMessagingProviderQuery:s,useCreateMessagingConfigurationMutation:r,useCreateMessagingConfigurationSecretsMutation:a,useGetMessagingConfigurationDetailsQuery:l,useGetMessagingConfigurationsQuery:o,useGetMessagingConfigurationByKeyQuery:d,useUpdateMessagingConfigurationByKeyMutation:u,useUpdateMessagingConfigurationSecretsByKeyMutation:c,useCreateTestConnectionMessageMutation:f,useDeleteMessagingConfigurationByKeyMutation:g}=i(78780).u.injectEndpoints({endpoints:e=>({getEmailInviteStatus:e.query({query:()=>({url:"/messaging/email-invite/status"}),providesTags:()=>["Email Invite Status"]}),createMessagingConfiguration:e.mutation({query:e=>({url:"messaging/config",method:"POST",body:e}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getActiveMessagingProvider:e.query({queryFn:async(e,t,i,n)=>{let s=await n({url:"messaging/default/active"});return s.error&&404===s.error.status?{data:null}:s},providesTags:["Messaging Config"]}),createMessagingConfigurationSecrets:e.mutation({query:e=>({url:"messaging/default/".concat(e.service_type,"/secret"),method:"PUT",body:e.details}),invalidatesTags:["Messaging Config","Configuration Settings"]}),getMessagingConfigurationDetails:e.query({query:e=>({url:"messaging/default/".concat(e.type)}),providesTags:["Messaging Config"]}),getMessagingConfigurations:e.query({query:()=>({url:"messaging/config"}),providesTags:["Messaging Config"]}),getMessagingConfigurationByKey:e.query({query:e=>({url:"messaging/config/".concat(e.key)}),providesTags:["Messaging Config"]}),createTestConnectionMessage:e.mutation({query:e=>({url:"messaging/test/".concat(e.service_type),method:"POST",body:e.details}),invalidatesTags:["Messaging Config"]}),updateMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"PATCH",body:e.config}),invalidatesTags:["Messaging Config","Configuration Settings"]}),updateMessagingConfigurationSecretsByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key,"/secret"),method:"PUT",body:e.secrets}),invalidatesTags:["Messaging Config","Configuration Settings"]}),deleteMessagingConfigurationByKey:e.mutation({query:e=>({url:"messaging/config/".concat(e.key),method:"DELETE"}),invalidatesTags:["Messaging Config","Configuration Settings"]})})})},94010:function(e,t,i){"use strict";i.r(t),i.d(t,{default:function(){return A}});var n=i(24246),s=i(20595),r=i(86677),a=i(18225),l=i(77213),o=i(77830),d=i(58754),u=i(1315),c=i(66527),f=i(27378),g=i(16134),p=i(88340),m=i(812),h=i(46628),y=i(41207),v=i(41966),x=i(94725),b=i(88124);let _=e=>Array.isArray(e)?e.map(e=>_(e)).filter(e=>null!==e):e&&"object"==typeof e?Object.fromEntries(Object.entries(e).map(e=>{let[t,i]=e;return[t,_(i)]}).filter(e=>{let[,t]=e;return null!==t})):e,j=e=>{if(Array.isArray(e)){let t=e[0];if(!t)return"";let i=t.msg||"",n=t.loc?" (".concat(t.loc,")"):"";return"".concat(i).concat(n)}return e};var C=e=>{let{connectionKey:t}=e,i=(0,s.pmc)(),r=(0,g.T)(),[a]=(0,v.TG)(),[l,o]=(0,f.useState)(""),d=(0,g.C)(b.fD),u=(0,g.C)(b.lR),{data:C,isLoading:k,refetch:T}=(0,x.Eg)(t,{skip:!t}),{data:w,refetch:S}=(0,x.tW)({connectionKey:t,datasetKey:(null==d?void 0:d.fides_key)||"",policyKey:u},{skip:!t||!(null==d?void 0:d.fides_key)||!u});(0,f.useEffect)(()=>{w&&r((0,b.x0)(w.reachable))},[w,r]);let E=(0,f.useMemo)(()=>((null==C?void 0:C.items)||[]).map(e=>({value:e.fides_key,label:e.fides_key})),[null==C?void 0:C.items]);(0,f.useEffect)(()=>{if((null==C?void 0:C.items.length)&&(!d||!C.items.find(e=>e.fides_key===d.fides_key))){let e=C.items[0];r((0,b.w7)(e))}},[C,d,r]),(0,f.useEffect)(()=>{(null==d?void 0:d.ctl_dataset)&&o(c.ZP.dump(_(null==d?void 0:d.ctl_dataset)))},[d]),(0,f.useEffect)(()=>{u&&(null==d?void 0:d.fides_key)&&t&&S()},[u,null==d?void 0:d.fides_key,t,S]),(0,f.useEffect)(()=>{w&&r((0,b.x0)(w.reachable))},[w,r]);let q=async e=>{let t=null==C?void 0:C.items.find(t=>t.fides_key===e);t&&r((0,b.w7)(t))},M=async()=>{let e;if(!d)return;try{e=c.ZP.load(l)}catch(e){i((0,h.Vo)("YAML Parsing Error: ".concat(e instanceof c._L?"".concat(e.reason," ").concat(e.mark?"at line ".concat(e.mark.line):""):"Invalid YAML format")));return}let t=await a(e);if((0,m.D4)(t)){i((0,h.Vo)((0,m.e$)(t.error)));return}r((0,b.w7)({fides_key:d.fides_key,ctl_dataset:t.data})),i((0,h.t5)("Successfully modified dataset")),await T(),await S()},O=async()=>{try{let{data:e}=await T(),t=null==e?void 0:e.items.find(e=>e.fides_key===(null==d?void 0:d.fides_key));(null==t?void 0:t.ctl_dataset)&&o(c.ZP.dump(_(t.ctl_dataset))),i((0,h.t5)("Successfully refreshed datasets"))}catch(e){i((0,h.Vo)((0,m.e$)(e)))}};return(0,n.jsxs)(s.gCW,{alignItems:"stretch",flex:"1",maxWidth:"70vw",maxHeight:"100vh",children:[(0,n.jsxs)(s.X6q,{as:"h3",size:"sm",display:"flex",alignItems:"center",justifyContent:"space-between",children:[(0,n.jsxs)(s.Ugi,{children:[(0,n.jsx)(s.xvT,{children:"Edit dataset: "}),(0,n.jsx)(s.WPr,{id:"format","data-testid":"export-format-select",value:(null==d?void 0:d.fides_key)||"",options:E,onChange:q,className:"w-64"}),(0,n.jsx)(p.Z,{copyText:l})]}),(0,n.jsxs)(s.Ugi,{spacing:2,children:[(0,n.jsx)(s.esZ,{title:"Refresh to load the latest data from the database. This will overwrite any unsaved local changes.",placement:"top",children:(0,n.jsx)(s.wpx,{htmlType:"submit",size:"small","data-testid":"refresh-btn",onClick:O,loading:k,children:"Refresh"})}),(0,n.jsx)(s.esZ,{title:"Save your changes to update the dataset in the database.",placement:"top",children:(0,n.jsx)(s.wpx,{htmlType:"submit",size:"small",onClick:M,children:"Save"})})]})]}),(0,n.jsx)(s.Kqy,{border:"1px solid",borderColor:"gray.200",borderRadius:"md",justifyContent:"space-between",py:4,pr:4,"data-testid":"empty-state",flex:"1 1 auto",minHeight:"200px",children:(0,n.jsx)(y.M,{defaultLanguage:"yaml",value:l,height:"100%",onChange:e=>o(e||""),onMount:()=>{},options:{fontFamily:"Menlo",fontSize:13,minimap:{enabled:!1},readOnly:!1,hideCursorInOverviewRuler:!0,overviewRulerBorder:!1,scrollBeyondLastLine:!1},theme:"light"})}),w&&(0,n.jsx)(s.Kqy,{backgroundColor:(null==w?void 0:w.reachable)?"green.50":"red.50",border:"1px solid",borderColor:(null==w?void 0:w.reachable)?"green.500":"red.500",borderRadius:"md",p:2,flexShrink:0,mt:2,children:(0,n.jsx)(s.Ugi,{alignItems:"center",children:(0,n.jsxs)(s.Ugi,{flex:"1",children:[(null==w?void 0:w.reachable)?(0,n.jsx)(s.StI,{}):(0,n.jsx)(s.f9v,{}),(0,n.jsx)(s.xvT,{fontSize:"sm",whiteSpace:"pre-wrap",children:(null==w?void 0:w.reachable)?"Dataset is reachable":"Dataset is not reachable. ".concat(j(null==w?void 0:w.details))})]})})})]})},k=i(54458),T=i(16125),w=i(99716);let S=e=>{let t=new Date(e);return(0,k.WU)(t,"yyyy-MM-dd HH:mm:ss.SSS")},E=e=>{switch(e){case"ERROR":return"red.500";case"WARNING":return"orange.500";case"INFO":return"blue.500";default:return"gray.500"}},q=(0,f.memo)(e=>{let{log:t}=e;return(0,n.jsxs)(s.xuv,{as:"pre",margin:0,fontSize:"xs",fontFamily:"monospace",whiteSpace:"pre-wrap",wordBreak:"break-word",children:[(0,n.jsx)(s.xvT,{as:"span",color:"green.500",children:S(t.timestamp)}),(0,n.jsx)(s.xvT,{as:"span",children:" | "}),(0,n.jsx)(s.xvT,{as:"span",color:E(t.level),children:t.level.padEnd(8)}),(0,n.jsx)(s.xvT,{as:"span",children:" | "}),(0,n.jsx)(s.xvT,{as:"span",color:"cyan.500",children:t.module_info}),(0,n.jsx)(s.xvT,{as:"span",children:" - "}),(0,n.jsx)(s.xvT,{as:"span",color:"ERROR"===t.level||"WARNING"===t.level?E(t.level):"gray.800",children:t.message})]})});q.displayName="LogLine";var M=(0,f.memo)(()=>{let e=(0,g.T)(),t=(0,f.useRef)(null),i=(0,T.v9)(b.HN),r=(0,T.v9)(b.pz),{data:a}=(0,w.fV)({privacy_request_id:i},{skip:!i,pollingInterval:1e3});(0,f.useEffect)(()=>{a&&e((0,b.Hy)(a))},[a,e]);let l=(0,f.useCallback)(()=>{t.current&&(t.current.scrollTop=t.current.scrollHeight)},[]);(0,f.useEffect)(()=>{l()},[r,l]);let o=(0,f.useMemo)(()=>(null==r?void 0:r.map(e=>"".concat(S(e.timestamp)," | ").concat(e.level," | ").concat(e.module_info," - ").concat(e.message)).join("\n"))||"",[r]);return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(s.X6q,{as:"h3",size:"sm",display:"flex",alignItems:"center",justifyContent:"space-between",children:(0,n.jsxs)(s.Ugi,{children:[(0,n.jsx)(s.xvT,{children:"Test logs"}),(0,n.jsx)(p.Z,{copyText:o})]})}),(0,n.jsx)(s.xuv,{ref:t,height:"200px",overflowY:"auto",borderWidth:1,borderColor:"gray.200",borderRadius:"md",p:2,children:null==r?void 0:r.map(e=>(0,n.jsx)(q,{log:e},"".concat(e.timestamp,"-").concat(e.module_info,"-").concat(e.message)))})]})}),O=i(46238);let{useGetPoliciesQuery:R}=i(78780).u.injectEndpoints({endpoints:e=>({getPolicies:e.query({query:()=>({url:"/dsr/policy"}),providesTags:()=>["Policies"]})})});var P=i(85054),N=i(31883),I=e=>{let{connectionKey:t}=e,i=(0,s.pmc)(),r=(0,g.T)(),[a]=(0,x.s7)(),l=(0,T.v9)(b.fD),o=(0,T.v9)(b.YS),d=(0,T.v9)(b.Af),u=(0,T.v9)(b.zn),c=(0,T.v9)(b.lR),y=(0,T.v9)(b.M_),v=(0,T.v9)(b.HN),[_,j]=(0,f.useState)("{}");(0,f.useEffect)(()=>{l&&j(JSON.stringify(u,null,2))},[l,u]);let{data:C,error:k}=(0,w.Z2)({privacy_request_id:v},{skip:!v||!(null==l?void 0:l.fides_key),pollingInterval:2e3}),{refetch:S}=(0,w.fV)({privacy_request_id:v},{skip:!v}),{refetch:E}=(0,x.I1)({connectionKey:t,datasetKey:(null==l?void 0:l.fides_key)||""},{skip:!t||!(null==l?void 0:l.fides_key),refetchOnMountOrArgChange:!0}),{data:q}=R(),M=(0,f.useMemo)(()=>((null==q?void 0:q.items)||[]).filter(e=>{var t;return null===(t=e.rules)||void 0===t?void 0:t.some(e=>"access"===e.action_type)}).map(e=>({value:e.key,label:e.name})),[null==q?void 0:q.items]);(0,f.useEffect)(()=>{let e=null==l?void 0:l.fides_key;t&&e&&E().then(t=>{t.data&&(null==l?void 0:l.fides_key)===e&&r((0,b.qD)({datasetKey:e,values:t.data}))})},[l,t,r,E]),(0,f.useEffect)(()=>{let e=null==l?void 0:l.fides_key;if(k&&"status"in k&&404===k.status){r((0,b.hT)()),i((0,h.Vo)("Test run failed"));return}if(!C||C.privacy_request_id!==v||!e)return;let t={datasetKey:e,values:JSON.stringify(C,null,2)};C.status===P.q2.COMPLETE?y&&S().then(()=>{r((0,b.EO)(t)),r((0,b.hT)()),i((0,h.t5)("Test run completed successfully"))}):C.status===P.q2.ERROR&&S().then(()=>{r((0,b.EO)(t)),r((0,b.hT)()),i((0,h.Vo)("Test run failed"))})},[C,k,v,l,y,r,i,S]);let I=(0,f.useMemo)(()=>c&&(null==q?void 0:q.items)?c:null,[c,null==q?void 0:q.items]),D=async()=>{if((null==l?void 0:l.fides_key)&&c)try{let e;try{e=JSON.parse(_)}catch(e){i((0,h.Vo)("Invalid JSON in test input"));return}r((0,b.Vh)(l.fides_key)),i((0,h.t5)("Test run started"));let n=await a({connection_key:t,dataset_key:l.fides_key,identities:e,policy_key:c});(0,N.D4)(n)?(i((0,h.Vo)((0,m.e$)(n.error))),r((0,b.hT)())):"data"in n?r((0,b.eY)(n.data.privacy_request_id)):(r((0,b.hT)()),i((0,h.Vo)("No privacy request ID in response")))}catch(e){r((0,b.hT)()),i((0,h.Vo)("Failed to start test run"))}};return(0,n.jsxs)(s.gCW,{alignItems:"stretch",flex:"1",maxWidth:"70vw",minHeight:"0",children:[(0,n.jsxs)(s.X6q,{as:"h3",size:"sm",display:"flex",alignItems:"center",justifyContent:"space-between",children:[(0,n.jsxs)(s.Ugi,{children:[(0,n.jsx)(s.xvT,{children:"Test inputs"}),(0,n.jsx)(p.Z,{copyText:_})]}),(0,n.jsxs)(s.Ugi,{children:[(0,n.jsx)(s.WPr,{id:"policy","aria-label":"Policy selector","data-testid":"policy-select",placeholder:"Select policy",value:I,options:M,onChange:e=>{r((0,b.kF)(e))},className:"w-64"}),(0,n.jsx)(s.wpx,{htmlType:"submit",size:"small",type:"primary","data-testid":"run-btn",onClick:y?()=>{r((0,b.qU)()),i((0,h.t5)("Test manually stopped by user"))}:D,disabled:!c||!o,children:y?"Stop":"Run"}),(0,n.jsx)(O.b,{label:y?"Stop the currently running test":"Run a test access request using the provided test input data and the selected access policy"})]})]}),(0,n.jsx)(s.gxH,{size:"sm",focusBorderColor:"primary.600",color:"gray.800",isDisabled:y,height:"100%",value:_,onChange:e=>{let t=e.target.value;j(t);try{let e=JSON.parse(t);l&&r((0,b.qD)({datasetKey:l.fides_key,values:e}))}catch(e){}}}),(0,n.jsxs)(s.X6q,{as:"h3",size:"sm",children:["Test results ",(0,n.jsx)(p.Z,{copyText:d})]}),(0,n.jsx)(s.gxH,{isReadOnly:!0,size:"sm",focusBorderColor:"primary.600",color:"gray.800",isDisabled:!1,height:"100%",value:d})]})};let D=e=>e.id?Array.isArray(e.id)?e.id[0]:e.id:"";var A=()=>{var e;let t=D((0,r.useRouter)().query),{data:i,isLoading:c}=(0,u.rn)(t,{skip:!t}),f=(null==i?void 0:null===(e=i.connection_configs)||void 0===e?void 0:e.key)||"";return c?(0,n.jsx)(l.Z,{title:"Systems",children:(0,n.jsx)(a.Z,{})}):(0,n.jsxs)(l.Z,{title:"System inventory",mainProps:{height:"100vh",display:"flex",flexDirection:"column"},children:[(0,n.jsx)(d.Z,{heading:"System inventory",breadcrumbItems:[{title:"System inventory",href:o.So},{title:(null==i?void 0:i.name)||"",href:"/systems/configure/".concat(t,"#integrations")},{title:"Test datasets"}]}),(0,n.jsxs)(s.gCW,{alignItems:"stretch",flex:"1",minHeight:"0",spacing:"4",padding:"0",children:[(0,n.jsxs)(s.Ugi,{alignItems:"stretch",flex:"1",minHeight:"0",spacing:"4",maxHeight:"60vh",children:[(0,n.jsx)(C,{connectionKey:f}),(0,n.jsx)(I,{connectionKey:f})]}),(0,n.jsx)(s.xuv,{flex:"0 0 auto",children:(0,n.jsx)(M,{})})]})]})}},31883:function(e,t,i){"use strict";i.d(t,{Bw:function(){return n.Bw},D4:function(){return n.D4}});var n=i(19043)},76737:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var i in t)Object.defineProperty(e,i,{enumerable:!0,get:t[i]})}(t,{default:function(){return l},noSSR:function(){return a}});let n=i(51538);i(24246),i(27378);let s=n._(i(21887));function r(e){return{default:(null==e?void 0:e.default)||e}}function a(e,t){return delete t.webpack,delete t.modules,e(t)}function l(e,t){let i=s.default,n={loading:e=>{let{error:t,isLoading:i,pastDelay:n}=e;return null}};e instanceof Promise?n.loader=()=>e:"function"==typeof e?n.loader=e:"object"==typeof e&&(n={...n,...e});let l=(n={...n,...t}).loader;return(n.loadableGenerated&&(n={...n,...n.loadableGenerated},delete n.loadableGenerated),"boolean"!=typeof n.ssr||n.ssr)?i({...n,loader:()=>null!=l?l().then(r):Promise.resolve(r(()=>null))}):(delete n.webpack,delete n.modules,a(i,n))}("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},28438:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"LoadableContext",{enumerable:!0,get:function(){return n}});let n=i(51538)._(i(27378)).default.createContext(null)},21887:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return f}});let n=i(51538)._(i(27378)),s=i(28438),r=[],a=[],l=!1;function o(e){let t=e(),i={loading:!0,loaded:null,error:null};return i.promise=t.then(e=>(i.loading=!1,i.loaded=e,e)).catch(e=>{throw i.loading=!1,i.error=e,e}),i}class d{promise(){return this._res.promise}retry(){this._clearTimeouts(),this._res=this._loadFn(this._opts.loader),this._state={pastDelay:!1,timedOut:!1};let{_res:e,_opts:t}=this;e.loading&&("number"==typeof t.delay&&(0===t.delay?this._state.pastDelay=!0:this._delay=setTimeout(()=>{this._update({pastDelay:!0})},t.delay)),"number"==typeof t.timeout&&(this._timeout=setTimeout(()=>{this._update({timedOut:!0})},t.timeout))),this._res.promise.then(()=>{this._update({}),this._clearTimeouts()}).catch(e=>{this._update({}),this._clearTimeouts()}),this._update({})}_update(e){this._state={...this._state,error:this._res.error,loaded:this._res.loaded,loading:this._res.loading,...e},this._callbacks.forEach(e=>e())}_clearTimeouts(){clearTimeout(this._delay),clearTimeout(this._timeout)}getCurrentValue(){return this._state}subscribe(e){return this._callbacks.add(e),()=>{this._callbacks.delete(e)}}constructor(e,t){this._loadFn=e,this._opts=t,this._callbacks=new Set,this._delay=null,this._timeout=null,this.retry()}}function u(e){return function(e,t){let i=Object.assign({loader:null,loading:null,delay:200,timeout:null,webpack:null,modules:null},t),r=null;function o(){if(!r){let t=new d(e,i);r={getCurrentValue:t.getCurrentValue.bind(t),subscribe:t.subscribe.bind(t),retry:t.retry.bind(t),promise:t.promise.bind(t)}}return r.promise()}if(!l){let e=i.webpack?i.webpack():i.modules;e&&a.push(t=>{for(let i of e)if(t.includes(i))return o()})}function u(e,t){!function(){o();let e=n.default.useContext(s.LoadableContext);e&&Array.isArray(i.modules)&&i.modules.forEach(t=>{e(t)})}();let a=n.default.useSyncExternalStore(r.subscribe,r.getCurrentValue,r.getCurrentValue);return n.default.useImperativeHandle(t,()=>({retry:r.retry}),[]),n.default.useMemo(()=>{var t;return a.loading||a.error?n.default.createElement(i.loading,{isLoading:a.loading,pastDelay:a.pastDelay,timedOut:a.timedOut,error:a.error,retry:r.retry}):a.loaded?n.default.createElement((t=a.loaded)&&t.default?t.default:t,e):null},[e,a])}return u.preload=()=>o(),u.displayName="LoadableComponent",n.default.forwardRef(u)}(o,e)}function c(e,t){let i=[];for(;e.length;){let n=e.pop();i.push(n(t))}return Promise.all(i).then(()=>{if(e.length)return c(e,t)})}u.preloadAll=()=>new Promise((e,t)=>{c(r).then(e,t)}),u.preloadReady=e=>(void 0===e&&(e=[]),new Promise(t=>{let i=()=>(l=!0,t());c(a,e).then(i,i)})),window.__NEXT_PRELOADREADY=u.preloadReady;let f=u},65218:function(e,t,i){e.exports=i(76737)}},function(e){e.O(0,[6527,2888,9774,179],function(){return e(e.s=54543)}),_N_E=e.O()}]);
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3691],{8828:function(e,t,s){(window.__NEXT_P=window.__NEXT_P||[]).push(["/systems/configure/[id]",function(){return s(82657)}])},18225:function(e,t,s){"use strict";var n=s(24246),i=s(96306);t.Z=e=>{let{alignment:t="center",...s}=e;return(0,n.jsx)(i.kCb,{boxSize:"full",align:"center",justify:t,children:(0,n.jsx)(i.$jN,{color:"primary",...s})})}},82657:function(e,t,s){"use strict";s.r(t);var n=s(24246),i=s(96306),r=s(86677),a=s(27378),l=s(16134),d=s(25980),u=s(18225),c=s(812),o=s(14048),f=s(77213),x=s(77830),h=s(58754),m=s(32885),y=s(1315),j=s(57865),g=s(72774),_=s(21103);t.default=()=>{let e=(0,r.useRouter)(),t=(0,l.T)(),s="";e.query.id&&(s=Array.isArray(e.query.id)?e.query.id[0]:e.query.id);let{data:p,isLoading:v}=(0,y.rn)(s),{error:w,isLoading:b}=(0,m.Rd)(),{tcf:C,plus:N}=(0,d.hz)(),Z=(0,l.C)(j.gU);(0,a.useEffect)(()=>{if(p){let e=C&&!!p.vendor_id&&(0,c.cj)(p.vendor_id)===c.c6.GVL;t((0,j.gQ)(e))}else(0,j.gQ)(!1)},[p,t,C]);let{tabData:E,activeKey:k,onTabChange:S}=(0,_.Z)({isCreate:!1});return(v||b)&&!w?(0,n.jsx)(f.Z,{title:"Systems",children:(0,n.jsx)(u.Z,{})}):p?(0,n.jsxs)(f.Z,{title:"System inventory",mainProps:{w:"calc(100vw - 240px)"},children:[(0,n.jsx)(h.Z,{heading:"System inventory",breadcrumbItems:[{title:"All systems",href:x.So},{title:(null==p?void 0:p.name)||""}]}),(0,n.jsx)(i.A5g,{activeKey:k,onChange:S,items:E,className:"w-full",tabBarExtraContent:N&&(0,n.jsxs)(i.wpx,{size:"small",className:"absolute right-2 top-2","data-testid":"integration-page-btn",onClick:()=>e.push(x.KH),children:[(0,n.jsx)(i.xvT,{children:"Integrations"}),(0,n.jsx)(o.A5,{marginLeft:2})]}),renderTabBar:(e,t)=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(t,{...e}),Z&&(0,n.jsx)(g.Z,{})]})})]}):(0,n.jsx)(f.Z,{title:"Systems",children:(0,n.jsxs)(i.xvT,{"data-testid":"system-not-found",children:["Could not find a system with id ",s]})})}}},function(e){e.O(0,[8765,431,9278,5163,699,5277,409,7045,401,7218,3585,7079,2888,9774,179],function(){return e(e.s=8828)}),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3691],{8828:function(e,t,s){(window.__NEXT_P=window.__NEXT_P||[]).push(["/systems/configure/[id]",function(){return s(82657)}])},18225:function(e,t,s){"use strict";var n=s(24246),i=s(20595);t.Z=e=>{let{alignment:t="center",...s}=e;return(0,n.jsx)(i.kCb,{boxSize:"full",align:"center",justify:t,children:(0,n.jsx)(i.$jN,{color:"primary",...s})})}},82657:function(e,t,s){"use strict";s.r(t);var n=s(24246),i=s(20595),r=s(86677),a=s(27378),l=s(16134),d=s(25980),u=s(18225),c=s(812),o=s(14048),f=s(77213),x=s(77830),h=s(58754),m=s(32885),y=s(1315),j=s(57865),g=s(72774),_=s(21103);t.default=()=>{let e=(0,r.useRouter)(),t=(0,l.T)(),s="";e.query.id&&(s=Array.isArray(e.query.id)?e.query.id[0]:e.query.id);let{data:p,isLoading:v}=(0,y.rn)(s),{error:w,isLoading:b}=(0,m.Rd)(),{tcf:C,plus:N}=(0,d.hz)(),Z=(0,l.C)(j.gU);(0,a.useEffect)(()=>{if(p){let e=C&&!!p.vendor_id&&(0,c.cj)(p.vendor_id)===c.c6.GVL;t((0,j.gQ)(e))}else(0,j.gQ)(!1)},[p,t,C]);let{tabData:E,activeKey:k,onTabChange:S}=(0,_.Z)({isCreate:!1});return(v||b)&&!w?(0,n.jsx)(f.Z,{title:"Systems",children:(0,n.jsx)(u.Z,{})}):p?(0,n.jsxs)(f.Z,{title:"System inventory",mainProps:{w:"calc(100vw - 240px)"},children:[(0,n.jsx)(h.Z,{heading:"System inventory",breadcrumbItems:[{title:"All systems",href:x.So},{title:(null==p?void 0:p.name)||""}]}),(0,n.jsx)(i.A5g,{activeKey:k,onChange:S,items:E,className:"w-full",tabBarExtraContent:N&&(0,n.jsxs)(i.wpx,{size:"small",className:"absolute right-2 top-2","data-testid":"integration-page-btn",onClick:()=>e.push(x.KH),children:[(0,n.jsx)(i.xvT,{children:"Integrations"}),(0,n.jsx)(o.A5,{marginLeft:2})]}),renderTabBar:(e,t)=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(t,{...e}),Z&&(0,n.jsx)(g.Z,{})]})})]}):(0,n.jsx)(f.Z,{title:"Systems",children:(0,n.jsxs)(i.xvT,{"data-testid":"system-not-found",children:["Could not find a system with id ",s]})})}}},function(e){e.O(0,[431,8765,9278,5163,699,5277,6344,7245,401,9899,1437,7773,3700,2888,9774,179],function(){return e(e.s=8828)}),_N_E=e.O()}]);