ethyca-fides 2.66.3b0__py2.py3-none-any.whl → 2.67.0rc1__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 (227) hide show
  1. {ethyca_fides-2.66.3b0.dist-info → ethyca_fides-2.67.0rc1.dist-info}/METADATA +1 -1
  2. {ethyca_fides-2.66.3b0.dist-info → ethyca_fides-2.67.0rc1.dist-info}/RECORD +195 -192
  3. fides/_version.py +3 -3
  4. fides/api/graph/graph.py +13 -2
  5. fides/api/graph/traversal.py +125 -38
  6. fides/api/service/privacy_request/dsr_package/templates/welcome.html +2 -2
  7. fides/api/util/aws_util.py +5 -1
  8. fides/ui-build/static/admin/404.html +1 -1
  9. fides/ui-build/static/admin/_next/static/ZIM71ZcqBBeTYHc-MN9_n/_buildManifest.js +1 -0
  10. fides/ui-build/static/admin/_next/static/chunks/1316-2606e19807c08aa5.js +1 -0
  11. fides/ui-build/static/admin/_next/static/chunks/1467-8808ec8836e033f9.js +1 -0
  12. fides/ui-build/static/admin/_next/static/chunks/1817-b78b58ae3b75d75a.js +1 -0
  13. fides/ui-build/static/admin/_next/static/chunks/1975.7d4634a0e823a02b.js +1 -0
  14. fides/ui-build/static/admin/_next/static/chunks/{203-4e777c324a01dbec.js → 203-cd78ea279cecba60.js} +1 -1
  15. fides/ui-build/static/admin/_next/static/chunks/2150-930ffaf2c4718edc.js +1 -0
  16. fides/ui-build/static/admin/_next/static/chunks/255-1bc0cbef7a59cdc6.js +1 -0
  17. fides/ui-build/static/admin/_next/static/chunks/{3450-1cc2bb07ed142203.js → 3450-69f4e16978971bb8.js} +1 -1
  18. fides/ui-build/static/admin/_next/static/chunks/346-aa3b88efb85f2e28.js +1 -0
  19. fides/ui-build/static/admin/_next/static/chunks/3550-d04125c828d591a1.js +1 -0
  20. fides/ui-build/static/admin/_next/static/chunks/{3855-e2fa6db53d32c3de.js → 3855-509ca7ac99b5eada.js} +1 -1
  21. fides/ui-build/static/admin/_next/static/chunks/{3872-84b7e380b88b4454.js → 3872-0a0f0032ca39a93f.js} +1 -1
  22. fides/ui-build/static/admin/_next/static/chunks/409-ea70638a59296659.js +1 -0
  23. fides/ui-build/static/admin/_next/static/chunks/{4121-f50675521dfee6eb.js → 4121-877e19d3fa078c7b.js} +1 -1
  24. fides/ui-build/static/admin/_next/static/chunks/{4230-840c287045c88b34.js → 4230-114e31621c19ea69.js} +1 -1
  25. fides/ui-build/static/admin/_next/static/chunks/4259.d1507e0db19cbed7.js +1 -0
  26. fides/ui-build/static/admin/_next/static/chunks/{431-ade3e312fac3430b.js → 431-1db919f6569a4021.js} +1 -1
  27. fides/ui-build/static/admin/_next/static/chunks/{4608-a8e3100e2806dbff.js → 4608-f16f281f2d05d963.js} +1 -1
  28. fides/ui-build/static/admin/_next/static/chunks/5163-e682273cd76a7d07.js +1 -0
  29. fides/ui-build/static/admin/_next/static/chunks/5309-d9a488457898263b.js +1 -0
  30. fides/ui-build/static/admin/_next/static/chunks/{905-ffdbd0b14167e8bd.js → 5596-4378b2927dae65b2.js} +3 -3
  31. fides/ui-build/static/admin/_next/static/chunks/5619-9b50cec521203989.js +1 -0
  32. fides/ui-build/static/admin/_next/static/chunks/{6084-5d7598b7bcb548cf.js → 6084-ddbad3149364725d.js} +1 -1
  33. fides/ui-build/static/admin/_next/static/chunks/6148-59a59d5c5925344f.js +1 -0
  34. fides/ui-build/static/admin/_next/static/chunks/6419-d0c00d661b01f8fa.js +1 -0
  35. fides/ui-build/static/admin/_next/static/chunks/{6662-efb2cf74641647f2.js → 6662-a9e54ead3dc53644.js} +1 -1
  36. fides/ui-build/static/admin/_next/static/chunks/{6780-a00c87739acc004d.js → 6780-b42a27e72707936d.js} +1 -1
  37. fides/ui-build/static/admin/_next/static/chunks/{6853-4f8bf6558f8c6a46.js → 6853-d0190d2cca9dbde2.js} +1 -1
  38. fides/ui-build/static/admin/_next/static/chunks/{6882-586b84aeb02d5830.js → 6882-59ea739e3616ce83.js} +1 -1
  39. fides/ui-build/static/admin/_next/static/chunks/6954-ba98e778a5b45ebf.js +1 -0
  40. fides/ui-build/static/admin/_next/static/chunks/{7476-d206c11823c91088.js → 7476-cc0d9a94ed7aad53.js} +1 -1
  41. fides/ui-build/static/admin/_next/static/chunks/7725-539d3a906f627531.js +1 -0
  42. fides/ui-build/static/admin/_next/static/chunks/{787-cbe2d0bfb513d90a.js → 787-c57185ad89c4e288.js} +1 -1
  43. fides/ui-build/static/admin/_next/static/chunks/{79-3db1941d274f40c7.js → 79-2aab56be75e16187.js} +1 -1
  44. fides/ui-build/static/admin/_next/static/chunks/8735-40caf91800a3610c.js +1 -0
  45. fides/ui-build/static/admin/_next/static/chunks/8765-f622a35b40a7ec63.js +1 -0
  46. fides/ui-build/static/admin/_next/static/chunks/9046-7085a401297c5520.js +1 -0
  47. fides/ui-build/static/admin/_next/static/chunks/9187-7438242f0d380bb0.js +1 -0
  48. fides/ui-build/static/admin/_next/static/chunks/{9226-72ad691ca57b83ef.js → 9226-2dcac54ab3fb94be.js} +1 -1
  49. fides/ui-build/static/admin/_next/static/chunks/9278-08cc704317fe535e.js +1 -0
  50. fides/ui-build/static/admin/_next/static/chunks/{9951-595d0f1588215081.js → 9951-7c6639e5d062779e.js} +1 -1
  51. fides/ui-build/static/admin/_next/static/chunks/pages/{_app-f2c3d287bac00395.js → _app-5c3a63bb1697f34c.js} +2 -2
  52. fides/ui-build/static/admin/_next/static/chunks/pages/add-systems/{manual-acb59f8b5e97512a.js → manual-2a655ff3a97f2492.js} +1 -1
  53. fides/ui-build/static/admin/_next/static/chunks/pages/{add-systems-0943633a8e422695.js → add-systems-0902f0bb4080643e.js} +1 -1
  54. fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-experience/{[id]-fc3a011154a2e1de.js → [id]-f22ddd9b48a5c418.js} +1 -1
  55. fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-experience/{new-06bb3b0bf097fcdb.js → new-e74cb5ea87f15b40.js} +1 -1
  56. fides/ui-build/static/admin/_next/static/chunks/pages/consent/{privacy-experience-09d4408014bcfe1c.js → privacy-experience-21f997c69fc3b4c2.js} +1 -1
  57. fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-notices/{[id]-d67542783ef5ddac.js → [id]-da4124b7600a2a1d.js} +1 -1
  58. fides/ui-build/static/admin/_next/static/chunks/pages/consent/privacy-notices/{new-3f20e8a316bb3d5b.js → new-a57d251c88ce68ae.js} +1 -1
  59. fides/ui-build/static/admin/_next/static/chunks/pages/consent/{privacy-notices-23e9dcd4590312d2.js → privacy-notices-ad105181bc91209b.js} +1 -1
  60. fides/ui-build/static/admin/_next/static/chunks/pages/consent/reporting-b0c4235fe6d0b0c8.js +1 -0
  61. fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]/{[resourceUrn]-99c9092d65c94807.js → [resourceUrn]-aad6047a4604b945.js} +1 -1
  62. fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/{projects-774fecea22ba8852.js → projects-29784a11fe0fbd0a.js} +1 -1
  63. fides/ui-build/static/admin/_next/static/chunks/pages/data-catalog/[systemId]/resources/{[resourceUrn]-f6bd6aff389cb9fe.js → [resourceUrn]-b6b98cea25dd94fa.js} +1 -1
  64. fides/ui-build/static/admin/_next/static/chunks/pages/{data-catalog-8a7f9285da66b965.js → data-catalog-7770a8dc34bd0fc0.js} +1 -1
  65. fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/[monitorId]/[systemId]-a286affa43687eb5.js +1 -0
  66. fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/[monitorId]-92b0bd97d8e79340.js +1 -0
  67. fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center-ee3c0a103346fc06.js +1 -0
  68. fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/{activity-5af9381f02b2aff6.js → activity-ad6a84a6276f914c.js} +1 -1
  69. fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/discovery/{[resourceUrn]-6421ce247549c5d6.js → [resourceUrn]-f98dd251babb7e28.js} +1 -1
  70. fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/{discovery-3eac407ac5181a3c.js → discovery-56eb4c014f0d96a3.js} +1 -1
  71. fides/ui-build/static/admin/_next/static/chunks/pages/datamap-d23b3ae139f0428b.js +1 -0
  72. fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/[collectionName]/{[...subfieldNames]-1c98bd0959d9570a.js → [...subfieldNames]-15301bd6bf7cf718.js} +1 -1
  73. fides/ui-build/static/admin/_next/static/chunks/pages/dataset/[datasetId]/{[collectionName]-e548cabda7da32c9.js → [collectionName]-0fa72873e464f581.js} +1 -1
  74. fides/ui-build/static/admin/_next/static/chunks/pages/dataset/{new-513c862c3a707735.js → new-0d50084fbdf9b84c.js} +1 -1
  75. fides/ui-build/static/admin/_next/static/chunks/pages/{dataset-747b7a13289f1cd7.js → dataset-f3348d0a92543bab.js} +1 -1
  76. fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection/{[id]-3d22525b3c327b2e.js → [id]-7d6027570d05c57f.js} +1 -1
  77. fides/ui-build/static/admin/_next/static/chunks/pages/datastore-connection/{new-d2cad97495e86adb.js → new-c6614583b14dc9f2.js} +1 -1
  78. fides/ui-build/static/admin/_next/static/chunks/pages/{fides-js-docs-5d8fd1af75f19e2f.js → fides-js-docs-1f4335dca5c09860.js} +1 -1
  79. fides/ui-build/static/admin/_next/static/chunks/pages/{index-12ac3e317fc86f21.js → index-fbf9b845bb901238.js} +1 -1
  80. fides/ui-build/static/admin/_next/static/chunks/pages/integrations/[id]-8e346fb36e8034d2.js +1 -0
  81. fides/ui-build/static/admin/_next/static/chunks/pages/{integrations-f10a7dcf7541c865.js → integrations-7f15cd8538cdc24d.js} +1 -1
  82. fides/ui-build/static/admin/_next/static/chunks/pages/messaging-1bae386d8c190348.js +1 -0
  83. fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/{[id]-c73497fc333c324d.js → [id]-79f1576b1126975c.js} +1 -1
  84. fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/{messaging-7498d1d5974a78b0.js → messaging-f1d818242d8550f8.js} +1 -1
  85. fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/{storage-2d3a2d967767a131.js → storage-d40a26bddb126c5c.js} +1 -1
  86. fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests-96a08c4431b5462c.js +1 -0
  87. fides/ui-build/static/admin/_next/static/chunks/pages/reporting/datamap-9d1840f8309b706e.js +1 -0
  88. fides/ui-build/static/admin/_next/static/chunks/pages/settings/consent/[configuration_id]/{[purpose_id]-668d74c041d74650.js → [purpose_id]-e891d01ece59669e.js} +1 -1
  89. fides/ui-build/static/admin/_next/static/chunks/pages/settings/{consent-a989532a12c40dcf.js → consent-f61b87e79367865b.js} +1 -1
  90. fides/ui-build/static/admin/_next/static/chunks/pages/settings/{custom-fields-45bea76ff7eda3cb.js → custom-fields-f8eea5d508c60c64.js} +1 -1
  91. fides/ui-build/static/admin/_next/static/chunks/pages/settings/{locations-6946e78a5d43e654.js → locations-ed6a140b362c5baa.js} +1 -1
  92. fides/ui-build/static/admin/_next/static/chunks/pages/settings/{organization-55a10e01dffc8039.js → organization-ff9a34264d48c35f.js} +1 -1
  93. fides/ui-build/static/admin/_next/static/chunks/pages/systems/configure/[id]/{test-datasets-f91f22cf96566ed4.js → test-datasets-a4b6d41ca679298b.js} +1 -1
  94. fides/ui-build/static/admin/_next/static/chunks/pages/systems/configure/{[id]-d4a57ea18935dd70.js → [id]-c8f5fbaa83dd9945.js} +1 -1
  95. fides/ui-build/static/admin/_next/static/chunks/pages/{systems-648a0ff4920579ce.js → systems-c05b49ddec1a1b4f.js} +1 -1
  96. fides/ui-build/static/admin/_next/static/chunks/pages/taxonomy-df0d88716578e295.js +1 -0
  97. fides/ui-build/static/admin/_next/static/chunks/pages/user-management/profile/{[id]-fe58cebba358119d.js → [id]-da68efc31998dc66.js} +1 -1
  98. fides/ui-build/static/admin/_next/static/chunks/pages/{user-management-45bfa04e45a7d13f.js → user-management-e98dfc7d4f2a4e16.js} +1 -1
  99. fides/ui-build/static/admin/_next/static/chunks/webpack-90e8ec1fc5c6455b.js +1 -0
  100. fides/ui-build/static/admin/_next/static/css/{79e296c724c1568c.css → d9924caa849931b3.css} +1 -1
  101. fides/ui-build/static/admin/_next/static/css/dbcf63488933a4d5.css +29 -0
  102. fides/ui-build/static/admin/add-systems/manual.html +1 -1
  103. fides/ui-build/static/admin/add-systems/multiple.html +1 -1
  104. fides/ui-build/static/admin/add-systems.html +1 -1
  105. fides/ui-build/static/admin/consent/configure/add-vendors.html +1 -1
  106. fides/ui-build/static/admin/consent/configure.html +1 -1
  107. fides/ui-build/static/admin/consent/privacy-experience/[id].html +1 -1
  108. fides/ui-build/static/admin/consent/privacy-experience/new.html +1 -1
  109. fides/ui-build/static/admin/consent/privacy-experience.html +1 -1
  110. fides/ui-build/static/admin/consent/privacy-notices/[id].html +1 -1
  111. fides/ui-build/static/admin/consent/privacy-notices/new.html +1 -1
  112. fides/ui-build/static/admin/consent/privacy-notices.html +1 -1
  113. fides/ui-build/static/admin/consent/properties.html +1 -1
  114. fides/ui-build/static/admin/consent/reporting.html +1 -1
  115. fides/ui-build/static/admin/consent.html +1 -1
  116. fides/ui-build/static/admin/data-catalog/[systemId]/projects/[projectUrn]/[resourceUrn].html +1 -1
  117. fides/ui-build/static/admin/data-catalog/[systemId]/projects/[projectUrn].html +1 -1
  118. fides/ui-build/static/admin/data-catalog/[systemId]/projects.html +1 -1
  119. fides/ui-build/static/admin/data-catalog/[systemId]/resources/[resourceUrn].html +1 -1
  120. fides/ui-build/static/admin/data-catalog/[systemId]/resources.html +1 -1
  121. fides/ui-build/static/admin/data-catalog.html +1 -1
  122. fides/ui-build/static/admin/data-discovery/action-center/[monitorId]/[systemId].html +1 -1
  123. fides/ui-build/static/admin/data-discovery/action-center/[monitorId].html +1 -1
  124. fides/ui-build/static/admin/data-discovery/action-center.html +1 -1
  125. fides/ui-build/static/admin/data-discovery/activity.html +1 -1
  126. fides/ui-build/static/admin/data-discovery/detection/[resourceUrn].html +1 -1
  127. fides/ui-build/static/admin/data-discovery/detection.html +1 -1
  128. fides/ui-build/static/admin/data-discovery/discovery/[resourceUrn].html +1 -1
  129. fides/ui-build/static/admin/data-discovery/discovery.html +1 -1
  130. fides/ui-build/static/admin/datamap.html +1 -1
  131. fides/ui-build/static/admin/dataset/[datasetId]/[collectionName]/[...subfieldNames].html +1 -1
  132. fides/ui-build/static/admin/dataset/[datasetId]/[collectionName].html +1 -1
  133. fides/ui-build/static/admin/dataset/[datasetId].html +1 -1
  134. fides/ui-build/static/admin/dataset/new.html +1 -1
  135. fides/ui-build/static/admin/dataset.html +1 -1
  136. fides/ui-build/static/admin/datastore-connection/[id].html +1 -1
  137. fides/ui-build/static/admin/datastore-connection/new.html +1 -1
  138. fides/ui-build/static/admin/datastore-connection.html +1 -1
  139. fides/ui-build/static/admin/index.html +1 -1
  140. fides/ui-build/static/admin/integrations/[id].html +1 -1
  141. fides/ui-build/static/admin/integrations.html +1 -1
  142. fides/ui-build/static/admin/lib/fides-ext-gpp.js +1 -1
  143. fides/ui-build/static/admin/lib/fides-headless.js +1 -1
  144. fides/ui-build/static/admin/lib/fides-preview.js +1 -1
  145. fides/ui-build/static/admin/lib/fides-tcf.js +4 -4
  146. fides/ui-build/static/admin/lib/fides.js +4 -4
  147. fides/ui-build/static/admin/login/[provider].html +1 -1
  148. fides/ui-build/static/admin/login.html +1 -1
  149. fides/ui-build/static/admin/messaging/[id].html +1 -1
  150. fides/ui-build/static/admin/messaging/add-template.html +1 -1
  151. fides/ui-build/static/admin/messaging.html +1 -1
  152. fides/ui-build/static/admin/poc/ant-components.html +1 -1
  153. fides/ui-build/static/admin/poc/form-experiments/AntForm.html +1 -1
  154. fides/ui-build/static/admin/poc/form-experiments/FormikAntFormItem.html +1 -1
  155. fides/ui-build/static/admin/poc/form-experiments/FormikControlled.html +1 -1
  156. fides/ui-build/static/admin/poc/form-experiments/FormikField.html +1 -1
  157. fides/ui-build/static/admin/poc/form-experiments/FormikSpreadField.html +1 -1
  158. fides/ui-build/static/admin/poc/forms.html +1 -1
  159. fides/ui-build/static/admin/poc/table-migration.html +1 -1
  160. fides/ui-build/static/admin/privacy-requests/[id].html +1 -1
  161. fides/ui-build/static/admin/privacy-requests/configure/messaging.html +1 -1
  162. fides/ui-build/static/admin/privacy-requests/configure/storage.html +1 -1
  163. fides/ui-build/static/admin/privacy-requests/configure.html +1 -1
  164. fides/ui-build/static/admin/privacy-requests.html +1 -1
  165. fides/ui-build/static/admin/properties/[id].html +1 -1
  166. fides/ui-build/static/admin/properties/add-property.html +1 -1
  167. fides/ui-build/static/admin/properties.html +1 -1
  168. fides/ui-build/static/admin/reporting/datamap.html +1 -1
  169. fides/ui-build/static/admin/settings/about/alpha.html +1 -1
  170. fides/ui-build/static/admin/settings/about.html +1 -1
  171. fides/ui-build/static/admin/settings/consent/[configuration_id]/[purpose_id].html +1 -1
  172. fides/ui-build/static/admin/settings/consent.html +1 -1
  173. fides/ui-build/static/admin/settings/custom-fields.html +1 -1
  174. fides/ui-build/static/admin/settings/domain-records.html +1 -1
  175. fides/ui-build/static/admin/settings/domains.html +1 -1
  176. fides/ui-build/static/admin/settings/email-templates.html +1 -1
  177. fides/ui-build/static/admin/settings/locations.html +1 -1
  178. fides/ui-build/static/admin/settings/organization.html +1 -1
  179. fides/ui-build/static/admin/settings/regulations.html +1 -1
  180. fides/ui-build/static/admin/systems/configure/[id]/test-datasets.html +1 -1
  181. fides/ui-build/static/admin/systems/configure/[id].html +1 -1
  182. fides/ui-build/static/admin/systems.html +1 -1
  183. fides/ui-build/static/admin/taxonomy.html +1 -1
  184. fides/ui-build/static/admin/user-management/new.html +1 -1
  185. fides/ui-build/static/admin/user-management/profile/[id].html +1 -1
  186. fides/ui-build/static/admin/user-management.html +1 -1
  187. fides/ui-build/static/admin/_next/static/chunks/1316-6cc72a45ebf7ff81.js +0 -1
  188. fides/ui-build/static/admin/_next/static/chunks/1807-3beab149351d5ded.js +0 -1
  189. fides/ui-build/static/admin/_next/static/chunks/1817-6f35f58cd08b04ae.js +0 -1
  190. fides/ui-build/static/admin/_next/static/chunks/255-7db55b0e3a0f9dea.js +0 -1
  191. fides/ui-build/static/admin/_next/static/chunks/2599-6c4d22e75028d8b6.js +0 -1
  192. fides/ui-build/static/admin/_next/static/chunks/2858-0b44609b6be7850b.js +0 -1
  193. fides/ui-build/static/admin/_next/static/chunks/2866-a73888c17a195cbe.js +0 -1
  194. fides/ui-build/static/admin/_next/static/chunks/3615-5e2d062d684b8fa1.js +0 -1
  195. fides/ui-build/static/admin/_next/static/chunks/409-45a125437261580c.js +0 -1
  196. fides/ui-build/static/admin/_next/static/chunks/5309-1172322bf91b5d57.js +0 -1
  197. fides/ui-build/static/admin/_next/static/chunks/570-c99f07161bd339cd.js +0 -1
  198. fides/ui-build/static/admin/_next/static/chunks/6954-34e062e4bffc7e71.js +0 -1
  199. fides/ui-build/static/admin/_next/static/chunks/7062.fda15dcb7df85675.js +0 -1
  200. fides/ui-build/static/admin/_next/static/chunks/7c79804f.7a7112aece470725.js +0 -1
  201. fides/ui-build/static/admin/_next/static/chunks/8237-55049f8f5fd5e058.js +0 -1
  202. fides/ui-build/static/admin/_next/static/chunks/9014-eeae6f581158e645.js +0 -1
  203. fides/ui-build/static/admin/_next/static/chunks/9046-c8233981762585b4.js +0 -1
  204. fides/ui-build/static/admin/_next/static/chunks/9278-9b1b5970f0702668.js +0 -1
  205. fides/ui-build/static/admin/_next/static/chunks/9392.f4520f66206d347d.js +0 -1
  206. fides/ui-build/static/admin/_next/static/chunks/ea076c0a.84423f606aef37cd.js +0 -1
  207. fides/ui-build/static/admin/_next/static/chunks/pages/consent/reporting-8f891957c8944137.js +0 -1
  208. fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/[monitorId]/[systemId]-71579a199158952e.js +0 -1
  209. fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center/[monitorId]-7d3115059503b904.js +0 -1
  210. fides/ui-build/static/admin/_next/static/chunks/pages/data-discovery/action-center-85e140788e251272.js +0 -1
  211. fides/ui-build/static/admin/_next/static/chunks/pages/datamap-d2b275d83089820d.js +0 -1
  212. fides/ui-build/static/admin/_next/static/chunks/pages/integrations/[id]-f9c0eac932188593.js +0 -1
  213. fides/ui-build/static/admin/_next/static/chunks/pages/messaging-c1bd3e7adbe8d2d3.js +0 -1
  214. fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests-6a9068df48bdee05.js +0 -1
  215. fides/ui-build/static/admin/_next/static/chunks/pages/reporting/datamap-2a98bd257edd8f47.js +0 -1
  216. fides/ui-build/static/admin/_next/static/chunks/pages/taxonomy-0b9d1a24188f65a9.js +0 -1
  217. fides/ui-build/static/admin/_next/static/chunks/webpack-63a0c45b150a1037.js +0 -1
  218. fides/ui-build/static/admin/_next/static/hKDMNIRKgB86FSDpiOjHn/_buildManifest.js +0 -1
  219. {ethyca_fides-2.66.3b0.dist-info → ethyca_fides-2.67.0rc1.dist-info}/WHEEL +0 -0
  220. {ethyca_fides-2.66.3b0.dist-info → ethyca_fides-2.67.0rc1.dist-info}/entry_points.txt +0 -0
  221. {ethyca_fides-2.66.3b0.dist-info → ethyca_fides-2.67.0rc1.dist-info}/licenses/LICENSE +0 -0
  222. {ethyca_fides-2.66.3b0.dist-info → ethyca_fides-2.67.0rc1.dist-info}/top_level.txt +0 -0
  223. /fides/ui-build/static/admin/_next/static/{hKDMNIRKgB86FSDpiOjHn → ZIM71ZcqBBeTYHc-MN9_n}/_ssgManifest.js +0 -0
  224. /fides/ui-build/static/admin/_next/static/chunks/pages/{datastore-connection-0f29b47402292070.js → datastore-connection-3bd77864da523d41.js} +0 -0
  225. /fides/ui-build/static/admin/_next/static/chunks/pages/settings/about/{alpha-8f98a4895e74725e.js → alpha-1066f0c202ef744c.js} +0 -0
  226. /fides/ui-build/static/admin/_next/static/chunks/pages/settings/{about-8155a35a62fdb5ae.js → about-37ba24a72a06862e.js} +0 -0
  227. /fides/ui-build/static/admin/_next/static/chunks/pages/user-management/{new-bc4eb541906781e6.js → new-de8cb3739ab99c09.js} +0 -0
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8593],{13687:function(e,i,t){(window.__NEXT_P=window.__NEXT_P||[]).push(["/privacy-requests/configure/messaging",function(){return t(61463)}])},77213:function(e,i,t){"use strict";t.d(i,{Z:function(){return m}});var s=t(24246),n=t(13577),l=t(88038),r=t.n(l),a=t(86677);t(27378);var o=t(25980),c=t(90867),d=t(77830),u=()=>{let e=(0,a.useRouter)();return(0,s.jsx)(n.xuv,{bg:"gray.50",border:"1px solid",borderColor:"blue.400",borderRadius:"md",justifyContent:"space-between",p:5,mb:5,mt:5,children:(0,s.jsxs)(n.xuv,{children:[(0,s.jsxs)(n.Kqy,{direction:{base:"column",sm:"row"},justifyContent:"space-between",children:[(0,s.jsx)(n.xvT,{fontWeight:"semibold",children:"Configure your storage and messaging provider"}),(0,s.jsx)(n.wpx,{onClick:()=>{e.push(d.fz)},children:"Configure"})]}),(0,s.jsxs)(n.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:l=!0,mainProps:d}=e,m=(0,o.hz)(),p=(0,a.useRouter)(),x="/privacy-requests"===p.pathname||"/datastore-connection"===p.pathname,h=!(m.flags.privacyRequestsConfiguration&&x),{data:j}=(0,c.JE)(void 0,{skip:h}),{data:g}=(0,c.PW)(void 0,{skip:h}),y=m.flags.privacyRequestsConfiguration&&(!j||!g)&&x;return(0,s.jsxs)(n.kCb,{"data-testid":t,direction:"column",h:"100vh",children:[(0,s.jsxs)(r(),{children:[(0,s.jsxs)("title",{children:["Fides Admin UI - ",t]}),(0,s.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,s.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,s.jsxs)(n.kCb,{as:"main",direction:"column",py:l?6:0,px:l?10:0,h:l?"calc(100% - 48px)":"full",flex:1,minWidth:0,overflow:"auto",...d,children:[y?(0,s.jsx)(u,{}):null,i]})]})}},58754:function(e,i,t){"use strict";var s=t(24246),n=t(13577),l=t(70788);i.Z=e=>{let{heading:i,breadcrumbItems:t,isSticky:r=!0,children:a,rightContent:o,style:c,...d}=e;return(0,s.jsxs)("div",{...d,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",...c}:{paddingBottom:"24px",...c},children:[(0,s.jsxs)(n.jqI,{justify:"space-between",children:["string"==typeof i?(0,s.jsx)(n.lQT,{className:t||a?"pb-4":void 0,level:1,"data-testid":"page-heading",children:i}):i,o&&(0,s.jsx)("div",{"data-testid":"page-header-right-content",children:o})]}),!!t&&(0,s.jsx)(l.m,{className:a?"pb-4":void 0,items:t,"data-testid":"page-breadcrumb"}),a]})}},14047:function(e,i,t){"use strict";t.d(i,{H:function(){return l},V:function(){return s.V}});var s=t(84306),n=t(812);let l=()=>{let{errorAlert:e}=(0,s.V)();return{handleError:i=>{let t="An unexpected error occurred. Please try again.";(0,n.Ot)(i)?t=i.data.detail:(0,n.tB)(i)&&(t=i.data.detail[0].msg),e(t)}}}},84306:function(e,i,t){"use strict";t.d(i,{V:function(){return l}});var s=t(24246),n=t(13577);let l=()=>{let e=(0,n.pmc)();return{errorAlert:(i,t,l)=>{let r={...l,position:(null==l?void 0:l.position)||"top",render:e=>{let{onClose:l}=e;return(0,s.jsxs)(n.bZj,{alignItems:"normal",status:"error","data-testid":"error-alert",children:[(0,s.jsx)(n.zMQ,{}),(0,s.jsxs)(n.xuv,{children:[t&&(0,s.jsx)(n.CdC,{children:t}),(0,s.jsx)(n.XaZ,{children:i})]}),(0,s.jsx)(n.PZ7,{onClick:l,position:"relative",right:0,size:"sm",top:-1})]})}};(null==l?void 0:l.id)&&e.isActive(l.id)?e.update(l.id,r):e(r)},successAlert:(i,t,l)=>{let r={...l,position:(null==l?void 0:l.position)||"top",render:e=>{let{onClose:l}=e;return(0,s.jsxs)(n.bZj,{alignItems:"normal",status:"success",variant:"subtle","data-testid":"success-alert",children:[(0,s.jsx)(n.zMQ,{}),(0,s.jsxs)(n.xuv,{children:[t&&(0,s.jsx)(n.CdC,{children:t}),(0,s.jsx)(n.XaZ,{children:i})]}),(0,s.jsx)(n.PZ7,{onClick:l,position:"relative",right:0,size:"sm",top:-1})]})}};(null==l?void 0:l.id)&&e.isActive(l.id)?e.update(l.id,r):e(r)}}}},70788:function(e,i,t){"use strict";t.d(i,{m:function(){return c}});var s=t(24246),n=t(13577),l=t(79894),r=t.n(l),a=t(27378);let{Text:o}=n.AntTypography,c=e=>{let{items:i,...t}=e,l=(0,a.useMemo)(()=>null==i?void 0:i.map((e,t)=>{let l=t===i.length-1,a={...e},c=a.onClick&&!a.href;return("string"==typeof a.title&&(a.title=(0,s.jsx)(o,{style:{color:"inherit",maxWidth:l?void 0:400},ellipsis:!l,children:a.title})),c)?a.title=(0,s.jsx)(n.wpx,{type:"text",size:"small",icon:a.icon,onClick:a.onClick,className:"ant-breadcrumb-link -mt-px px-1 text-inherit",children:a.title}):(a.icon&&(a.title=(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{className:"anticon align-text-bottom",children:a.icon}),a.title]})),a.href&&a.title&&(a.title=(0,s.jsx)(r(),{href:a.href,className:"ant-breadcrumb-link",children:a.title}),delete a.href)),a}),[i]);return(0,s.jsx)(n.zrq,{items:l,...t})}},71784:function(e,i,t){"use strict";t.d(i,{DE:function(){return o},I3:function(){return n},kN:function(){return r},qX:function(){return a},rE:function(){return l}});var s=t(73825);let n=[...new Map([[s.q2.APPROVED,"Approved"],[s.q2.AWAITING_EMAIL_SEND,"Awaiting email send"],[s.q2.CANCELED,"Canceled"],[s.q2.COMPLETE,"Completed"],[s.q2.DENIED,"Denied"],[s.q2.ERROR,"Error"],[s.q2.IN_PROCESSING,"In progress"],[s.q2.PENDING,"New"],[s.q2.PAUSED,"Paused"],[s.q2.IDENTITY_UNVERIFIED,"Unverified"],[s.q2.REQUIRES_INPUT,"Requires input"],[s.q2.REQUIRES_MANUAL_FINALIZATION,"Requires finalization"]])].map(e=>{let[i,t]=e;return{label:t,value:i}}),l=new Map([[s.Us.ACCESS,"Access"],[s.Us.ERASURE,"Erasure"],[s.Us.CONSENT,"Consent"],[s.Us.UPDATE,"Update"]]),r=[...l].map(e=>{let[i,t]=e;return{label:t,value:i}}),a={mailgun:"mailgun",twilio_email:"twilio_email",twilio_text:"twilio_text"},o={local:"local",s3:"s3",gcs:"gcs"}},61463:function(e,i,t){"use strict";t.r(i),t.d(i,{default:function(){return _}});var s=t(24246),n=t(13577),l=t(27378),r=t(812),a=t(14047),o=t(77213),c=t(77830),d=t(58754),u=t(7426),m=t(71784),p=t(90867),x=t(34090),h=t(40324),j=e=>{let{messagingDetails:i}=e,{successAlert:t}=(0,a.V)(),{handleError:l}=(0,a.H)(),[o]=(0,p.SU)(),c=i.service_type===m.qX.twilio_email||i.service_type===m.qX.mailgun,d=i.service_type===m.qX.twilio_text,u=async e=>{if(c){let i=await o({email:e.email});(0,r.D4)(i)?l(i.error):t("Test message successfully sent.")}if(d){let i=await o({phone_number:e.phone});(0,r.D4)(i)?l(i.error):t("Test message successfully sent.")}};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.izJ,{mt:10}),(0,s.jsx)(n.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,mb:5,children:"Test connection"}),(0,s.jsx)(n.Kqy,{children:(0,s.jsx)(x.J9,{initialValues:{email:"",phone:""},onSubmit:u,children:e=>{let{isSubmitting:i,resetForm:t}=e;return(0,s.jsxs)(x.l0,{children:[c?(0,s.jsx)(h.j0,{name:"email",label:"Email",placeholder:"youremail@domain.com",isRequired:!0}):null,d?(0,s.jsx)(h.j0,{name:"phone",label:"Phone",placeholder:"+10000000000",isRequired:!0}):null,(0,s.jsxs)(n.xuv,{mt:10,children:[(0,s.jsx)(n.wpx,{onClick:()=>t(),className:"mr-2",children:"Cancel"}),(0,s.jsx)(n.wpx,{disabled:i,htmlType:"submit",type:"primary","data-testid":"save-btn",children:"Save"})]})]})}})})]})},g=()=>{var e;let{successAlert:i}=(0,a.V)(),[t,o]=(0,l.useState)(""),{handleError:c}=(0,a.H)(),{data:d}=(0,p.S3)({type:m.qX.mailgun}),[u]=(0,p.h9)(),[g]=(0,p.iI)(),y=async e=>{let t=await u({service_type:m.qX.mailgun,details:{is_eu_domain:"false",domain:e.domain}});(0,r.D4)(t)?c(t.error):(i("Mailgun email successfully updated. You can now enter your security key."),o("apiKey"))},v=async e=>{let t=await g({details:{mailgun_api_key:e.api_key},service_type:m.qX.mailgun});(0,r.D4)(t)?c(t.error):(i("Mailgun security key successfully updated."),o("testConnection"))},f={domain:null!==(e=null==d?void 0:d.details.domain)&&void 0!==e?e:""};return(0,s.jsxs)(n.xuv,{children:[(0,s.jsx)(n.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"Mailgun messaging configuration"}),(0,s.jsx)(n.Kqy,{children:(0,s.jsx)(x.J9,{initialValues:f,onSubmit:y,enableReinitialize:!0,children:e=>{let{isSubmitting:i,handleReset:t}=e;return(0,s.jsxs)(x.l0,{children:[(0,s.jsx)(n.Kqy,{mt:5,spacing:5,children:(0,s.jsx)(h.j0,{name:"domain",label:"Domain",placeholder:"Enter domain","data-testid":"option-twilio-domain",isRequired:!0})}),(0,s.jsxs)(n.xuv,{mt:10,children:[(0,s.jsx)(n.wpx,{onClick:t,className:"mr-2",children:"Cancel"}),(0,s.jsx)(n.wpx,{htmlType:"submit",disabled:i,type:"primary","data-testid":"save-btn",children:"Save"})]})]})}})}),"apiKey"===t||"testConnection"===t?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.izJ,{mt:10}),(0,s.jsx)(n.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"Security key"}),(0,s.jsx)(n.Kqy,{children:(0,s.jsx)(x.J9,{initialValues:{api_key:""},onSubmit:v,children:e=>{let{isSubmitting:i,handleReset:t}=e;return(0,s.jsxs)(x.l0,{children:[(0,s.jsx)(h.j0,{name:"api_key",label:"API key",type:"password",isRequired:!0}),(0,s.jsxs)(n.xuv,{mt:10,children:[(0,s.jsx)(n.wpx,{onClick:t,className:"mr-2",children:"Cancel"}),(0,s.jsx)(n.wpx,{disabled:i,htmlType:"submit",type:"primary","data-testid":"save-btn",children:"Save"})]})]})}})})]}):null,"testConnection"===t?(0,s.jsx)(j,{messagingDetails:d||{service_type:m.qX.mailgun}}):null]})},y=()=>{var e;let[i,t]=(0,l.useState)(""),{successAlert:o}=(0,a.V)(),{handleError:c}=(0,a.H)(),{data:d}=(0,p.S3)({type:m.qX.twilio_email}),[u]=(0,p.h9)(),[g]=(0,p.iI)(),y=async e=>{let i=await u({service_type:m.qX.twilio_email,details:{twilio_email_from:e.email}});(0,r.D4)(i)?c(i.error):(o("Twilio email successfully updated. You can now enter your security key."),t("configureTwilioEmailSecrets"))},v=async e=>{let i=await g({details:{twilio_api_key:e.api_key},service_type:m.qX.twilio_email});(0,r.D4)(i)?c(i.error):(o("Twilio email secrets successfully updated."),t("testConnection"))},f={email:null!==(e=null==d?void 0:d.details.twilio_email_from)&&void 0!==e?e:""};return(0,s.jsxs)(n.xuv,{children:[(0,s.jsx)(n.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"Twilio Email messaging configuration"}),(0,s.jsx)(n.Kqy,{children:(0,s.jsx)(x.J9,{initialValues:f,onSubmit:y,enableReinitialize:!0,children:e=>{let{isSubmitting:i,handleReset:t}=e;return(0,s.jsxs)(x.l0,{children:[(0,s.jsx)(n.Kqy,{mt:5,spacing:5,children:(0,s.jsx)(h.j0,{name:"email",label:"Email",placeholder:"Enter email",isRequired:!0})}),(0,s.jsxs)(n.xuv,{mt:10,children:[(0,s.jsx)(n.wpx,{onClick:()=>t(),className:"mr-2",children:"Cancel"}),(0,s.jsx)(n.wpx,{disabled:i,htmlType:"submit",type:"primary","data-testid":"save-btn",children:"Save"})]})]})}})}),"configureTwilioEmailSecrets"===i||"testConnection"===i?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.izJ,{mt:10}),(0,s.jsx)(n.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"Security key"}),(0,s.jsx)(n.Kqy,{children:(0,s.jsx)(x.J9,{initialValues:{api_key:""},onSubmit:v,children:e=>{let{isSubmitting:i,handleReset:t}=e;return(0,s.jsxs)(x.l0,{children:[(0,s.jsx)(n.Kqy,{mt:5,spacing:5,children:(0,s.jsx)(h.j0,{name:"api_key",label:"API key",type:"password",isRequired:!0})}),(0,s.jsxs)(n.xuv,{mt:10,children:[(0,s.jsx)(n.wpx,{onClick:()=>t(),className:"mr-2",children:"Cancel"}),(0,s.jsx)(n.wpx,{disabled:i,htmlType:"submit",type:"primary","data-testid":"save-btn",children:"Save"})]})]})}})})]}):null,"testConnection"===i?(0,s.jsx)(j,{messagingDetails:d||{service_type:m.qX.twilio_email}}):null]})},v=()=>{let{successAlert:e}=(0,a.V)(),{handleError:i}=(0,a.H)(),[t,o]=(0,l.useState)(""),{data:c}=(0,p.S3)({type:"twilio_text"}),[d]=(0,p.iI)(),u=async t=>{let s=await d({details:{twilio_account_sid:t.account_sid,twilio_auth_token:t.auth_token,twilio_messaging_service_sid:t.messaging_service_sid,twilio_sender_phone_number:t.phone},service_type:m.qX.twilio_text});(0,r.D4)(s)?i(s.error):(e("Twilio text secrets successfully updated."),o("testConnection"))};return(0,s.jsxs)(n.xuv,{children:[(0,s.jsx)(n.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"Twilio SMS messaging configuration"}),(0,s.jsx)(n.Kqy,{children:(0,s.jsx)(x.J9,{initialValues:{account_sid:"",auth_token:"",messaging_service_sid:"",phone:""},onSubmit:u,enableReinitialize:!0,children:e=>{let{isSubmitting:i,handleReset:t}=e;return(0,s.jsxs)(x.l0,{children:[(0,s.jsxs)(n.Kqy,{mt:5,spacing:5,children:[(0,s.jsx)(h.j0,{name:"account_sid",label:"Account SID",placeholder:"Enter account SID",isRequired:!0}),(0,s.jsx)(h.j0,{name:"auth_token",label:"Auth token",placeholder:"Enter auth token",type:"password",isRequired:!0}),(0,s.jsx)(h.j0,{name:"messaging_service_sid",label:"Messaging Service SID",placeholder:"Enter messaging service SID"}),(0,s.jsx)(h.j0,{name:"phone",label:"Phone Number",placeholder:"Enter phone number"})]}),(0,s.jsxs)(n.xuv,{mt:10,children:[(0,s.jsx)(n.wpx,{onClick:()=>t(),className:"mr-2",children:"Cancel"}),(0,s.jsx)(n.wpx,{disabled:i,htmlType:"submit",type:"primary","data-testid":"save-btn",children:"Save"})]})]})}})}),"testConnection"===t?(0,s.jsx)(j,{messagingDetails:c||{service_type:m.qX.twilio_text}}):null]})},f=()=>{let{successAlert:e}=(0,a.V)(),{handleError:i}=(0,a.H)(),[t,x]=(0,l.useState)(""),[h]=(0,p.h9)(),[j]=(0,u.L)(),{data:f}=(0,p.JE)();(0,l.useEffect)(()=>{f&&x(null==f?void 0:f.service_type)},[f]);let _=async t=>{let{value:s}=t.target,n=await j({notifications:{notification_service_type:s,send_request_completion_notification:!0,send_request_receipt_notification:!0,send_request_review_notification:!0},execution:{subject_identity_verification_required:!0}});if((0,r.D4)(n))i(n.error);else if(s!==m.qX.twilio_text)x(s);else{let t=await h({service_type:m.qX.twilio_text});(0,r.D4)(t)?i(t.error):(e("Messaging provider saved successfully."),x(s))}};return(0,s.jsxs)(o.Z,{title:"Configure Privacy Requests - Messaging",children:[(0,s.jsx)(d.Z,{heading:"Privacy Requests",breadcrumbItems:[{title:"All requests",href:c.Jw},{title:"Configure requests",href:c.fz},{title:"Messaging"}]}),(0,s.jsx)(n.X6q,{mb:5,fontSize:"md",fontWeight:"semibold",children:"Configure your messaging provider"}),(0,s.jsxs)(n.xuv,{display:"flex",flexDirection:"column",width:"50%",children:[(0,s.jsxs)(n.xuv,{children:["Fides requires a messsaging provider for sending processing notices to privacy request subjects, and allows for Subject Identity Verification in privacy requests. Please follow the"," ",(0,s.jsx)(n.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,s.jsx)(n.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"Choose service type to configure"}),(0,s.jsx)(n.y02.Group,{onChange:_,value:t,"data-testid":"privacy-requests-messaging-provider-selection",className:"p-3",children:(0,s.jsxs)(n.jqI,{children:[(0,s.jsx)(n.y02,{value:m.qX.mailgun,"data-testid":"option-mailgun",children:"Mailgun Email"},m.qX.mailgun),(0,s.jsx)(n.y02,{value:m.qX.twilio_email,"data-testid":"option-twilio-email",children:"Twilio Email"},m.qX.twilio_email),(0,s.jsx)(n.y02,{value:m.qX.twilio_text,"data-testid":"option-twilio-sms",children:"Twilio SMS"},m.qX.twilio_text)]})}),t===m.qX.mailgun?(0,s.jsx)(g,{}):null,t===m.qX.twilio_email?(0,s.jsx)(y,{}):null,t===m.qX.twilio_text?(0,s.jsx)(v,{}):null]})]})},_=()=>(0,s.jsx)(f,{})}},function(e){e.O(0,[2888,9774,179],function(){return e(e.s=13687)}),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8593],{13687:function(e,i,t){(window.__NEXT_P=window.__NEXT_P||[]).push(["/privacy-requests/configure/messaging",function(){return t(61463)}])},77213:function(e,i,t){"use strict";t.d(i,{Z:function(){return m}});var s=t(24246),n=t(13577),l=t(88038),r=t.n(l),a=t(86677);t(27378);var o=t(25980),c=t(90867),d=t(77830),u=()=>{let e=(0,a.useRouter)();return(0,s.jsx)(n.xuv,{bg:"gray.50",border:"1px solid",borderColor:"blue.400",borderRadius:"md",justifyContent:"space-between",p:5,mb:5,mt:5,children:(0,s.jsxs)(n.xuv,{children:[(0,s.jsxs)(n.Kqy,{direction:{base:"column",sm:"row"},justifyContent:"space-between",children:[(0,s.jsx)(n.xvT,{fontWeight:"semibold",children:"Configure your storage and messaging provider"}),(0,s.jsx)(n.wpx,{onClick:()=>{e.push(d.fz)},children:"Configure"})]}),(0,s.jsxs)(n.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:l=!0,mainProps:d}=e,m=(0,o.hz)(),p=(0,a.useRouter)(),x="/privacy-requests"===p.pathname||"/datastore-connection"===p.pathname,h=!(m.flags.privacyRequestsConfiguration&&x),{data:j}=(0,c.JE)(void 0,{skip:h}),{data:g}=(0,c.PW)(void 0,{skip:h}),y=m.flags.privacyRequestsConfiguration&&(!j||!g)&&x;return(0,s.jsxs)(n.kCb,{"data-testid":t,direction:"column",h:"100vh",children:[(0,s.jsxs)(r(),{children:[(0,s.jsxs)("title",{children:["Fides Admin UI - ",t]}),(0,s.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,s.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,s.jsxs)(n.kCb,{as:"main",direction:"column",py:l?6:0,px:l?10:0,h:l?"calc(100% - 48px)":"full",flex:1,minWidth:0,overflow:"auto",...d,children:[y?(0,s.jsx)(u,{}):null,i]})]})}},58754:function(e,i,t){"use strict";var s=t(24246),n=t(13577),l=t(70788);i.Z=e=>{let{heading:i,breadcrumbItems:t,isSticky:r=!0,children:a,rightContent:o,style:c,...d}=e;return(0,s.jsxs)("div",{...d,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",...c}:{paddingBottom:"24px",...c},children:[(0,s.jsxs)(n.jqI,{justify:"space-between",children:["string"==typeof i?(0,s.jsx)(n.lQT,{className:t||a?"pb-4":void 0,level:1,"data-testid":"page-heading",children:i}):i,o&&(0,s.jsx)("div",{"data-testid":"page-header-right-content",children:o})]}),!!t&&(0,s.jsx)(l.m,{className:a?"pb-4":void 0,items:t,"data-testid":"page-breadcrumb"}),a]})}},14047:function(e,i,t){"use strict";t.d(i,{H:function(){return l},V:function(){return s.V}});var s=t(84306),n=t(812);let l=()=>{let{errorAlert:e}=(0,s.V)();return{handleError:i=>{let t="An unexpected error occurred. Please try again.";(0,n.Ot)(i)?t=i.data.detail:(0,n.tB)(i)&&(t=i.data.detail[0].msg),e(t)}}}},84306:function(e,i,t){"use strict";t.d(i,{V:function(){return l}});var s=t(24246),n=t(13577);let l=()=>{let e=(0,n.pmc)();return{errorAlert:(i,t,l)=>{let r={...l,position:(null==l?void 0:l.position)||"top",render:e=>{let{onClose:l}=e;return(0,s.jsxs)(n.bZj,{alignItems:"normal",status:"error","data-testid":"error-alert",children:[(0,s.jsx)(n.zMQ,{}),(0,s.jsxs)(n.xuv,{children:[t&&(0,s.jsx)(n.CdC,{children:t}),(0,s.jsx)(n.XaZ,{children:i})]}),(0,s.jsx)(n.PZ7,{onClick:l,position:"relative",right:0,size:"sm",top:-1})]})}};(null==l?void 0:l.id)&&e.isActive(l.id)?e.update(l.id,r):e(r)},successAlert:(i,t,l)=>{let r={...l,position:(null==l?void 0:l.position)||"top",render:e=>{let{onClose:l}=e;return(0,s.jsxs)(n.bZj,{alignItems:"normal",status:"success",variant:"subtle","data-testid":"success-alert",children:[(0,s.jsx)(n.zMQ,{}),(0,s.jsxs)(n.xuv,{children:[t&&(0,s.jsx)(n.CdC,{children:t}),(0,s.jsx)(n.XaZ,{children:i})]}),(0,s.jsx)(n.PZ7,{onClick:l,position:"relative",right:0,size:"sm",top:-1})]})}};(null==l?void 0:l.id)&&e.isActive(l.id)?e.update(l.id,r):e(r)}}}},70788:function(e,i,t){"use strict";t.d(i,{m:function(){return c}});var s=t(24246),n=t(13577),l=t(79894),r=t.n(l),a=t(27378);let{Text:o}=n.AntTypography,c=e=>{let{items:i,...t}=e,l=(0,a.useMemo)(()=>null==i?void 0:i.map((e,t)=>{let l=t===i.length-1,a={...e},c=a.onClick&&!a.href;return("string"==typeof a.title&&(a.title=(0,s.jsx)(o,{style:{color:"inherit",maxWidth:l?void 0:400},ellipsis:!l,children:a.title})),c)?a.title=(0,s.jsx)(n.wpx,{type:"text",size:"small",icon:a.icon,onClick:a.onClick,className:"ant-breadcrumb-link -mt-px px-1 text-inherit",children:a.title}):(a.icon&&(a.title=(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{className:"anticon align-text-bottom",children:a.icon}),a.title]})),a.href&&a.title&&(a.title=(0,s.jsx)(r(),{href:a.href,className:"ant-breadcrumb-link",children:a.title}),delete a.href)),a}),[i]);return(0,s.jsx)(n.zrq,{items:l,...t})}},71784:function(e,i,t){"use strict";t.d(i,{DE:function(){return o},I3:function(){return n},kN:function(){return r},qX:function(){return a},rE:function(){return l}});var s=t(54682);let n=[...new Map([[s.q2.APPROVED,"Approved"],[s.q2.AWAITING_EMAIL_SEND,"Awaiting email send"],[s.q2.CANCELED,"Canceled"],[s.q2.COMPLETE,"Completed"],[s.q2.DENIED,"Denied"],[s.q2.ERROR,"Error"],[s.q2.IN_PROCESSING,"In progress"],[s.q2.PENDING,"New"],[s.q2.PAUSED,"Paused"],[s.q2.IDENTITY_UNVERIFIED,"Unverified"],[s.q2.REQUIRES_INPUT,"Requires input"],[s.q2.REQUIRES_MANUAL_FINALIZATION,"Requires finalization"]])].map(e=>{let[i,t]=e;return{label:t,value:i}}),l=new Map([[s.Us.ACCESS,"Access"],[s.Us.ERASURE,"Erasure"],[s.Us.CONSENT,"Consent"],[s.Us.UPDATE,"Update"]]),r=[...l].map(e=>{let[i,t]=e;return{label:t,value:i}}),a={mailgun:"mailgun",twilio_email:"twilio_email",twilio_text:"twilio_text"},o={local:"local",s3:"s3",gcs:"gcs"}},61463:function(e,i,t){"use strict";t.r(i),t.d(i,{default:function(){return _}});var s=t(24246),n=t(13577),l=t(27378),r=t(812),a=t(14047),o=t(77213),c=t(77830),d=t(58754),u=t(7426),m=t(71784),p=t(90867),x=t(34090),h=t(40324),j=e=>{let{messagingDetails:i}=e,{successAlert:t}=(0,a.V)(),{handleError:l}=(0,a.H)(),[o]=(0,p.SU)(),c=i.service_type===m.qX.twilio_email||i.service_type===m.qX.mailgun,d=i.service_type===m.qX.twilio_text,u=async e=>{if(c){let i=await o({email:e.email});(0,r.D4)(i)?l(i.error):t("Test message successfully sent.")}if(d){let i=await o({phone_number:e.phone});(0,r.D4)(i)?l(i.error):t("Test message successfully sent.")}};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.izJ,{mt:10}),(0,s.jsx)(n.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,mb:5,children:"Test connection"}),(0,s.jsx)(n.Kqy,{children:(0,s.jsx)(x.J9,{initialValues:{email:"",phone:""},onSubmit:u,children:e=>{let{isSubmitting:i,resetForm:t}=e;return(0,s.jsxs)(x.l0,{children:[c?(0,s.jsx)(h.j0,{name:"email",label:"Email",placeholder:"youremail@domain.com",isRequired:!0}):null,d?(0,s.jsx)(h.j0,{name:"phone",label:"Phone",placeholder:"+10000000000",isRequired:!0}):null,(0,s.jsxs)(n.xuv,{mt:10,children:[(0,s.jsx)(n.wpx,{onClick:()=>t(),className:"mr-2",children:"Cancel"}),(0,s.jsx)(n.wpx,{disabled:i,htmlType:"submit",type:"primary","data-testid":"save-btn",children:"Save"})]})]})}})})]})},g=()=>{var e;let{successAlert:i}=(0,a.V)(),[t,o]=(0,l.useState)(""),{handleError:c}=(0,a.H)(),{data:d}=(0,p.S3)({type:m.qX.mailgun}),[u]=(0,p.h9)(),[g]=(0,p.iI)(),y=async e=>{let t=await u({service_type:m.qX.mailgun,details:{is_eu_domain:"false",domain:e.domain}});(0,r.D4)(t)?c(t.error):(i("Mailgun email successfully updated. You can now enter your security key."),o("apiKey"))},v=async e=>{let t=await g({details:{mailgun_api_key:e.api_key},service_type:m.qX.mailgun});(0,r.D4)(t)?c(t.error):(i("Mailgun security key successfully updated."),o("testConnection"))},f={domain:null!==(e=null==d?void 0:d.details.domain)&&void 0!==e?e:""};return(0,s.jsxs)(n.xuv,{children:[(0,s.jsx)(n.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"Mailgun messaging configuration"}),(0,s.jsx)(n.Kqy,{children:(0,s.jsx)(x.J9,{initialValues:f,onSubmit:y,enableReinitialize:!0,children:e=>{let{isSubmitting:i,handleReset:t}=e;return(0,s.jsxs)(x.l0,{children:[(0,s.jsx)(n.Kqy,{mt:5,spacing:5,children:(0,s.jsx)(h.j0,{name:"domain",label:"Domain",placeholder:"Enter domain","data-testid":"option-twilio-domain",isRequired:!0})}),(0,s.jsxs)(n.xuv,{mt:10,children:[(0,s.jsx)(n.wpx,{onClick:t,className:"mr-2",children:"Cancel"}),(0,s.jsx)(n.wpx,{htmlType:"submit",disabled:i,type:"primary","data-testid":"save-btn",children:"Save"})]})]})}})}),"apiKey"===t||"testConnection"===t?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.izJ,{mt:10}),(0,s.jsx)(n.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"Security key"}),(0,s.jsx)(n.Kqy,{children:(0,s.jsx)(x.J9,{initialValues:{api_key:""},onSubmit:v,children:e=>{let{isSubmitting:i,handleReset:t}=e;return(0,s.jsxs)(x.l0,{children:[(0,s.jsx)(h.j0,{name:"api_key",label:"API key",type:"password",isRequired:!0}),(0,s.jsxs)(n.xuv,{mt:10,children:[(0,s.jsx)(n.wpx,{onClick:t,className:"mr-2",children:"Cancel"}),(0,s.jsx)(n.wpx,{disabled:i,htmlType:"submit",type:"primary","data-testid":"save-btn",children:"Save"})]})]})}})})]}):null,"testConnection"===t?(0,s.jsx)(j,{messagingDetails:d||{service_type:m.qX.mailgun}}):null]})},y=()=>{var e;let[i,t]=(0,l.useState)(""),{successAlert:o}=(0,a.V)(),{handleError:c}=(0,a.H)(),{data:d}=(0,p.S3)({type:m.qX.twilio_email}),[u]=(0,p.h9)(),[g]=(0,p.iI)(),y=async e=>{let i=await u({service_type:m.qX.twilio_email,details:{twilio_email_from:e.email}});(0,r.D4)(i)?c(i.error):(o("Twilio email successfully updated. You can now enter your security key."),t("configureTwilioEmailSecrets"))},v=async e=>{let i=await g({details:{twilio_api_key:e.api_key},service_type:m.qX.twilio_email});(0,r.D4)(i)?c(i.error):(o("Twilio email secrets successfully updated."),t("testConnection"))},f={email:null!==(e=null==d?void 0:d.details.twilio_email_from)&&void 0!==e?e:""};return(0,s.jsxs)(n.xuv,{children:[(0,s.jsx)(n.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"Twilio Email messaging configuration"}),(0,s.jsx)(n.Kqy,{children:(0,s.jsx)(x.J9,{initialValues:f,onSubmit:y,enableReinitialize:!0,children:e=>{let{isSubmitting:i,handleReset:t}=e;return(0,s.jsxs)(x.l0,{children:[(0,s.jsx)(n.Kqy,{mt:5,spacing:5,children:(0,s.jsx)(h.j0,{name:"email",label:"Email",placeholder:"Enter email",isRequired:!0})}),(0,s.jsxs)(n.xuv,{mt:10,children:[(0,s.jsx)(n.wpx,{onClick:()=>t(),className:"mr-2",children:"Cancel"}),(0,s.jsx)(n.wpx,{disabled:i,htmlType:"submit",type:"primary","data-testid":"save-btn",children:"Save"})]})]})}})}),"configureTwilioEmailSecrets"===i||"testConnection"===i?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.izJ,{mt:10}),(0,s.jsx)(n.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"Security key"}),(0,s.jsx)(n.Kqy,{children:(0,s.jsx)(x.J9,{initialValues:{api_key:""},onSubmit:v,children:e=>{let{isSubmitting:i,handleReset:t}=e;return(0,s.jsxs)(x.l0,{children:[(0,s.jsx)(n.Kqy,{mt:5,spacing:5,children:(0,s.jsx)(h.j0,{name:"api_key",label:"API key",type:"password",isRequired:!0})}),(0,s.jsxs)(n.xuv,{mt:10,children:[(0,s.jsx)(n.wpx,{onClick:()=>t(),className:"mr-2",children:"Cancel"}),(0,s.jsx)(n.wpx,{disabled:i,htmlType:"submit",type:"primary","data-testid":"save-btn",children:"Save"})]})]})}})})]}):null,"testConnection"===i?(0,s.jsx)(j,{messagingDetails:d||{service_type:m.qX.twilio_email}}):null]})},v=()=>{let{successAlert:e}=(0,a.V)(),{handleError:i}=(0,a.H)(),[t,o]=(0,l.useState)(""),{data:c}=(0,p.S3)({type:"twilio_text"}),[d]=(0,p.iI)(),u=async t=>{let s=await d({details:{twilio_account_sid:t.account_sid,twilio_auth_token:t.auth_token,twilio_messaging_service_sid:t.messaging_service_sid,twilio_sender_phone_number:t.phone},service_type:m.qX.twilio_text});(0,r.D4)(s)?i(s.error):(e("Twilio text secrets successfully updated."),o("testConnection"))};return(0,s.jsxs)(n.xuv,{children:[(0,s.jsx)(n.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"Twilio SMS messaging configuration"}),(0,s.jsx)(n.Kqy,{children:(0,s.jsx)(x.J9,{initialValues:{account_sid:"",auth_token:"",messaging_service_sid:"",phone:""},onSubmit:u,enableReinitialize:!0,children:e=>{let{isSubmitting:i,handleReset:t}=e;return(0,s.jsxs)(x.l0,{children:[(0,s.jsxs)(n.Kqy,{mt:5,spacing:5,children:[(0,s.jsx)(h.j0,{name:"account_sid",label:"Account SID",placeholder:"Enter account SID",isRequired:!0}),(0,s.jsx)(h.j0,{name:"auth_token",label:"Auth token",placeholder:"Enter auth token",type:"password",isRequired:!0}),(0,s.jsx)(h.j0,{name:"messaging_service_sid",label:"Messaging Service SID",placeholder:"Enter messaging service SID"}),(0,s.jsx)(h.j0,{name:"phone",label:"Phone Number",placeholder:"Enter phone number"})]}),(0,s.jsxs)(n.xuv,{mt:10,children:[(0,s.jsx)(n.wpx,{onClick:()=>t(),className:"mr-2",children:"Cancel"}),(0,s.jsx)(n.wpx,{disabled:i,htmlType:"submit",type:"primary","data-testid":"save-btn",children:"Save"})]})]})}})}),"testConnection"===t?(0,s.jsx)(j,{messagingDetails:c||{service_type:m.qX.twilio_text}}):null]})},f=()=>{let{successAlert:e}=(0,a.V)(),{handleError:i}=(0,a.H)(),[t,x]=(0,l.useState)(""),[h]=(0,p.h9)(),[j]=(0,u.L)(),{data:f}=(0,p.JE)();(0,l.useEffect)(()=>{f&&x(null==f?void 0:f.service_type)},[f]);let _=async t=>{let{value:s}=t.target,n=await j({notifications:{notification_service_type:s,send_request_completion_notification:!0,send_request_receipt_notification:!0,send_request_review_notification:!0},execution:{subject_identity_verification_required:!0}});if((0,r.D4)(n))i(n.error);else if(s!==m.qX.twilio_text)x(s);else{let t=await h({service_type:m.qX.twilio_text});(0,r.D4)(t)?i(t.error):(e("Messaging provider saved successfully."),x(s))}};return(0,s.jsxs)(o.Z,{title:"Configure Privacy Requests - Messaging",children:[(0,s.jsx)(d.Z,{heading:"Privacy Requests",breadcrumbItems:[{title:"All requests",href:c.Jw},{title:"Configure requests",href:c.fz},{title:"Messaging"}]}),(0,s.jsx)(n.X6q,{mb:5,fontSize:"md",fontWeight:"semibold",children:"Configure your messaging provider"}),(0,s.jsxs)(n.xuv,{display:"flex",flexDirection:"column",width:"50%",children:[(0,s.jsxs)(n.xuv,{children:["Fides requires a messsaging provider for sending processing notices to privacy request subjects, and allows for Subject Identity Verification in privacy requests. Please follow the"," ",(0,s.jsx)(n.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,s.jsx)(n.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"Choose service type to configure"}),(0,s.jsx)(n.y02.Group,{onChange:_,value:t,"data-testid":"privacy-requests-messaging-provider-selection",className:"p-3",children:(0,s.jsxs)(n.jqI,{children:[(0,s.jsx)(n.y02,{value:m.qX.mailgun,"data-testid":"option-mailgun",children:"Mailgun Email"},m.qX.mailgun),(0,s.jsx)(n.y02,{value:m.qX.twilio_email,"data-testid":"option-twilio-email",children:"Twilio Email"},m.qX.twilio_email),(0,s.jsx)(n.y02,{value:m.qX.twilio_text,"data-testid":"option-twilio-sms",children:"Twilio SMS"},m.qX.twilio_text)]})}),t===m.qX.mailgun?(0,s.jsx)(g,{}):null,t===m.qX.twilio_email?(0,s.jsx)(y,{}):null,t===m.qX.twilio_text?(0,s.jsx)(v,{}):null]})]})},_=()=>(0,s.jsx)(f,{})}},function(e){e.O(0,[2888,9774,179],function(){return e(e.s=13687)}),_N_E=e.O()}]);
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5979],{23663:function(e,t,i){(window.__NEXT_P=window.__NEXT_P||[]).push(["/privacy-requests/configure/storage",function(){return i(64665)}])},77213:function(e,t,i){"use strict";i.d(t,{Z:function(){return m}});var s=i(24246),a=i(13577),r=i(88038),l=i.n(r),n=i(86677);i(27378);var o=i(25980),d=i(90867),c=i(77830),u=()=>{let e=(0,n.useRouter)();return(0,s.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,s.jsxs)(a.xuv,{children:[(0,s.jsxs)(a.Kqy,{direction:{base:"column",sm:"row"},justifyContent:"space-between",children:[(0,s.jsx)(a.xvT,{fontWeight:"semibold",children:"Configure your storage and messaging provider"}),(0,s.jsx)(a.wpx,{onClick:()=>{e.push(c.fz)},children:"Configure"})]}),(0,s.jsxs)(a.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:r=!0,mainProps:c}=e,m=(0,o.hz)(),h=(0,n.useRouter)(),p="/privacy-requests"===h.pathname||"/datastore-connection"===h.pathname,x=!(m.flags.privacyRequestsConfiguration&&p),{data:j}=(0,d.JE)(void 0,{skip:x}),{data:v}=(0,d.PW)(void 0,{skip:x}),_=m.flags.privacyRequestsConfiguration&&(!j||!v)&&p;return(0,s.jsxs)(a.kCb,{"data-testid":i,direction:"column",h:"100vh",children:[(0,s.jsxs)(l(),{children:[(0,s.jsxs)("title",{children:["Fides Admin UI - ",i]}),(0,s.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,s.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,s.jsxs)(a.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:[_?(0,s.jsx)(u,{}):null,t]})]})}},58754:function(e,t,i){"use strict";var s=i(24246),a=i(13577),r=i(70788);t.Z=e=>{let{heading:t,breadcrumbItems:i,isSticky:l=!0,children:n,rightContent:o,style:d,...c}=e;return(0,s.jsxs)("div",{...c,style:l?{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,s.jsxs)(a.jqI,{justify:"space-between",children:["string"==typeof t?(0,s.jsx)(a.lQT,{className:i||n?"pb-4":void 0,level:1,"data-testid":"page-heading",children:t}):t,o&&(0,s.jsx)("div",{"data-testid":"page-header-right-content",children:o})]}),!!i&&(0,s.jsx)(r.m,{className:n?"pb-4":void 0,items:i,"data-testid":"page-breadcrumb"}),n]})}},97181:function(e,t,i){"use strict";i.d(t,{d:function(){return d}});var s=i(24246),a=i(13577),r=i(34090),l=i(27378),n=i(46238),o=i(40324);let d=e=>{let{name:t,label:i,labelProps:d,tooltip:c,isRequired:u,layout:m="inline",helperText:h,...p}=e,[x,j,{setValue:v}]=(0,r.U$)(t),_=!!(j.touched&&j.error),[g,f]=(0,l.useState)("");x.value||"tags"!==p.mode&&"multiple"!==p.mode||(x.value=[]),"tags"===p.mode&&"string"==typeof x.value&&(x.value=[x.value]);let y="tags"===p.mode?(e,t)=>e?e.value!==g||x.value.includes(g)?p.optionRender?p.optionRender(e,t):e.label:'Create "'.concat(g,'"'):void 0:p.optionRender||void 0,b=e=>{f(e),p.onSearch&&p.onSearch(e)},k=(e,t)=>{v(e),p.onChange&&p.onChange(e,t)};return"inline"===m?(0,s.jsx)(a.NIc,{isInvalid:_,isRequired:u,children:(0,s.jsxs)(a.rjZ,{templateColumns:i?"1fr 3fr":"1fr",children:[i?(0,s.jsx)(o.__,{htmlFor:p.id||t,...d,children:i}):null,(0,s.jsxs)(a.jqI,{align:"center",children:[(0,s.jsxs)(a.jqI,{vertical:!0,flex:1,className:"mr-2",children:[(0,s.jsx)(a.WPr,{...x,id:p.id||t,"data-testid":"controlled-select-".concat(x.name),...p,optionRender:y,onSearch:"tags"===p.mode?b:void 0,onChange:k,value:x.value||void 0,status:_?"error":void 0}),h&&(0,s.jsx)(a.Q6r,{children:h}),(0,s.jsx)(o.Bc,{isInvalid:_,message:j.error,fieldName:x.name})]}),(0,s.jsx)(n.b,{label:c,className:_?"mt-2 self-start":void 0})]})]})}):(0,s.jsx)(a.NIc,{isInvalid:_,isRequired:u,children:(0,s.jsxs)(a.gCW,{alignItems:"start",children:[(0,s.jsxs)(a.jqI,{align:"center",children:[i?(0,s.jsx)(o.__,{htmlFor:p.id||t,fontSize:"xs",my:0,mr:1,...d,children:i}):null,(0,s.jsx)(n.b,{label:c})]}),(0,s.jsx)(a.WPr,{...x,id:p.id||t,"data-testid":"controlled-select-".concat(x.name),...p,optionRender:y,onSearch:"tags"===p.mode?b:void 0,onChange:k,value:x.value||void 0,status:_?"error":void 0}),h&&(0,s.jsx)(a.Q6r,{style:{marginTop:0},children:h}),(0,s.jsx)(o.Bc,{isInvalid:_,message:j.error,fieldName:x.name})]})})}},14047:function(e,t,i){"use strict";i.d(t,{H:function(){return r},V:function(){return s.V}});var s=i(84306),a=i(812);let r=()=>{let{errorAlert:e}=(0,s.V)();return{handleError:t=>{let i="An unexpected error occurred. Please try again.";(0,a.Ot)(t)?i=t.data.detail:(0,a.tB)(t)&&(i=t.data.detail[0].msg),e(i)}}}},84306:function(e,t,i){"use strict";i.d(t,{V:function(){return r}});var s=i(24246),a=i(13577);let r=()=>{let e=(0,a.pmc)();return{errorAlert:(t,i,r)=>{let l={...r,position:(null==r?void 0:r.position)||"top",render:e=>{let{onClose:r}=e;return(0,s.jsxs)(a.bZj,{alignItems:"normal",status:"error","data-testid":"error-alert",children:[(0,s.jsx)(a.zMQ,{}),(0,s.jsxs)(a.xuv,{children:[i&&(0,s.jsx)(a.CdC,{children:i}),(0,s.jsx)(a.XaZ,{children:t})]}),(0,s.jsx)(a.PZ7,{onClick:r,position:"relative",right:0,size:"sm",top:-1})]})}};(null==r?void 0:r.id)&&e.isActive(r.id)?e.update(r.id,l):e(l)},successAlert:(t,i,r)=>{let l={...r,position:(null==r?void 0:r.position)||"top",render:e=>{let{onClose:r}=e;return(0,s.jsxs)(a.bZj,{alignItems:"normal",status:"success",variant:"subtle","data-testid":"success-alert",children:[(0,s.jsx)(a.zMQ,{}),(0,s.jsxs)(a.xuv,{children:[i&&(0,s.jsx)(a.CdC,{children:i}),(0,s.jsx)(a.XaZ,{children:t})]}),(0,s.jsx)(a.PZ7,{onClick:r,position:"relative",right:0,size:"sm",top:-1})]})}};(null==r?void 0:r.id)&&e.isActive(r.id)?e.update(r.id,l):e(l)}}}},70788:function(e,t,i){"use strict";i.d(t,{m:function(){return d}});var s=i(24246),a=i(13577),r=i(79894),l=i.n(r),n=i(27378);let{Text:o}=a.AntTypography,d=e=>{let{items:t,...i}=e,r=(0,n.useMemo)(()=>null==t?void 0:t.map((e,i)=>{let r=i===t.length-1,n={...e},d=n.onClick&&!n.href;return("string"==typeof n.title&&(n.title=(0,s.jsx)(o,{style:{color:"inherit",maxWidth:r?void 0:400},ellipsis:!r,children:n.title})),d)?n.title=(0,s.jsx)(a.wpx,{type:"text",size:"small",icon:n.icon,onClick:n.onClick,className:"ant-breadcrumb-link -mt-px px-1 text-inherit",children:n.title}):(n.icon&&(n.title=(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{className:"anticon align-text-bottom",children:n.icon}),n.title]})),n.href&&n.title&&(n.title=(0,s.jsx)(l(),{href:n.href,className:"ant-breadcrumb-link",children:n.title}),delete n.href)),n}),[t]);return(0,s.jsx)(a.zrq,{items:r,...i})}},71784:function(e,t,i){"use strict";i.d(t,{DE:function(){return o},I3:function(){return a},kN:function(){return l},qX:function(){return n},rE:function(){return r}});var s=i(73825);let a=[...new Map([[s.q2.APPROVED,"Approved"],[s.q2.AWAITING_EMAIL_SEND,"Awaiting email send"],[s.q2.CANCELED,"Canceled"],[s.q2.COMPLETE,"Completed"],[s.q2.DENIED,"Denied"],[s.q2.ERROR,"Error"],[s.q2.IN_PROCESSING,"In progress"],[s.q2.PENDING,"New"],[s.q2.PAUSED,"Paused"],[s.q2.IDENTITY_UNVERIFIED,"Unverified"],[s.q2.REQUIRES_INPUT,"Requires input"],[s.q2.REQUIRES_MANUAL_FINALIZATION,"Requires finalization"]])].map(e=>{let[t,i]=e;return{label:i,value:t}}),r=new Map([[s.Us.ACCESS,"Access"],[s.Us.ERASURE,"Erasure"],[s.Us.CONSENT,"Consent"],[s.Us.UPDATE,"Update"]]),l=[...r].map(e=>{let[t,i]=e;return{label:i,value:t}}),n={mailgun:"mailgun",twilio_email:"twilio_email",twilio_text:"twilio_text"},o={local:"local",s3:"s3",gcs:"gcs"}},64665:function(e,t,i){"use strict";i.r(t),i.d(t,{default:function(){return f}});var s=i(24246),a=i(13577),r=i(27378),l=i(812),n=i(14047),o=i(77213),d=i(77830),c=i(58754),u=i(7426),m=i(71784),h=i(90867),p=i(34090),x=i(97181),j=i(40324),v=e=>{var t,i,o,d,c;let{storageDetails:u}=e,[v,_]=(0,r.useState)(""),[g]=(0,h.gC)(),[f]=(0,h.cf)(),{handleError:y}=(0,n.H)(),{successAlert:b}=(0,n.V)(),k={type:m.DE.gcs,auth_method:null!==(o=null==u?void 0:null===(t=u.details)||void 0===t?void 0:t.auth_method)&&void 0!==o?o:"",bucket:null!==(d=null==u?void 0:null===(i=u.details)||void 0===i?void 0:i.bucket)&&void 0!==d?d:"",format:null!==(c=null==u?void 0:u.format)&&void 0!==c?c:""},C=async e=>{let t=await g({type:m.DE.gcs,details:{auth_method:e.auth_method,bucket:e.bucket},format:e.format});(0,l.D4)(t)?y(t.error):(_(e.auth_method),b("Google Cloud Storage credentials successfully updated."))},q=async e=>{let t=e.private_key.trim();t.includes("\\n")&&(t=t.replace(/\\n/g,"\n"));let i=await f({details:{type:e.type,project_id:e.project_id,private_key_id:e.private_key_id,private_key:t,client_email:e.client_email,client_id:e.client_id,auth_uri:e.auth_uri,token_uri:e.token_uri,auth_provider_x509_cert_url:e.auth_provider_x509_cert_url,client_x509_cert_url:e.client_x509_cert_url,universe_domain:e.universe_domain},type:m.DE.gcs});(0,l.D4)(i)?y(i.error):b("Google Cloud Storage secrets successfully updated.")};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(a.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"Google Cloud Storage configuration"}),(0,s.jsx)(a.Kqy,{children:(0,s.jsx)(p.J9,{initialValues:k,onSubmit:C,enableReinitialize:!0,children:e=>{let{isSubmitting:t,handleReset:i}=e;return(0,s.jsxs)(p.l0,{children:[(0,s.jsxs)(a.Kqy,{mt:5,spacing:5,children:[(0,s.jsx)(x.d,{name:"format",label:"Format",options:[{label:"json",value:"json"},{label:"csv",value:"csv"}],"data-testid":"format",isRequired:!0}),(0,s.jsx)(x.d,{name:"auth_method",label:"Auth method",options:[{label:"Service Account Keys",value:"service_account_keys"},{label:"Application Default Credentials",value:"adc"}],"data-testid":"auth_method",isRequired:!0}),(0,s.jsx)(j.j0,{"data-testid":"bucket",name:"bucket",label:"Bucket",isRequired:!0})]}),(0,s.jsx)(a.wpx,{onClick:()=>i(),className:"mr-2 mt-5",children:"Cancel"}),(0,s.jsx)(a.wpx,{htmlType:"submit",className:"mt-5",disabled:t,type:"primary","data-testid":"save-btn",children:"Save"})]})}})}),"service_account_keys"===v&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(a.izJ,{mt:5}),(0,s.jsx)(a.X6q,{fontSize:"md",fontWeight:"semibold",mt:5,children:"Storage destination"}),(0,s.jsx)(a.Kqy,{children:(0,s.jsx)(p.J9,{initialValues:{type:"",project_id:"",private_key_id:"",private_key:"",client_email:"",client_id:"",auth_uri:"",token_uri:"",auth_provider_x509_cert_url:"",client_x509_cert_url:"",universe_domain:""},onSubmit:q,children:e=>{let{isSubmitting:t,handleReset:i}=e;return(0,s.jsxs)(p.l0,{children:[(0,s.jsxs)(a.Kqy,{mt:5,spacing:5,children:[(0,s.jsx)(j.j0,{name:"type",label:"Type"}),(0,s.jsx)(j.j0,{name:"project_id",label:"Project ID"}),(0,s.jsx)(j.j0,{name:"private_key_id",label:"Private key ID",type:"password"}),(0,s.jsx)(j.j0,{name:"private_key",label:"Private key",type:"password"}),(0,s.jsx)(j.j0,{name:"client_email",label:"Client email"}),(0,s.jsx)(j.j0,{name:"client_id",label:"Client ID"}),(0,s.jsx)(j.j0,{name:"auth_uri",label:"Auth URI"}),(0,s.jsx)(j.j0,{name:"token_uri",label:"Token URI"}),(0,s.jsx)(j.j0,{name:"auth_provider_x509_cert_url",label:"Auth provider x509 cert URL"}),(0,s.jsx)(j.j0,{name:"client_x509_cert_url",label:"Client x509 cert URL"}),(0,s.jsx)(j.j0,{name:"universe_domain",label:"Universe domain"})]}),(0,s.jsxs)(a.xuv,{mt:10,children:[(0,s.jsx)(a.wpx,{onClick:()=>i(),className:"mr-2 mt-5",children:"Cancel"}),(0,s.jsx)(a.wpx,{disabled:t,htmlType:"submit",type:"primary",className:"mt-5","data-testid":"save-btn",children:"Save"})]})]})}})})]})]})},_=e=>{var t,i,o,d,c;let{storageDetails:u}=e,[v,_]=(0,r.useState)(""),[g]=(0,h.gC)(),[f]=(0,h.cf)(),{handleError:y}=(0,n.H)(),{successAlert:b}=(0,n.V)(),k={type:m.DE.s3,auth_method:null!==(o=null==u?void 0:null===(t=u.details)||void 0===t?void 0:t.auth_method)&&void 0!==o?o:"",bucket:null!==(d=null==u?void 0:null===(i=u.details)||void 0===i?void 0:i.bucket)&&void 0!==d?d:"",format:null!==(c=null==u?void 0:u.format)&&void 0!==c?c:""},C=async e=>{let t=await g({type:m.DE.s3,details:{auth_method:e.auth_method,bucket:e.bucket},format:e.format});(0,l.D4)(t)?y(t.error):(_(e.auth_method),b("S3 storage credentials successfully updated."))},q=async e=>{let t=await f({details:{aws_access_key_id:e.aws_access_key_id,aws_secret_access_key:e.aws_secret_access_key},type:m.DE.s3});(0,l.D4)(t)?y(t.error):b("S3 storage secrets successfully updated.")};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(a.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"S3 storage configuration"}),(0,s.jsx)(a.Kqy,{children:(0,s.jsx)(p.J9,{initialValues:k,onSubmit:C,enableReinitialize:!0,children:e=>{let{isSubmitting:t,handleReset:i}=e;return(0,s.jsxs)(p.l0,{children:[(0,s.jsxs)(a.Kqy,{mt:5,spacing:5,children:[(0,s.jsx)(x.d,{name:"format",label:"Format",options:[{label:"json",value:"json"},{label:"csv",value:"csv"}],"data-testid":"format",isRequired:!0}),(0,s.jsx)(x.d,{name:"auth_method",label:"Auth method",options:[{label:"secret_keys",value:"secret_keys"},{label:"automatic",value:"automatic"}],"data-testid":"auth_method",isRequired:!0}),(0,s.jsx)(j.j0,{"data-testid":"bucket",name:"bucket",label:"Bucket",isRequired:!0})]}),(0,s.jsx)(a.wpx,{onClick:()=>i(),className:"mr-2 mt-5",children:"Cancel"}),(0,s.jsx)(a.wpx,{htmlType:"submit",className:"mt-5",disabled:t,type:"primary","data-testid":"save-btn",children:"Save"})]})}})}),"secret_keys"===v?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(a.izJ,{mt:5}),(0,s.jsx)(a.X6q,{fontSize:"md",fontWeight:"semibold",mt:5,children:"Storage destination"}),(0,s.jsx)(a.Kqy,{children:(0,s.jsx)(p.J9,{initialValues:{aws_access_key_id:"",aws_secret_access_key:""},onSubmit:q,children:e=>{let{isSubmitting:t,handleReset:i}=e;return(0,s.jsxs)(p.l0,{children:[(0,s.jsxs)(a.Kqy,{mt:5,spacing:5,children:[(0,s.jsx)(j.j0,{name:"aws_access_key_id",label:"AWS access key ID"}),(0,s.jsx)(j.j0,{name:"aws_secret_access_key",label:"AWS secret access key",type:"password"})]}),(0,s.jsxs)(a.xuv,{mt:10,children:[(0,s.jsx)(a.wpx,{onClick:()=>i(),className:"mr-2 mt-5",children:"Cancel"}),(0,s.jsx)(a.wpx,{disabled:t,htmlType:"submit",type:"primary",className:"mt-5","data-testid":"save-btn",children:"Save"})]})]})}})})]}):null]})},g=()=>{let{successAlert:e}=(0,n.V)(),{handleError:t}=(0,n.H)(),[i,p]=(0,r.useState)(""),{data:x}=(0,h.PW)(),{data:j}=(0,h.Au)({type:i}),[g,{isLoading:f}]=(0,h.gC)(),[y]=(0,u.L)();(0,r.useEffect)(()=>{x&&p(x.type)},[x]);let b=async i=>{let{value:s}=i.target;if(s===m.DE.local){let i=await g({type:s,details:{},format:"json"});(0,l.D4)(i)?t(i.error):e("Configured storage details successfully.")}let a=await y({storage:{active_default_storage_type:s}});(0,l.D4)(a)?t(a.error):p(s)},k={s3:_,gcs:v}[i];return(0,s.jsxs)(o.Z,{title:"Configure Privacy Requests - Storage",children:[(0,s.jsx)(c.Z,{heading:"Privacy Requests",breadcrumbItems:[{title:"All requests",href:d.Jw},{title:"Configure requests",href:d.fz},{title:"Storage"}]}),(0,s.jsx)(a.X6q,{mb:5,fontSize:"md",fontWeight:"semibold",children:"Configure storage"}),(0,s.jsxs)(a.xuv,{display:"flex",flexDirection:"column",width:"50%",children:[(0,s.jsx)(a.xuv,{mb:5,children:"Fides requires a storage destination to store and share the results of privacy requests. For a production setup, it is highly recommended to have S3 as a storage destination. Ensure you have completed the setup for the storage destination and have the details handy prior to the following steps."}),(0,s.jsxs)(a.xuv,{children:["To configure a Storage destination, first choose a method to store your results. Fides currently supports"," ",(0,s.jsx)(a.xvT,{as:"span",color:"complimentary.500",children:"Local"}),", ",(0,s.jsx)(a.xvT,{as:"span",color:"complimentary.500",children:"S3"})," ","and"," ",(0,s.jsx)(a.xvT,{as:"span",color:"complimentary.500",children:"GCS"})," ","storage methods."]}),(0,s.jsx)(a.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"Choose storage type to configure"}),(0,s.jsx)(a.y02.Group,{disabled:f,onChange:b,value:i,"data-testid":"privacy-requests-storage-selection",className:"p-3",children:(0,s.jsxs)(a.jqI,{children:[(0,s.jsx)(a.y02,{value:"local","data-testid":"option-local",children:"Local"},"local"),(0,s.jsx)(a.y02,{value:"s3","data-testid":"option-s3",children:"S3"},"s3"),(0,s.jsx)(a.y02,{value:"gcs","data-testid":"option-gcs",children:"GCS"},"gcs")]})}),k&&j&&(0,s.jsx)(k,{storageDetails:j})]})]})},f=()=>(0,s.jsx)(g,{})}},function(e){e.O(0,[2888,9774,179],function(){return e(e.s=23663)}),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5979],{23663:function(e,t,i){(window.__NEXT_P=window.__NEXT_P||[]).push(["/privacy-requests/configure/storage",function(){return i(64665)}])},77213:function(e,t,i){"use strict";i.d(t,{Z:function(){return m}});var s=i(24246),a=i(13577),r=i(88038),l=i.n(r),n=i(86677);i(27378);var o=i(25980),d=i(90867),c=i(77830),u=()=>{let e=(0,n.useRouter)();return(0,s.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,s.jsxs)(a.xuv,{children:[(0,s.jsxs)(a.Kqy,{direction:{base:"column",sm:"row"},justifyContent:"space-between",children:[(0,s.jsx)(a.xvT,{fontWeight:"semibold",children:"Configure your storage and messaging provider"}),(0,s.jsx)(a.wpx,{onClick:()=>{e.push(c.fz)},children:"Configure"})]}),(0,s.jsxs)(a.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:r=!0,mainProps:c}=e,m=(0,o.hz)(),h=(0,n.useRouter)(),p="/privacy-requests"===h.pathname||"/datastore-connection"===h.pathname,x=!(m.flags.privacyRequestsConfiguration&&p),{data:j}=(0,d.JE)(void 0,{skip:x}),{data:v}=(0,d.PW)(void 0,{skip:x}),_=m.flags.privacyRequestsConfiguration&&(!j||!v)&&p;return(0,s.jsxs)(a.kCb,{"data-testid":i,direction:"column",h:"100vh",children:[(0,s.jsxs)(l(),{children:[(0,s.jsxs)("title",{children:["Fides Admin UI - ",i]}),(0,s.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,s.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,s.jsxs)(a.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:[_?(0,s.jsx)(u,{}):null,t]})]})}},58754:function(e,t,i){"use strict";var s=i(24246),a=i(13577),r=i(70788);t.Z=e=>{let{heading:t,breadcrumbItems:i,isSticky:l=!0,children:n,rightContent:o,style:d,...c}=e;return(0,s.jsxs)("div",{...c,style:l?{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,s.jsxs)(a.jqI,{justify:"space-between",children:["string"==typeof t?(0,s.jsx)(a.lQT,{className:i||n?"pb-4":void 0,level:1,"data-testid":"page-heading",children:t}):t,o&&(0,s.jsx)("div",{"data-testid":"page-header-right-content",children:o})]}),!!i&&(0,s.jsx)(r.m,{className:n?"pb-4":void 0,items:i,"data-testid":"page-breadcrumb"}),n]})}},97181:function(e,t,i){"use strict";i.d(t,{d:function(){return d}});var s=i(24246),a=i(13577),r=i(34090),l=i(27378),n=i(46238),o=i(40324);let d=e=>{let{name:t,label:i,labelProps:d,tooltip:c,isRequired:u,layout:m="inline",helperText:h,...p}=e,[x,j,{setValue:v}]=(0,r.U$)(t),_=!!(j.touched&&j.error),[g,f]=(0,l.useState)("");x.value||"tags"!==p.mode&&"multiple"!==p.mode||(x.value=[]),"tags"===p.mode&&"string"==typeof x.value&&(x.value=[x.value]);let y="tags"===p.mode?(e,t)=>e?e.value!==g||x.value.includes(g)?p.optionRender?p.optionRender(e,t):e.label:'Create "'.concat(g,'"'):void 0:p.optionRender||void 0,b=e=>{f(e),p.onSearch&&p.onSearch(e)},k=(e,t)=>{v(e),p.onChange&&p.onChange(e,t)};return"inline"===m?(0,s.jsx)(a.NIc,{isInvalid:_,isRequired:u,children:(0,s.jsxs)(a.rjZ,{templateColumns:i?"1fr 3fr":"1fr",children:[i?(0,s.jsx)(o.__,{htmlFor:p.id||t,...d,children:i}):null,(0,s.jsxs)(a.jqI,{align:"center",children:[(0,s.jsxs)(a.jqI,{vertical:!0,flex:1,className:"mr-2",children:[(0,s.jsx)(a.WPr,{...x,id:p.id||t,"data-testid":"controlled-select-".concat(x.name),...p,optionRender:y,onSearch:"tags"===p.mode?b:void 0,onChange:k,value:x.value||void 0,status:_?"error":void 0}),h&&(0,s.jsx)(a.Q6r,{children:h}),(0,s.jsx)(o.Bc,{isInvalid:_,message:j.error,fieldName:x.name})]}),(0,s.jsx)(n.b,{label:c,className:_?"mt-2 self-start":void 0})]})]})}):(0,s.jsx)(a.NIc,{isInvalid:_,isRequired:u,children:(0,s.jsxs)(a.gCW,{alignItems:"start",children:[(0,s.jsxs)(a.jqI,{align:"center",children:[i?(0,s.jsx)(o.__,{htmlFor:p.id||t,fontSize:"xs",my:0,mr:1,...d,children:i}):null,(0,s.jsx)(n.b,{label:c})]}),(0,s.jsx)(a.WPr,{...x,id:p.id||t,"data-testid":"controlled-select-".concat(x.name),...p,optionRender:y,onSearch:"tags"===p.mode?b:void 0,onChange:k,value:x.value||void 0,status:_?"error":void 0}),h&&(0,s.jsx)(a.Q6r,{style:{marginTop:0},children:h}),(0,s.jsx)(o.Bc,{isInvalid:_,message:j.error,fieldName:x.name})]})})}},14047:function(e,t,i){"use strict";i.d(t,{H:function(){return r},V:function(){return s.V}});var s=i(84306),a=i(812);let r=()=>{let{errorAlert:e}=(0,s.V)();return{handleError:t=>{let i="An unexpected error occurred. Please try again.";(0,a.Ot)(t)?i=t.data.detail:(0,a.tB)(t)&&(i=t.data.detail[0].msg),e(i)}}}},84306:function(e,t,i){"use strict";i.d(t,{V:function(){return r}});var s=i(24246),a=i(13577);let r=()=>{let e=(0,a.pmc)();return{errorAlert:(t,i,r)=>{let l={...r,position:(null==r?void 0:r.position)||"top",render:e=>{let{onClose:r}=e;return(0,s.jsxs)(a.bZj,{alignItems:"normal",status:"error","data-testid":"error-alert",children:[(0,s.jsx)(a.zMQ,{}),(0,s.jsxs)(a.xuv,{children:[i&&(0,s.jsx)(a.CdC,{children:i}),(0,s.jsx)(a.XaZ,{children:t})]}),(0,s.jsx)(a.PZ7,{onClick:r,position:"relative",right:0,size:"sm",top:-1})]})}};(null==r?void 0:r.id)&&e.isActive(r.id)?e.update(r.id,l):e(l)},successAlert:(t,i,r)=>{let l={...r,position:(null==r?void 0:r.position)||"top",render:e=>{let{onClose:r}=e;return(0,s.jsxs)(a.bZj,{alignItems:"normal",status:"success",variant:"subtle","data-testid":"success-alert",children:[(0,s.jsx)(a.zMQ,{}),(0,s.jsxs)(a.xuv,{children:[i&&(0,s.jsx)(a.CdC,{children:i}),(0,s.jsx)(a.XaZ,{children:t})]}),(0,s.jsx)(a.PZ7,{onClick:r,position:"relative",right:0,size:"sm",top:-1})]})}};(null==r?void 0:r.id)&&e.isActive(r.id)?e.update(r.id,l):e(l)}}}},70788:function(e,t,i){"use strict";i.d(t,{m:function(){return d}});var s=i(24246),a=i(13577),r=i(79894),l=i.n(r),n=i(27378);let{Text:o}=a.AntTypography,d=e=>{let{items:t,...i}=e,r=(0,n.useMemo)(()=>null==t?void 0:t.map((e,i)=>{let r=i===t.length-1,n={...e},d=n.onClick&&!n.href;return("string"==typeof n.title&&(n.title=(0,s.jsx)(o,{style:{color:"inherit",maxWidth:r?void 0:400},ellipsis:!r,children:n.title})),d)?n.title=(0,s.jsx)(a.wpx,{type:"text",size:"small",icon:n.icon,onClick:n.onClick,className:"ant-breadcrumb-link -mt-px px-1 text-inherit",children:n.title}):(n.icon&&(n.title=(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{className:"anticon align-text-bottom",children:n.icon}),n.title]})),n.href&&n.title&&(n.title=(0,s.jsx)(l(),{href:n.href,className:"ant-breadcrumb-link",children:n.title}),delete n.href)),n}),[t]);return(0,s.jsx)(a.zrq,{items:r,...i})}},71784:function(e,t,i){"use strict";i.d(t,{DE:function(){return o},I3:function(){return a},kN:function(){return l},qX:function(){return n},rE:function(){return r}});var s=i(54682);let a=[...new Map([[s.q2.APPROVED,"Approved"],[s.q2.AWAITING_EMAIL_SEND,"Awaiting email send"],[s.q2.CANCELED,"Canceled"],[s.q2.COMPLETE,"Completed"],[s.q2.DENIED,"Denied"],[s.q2.ERROR,"Error"],[s.q2.IN_PROCESSING,"In progress"],[s.q2.PENDING,"New"],[s.q2.PAUSED,"Paused"],[s.q2.IDENTITY_UNVERIFIED,"Unverified"],[s.q2.REQUIRES_INPUT,"Requires input"],[s.q2.REQUIRES_MANUAL_FINALIZATION,"Requires finalization"]])].map(e=>{let[t,i]=e;return{label:i,value:t}}),r=new Map([[s.Us.ACCESS,"Access"],[s.Us.ERASURE,"Erasure"],[s.Us.CONSENT,"Consent"],[s.Us.UPDATE,"Update"]]),l=[...r].map(e=>{let[t,i]=e;return{label:i,value:t}}),n={mailgun:"mailgun",twilio_email:"twilio_email",twilio_text:"twilio_text"},o={local:"local",s3:"s3",gcs:"gcs"}},64665:function(e,t,i){"use strict";i.r(t),i.d(t,{default:function(){return f}});var s=i(24246),a=i(13577),r=i(27378),l=i(812),n=i(14047),o=i(77213),d=i(77830),c=i(58754),u=i(7426),m=i(71784),h=i(90867),p=i(34090),x=i(97181),j=i(40324),v=e=>{var t,i,o,d,c;let{storageDetails:u}=e,[v,_]=(0,r.useState)(""),[g]=(0,h.gC)(),[f]=(0,h.cf)(),{handleError:y}=(0,n.H)(),{successAlert:b}=(0,n.V)(),k={type:m.DE.gcs,auth_method:null!==(o=null==u?void 0:null===(t=u.details)||void 0===t?void 0:t.auth_method)&&void 0!==o?o:"",bucket:null!==(d=null==u?void 0:null===(i=u.details)||void 0===i?void 0:i.bucket)&&void 0!==d?d:"",format:null!==(c=null==u?void 0:u.format)&&void 0!==c?c:""},C=async e=>{let t=await g({type:m.DE.gcs,details:{auth_method:e.auth_method,bucket:e.bucket},format:e.format});(0,l.D4)(t)?y(t.error):(_(e.auth_method),b("Google Cloud Storage credentials successfully updated."))},q=async e=>{let t=e.private_key.trim();t.includes("\\n")&&(t=t.replace(/\\n/g,"\n"));let i=await f({details:{type:e.type,project_id:e.project_id,private_key_id:e.private_key_id,private_key:t,client_email:e.client_email,client_id:e.client_id,auth_uri:e.auth_uri,token_uri:e.token_uri,auth_provider_x509_cert_url:e.auth_provider_x509_cert_url,client_x509_cert_url:e.client_x509_cert_url,universe_domain:e.universe_domain},type:m.DE.gcs});(0,l.D4)(i)?y(i.error):b("Google Cloud Storage secrets successfully updated.")};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(a.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"Google Cloud Storage configuration"}),(0,s.jsx)(a.Kqy,{children:(0,s.jsx)(p.J9,{initialValues:k,onSubmit:C,enableReinitialize:!0,children:e=>{let{isSubmitting:t,handleReset:i}=e;return(0,s.jsxs)(p.l0,{children:[(0,s.jsxs)(a.Kqy,{mt:5,spacing:5,children:[(0,s.jsx)(x.d,{name:"format",label:"Format",options:[{label:"json",value:"json"},{label:"csv",value:"csv"}],"data-testid":"format",isRequired:!0}),(0,s.jsx)(x.d,{name:"auth_method",label:"Auth method",options:[{label:"Service Account Keys",value:"service_account_keys"},{label:"Application Default Credentials",value:"adc"}],"data-testid":"auth_method",isRequired:!0}),(0,s.jsx)(j.j0,{"data-testid":"bucket",name:"bucket",label:"Bucket",isRequired:!0})]}),(0,s.jsx)(a.wpx,{onClick:()=>i(),className:"mr-2 mt-5",children:"Cancel"}),(0,s.jsx)(a.wpx,{htmlType:"submit",className:"mt-5",disabled:t,type:"primary","data-testid":"save-btn",children:"Save"})]})}})}),"service_account_keys"===v&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(a.izJ,{mt:5}),(0,s.jsx)(a.X6q,{fontSize:"md",fontWeight:"semibold",mt:5,children:"Storage destination"}),(0,s.jsx)(a.Kqy,{children:(0,s.jsx)(p.J9,{initialValues:{type:"",project_id:"",private_key_id:"",private_key:"",client_email:"",client_id:"",auth_uri:"",token_uri:"",auth_provider_x509_cert_url:"",client_x509_cert_url:"",universe_domain:""},onSubmit:q,children:e=>{let{isSubmitting:t,handleReset:i}=e;return(0,s.jsxs)(p.l0,{children:[(0,s.jsxs)(a.Kqy,{mt:5,spacing:5,children:[(0,s.jsx)(j.j0,{name:"type",label:"Type"}),(0,s.jsx)(j.j0,{name:"project_id",label:"Project ID"}),(0,s.jsx)(j.j0,{name:"private_key_id",label:"Private key ID",type:"password"}),(0,s.jsx)(j.j0,{name:"private_key",label:"Private key",type:"password"}),(0,s.jsx)(j.j0,{name:"client_email",label:"Client email"}),(0,s.jsx)(j.j0,{name:"client_id",label:"Client ID"}),(0,s.jsx)(j.j0,{name:"auth_uri",label:"Auth URI"}),(0,s.jsx)(j.j0,{name:"token_uri",label:"Token URI"}),(0,s.jsx)(j.j0,{name:"auth_provider_x509_cert_url",label:"Auth provider x509 cert URL"}),(0,s.jsx)(j.j0,{name:"client_x509_cert_url",label:"Client x509 cert URL"}),(0,s.jsx)(j.j0,{name:"universe_domain",label:"Universe domain"})]}),(0,s.jsxs)(a.xuv,{mt:10,children:[(0,s.jsx)(a.wpx,{onClick:()=>i(),className:"mr-2 mt-5",children:"Cancel"}),(0,s.jsx)(a.wpx,{disabled:t,htmlType:"submit",type:"primary",className:"mt-5","data-testid":"save-btn",children:"Save"})]})]})}})})]})]})},_=e=>{var t,i,o,d,c;let{storageDetails:u}=e,[v,_]=(0,r.useState)(""),[g]=(0,h.gC)(),[f]=(0,h.cf)(),{handleError:y}=(0,n.H)(),{successAlert:b}=(0,n.V)(),k={type:m.DE.s3,auth_method:null!==(o=null==u?void 0:null===(t=u.details)||void 0===t?void 0:t.auth_method)&&void 0!==o?o:"",bucket:null!==(d=null==u?void 0:null===(i=u.details)||void 0===i?void 0:i.bucket)&&void 0!==d?d:"",format:null!==(c=null==u?void 0:u.format)&&void 0!==c?c:""},C=async e=>{let t=await g({type:m.DE.s3,details:{auth_method:e.auth_method,bucket:e.bucket},format:e.format});(0,l.D4)(t)?y(t.error):(_(e.auth_method),b("S3 storage credentials successfully updated."))},q=async e=>{let t=await f({details:{aws_access_key_id:e.aws_access_key_id,aws_secret_access_key:e.aws_secret_access_key},type:m.DE.s3});(0,l.D4)(t)?y(t.error):b("S3 storage secrets successfully updated.")};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(a.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"S3 storage configuration"}),(0,s.jsx)(a.Kqy,{children:(0,s.jsx)(p.J9,{initialValues:k,onSubmit:C,enableReinitialize:!0,children:e=>{let{isSubmitting:t,handleReset:i}=e;return(0,s.jsxs)(p.l0,{children:[(0,s.jsxs)(a.Kqy,{mt:5,spacing:5,children:[(0,s.jsx)(x.d,{name:"format",label:"Format",options:[{label:"json",value:"json"},{label:"csv",value:"csv"}],"data-testid":"format",isRequired:!0}),(0,s.jsx)(x.d,{name:"auth_method",label:"Auth method",options:[{label:"secret_keys",value:"secret_keys"},{label:"automatic",value:"automatic"}],"data-testid":"auth_method",isRequired:!0}),(0,s.jsx)(j.j0,{"data-testid":"bucket",name:"bucket",label:"Bucket",isRequired:!0})]}),(0,s.jsx)(a.wpx,{onClick:()=>i(),className:"mr-2 mt-5",children:"Cancel"}),(0,s.jsx)(a.wpx,{htmlType:"submit",className:"mt-5",disabled:t,type:"primary","data-testid":"save-btn",children:"Save"})]})}})}),"secret_keys"===v?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(a.izJ,{mt:5}),(0,s.jsx)(a.X6q,{fontSize:"md",fontWeight:"semibold",mt:5,children:"Storage destination"}),(0,s.jsx)(a.Kqy,{children:(0,s.jsx)(p.J9,{initialValues:{aws_access_key_id:"",aws_secret_access_key:""},onSubmit:q,children:e=>{let{isSubmitting:t,handleReset:i}=e;return(0,s.jsxs)(p.l0,{children:[(0,s.jsxs)(a.Kqy,{mt:5,spacing:5,children:[(0,s.jsx)(j.j0,{name:"aws_access_key_id",label:"AWS access key ID"}),(0,s.jsx)(j.j0,{name:"aws_secret_access_key",label:"AWS secret access key",type:"password"})]}),(0,s.jsxs)(a.xuv,{mt:10,children:[(0,s.jsx)(a.wpx,{onClick:()=>i(),className:"mr-2 mt-5",children:"Cancel"}),(0,s.jsx)(a.wpx,{disabled:t,htmlType:"submit",type:"primary",className:"mt-5","data-testid":"save-btn",children:"Save"})]})]})}})})]}):null]})},g=()=>{let{successAlert:e}=(0,n.V)(),{handleError:t}=(0,n.H)(),[i,p]=(0,r.useState)(""),{data:x}=(0,h.PW)(),{data:j}=(0,h.Au)({type:i}),[g,{isLoading:f}]=(0,h.gC)(),[y]=(0,u.L)();(0,r.useEffect)(()=>{x&&p(x.type)},[x]);let b=async i=>{let{value:s}=i.target;if(s===m.DE.local){let i=await g({type:s,details:{},format:"json"});(0,l.D4)(i)?t(i.error):e("Configured storage details successfully.")}let a=await y({storage:{active_default_storage_type:s}});(0,l.D4)(a)?t(a.error):p(s)},k={s3:_,gcs:v}[i];return(0,s.jsxs)(o.Z,{title:"Configure Privacy Requests - Storage",children:[(0,s.jsx)(c.Z,{heading:"Privacy Requests",breadcrumbItems:[{title:"All requests",href:d.Jw},{title:"Configure requests",href:d.fz},{title:"Storage"}]}),(0,s.jsx)(a.X6q,{mb:5,fontSize:"md",fontWeight:"semibold",children:"Configure storage"}),(0,s.jsxs)(a.xuv,{display:"flex",flexDirection:"column",width:"50%",children:[(0,s.jsx)(a.xuv,{mb:5,children:"Fides requires a storage destination to store and share the results of privacy requests. For a production setup, it is highly recommended to have S3 as a storage destination. Ensure you have completed the setup for the storage destination and have the details handy prior to the following steps."}),(0,s.jsxs)(a.xuv,{children:["To configure a Storage destination, first choose a method to store your results. Fides currently supports"," ",(0,s.jsx)(a.xvT,{as:"span",color:"complimentary.500",children:"Local"}),", ",(0,s.jsx)(a.xvT,{as:"span",color:"complimentary.500",children:"S3"})," ","and"," ",(0,s.jsx)(a.xvT,{as:"span",color:"complimentary.500",children:"GCS"})," ","storage methods."]}),(0,s.jsx)(a.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"Choose storage type to configure"}),(0,s.jsx)(a.y02.Group,{disabled:f,onChange:b,value:i,"data-testid":"privacy-requests-storage-selection",className:"p-3",children:(0,s.jsxs)(a.jqI,{children:[(0,s.jsx)(a.y02,{value:"local","data-testid":"option-local",children:"Local"},"local"),(0,s.jsx)(a.y02,{value:"s3","data-testid":"option-s3",children:"S3"},"s3"),(0,s.jsx)(a.y02,{value:"gcs","data-testid":"option-gcs",children:"GCS"},"gcs")]})}),k&&j&&(0,s.jsx)(k,{storageDetails:j})]})]})},f=()=>(0,s.jsx)(g,{})}},function(e){e.O(0,[2888,9774,179],function(){return e(e.s=23663)}),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2369],{1565:function(e,t,s){(window.__NEXT_P=window.__NEXT_P||[]).push(["/privacy-requests",function(){return s(15273)}])},35287:function(e,t,s){"use strict";var i=s(24246),l=s(13577),a=s(88038),r=s.n(a);s(27378),t.Z=e=>{let{children:t,title:s,mainProps:a}=e;return(0,i.jsxs)(l.kCb,{"data-testid":s,direction:"column",height:"calc(100vh - 48px)",width:"calc(100vw - 240px)",children:[(0,i.jsxs)(r(),{children:[(0,i.jsxs)("title",{children:["Fides Admin UI - ",s]}),(0,i.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,i.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,i.jsx)(l.kCb,{px:10,py:6,as:"main",overflow:"auto",direction:"column",flex:1,minWidth:0,...a,children:t})]})}},87361:function(e,t,s){"use strict";var i=s(24246),l=s(13577);t.Z=e=>{let{title:t,text:s,onClose:a}=e;return(0,i.jsxs)(l.Ugi,{backgroundColor:"gray.50",border:"1px solid",borderRadius:"md",justifyContent:"space-between",py:4,pr:6,pl:3,"data-testid":"empty-state",gap:2,position:"relative",children:[a&&(0,i.jsx)(l.Two,{boxSize:5,position:"absolute",right:3,top:3,zIndex:1,cursor:"pointer",p:1,onClick:a}),(0,i.jsx)(l.iid,{alignSelf:"start",color:"minos",mt:.5,flexGrow:0}),(0,i.jsxs)(l.kCb,{direction:"column",gap:2,flexGrow:1,children:[(0,i.jsx)(l.X6q,{fontSize:"md",children:t}),(0,i.jsx)(l.xvT,{fontSize:"sm",color:"gray.600",lineHeight:"5",children:s})]})]})}},96718:function(e,t,s){"use strict";s.d(t,{z:function(){return a}});var i=s(24246),l=s(13577);let a=e=>{let{...t}=e,s="multiple"===t.mode;return(0,i.jsx)(l.WPr,{defaultActiveFirstOption:!1,maxTagCount:"responsive",allowClear:!0,dropdownStyle:s?void 0:{width:"auto",minWidth:"200px"},className:"w-auto","data-testid":"filter-select",...t})}},97181:function(e,t,s){"use strict";s.d(t,{d:function(){return o}});var i=s(24246),l=s(13577),a=s(34090),r=s(27378),n=s(46238),d=s(40324);let o=e=>{let{name:t,label:s,labelProps:o,tooltip:c,isRequired:u,layout:p="inline",helperText:m,...x}=e,[h,v,{setValue:y}]=(0,a.U$)(t),j=!!(v.touched&&v.error),[g,_]=(0,r.useState)("");h.value||"tags"!==x.mode&&"multiple"!==x.mode||(h.value=[]),"tags"===x.mode&&"string"==typeof h.value&&(h.value=[h.value]);let f="tags"===x.mode?(e,t)=>e?e.value!==g||h.value.includes(g)?x.optionRender?x.optionRender(e,t):e.label:'Create "'.concat(g,'"'):void 0:x.optionRender||void 0,b=e=>{_(e),x.onSearch&&x.onSearch(e)},q=(e,t)=>{y(e),x.onChange&&x.onChange(e,t)};return"inline"===p?(0,i.jsx)(l.NIc,{isInvalid:j,isRequired:u,children:(0,i.jsxs)(l.rjZ,{templateColumns:s?"1fr 3fr":"1fr",children:[s?(0,i.jsx)(d.__,{htmlFor:x.id||t,...o,children:s}):null,(0,i.jsxs)(l.jqI,{align:"center",children:[(0,i.jsxs)(l.jqI,{vertical:!0,flex:1,className:"mr-2",children:[(0,i.jsx)(l.WPr,{...h,id:x.id||t,"data-testid":"controlled-select-".concat(h.name),...x,optionRender:f,onSearch:"tags"===x.mode?b:void 0,onChange:q,value:h.value||void 0,status:j?"error":void 0}),m&&(0,i.jsx)(l.Q6r,{children:m}),(0,i.jsx)(d.Bc,{isInvalid:j,message:v.error,fieldName:h.name})]}),(0,i.jsx)(n.b,{label:c,className:j?"mt-2 self-start":void 0})]})]})}):(0,i.jsx)(l.NIc,{isInvalid:j,isRequired:u,children:(0,i.jsxs)(l.gCW,{alignItems:"start",children:[(0,i.jsxs)(l.jqI,{align:"center",children:[s?(0,i.jsx)(d.__,{htmlFor:x.id||t,fontSize:"xs",my:0,mr:1,...o,children:s}):null,(0,i.jsx)(n.b,{label:c})]}),(0,i.jsx)(l.WPr,{...h,id:x.id||t,"data-testid":"controlled-select-".concat(h.name),...x,optionRender:f,onSearch:"tags"===x.mode?b:void 0,onChange:q,value:h.value||void 0,status:j?"error":void 0}),m&&(0,i.jsx)(l.Q6r,{style:{marginTop:0},children:m}),(0,i.jsx)(d.Bc,{isInvalid:j,message:v.error,fieldName:h.name})]})})}},71784:function(e,t,s){"use strict";s.d(t,{DE:function(){return d},I3:function(){return l},kN:function(){return r},qX:function(){return n},rE:function(){return a}});var i=s(54682);let l=[...new Map([[i.q2.APPROVED,"Approved"],[i.q2.AWAITING_EMAIL_SEND,"Awaiting email send"],[i.q2.CANCELED,"Canceled"],[i.q2.COMPLETE,"Completed"],[i.q2.DENIED,"Denied"],[i.q2.ERROR,"Error"],[i.q2.IN_PROCESSING,"In progress"],[i.q2.PENDING,"New"],[i.q2.PAUSED,"Paused"],[i.q2.IDENTITY_UNVERIFIED,"Unverified"],[i.q2.REQUIRES_INPUT,"Requires input"],[i.q2.REQUIRES_MANUAL_FINALIZATION,"Requires finalization"]])].map(e=>{let[t,s]=e;return{label:s,value:t}}),a=new Map([[i.Us.ACCESS,"Access"],[i.Us.ERASURE,"Erasure"],[i.Us.CONSENT,"Consent"],[i.Us.UPDATE,"Update"]]),r=[...a].map(e=>{let[t,s]=e;return{label:s,value:t}}),n={mailgun:"mailgun",twilio_email:"twilio_email",twilio_text:"twilio_text"},d={local:"local",s3:"s3",gcs:"gcs"}},15273:function(e,t,s){"use strict";s.r(t),s.d(t,{default:function(){return eT}});var i,l,a=s(24246),r=s(35287),n=s(13577),d=s(65218),o=s.n(d),c=s(27378),u=s(25980),p=s(19904),m=s(56141),x=s.n(m),h=s(86677),v=s(16134),y=s(91317),j=s(18225),g=s(77830),_=s(28407),f=s(16394),b=s(54682),q=s(59969),C=s(71784),S=s(45116);let k=e=>{let{label:t,children:s}=e;return(0,a.jsxs)("div",{className:"flex items-center",children:[(0,a.jsx)("div",{className:"shrink-0 grow-0 basis-1/3 pr-2",children:(0,a.jsxs)(n.AntTypography.Text,{className:"text-gray-700",children:[t,":"]})}),(0,a.jsx)("div",{className:"min-w-0 shrink grow text-gray-600",children:s})]})},E=e=>{let{task:t}=e,s=t.request_type===b.k6.ACCESS?b.Us.ACCESS:b.Us.ERASURE,i=C.rE.get(s)||t.request_type;return(0,a.jsxs)("div",{className:"flex flex-col space-y-3","data-testid":"task-details-container",children:[(0,a.jsx)(k,{label:"Name",children:(0,a.jsx)(n.AntTypography.Text,{children:t.name})}),(0,a.jsx)(k,{label:"Description",children:(0,a.jsx)(n.AntTypography.Text,{children:t.description||"-"})}),(0,a.jsx)(k,{label:"Request Type",children:(0,a.jsx)(n.AntTypography.Text,{children:i})}),(0,a.jsx)(k,{label:"Assigned To",children:t.assigned_users&&t.assigned_users.length>0?(0,a.jsx)("div",{className:"flex flex-wrap gap-1","data-testid":"assigned-users-tags",children:t.assigned_users.map(e=>(0,a.jsx)(n.j8w,{"data-testid":"assigned-user-tag-".concat(e.id),children:"".concat(e.first_name||""," ").concat(e.last_name||"").trim()||e.email_address||"Unknown User"},e.id))}):(0,a.jsx)(n.AntTypography.Text,{children:"No one assigned"})}),t.privacy_request.subject_identities&&Object.keys(t.privacy_request.subject_identities).length>0?(0,a.jsx)(k,{label:"Subject identities",children:(0,a.jsx)("div",{className:"flex flex-wrap gap-1",children:Object.entries(t.privacy_request.subject_identities).map(e=>{let[t,s]=e;return(0,a.jsxs)(n.j8w,{children:[t,": ",String(s)]},t)})})}):null,t.privacy_request.custom_fields&&Object.keys(t.privacy_request.custom_fields).length>0?(0,a.jsx)(k,{label:"Custom fields",children:(0,a.jsx)("div",{className:"flex flex-wrap gap-1",children:Object.entries(t.privacy_request.custom_fields).filter(e=>{let[,t]=e;return t}).map(e=>{let[t,s]=e;return(0,a.jsxs)(n.j8w,{children:[t,": ",String(s)]},t)})})}):null]})},R=e=>{let{isOpen:t,onClose:s,task:i}=e,[l,{isLoading:r}]=(0,S.HP)(),[d,o]=(0,c.useState)(""),[u,p]=(0,c.useState)(!1),[m,x]=(0,c.useState)(""),[h,v]=(0,c.useState)([]),y=async()=>{try{await l({privacy_request_id:i.privacy_request.id,manual_field_id:i.manual_field_id,field_value:i.input_type===b.PF.TEXT?d:i.input_type===b.PF.CHECKBOX?u.toString():void 0,comment_text:m||void 0,attachments:h.length>0?h.map(e=>e.originFileObj).filter(Boolean):void 0}).unwrap(),o(""),p(!1),x(""),v([]),s()}catch(e){n.Pg3.error("Failed to complete task. Please try again.")}};return(0,a.jsxs)(n.u_l,{isOpen:t,onClose:s,size:"700px",isCentered:!0,children:[(0,a.jsx)(n.ZAr,{}),(0,a.jsxs)(n.hzk,{maxWidth:"700px","data-testid":"complete-task-modal",children:[(0,a.jsx)(n.xBx,{children:(0,a.jsx)(n.AntTypography.Title,{level:4,children:"Complete Task"})}),(0,a.jsx)(n.fef,{children:(0,a.jsxs)("div",{className:"flex flex-col space-y-6",children:[(0,a.jsx)("div",{children:(0,a.jsx)(E,{task:i})}),(0,a.jsx)(n.htM,{}),(0,a.jsx)("div",{children:(0,a.jsxs)("div",{className:"flex flex-col space-y-4",children:[(()=>{switch(i.input_type){case b.PF.TEXT:return(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-gray-700",children:"Subject data"}),(0,a.jsx)(n.uFc.TextArea,{value:d,onChange:e=>o(e.target.value),placeholder:"Enter your response...",rows:4,"data-testid":"complete-modal-text-input"})]});case b.PF.CHECKBOX:return(0,a.jsx)("div",{className:"space-y-2",children:(0,a.jsx)(n.E_O,{checked:u,onChange:e=>p(e.target.checked),"data-testid":"complete-modal-checkbox",children:"The task has been completed"})});default:return(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-gray-700",children:"Upload Files"}),(0,a.jsx)("div",{children:(0,a.jsx)(n.pMK,{fileList:h,onChange:e=>{let{fileList:t}=e;return v(t)},beforeUpload:()=>!1,"data-testid":"complete-modal-file-upload",multiple:!0,children:(0,a.jsx)(n.wpx,{"data-testid":"complete-modal-upload-button",children:"Click to Upload"})})})]})}})(),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-gray-700",children:"Internal comment"}),(0,a.jsx)(n.uFc.TextArea,{value:m,onChange:e=>x(e.target.value),placeholder:"Add any additional comments...",rows:3,"data-testid":"complete-modal-comment-input"})]})]})})]})}),(0,a.jsx)(n.mzw,{children:(0,a.jsxs)(n.vyj,{children:[(0,a.jsx)(n.wpx,{onClick:()=>{o(""),p(!1),x(""),v([]),s()},disabled:r,"data-testid":"complete-modal-cancel-button",children:"Cancel"}),(0,a.jsx)(n.wpx,{type:"primary",onClick:y,loading:r,disabled:!(()=>{switch(i.input_type){case b.PF.TEXT:return d.trim().length>0;case b.PF.CHECKBOX:return u;default:return h.length>0}})(),"data-testid":"complete-modal-save-button",children:"Save"})]})})]})]})},w=e=>{let{isOpen:t,onClose:s,task:i}=e,[l,{isLoading:r}]=(0,S.DA)(),[d,o]=(0,c.useState)(""),u=async()=>{try{await l({privacy_request_id:i.privacy_request.id,manual_field_id:i.manual_field_id,skip_reason:d}).unwrap(),o(""),s()}catch(e){n.Pg3.error("Failed to skip task. Please try again.")}};return(0,a.jsxs)(n.u_l,{isOpen:t,onClose:s,size:"700px",isCentered:!0,children:[(0,a.jsx)(n.ZAr,{}),(0,a.jsxs)(n.hzk,{maxWidth:"700px","data-testid":"skip-task-modal",children:[(0,a.jsx)(n.xBx,{children:(0,a.jsx)(n.AntTypography.Title,{level:4,children:"Skip Task"})}),(0,a.jsx)(n.fef,{children:(0,a.jsxs)("div",{className:"flex flex-col space-y-6",children:[(0,a.jsx)("div",{children:(0,a.jsx)(E,{task:i})}),(0,a.jsx)(n.htM,{}),(0,a.jsx)("div",{children:(0,a.jsx)("div",{className:"flex flex-col space-y-4",children:(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-gray-700",children:"Reason for skipping (Required)"}),(0,a.jsx)(n.uFc.TextArea,{value:d,onChange:e=>o(e.target.value),placeholder:"Please provide a reason for skipping this task...",rows:4,"data-testid":"skip-modal-comment-input"})]})})})]})}),(0,a.jsx)(n.mzw,{children:(0,a.jsxs)(n.vyj,{children:[(0,a.jsx)(n.wpx,{onClick:()=>{o(""),s()},disabled:r,"data-testid":"skip-modal-cancel-button",children:"Cancel"}),(0,a.jsx)(n.wpx,{type:"primary",onClick:u,loading:r,disabled:!d.trim(),danger:!0,"data-testid":"skip-modal-skip-button",children:"Skip Task"})]})})]})]})},T=e=>{let{task:t}=e,s=(0,h.useRouter)(),{isOpen:i,onOpen:l,onClose:r}=(0,n.qY0)(),{isOpen:d,onOpen:o,onClose:c}=(0,n.qY0)(),u=(0,p.Tg)([b.Sh.PRIVACY_REQUEST_READ]);if(t.status!==b.OS.NEW)return null;let m=[{key:"skip",label:"Skip task",onClick:o}];return u&&m.push({key:"go-to-request",label:"Go to request",onClick:()=>{s.push({pathname:g.ld,query:{id:t.privacy_request.id}})}}),(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(n.vyj,{size:"small",children:[(0,a.jsx)(n.wpx,{type:"default",onClick:l,size:"small",children:"Complete"}),(0,a.jsx)(n.S0p,{menu:{items:m},trigger:["click"],placement:"bottomRight",overlayStyle:{minWidth:120},children:(0,a.jsx)(n.wpx,{size:"small",icon:(0,a.jsx)(n.PJP.r43,{}),"aria-label":"More actions"})})]}),(0,a.jsx)(R,{isOpen:i,onClose:r,task:t}),(0,a.jsx)(w,{isOpen:d,onClose:c,task:t})]})},I={[b.OS.NEW]:{color:"info",label:"New"},[b.OS.COMPLETED]:{color:"success",label:"Completed"},[b.OS.SKIPPED]:{color:"marble",label:"Skipped"}},A=[{text:"New",value:b.OS.NEW},{text:"Completed",value:b.OS.COMPLETED},{text:"Skipped",value:b.OS.SKIPPED}],N=[{text:"Access",value:b.k6.ACCESS},{text:"Erasure",value:b.k6.ERASURE}],P=e=>{let{systemFilters:t,userFilters:s,onUserClick:i,currentFilters:l,hasAccessToAllTasks:r}=e,d=[{title:"Task name",dataIndex:"name",key:"name",width:300,render:e=>(0,a.jsx)(n.AntTypography.Text,{ellipsis:{tooltip:e},className:"!max-w-[300px]",children:e})},{title:"Status",dataIndex:"status",key:"status",width:120,render:e=>(0,a.jsx)(n.j8w,{color:I[e].color,"data-testid":"manual-task-status-tag",children:I[e].label}),filters:A,filterMultiple:!1},{title:"System",dataIndex:["system","name"],key:"system_name",width:210,render:e=>(0,a.jsx)(n.AntTypography.Text,{ellipsis:{tooltip:e},className:"!max-w-[210px]",children:e}),filters:t,filterMultiple:!1},{title:"Type",dataIndex:"request_type",key:"request_type",width:150,render:e=>{let t=e===b.k6.ACCESS?b.Us.ACCESS:b.Us.ERASURE,s=C.rE.get(t)||e;return(0,a.jsx)(n.AntTypography.Text,{children:s})},filters:N,filterMultiple:!1},{title:"Assigned to",dataIndex:"assigned_users",key:"assigned_users",width:380,render:e=>{if(!e||0===e.length)return(0,a.jsx)(n.AntTypography.Text,{children:"-"});let t=e.map(e=>({label:(0,f.gJ)(e),value:e.id})),s=e.map(e=>e.id);return(0,a.jsx)(n.d3V,{value:s,options:t,readonly:!0,onTagClick:e=>i(String(e))})},filters:s,filterMultiple:!1,defaultFilteredValue:l.assignedUsers?[l.assignedUsers]:void 0},{title:"Days left",dataIndex:["privacy_request","days_left"],key:"days_left",width:140,render:e=>(0,a.jsx)(q.Z,{daysLeft:e||0,includeText:!1,status:b.q2.PENDING})},{title:"Subject identity",dataIndex:["privacy_request","subject_identities"],key:"subject_identities",width:200,render:e=>{if(!e)return(0,a.jsx)(n.AntTypography.Text,{children:"-"});let t=e.email||e.phone_number||"";return(0,a.jsx)(n.AntTypography.Text,{ellipsis:{tooltip:t},children:t})}},{title:"Actions",key:"actions",width:120,render:(e,t)=>(0,a.jsx)(T,{task:t})}];return r?d:d.filter(e=>"assigned_users"!==e.key)},U=()=>{let e=(0,h.useRouter)(),t=(0,v.C)(y.dy),[s,i]=(0,c.useState)(1),[l,r]=(0,c.useState)(25),d=(0,p.Tg)([b.Sh.MANUAL_FIELD_READ_ALL]),o=e.query.privacy_request_id||void 0,u=(0,c.useMemo)(()=>{let e={};return(null==t?void 0:t.id)&&!o&&(e.assignedUsers=t.id),o&&"string"==typeof o&&(e.privacyRequestId=o),e},[null==t?void 0:t.id,o]),[m,q]=(0,c.useState)(u),{data:C,isLoading:k,isFetching:E}=(0,S.Ym)({page:s,size:l,status:m.status,systemName:m.systemName,requestType:m.requestType,assignedUserId:m.assignedUsers,privacyRequestId:m.privacyRequestId}),{data:R}=(0,S.Ym)({page:1,size:1}),{items:w,total:T}=(0,c.useMemo)(()=>C||{items:[],total:0,pages:0,filter_options:{assigned_users:[],systems:[]}},[C]),I=(0,c.useMemo)(()=>(null==R?void 0:R.filter_options)||{assigned_users:[],systems:[]},[R]),A=P({systemFilters:(0,c.useMemo)(()=>{var e;return(null==I?void 0:null===(e=I.systems)||void 0===e?void 0:e.map(e=>({text:e.name,value:e.name})))||[]},[null==I?void 0:I.systems]),userFilters:(0,c.useMemo)(()=>{var e;let s=(null==I?void 0:null===(e=I.assigned_users)||void 0===e?void 0:e.map(e=>({text:(0,f.gJ)(e),value:e.id})))||[];return(null==t?void 0:t.isRootUser)&&s.push({text:(null==t?void 0:t.username)||(null==t?void 0:t.id),value:t.id}),s},[null==I?void 0:I.assigned_users,null==t?void 0:t.id,null==t?void 0:t.username,null==t?void 0:t.isRootUser]),onUserClick:t=>{e.push({pathname:g.fw,query:{id:t}})},currentFilters:m,hasAccessToAllTasks:d}),N=(0,c.useMemo)(()=>x()(m,u),[m,u]);return k?(0,a.jsx)(j.Z,{}):(0,a.jsxs)("div",{className:"mt-2 space-y-4",children:[(0,a.jsx)(n.kCb,{gap:3,align:"center",className:"mb-4",children:(0,a.jsx)(_.H,{globalFilter:m.privacyRequestId||"",setGlobalFilter:e=>{let t={...m};e&&e.trim()?t.privacyRequestId=e.trim():delete t.privacyRequestId,q(t),i(1)},placeholder:"Search by privacy request ID",testid:"privacy-request-id-filter"})}),(0,a.jsx)(n.V5H,{columns:A,dataSource:w,rowKey:e=>"".concat(e.privacy_request.id,"-").concat(e.manual_field_id),pagination:{current:s,pageSize:l,total:T||0,showTotal:(e,t)=>"".concat(t[0],"-").concat(t[1]," of ").concat(e," items"),onChange:(e,t)=>{i(e),t!==l&&(r(t),i(1))}},onChange:(e,t)=>{let s={privacyRequestId:m.privacyRequestId};t.status&&([s.status]=t.status),t.system_name&&([s.systemName]=t.system_name),t.request_type&&([s.requestType]=t.request_type),t.assigned_users&&([s.assignedUsers]=t.assigned_users),q(s),i(1)},locale:{emptyText:N?(0,a.jsx)("div",{"data-testid":"empty-state-current-user",className:"my-4",children:(0,a.jsx)(n.AntTypography.Paragraph,{children:'You have no tasks assigned. You can modify the "Assigned to" column filter to view tasks assigned to other users.'})}):(0,a.jsx)("div",{"data-testid":"empty-state",className:"my-4",children:"No results found."})},loading:k||E})]})};var O=s(59003),F=s(92222),D=s(16125),z=s(14048),M=s(47935),Z=s(90867);let L={approved:{colorScheme:"success",label:"Approved"},complete:{label:"Completed",colorScheme:"success"},awaiting_email_send:{label:"Awaiting Email Send",colorScheme:"marble"},denied:{label:"Denied",colorScheme:"warning"},canceled:{label:"Canceled",colorScheme:"marble"},error:{label:"Error",colorScheme:"error"},in_processing:{label:"In Progress",colorScheme:"caution"},paused:{label:"Paused",colorScheme:"marble"},pending:{label:"New",colorScheme:"info"},identity_unverified:{label:"Unverified",colorScheme:"marble"},requires_input:{colorScheme:"minos",label:"Requires Input"},requires_manual_finalization:{colorScheme:"minos",label:"Requires Finalization"}},Y=e=>{let{value:t}=e;return(0,a.jsx)(M.A4,{color:L[t].colorScheme,value:L[t].label,"data-testid":"request-status-badge"})},B=e=>{let t,{daysLeft:s,timeframe:i=45,status:l,includeText:r=!1}=e;if(null==s||l===b.q2.COMPLETE||l===b.q2.CANCELED||l===b.q2.DENIED||l===b.q2.IDENTITY_UNVERIFIED)return null;let n=100*s/i;return n<25?t="error":n>=75?t="success":n>=25&&(t="warning"),(0,a.jsx)(M.A4,{value:r?"".concat(s," days left"):s.toString(),color:t})},V=e=>Array.from(new Set(e.filter(e=>Object.values(b.Us).includes(e.action_type)).map(e=>e.action_type))),W=e=>{let{value:t}=e,s=V(t).map(e=>C.rE.get(e));return(0,a.jsx)(M.WP,{value:s,cellState:{isExpanded:!0}})};var K=s(58452),G=s(7426),X=s(57526),Q=s(66548),H=s(45489);let J=e=>{var t;let{subjectRequest:s,...i}=e,l=(0,n.qY0)(),r=(0,n.qY0)(),d=(0,n.qY0)(),o=(0,n.qY0)(),{handleApproveRequest:c,handleDenyRequest:u,handleDeleteRequest:m,handleFinalizeRequest:x,isLoading:h}=(0,H.Z)({subjectRequest:s}),{data:v}=(0,G.tB)({api_set:!1}),{data:y}=(0,Z.JE)(),j=null==v?void 0:null===(t=v.notifications)||void 0===t?void 0:t.send_request_completion_notification;return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(n.Ugi,{...i,children:["pending"!==s.status?null:(0,a.jsx)(n.wpx,{title:"Approve","aria-label":"Approve",icon:(0,a.jsx)(n.PJP.MCw,{}),onClick:l.onOpen,loading:h,disabled:h,"data-testid":"privacy-request-approve-btn",size:"small"}),"pending"!==s.status?null:(0,a.jsx)(n.wpx,{title:"Deny","aria-label":"Deny",icon:(0,a.jsx)(n.PJP.x8P,{}),onClick:r.onOpen,loading:h,disabled:h,"data-testid":"privacy-request-deny-btn",size:"small"}),s.status!==b.q2.REQUIRES_MANUAL_FINALIZATION?null:(0,a.jsx)(p.ZP,{scopes:[b.Sh.PRIVACY_REQUEST_REVIEW],children:(0,a.jsx)(n.wpx,{title:"Finalize","aria-label":"Finalize",icon:(0,a.jsx)(n.PJP.MCw,{}),onClick:o.onOpen,loading:h,disabled:h,"data-testid":"privacy-request-finalize-btn",size:"small"})}),(0,a.jsx)(p.ZP,{scopes:[b.Sh.PRIVACY_REQUEST_DELETE],children:(0,a.jsx)(n.wpx,{title:"Delete","aria-label":"Delete",icon:(0,a.jsx)(n.PJP.ZNm,{size:14}),onClick:d.onOpen,loading:h,disabled:h,"data-testid":"privacy-request-delete-btn",size:"small"})})]}),(0,a.jsx)(n.h_i,{children:(0,a.jsx)(X.Z,{isOpen:l.isOpen,isLoading:h,onClose:l.onClose,onApproveRequest:c,subjectRequest:s})}),(0,a.jsx)(n.h_i,{children:(0,a.jsx)(Q.Z,{isOpen:r.isOpen,onClose:r.onClose,onDenyRequest:u})}),(0,a.jsx)(K.Z,{isOpen:d.isOpen,onClose:d.onClose,onConfirm:m,message:(0,a.jsx)(n.xvT,{children:"You are about to permanently delete the privacy request. Are you sure you would like to continue?"})}),(0,a.jsx)(K.Z,{isOpen:o.isOpen,onClose:o.onClose,onConfirm:x,title:"Finalize privacy request",message:(0,a.jsxs)(n.xvT,{children:['You are about to finalize this privacy request. The status will be updated to "Complete"',j&&(null==y?void 0:y.service_type)?" and the requesting user will be notified":"",". Would you like to continue?"]})})]})};(i=l||(l={})).STATUS="status",i.DAYS_LEFT="due_date",i.SOURCE="source",i.REQUEST_TYPE="request_type",i.SUBJECT_IDENTITY="subject_identity",i.TIME_RECEIVED="created_at",i.CREATED_BY="created_by",i.REVIEWER="reviewer",i.ID="id",i.ACTIONS="actions";let $=(0,F.Cl)(),ee=function(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return[$.accessor(e=>e.status,{id:"status",cell:e=>{let{getValue:t}=e;return(0,a.jsx)(Y,{value:t()})},header:e=>(0,a.jsx)(M.Rr,{value:"Status",...e})}),$.accessor(e=>e.days_left,{id:"due_date",cell:e=>{let{row:t,getValue:s}=e;return(0,a.jsx)(B,{daysLeft:s(),timeframe:t.original.policy.execution_timeframe,status:t.original.status})},header:e=>(0,a.jsx)(M.Rr,{value:"Days left",...e})}),...e?[$.accessor(e=>e.source,{id:"source",cell:e=>e.getValue()?(0,a.jsx)(M.A4,{value:e.getValue()}):(0,a.jsx)(M.G3,{value:void 0}),header:e=>(0,a.jsx)(M.Rr,{value:"Source",...e}),enableSorting:!1})]:[],$.accessor(e=>e.policy.rules,{id:"request_type",cell:e=>{let{getValue:t}=e;return(0,a.jsx)(W,{value:t()})},header:e=>(0,a.jsx)(M.Rr,{value:"Request type",...e}),enableSorting:!1}),$.accessor(e=>{var t,s;return(null===(t=e.identity)||void 0===t?void 0:t.email.value)||(null===(s=e.identity)||void 0===s?void 0:s.phone_number.value)||""},{id:"subject_identity",cell:e=>{let{getValue:t}=e;return(0,a.jsx)(M.G3,{value:t()})},header:e=>(0,a.jsx)(M.Rr,{value:"Subject identity",...e}),enableSorting:!1}),$.accessor(e=>e.created_at,{id:"created_at",cell:e=>{let{getValue:t}=e;return(0,a.jsx)(M.G3,{value:(0,f.p6)(t())})},header:e=>(0,a.jsx)(M.Rr,{value:"Time received",...e})}),$.accessor(e=>{var t;return(null===(t=e.reviewer)||void 0===t?void 0:t.username)||""},{id:"reviewer",cell:e=>{let{getValue:t}=e;return(0,a.jsx)(M.G3,{value:t()})},header:e=>(0,a.jsx)(M.Rr,{value:"Reviewed by",...e}),enableSorting:!1}),$.accessor(e=>e.id,{id:"id",cell:e=>{let{getValue:t}=e;return(0,a.jsx)(M.G3,{value:t()})},header:e=>(0,a.jsx)(M.Rr,{value:"Request ID",...e}),enableSorting:!1}),$.display({id:"actions",cell:e=>{let{row:t}=e;return(0,a.jsx)(J,{subjectRequest:t.original})},header:e=>(0,a.jsx)(M.Rr,{value:"Actions",...e}),meta:{disableRowClick:!0}})]},et=e=>{let t=(0,D.v9)(Z.dp),s=(0,D.I0)();return{handleStatusChange:t=>{s((0,Z.CI)(t)),e()},handleActionTypeChange:t=>{s((0,Z.aM)(t)),e()},handleFromChange:t=>{s((0,Z.su)(null==t?void 0:t.target.value)),e()},handleToChange:t=>{s((0,Z.Ue)(null==t?void 0:t.target.value)),e()},handleClearAllFilters:()=>{s((0,Z.Mk)()),e()},...t}};var es=s(96718);let ei=e=>{let{onClose:t,onFilterChange:s,...i}=e,{handleStatusChange:l,handleActionTypeChange:r,handleFromChange:d,handleToChange:o,handleClearAllFilters:c,from:u,to:p,status:m,action_type:x}=et(s);return(0,a.jsxs)(n.u_l,{onClose:t,size:"xl",...i,children:[(0,a.jsx)(n.ZAr,{}),(0,a.jsxs)(n.hzk,{children:[(0,a.jsx)(n.xBx,{borderBottomWidth:1,borderBottomColor:"gray.200",children:"All Filters"}),(0,a.jsx)(n.olH,{}),(0,a.jsx)(n.fef,{py:4,sx:{"& label":{mb:0}},children:(0,a.jsxs)(n.Kqy,{gap:4,children:[(0,a.jsxs)(n.Kqy,{children:[(0,a.jsx)(n.lXp,{size:"md",id:"request-date-range-label",children:"Date range"}),(0,a.jsxs)(n.Ugi,{gap:3,children:[(0,a.jsxs)(n.BZy,{size:"sm",flex:1,children:[(0,a.jsx)(n.UiE,{as:"label",htmlFor:"from-date",borderRadius:"md",children:"From"}),(0,a.jsx)(n.IIB,{type:"date",name:"From",value:u,max:p||void 0,onChange:d,borderRadius:"md",id:"from-date","aria-describedby":"request-date-range-label"})]}),(0,a.jsxs)(n.BZy,{size:"sm",flex:1,children:[(0,a.jsx)(n.UiE,{as:"label",htmlFor:"to-date",borderRadius:"md",children:"To"}),(0,a.jsx)(n.IIB,{type:"date",borderRadius:"md",name:"To",value:p,min:u||void 0,onChange:o,id:"to-date","aria-describedby":"request-date-range-label"})]})]})]}),(0,a.jsxs)(n.Kqy,{children:[(0,a.jsx)(n.lXp,{size:"md",htmlFor:"request-status",children:"Status"}),(0,a.jsx)(es.z,{id:"request-status",mode:"multiple",options:C.I3,value:m,onChange:l,"data-testid":"request-status-filter"})]}),(0,a.jsxs)(n.Kqy,{children:[(0,a.jsx)(n.lXp,{size:"md",htmlFor:"request-action-type",children:"Request Type"}),(0,a.jsx)(es.z,{id:"request-action-type",mode:"multiple",options:C.kN,value:x,onChange:r,"data-testid":"request-action-type-filter"})]})]})}),(0,a.jsxs)(n.mzw,{justifyContent:"space-between",children:[(0,a.jsx)(n.wpx,{type:"text",onClick:c,children:"Clear all"}),(0,a.jsx)(n.wpx,{type:"primary",onClick:t,children:"Done"})]})]})]})},el=e=>{let{...t}=e,{plus:s}=(0,u.hz)(),[i,l]=(0,c.useState)(""),r=(0,D.v9)(Z.dp),d=(0,D.v9)(y.rK),o=(0,n.pmc)(),p=(0,h.useRouter)(),m=(0,D.I0)(),{PAGE_SIZES:x,pageSize:v,setPageSize:j,onPreviousPageClick:g,isPreviousPageDisabled:_,onNextPageClick:f,isNextPageDisabled:b,startRange:q,endRange:C,pageIndex:S,setTotalPages:k,resetPageIndexToDefault:E}=(0,M.oi)(),{isOpen:R,onOpen:w,onClose:T}=(0,n.qY0)(),{data:I,isLoading:A,isFetching:N}=(0,Z.QA)({...r,page:S,size:v}),{items:P,total:U}=(0,c.useMemo)(()=>{let e=I||{items:[],total:0,pages:0};return k(e.pages),e},[I,k]),L=(0,c.useCallback)(e=>{m((0,Z.mU)(e)),l(e),E()},[m,E,l]),Y=async()=>{let e;try{await (0,Z.py)({...r,token:d})}catch(t){e=t instanceof Error?t.message:"Unknown error occurred"}e&&o({description:"".concat(e),duration:5e3,status:"error"})},B=e=>{p.push("/privacy-requests/".concat(e))},V=(0,O.b7)({getCoreRowModel:(0,F.sC)(),data:P,columns:(0,c.useMemo)(()=>ee(s),[s]),getRowId:e=>"".concat(e.status,"-").concat(e.id),manualPagination:!0,columnResizeMode:"onChange"});return(0,a.jsxs)(n.xuv,{...t,children:[(0,a.jsxs)(M.Q$,{children:[(0,a.jsx)(M.HO,{globalFilter:i,setGlobalFilter:L,placeholder:"Search by request ID or identity value"}),(0,a.jsxs)(n.Ugi,{alignItems:"center",spacing:2,children:[(0,a.jsx)(n.wpx,{"data-testid":"filter-btn",onClick:w,children:"Filter"}),(0,a.jsx)(n.wpx,{"aria-label":"Export report","data-testid":"export-btn",icon:(0,a.jsx)(z.nM,{ml:"1.5px"}),onClick:Y})]}),(0,a.jsx)(n.h_i,{children:(0,a.jsx)(ei,{isOpen:R,onClose:T,onFilterChange:E})})]}),A?(0,a.jsx)(n.xuv,{p:2,borderWidth:1,children:(0,a.jsx)(M.I4,{rowHeight:26,numRows:10})}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(M.ZK,{tableInstance:V,onRowClick:e=>B(e.id),onSort:e=>{if(!e){m((0,Z.p2)()),E();return}let{id:t,desc:s}=e;m((0,Z.PU)(t)),m((0,Z.iX)(s?"desc":"asc")),E()}}),(0,a.jsx)(M.s8,{totalRows:U||0,pageSizes:x,setPageSize:j,onPreviousPageClick:g,isPreviousPageDisabled:_||N,onNextPageClick:f,isNextPageDisabled:b||N,startRange:q,endRange:C})]})]})};var ea=s(812),er=s(87361),en=s(46628),ed=s(32885),eo=s(34090),ec=s(55484),eu=s(40324);let ep=(e,t)=>null==t?void 0:t.find(t=>t.policy_key===e),em=e=>{var t,s;if(!e)return ec.Ry().shape({policy_key:ec.Z_().required().label("Request type")});let i=e.custom_privacy_request_fields?Object.entries(e.custom_privacy_request_fields).map(e=>{let[t,s]=e;return{[t]:ec.Ry().shape({value:s.required&&!s.hidden?ec.Z_().required().label(s.label):ec.Z_().nullable()})}}).reduce((e,t)=>({...e,...t}),{}):{};return ec.Ry().shape({policy_key:ec.Z_().required().label("Request type"),identity:ec.Ry().shape({email:(null===(t=e.identity_inputs)||void 0===t?void 0:t.email)==="required"?ec.Z_().email().required().label("Email address"):ec.Z_().nullable(),phone_number:(null===(s=e.identity_inputs)||void 0===s?void 0:s.phone)==="required"?ec.Z_().matches(/^\+?[1-9]\d{1,14}$/,"Phone number must be formatted correctly (e.g. 15555555555)").required().label("Phone number"):ec.Z_().matches(/^\+?[1-9]\d{1,14}$/,"Phone number must be formatted correctly (e.g. 15555555555)").nullable()}),custom_privacy_request_fields:ec.Ry().shape(i)})};var ex=s(97181);let eh={is_verified:!1,policy_key:"",identity:{}},ev=e=>{let{identityInputs:t}=e;return t?(0,a.jsxs)(a.Fragment,{children:[t.email?(0,a.jsx)(eu.j0,{name:"identity.email",label:"User email address",isRequired:"required"===t.email,variant:"stacked"}):null,t.phone?(0,a.jsx)(eu.j0,{name:"identity.phone_number",label:"User phone number",isRequired:"required"===t.phone,variant:"stacked"}):null]}):null},ey=e=>{let{customFieldInputs:t}=e;if(!t)return null;let s=Object.entries(t);return(0,a.jsx)(a.Fragment,{children:s.map(e=>{let[t,s]=e;return(0,a.jsx)(eu.j0,{name:"custom_privacy_request_fields.".concat(t,".value"),label:s.label,isRequired:!!s.required,variant:"stacked"},t)})})},ej=e=>{let{onSubmit:t,onCancel:s,privacyCenterUrl:i}=e,{onCopy:l}=(0,n.VPI)(""),r=(0,n.pmc)();return(0,a.jsx)(eo.J9,{initialValues:{identity:{email:""}},onSubmit:e=>{l("".concat(i,"?email=").concat(encodeURIComponent(e.identity.email))),t(e),r({status:"success",description:"DSR Link Copied!"})},validationSchema:()=>ec.Ry().shape({identity:ec.Ry().shape({email:ec.Z_().email().required().label("Email Address")})}),children:e=>{let{dirty:t,isValid:i}=e;return(0,a.jsx)(eo.l0,{children:(0,a.jsxs)(n.Kqy,{spacing:6,mb:2,children:[(0,a.jsx)(ev,{identityInputs:{email:"required"}}),(0,a.jsxs)("div",{className:"flex gap-4 self-end",children:[(0,a.jsx)(n.wpx,{onClick:s,children:"Cancel"}),(0,a.jsx)(n.wpx,{htmlType:"submit",type:"primary",disabled:!t||!i,"data-testid":"submit-btn",icon:(0,a.jsx)(n.xPt,{}),children:"Copy"})]})]})})}})};var eg=e=>{let{onSubmit:t,onCancel:s}=e,{data:i}=(0,Z.xv)();return(0,a.jsx)(eo.J9,{initialValues:eh,onSubmit:t,validationSchema:()=>(0,ec.Vo)(e=>em(ep(e.policy_key,null==i?void 0:i.actions))),children:e=>{var t;let{values:l,dirty:r,isValid:d,isSubmitting:o,setFieldValue:c}=e,u=ep(l.policy_key,null==i?void 0:i.actions);return(0,a.jsx)(eo.l0,{children:(0,a.jsxs)(n.Kqy,{spacing:6,mb:2,children:[(0,a.jsx)(ex.d,{name:"policy_key",label:"Request type",options:null!==(t=null==i?void 0:i.actions.map(e=>({label:e.title,value:e.policy_key})))&&void 0!==t?t:[],onChange:e=>{let t=ep(e,null==i?void 0:i.actions);if(!(null==t?void 0:t.custom_privacy_request_fields)){c("custom_privacy_request_fields",void 0);return}c("custom_privacy_request_fields",Object.entries(t.custom_privacy_request_fields).map(e=>{let[t,s]=e;return{[t]:{label:s.label,value:s.default_value}}}).reduce((e,t)=>({...e,...t}),{}))},layout:"stacked",isRequired:!0}),(0,a.jsx)(ev,{identityInputs:null==u?void 0:u.identity_inputs}),(0,a.jsx)(ey,{customFieldInputs:null==u?void 0:u.custom_privacy_request_fields}),(0,a.jsx)(eu.Xl,{name:"is_verified",label:"I confirm that I have verified this user information"}),(0,a.jsxs)("div",{className:"flex gap-4 self-end",children:[(0,a.jsx)(n.wpx,{onClick:s,children:"Cancel"}),(0,a.jsx)(n.wpx,{htmlType:"submit",type:"primary",disabled:!l.is_verified||!r||!d,loading:o,"data-testid":"submit-btn",children:"Create"})]})]})})}})},e_=s(31883);let ef=e=>{let{isOpen:t,onClose:s}=e,[i]=(0,Z.M6)(),l=(0,n.pmc)(),r=async e=>{let{is_verified:t,...a}=e,r=a.custom_privacy_request_fields?Object.entries(a.custom_privacy_request_fields).map(e=>{let[t,s]=e;return s.value?{[t]:s}:{}}).reduce((e,t)=>({...e,...t}),{}):void 0,n={...a,custom_privacy_request_fields:r},d=await i([n]);(0,e_.D4)(d)?l((0,en.Vo)((0,ea.e$)(d.error,"An error occurred while creating this privacy request. Please try again"))):l((0,en.t5)("Privacy request created")),s()};return(0,a.jsxs)(n.u_l,{isOpen:t,onClose:s,size:"2xl",isCentered:!0,children:[(0,a.jsx)(n.ZAr,{}),(0,a.jsxs)(n.hzk,{"data-testid":"submit-request-modal",maxHeight:"80%",overflowY:"auto",children:[(0,a.jsx)(n.xBx,{children:"Create privacy request"}),(0,a.jsx)(n.fef,{children:(0,a.jsxs)(n.Kqy,{spacing:4,children:[(0,a.jsx)(er.Z,{title:"Warning: You are bypassing identity verification",text:"You are bypassing Fides' built-in identity verification step. Please ensure that you are only entering information on behalf of a verified and approved user's privacy request."}),(0,a.jsx)(eg,{onSubmit:r,onCancel:()=>s()})]})})]})]})},eb=e=>{let{isOpen:t,onClose:s,privacyCenterUrl:i}=e;return(0,a.jsxs)(n.u_l,{size:"md",isOpen:t,onClose:s,children:[(0,a.jsx)(n.ZAr,{}),(0,a.jsxs)(n.hzk,{children:[(0,a.jsx)(n.xBx,{children:"Create a Privacy Request Link"}),(0,a.jsxs)(n.fef,{children:[(0,a.jsx)(n.Kqy,{spacing:4}),(0,a.jsx)(ej,{privacyCenterUrl:i,onSubmit:s,onCancel:s})]})]})]})};var eq=()=>{var e;let[t,s]=(0,c.useState)("closed"),i=()=>s("closed"),{data:l}=(0,ed.Vh)(),r=(null!==(e=null==l?void 0:l.privacy_center_url)&&void 0!==e?e:"").trim(),d=r.length>0;return(0,a.jsxs)(a.Fragment,{children:[d?(0,a.jsx)(eb,{isOpen:"create-link"===t,onClose:i,privacyCenterUrl:r}):null,(0,a.jsx)(ef,{isOpen:"submit-request"===t,onClose:i}),(0,a.jsx)(n.S0p.Button,{type:"primary",onClick:()=>s("submit-request"),"data-testid":"submit-request-btn",menu:{items:[{label:"Create request link",key:"create-request-link",icon:(0,a.jsx)(n.xPt,{}),onClick:()=>s("create-link"),disabled:!d}]},icon:(0,a.jsx)(n.v4q,{}),children:"Create request"})]})},eC=s(58754),eS=s(14047);let ek=()=>{let{errorAlert:e}=(0,eS.V)(),[t,s]=(0,c.useState)(!1),[i,l]=(0,c.useState)({count:0,total:0}),[r,d]=(0,c.useState)(!0),o=b.q2.ERROR,{data:u}=(0,Z.tE)(),{data:p}=(0,Z.QA)({status:[o]},{pollingInterval:15e3,skip:r});return(0,c.useEffect)(()=>{d(!(u&&u.notify_after_failures>0))},[u]),(0,c.useEffect)(()=>{let e=(null==p?void 0:p.total)||0;e>=((null==u?void 0:u.notify_after_failures)||0)&&e>i.total?(l({count:e-i.total,total:e}),s(!0)):s(!1)},[null==p?void 0:p.total,null==u?void 0:u.notify_after_failures,i.total]),{processing:()=>{t&&e((0,a.jsxs)(n.xuv,{children:["DSR automation has failed for"," ",(0,a.jsx)(n.xvT,{as:"span",fontWeight:"semibold",children:i.count})," ","privacy request(s). Please review the event log for further details."]}),void 0,{containerStyle:{maxWidth:"max-content"},duration:null,id:"dsrErrorAlert"})}}};var eE=s(72281);let eR=o()(()=>s.e(9676).then(s.bind(s,59676)),{loadableGenerated:{webpack:()=>[59676]},loading:()=>(0,a.jsx)("div",{children:"Loading..."})});var ew=()=>{let{processing:e}=ek(),{plus:t}=(0,u.hz)(),{activeTab:s,handleTabChange:i,availableTabs:l}=(0,eE.d)();(0,c.useEffect)(()=>{e()},[e]);let r=(0,c.useMemo)(()=>{let e=[];return l.request&&e.push({key:eE.G.REQUEST,label:"Request",children:(0,a.jsx)(el,{})}),l.manualTask&&e.push({key:eE.G.MANUAL_TASK,label:"Manual tasks",children:(0,a.jsx)(U,{})}),e},[l.manualTask,l.request]);return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(eC.Z,{heading:"Privacy Requests",breadcrumbItems:[{title:"All requests"}],rightContent:(0,a.jsxs)(n.vyj,{children:[t&&(0,a.jsx)(p.ZP,{scopes:[b.Sh.PRIVACY_REQUEST_CREATE],children:(0,a.jsx)(eq,{})}),(0,a.jsx)(eR,{})]}),"data-testid":"privacy-requests"}),(0,a.jsx)(n.A5g,{activeKey:s,onChange:i,items:r})]})},eT=()=>(0,a.jsx)(r.Z,{title:"Privacy Requests",children:(0,a.jsx)(ew,{})})},31883:function(e,t,s){"use strict";s.d(t,{Bw:function(){return i.Bw},D4:function(){return i.D4}});var i=s(19043)}},function(e){e.O(0,[8765,3550,203,2888,9774,179],function(){return e(e.s=1565)}),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9196],{6446:function(e){e.exports=function(e,t,s,a){var r=-1,i=null==e?0:e.length;for(a&&i&&(s=e[++r]);++r<i;)s=t(s,e[r],r,e);return s}},67375:function(e,t,s){var a=s(52033),r=s(80068);e.exports=function(e,t){var s=-1,i=r(e)?Array(e.length):[];return a(e,function(e,a,r){i[++s]=t(e,a,r)}),i}},74833:function(e,t,s){var a=s(56127),r=/^\s+/;e.exports=function(e){return e?e.slice(0,a(e)+1).replace(r,""):e}},56632:function(e,t,s){var a=s(89278),r=s(80068),i=s(50098);e.exports=function(e){return function(t,s,n){var o=Object(t);if(!r(t)){var l=a(s,3);t=i(t),s=function(e){return l(o[e],e,o)}}var c=e(t,s,n);return c>-1?o[l?t[c]:c]:void 0}}},56127:function(e){var t=/\s/;e.exports=function(e){for(var s=e.length;s--&&t.test(e.charAt(s)););return s}},64925:function(e,t,s){var a=s(56632)(s(66259));e.exports=a},66259:function(e,t,s){var a=s(95372),r=s(89278),i=s(47991),n=Math.max;e.exports=function(e,t,s){var o=null==e?0:e.length;if(!o)return -1;var l=null==s?0:i(s);return l<0&&(l=n(o+l,0)),a(e,r(t,3),l)}},55807:function(e,t,s){var a=s(66070),r=s(89278),i=s(67375),n=s(19785);e.exports=function(e,t){return(n(e)?a:i)(e,r(t,3))}},82846:function(e,t,s){var a=s(77400);e.exports=function(){return a.Date.now()}},32526:function(e,t,s){var a=s(68267)(function(e,t,s){return e+(s?"_":"")+t.toLowerCase()});e.exports=a},94919:function(e,t,s){var a=s(91936),r=1/0;e.exports=function(e){return e?(e=a(e))===r||e===-r?(e<0?-1:1)*17976931348623157e292:e==e?e:0:0===e?e:0}},47991:function(e,t,s){var a=s(94919);e.exports=function(e){var t=a(e),s=t%1;return t==t?s?t-s:t:0}},91936:function(e,t,s){var a=s(74833),r=s(11611),i=s(55193),n=0/0,o=/^[-+]0x[0-9a-f]+$/i,l=/^0b[01]+$/i,c=/^0o[0-7]+$/i,d=parseInt;e.exports=function(e){if("number"==typeof e)return e;if(i(e))return n;if(r(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=r(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=a(e);var s=l.test(e);return s||c.test(e)?d(e.slice(2),s?2:8):o.test(e)?n:+e}},86548:function(e,t,s){(window.__NEXT_P=window.__NEXT_P||[]).push(["/reporting/datamap",function(){return s(27901)}])},624:function(e,t,s){"use strict";var a=s(24246),r=s(13577),i=s(27378);let n=e=>{let t=e.split("."),s=[];return t.forEach(e=>{let t=s.length>0?s[s.length-1]:null;t?s.push("".concat(t,".").concat(e)):s.push(e)}),s},o=(e,t)=>{let s=n(t).filter(e=>e!==t);return e.filter(e=>s.includes(e)).length>0},l=(e,t)=>!!(e===t||e.startsWith("".concat(t,"."))),c=(e,t,s)=>{let a=null!=s?s:[];return e.forEach(e=>{e.children&&c(e.children,t,a),l(e.value,t)&&a.push(e)}),a},d=e=>{let{node:t,isChecked:s,onChecked:i,isExpanded:n,onExpanded:o,isIndeterminate:l,isDisabled:c,children:d}=e,{value:u,label:_}=t,p=!!t.children&&t.children.length>0;return(0,a.jsxs)(r.xuv,{children:[(0,a.jsxs)(r.xuv,{display:"flex",justifyContent:"space-between",_hover:{backgroundColor:"gray.100",cursor:"pointer"},onClick:()=>o(t),minHeight:8,children:[(0,a.jsx)(r.XZJ,{colorScheme:"complimentary",value:u,isChecked:!l&&s,isIndeterminate:l,isDisabled:c,onChange:()=>i(t),mx:2,"data-testid":"checkbox-".concat(_),children:_}),p?(0,a.jsx)(r.wpx,{"data-testid":"expand-".concat(_),"aria-label":n?"collapse":"expand",icon:(0,a.jsx)(r.v4q,{boxSize:5}),type:"text",onClick:()=>o(t),className:n?"rotate-180":void 0}):null]}),d&&(0,a.jsx)(r.xuv,{ml:5,children:d})]})};t.ZP=e=>{let{nodes:t,selected:s,onSelected:u,..._}=e,[p,m]=(0,i.useState)([]),[E,S]=(0,i.useState)([]);(0,i.useEffect)(()=>{let e=Array.from(new Set([...s.map(e=>n(e)).reduce((e,t)=>e.concat(t),[]),...s.map(e=>c(t,e)).reduce((e,t)=>e.concat(t),[]).map(e=>e.value)]));S(e),m(e)},[s,t]);let h=e=>{let a=[],r=[];p.indexOf(e.value)>=0?(a=p.filter(t=>!l(t,e.value)),r=s.filter(t=>!l(t,e.value))):(a=[...p,...c(t,e.value).map(e=>e.value)],r=[...s,e.value]),m(a),u(r)},f=e=>{E.indexOf(e.value)>=0?S(E.filter(t=>!l(t,e.value))):S([...E,e.value])},g=e=>{if(e.children){let r=p.indexOf(e.value)>=0,n=E.indexOf(e.value)>=0,l=c(t,e.value),u=r&&e.children.length>0&&p.filter(t=>t.startsWith("".concat(e.value,"."))).length+1!==l.length,_=o(s,e.value);return(0,a.jsx)(d,{node:e,isChecked:r,onChecked:h,isExpanded:n,onExpanded:f,isDisabled:_,isIndeterminate:u,children:n?e.children.map(e=>(0,a.jsx)(i.Fragment,{children:g(e)},e.value)):void 0})}return null};return(0,a.jsx)(r.xuv,{..._,children:t.map(e=>(0,a.jsx)(r.xuv,{children:g(e)},e.value))})}},35287:function(e,t,s){"use strict";var a=s(24246),r=s(13577),i=s(88038),n=s.n(i);s(27378),t.Z=e=>{let{children:t,title:s,mainProps:i}=e;return(0,a.jsxs)(r.kCb,{"data-testid":s,direction:"column",height:"calc(100vh - 48px)",width:"calc(100vw - 240px)",children:[(0,a.jsxs)(n(),{children:[(0,a.jsxs)("title",{children:["Fides Admin UI - ",s]}),(0,a.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,a.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,a.jsx)(r.kCb,{px:10,py:6,as:"main",overflow:"auto",direction:"column",flex:1,minWidth:0,...i,children:t})]})}},56358:function(e,t,s){"use strict";s.d(t,{q:function(){return r}});var a=s(24246);let r=(0,s(13577).IUT)({displayName:"TrashCanOutlineIcon",viewBox:"0 0 11 12",path:(0,a.jsx)("path",{d:"M4.5166 1.60859L4.1084 2.21875H7.22363L6.81543 1.60859C6.7832 1.56133 6.72949 1.53125 6.67148 1.53125H4.6584C4.60039 1.53125 4.54668 1.55918 4.51445 1.60859H4.5166ZM7.6748 1.03711L8.46328 2.21875H8.75977H9.79102H9.96289C10.2486 2.21875 10.4785 2.44863 10.4785 2.73438C10.4785 3.02012 10.2486 3.25 9.96289 3.25H9.79102V9.78125C9.79102 10.7309 9.02188 11.5 8.07227 11.5H3.25977C2.31016 11.5 1.54102 10.7309 1.54102 9.78125V3.25H1.36914C1.0834 3.25 0.853516 3.02012 0.853516 2.73438C0.853516 2.44863 1.0834 2.21875 1.36914 2.21875H1.54102H2.57227H2.86875L3.65723 1.03496C3.88066 0.701953 4.25664 0.5 4.6584 0.5H6.67148C7.07324 0.5 7.44922 0.701953 7.67266 1.03496L7.6748 1.03711ZM2.57227 3.25V9.78125C2.57227 10.1615 2.87949 10.4688 3.25977 10.4688H8.07227C8.45254 10.4688 8.75977 10.1615 8.75977 9.78125V3.25H2.57227ZM4.29102 4.625V9.09375C4.29102 9.28281 4.13633 9.4375 3.94727 9.4375C3.7582 9.4375 3.60352 9.28281 3.60352 9.09375V4.625C3.60352 4.43594 3.7582 4.28125 3.94727 4.28125C4.13633 4.28125 4.29102 4.43594 4.29102 4.625ZM6.00977 4.625V9.09375C6.00977 9.28281 5.85508 9.4375 5.66602 9.4375C5.47695 9.4375 5.32227 9.28281 5.32227 9.09375V4.625C5.32227 4.43594 5.47695 4.28125 5.66602 4.28125C5.85508 4.28125 6.00977 4.43594 6.00977 4.625ZM7.72852 4.625V9.09375C7.72852 9.28281 7.57383 9.4375 7.38477 9.4375C7.1957 9.4375 7.04102 9.28281 7.04102 9.09375V4.625C7.04102 4.43594 7.1957 4.28125 7.38477 4.28125C7.57383 4.28125 7.72852 4.43594 7.72852 4.625Z",fill:"currentColor"})})},19904:function(e,t,s){"use strict";s.d(t,{Tg:function(){return n}});var a=s(24246),r=s(16134),i=s(31793);let n=e=>(0,r.C)(i.uu).filter(t=>e.includes(t)).length>0;t.ZP=e=>{let{scopes:t,children:s}=e;return n(t)?(0,a.jsx)(a.Fragment,{children:s}):null}},70416:function(e,t,s){"use strict";s.d(t,{d:function(){return r}});var a=s(24246);let r=(0,s(13577).IUT)({displayName:"AddIcon",viewBox:"0 0 10 10",path:(0,a.jsx)("path",{d:"M4.33331 4.33398V0.333984H5.66665V4.33398H9.66665V5.66732H5.66665V9.66732H4.33331V5.66732H0.333313V4.33398H4.33331Z",fill:"currentColor"})})},34929:function(e,t,s){"use strict";var a=s(24246),r=s(64925),i=s.n(r),n=s(27378),o=s(16134),l=s(30002),c=s(28079),d=s(57072);let u=()=>{let{isLoading:e}=(0,c.fd)(),t=(0,o.C)(c.U3),{isLoading:s}=(0,d.MO)(),a=(0,o.C)(d.qb),{isLoading:r}=(0,l.te)();return{dataUses:t,dataSubjects:(0,o.C)(l.ZL),dataCategories:a,isLoading:e||s||r}};t.Z=()=>{let{dataUses:e,dataCategories:t,dataSubjects:s,isLoading:r}=u(),o=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;return e.split(".").slice(0,t).join(".")},l=function(e,t){let s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,a=t(e);if(!a)return{};let r=t(o(e,s)),i=!!a.parent_key;return{name:a.name||void 0,primaryName:i&&(null==r?void 0:r.name)!==a.name&&(null==r?void 0:r.name)||void 0}},c=function(e,t){let s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,{name:r,primaryName:i}=l(e,t,s);return r?i?(0,a.jsxs)(n.Fragment,{children:[(0,a.jsxs)("strong",{children:[i,":"]})," ",r]},e):(0,a.jsx)("strong",{children:r},e):e},d=t=>i()(e,{fides_key:t}),_=e=>i()(t,{fides_key:e}),p=e=>i()(s,{fides_key:e});return{getDataUses:()=>e,getDataUseByKey:d,getDataUseDisplayName:e=>c(e,d,1),getDataUseDisplayNameProps:e=>l(e,d,1),getDataCategories:()=>t,getDataCategoryByKey:_,getDataCategoryDisplayName:e=>c(e,_,2),getDataCategoryDisplayNameProps:e=>l(e,_,2),getDataSubjects:()=>s,getDataSubjectByKey:p,getDataSubjectDisplayName:e=>{let t=p(e);return t?t.name:e},getPrimaryKey:o,isLoading:r}}},59001:function(e,t,s){"use strict";s.d(t,{Ch:function(){return n},Hy:function(){return o},Lo:function(){return r}});var a,r,i=s(54682);let n="root";(a=r||(r={})).DATA_CATEGORIES="Data categories",a.DATA_USES="Data uses",a.DATA_SUBJECTS="Data subjects";let o=e=>{switch(e){case"Data categories":return{UPDATE:i.Sh.DATA_CATEGORY_UPDATE,CREATE:i.Sh.DATA_CATEGORY_CREATE,DELETE:i.Sh.DATA_CATEGORY_DELETE,READ:i.Sh.DATA_CATEGORY_READ};case"Data uses":return{UPDATE:i.Sh.DATA_USE_UPDATE,CREATE:i.Sh.DATA_USE_CREATE,DELETE:i.Sh.DATA_USE_DELETE,READ:i.Sh.DATA_USE_READ};case"Data subjects":return{UPDATE:i.Sh.DATA_SUBJECT_UPDATE,CREATE:i.Sh.DATA_SUBJECT_CREATE,DELETE:i.Sh.DATA_SUBJECT_DELETE,READ:i.Sh.DATA_SUBJECT_READ};default:throw Error("Unknown taxonomy type: ".concat(e))}}},90673:function(e,t,s){"use strict";s.d(t,{Cd:function(){return i},Xl:function(){return n}});var a=s(54682),r=s(59001);let i=(e,t)=>{let s;if(null==t&&e.every(e=>void 0===e.parent_key))s=e;else{let a=null!=t?t:null;s=e.filter(e=>e.parent_key===a)}return s.map(t=>{var s,a;let r=t.fides_key;return{value:t.fides_key,label:""===t.name||null==t.name?t.fides_key:t.name,description:t.description,children:i(e,r),is_default:null!==(s=t.is_default)&&void 0!==s&&s,active:null!==(a=t.active)&&void 0!==a&&a}})},n=e=>{switch(e){case r.Lo.DATA_CATEGORIES:return a.P6.DATA_CATEGORY;case r.Lo.DATA_SUBJECTS:return a.P6.DATA_SUBJECT;case r.Lo.DATA_USES:return a.P6.DATA_USE;default:return}}},27901:function(e,t,s){"use strict";s.r(t),s.d(t,{default:function(){return eC}});var a,r,i,n,o=s(24246),l=s(27378),c=s(35287),d=s(58754),u=s(71795),_=s(54682);(a=i||(i={})).COLUMN_EXPANSION_STATE="datamap-column-expansion-state",a.COLUMN_NAMES="datamap-column-names",a.COLUMN_ORDER="datamap-column-order",a.COLUMN_SIZING="datamap-column-sizing",a.COLUMN_VISIBILITY="datamap-column-visibility",a.CUSTOM_REPORT_ID="datamap-custom-report-id",a.FILTERS="datamap-filters",a.GROUP_BY="datamap-group-by",a.SORTING_STATE="datamap-sorting-state",a.WRAPPING_COLUMNS="datamap-wrapping-columns",(r=n||(n={})).SYSTEM_NAME="system_name",r.DATA_USE="data_uses",r.DATA_CATEGORY="data_categories",r.DATA_SUBJECT="data_subjects",r.LEGAL_NAME="legal_name",r.DPO="dpo",r.LEGAL_BASIS_FOR_PROCESSING="legal_basis_for_processing",r.ADMINISTRATING_DEPARTMENT="administrating_department",r.COOKIE_MAX_AGE_SECONDS="cookie_max_age_seconds",r.PRIVACY_POLICY="privacy_policy",r.LEGAL_ADDRESS="legal_address",r.COOKIE_REFRESH="cookie_refresh",r.DATA_SECURITY_PRACTICES="data_security_practices",r.DATA_SHARED_WITH_THIRD_PARTIES="data_shared_with_third_parties",r.DATA_STEWARDS="data_stewards",r.DECLARATION_NAME="declaration_name",r.DOES_INTERNATIONAL_TRANSFERS="does_international_transfers",r.DPA_LOCATION="dpa_location",r.DESTINATIONS="egress",r.EXEMPT_FROM_PRIVACY_REGULATIONS="exempt_from_privacy_regulations",r.FEATURES="features",r.FIDES_KEY="fides_key",r.FLEXIBLE_LEGAL_BASIS_FOR_PROCESSING="flexible_legal_basis_for_processing",r.IMPACT_ASSESSMENT_LOCATION="impact_assessment_location",r.SOURCES="ingress",r.JOINT_CONTROLLER_INFO="joint_controller_info",r.LEGAL_BASIS_FOR_PROFILING="legal_basis_for_profiling",r.LEGAL_BASIS_FOR_TRANSFERS="legal_basis_for_transfers",r.LEGITIMATE_INTEREST_DISCLOSURE_URL="legitimate_interest_disclosure_url",r.PROCESSES_PERSONAL_DATA="processes_personal_data",r.REASON_FOR_EXEMPTION="reason_for_exemption",r.REQUIRES_DATA_PROTECTION_ASSESSMENTS="requires_data_protection_assessments",r.RESPONSIBILITY="responsibility",r.RETENTION_PERIOD="retention_period",r.SHARED_CATEGORIES="shared_categories",r.SPECIAL_CATEGORY_LEGAL_BASIS="special_category_legal_basis",r.THIRD_PARTIES="third_parties",r.COOKIES="cookies",r.USES_COOKIES="uses_cookies",r.USES_NON_COOKIE_ACCESS="uses_non_cookie_access",r.USES_PROFILING="uses_profiling",r.SYSTEM_UNDECLARED_DATA_CATEGORIES="system_undeclared_data_categories",r.DATA_USE_UNDECLARED_DATA_CATEGORIES="data_use_undeclared_data_categories",r.PROCESSES_SPECIAL_CATEGORY_DATA="processes_special_category_data";let p={system_name:"System",data_uses:"Data use",data_categories:"Data categories",data_subjects:"Data subject",legal_name:"Legal name",dpo:"Data privacy officer",legal_basis_for_processing:"Legal basis for processing",administrating_department:"Administrating department",cookie_max_age_seconds:"Cookie max age seconds",privacy_policy:"Privacy policy",legal_address:"Legal address",cookie_refresh:"Cookie refresh",data_security_practices:"Data security practices",data_shared_with_third_parties:"Data shared with third parties",data_stewards:"Data stewards",declaration_name:"Declaration name",does_international_transfers:"Does international transfers",dpa_location:"DPA location",egress:"Destination",exempt_from_privacy_regulations:"Exempt from privacy regulations",features:"Features",fides_key:"Fides key",flexible_legal_basis_for_processing:"Flexible legal basis for processing",impact_assessment_location:"Impact assessment location",ingress:"Source",joint_controller_info:"Joint controller info",legal_basis_for_profiling:"Legal basis for profiling",legal_basis_for_transfers:"Legal basis for transfers",legitimate_interest_disclosure_url:"Legitimate interest disclosure URL",processes_personal_data:"Processes personal data",reason_for_exemption:"Reason for exemption",requires_data_protection_assessments:"Requires data protection assessments",responsibility:"Responsibility",retention_period:"Retention period",shared_categories:"Shared categories",special_category_legal_basis:"Special category legal basis",third_parties:"Third parties",system_undeclared_data_categories:"System undeclared data categories",data_use_undeclared_data_categories:"Data use undeclared data categories",cookies:"Cookies",uses_cookies:"Uses cookies",uses_non_cookie_access:"Uses non-cookie access",uses_profiling:"Uses profiling",processes_special_category_data:"Processes special category data"},m={[n.SYSTEM_UNDECLARED_DATA_CATEGORIES]:!1,[n.DATA_USE_UNDECLARED_DATA_CATEGORIES]:!1},E={dataUses:[],dataSubjects:[],dataCategories:[]},S=(0,l.createContext)({}),h=e=>{let{children:t}=e,[s,a]=(0,u._)(i.CUSTOM_REPORT_ID,""),[r,n]=(0,u._)(i.GROUP_BY,_.fI.SYSTEM_DATA_USE),[c,d]=(0,u._)(i.FILTERS,E),[p,h]=(0,u._)(i.COLUMN_ORDER,[]),[f,g]=(0,u._)(i.COLUMN_VISIBILITY,m),[A,x]=(0,u._)(i.COLUMN_SIZING,{}),[C,T]=(0,u._)(i.COLUMN_NAMES,{}),v=(0,l.useMemo)(()=>({savedCustomReportId:s,setSavedCustomReportId:a,groupBy:r,setGroupBy:n,selectedFilters:c,setSelectedFilters:d,columnOrder:p,setColumnOrder:h,columnVisibility:f,setColumnVisibility:g,columnSizing:A,setColumnSizing:x,columnNameMapOverrides:C,setColumnNameMapOverrides:T}),[s,a,r,n,c,d,p,h,f,g,A,x,C,T]);return(0,o.jsx)(S.Provider,{value:v,children:t})},f=()=>{let e=(0,l.useContext)(S);if(!e||0===Object.keys(e).length)throw Error("useDatamapReport must be used within a DatamapReportProvider");return e};var g=s(59003),A=s(92222),x=s(47935),C=s(13577),T=s(34090),v=s(66726),R=s.n(v),O=s(16134),j=s(34929),b=s(14048),y=s(19904),D=s(16394),I=s(38943),N=s(35258),L=e=>{let{children:t,heading:s,onCancel:a,onConfirm:r,isLoading:i,cancelButtonText:n,continueButtonText:l,"data-testid":c="standard-dialog",...d}=e,{onClose:u}=d;return(0,o.jsxs)(C.u_l,{closeOnOverlayClick:i,...d,children:[(0,o.jsx)(C.ZAr,{}),(0,o.jsxs)(C.hzk,{"data-testid":c,children:[s&&(0,o.jsx)(C.xBx,{children:s}),(0,o.jsx)(C.olH,{isDisabled:i,"data-testid":"standard-dialog-close-btn"}),t&&(0,o.jsx)(C.fef,{children:t}),(0,o.jsxs)(C.mzw,{gap:3,width:"100%",sx:{"& button":{width:"100%"}},children:[(0,o.jsx)(C.wpx,{onClick:()=>{a&&a(),u()},"data-testid":"".concat(c?"".concat(c,"-"):"","cancel-btn"),disabled:i,children:n||"Cancel"}),(0,o.jsx)(C.wpx,{onClick:r,type:"primary","data-testid":"".concat(c?"".concat(c,"-"):"","continue-btn"),loading:i,children:l||"Continue"})]})]})]})},w=s(22968),M=e=>{let[t,s]=(0,l.useState)(w.T2.csv),{onConfirm:a}=e;return(0,o.jsx)(L,{heading:"Export report",continueButtonText:"Download",size:"xl",...e,onConfirm:()=>a(t),"data-testid":"export-modal",children:(0,o.jsxs)(C.kCb,{direction:"column",gap:3,pb:3,children:[(0,o.jsx)(C.xvT,{textAlign:"left",children:"Export your data map report using the options below. Depending on the number of rows, the file may take a few minutes to process."}),(0,o.jsxs)(C.NIc,{children:[(0,o.jsx)(C.lXp,{htmlFor:"format",children:"Choose Format"}),(0,o.jsx)(C.WPr,{id:"format",value:t,onChange:s,"data-testid":"export-format-select",options:[{value:w.T2.csv,label:"CSV"},{value:w.T2.xlsx,label:"XLSX"}],className:"w-full"})]})]})})},P=s(624),U=s(30002),k=s(28079),G=s(90673),H=s(39864);let Y=e=>{let{label:t,children:s,...a}=e;return(0,o.jsxs)(C.Qdk,{...a,children:[(0,o.jsx)(C.X6q,{children:(0,o.jsxs)(C.KFZ,{height:"100%","data-testid":"filter-modal-accordion-button",textAlign:"left",fontWeight:600,children:[(0,o.jsx)(C.xuv,{flex:1,children:t}),(0,o.jsx)(C.XEm,{boxSize:7})]})}),(0,o.jsx)(C.Hk3,{children:s})]})},F=e=>{let{columnNameMap:t,selectedFilters:s,onFilterChange:a,onClose:r,...i}=e;(0,k.fd)(),(0,U.te)(),(0,H.MO)();let{dataUses:n,dataSubjects:c,dataCategories:d}=s,u=(0,O.C)(k.U3),_=(0,O.C)(U.ZL),p=(0,O.C)(H.qb),[m,E]=(0,l.useState)(n),[S,h]=(0,l.useState)(c),[f,g]=(0,l.useState)(d);(0,l.useEffect)(()=>{E(n)},[n]),(0,l.useEffect)(()=>{h(c)},[c]),(0,l.useEffect)(()=>{g(d)},[d]);let A=(0,l.useMemo)(()=>(0,G.Cd)(u),[u]),x=(0,l.useMemo)(()=>(0,G.Cd)(_),[_]),T=(0,l.useMemo)(()=>(0,G.Cd)(p),[p]);return(0,o.jsx)(L,{heading:"Filter Datamap Report",...i,onCancel:()=>{E([]),h([]),g([]),a({dataUses:[],dataSubjects:[],dataCategories:[]}),r()},onConfirm:()=>{a({dataUses:m,dataSubjects:S,dataCategories:f}),r()},onClose:r,cancelButtonText:"Reset filters",continueButtonText:"Done","data-testid":"datamap-report-filter-modal",children:(0,o.jsxs)(C.UQy,{allowToggle:!0,children:[(0,o.jsx)(Y,{label:t.data_uses,children:(0,o.jsx)(P.ZP,{nodes:A,selected:m,onSelected:E,"data-testid":"filter-modal-checkbox-tree-uses"})}),(0,o.jsx)(Y,{label:t.data_categories,children:(0,o.jsx)(P.ZP,{nodes:T,selected:f,onSelected:g,"data-testid":"filter-modal-checkbox-tree-categories"})}),(0,o.jsx)(Y,{label:t.data_subjects,children:(0,o.jsx)(P.ZP,{nodes:x,selected:S,onSelected:h,"data-testid":"filter-modal-checkbox-tree-subjects"})})]})})};var V=s(32885),Z=s(70416),B=s(812),z=s(56358);let{useGetMinimalCustomReportsQuery:W,useLazyGetCustomReportByIdQuery:q,usePostCustomReportMutation:X,useDeleteCustomReportMutation:J}=s(78780).u.injectEndpoints({endpoints:e=>({getMinimalCustomReports:e.query({query:e=>{let{pageIndex:t=1,pageSize:s=50,report_type:a=_.C2.DATAMAP}=e,r="page=".concat(t,"&size=").concat(s,"&report_type=").concat(a);return{url:"plus/custom-report/minimal?".concat(r)}},providesTags:["Custom Reports"]}),getCustomReportById:e.query({query:e=>({url:"plus/custom-report/".concat(e)}),providesTags:(e,t,s)=>[{type:"Custom Reports",id:s}]}),postCustomReport:e.mutation({query:e=>({method:"POST",url:"plus/custom-report",body:e}),invalidatesTags:["Custom Reports"]}),deleteCustomReport:e.mutation({query:e=>({method:"DELETE",url:"plus/custom-report/".concat(e)}),invalidatesTags:["Custom Reports"]})})});var K=s(55484),Q=s(40324);let $="Report name",ee=e=>{let{isOpen:t,handleClose:s,tableStateToSave:a,columnMapToSave:r={},unavailableNames:i,onCreateCustomReport:n}=e,c=(0,C.pmc)(),[d]=X(),u=(0,l.useMemo)(()=>K.Ry().shape({reportName:K.Z_().label($).required("Please provide a name for this report").test("is-unique","",async(e,t)=>null==i||!i.includes(e)||t.createError({message:"This name already exists"})).max(80,"Report name is too long (max 80 characters)")}),[i]),p=async e=>{var t;let i={};Object.entries(r).forEach(e=>{let[t,s]=e;i[t]={label:s,enabled:!0}}),Object.entries(null!==(t=null==a?void 0:a.columnVisibility)&&void 0!==t?t:{}).forEach(e=>{let[t,s]=e;i[t]||(i[t]={}),i[t].enabled=s});try{let t={name:e.trim(),type:_.C2.DATAMAP,config:{column_map:i,table_state:a}},r=await d(t);if((0,B.D4)(r))throw r.error;n(r.data),s()}catch(e){c({status:"error",description:(0,B.e$)(e,"A problem occurred while creating the report.")})}};return(0,o.jsxs)(C.u_l,{size:"lg",isOpen:t,onClose:s,motionPreset:"none",children:[(0,o.jsx)(C.ZAr,{}),(0,o.jsxs)(C.hzk,{children:[(0,o.jsx)(C.xBx,{pb:0,children:"Create a report"}),(0,o.jsx)(T.J9,{initialValues:{reportName:""},onSubmit:e=>p(e.reportName),onReset:s,validateOnBlur:!1,validationSchema:u,children:e=>{let{dirty:t,isValid:s}=e;return(0,o.jsxs)(T.l0,{"data-testid":"custom-report-form",children:[(0,o.jsxs)(C.fef,{children:[(0,o.jsx)(C.xvT,{fontSize:"sm",color:"gray.600",pb:6,children:"Customize and save your current filter settings for easy access in the future. This saved report will include the column layout and currently applied filter settings."}),(0,o.jsx)(Q.j0,{id:"reportName",name:"reportName",isRequired:!0,label:$,placeholder:"Enter a name for the report...",variant:"stacked",maxLength:80})]}),(0,o.jsxs)(C.mzw,{gap:2,children:[(0,o.jsx)(C.wpx,{size:"small",htmlType:"reset",children:"Cancel"}),(0,o.jsx)(C.wpx,{size:"small",disabled:!t||!s,type:"primary","data-testid":"custom-report-form-submit",htmlType:"submit",children:"Save"})]})]})}})]})]})},et="Report",es="Reports",ea=e=>{var t;let{reportType:s,savedReportId:a,tableStateToSave:r,currentColumnMap:i,onCustomReportSaved:n,onSavedReportDeleted:c}=e,d=(0,y.Tg)([_.Sh.CUSTOM_REPORT_CREATE]),u=(0,y.Tg)([_.Sh.CUSTOM_REPORT_DELETE]),p=(0,C.pmc)({id:"custom-report-toast"}),{data:m,isLoading:E}=W({report_type:s}),[S,h]=(0,l.useState)(),[f]=q(),[g]=J(),{isOpen:A,onToggle:x,onOpen:v,onClose:R}=(0,C.qY0)(),{isOpen:O,onOpen:j,onClose:b}=(0,C.qY0)(),{isOpen:D,onOpen:I,onClose:N}=(0,C.qY0)(),[L,w]=(0,l.useState)(),[M,P]=(0,l.useState)(),[U,k]=(0,l.useState)(),[G,H]=(0,l.useState)(!1),{resetForm:Y}=(0,T.u6)(),F=(0,l.useMemo)(()=>{var e;let t=null==m?void 0:null===(e=m.items.find(e=>e.id===a))||void 0===e?void 0:e.name;return null!=t?t:es},[null==m?void 0:m.items,a]),V=!E&&!(null==m?void 0:null===(t=m.items)||void 0===t?void 0:t.length),X=e=>{h(null==m?void 0:m.items.filter(t=>t.name.toLowerCase().includes(e.toLowerCase())))},K=async e=>{w(e);let{data:t,isError:s,error:a}=await f(e);if(s){let e=(0,B.e$)(a,"A problem occurred while fetching the ".concat(et,"."));e.includes("not found")&&c(),p({status:"error",description:e})}else P(t)},Q=()=>{w(""),P(void 0),H(!1)},$=()=>{M?(H(!1),M.id!==a&&n(M,Y),R()):L?H(!0):(n(null,Y),R())},ea=async e=>{e===(null==M?void 0:M.id)&&(Q(),c()),g(e)};(0,l.useEffect)(()=>{m&&h(m.items)},[m]),(0,l.useEffect)(()=>{G&&(H(!1),$())},[M]),(0,l.useEffect)(()=>{a?K(a):Q()},[a]),(0,l.useEffect)(()=>{U&&I()},[I,U]);let er=!M&&!a||(null==M?void 0:M.id)===a;return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(C.J2e,{placement:"bottom-end",isOpen:A,onClose:$,id:"custom-reports-selection",children:[(0,o.jsx)(C.xol,{children:(0,o.jsx)(C.wpx,{className:"max-w-40",icon:(0,o.jsx)(C.v4q,{}),iconPosition:"end","data-testid":"custom-reports-trigger",onClick:x,children:(0,o.jsx)(C.xvT,{noOfLines:1,display:"inline-block",children:F})})}),(0,o.jsx)(C.h_i,{children:(0,o.jsxs)(C.yky,{"data-testid":"custom-reports-popover",children:[(0,o.jsx)(C.QHN,{}),(0,o.jsx)(T.J9,{initialValues:{},onSubmit:$,onReset:Q,children:(0,o.jsxs)(T.l0,{children:[(0,o.jsx)(C.wpx,{size:"small",disabled:V,htmlType:"reset",className:"absolute left-2 top-2","data-testid":"custom-reports-reset-button",children:"Reset"}),(0,o.jsxs)(C.Ytg,{textAlign:"center",children:[(0,o.jsx)(C.xvT,{fontSize:"sm",children:es}),(0,o.jsx)(C.BZy,{size:"sm",mt:3,children:(0,o.jsx)(C.IIB,{type:"text",borderRadius:"md",placeholder:"Search...",onChange:e=>X(e.target.value)})})]}),(0,o.jsx)(C.usR,{top:2,onClick:()=>{a?K(a):Q(),R()},"data-testid":"custom-report-popover-cancel"}),(0,o.jsxs)(C.baG,{px:6,pt:5,pb:1,children:[V&&(0,o.jsxs)(C.gCW,{px:2,pt:6,pb:3,"data-testid":"custom-reports-empty-state",children:[(0,o.jsx)(C.wpx,{type:"primary",size:"small","aria-label":"add ".concat(et),icon:(0,o.jsx)(Z.d,{}),onClick:j,className:"rounded-full","data-testid":"add-report-button"}),(0,o.jsxs)(C.xvT,{fontSize:"sm",textAlign:"center",color:"gray.500",children:["No ",es.toLowerCase()," have been created. Start by applying your preferred filter and column settings, then create a"," ",et.toLowerCase()," for easy access later."]})]}),!V&&(E?(0,o.jsxs)(C.gCW,{pb:2,children:[(0,o.jsx)(C.OdW,{width:"100%",height:C.rSc.space[4]}),(0,o.jsx)(C.OdW,{width:"100%",height:C.rSc.space[4]}),(0,o.jsx)(C.OdW,{width:"100%",height:C.rSc.space[4]})]}):(0,o.jsx)(C.y02.Group,{onChange:e=>K(e.target.value),value:L,className:"flex flex-col gap-2",children:null==S?void 0:S.map(e=>(0,o.jsxs)(C.jqI,{className:u?"justify-between":"justify-start",children:[(0,o.jsx)(C.y02,{value:e.id,name:"custom-report-id","data-testid":"custom-report-item",children:(0,o.jsx)(C.xvT,{fontSize:"sm",children:e.name})}),u&&(0,o.jsx)(C.wpx,{type:"text",size:"small",icon:(0,o.jsx)(z.q,{fontSize:16}),onClick:()=>k(e),"data-testid":"delete-report-button"})]},e.id))}))]}),(0,o.jsx)(C.DT9,{border:"none",px:6,pb:4,pt:4,children:(0,o.jsxs)(C.Ugi,{children:[d&&r&&(0,o.jsxs)(C.wpx,{size:"small",onClick:j,className:"w-full","data-testid":"create-report-button",htmlType:"button",children:["+ Create ",et.toLowerCase()]}),(0,o.jsx)(C.wpx,{size:"small",type:"primary",loading:G,disabled:er,className:"w-full","data-testid":"apply-report-button",htmlType:"submit",children:"Apply"})]})})]})})]})})]}),(0,o.jsx)(ee,{isOpen:O,handleClose:()=>{b(),setTimeout(()=>{v()},100)},tableStateToSave:r,columnMapToSave:i,unavailableNames:null==m?void 0:m.items.map(e=>e.name),onCreateCustomReport:e=>n(e,Y)}),(0,o.jsx)(C.cVQ,{isOpen:D,onClose:()=>{k(void 0),N()},onConfirm:()=>{U&&ea(U.id),N()},title:"Delete ".concat(et),message:(0,o.jsxs)(C.xvT,{children:["You are about to permanently delete the"," ",et.toLowerCase()," named"," ",(0,o.jsx)("strong",{children:null==U?void 0:U.name}),". Are you sure you would like to continue?"]})})]})};var er=s(19785),ei=s.n(er),en=s(55807),eo=s.n(en),el=s(32526),ec=s.n(el),ed=s(72625),eu=s(43862);let e_=(0,A.Cl)(),ep=(e,t)=>({cell:e=>(0,o.jsx)(x.G3,{value:e.getValue()}),header:s=>{let a={};return Object.keys(e).forEach(t=>{"string"==typeof e[t]?a[t]=e[t]:e[t].label&&(a[t]=e[t].label||"")}),(0,o.jsx)(ed.Hm,{value:(0,eu.AH)({columnId:s.column.id,columnNameMap:a}),defaultValue:p[s.column.id]||(0,eu.AH)({columnId:s.column.id}),isEditing:t,...s})}}),em=(e,t)=>{var s;let a=(null==e?void 0:null===(s=e.items)||void 0===s?void 0:s.length)?Object.keys(e.items[0]):[],r=Object.values(n);return a.filter(e=>!r.includes(e)).filter(e=>e.startsWith("privacy_declaration_")||e.startsWith("system_")).map(e=>{let s=t.find(t=>e.includes(ec()(t.name)));return e_.accessor(t=>t[e],{id:e,cell:e=>Array.isArray(e.getValue())?(0,o.jsx)(x.WP,{value:e.getValue(),ignoreZero:!0,...e}):(0,o.jsx)(x.G3,{value:e.getValue()}),meta:{showHeaderMenu:(null==s?void 0:s.field_type)==="string[]"}})})},eE=e=>{let{onSelectRow:t,getDataUseDisplayName:s,getDataCategoryDisplayName:a,getDataSubjectDisplayName:r,datamapReport:i,customFields:l,isRenaming:c=!1}=e,d=em(i,l);return[e_.accessor(e=>e.system_name,{enableGrouping:!0,id:n.SYSTEM_NAME,meta:{onCellClick:t}}),e_.accessor(e=>e.data_uses,{id:n.DATA_USE,cell:e=>{let t=e.getValue();return(0,o.jsx)(x.WP,{suffix:"data uses",ignoreZero:!0,value:ei()(t)?eo()(t,s):s(t||""),tagProps:{color:"white"},...e})},meta:{width:"auto"}}),e_.accessor(e=>e.data_categories,{id:n.DATA_CATEGORY,cell:e=>{let t=e.getValue();if(!t||0===t.length)return null;let s=ei()(t)?t.map(e=>({label:a(e),key:e})):[{label:a(t),key:t}];return(0,o.jsx)(ed.mb,{values:s,cellProps:e})},meta:{showHeaderMenu:!c,showHeaderMenuWrapOption:!0,width:"auto",overflow:"hidden"}}),e_.accessor(e=>e.data_subjects,{id:n.DATA_SUBJECT,cell:e=>{let t=e.getValue();return(0,o.jsx)(x.WP,{suffix:"data subjects",ignoreZero:!0,value:ei()(t)?eo()(t,r):r(t||""),tagProps:{color:"white"},...e})},meta:{showHeaderMenu:!c}}),e_.accessor(e=>e.legal_name,{id:n.LEGAL_NAME}),e_.accessor(e=>e.dpo,{id:n.DPO}),e_.accessor(e=>e.legal_basis_for_processing,{id:n.LEGAL_BASIS_FOR_PROCESSING}),e_.accessor(e=>e.administrating_department,{id:n.ADMINISTRATING_DEPARTMENT}),e_.accessor(e=>e.cookie_max_age_seconds,{id:n.COOKIE_MAX_AGE_SECONDS}),e_.accessor(e=>e.privacy_policy,{id:n.PRIVACY_POLICY}),e_.accessor(e=>e.legal_address,{id:n.LEGAL_ADDRESS}),e_.accessor(e=>e.cookie_refresh,{id:n.COOKIE_REFRESH}),e_.accessor(e=>e.data_security_practices,{id:n.DATA_SECURITY_PRACTICES}),e_.accessor(e=>e.data_shared_with_third_parties,{id:n.DATA_SHARED_WITH_THIRD_PARTIES}),e_.accessor(e=>e.processes_special_category_data,{id:n.PROCESSES_SPECIAL_CATEGORY_DATA}),e_.accessor(e=>e.data_stewards,{id:n.DATA_STEWARDS,cell:e=>(0,o.jsx)(x.WP,{suffix:"data stewards",ignoreZero:!0,value:e.getValue(),...e}),meta:{showHeaderMenu:!c,width:"auto"}}),e_.accessor(e=>e.declaration_name,{id:n.DECLARATION_NAME}),e_.accessor(e=>e.does_international_transfers,{id:n.DOES_INTERNATIONAL_TRANSFERS}),e_.accessor(e=>e.dpa_location,{id:n.DPA_LOCATION}),e_.accessor(e=>e.egress,{id:n.DESTINATIONS,cell:e=>(0,o.jsx)(x.WP,{suffix:"destinations",ignoreZero:!0,value:e.getValue(),...e}),meta:{showHeaderMenu:!c,width:"auto"}}),e_.accessor(e=>e.exempt_from_privacy_regulations,{id:n.EXEMPT_FROM_PRIVACY_REGULATIONS}),e_.accessor(e=>e.features,{id:n.FEATURES,cell:e=>(0,o.jsx)(x.WP,{suffix:"features",ignoreZero:!0,value:e.getValue(),...e}),meta:{showHeaderMenu:!c,width:"auto"}}),e_.accessor(e=>e.fides_key,{id:n.FIDES_KEY}),e_.accessor(e=>e.flexible_legal_basis_for_processing,{id:n.FLEXIBLE_LEGAL_BASIS_FOR_PROCESSING}),e_.accessor(e=>e.impact_assessment_location,{id:n.IMPACT_ASSESSMENT_LOCATION}),e_.accessor(e=>e.ingress,{id:n.SOURCES,cell:e=>(0,o.jsx)(x.WP,{suffix:"sources",ignoreZero:!0,value:e.getValue(),...e}),meta:{showHeaderMenu:!c,width:"auto"}}),e_.accessor(e=>e.joint_controller_info,{id:n.JOINT_CONTROLLER_INFO}),e_.accessor(e=>e.legal_basis_for_profiling,{id:n.LEGAL_BASIS_FOR_PROFILING,cell:e=>(0,o.jsx)(x.WP,{suffix:"profiles",ignoreZero:!0,value:e.getValue(),...e}),meta:{showHeaderMenu:!c,width:"auto"}}),e_.accessor(e=>e.legal_basis_for_transfers,{id:n.LEGAL_BASIS_FOR_TRANSFERS,cell:e=>(0,o.jsx)(x.WP,{suffix:"transfers",ignoreZero:!0,value:e.getValue(),...e}),meta:{showHeaderMenu:!c,width:"auto"}}),e_.accessor(e=>e.legitimate_interest_disclosure_url,{id:n.LEGITIMATE_INTEREST_DISCLOSURE_URL}),e_.accessor(e=>e.processes_personal_data,{id:n.PROCESSES_PERSONAL_DATA}),e_.accessor(e=>e.reason_for_exemption,{id:n.REASON_FOR_EXEMPTION}),e_.accessor(e=>e.requires_data_protection_assessments,{id:n.REQUIRES_DATA_PROTECTION_ASSESSMENTS}),e_.accessor(e=>e.responsibility,{id:n.RESPONSIBILITY,cell:e=>(0,o.jsx)(x.WP,{suffix:"responsibilities",ignoreZero:!0,value:e.getValue(),...e}),meta:{showHeaderMenu:!c,width:"auto"}}),e_.accessor(e=>e.retention_period,{id:n.RETENTION_PERIOD}),e_.accessor(e=>e.shared_categories,{id:n.SHARED_CATEGORIES,cell:e=>(0,o.jsx)(x.WP,{suffix:"shared categories",ignoreZero:!0,value:e.getValue(),tagProps:{color:"white"},...e}),meta:{showHeaderMenu:!c,width:"auto"}}),e_.accessor(e=>e.special_category_legal_basis,{id:n.SPECIAL_CATEGORY_LEGAL_BASIS}),e_.accessor(e=>e.third_parties,{id:n.THIRD_PARTIES}),e_.accessor(e=>e.system_undeclared_data_categories,{id:n.SYSTEM_UNDECLARED_DATA_CATEGORIES,cell:e=>{let t=e.getValue();if(!t||0===t.length)return null;let s=ei()(t)?t.map(e=>({label:a(e),key:e})):[{label:a(t),key:t}];return(0,o.jsx)(ed.mb,{values:s,cellProps:e})},meta:{showHeaderMenu:!c,showHeaderMenuWrapOption:!0,width:"auto",overflow:"hidden"}}),e_.accessor(e=>e.data_use_undeclared_data_categories,{id:n.DATA_USE_UNDECLARED_DATA_CATEGORIES,cell:e=>{let t=e.getValue();if(!t||0===t.length)return null;let s=ei()(t)?t.map(e=>({label:a(e),key:e})):[{label:a(t),key:t}];return(0,o.jsx)(ed.mb,{values:s,cellProps:e})},meta:{showHeaderMenu:!c,showHeaderMenuWrapOption:!0,width:"auto",overflow:"hidden"}}),e_.accessor(e=>e.cookies,{id:n.COOKIES,cell:e=>(0,o.jsx)(x.WP,{ignoreZero:!0,suffix:"cookies",value:e.getValue(),...e}),meta:{showHeaderMenu:!c,width:"auto"}}),e_.accessor(e=>e.uses_cookies,{id:n.USES_COOKIES}),e_.accessor(e=>e.uses_non_cookie_access,{id:n.USES_NON_COOKIE_ACCESS}),e_.accessor(e=>e.uses_profiling,{id:n.USES_PROFILING}),...d]},eS=e=>{let{columnNameMapOverrides:t,setColumnNameMapOverrides:s,setSavedCustomReportId:a,setIsRenamingColumns:r}=e,{submitForm:i,resetForm:n}=(0,T.u6)();return(0,o.jsxs)("div",{className:"flex gap-2",children:[(0,o.jsx)(C.wpx,{size:"small","data-testid":"rename-columns-reset-btn",onClick:()=>{s({}),a(""),n({values:{}}),r(!1)},children:"Reset all"}),(0,o.jsx)(C.wpx,{size:"small","data-testid":"rename-columns-cancel-btn",onClick:()=>{n({values:t}),r(!1)},children:"Cancel"}),(0,o.jsx)(C.wpx,{size:"small",type:"primary",htmlType:"submit","data-testid":"rename-columns-apply-btn",onClick:i,children:"Apply"})]})},eh=e=>e===_.fI.DATA_USE_SYSTEM?[n.DATA_USE]:[n.SYSTEM_NAME],ef=e=>{let t=[];return _.fI.SYSTEM_DATA_USE===e&&(t=[n.SYSTEM_NAME,n.DATA_USE]),_.fI.DATA_USE_SYSTEM===e&&(t=[n.DATA_USE,n.SYSTEM_NAME]),t},eg=(e,t)=>ef(e).concat(t.filter(e=>e!==n.SYSTEM_NAME&&e!==n.DATA_USE)),eA={items:[],total:0,page:1,size:25,pages:1},ex=()=>{let e=(0,y.Tg)([_.Sh.CUSTOM_REPORT_READ]),{isLoading:t}=(0,V.x8)(),{PAGE_SIZES:s,pageSize:a,setPageSize:r,onPreviousPageClick:n,isPreviousPageDisabled:c,onNextPageClick:d,isNextPageDisabled:u,startRange:S,endRange:h,pageIndex:v,setTotalPages:L,resetPageIndexToDefault:w}=(0,x.oi)(),P=(0,C.pmc)({id:"datamap-report-toast"}),{isOpen:U,onClose:k,onOpen:G}=(0,C.qY0)(),{getDataUseDisplayName:H,getDataCategoryDisplayName:Y,getDataSubjectDisplayName:Z,isLoading:B}=(0,j.Z)(),[z,W]=(0,l.useState)(),{savedCustomReportId:q,setSavedCustomReportId:X,groupBy:J,setGroupBy:K,selectedFilters:Q,setSelectedFilters:$,columnOrder:ee,setColumnOrder:et,columnVisibility:es,setColumnVisibility:er,columnSizing:ei,setColumnSizing:en,columnNameMapOverrides:eo,setColumnNameMapOverrides:el}=f(),[ec,ed]=(0,l.useState)(!1),eu=e=>{X(""),K(e),ed(!0),w()},[e_,em]=(0,l.useState)(""),ex=(0,l.useCallback)(e=>{w(),em(e)},[w,em]),eC={pageIndex:v,pageSize:a,groupBy:J,search:e_,dataUses:(0,D.du)(Q.dataUses,"data_uses"),dataSubjects:(0,D.du)(Q.dataSubjects,"data_subjects"),dataCategories:(0,D.du)(Q.dataCategories,"data_categories")},{data:eT,isLoading:ev,isFetching:eR}=(0,I.tH)(eC),[eO,{isLoading:ej,isError:eb}]=(0,I.Eo)(),{data:ey,totalRows:eD}=(0,l.useMemo)(()=>{let e=eT||eA,t=e.items;return ec&&ed(!1),L(e.pages),{totalRows:e.total,data:t}},[eT]);(0,V.GH)();let eI=(0,O.C)(V.fN),[eN,eL]=(0,l.useState)(!1),ew=(0,l.useMemo)(()=>eT?eE({onSelectRow:e=>W(e.fides_key),getDataUseDisplayName:H,getDataCategoryDisplayName:Y,getDataSubjectDisplayName:Z,datamapReport:eT,customFields:eI,isRenaming:eN}):[],[H,Z,Y,eT,eI,eN]),{isOpen:eM,onOpen:eP,onClose:eU}=(0,C.qY0)(),{isOpen:ek,onOpen:eG,onClose:eH}=(0,C.qY0)(),eY=(0,g.b7)({getCoreRowModel:(0,A.sC)(),getGroupedRowModel:(0,A.qe)(),getExpandedRowModel:(0,A.rV)(),manualPagination:!0,enableColumnResizing:!0,columnResizeMode:"onChange",columns:ew,defaultColumn:ep({...p,...eo},eN),data:ey,initialState:{expanded:!0,columnSizing:ei,columnOrder:ee,columnVisibility:es,grouping:eh(J)}});(0,l.useEffect)(()=>{J&&eY&&eT&&(0===eY.getState().columnOrder.length?et(eg(J,eY.getAllColumns().map(e=>e.id))):et(eg(J,eY.getState().columnOrder)))},[J,eY,eT]),(0,l.useEffect)(()=>{let e=eh(J);eT&&eY.setGrouping(e)},[eT]);let eF=(0,l.useMemo)(()=>R()(en,300),[en]);(0,l.useEffect)(()=>{let e=eY.getState().columnSizing;e&&eF(e)},[eY.getState().columnSizing]);let eV=(e,t)=>{if(e||q){if(!e){try{X(""),er(m),eY.toggleAllColumnsVisible(!0),eY.setColumnVisibility(m),et([]),eY.setColumnOrder([]),K(_.fI.SYSTEM_DATA_USE),$(E),el({}),t({values:{}})}catch(e){P({status:"error",description:"There was a problem resetting the report."})}return}try{var s,a,r,i;if(null===(s=e.config)||void 0===s?void 0:s.table_state){let{groupBy:t,filters:s,columnOrder:a}=e.config.table_state,i={};Object.entries(null!==(r=e.config.column_map)&&void 0!==r?r:{}).forEach(e=>{let[t,s]=e;i[t]=s.enabled||!1}),t&&K(t),s&&$(s),a&&(et(a),eY.setColumnOrder(a)),i&&(er(i),eY.setColumnVisibility(i))}if(null===(a=e.config)||void 0===a?void 0:a.column_map){let s={};Object.entries(null!==(i=e.config.column_map)&&void 0!==i?i:{}).forEach(e=>{let[t,a]=e;a.label&&(s[t]=a.label)}),el(s),t({values:s})}X(e.id),P({status:"success",description:"Report applied successfully."})}catch(e){P({status:"error",description:"There was a problem applying report."})}}};return ev||t||B?(0,o.jsx)(x.I4,{rowHeight:36,numRows:15}):(0,o.jsxs)(C.kCb,{flex:1,direction:"column",overflow:"auto",children:[(0,o.jsx)(F,{columnNameMap:{...p,...eo},selectedFilters:Q,isOpen:U,onClose:k,onFilterChange:e=>{X(""),$(e)}}),(0,o.jsx)(x.F1,{isOpen:eM,onClose:eU,headerText:"Columns",columnNameMap:{...p,...eo},prefixColumns:ef(J),tableInstance:eY,savedCustomReportId:q,onColumnOrderChange:e=>{X(""),eY.setColumnOrder(e),et(e)},onColumnVisibilityChange:e=>{X(""),eY.setColumnVisibility(e),er(e)}}),(0,o.jsx)(M,{isOpen:ek,onClose:eH,onConfirm:e=>{let t={};Object.entries(es).forEach(e=>{let[s,a]=e;t[s]={enabled:a}}),Object.entries(eo).forEach(e=>{let[s,a]=e;if(t[s])t[s].label=a;else{var r;t[s]={label:a,enabled:null===(r=es[s])||void 0===r||r}}}),eO({...eC,format:e,report_id:q,report:{name:"",type:"datamap",config:{column_map:t,table_state:{groupBy:J,filters:Q,columnOrder:ee}}}}).then(()=>{eb||eH()})},isLoading:ej}),(0,o.jsx)(T.J9,{initialValues:eo,onSubmit:e=>{X(""),el(e),eL(!1)},children:(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(x.Q$,{children:[(0,o.jsx)(x.HO,{globalFilter:e_,setGlobalFilter:ex,placeholder:"System name, Fides key, or ID"}),(0,o.jsxs)(C.kCb,{alignItems:"center",gap:2,children:[e&&(0,o.jsx)(ea,{reportType:_.C2.DATAMAP,savedReportId:q,tableStateToSave:{groupBy:J,filters:Q,columnOrder:ee,columnVisibility:es},currentColumnMap:eo,onCustomReportSaved:(e,t)=>eV(e,t),onSavedReportDeleted:()=>{X("")}}),(0,o.jsxs)(C.v2r,{children:[(0,o.jsxs)(C.j2t,{as:C.wpx,icon:(0,o.jsx)(C.v4q,{}),iconPosition:"end",loading:ec,"data-testid":"group-by-menu",children:["Group by ",(()=>{switch(J){case _.fI.SYSTEM_DATA_USE:return"system";case _.fI.DATA_USE_SYSTEM:return"data use";default:return"system"}})()]}),(0,o.jsxs)(C.qyq,{zIndex:11,"data-testid":"group-by-menu-list",children:[(0,o.jsx)(C.iiZ,{onClick:()=>{eu(_.fI.SYSTEM_DATA_USE)},isChecked:_.fI.SYSTEM_DATA_USE===J,value:_.fI.SYSTEM_DATA_USE,"data-testid":"group-by-system-data-use",children:"System"}),(0,o.jsx)(C.iiZ,{onClick:()=>{eu(_.fI.DATA_USE_SYSTEM)},isChecked:_.fI.DATA_USE_SYSTEM===J,value:_.fI.DATA_USE_SYSTEM,"data-testid":"group-by-data-use-system",children:"Data use"})]})]}),(0,o.jsx)(C.wpx,{"data-testid":"filter-multiple-systems-btn",onClick:G,children:"Filter"}),(0,o.jsx)(C.wpx,{"aria-label":"Export report","data-testid":"export-btn",onClick:eG,icon:(0,o.jsx)(b.nM,{ml:"1.5px"})}),(0,o.jsxs)(C.v2r,{placement:"bottom-end",children:[(0,o.jsx)(C.j2t,{as:C.wpx,icon:(0,o.jsx)(C.nXP,{className:"rotate-90"}),"data-testid":"more-menu","aria-label":"More options",className:"w-6 gap-0"}),(0,o.jsxs)(C.qyq,{"data-testid":"more-menu-list",children:[(0,o.jsx)(C.sNh,{onClick:eP,"data-testid":"edit-columns-btn",children:"Edit columns"}),(0,o.jsx)(C.sNh,{onClick:()=>eL(!0),"data-testid":"rename-columns-btn",children:"Rename columns"})]})]}),eN&&(0,o.jsx)(eS,{columnNameMapOverrides:eo,setColumnNameMapOverrides:el,setSavedCustomReportId:X,setIsRenamingColumns:eL})]})]}),(0,o.jsx)(T.l0,{children:(0,o.jsx)(x.ZK,{tableInstance:eY,columnExpandStorageKey:i.COLUMN_EXPANSION_STATE,columnWrapStorageKey:i.WRAPPING_COLUMNS})})]})}),(0,o.jsx)(x.s8,{totalRows:eD||0,pageSizes:s,setPageSize:r,onPreviousPageClick:n,isPreviousPageDisabled:c||eR,onNextPageClick:d,isNextPageDisabled:u||eR,startRange:S,endRange:h}),(0,o.jsx)(N.Z,{selectedSystemId:z,resetSelectedSystemId:()=>W(void 0)})]})};var eC=()=>(0,o.jsxs)(c.Z,{title:"Datamap Report",children:[(0,o.jsx)(d.Z,{"data-testid":"datamap-report-heading",heading:"Data map report"}),(0,o.jsx)(h,{children:(0,o.jsx)(ex,{})})]})}},function(e){e.O(0,[8765,9278,5163,9187,9951,4230,2888,9774,179],function(){return e(e.s=86548)}),_N_E=e.O()}]);
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5135],{77713:function(e,t,i){(window.__NEXT_P=window.__NEXT_P||[]).push(["/settings/consent/[configuration_id]/[purpose_id]",function(){return i(80758)}])},59301:function(e,t,i){"use strict";var r=i(24246);let{Link:n}=i(13577).AntTypography;t.Z=e=>(0,r.jsx)(n,{target:"_blank",rel:"noopener noreferrer",...e})},35287:function(e,t,i){"use strict";var r=i(24246),n=i(13577),s=i(88038),o=i.n(s);i(27378),t.Z=e=>{let{children:t,title:i,mainProps:s}=e;return(0,r.jsxs)(n.kCb,{"data-testid":i,direction:"column",height:"calc(100vh - 48px)",width:"calc(100vw - 240px)",children:[(0,r.jsxs)(o(),{children:[(0,r.jsxs)("title",{children:["Fides Admin UI - ",i]}),(0,r.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,r.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,r.jsx)(n.kCb,{px:10,py:6,as:"main",overflow:"auto",direction:"column",flex:1,minWidth:0,...s,children:t})]})}},58754:function(e,t,i){"use strict";var r=i(24246),n=i(13577),s=i(70788);t.Z=e=>{let{heading:t,breadcrumbItems:i,isSticky:o=!0,children:d,rightContent:l,style:a,...c}=e;return(0,r.jsxs)("div",{...c,style:o?{position:"sticky",top:"-24px",paddingTop:"24px",paddingBottom:"24px",paddingLeft:"40px",marginLeft:"-40px",paddingRight:"40px",marginRight:"-40px",marginTop:"-24px",left:0,zIndex:20,backgroundColor:"white",...a}:{paddingBottom:"24px",...a},children:[(0,r.jsxs)(n.jqI,{justify:"space-between",children:["string"==typeof t?(0,r.jsx)(n.lQT,{className:i||d?"pb-4":void 0,level:1,"data-testid":"page-heading",children:t}):t,l&&(0,r.jsx)("div",{"data-testid":"page-header-right-content",children:l})]}),!!i&&(0,r.jsx)(s.m,{className:d?"pb-4":void 0,items:i,"data-testid":"page-breadcrumb"}),d]})}},97181:function(e,t,i){"use strict";i.d(t,{d:function(){return a}});var r=i(24246),n=i(13577),s=i(34090),o=i(27378),d=i(46238),l=i(40324);let a=e=>{let{name:t,label:i,labelProps:a,tooltip:c,isRequired:u,layout:p="inline",helperText:h,...v}=e,[_,m,{setValue:x}]=(0,s.U$)(t),f=!!(m.touched&&m.error),[g,R]=(0,o.useState)("");_.value||"tags"!==v.mode&&"multiple"!==v.mode||(_.value=[]),"tags"===v.mode&&"string"==typeof _.value&&(_.value=[_.value]);let j="tags"===v.mode?(e,t)=>e?e.value!==g||_.value.includes(g)?v.optionRender?v.optionRender(e,t):e.label:'Create "'.concat(g,'"'):void 0:v.optionRender||void 0,I=e=>{R(e),v.onSearch&&v.onSearch(e)},E=(e,t)=>{x(e),v.onChange&&v.onChange(e,t)};return"inline"===p?(0,r.jsx)(n.NIc,{isInvalid:f,isRequired:u,children:(0,r.jsxs)(n.rjZ,{templateColumns:i?"1fr 3fr":"1fr",children:[i?(0,r.jsx)(l.__,{htmlFor:v.id||t,...a,children:i}):null,(0,r.jsxs)(n.jqI,{align:"center",children:[(0,r.jsxs)(n.jqI,{vertical:!0,flex:1,className:"mr-2",children:[(0,r.jsx)(n.WPr,{..._,id:v.id||t,"data-testid":"controlled-select-".concat(_.name),...v,optionRender:j,onSearch:"tags"===v.mode?I:void 0,onChange:E,value:_.value||void 0,status:f?"error":void 0}),h&&(0,r.jsx)(n.Q6r,{children:h}),(0,r.jsx)(l.Bc,{isInvalid:f,message:m.error,fieldName:_.name})]}),(0,r.jsx)(d.b,{label:c,className:f?"mt-2 self-start":void 0})]})]})}):(0,r.jsx)(n.NIc,{isInvalid:f,isRequired:u,children:(0,r.jsxs)(n.gCW,{alignItems:"start",children:[(0,r.jsxs)(n.jqI,{align:"center",children:[i?(0,r.jsx)(l.__,{htmlFor:v.id||t,fontSize:"xs",my:0,mr:1,...a,children:i}):null,(0,r.jsx)(d.b,{label:c})]}),(0,r.jsx)(n.WPr,{..._,id:v.id||t,"data-testid":"controlled-select-".concat(_.name),...v,optionRender:j,onSearch:"tags"===v.mode?I:void 0,onChange:E,value:_.value||void 0,status:f?"error":void 0}),h&&(0,r.jsx)(n.Q6r,{style:{marginTop:0},children:h}),(0,r.jsx)(l.Bc,{isInvalid:f,message:m.error,fieldName:_.name})]})})}},8133:function(e,t,i){"use strict";var r=i(24246),n=i(13577);t.Z=e=>{let{title:t,children:i,isOpen:s,onClose:o,modalContentProps:d,showCloseButton:l=!1,footer:a,...c}=e;return(0,r.jsxs)(n.u_l,{isOpen:s,onClose:o,isCentered:!0,scrollBehavior:"inside",size:"xl",id:"add-modal",...c,children:[(0,r.jsx)(n.ZAr,{}),(0,r.jsxs)(n.hzk,{textAlign:"left",p:0,"data-testid":"add-modal-content",...d,children:[l&&(0,r.jsx)(n.olH,{}),(0,r.jsx)(n.xBx,{p:0,children:(0,r.jsx)(n.xuv,{backgroundColor:"gray.50",px:6,py:4,border:"1px",borderColor:"gray.200",borderTopRadius:6,display:"flex",justifyContent:"space-between",alignItems:"center",children:(0,r.jsx)(n.X6q,{as:"h3",size:"sm",children:t})})}),(0,r.jsx)(n.fef,{pb:4,overflow:"auto",children:i}),a&&(0,r.jsx)(n.mzw,{children:a})]})]})}},70788:function(e,t,i){"use strict";i.d(t,{m:function(){return a}});var r=i(24246),n=i(13577),s=i(79894),o=i.n(s),d=i(27378);let{Text:l}=n.AntTypography,a=e=>{let{items:t,...i}=e,s=(0,d.useMemo)(()=>null==t?void 0:t.map((e,i)=>{let s=i===t.length-1,d={...e},a=d.onClick&&!d.href;return("string"==typeof d.title&&(d.title=(0,r.jsx)(l,{style:{color:"inherit",maxWidth:s?void 0:400},ellipsis:!s,children:d.title})),a)?d.title=(0,r.jsx)(n.wpx,{type:"text",size:"small",icon:d.icon,onClick:d.onClick,className:"ant-breadcrumb-link -mt-px px-1 text-inherit",children:d.title}):(d.icon&&(d.title=(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("span",{className:"anticon align-text-bottom",children:d.icon}),d.title]})),d.href&&d.title&&(d.title=(0,r.jsx)(o(),{href:d.href,className:"ant-breadcrumb-link",children:d.title}),delete d.href)),d}),[t]);return(0,r.jsx)(n.zrq,{items:s,...i})}},6675:function(e,t,i){"use strict";i.d(t,{ZS:function(){return d},a4:function(){return s}});var r=i(3228);let n=i(78780).u.injectEndpoints({endpoints:e=>({getPurposes:e.query({query:()=>"purposes"})})}),{useGetPurposesQuery:s}=n,o={purposes:{},special_purposes:{}},d=(0,r.P1)(n.endpoints.getPurposes.select(),e=>{let{data:t}=e;return t||o})},51263:function(e,t,i){"use strict";var r=i(24246),n=i(13577);t.Z=e=>{let{title:t,children:i,...s}=e;return(0,r.jsxs)(n.xuv,{backgroundColor:"var(--fidesui-bg-corinth)",borderRadius:"4px",padding:"3","data-testid":"setting-".concat(t),...s,children:[(0,r.jsx)(n.xvT,{as:"h3",fontSize:"md",fontWeight:"bold",lineHeight:5,color:"gray.700",mb:3,children:t}),i]})}},59512:function(e,t,i){"use strict";i.d(t,{Cu:function(){return d},Py:function(){return n},fj:function(){return o},uh:function(){return s}});var r=i(73825);let n=[1,3,4,5,6],s="https://ethyca.com/docs/tutorials/consent-management/consent-management-configuration/configure-tcf#vendor-overrides",o={[r.FF.PURPOSE_RESTRICTION]:"Purpose restriction",[r.FF.REQUIRE_CONSENT]:"Require consent",[r.FF.REQUIRE_LEGITIMATE_INTEREST]:"Require legitimate interest"},d={[r.PY.RESTRICT_ALL_VENDORS]:"Restrict all vendors",[r.PY.RESTRICT_SPECIFIC_VENDORS]:"Restrict specific vendors",[r.PY.ALLOW_SPECIFIC_VENDORS]:"Allow specific vendors"}},80758:function(e,t,i){"use strict";i.r(t),i.d(t,{default:function(){return Z}});var r=i(24246),n=i(13577),s=i(86677),o=i(27378),d=i(59301),l=i(35287),a=i(58754),c=i(6675),u=i(51263),p=i(59512),h=i(59003),v=i(92222),_=i(47935),m=i(73825),x=i(34090),f=i(55484),g=i(97181),R=i(812),j=i(8133),I=i(46628),E=i(52955);let y=e=>{if(/^\d+$/.test(e))return!0;let t=e.match(/^(\d+)-(\d+)$/);return!!t&&parseInt(t[1],10)<parseInt(t[2],10)},C=e=>{if(/^\d+$/.test(e)){let t=parseInt(e,10);return{start:t,end:t}}let t=e.match(/^(\d+)-(\d+)$/);return t?{start:parseInt(t[1],10),end:parseInt(t[2],10)}:null},T=(e,t)=>e.end===e.start?e.start>=t.start&&(null===t.end||e.start<=t.end):t.end===t.start?t.start>=e.start&&(null===e.end||t.start<=e.end):null===e.end&&null!==t.end?e.start<=t.end:null===t.end&&null!==e.end?t.start<=e.end:null===e.end&&null===t.end||e.start<=t.end&&e.end>=t.start||t.start<=e.end&&t.end>=e.start,b=(e,t)=>e.end===e.start?e.start>=t.start&&(null===t.end||e.start<=t.end):null===t.end?e.start>=t.start:null!==e.end&&e.start>=t.start&&e.end<=t.end,S=(e,t,i,r)=>{var n;let s=t.filter(e=>e.purpose_id===i&&e.id!==r);if(!(null===(n=e.vendor_ids)||void 0===n?void 0:n.length))return!1;let o=e.vendor_ids.map(C).filter(e=>null!==e);return 0!==o.length&&s.some(t=>{let i=e.vendor_restriction===m.PY.RESTRICT_SPECIFIC_VENDORS&&t.vendor_restriction===m.PY.ALLOW_SPECIFIC_VENDORS||e.vendor_restriction===m.PY.ALLOW_SPECIFIC_VENDORS&&t.vendor_restriction===m.PY.RESTRICT_SPECIFIC_VENDORS,r=t.vendor_ids.map(C).filter(e=>null!==e);return i?e.vendor_restriction===m.PY.ALLOW_SPECIFIC_VENDORS?r.some(e=>o.some(t=>!b(e,t))):o.some(e=>r.some(t=>!b(e,t))):t.vendor_restriction===e.vendor_restriction&&o.some(e=>r.some(t=>T(e,t)))})},N=e=>{if(/^\d+$/.test(e))return{start_vendor_id:parseInt(e,10),end_vendor_id:null};let t=e.match(/^(\d+)-(\d+)$/);if(t){let e=parseInt(t[1],10),i=parseInt(t[2],10);if(e<i)return{start_vendor_id:e,end_vendor_id:i}}return null},F=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return e.map(N).filter(e=>null!==e)},w="This restriction type is already in use for this purpose",P={restriction_type:"",vendor_restriction:"",vendor_ids:[]},O=e=>{let{isOpen:t,onClose:i,initialValues:s=P,existingRestrictions:o=[],purposeId:d,restrictionId:l,configurationId:a}=e,c=(0,n.pmc)(),[u]=(0,E.a_)(),[h]=(0,E.h3)(),v=!(d&&p.Py.includes(+d)),_=o.filter(e=>e.id!==l).map(e=>e.restriction_type),C=[{value:m.FF.PURPOSE_RESTRICTION,label:p.fj[m.FF.PURPOSE_RESTRICTION],disabled:_.includes(m.FF.PURPOSE_RESTRICTION),title:_.includes(m.FF.PURPOSE_RESTRICTION)?w:void 0},{value:m.FF.REQUIRE_CONSENT,label:p.fj[m.FF.REQUIRE_CONSENT],disabled:_.includes(m.FF.REQUIRE_CONSENT),title:_.includes(m.FF.REQUIRE_CONSENT)?w:void 0},{value:m.FF.REQUIRE_LEGITIMATE_INTEREST,label:p.fj[m.FF.REQUIRE_LEGITIMATE_INTEREST],disabled:_.includes(m.FF.REQUIRE_LEGITIMATE_INTEREST),title:_.includes(m.FF.REQUIRE_LEGITIMATE_INTEREST)?w:void 0}],T=[{value:m.PY.RESTRICT_ALL_VENDORS,label:p.Cu[m.PY.RESTRICT_ALL_VENDORS],disabled:_.length>0,title:_.length>0?"Cannot restrict all vendors when other restrictions exist":void 0},{value:m.PY.RESTRICT_SPECIFIC_VENDORS,label:p.Cu[m.PY.RESTRICT_SPECIFIC_VENDORS]},{value:m.PY.ALLOW_SPECIFIC_VENDORS,label:p.Cu[m.PY.ALLOW_SPECIFIC_VENDORS]}],b=f.Ry().shape({restriction_type:f.Z_().required("Restriction type is required"),vendor_restriction:f.Z_().required("Vendor restriction is required"),vendor_ids:f.IX().when("vendor_restriction",{is:e=>e!==m.PY.RESTRICT_ALL_VENDORS,then:e=>e.required("At least one vendor ID is required").min(1,"At least one vendor ID is required").test("valid-format","Vendor IDs must be numbers or ranges (e.g., 10 or 15-300)",e=>{var t;return null===(t=null==e?void 0:e.every(e=>y(e)))||void 0===t||t}).test("no-conflicts","One or more of these vendors already have a restriction for this purpose. Please update the existing restriction or remove duplicates.",(e,t)=>!S({...t.parent,vendor_ids:e},o,d,l))})}),N=async e=>{try{let t={restriction_type:e.restriction_type,vendor_restriction:e.vendor_restriction,range_entries:e.vendor_restriction!==m.PY.RESTRICT_ALL_VENDORS?F(e.vendor_ids):[]},r={...t,purpose_id:null!=d?d:0};if(l){let e=await h({configuration_id:a,restriction_id:l,restriction:t});if((0,R.D4)(e)){c((0,I.Vo)("Failed to update restriction"));return}c((0,I.t5)("Restriction updated successfully"))}else{let e=await u({configuration_id:a,restriction:r});if((0,R.D4)(e)){c((0,I.Vo)("Failed to create restriction"));return}c((0,I.t5)("Restriction created successfully"))}i()}catch(e){c((0,I.Vo)("Failed to save restriction"))}};return(0,r.jsx)(j.Z,{isOpen:t,onClose:i,title:"Edit restriction",children:(0,r.jsx)(x.J9,{initialValues:{...s,restriction_type:v?s.restriction_type:m.FF.PURPOSE_RESTRICTION},onSubmit:N,validationSchema:b,children:e=>{let{values:t,validateField:s,setTouched:o}=e;return(0,r.jsx)(x.l0,{children:(0,r.jsxs)(n.jqI,{vertical:!0,className:"gap-6",children:[(0,r.jsx)(n.xvT,{className:"text-sm",children:"Define how specific vendors are restricted from processing data for this purpose. Select a restriction type, set whether the listed vendors are restricted or allowed, and specify which vendor IDs the restriction applies to."}),(0,r.jsx)(n.esZ,{title:v?void 0:"Non-flexible purposes only support Purpose restrictions and cannot be restricted by consent or legitimate interest settings.",children:(0,r.jsx)(g.d,{name:"restriction_type",label:"Restriction type",options:C,layout:"stacked",tooltip:"Choose how vendors are permitted to process data for this purpose. This setting overrides the vendor's declared legal basis in the Global Vendor List.",isRequired:!0,disabled:!v,className:"w-full"})}),(0,r.jsx)(g.d,{name:"vendor_restriction",label:"Vendor restriction",options:T,layout:"stacked",tooltip:"Decide if the restriction applies to all vendors, specific vendors, or if only certain vendors are allowed.",isRequired:!0}),(0,r.jsx)(n.UO1,{in:!!t.restriction_type&&!!t.vendor_restriction&&t.vendor_restriction!==m.PY.RESTRICT_ALL_VENDORS,animateOpacity:!0,children:(0,r.jsx)(g.d,{name:"vendor_ids",label:"Vendor IDs",mode:"tags",options:[],layout:"stacked",placeholder:"Enter vendor IDs",open:!1,suffixIcon:(0,r.jsx)("span",{}),tooltip:"List the specific vendors that are restricted or allowed from processing data for this purpose.",disabled:t.vendor_restriction===m.PY.RESTRICT_ALL_VENDORS,tokenSeparators:[","," "],onBlur:()=>{setTimeout(()=>{o({vendor_ids:!0}),s("vendor_ids")},100)},helperText:"Enter IDs (e.g. 123) or ranges (e.g. 1-10) and press enter",isRequired:!0})}),(0,r.jsxs)(n.jqI,{justify:"flex-end",className:"gap-3 pt-4",children:[(0,r.jsx)(n.wpx,{onClick:i,"data-testid":"cancel-restriction-button",children:"Cancel"}),(0,r.jsx)(n.wpx,{type:"primary",htmlType:"submit","data-testid":"save-restriction-button",children:"Save"})]})]})})}})})};var L=i(72625),q=i(58452);let A=e=>{let{currentValues:t,existingRestrictions:i}=e,[d,l]=(0,o.useState)(!1),[a,c]=(0,o.useState)(!1),u=(0,s.useRouter)(),p=(0,n.pmc)(),[h]=(0,E.FC)(),v=u.query.purpose_id?parseInt(u.query.purpose_id,10):void 0,_=u.query.configuration_id,m=async()=>{try{if(!(null==t?void 0:t.id))return;let e=await h({configuration_id:_,restriction_id:t.id});if((0,R.D4)(e)){p((0,I.Vo)("Failed to delete publisher restriction"));return}l(!1),p((0,I.t5)("Publisher restriction deleted successfully"))}catch(e){p((0,I.Vo)("Failed to delete publisher restriction"))}};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(n.vyj,{children:[(0,r.jsx)(n.wpx,{size:"small",onClick:()=>c(!0),"data-testid":"edit-restriction-button",children:"Edit"}),(0,r.jsx)(n.wpx,{size:"small",onClick:()=>l(!0),"data-testid":"delete-restriction-button",children:"Delete"})]}),(0,r.jsx)(O,{isOpen:a,onClose:()=>c(!1),initialValues:t,existingRestrictions:i,purposeId:v,restrictionId:null==t?void 0:t.id,configurationId:_}),(0,r.jsx)(q.Z,{isOpen:d,onClose:()=>l(!1),onConfirm:m,title:"Confirm deletion",message:"Are you sure you want to delete this publisher restriction? This action cannot be undone.",cancelButtonText:"Cancel",continueButtonText:"Delete"})]})},D=(0,v.Cl)(),V=()=>(0,o.useMemo)(()=>[D.accessor(e=>e.restriction_type,{id:"restriction_type",cell:e=>{let{getValue:t}=e,i=t();return(0,r.jsx)(_.G3,{value:p.fj[i]})},header:e=>(0,r.jsx)(_.Rr,{value:"Restriction type",...e})}),D.accessor(e=>e.vendor_restriction,{id:"vendor_restriction",cell:e=>{let{getValue:t}=e,i=t();return(0,r.jsx)(_.G3,{value:p.Cu[i]})},header:e=>(0,r.jsx)(_.Rr,{value:"Vendor restriction",...e})}),D.accessor(e=>e.vendor_ids,{id:"vendor_ids",cell:e=>{let{getValue:t}=e;return(0,r.jsx)(_.G3,{value:t().join(", ")||"All vendors"})},header:e=>(0,r.jsx)(L.vs,{value:"Vendors",helperText:"Specify which vendors the restriction applies to. You can apply restrictions to all vendors, specific vendors by their IDs, or allow only certain vendors while restricting the rest.",...e})}),D.display({id:"actions",cell:e=>(0,r.jsx)(A,{currentValues:e.row.original,existingRestrictions:e.table.getRowModel().rows.map(e=>e.original)}),header:"Actions",size:154,meta:{disableRowClick:!0}})],[]),k=e=>{let{onAdd:t}=e;return(0,r.jsxs)(n.jqI,{vertical:!0,align:"center",className:"mt-6 w-full gap-3 self-center whitespace-normal py-10","data-testid":"empty-table-notice",children:[(0,r.jsx)(n.xvT,{fontSize:"md",fontWeight:"semibold",children:"Add a restriction"}),(0,r.jsx)(n.xvT,{fontSize:"sm",className:"max-w-[70%]",children:"No restrictions have been added. By default, all vendors follow their declared legal basis unless a restriction is applied—add a restriction to override this behavior."}),(0,r.jsx)(n.wpx,{type:"primary",onClick:t,children:"Add +"})]})},U=()=>{let[e,t]=(0,o.useState)(!1),i=V(),d=(0,s.useRouter)(),l=d.query.purpose_id?parseInt(d.query.purpose_id,10):void 0,a=d.query.configuration_id,{data:c,isFetching:u}=(0,E.a9)({configuration_id:a,purpose_id:null!=l?l:0},{skip:!a||!l}),p=((null==c?void 0:c.items)||[]).map(e=>{var t;return{id:e.id,restriction_type:e.restriction_type,vendor_restriction:e.vendor_restriction,vendor_ids:(null===(t=e.range_entries)||void 0===t?void 0:t.map(e=>e.end_vendor_id?"".concat(e.start_vendor_id,"-").concat(e.end_vendor_id):e.start_vendor_id.toString()))||[],purpose_id:e.purpose_id}}),x=p.some(e=>e.vendor_restriction===m.PY.RESTRICT_ALL_VENDORS),f=Object.values(m.FF).every(e=>p.some(t=>t.restriction_type===e)),g=(0,h.b7)({getCoreRowModel:(0,v.sC)(),columns:i,data:p,columnResizeMode:"onChange",manualPagination:!0}),R=()=>{t(!0)};return(0,r.jsxs)(n.jqI,{vertical:!0,className:"overflow-auto",children:[(0,r.jsxs)(_.Q$,{children:[(0,r.jsx)(n.LZC,{}),(0,r.jsx)(n.esZ,{title:x?'Each vendor must have a unique restriction type. When "Restrict all vendors" is active for any restriction type, no other restrictions can be added.':f?"Each purpose must have a unique restriction type. When all restriction types are active, no other restrictions can be added. Use the 'Edit' button to change the vendor restrictions on each type.":void 0,children:(0,r.jsx)(n.wpx,{type:"primary",onClick:R,disabled:x||f,"data-testid":"add-restriction-button",children:"Add restriction +"})})]}),u?(0,r.jsx)(_.I4,{rowHeight:36,numRows:3}):(0,r.jsx)(_.ZK,{tableInstance:g,emptyTableNotice:(0,r.jsx)(k,{onAdd:R})}),(0,r.jsx)(O,{isOpen:e,onClose:()=>{t(!1)},existingRestrictions:p,purposeId:l,configurationId:a})]})};var Z=()=>{let e=(0,s.useRouter)(),t=decodeURIComponent(e.query.configuration_id),i=decodeURIComponent(e.query.purpose_id),{data:h,isLoading:v}=(0,c.a4)(),{data:_}=(0,E.NZ)(t),m=(0,o.useMemo)(()=>null==h?void 0:h.purposes[i],[h,i]);return(0,r.jsxs)(l.Z,{title:"Consent Configuration",children:[(0,r.jsx)(a.Z,{heading:"Consent configuration",breadcrumbItems:[{title:"Consent settings",href:"/settings/consent"},{title:(null==_?void 0:_.name)||"Configuration"},{title:"TCF purpose ".concat(i)}]}),(0,r.jsxs)(n.vyj,{direction:"vertical",size:"middle",children:[(0,r.jsxs)(n.vyj,{direction:"vertical",size:"middle",children:[(0,r.jsx)(u.Z,{title:"TCF purpose ".concat(i).concat((null==m?void 0:m.name)?": ".concat(null==m?void 0:m.name):""),children:v?(0,r.jsxs)(n.jqI,{vertical:!0,className:"gap-1.5",children:[(0,r.jsx)(n.OdW,{height:"16px",width:"100%"}),(0,r.jsx)(n.OdW,{height:"16px",width:"100%"}),(0,r.jsx)(n.OdW,{height:"16px",width:"30%"})]}):!!m&&(0,r.jsx)(n.xvT,{fontSize:"sm",children:null==m?void 0:m.description})}),(0,r.jsx)(u.Z,{title:(null==_?void 0:_.name)||"Configuration",children:(0,r.jsx)(n.vyj,{direction:"vertical",className:"gap-3",children:(0,r.jsxs)(n.xvT,{fontSize:"sm",children:["Add restrictions to control how vendors process data for specific purposes. For each restriction, choose a restriction type. Then, decide whether the restriction applies to all vendors, specific vendors, or only to a limited set of allowed vendors. You can add multiple restrictions—they'll appear in the table below."," ",(0,r.jsx)(d.Z,{href:p.uh,children:"Learn more about publisher restrictions"})," ","in our docs."]})})})]}),(0,r.jsx)(U,{})]})]})}}},function(e){e.O(0,[2888,9774,179],function(){return e(e.s=77713)}),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5135],{77713:function(e,t,i){(window.__NEXT_P=window.__NEXT_P||[]).push(["/settings/consent/[configuration_id]/[purpose_id]",function(){return i(80758)}])},59301:function(e,t,i){"use strict";var r=i(24246);let{Link:n}=i(13577).AntTypography;t.Z=e=>(0,r.jsx)(n,{target:"_blank",rel:"noopener noreferrer",...e})},35287:function(e,t,i){"use strict";var r=i(24246),n=i(13577),s=i(88038),o=i.n(s);i(27378),t.Z=e=>{let{children:t,title:i,mainProps:s}=e;return(0,r.jsxs)(n.kCb,{"data-testid":i,direction:"column",height:"calc(100vh - 48px)",width:"calc(100vw - 240px)",children:[(0,r.jsxs)(o(),{children:[(0,r.jsxs)("title",{children:["Fides Admin UI - ",i]}),(0,r.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,r.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,r.jsx)(n.kCb,{px:10,py:6,as:"main",overflow:"auto",direction:"column",flex:1,minWidth:0,...s,children:t})]})}},58754:function(e,t,i){"use strict";var r=i(24246),n=i(13577),s=i(70788);t.Z=e=>{let{heading:t,breadcrumbItems:i,isSticky:o=!0,children:d,rightContent:l,style:a,...c}=e;return(0,r.jsxs)("div",{...c,style:o?{position:"sticky",top:"-24px",paddingTop:"24px",paddingBottom:"24px",paddingLeft:"40px",marginLeft:"-40px",paddingRight:"40px",marginRight:"-40px",marginTop:"-24px",left:0,zIndex:20,backgroundColor:"white",...a}:{paddingBottom:"24px",...a},children:[(0,r.jsxs)(n.jqI,{justify:"space-between",children:["string"==typeof t?(0,r.jsx)(n.lQT,{className:i||d?"pb-4":void 0,level:1,"data-testid":"page-heading",children:t}):t,l&&(0,r.jsx)("div",{"data-testid":"page-header-right-content",children:l})]}),!!i&&(0,r.jsx)(s.m,{className:d?"pb-4":void 0,items:i,"data-testid":"page-breadcrumb"}),d]})}},97181:function(e,t,i){"use strict";i.d(t,{d:function(){return a}});var r=i(24246),n=i(13577),s=i(34090),o=i(27378),d=i(46238),l=i(40324);let a=e=>{let{name:t,label:i,labelProps:a,tooltip:c,isRequired:u,layout:p="inline",helperText:h,...v}=e,[_,m,{setValue:x}]=(0,s.U$)(t),f=!!(m.touched&&m.error),[g,R]=(0,o.useState)("");_.value||"tags"!==v.mode&&"multiple"!==v.mode||(_.value=[]),"tags"===v.mode&&"string"==typeof _.value&&(_.value=[_.value]);let j="tags"===v.mode?(e,t)=>e?e.value!==g||_.value.includes(g)?v.optionRender?v.optionRender(e,t):e.label:'Create "'.concat(g,'"'):void 0:v.optionRender||void 0,I=e=>{R(e),v.onSearch&&v.onSearch(e)},E=(e,t)=>{x(e),v.onChange&&v.onChange(e,t)};return"inline"===p?(0,r.jsx)(n.NIc,{isInvalid:f,isRequired:u,children:(0,r.jsxs)(n.rjZ,{templateColumns:i?"1fr 3fr":"1fr",children:[i?(0,r.jsx)(l.__,{htmlFor:v.id||t,...a,children:i}):null,(0,r.jsxs)(n.jqI,{align:"center",children:[(0,r.jsxs)(n.jqI,{vertical:!0,flex:1,className:"mr-2",children:[(0,r.jsx)(n.WPr,{..._,id:v.id||t,"data-testid":"controlled-select-".concat(_.name),...v,optionRender:j,onSearch:"tags"===v.mode?I:void 0,onChange:E,value:_.value||void 0,status:f?"error":void 0}),h&&(0,r.jsx)(n.Q6r,{children:h}),(0,r.jsx)(l.Bc,{isInvalid:f,message:m.error,fieldName:_.name})]}),(0,r.jsx)(d.b,{label:c,className:f?"mt-2 self-start":void 0})]})]})}):(0,r.jsx)(n.NIc,{isInvalid:f,isRequired:u,children:(0,r.jsxs)(n.gCW,{alignItems:"start",children:[(0,r.jsxs)(n.jqI,{align:"center",children:[i?(0,r.jsx)(l.__,{htmlFor:v.id||t,fontSize:"xs",my:0,mr:1,...a,children:i}):null,(0,r.jsx)(d.b,{label:c})]}),(0,r.jsx)(n.WPr,{..._,id:v.id||t,"data-testid":"controlled-select-".concat(_.name),...v,optionRender:j,onSearch:"tags"===v.mode?I:void 0,onChange:E,value:_.value||void 0,status:f?"error":void 0}),h&&(0,r.jsx)(n.Q6r,{style:{marginTop:0},children:h}),(0,r.jsx)(l.Bc,{isInvalid:f,message:m.error,fieldName:_.name})]})})}},8133:function(e,t,i){"use strict";var r=i(24246),n=i(13577);t.Z=e=>{let{title:t,children:i,isOpen:s,onClose:o,modalContentProps:d,showCloseButton:l=!1,footer:a,...c}=e;return(0,r.jsxs)(n.u_l,{isOpen:s,onClose:o,isCentered:!0,scrollBehavior:"inside",size:"xl",id:"add-modal",...c,children:[(0,r.jsx)(n.ZAr,{}),(0,r.jsxs)(n.hzk,{textAlign:"left",p:0,"data-testid":"add-modal-content",...d,children:[l&&(0,r.jsx)(n.olH,{}),(0,r.jsx)(n.xBx,{p:0,children:(0,r.jsx)(n.xuv,{backgroundColor:"gray.50",px:6,py:4,border:"1px",borderColor:"gray.200",borderTopRadius:6,display:"flex",justifyContent:"space-between",alignItems:"center",children:(0,r.jsx)(n.X6q,{as:"h3",size:"sm",children:t})})}),(0,r.jsx)(n.fef,{pb:4,overflow:"auto",children:i}),a&&(0,r.jsx)(n.mzw,{children:a})]})]})}},70788:function(e,t,i){"use strict";i.d(t,{m:function(){return a}});var r=i(24246),n=i(13577),s=i(79894),o=i.n(s),d=i(27378);let{Text:l}=n.AntTypography,a=e=>{let{items:t,...i}=e,s=(0,d.useMemo)(()=>null==t?void 0:t.map((e,i)=>{let s=i===t.length-1,d={...e},a=d.onClick&&!d.href;return("string"==typeof d.title&&(d.title=(0,r.jsx)(l,{style:{color:"inherit",maxWidth:s?void 0:400},ellipsis:!s,children:d.title})),a)?d.title=(0,r.jsx)(n.wpx,{type:"text",size:"small",icon:d.icon,onClick:d.onClick,className:"ant-breadcrumb-link -mt-px px-1 text-inherit",children:d.title}):(d.icon&&(d.title=(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("span",{className:"anticon align-text-bottom",children:d.icon}),d.title]})),d.href&&d.title&&(d.title=(0,r.jsx)(o(),{href:d.href,className:"ant-breadcrumb-link",children:d.title}),delete d.href)),d}),[t]);return(0,r.jsx)(n.zrq,{items:s,...i})}},6675:function(e,t,i){"use strict";i.d(t,{ZS:function(){return d},a4:function(){return s}});var r=i(3228);let n=i(78780).u.injectEndpoints({endpoints:e=>({getPurposes:e.query({query:()=>"purposes"})})}),{useGetPurposesQuery:s}=n,o={purposes:{},special_purposes:{}},d=(0,r.P1)(n.endpoints.getPurposes.select(),e=>{let{data:t}=e;return t||o})},51263:function(e,t,i){"use strict";var r=i(24246),n=i(13577);t.Z=e=>{let{title:t,children:i,...s}=e;return(0,r.jsxs)(n.xuv,{backgroundColor:"var(--fidesui-bg-corinth)",borderRadius:"4px",padding:"3","data-testid":"setting-".concat(t),...s,children:[(0,r.jsx)(n.xvT,{as:"h3",fontSize:"md",fontWeight:"bold",lineHeight:5,color:"gray.700",mb:3,children:t}),i]})}},59512:function(e,t,i){"use strict";i.d(t,{Cu:function(){return d},Py:function(){return n},fj:function(){return o},uh:function(){return s}});var r=i(54682);let n=[1,3,4,5,6],s="https://ethyca.com/docs/tutorials/consent-management/consent-management-configuration/configure-tcf#vendor-overrides",o={[r.FF.PURPOSE_RESTRICTION]:"Purpose restriction",[r.FF.REQUIRE_CONSENT]:"Require consent",[r.FF.REQUIRE_LEGITIMATE_INTEREST]:"Require legitimate interest"},d={[r.PY.RESTRICT_ALL_VENDORS]:"Restrict all vendors",[r.PY.RESTRICT_SPECIFIC_VENDORS]:"Restrict specific vendors",[r.PY.ALLOW_SPECIFIC_VENDORS]:"Allow specific vendors"}},80758:function(e,t,i){"use strict";i.r(t),i.d(t,{default:function(){return Z}});var r=i(24246),n=i(13577),s=i(86677),o=i(27378),d=i(59301),l=i(35287),a=i(58754),c=i(6675),u=i(51263),p=i(59512),h=i(59003),v=i(92222),_=i(47935),m=i(54682),x=i(34090),f=i(55484),g=i(97181),R=i(812),j=i(8133),I=i(46628),E=i(52955);let y=e=>{if(/^\d+$/.test(e))return!0;let t=e.match(/^(\d+)-(\d+)$/);return!!t&&parseInt(t[1],10)<parseInt(t[2],10)},C=e=>{if(/^\d+$/.test(e)){let t=parseInt(e,10);return{start:t,end:t}}let t=e.match(/^(\d+)-(\d+)$/);return t?{start:parseInt(t[1],10),end:parseInt(t[2],10)}:null},T=(e,t)=>e.end===e.start?e.start>=t.start&&(null===t.end||e.start<=t.end):t.end===t.start?t.start>=e.start&&(null===e.end||t.start<=e.end):null===e.end&&null!==t.end?e.start<=t.end:null===t.end&&null!==e.end?t.start<=e.end:null===e.end&&null===t.end||e.start<=t.end&&e.end>=t.start||t.start<=e.end&&t.end>=e.start,b=(e,t)=>e.end===e.start?e.start>=t.start&&(null===t.end||e.start<=t.end):null===t.end?e.start>=t.start:null!==e.end&&e.start>=t.start&&e.end<=t.end,S=(e,t,i,r)=>{var n;let s=t.filter(e=>e.purpose_id===i&&e.id!==r);if(!(null===(n=e.vendor_ids)||void 0===n?void 0:n.length))return!1;let o=e.vendor_ids.map(C).filter(e=>null!==e);return 0!==o.length&&s.some(t=>{let i=e.vendor_restriction===m.PY.RESTRICT_SPECIFIC_VENDORS&&t.vendor_restriction===m.PY.ALLOW_SPECIFIC_VENDORS||e.vendor_restriction===m.PY.ALLOW_SPECIFIC_VENDORS&&t.vendor_restriction===m.PY.RESTRICT_SPECIFIC_VENDORS,r=t.vendor_ids.map(C).filter(e=>null!==e);return i?e.vendor_restriction===m.PY.ALLOW_SPECIFIC_VENDORS?r.some(e=>o.some(t=>!b(e,t))):o.some(e=>r.some(t=>!b(e,t))):t.vendor_restriction===e.vendor_restriction&&o.some(e=>r.some(t=>T(e,t)))})},N=e=>{if(/^\d+$/.test(e))return{start_vendor_id:parseInt(e,10),end_vendor_id:null};let t=e.match(/^(\d+)-(\d+)$/);if(t){let e=parseInt(t[1],10),i=parseInt(t[2],10);if(e<i)return{start_vendor_id:e,end_vendor_id:i}}return null},F=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return e.map(N).filter(e=>null!==e)},w="This restriction type is already in use for this purpose",P={restriction_type:"",vendor_restriction:"",vendor_ids:[]},O=e=>{let{isOpen:t,onClose:i,initialValues:s=P,existingRestrictions:o=[],purposeId:d,restrictionId:l,configurationId:a}=e,c=(0,n.pmc)(),[u]=(0,E.a_)(),[h]=(0,E.h3)(),v=!(d&&p.Py.includes(+d)),_=o.filter(e=>e.id!==l).map(e=>e.restriction_type),C=[{value:m.FF.PURPOSE_RESTRICTION,label:p.fj[m.FF.PURPOSE_RESTRICTION],disabled:_.includes(m.FF.PURPOSE_RESTRICTION),title:_.includes(m.FF.PURPOSE_RESTRICTION)?w:void 0},{value:m.FF.REQUIRE_CONSENT,label:p.fj[m.FF.REQUIRE_CONSENT],disabled:_.includes(m.FF.REQUIRE_CONSENT),title:_.includes(m.FF.REQUIRE_CONSENT)?w:void 0},{value:m.FF.REQUIRE_LEGITIMATE_INTEREST,label:p.fj[m.FF.REQUIRE_LEGITIMATE_INTEREST],disabled:_.includes(m.FF.REQUIRE_LEGITIMATE_INTEREST),title:_.includes(m.FF.REQUIRE_LEGITIMATE_INTEREST)?w:void 0}],T=[{value:m.PY.RESTRICT_ALL_VENDORS,label:p.Cu[m.PY.RESTRICT_ALL_VENDORS],disabled:_.length>0,title:_.length>0?"Cannot restrict all vendors when other restrictions exist":void 0},{value:m.PY.RESTRICT_SPECIFIC_VENDORS,label:p.Cu[m.PY.RESTRICT_SPECIFIC_VENDORS]},{value:m.PY.ALLOW_SPECIFIC_VENDORS,label:p.Cu[m.PY.ALLOW_SPECIFIC_VENDORS]}],b=f.Ry().shape({restriction_type:f.Z_().required("Restriction type is required"),vendor_restriction:f.Z_().required("Vendor restriction is required"),vendor_ids:f.IX().when("vendor_restriction",{is:e=>e!==m.PY.RESTRICT_ALL_VENDORS,then:e=>e.required("At least one vendor ID is required").min(1,"At least one vendor ID is required").test("valid-format","Vendor IDs must be numbers or ranges (e.g., 10 or 15-300)",e=>{var t;return null===(t=null==e?void 0:e.every(e=>y(e)))||void 0===t||t}).test("no-conflicts","One or more of these vendors already have a restriction for this purpose. Please update the existing restriction or remove duplicates.",(e,t)=>!S({...t.parent,vendor_ids:e},o,d,l))})}),N=async e=>{try{let t={restriction_type:e.restriction_type,vendor_restriction:e.vendor_restriction,range_entries:e.vendor_restriction!==m.PY.RESTRICT_ALL_VENDORS?F(e.vendor_ids):[]},r={...t,purpose_id:null!=d?d:0};if(l){let e=await h({configuration_id:a,restriction_id:l,restriction:t});if((0,R.D4)(e)){c((0,I.Vo)("Failed to update restriction"));return}c((0,I.t5)("Restriction updated successfully"))}else{let e=await u({configuration_id:a,restriction:r});if((0,R.D4)(e)){c((0,I.Vo)("Failed to create restriction"));return}c((0,I.t5)("Restriction created successfully"))}i()}catch(e){c((0,I.Vo)("Failed to save restriction"))}};return(0,r.jsx)(j.Z,{isOpen:t,onClose:i,title:"Edit restriction",children:(0,r.jsx)(x.J9,{initialValues:{...s,restriction_type:v?s.restriction_type:m.FF.PURPOSE_RESTRICTION},onSubmit:N,validationSchema:b,children:e=>{let{values:t,validateField:s,setTouched:o}=e;return(0,r.jsx)(x.l0,{children:(0,r.jsxs)(n.jqI,{vertical:!0,className:"gap-6",children:[(0,r.jsx)(n.xvT,{className:"text-sm",children:"Define how specific vendors are restricted from processing data for this purpose. Select a restriction type, set whether the listed vendors are restricted or allowed, and specify which vendor IDs the restriction applies to."}),(0,r.jsx)(n.esZ,{title:v?void 0:"Non-flexible purposes only support Purpose restrictions and cannot be restricted by consent or legitimate interest settings.",children:(0,r.jsx)(g.d,{name:"restriction_type",label:"Restriction type",options:C,layout:"stacked",tooltip:"Choose how vendors are permitted to process data for this purpose. This setting overrides the vendor's declared legal basis in the Global Vendor List.",isRequired:!0,disabled:!v,className:"w-full"})}),(0,r.jsx)(g.d,{name:"vendor_restriction",label:"Vendor restriction",options:T,layout:"stacked",tooltip:"Decide if the restriction applies to all vendors, specific vendors, or if only certain vendors are allowed.",isRequired:!0}),(0,r.jsx)(n.UO1,{in:!!t.restriction_type&&!!t.vendor_restriction&&t.vendor_restriction!==m.PY.RESTRICT_ALL_VENDORS,animateOpacity:!0,children:(0,r.jsx)(g.d,{name:"vendor_ids",label:"Vendor IDs",mode:"tags",options:[],layout:"stacked",placeholder:"Enter vendor IDs",open:!1,suffixIcon:(0,r.jsx)("span",{}),tooltip:"List the specific vendors that are restricted or allowed from processing data for this purpose.",disabled:t.vendor_restriction===m.PY.RESTRICT_ALL_VENDORS,tokenSeparators:[","," "],onBlur:()=>{setTimeout(()=>{o({vendor_ids:!0}),s("vendor_ids")},100)},helperText:"Enter IDs (e.g. 123) or ranges (e.g. 1-10) and press enter",isRequired:!0})}),(0,r.jsxs)(n.jqI,{justify:"flex-end",className:"gap-3 pt-4",children:[(0,r.jsx)(n.wpx,{onClick:i,"data-testid":"cancel-restriction-button",children:"Cancel"}),(0,r.jsx)(n.wpx,{type:"primary",htmlType:"submit","data-testid":"save-restriction-button",children:"Save"})]})]})})}})})};var L=i(72625),q=i(58452);let A=e=>{let{currentValues:t,existingRestrictions:i}=e,[d,l]=(0,o.useState)(!1),[a,c]=(0,o.useState)(!1),u=(0,s.useRouter)(),p=(0,n.pmc)(),[h]=(0,E.FC)(),v=u.query.purpose_id?parseInt(u.query.purpose_id,10):void 0,_=u.query.configuration_id,m=async()=>{try{if(!(null==t?void 0:t.id))return;let e=await h({configuration_id:_,restriction_id:t.id});if((0,R.D4)(e)){p((0,I.Vo)("Failed to delete publisher restriction"));return}l(!1),p((0,I.t5)("Publisher restriction deleted successfully"))}catch(e){p((0,I.Vo)("Failed to delete publisher restriction"))}};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(n.vyj,{children:[(0,r.jsx)(n.wpx,{size:"small",onClick:()=>c(!0),"data-testid":"edit-restriction-button",children:"Edit"}),(0,r.jsx)(n.wpx,{size:"small",onClick:()=>l(!0),"data-testid":"delete-restriction-button",children:"Delete"})]}),(0,r.jsx)(O,{isOpen:a,onClose:()=>c(!1),initialValues:t,existingRestrictions:i,purposeId:v,restrictionId:null==t?void 0:t.id,configurationId:_}),(0,r.jsx)(q.Z,{isOpen:d,onClose:()=>l(!1),onConfirm:m,title:"Confirm deletion",message:"Are you sure you want to delete this publisher restriction? This action cannot be undone.",cancelButtonText:"Cancel",continueButtonText:"Delete"})]})},D=(0,v.Cl)(),V=()=>(0,o.useMemo)(()=>[D.accessor(e=>e.restriction_type,{id:"restriction_type",cell:e=>{let{getValue:t}=e,i=t();return(0,r.jsx)(_.G3,{value:p.fj[i]})},header:e=>(0,r.jsx)(_.Rr,{value:"Restriction type",...e})}),D.accessor(e=>e.vendor_restriction,{id:"vendor_restriction",cell:e=>{let{getValue:t}=e,i=t();return(0,r.jsx)(_.G3,{value:p.Cu[i]})},header:e=>(0,r.jsx)(_.Rr,{value:"Vendor restriction",...e})}),D.accessor(e=>e.vendor_ids,{id:"vendor_ids",cell:e=>{let{getValue:t}=e;return(0,r.jsx)(_.G3,{value:t().join(", ")||"All vendors"})},header:e=>(0,r.jsx)(L.vs,{value:"Vendors",helperText:"Specify which vendors the restriction applies to. You can apply restrictions to all vendors, specific vendors by their IDs, or allow only certain vendors while restricting the rest.",...e})}),D.display({id:"actions",cell:e=>(0,r.jsx)(A,{currentValues:e.row.original,existingRestrictions:e.table.getRowModel().rows.map(e=>e.original)}),header:"Actions",size:154,meta:{disableRowClick:!0}})],[]),k=e=>{let{onAdd:t}=e;return(0,r.jsxs)(n.jqI,{vertical:!0,align:"center",className:"mt-6 w-full gap-3 self-center whitespace-normal py-10","data-testid":"empty-table-notice",children:[(0,r.jsx)(n.xvT,{fontSize:"md",fontWeight:"semibold",children:"Add a restriction"}),(0,r.jsx)(n.xvT,{fontSize:"sm",className:"max-w-[70%]",children:"No restrictions have been added. By default, all vendors follow their declared legal basis unless a restriction is applied—add a restriction to override this behavior."}),(0,r.jsx)(n.wpx,{type:"primary",onClick:t,children:"Add +"})]})},U=()=>{let[e,t]=(0,o.useState)(!1),i=V(),d=(0,s.useRouter)(),l=d.query.purpose_id?parseInt(d.query.purpose_id,10):void 0,a=d.query.configuration_id,{data:c,isFetching:u}=(0,E.a9)({configuration_id:a,purpose_id:null!=l?l:0},{skip:!a||!l}),p=((null==c?void 0:c.items)||[]).map(e=>{var t;return{id:e.id,restriction_type:e.restriction_type,vendor_restriction:e.vendor_restriction,vendor_ids:(null===(t=e.range_entries)||void 0===t?void 0:t.map(e=>e.end_vendor_id?"".concat(e.start_vendor_id,"-").concat(e.end_vendor_id):e.start_vendor_id.toString()))||[],purpose_id:e.purpose_id}}),x=p.some(e=>e.vendor_restriction===m.PY.RESTRICT_ALL_VENDORS),f=Object.values(m.FF).every(e=>p.some(t=>t.restriction_type===e)),g=(0,h.b7)({getCoreRowModel:(0,v.sC)(),columns:i,data:p,columnResizeMode:"onChange",manualPagination:!0}),R=()=>{t(!0)};return(0,r.jsxs)(n.jqI,{vertical:!0,className:"overflow-auto",children:[(0,r.jsxs)(_.Q$,{children:[(0,r.jsx)(n.LZC,{}),(0,r.jsx)(n.esZ,{title:x?'Each vendor must have a unique restriction type. When "Restrict all vendors" is active for any restriction type, no other restrictions can be added.':f?"Each purpose must have a unique restriction type. When all restriction types are active, no other restrictions can be added. Use the 'Edit' button to change the vendor restrictions on each type.":void 0,children:(0,r.jsx)(n.wpx,{type:"primary",onClick:R,disabled:x||f,"data-testid":"add-restriction-button",children:"Add restriction +"})})]}),u?(0,r.jsx)(_.I4,{rowHeight:36,numRows:3}):(0,r.jsx)(_.ZK,{tableInstance:g,emptyTableNotice:(0,r.jsx)(k,{onAdd:R})}),(0,r.jsx)(O,{isOpen:e,onClose:()=>{t(!1)},existingRestrictions:p,purposeId:l,configurationId:a})]})};var Z=()=>{let e=(0,s.useRouter)(),t=decodeURIComponent(e.query.configuration_id),i=decodeURIComponent(e.query.purpose_id),{data:h,isLoading:v}=(0,c.a4)(),{data:_}=(0,E.NZ)(t),m=(0,o.useMemo)(()=>null==h?void 0:h.purposes[i],[h,i]);return(0,r.jsxs)(l.Z,{title:"Consent Configuration",children:[(0,r.jsx)(a.Z,{heading:"Consent configuration",breadcrumbItems:[{title:"Consent settings",href:"/settings/consent"},{title:(null==_?void 0:_.name)||"Configuration"},{title:"TCF purpose ".concat(i)}]}),(0,r.jsxs)(n.vyj,{direction:"vertical",size:"middle",children:[(0,r.jsxs)(n.vyj,{direction:"vertical",size:"middle",children:[(0,r.jsx)(u.Z,{title:"TCF purpose ".concat(i).concat((null==m?void 0:m.name)?": ".concat(null==m?void 0:m.name):""),children:v?(0,r.jsxs)(n.jqI,{vertical:!0,className:"gap-1.5",children:[(0,r.jsx)(n.OdW,{height:"16px",width:"100%"}),(0,r.jsx)(n.OdW,{height:"16px",width:"100%"}),(0,r.jsx)(n.OdW,{height:"16px",width:"30%"})]}):!!m&&(0,r.jsx)(n.xvT,{fontSize:"sm",children:null==m?void 0:m.description})}),(0,r.jsx)(u.Z,{title:(null==_?void 0:_.name)||"Configuration",children:(0,r.jsx)(n.vyj,{direction:"vertical",className:"gap-3",children:(0,r.jsxs)(n.xvT,{fontSize:"sm",children:["Add restrictions to control how vendors process data for specific purposes. For each restriction, choose a restriction type. Then, decide whether the restriction applies to all vendors, specific vendors, or only to a limited set of allowed vendors. You can add multiple restrictions—they'll appear in the table below."," ",(0,r.jsx)(d.Z,{href:p.uh,children:"Learn more about publisher restrictions"})," ","in our docs."]})})})]}),(0,r.jsx)(U,{})]})]})}}},function(e){e.O(0,[2888,9774,179],function(){return e(e.s=77713)}),_N_E=e.O()}]);