ethyca-fides 2.71.0rc3__py2.py3-none-any.whl → 2.71.1b0__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 (108) hide show
  1. {ethyca_fides-2.71.0rc3.dist-info → ethyca_fides-2.71.1b0.dist-info}/METADATA +2 -2
  2. {ethyca_fides-2.71.0rc3.dist-info → ethyca_fides-2.71.1b0.dist-info}/RECORD +108 -107
  3. fides/_version.py +3 -3
  4. fides/api/alembic/migrations/versions/918aefc950c9_create_digest_conditional_dependencies.py +125 -0
  5. fides/api/api/v1/endpoints/generic_overrides.py +9 -3
  6. fides/api/db/base.py +1 -1
  7. fides/api/models/conditional_dependency/conditional_dependency_base.py +253 -24
  8. fides/api/models/digest/__init__.py +5 -1
  9. fides/api/models/digest/conditional_dependencies.py +267 -1
  10. fides/api/models/digest/digest_config.py +34 -9
  11. fides/api/models/fides_user.py +9 -0
  12. fides/api/models/manual_task/conditional_dependency.py +16 -18
  13. fides/api/task/manual/manual_task_conditional_evaluation.py +1 -1
  14. fides/service/dataset/dataset_service.py +39 -0
  15. fides/service/privacy_request/privacy_request_service.py +103 -48
  16. fides/ui-build/static/admin/404.html +1 -1
  17. fides/ui-build/static/admin/_next/static/{Iszit6QyBe_fIacNxpyuQ → IPOgh7BMBX7b_r8-scpgv}/_buildManifest.js +1 -1
  18. fides/ui-build/static/admin/_next/static/chunks/{3585-efd5d41f08e180c4.js → 3585-f728d32fda6f1ac1.js} +1 -1
  19. fides/ui-build/static/admin/add-systems/manual.html +1 -1
  20. fides/ui-build/static/admin/add-systems/multiple.html +1 -1
  21. fides/ui-build/static/admin/add-systems.html +1 -1
  22. fides/ui-build/static/admin/consent/configure/add-vendors.html +1 -1
  23. fides/ui-build/static/admin/consent/configure.html +1 -1
  24. fides/ui-build/static/admin/consent/privacy-experience/[id].html +1 -1
  25. fides/ui-build/static/admin/consent/privacy-experience/new.html +1 -1
  26. fides/ui-build/static/admin/consent/privacy-experience.html +1 -1
  27. fides/ui-build/static/admin/consent/privacy-notices/[id].html +1 -1
  28. fides/ui-build/static/admin/consent/privacy-notices/new.html +1 -1
  29. fides/ui-build/static/admin/consent/privacy-notices.html +1 -1
  30. fides/ui-build/static/admin/consent/properties.html +1 -1
  31. fides/ui-build/static/admin/consent/reporting.html +1 -1
  32. fides/ui-build/static/admin/consent.html +1 -1
  33. fides/ui-build/static/admin/data-catalog/[systemId]/projects/[projectUrn]/[resourceUrn].html +1 -1
  34. fides/ui-build/static/admin/data-catalog/[systemId]/projects/[projectUrn].html +1 -1
  35. fides/ui-build/static/admin/data-catalog/[systemId]/projects.html +1 -1
  36. fides/ui-build/static/admin/data-catalog/[systemId]/resources/[resourceUrn].html +1 -1
  37. fides/ui-build/static/admin/data-catalog/[systemId]/resources.html +1 -1
  38. fides/ui-build/static/admin/data-catalog.html +1 -1
  39. fides/ui-build/static/admin/data-discovery/action-center/[monitorId]/[systemId].html +1 -1
  40. fides/ui-build/static/admin/data-discovery/action-center/[monitorId].html +1 -1
  41. fides/ui-build/static/admin/data-discovery/action-center.html +1 -1
  42. fides/ui-build/static/admin/data-discovery/activity.html +1 -1
  43. fides/ui-build/static/admin/data-discovery/detection/[resourceUrn].html +1 -1
  44. fides/ui-build/static/admin/data-discovery/detection.html +1 -1
  45. fides/ui-build/static/admin/data-discovery/discovery/[resourceUrn].html +1 -1
  46. fides/ui-build/static/admin/data-discovery/discovery.html +1 -1
  47. fides/ui-build/static/admin/datamap.html +1 -1
  48. fides/ui-build/static/admin/dataset/[datasetId]/[collectionName]/[...subfieldNames].html +1 -1
  49. fides/ui-build/static/admin/dataset/[datasetId]/[collectionName].html +1 -1
  50. fides/ui-build/static/admin/dataset/[datasetId].html +1 -1
  51. fides/ui-build/static/admin/dataset/new.html +1 -1
  52. fides/ui-build/static/admin/dataset.html +1 -1
  53. fides/ui-build/static/admin/datastore-connection/[id].html +1 -1
  54. fides/ui-build/static/admin/datastore-connection/new.html +1 -1
  55. fides/ui-build/static/admin/datastore-connection.html +1 -1
  56. fides/ui-build/static/admin/index.html +1 -1
  57. fides/ui-build/static/admin/integrations/[id].html +1 -1
  58. fides/ui-build/static/admin/integrations.html +1 -1
  59. fides/ui-build/static/admin/login/[provider].html +1 -1
  60. fides/ui-build/static/admin/login.html +1 -1
  61. fides/ui-build/static/admin/messaging/[id].html +1 -1
  62. fides/ui-build/static/admin/messaging/add-template.html +1 -1
  63. fides/ui-build/static/admin/messaging.html +1 -1
  64. fides/ui-build/static/admin/poc/ant-components.html +1 -1
  65. fides/ui-build/static/admin/poc/form-experiments/AntForm.html +1 -1
  66. fides/ui-build/static/admin/poc/form-experiments/FormikAntFormItem.html +1 -1
  67. fides/ui-build/static/admin/poc/form-experiments/FormikControlled.html +1 -1
  68. fides/ui-build/static/admin/poc/form-experiments/FormikField.html +1 -1
  69. fides/ui-build/static/admin/poc/form-experiments/FormikSpreadField.html +1 -1
  70. fides/ui-build/static/admin/poc/forms.html +1 -1
  71. fides/ui-build/static/admin/poc/table-migration.html +1 -1
  72. fides/ui-build/static/admin/privacy-requests/[id].html +1 -1
  73. fides/ui-build/static/admin/privacy-requests/configure/storage.html +1 -1
  74. fides/ui-build/static/admin/privacy-requests/configure.html +1 -1
  75. fides/ui-build/static/admin/privacy-requests.html +1 -1
  76. fides/ui-build/static/admin/properties/[id].html +1 -1
  77. fides/ui-build/static/admin/properties/add-property.html +1 -1
  78. fides/ui-build/static/admin/properties.html +1 -1
  79. fides/ui-build/static/admin/reporting/datamap.html +1 -1
  80. fides/ui-build/static/admin/settings/about/alpha.html +1 -1
  81. fides/ui-build/static/admin/settings/about.html +1 -1
  82. fides/ui-build/static/admin/settings/consent/[configuration_id]/[purpose_id].html +1 -1
  83. fides/ui-build/static/admin/settings/consent.html +1 -1
  84. fides/ui-build/static/admin/settings/custom-fields/[id].html +1 -1
  85. fides/ui-build/static/admin/settings/custom-fields/new.html +1 -1
  86. fides/ui-build/static/admin/settings/custom-fields.html +1 -1
  87. fides/ui-build/static/admin/settings/domain-records.html +1 -1
  88. fides/ui-build/static/admin/settings/domains.html +1 -1
  89. fides/ui-build/static/admin/settings/email-templates.html +1 -1
  90. fides/ui-build/static/admin/settings/locations.html +1 -1
  91. fides/ui-build/static/admin/settings/messaging-providers/[key].html +1 -1
  92. fides/ui-build/static/admin/settings/messaging-providers/new.html +1 -1
  93. fides/ui-build/static/admin/settings/messaging-providers.html +1 -1
  94. fides/ui-build/static/admin/settings/organization.html +1 -1
  95. fides/ui-build/static/admin/settings/privacy-requests.html +1 -1
  96. fides/ui-build/static/admin/settings/regulations.html +1 -1
  97. fides/ui-build/static/admin/systems/configure/[id]/test-datasets.html +1 -1
  98. fides/ui-build/static/admin/systems/configure/[id].html +1 -1
  99. fides/ui-build/static/admin/systems.html +1 -1
  100. fides/ui-build/static/admin/taxonomy.html +1 -1
  101. fides/ui-build/static/admin/user-management/new.html +1 -1
  102. fides/ui-build/static/admin/user-management/profile/[id].html +1 -1
  103. fides/ui-build/static/admin/user-management.html +1 -1
  104. {ethyca_fides-2.71.0rc3.dist-info → ethyca_fides-2.71.1b0.dist-info}/WHEEL +0 -0
  105. {ethyca_fides-2.71.0rc3.dist-info → ethyca_fides-2.71.1b0.dist-info}/entry_points.txt +0 -0
  106. {ethyca_fides-2.71.0rc3.dist-info → ethyca_fides-2.71.1b0.dist-info}/licenses/LICENSE +0 -0
  107. {ethyca_fides-2.71.0rc3.dist-info → ethyca_fides-2.71.1b0.dist-info}/top_level.txt +0 -0
  108. /fides/ui-build/static/admin/_next/static/{Iszit6QyBe_fIacNxpyuQ → IPOgh7BMBX7b_r8-scpgv}/_ssgManifest.js +0 -0
@@ -4,11 +4,14 @@ from typing import Optional, Union
4
4
  from sqlalchemy import Boolean, Column, DateTime, String, Text
5
5
  from sqlalchemy.dialects.postgresql import JSONB
6
6
  from sqlalchemy.ext.declarative import declared_attr
7
- from sqlalchemy.orm import Session
7
+ from sqlalchemy.orm import Session, relationship
8
8
 
9
9
  from fides.api.db.base_class import Base
10
10
  from fides.api.db.util import EnumColumn
11
- from fides.api.models.digest.conditional_dependencies import DigestConditionType
11
+ from fides.api.models.digest.conditional_dependencies import (
12
+ DigestCondition,
13
+ DigestConditionType,
14
+ )
12
15
  from fides.api.schemas.messaging.messaging import MessagingMethod
13
16
  from fides.api.task.conditional_dependencies.schemas import (
14
17
  Condition,
@@ -51,26 +54,48 @@ class DigestConfig(Base):
51
54
  next_scheduled_at = Column(DateTime(timezone=True), nullable=True, index=True)
52
55
  config_metadata = Column(JSONB, nullable=True, default={})
53
56
 
54
- def get_receiver_conditions(
57
+ # Relationships
58
+ conditions = relationship(
59
+ "DigestCondition",
60
+ back_populates="digest_config",
61
+ cascade="all, delete-orphan",
62
+ )
63
+
64
+ def get_receiver_condition(
55
65
  self, db: Session
56
66
  ) -> Optional[Union[ConditionLeaf, ConditionGroup]]:
57
67
  """Get receiver conditions for this digest config."""
58
- raise NotImplementedError("Conditions are not implemented for digests")
68
+ return DigestCondition.get_root_condition(
69
+ db,
70
+ digest_config_id=self.id,
71
+ digest_condition_type=DigestConditionType.RECEIVER,
72
+ )
59
73
 
60
- def get_content_conditions(
74
+ def get_content_condition(
61
75
  self, db: Session
62
76
  ) -> Optional[Union[ConditionLeaf, ConditionGroup]]:
63
77
  """Get content conditions for this digest config."""
64
- raise NotImplementedError("Conditions are not implemented for digests")
65
78
 
66
- def get_priority_conditions(
79
+ return DigestCondition.get_root_condition(
80
+ db,
81
+ digest_config_id=self.id,
82
+ digest_condition_type=DigestConditionType.CONTENT,
83
+ )
84
+
85
+ def get_priority_condition(
67
86
  self, db: Session
68
87
  ) -> Optional[Union[ConditionLeaf, ConditionGroup]]:
69
88
  """Get priority conditions for this digest config."""
70
- raise NotImplementedError("Conditions are not implemented for digests")
89
+
90
+ return DigestCondition.get_root_condition(
91
+ db,
92
+ digest_config_id=self.id,
93
+ digest_condition_type=DigestConditionType.PRIORITY,
94
+ )
71
95
 
72
96
  def get_all_conditions(
73
97
  self, db: Session
74
98
  ) -> dict["DigestConditionType", Optional[Condition]]:
75
99
  """Get all condition types for this digest config."""
76
- raise NotImplementedError("Conditions are not implemented for digests")
100
+
101
+ return DigestCondition.get_all_root_conditions(db, self.id)
@@ -31,6 +31,7 @@ if TYPE_CHECKING:
31
31
  from fides.api.models.fides_user_respondent_email_verification import (
32
32
  FidesUserRespondentEmailVerification,
33
33
  )
34
+ from fides.api.models.manual_task.manual_task import ManualTaskReference
34
35
  from fides.api.models.sql_models import System # type: ignore[attr-defined]
35
36
  from fides.api.models.system_manager import SystemManager
36
37
 
@@ -90,6 +91,14 @@ class FidesUser(Base):
90
91
  uselist=False,
91
92
  )
92
93
 
94
+ # Manual task assignments relationship
95
+ manual_task_references = relationship(
96
+ "ManualTaskReference",
97
+ primaryjoin="and_(FidesUser.id == foreign(ManualTaskReference.reference_id), "
98
+ "ManualTaskReference.reference_type == 'assigned_user')",
99
+ viewonly=True,
100
+ )
101
+
93
102
  @property
94
103
  def system_ids(self) -> List[str]:
95
104
  return [system.id for system in self.systems]
@@ -1,13 +1,12 @@
1
1
  from typing import TYPE_CHECKING, Any, Optional, Union
2
2
 
3
- from sqlalchemy import Column, ForeignKey, Index, String
3
+ from sqlalchemy import Column, ForeignKey, String
4
4
  from sqlalchemy.ext.declarative import declared_attr
5
5
  from sqlalchemy.orm import Session, relationship
6
6
 
7
7
  from fides.api.db.base_class import FidesBase
8
8
  from fides.api.models.conditional_dependency.conditional_dependency_base import (
9
9
  ConditionalDependencyBase,
10
- ConditionalDependencyType,
11
10
  )
12
11
  from fides.api.task.conditional_dependencies.schemas import (
13
12
  ConditionGroup,
@@ -30,19 +29,16 @@ class ManualTaskConditionalDependency(ConditionalDependencyBase):
30
29
  id = Column(String(255), primary_key=True, default=FidesBase.generate_uuid)
31
30
  # Foreign key relationships
32
31
  manual_task_id = Column(
33
- String, ForeignKey("manual_task.id", ondelete="CASCADE"), nullable=False
32
+ String,
33
+ ForeignKey("manual_task.id", ondelete="CASCADE"),
34
+ nullable=False,
35
+ index=True,
34
36
  )
35
37
  parent_id = Column(
36
38
  String,
37
39
  ForeignKey("manual_task_conditional_dependency.id", ondelete="CASCADE"),
38
40
  nullable=True,
39
- )
40
-
41
- __table_args__ = (
42
- Index("ix_manual_task_conditional_dependency_manual_task_id", "manual_task_id"),
43
- Index("ix_manual_task_conditional_dependency_parent_id", "parent_id"),
44
- Index("ix_manual_task_conditional_dependency_condition_type", "condition_type"),
45
- Index("ix_manual_task_conditional_dependency_sort_order", "sort_order"),
41
+ index=True,
46
42
  )
47
43
 
48
44
  # Relationships
@@ -62,18 +58,22 @@ class ManualTaskConditionalDependency(ConditionalDependencyBase):
62
58
 
63
59
  @classmethod
64
60
  def get_root_condition(
65
- cls, db: Session, *args: Any, **kwargs: Any
61
+ cls, db: Session, **kwargs: Any
66
62
  ) -> Optional[Union[ConditionLeaf, ConditionGroup]]:
67
63
  """Get the root condition for a manual task
68
64
 
69
65
  Args:
70
66
  db: Database session
71
- manual_task_id: ID of the manual task (first positional arg)
67
+ **kwargs: Keyword arguments containing:
68
+ manual_task_id: ID of the manual task
69
+
70
+ Raises:
71
+ ValueError: If manual_task_id is not provided
72
72
  """
73
- if not args:
74
- raise ValueError("manual_task_id is required as first positional argument")
73
+ manual_task_id = kwargs.get("manual_task_id")
75
74
 
76
- manual_task_id = args[0]
75
+ if not manual_task_id:
76
+ raise ValueError("manual_task_id is required as a keyword argument")
77
77
  root = (
78
78
  db.query(cls)
79
79
  .filter(cls.manual_task_id == manual_task_id, cls.parent_id.is_(None))
@@ -83,6 +83,4 @@ class ManualTaskConditionalDependency(ConditionalDependencyBase):
83
83
  if not root:
84
84
  return None
85
85
 
86
- if root.condition_type == ConditionalDependencyType.leaf:
87
- return root.to_condition_leaf()
88
- return root.to_condition_group()
86
+ return root.to_correct_condition_type()
@@ -181,7 +181,7 @@ def evaluate_conditional_dependencies(
181
181
  """
182
182
  # Get the root condition for this manual task
183
183
  root_condition = ManualTaskConditionalDependency.get_root_condition(
184
- db, manual_task.id
184
+ db, manual_task_id=manual_task.id
185
185
  )
186
186
 
187
187
  if not root_condition:
@@ -6,6 +6,7 @@ from loguru import logger
6
6
  from sqlalchemy import select
7
7
  from sqlalchemy.orm import Session
8
8
 
9
+ from fides.api.models.datasetconfig import DatasetConfig # type: ignore[attr-defined]
9
10
  from fides.api.schemas.dataset import ValidateDatasetResponse
10
11
  from fides.service.dataset.dataset_validator import DatasetValidator
11
12
 
@@ -26,6 +27,10 @@ class DatasetNotFoundException(DatasetError):
26
27
  """Raised when a dataset is not found"""
27
28
 
28
29
 
30
+ class LinkedDatasetException(DatasetError):
31
+ """Raised when attempting to delete a dataset that's associated to a DatasetConfig"""
32
+
33
+
29
34
  class DatasetService:
30
35
  def __init__(self, db: Session):
31
36
  self.db = db
@@ -68,6 +73,40 @@ class DatasetService:
68
73
  def delete_dataset(self, fides_key: str) -> CtlDataset:
69
74
  """Delete a dataset by fides key"""
70
75
  dataset = self.get_dataset(fides_key)
76
+
77
+ # Check if dataset is associated with any DatasetConfigs
78
+ associated_configs = (
79
+ self.db.query(DatasetConfig)
80
+ .filter(DatasetConfig.ctl_dataset_id == dataset.id)
81
+ .all()
82
+ )
83
+
84
+ if associated_configs:
85
+ # Create detailed error message
86
+ integration_details = []
87
+ for config in associated_configs:
88
+ connection_name = (
89
+ config.connection_config.name or config.connection_config.key
90
+ )
91
+ detail = f"'{connection_name}' ({config.connection_config.connection_type.value})" # type: ignore[attr-defined]
92
+
93
+ # Add system information if available
94
+ if config.connection_config.system_id:
95
+ system = config.connection_config.system
96
+ if system:
97
+ system_name = system.name or system.fides_key
98
+ detail += f" in system '{system_name}'"
99
+
100
+ integration_details.append(detail)
101
+
102
+ message = (
103
+ f"Cannot delete dataset '{fides_key}' because it is associated with "
104
+ f"the following integration(s): {', '.join(integration_details)}. "
105
+ f"Remove the dataset from these integrations before deleting."
106
+ )
107
+
108
+ raise LinkedDatasetException(message)
109
+
71
110
  dataset.delete(self.db)
72
111
  return dataset
73
112
 
@@ -90,65 +90,120 @@ class PrivacyRequestService:
90
90
  if privacy_request_data.location:
91
91
  return
92
92
 
93
- # Get the Privacy Center configuration from the database
94
- privacy_center_config_record = PrivacyCenterConfigModel.filter(
95
- db=self.db, conditions=PrivacyCenterConfigModel.single_row # type: ignore[arg-type]
96
- ).first()
93
+ config_dict = self._resolve_privacy_center_config_dict(
94
+ privacy_request_data.property_id
95
+ )
96
+ if not config_dict:
97
+ return
97
98
 
98
- if not privacy_center_config_record:
99
- # No Privacy Center config found, skip validation
99
+ privacy_center_config = self._parse_privacy_center_config(config_dict)
100
+ if not privacy_center_config:
100
101
  return
101
102
 
102
- try:
103
- # Parse the config using the Pydantic schema
104
- privacy_center_config = PrivacyCenterConfigSchema.model_validate(
105
- privacy_center_config_record.config
103
+ action = self._get_matching_action(
104
+ privacy_center_config, privacy_request_data.policy_key
105
+ )
106
+ if not action or not action.custom_privacy_request_fields:
107
+ return
108
+
109
+ missing_required = self._is_required_location_missing(
110
+ action, privacy_request_data
111
+ )
112
+ if missing_required:
113
+ # Find the first location field name to reference in the error for clarity
114
+ first_location_field = next(
115
+ (
116
+ name
117
+ for name, cfg in action.custom_privacy_request_fields.items()
118
+ if isinstance(cfg, LocationCustomPrivacyRequestField)
119
+ and getattr(cfg, "required", False)
120
+ ),
121
+ "location",
106
122
  )
107
- except Exception as exc:
123
+ raise PrivacyRequestError(
124
+ f"Location is required for field '{first_location_field}' but was not provided",
125
+ privacy_request_data.model_dump(mode="json"),
126
+ )
127
+
128
+ def _resolve_privacy_center_config_dict(
129
+ self, property_id: Optional[str]
130
+ ) -> Optional[Dict[str, Any]]:
131
+ """Return the applicable Privacy Center config as a dict using precedence.
132
+
133
+ Precedence:
134
+ 1) The request's property config (if provided)
135
+ 2) The default property's config (if available)
136
+ 3) The single-row Privacy Center config table (legacy/global)
137
+ """
138
+ # 1) Request's property config
139
+ if property_id:
140
+ prop = Property.get_by(self.db, field="id", value=property_id)
141
+ if prop and getattr(prop, "privacy_center_config", None):
142
+ return prop.privacy_center_config # type: ignore[return-value]
143
+
144
+ # 2) Default property config
145
+ default_prop = Property.get_by(self.db, field="is_default", value=True)
146
+ if default_prop and getattr(default_prop, "privacy_center_config", None):
147
+ return default_prop.privacy_center_config # type: ignore[return-value]
148
+
149
+ # 3) Single-row global config
150
+ privacy_center_config_record = PrivacyCenterConfigModel.filter(
151
+ db=self.db, conditions=PrivacyCenterConfigModel.single_row # type: ignore[arg-type]
152
+ ).first()
153
+ if privacy_center_config_record:
154
+ return privacy_center_config_record.config # type: ignore[return-value]
155
+ return None
156
+
157
+ def _parse_privacy_center_config(
158
+ self, config_dict: Dict[str, Any]
159
+ ) -> Optional[PrivacyCenterConfigSchema]:
160
+ """Parse a config dict into a schema instance, logging and skipping on error."""
161
+ try:
162
+ return PrivacyCenterConfigSchema.model_validate(config_dict)
163
+ except Exception as exc: # pylint: disable=broad-except
108
164
  logger.warning(
109
165
  f"Could not parse Privacy Center config for location validation: {exc}"
110
166
  )
111
- return
167
+ return None
112
168
 
113
- # Find the action that matches the policy key
114
- matching_action = None
169
+ @staticmethod
170
+ def _get_matching_action(
171
+ privacy_center_config: PrivacyCenterConfigSchema, policy_key: str
172
+ ) -> Optional[Any]:
173
+ """Return the action entry matching the given policy key, if any."""
115
174
  for action in privacy_center_config.actions:
116
- if action.policy_key == privacy_request_data.policy_key:
117
- matching_action = action
118
- break
175
+ if action.policy_key == policy_key:
176
+ return action
177
+ return None
178
+
179
+ @staticmethod
180
+ def _is_required_location_missing(
181
+ action: Any, privacy_request_data: PrivacyRequestCreate
182
+ ) -> bool:
183
+ """Check if any required location fields exist without values in the request."""
184
+ if not getattr(action, "custom_privacy_request_fields", None):
185
+ return False
186
+
187
+ custom_fields = action.custom_privacy_request_fields
188
+ for field_name, field_config in custom_fields.items():
189
+ if not isinstance(field_config, LocationCustomPrivacyRequestField):
190
+ continue
191
+ if not getattr(field_config, "required", False):
192
+ continue
119
193
 
120
- if not matching_action or not matching_action.custom_privacy_request_fields:
121
- # No matching action or no custom fields defined
122
- return
194
+ # Check if this location field has a value in the request custom fields
195
+ field_has_value = False
196
+ if privacy_request_data.custom_privacy_request_fields:
197
+ field_data = privacy_request_data.custom_privacy_request_fields.get(
198
+ field_name
199
+ )
200
+ if field_data and getattr(field_data, "value", None):
201
+ field_has_value = True
202
+
203
+ if not field_has_value:
204
+ return True
123
205
 
124
- # Check if any location fields are required
125
- for (
126
- field_name,
127
- field_config,
128
- ) in matching_action.custom_privacy_request_fields.items():
129
- if isinstance(field_config, LocationCustomPrivacyRequestField):
130
- # This is a location field - check if it's required
131
- if field_config.required:
132
- # Check if this field has a value in the request
133
- field_has_value = False
134
- if privacy_request_data.custom_privacy_request_fields:
135
- field_data = (
136
- privacy_request_data.custom_privacy_request_fields.get(
137
- field_name
138
- )
139
- )
140
- if (
141
- field_data
142
- and hasattr(field_data, "value")
143
- and field_data.value
144
- ):
145
- field_has_value = True
146
-
147
- if not field_has_value:
148
- raise PrivacyRequestError(
149
- f"Location is required for field '{field_name}' but was not provided",
150
- privacy_request_data.model_dump(mode="json"),
151
- )
206
+ return False
152
207
 
153
208
  # pylint: disable=too-many-branches
154
209
  def create_privacy_request(
@@ -1 +1 @@
1
- <!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link data-next-font="" rel="preconnect" href="/" crossorigin="anonymous"/><link rel="preload" href="/_next/static/css/64fac6fb884435c2.css" as="style"/><link rel="stylesheet" href="/_next/static/css/64fac6fb884435c2.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-2766492c5dbceb0a.js" defer=""></script><script src="/_next/static/chunks/framework-c92fc3344e6fd165.js" defer=""></script><script src="/_next/static/chunks/main-090643377c8254e6.js" defer=""></script><script src="/_next/static/chunks/pages/_app-a77584f9ad3334af.js" defer=""></script><script src="/_next/static/chunks/pages/404-2eb8aed4939f1142.js" defer=""></script><script src="/_next/static/Iszit6QyBe_fIacNxpyuQ/_buildManifest.js" defer=""></script><script src="/_next/static/Iszit6QyBe_fIacNxpyuQ/_ssgManifest.js" defer=""></script><style>.data-ant-cssinjs-cache-path{content:"";}</style></head><body><div id="__next"><div style="height:100%;display:flex"></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/404","query":{},"buildId":"Iszit6QyBe_fIacNxpyuQ","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
1
+ <!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link data-next-font="" rel="preconnect" href="/" crossorigin="anonymous"/><link rel="preload" href="/_next/static/css/64fac6fb884435c2.css" as="style"/><link rel="stylesheet" href="/_next/static/css/64fac6fb884435c2.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-2766492c5dbceb0a.js" defer=""></script><script src="/_next/static/chunks/framework-c92fc3344e6fd165.js" defer=""></script><script src="/_next/static/chunks/main-090643377c8254e6.js" defer=""></script><script src="/_next/static/chunks/pages/_app-a77584f9ad3334af.js" defer=""></script><script src="/_next/static/chunks/pages/404-2eb8aed4939f1142.js" defer=""></script><script src="/_next/static/IPOgh7BMBX7b_r8-scpgv/_buildManifest.js" defer=""></script><script src="/_next/static/IPOgh7BMBX7b_r8-scpgv/_ssgManifest.js" defer=""></script><style>.data-ant-cssinjs-cache-path{content:"";}</style></head><body><div id="__next"><div style="height:100%;display:flex"></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/404","query":{},"buildId":"IPOgh7BMBX7b_r8-scpgv","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
@@ -1 +1 @@
1
- self.__BUILD_MANIFEST=function(s,e,t,a,c,n,i,d,o,r,p,g,u,f,m,j,k,b,h,y,l,v,I,F,x,_,w,U,q,N,A,S,B,C,z,D,E,L,M,T,P,G,H,J,K,O,Q,R,V,W,X,Y,Z,$,ss,se,st,sa){return{__rewrites:{afterFiles:[],beforeFiles:[],fallback:[]},"/":[q,"static/chunks/pages/index-b74d1e8608ae5b5d.js"],"/404":["static/chunks/pages/404-2eb8aed4939f1142.js"],"/_error":["static/chunks/pages/_error-bede3a8288930dcf.js"],"/add-systems":[s,q,"static/chunks/pages/add-systems-58920afe2b67f952.js"],"/add-systems/manual":[e,s,t,a,n,u,c,i,r,f,m,l,N,A,"static/chunks/pages/add-systems/manual-75e99306393938e8.js"],"/add-systems/multiple":[r,j,S,"static/chunks/pages/add-systems/multiple-2ca59996860a33c5.js"],"/consent":["static/chunks/pages/consent-d2bf72508c3cad55.js"],"/consent/configure":[r,j,"static/chunks/pages/consent/configure-fb5017ff5fa54fcc.js"],"/consent/configure/add-vendors":[r,j,S,"static/chunks/pages/consent/configure/add-vendors-7a258b7ecd6da4b8.js"],"/consent/privacy-experience":[u,B,"static/chunks/pages/consent/privacy-experience-92182be6603c2842.js"],"/consent/privacy-experience/new":[e,d,k,b,C,"static/chunks/pages/consent/privacy-experience/new-e74cb5ea87f15b40.js"],"/consent/privacy-experience/[id]":[e,d,k,b,C,"static/chunks/pages/consent/privacy-experience/[id]-fd41ffaff543e05a.js"],"/consent/privacy-notices":[B,"static/chunks/pages/consent/privacy-notices-ab54b19609bff325.js"],"/consent/privacy-notices/new":[e,d,k,b,z,"static/chunks/pages/consent/privacy-notices/new-0e5e38bbcfe59fd2.js"],"/consent/privacy-notices/[id]":[e,d,k,b,z,"static/chunks/pages/consent/privacy-notices/[id]-9c23fbe813c997d0.js"],"/consent/properties":[h,D,"static/chunks/pages/consent/properties-069f4e3ee96ebf77.js"],"/consent/reporting":[s,"static/chunks/2150-930ffaf2c4718edc.js","static/chunks/pages/consent/reporting-ae4909cad9b67822.js"],"/data-catalog":[e,t,a,c,"static/css/95ac327e5d70148d.css","static/chunks/pages/data-catalog-56fd0f3e465e52b6.js"],"/data-catalog/[systemId]/projects":[e,t,a,c,v,o,"static/chunks/pages/data-catalog/[systemId]/projects-99573a1ee3ef8f4c.js"],"/data-catalog/[systemId]/projects/[projectUrn]":[E,"static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]-4a1af12d2d7cd660.js"],"/data-catalog/[systemId]/projects/[projectUrn]/[resourceUrn]":[e,s,t,a,c,v,L,o,"static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]/[resourceUrn]-2fa4b3a58f75f81d.js"],"/data-catalog/[systemId]/resources":[E,"static/chunks/pages/data-catalog/[systemId]/resources-6e429b7511028d60.js"],"/data-catalog/[systemId]/resources/[resourceUrn]":[e,s,t,a,c,v,L,o,"static/chunks/pages/data-catalog/[systemId]/resources/[resourceUrn]-5b31e3d7727b917a.js"],"/data-discovery/action-center":[I,"static/chunks/pages/data-discovery/action-center-040813022f0890c9.js"],"/data-discovery/action-center/[monitorId]":[e,s,t,a,i,I,M,F,"static/chunks/pages/data-discovery/action-center/[monitorId]-0d512528b498d75c.js"],"/data-discovery/action-center/[monitorId]/[systemId]":[e,s,t,a,i,r,l,I,M,"static/css/23cf870196941c9a.css","static/chunks/pages/data-discovery/action-center/[monitorId]/[systemId]-2e1e2b7808d3b21f.js"],"/data-discovery/activity":[s,g,"static/chunks/pages/data-discovery/activity-2635ef588bf06145.js"],"/data-discovery/detection":[s,i,g,T,"static/chunks/pages/data-discovery/detection-11b07cf2d91b17ef.js"],"/data-discovery/detection/[resourceUrn]":[s,i,g,T,"static/chunks/pages/data-discovery/detection/[resourceUrn]-844a8de0d1b506e2.js"],"/data-discovery/discovery":[e,s,t,a,c,i,g,P,o,"static/chunks/pages/data-discovery/discovery-ed4723e1b67d890e.js"],"/data-discovery/discovery/[resourceUrn]":[e,s,t,a,c,i,g,P,o,"static/chunks/pages/data-discovery/discovery/[resourceUrn]-5525cf287d4ab493.js"],"/datamap":[s,a,"static/chunks/255-1bc0cbef7a59cdc6.js",f,G,"static/chunks/pages/datamap-15616bea02397ef4.js"],"/dataset":[p,y,"static/chunks/pages/dataset-0e3a6ac4797ffbbb.js"],"/dataset/new":[s,p,y,"static/chunks/pages/dataset/new-ea198c4a7869f402.js"],"/dataset/[datasetId]":["static/chunks/9729-fcf6ff4e3534e4a8.js",x,"static/chunks/pages/dataset/[datasetId]-60a4a9eb4aab4c11.js"],"/dataset/[datasetId]/[collectionName]":[e,t,a,n,c,x,o,"static/chunks/pages/dataset/[datasetId]/[collectionName]-9463af37079762d0.js"],"/dataset/[datasetId]/[collectionName]/[...subfieldNames]":[e,t,a,n,c,x,o,"static/chunks/pages/dataset/[datasetId]/[collectionName]/[...subfieldNames]-d4031e438c363fff.js"],"/datastore-connection":["static/css/5f393dea1c0d031c.css","static/chunks/pages/datastore-connection-223c2d1ded51bfb1.js"],"/datastore-connection/new":[e,s,n,p,u,H,y,J,"static/chunks/pages/datastore-connection/new-b6838162200141b3.js"],"/datastore-connection/[id]":[e,s,n,p,H,y,J,"static/chunks/pages/datastore-connection/[id]-816e02b6cbe4a684.js"],"/fides-js-docs":["static/chunks/2fbcc6de-a6c61724c327e9fa.js","static/chunks/e3251fe7-5777b5d778e6fffa.js",e,t,a,n,p,"static/chunks/5619-9b50cec521203989.js",K,"static/css/0b4b1b65cc874774.css","static/chunks/5596-29a7c8322530b7cf.js","static/chunks/pages/fides-js-docs-1f4335dca5c09860.js"],"/integrations":[e,s,t,a,n,d,O,m,Q,o,"static/chunks/pages/integrations-14120a529d7dac27.js"],"/integrations/[id]":[e,s,t,a,n,d,O,i,m,Q,o,"static/chunks/pages/integrations/[id]-01e025f878ba806c.js"],"/login":["static/chunks/pages/login-0cb0eb44bf2dd24c.js"],"/login/[provider]":["static/chunks/pages/login/[provider]-c58beef131c3a82d.js"],"/messaging":[e,t,"static/chunks/346-aa3b88efb85f2e28.js","static/chunks/pages/messaging-b5f7d6afdecd013d.js"],"/messaging/add-template":[R,"static/chunks/pages/messaging/add-template-e3f93462a08251bf.js"],"/messaging/[id]":[R,"static/chunks/pages/messaging/[id]-e8d2140787045acd.js"],"/poc/ant-components":["static/chunks/pages/poc/ant-components-248ad9f65a872442.js"],"/poc/form-experiments/AntForm":["static/chunks/pages/poc/form-experiments/AntForm-aedb66a62042b10a.js"],"/poc/form-experiments/FormikAntFormItem":["static/chunks/pages/poc/form-experiments/FormikAntFormItem-018df38b7cd77fdb.js"],"/poc/form-experiments/FormikControlled":["static/chunks/pages/poc/form-experiments/FormikControlled-6ca9099d03aab817.js"],"/poc/form-experiments/FormikField":["static/chunks/pages/poc/form-experiments/FormikField-0f2c90786ea005a4.js"],"/poc/form-experiments/FormikSpreadField":[V,"static/chunks/pages/poc/form-experiments/FormikSpreadField-af097d661f6abcf4.js"],"/poc/forms":[V,"static/chunks/pages/poc/forms-200b51a725f8b2d1.js"],"/poc/table-migration":[r,j,"static/chunks/pages/poc/table-migration-29fb7b39f8962650.js"],"/privacy-requests":[e,s,"static/chunks/3550-83cb70e80cbe41ba.js",W,"static/chunks/pages/privacy-requests-7af00f72cf694077.js"],"/privacy-requests/configure":["static/chunks/pages/privacy-requests/configure-8f577df28ebca869.js"],"/privacy-requests/configure/storage":[s,"static/chunks/pages/privacy-requests/configure/storage-648d775d0fce49dc.js"],"/privacy-requests/[id]":[s,W,"static/css/073713cd1eddda79.css","static/chunks/pages/privacy-requests/[id]-7dac2302f573f5ee.js"],"/properties":[h,D,"static/chunks/pages/properties-08472b2a6bf1d392.js"],"/properties/add-property":[h,X,"static/chunks/pages/properties/add-property-8964c2300206bc89.js"],"/properties/[id]":[h,X,"static/chunks/pages/properties/[id]-57a75c7e9659271a.js"],"/reporting/datamap":[e,s,t,a,K,f,_,G,"static/chunks/pages/reporting/datamap-f7753e9effae3816.js"],"/settings/about":[Y,"static/chunks/pages/settings/about-6c4904c157477285.js"],"/settings/about/alpha":[Y,"static/chunks/pages/settings/about/alpha-68eaac2d79133679.js"],"/settings/consent":["static/chunks/pages/settings/consent-e5d781b28f8e29c8.js"],"/settings/consent/[configuration_id]/[purpose_id]":["static/chunks/pages/settings/consent/[configuration_id]/[purpose_id]-f3e6e74e0efb005c.js"],"/settings/custom-fields":[s,"static/chunks/pages/settings/custom-fields-5edfec10a945ca43.js"],"/settings/custom-fields/new":[e,Z,$,"static/chunks/pages/settings/custom-fields/new-469ad83c8cfa1290.js"],"/settings/custom-fields/[id]":[e,Z,$,"static/chunks/pages/settings/custom-fields/[id]-bd1042a0e9be6aff.js"],"/settings/domain-records":["static/chunks/pages/settings/domain-records-744f669431b84f71.js"],"/settings/domains":["static/chunks/pages/settings/domains-a3275554ffe8e640.js"],"/settings/email-templates":["static/chunks/pages/settings/email-templates-604790638c656fbd.js"],"/settings/locations":[ss,F,"static/chunks/pages/settings/locations-be2a885150adc133.js"],"/settings/messaging-providers":[s,w,"static/chunks/pages/settings/messaging-providers-8d92be437793c96f.js"],"/settings/messaging-providers/new":[e,s,t,d,se,w,st,"static/chunks/pages/settings/messaging-providers/new-8bf1821722b082e9.js"],"/settings/messaging-providers/[key]":[e,s,t,d,se,w,st,"static/chunks/pages/settings/messaging-providers/[key]-77239269acc2d31a.js"],"/settings/organization":["static/chunks/pages/settings/organization-3c86162afe9759df.js"],"/settings/privacy-requests":[s,"static/chunks/pages/settings/privacy-requests-8cbdfd08e0fa88fb.js"],"/settings/regulations":[ss,F,"static/chunks/pages/settings/regulations-4fe3b90747d885e5.js"],"/systems":[e,s,t,a,"static/chunks/1896-49010da5c2705fc5.js",_,"static/chunks/pages/systems-0f1d833282f09684.js"],"/systems/configure/[id]":[e,s,t,a,n,u,c,i,r,f,m,l,N,A,"static/chunks/pages/systems/configure/[id]-547c6ef0ad52b85d.js"],"/systems/configure/[id]/test-datasets":[p,"static/chunks/pages/systems/configure/[id]/test-datasets-2deb6becece69d46.js"],"/taxonomy":["static/chunks/678d4732-50255cc09048e643.js",e,s,t,a,d,"static/chunks/6148-59a59d5c5925344f.js",_,"static/css/34a7eb08b86ddb57.css","static/chunks/pages/taxonomy-a8cfa7de4948b374.js"],"/user-management":[U,"static/chunks/pages/user-management-562624e5461083ec.js"],"/user-management/new":[U,sa,"static/chunks/pages/user-management/new-629c88e90699369b.js"],"/user-management/profile/[id]":[U,sa,"static/chunks/pages/user-management/profile/[id]-98f737e735eaa0f0.js"],sortedPages:["/","/404","/_app","/_error","/add-systems","/add-systems/manual","/add-systems/multiple","/consent","/consent/configure","/consent/configure/add-vendors","/consent/privacy-experience","/consent/privacy-experience/new","/consent/privacy-experience/[id]","/consent/privacy-notices","/consent/privacy-notices/new","/consent/privacy-notices/[id]","/consent/properties","/consent/reporting","/data-catalog","/data-catalog/[systemId]/projects","/data-catalog/[systemId]/projects/[projectUrn]","/data-catalog/[systemId]/projects/[projectUrn]/[resourceUrn]","/data-catalog/[systemId]/resources","/data-catalog/[systemId]/resources/[resourceUrn]","/data-discovery/action-center","/data-discovery/action-center/[monitorId]","/data-discovery/action-center/[monitorId]/[systemId]","/data-discovery/activity","/data-discovery/detection","/data-discovery/detection/[resourceUrn]","/data-discovery/discovery","/data-discovery/discovery/[resourceUrn]","/datamap","/dataset","/dataset/new","/dataset/[datasetId]","/dataset/[datasetId]/[collectionName]","/dataset/[datasetId]/[collectionName]/[...subfieldNames]","/datastore-connection","/datastore-connection/new","/datastore-connection/[id]","/fides-js-docs","/integrations","/integrations/[id]","/login","/login/[provider]","/messaging","/messaging/add-template","/messaging/[id]","/poc/ant-components","/poc/form-experiments/AntForm","/poc/form-experiments/FormikAntFormItem","/poc/form-experiments/FormikControlled","/poc/form-experiments/FormikField","/poc/form-experiments/FormikSpreadField","/poc/forms","/poc/table-migration","/privacy-requests","/privacy-requests/configure","/privacy-requests/configure/storage","/privacy-requests/[id]","/properties","/properties/add-property","/properties/[id]","/reporting/datamap","/settings/about","/settings/about/alpha","/settings/consent","/settings/consent/[configuration_id]/[purpose_id]","/settings/custom-fields","/settings/custom-fields/new","/settings/custom-fields/[id]","/settings/domain-records","/settings/domains","/settings/email-templates","/settings/locations","/settings/messaging-providers","/settings/messaging-providers/new","/settings/messaging-providers/[key]","/settings/organization","/settings/privacy-requests","/settings/regulations","/systems","/systems/configure/[id]","/systems/configure/[id]/test-datasets","/taxonomy","/user-management","/user-management/new","/user-management/profile/[id]"]}}("static/chunks/431-78bf05f35d7eec4f.js","static/chunks/8765-f622a35b40a7ec63.js","static/chunks/9278-08cc704317fe535e.js","static/chunks/5163-e682273cd76a7d07.js","static/chunks/409-c1256ecda1b15db6.js","static/chunks/699-8ca44b0de9fa20f0.js","static/chunks/7045-f15044a4d4525946.js","static/chunks/3662-f6a1ddca5ee42076.js","static/css/d2d4e9a6923e6730.css","static/chunks/401-ffe4e8436e1eceb9.js","static/chunks/6527-0eed08abe252a918.js","static/chunks/8002-ed832921ad190832.js","static/chunks/5277-e8a036319456127f.js","static/chunks/7218-e2983b96b95e33b4.js","static/chunks/6416-0ccadfefcdad00cc.js","static/chunks/3923-98bea73b618292aa.js","static/chunks/6419-9b3a86af57c86791.js","static/chunks/6084-d0943ee628bf4388.js","static/chunks/2040-fdecc41a18e40bdc.js","static/chunks/5574-c31ea831371610d5.js","static/chunks/3585-efd5d41f08e180c4.js","static/chunks/6882-10296485ec326e6b.js","static/chunks/7725-f2a7be705b75dcc3.js","static/css/10994e916bc9a00a.css","static/chunks/9226-4a7027057f55ca2a.js","static/chunks/4718-6585c97c26647e65.js","static/chunks/502-d3ecae97b67befbd.js","static/chunks/7476-d055aa931da47ac0.js","static/css/972dc7eef106ee7c.css","static/chunks/3700-08e0703b1ef770da.js","static/css/304c6f148886a8d4.css","static/chunks/796-02086581996a0548.js","static/chunks/6853-7004a8c420b1ca02.js","static/chunks/1817-ca6473f31a67a804.js","static/chunks/6954-4b24e1731c1cc3b3.js","static/chunks/5783-d119cb132abd8a91.js","static/chunks/3872-04d3afbfa41a7782.js","static/chunks/3855-12ee1dfbbe47fd28.js","static/chunks/7929-0fd0d4948bc8d70e.js","static/chunks/5309-3b6cf0cc9d0c6a83.js","static/chunks/9046-2a332fe338535c84.js","static/chunks/504-88caa30c03374e9b.js","static/chunks/1467-8808ec8836e033f9.js","static/chunks/4608-a9941d0c236ebca1.js","static/chunks/9187-7438242f0d380bb0.js","static/chunks/1316-2606e19807c08aa5.js","static/chunks/155-047c3806cc41295e.js","static/chunks/7630-d0d3a0fe3f95e971.js","static/chunks/2921-66f65496c3a09316.js","static/chunks/4558-de5ced790b3380dc.js","static/chunks/5185-51eaa78e3ed6bfb7.js","static/chunks/1115-90baef2a89f361ad.js","static/chunks/2962-e92d525bf570a9a3.js","static/chunks/5643-10a36584c399526c.js","static/chunks/9826-ccedc28e978ca9e1.js","static/chunks/9037-453224ba3ee65b13.js","static/chunks/7158-04745cc8d684b2e7.js","static/chunks/3696-90c8b336bbc46782.js"),self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
1
+ self.__BUILD_MANIFEST=function(s,e,t,a,c,n,i,d,o,r,p,g,u,f,m,j,k,b,h,y,l,v,I,F,x,_,w,U,q,N,A,S,B,C,z,D,E,L,M,T,P,G,H,J,K,O,Q,R,V,W,X,Y,Z,$,ss,se,st,sa){return{__rewrites:{afterFiles:[],beforeFiles:[],fallback:[]},"/":[q,"static/chunks/pages/index-b74d1e8608ae5b5d.js"],"/404":["static/chunks/pages/404-2eb8aed4939f1142.js"],"/_error":["static/chunks/pages/_error-bede3a8288930dcf.js"],"/add-systems":[s,q,"static/chunks/pages/add-systems-58920afe2b67f952.js"],"/add-systems/manual":[e,s,t,a,n,u,c,i,r,f,m,l,N,A,"static/chunks/pages/add-systems/manual-75e99306393938e8.js"],"/add-systems/multiple":[r,j,S,"static/chunks/pages/add-systems/multiple-2ca59996860a33c5.js"],"/consent":["static/chunks/pages/consent-d2bf72508c3cad55.js"],"/consent/configure":[r,j,"static/chunks/pages/consent/configure-fb5017ff5fa54fcc.js"],"/consent/configure/add-vendors":[r,j,S,"static/chunks/pages/consent/configure/add-vendors-7a258b7ecd6da4b8.js"],"/consent/privacy-experience":[u,B,"static/chunks/pages/consent/privacy-experience-92182be6603c2842.js"],"/consent/privacy-experience/new":[e,d,k,b,C,"static/chunks/pages/consent/privacy-experience/new-e74cb5ea87f15b40.js"],"/consent/privacy-experience/[id]":[e,d,k,b,C,"static/chunks/pages/consent/privacy-experience/[id]-fd41ffaff543e05a.js"],"/consent/privacy-notices":[B,"static/chunks/pages/consent/privacy-notices-ab54b19609bff325.js"],"/consent/privacy-notices/new":[e,d,k,b,z,"static/chunks/pages/consent/privacy-notices/new-0e5e38bbcfe59fd2.js"],"/consent/privacy-notices/[id]":[e,d,k,b,z,"static/chunks/pages/consent/privacy-notices/[id]-9c23fbe813c997d0.js"],"/consent/properties":[h,D,"static/chunks/pages/consent/properties-069f4e3ee96ebf77.js"],"/consent/reporting":[s,"static/chunks/2150-930ffaf2c4718edc.js","static/chunks/pages/consent/reporting-ae4909cad9b67822.js"],"/data-catalog":[e,t,a,c,"static/css/95ac327e5d70148d.css","static/chunks/pages/data-catalog-56fd0f3e465e52b6.js"],"/data-catalog/[systemId]/projects":[e,t,a,c,v,o,"static/chunks/pages/data-catalog/[systemId]/projects-99573a1ee3ef8f4c.js"],"/data-catalog/[systemId]/projects/[projectUrn]":[E,"static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]-4a1af12d2d7cd660.js"],"/data-catalog/[systemId]/projects/[projectUrn]/[resourceUrn]":[e,s,t,a,c,v,L,o,"static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]/[resourceUrn]-2fa4b3a58f75f81d.js"],"/data-catalog/[systemId]/resources":[E,"static/chunks/pages/data-catalog/[systemId]/resources-6e429b7511028d60.js"],"/data-catalog/[systemId]/resources/[resourceUrn]":[e,s,t,a,c,v,L,o,"static/chunks/pages/data-catalog/[systemId]/resources/[resourceUrn]-5b31e3d7727b917a.js"],"/data-discovery/action-center":[I,"static/chunks/pages/data-discovery/action-center-040813022f0890c9.js"],"/data-discovery/action-center/[monitorId]":[e,s,t,a,i,I,M,F,"static/chunks/pages/data-discovery/action-center/[monitorId]-0d512528b498d75c.js"],"/data-discovery/action-center/[monitorId]/[systemId]":[e,s,t,a,i,r,l,I,M,"static/css/23cf870196941c9a.css","static/chunks/pages/data-discovery/action-center/[monitorId]/[systemId]-2e1e2b7808d3b21f.js"],"/data-discovery/activity":[s,g,"static/chunks/pages/data-discovery/activity-2635ef588bf06145.js"],"/data-discovery/detection":[s,i,g,T,"static/chunks/pages/data-discovery/detection-11b07cf2d91b17ef.js"],"/data-discovery/detection/[resourceUrn]":[s,i,g,T,"static/chunks/pages/data-discovery/detection/[resourceUrn]-844a8de0d1b506e2.js"],"/data-discovery/discovery":[e,s,t,a,c,i,g,P,o,"static/chunks/pages/data-discovery/discovery-ed4723e1b67d890e.js"],"/data-discovery/discovery/[resourceUrn]":[e,s,t,a,c,i,g,P,o,"static/chunks/pages/data-discovery/discovery/[resourceUrn]-5525cf287d4ab493.js"],"/datamap":[s,a,"static/chunks/255-1bc0cbef7a59cdc6.js",f,G,"static/chunks/pages/datamap-15616bea02397ef4.js"],"/dataset":[p,y,"static/chunks/pages/dataset-0e3a6ac4797ffbbb.js"],"/dataset/new":[s,p,y,"static/chunks/pages/dataset/new-ea198c4a7869f402.js"],"/dataset/[datasetId]":["static/chunks/9729-fcf6ff4e3534e4a8.js",x,"static/chunks/pages/dataset/[datasetId]-60a4a9eb4aab4c11.js"],"/dataset/[datasetId]/[collectionName]":[e,t,a,n,c,x,o,"static/chunks/pages/dataset/[datasetId]/[collectionName]-9463af37079762d0.js"],"/dataset/[datasetId]/[collectionName]/[...subfieldNames]":[e,t,a,n,c,x,o,"static/chunks/pages/dataset/[datasetId]/[collectionName]/[...subfieldNames]-d4031e438c363fff.js"],"/datastore-connection":["static/css/5f393dea1c0d031c.css","static/chunks/pages/datastore-connection-223c2d1ded51bfb1.js"],"/datastore-connection/new":[e,s,n,p,u,H,y,J,"static/chunks/pages/datastore-connection/new-b6838162200141b3.js"],"/datastore-connection/[id]":[e,s,n,p,H,y,J,"static/chunks/pages/datastore-connection/[id]-816e02b6cbe4a684.js"],"/fides-js-docs":["static/chunks/2fbcc6de-a6c61724c327e9fa.js","static/chunks/e3251fe7-5777b5d778e6fffa.js",e,t,a,n,p,"static/chunks/5619-9b50cec521203989.js",K,"static/css/0b4b1b65cc874774.css","static/chunks/5596-29a7c8322530b7cf.js","static/chunks/pages/fides-js-docs-1f4335dca5c09860.js"],"/integrations":[e,s,t,a,n,d,O,m,Q,o,"static/chunks/pages/integrations-14120a529d7dac27.js"],"/integrations/[id]":[e,s,t,a,n,d,O,i,m,Q,o,"static/chunks/pages/integrations/[id]-01e025f878ba806c.js"],"/login":["static/chunks/pages/login-0cb0eb44bf2dd24c.js"],"/login/[provider]":["static/chunks/pages/login/[provider]-c58beef131c3a82d.js"],"/messaging":[e,t,"static/chunks/346-aa3b88efb85f2e28.js","static/chunks/pages/messaging-b5f7d6afdecd013d.js"],"/messaging/add-template":[R,"static/chunks/pages/messaging/add-template-e3f93462a08251bf.js"],"/messaging/[id]":[R,"static/chunks/pages/messaging/[id]-e8d2140787045acd.js"],"/poc/ant-components":["static/chunks/pages/poc/ant-components-248ad9f65a872442.js"],"/poc/form-experiments/AntForm":["static/chunks/pages/poc/form-experiments/AntForm-aedb66a62042b10a.js"],"/poc/form-experiments/FormikAntFormItem":["static/chunks/pages/poc/form-experiments/FormikAntFormItem-018df38b7cd77fdb.js"],"/poc/form-experiments/FormikControlled":["static/chunks/pages/poc/form-experiments/FormikControlled-6ca9099d03aab817.js"],"/poc/form-experiments/FormikField":["static/chunks/pages/poc/form-experiments/FormikField-0f2c90786ea005a4.js"],"/poc/form-experiments/FormikSpreadField":[V,"static/chunks/pages/poc/form-experiments/FormikSpreadField-af097d661f6abcf4.js"],"/poc/forms":[V,"static/chunks/pages/poc/forms-200b51a725f8b2d1.js"],"/poc/table-migration":[r,j,"static/chunks/pages/poc/table-migration-29fb7b39f8962650.js"],"/privacy-requests":[e,s,"static/chunks/3550-83cb70e80cbe41ba.js",W,"static/chunks/pages/privacy-requests-7af00f72cf694077.js"],"/privacy-requests/configure":["static/chunks/pages/privacy-requests/configure-8f577df28ebca869.js"],"/privacy-requests/configure/storage":[s,"static/chunks/pages/privacy-requests/configure/storage-648d775d0fce49dc.js"],"/privacy-requests/[id]":[s,W,"static/css/073713cd1eddda79.css","static/chunks/pages/privacy-requests/[id]-7dac2302f573f5ee.js"],"/properties":[h,D,"static/chunks/pages/properties-08472b2a6bf1d392.js"],"/properties/add-property":[h,X,"static/chunks/pages/properties/add-property-8964c2300206bc89.js"],"/properties/[id]":[h,X,"static/chunks/pages/properties/[id]-57a75c7e9659271a.js"],"/reporting/datamap":[e,s,t,a,K,f,_,G,"static/chunks/pages/reporting/datamap-f7753e9effae3816.js"],"/settings/about":[Y,"static/chunks/pages/settings/about-6c4904c157477285.js"],"/settings/about/alpha":[Y,"static/chunks/pages/settings/about/alpha-68eaac2d79133679.js"],"/settings/consent":["static/chunks/pages/settings/consent-e5d781b28f8e29c8.js"],"/settings/consent/[configuration_id]/[purpose_id]":["static/chunks/pages/settings/consent/[configuration_id]/[purpose_id]-f3e6e74e0efb005c.js"],"/settings/custom-fields":[s,"static/chunks/pages/settings/custom-fields-5edfec10a945ca43.js"],"/settings/custom-fields/new":[e,Z,$,"static/chunks/pages/settings/custom-fields/new-469ad83c8cfa1290.js"],"/settings/custom-fields/[id]":[e,Z,$,"static/chunks/pages/settings/custom-fields/[id]-bd1042a0e9be6aff.js"],"/settings/domain-records":["static/chunks/pages/settings/domain-records-744f669431b84f71.js"],"/settings/domains":["static/chunks/pages/settings/domains-a3275554ffe8e640.js"],"/settings/email-templates":["static/chunks/pages/settings/email-templates-604790638c656fbd.js"],"/settings/locations":[ss,F,"static/chunks/pages/settings/locations-be2a885150adc133.js"],"/settings/messaging-providers":[s,w,"static/chunks/pages/settings/messaging-providers-8d92be437793c96f.js"],"/settings/messaging-providers/new":[e,s,t,d,se,w,st,"static/chunks/pages/settings/messaging-providers/new-8bf1821722b082e9.js"],"/settings/messaging-providers/[key]":[e,s,t,d,se,w,st,"static/chunks/pages/settings/messaging-providers/[key]-77239269acc2d31a.js"],"/settings/organization":["static/chunks/pages/settings/organization-3c86162afe9759df.js"],"/settings/privacy-requests":[s,"static/chunks/pages/settings/privacy-requests-8cbdfd08e0fa88fb.js"],"/settings/regulations":[ss,F,"static/chunks/pages/settings/regulations-4fe3b90747d885e5.js"],"/systems":[e,s,t,a,"static/chunks/1896-49010da5c2705fc5.js",_,"static/chunks/pages/systems-0f1d833282f09684.js"],"/systems/configure/[id]":[e,s,t,a,n,u,c,i,r,f,m,l,N,A,"static/chunks/pages/systems/configure/[id]-547c6ef0ad52b85d.js"],"/systems/configure/[id]/test-datasets":[p,"static/chunks/pages/systems/configure/[id]/test-datasets-2deb6becece69d46.js"],"/taxonomy":["static/chunks/678d4732-50255cc09048e643.js",e,s,t,a,d,"static/chunks/6148-59a59d5c5925344f.js",_,"static/css/34a7eb08b86ddb57.css","static/chunks/pages/taxonomy-a8cfa7de4948b374.js"],"/user-management":[U,"static/chunks/pages/user-management-562624e5461083ec.js"],"/user-management/new":[U,sa,"static/chunks/pages/user-management/new-629c88e90699369b.js"],"/user-management/profile/[id]":[U,sa,"static/chunks/pages/user-management/profile/[id]-98f737e735eaa0f0.js"],sortedPages:["/","/404","/_app","/_error","/add-systems","/add-systems/manual","/add-systems/multiple","/consent","/consent/configure","/consent/configure/add-vendors","/consent/privacy-experience","/consent/privacy-experience/new","/consent/privacy-experience/[id]","/consent/privacy-notices","/consent/privacy-notices/new","/consent/privacy-notices/[id]","/consent/properties","/consent/reporting","/data-catalog","/data-catalog/[systemId]/projects","/data-catalog/[systemId]/projects/[projectUrn]","/data-catalog/[systemId]/projects/[projectUrn]/[resourceUrn]","/data-catalog/[systemId]/resources","/data-catalog/[systemId]/resources/[resourceUrn]","/data-discovery/action-center","/data-discovery/action-center/[monitorId]","/data-discovery/action-center/[monitorId]/[systemId]","/data-discovery/activity","/data-discovery/detection","/data-discovery/detection/[resourceUrn]","/data-discovery/discovery","/data-discovery/discovery/[resourceUrn]","/datamap","/dataset","/dataset/new","/dataset/[datasetId]","/dataset/[datasetId]/[collectionName]","/dataset/[datasetId]/[collectionName]/[...subfieldNames]","/datastore-connection","/datastore-connection/new","/datastore-connection/[id]","/fides-js-docs","/integrations","/integrations/[id]","/login","/login/[provider]","/messaging","/messaging/add-template","/messaging/[id]","/poc/ant-components","/poc/form-experiments/AntForm","/poc/form-experiments/FormikAntFormItem","/poc/form-experiments/FormikControlled","/poc/form-experiments/FormikField","/poc/form-experiments/FormikSpreadField","/poc/forms","/poc/table-migration","/privacy-requests","/privacy-requests/configure","/privacy-requests/configure/storage","/privacy-requests/[id]","/properties","/properties/add-property","/properties/[id]","/reporting/datamap","/settings/about","/settings/about/alpha","/settings/consent","/settings/consent/[configuration_id]/[purpose_id]","/settings/custom-fields","/settings/custom-fields/new","/settings/custom-fields/[id]","/settings/domain-records","/settings/domains","/settings/email-templates","/settings/locations","/settings/messaging-providers","/settings/messaging-providers/new","/settings/messaging-providers/[key]","/settings/organization","/settings/privacy-requests","/settings/regulations","/systems","/systems/configure/[id]","/systems/configure/[id]/test-datasets","/taxonomy","/user-management","/user-management/new","/user-management/profile/[id]"]}}("static/chunks/431-78bf05f35d7eec4f.js","static/chunks/8765-f622a35b40a7ec63.js","static/chunks/9278-08cc704317fe535e.js","static/chunks/5163-e682273cd76a7d07.js","static/chunks/409-c1256ecda1b15db6.js","static/chunks/699-8ca44b0de9fa20f0.js","static/chunks/7045-f15044a4d4525946.js","static/chunks/3662-f6a1ddca5ee42076.js","static/css/d2d4e9a6923e6730.css","static/chunks/401-ffe4e8436e1eceb9.js","static/chunks/6527-0eed08abe252a918.js","static/chunks/8002-ed832921ad190832.js","static/chunks/5277-e8a036319456127f.js","static/chunks/7218-e2983b96b95e33b4.js","static/chunks/6416-0ccadfefcdad00cc.js","static/chunks/3923-98bea73b618292aa.js","static/chunks/6419-9b3a86af57c86791.js","static/chunks/6084-d0943ee628bf4388.js","static/chunks/2040-fdecc41a18e40bdc.js","static/chunks/5574-c31ea831371610d5.js","static/chunks/3585-f728d32fda6f1ac1.js","static/chunks/6882-10296485ec326e6b.js","static/chunks/7725-f2a7be705b75dcc3.js","static/css/10994e916bc9a00a.css","static/chunks/9226-4a7027057f55ca2a.js","static/chunks/4718-6585c97c26647e65.js","static/chunks/502-d3ecae97b67befbd.js","static/chunks/7476-d055aa931da47ac0.js","static/css/972dc7eef106ee7c.css","static/chunks/3700-08e0703b1ef770da.js","static/css/304c6f148886a8d4.css","static/chunks/796-02086581996a0548.js","static/chunks/6853-7004a8c420b1ca02.js","static/chunks/1817-ca6473f31a67a804.js","static/chunks/6954-4b24e1731c1cc3b3.js","static/chunks/5783-d119cb132abd8a91.js","static/chunks/3872-04d3afbfa41a7782.js","static/chunks/3855-12ee1dfbbe47fd28.js","static/chunks/7929-0fd0d4948bc8d70e.js","static/chunks/5309-3b6cf0cc9d0c6a83.js","static/chunks/9046-2a332fe338535c84.js","static/chunks/504-88caa30c03374e9b.js","static/chunks/1467-8808ec8836e033f9.js","static/chunks/4608-a9941d0c236ebca1.js","static/chunks/9187-7438242f0d380bb0.js","static/chunks/1316-2606e19807c08aa5.js","static/chunks/155-047c3806cc41295e.js","static/chunks/7630-d0d3a0fe3f95e971.js","static/chunks/2921-66f65496c3a09316.js","static/chunks/4558-de5ced790b3380dc.js","static/chunks/5185-51eaa78e3ed6bfb7.js","static/chunks/1115-90baef2a89f361ad.js","static/chunks/2962-e92d525bf570a9a3.js","static/chunks/5643-10a36584c399526c.js","static/chunks/9826-ccedc28e978ca9e1.js","static/chunks/9037-453224ba3ee65b13.js","static/chunks/7158-04745cc8d684b2e7.js","static/chunks/3696-90c8b336bbc46782.js"),self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3585],{66726:function(a,e,n){var i=n(11611),t=n(82846),s=n(91936),r=Math.max,_=Math.min;a.exports=function(a,e,n){var o,l,F,d,u,c,m=0,S=!1,h=!1,C=!0;if("function"!=typeof a)throw TypeError("Expected a function");function g(e){var n=o,i=l;return o=l=void 0,m=e,d=a.apply(i,n)}function y(a){var n=a-c,i=a-m;return void 0===c||n>=e||n<0||h&&i>=F}function p(){var a,n,i,s=t();if(y(s))return f(s);u=setTimeout(p,(a=s-c,n=s-m,i=e-a,h?_(i,F-n):i))}function f(a){return(u=void 0,C&&o)?g(a):(o=l=void 0,d)}function v(){var a,n=t(),i=y(n);if(o=arguments,l=this,c=n,i){if(void 0===u)return m=a=c,u=setTimeout(p,e),S?g(a):d;if(h)return clearTimeout(u),u=setTimeout(p,e),g(c)}return void 0===u&&(u=setTimeout(p,e)),d}return e=s(e)||0,i(n)&&(S=!!n.leading,F=(h="maxWait"in n)?r(s(n.maxWait)||0,e):F,C="trailing"in n?!!n.trailing:C),v.cancel=function(){void 0!==u&&clearTimeout(u),m=0,o=c=l=u=void 0},v.flush=function(){return void 0===u?d:f(t())},v}},82846:function(a,e,n){var i=n(77400);a.exports=function(){return i.Date.now()}},30952:function(a,e,n){"use strict";n.d(e,{f:function(){return o}});var i=n(24246),t=n(66726),s=n.n(t),r=n(27378),_=n(26917);let o=a=>{let{value:e,onChange:n,placeholder:t,...o}=a,[l,F]=(0,r.useState)(e);(0,r.useEffect)(()=>{F(e||"")},[e]);let d=s()(n,500),u=(0,r.useCallback)(a=>{F(a),d(a)},[]);return(0,i.jsx)(_.Z,{value:l,onChange:u,onClear:()=>{F(""),n("")},placeholder:t,...o})}},26089:function(a,e,n){"use strict";var i=n(24246),t=n(96306),s=n(99830),r=n.n(s);e.Z=a=>{let{onClick:e,children:n}=a;return(0,i.jsx)(t.wpx,{onClick:e,type:"link",role:"link",size:"small",className:r().toastLink,children:n})}},29850:function(a,e,n){"use strict";n.d(e,{R:function(){return F}});var i=n(24246),t=n(96306),s=n(27378),r=n(65450);let _=a=>{let{children:e,className:n,style:s,...r}=a;return(0,i.jsx)(t.wpx,{...r,type:"text",className:"w-full justify-start ".concat(n),style:{fontWeight:600,padding:"var(--ant-select-option-padding)",backgroundColor:"var(--ant-select-option-selected-bg)",...s},children:e})};var o=n(16394);let l=(a,e)=>(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(_,{onClick:e,"data-testid":"add-new-system",id:"add-new-system",children:"Add new system +"}),a]}),F=a=>{var e;let{onAddSystem:n,..._}=a,[F,d]=(0,s.useState)(),{data:u,isFetching:c}=(0,r.xF)({page:1,size:25,search:F||void 0}),m=null==u?void 0:null===(e=u.items)||void 0===e?void 0:e.map(a=>({value:a.fides_key,label:a.name})),S=(0,s.useCallback)(a=>{(null==a?void 0:a.length)>1&&d(a),(null==a?void 0:a.length)===0&&d(void 0)},[d]),h=(0,s.useMemo)(()=>(0,o.Ds)(S,300),[S]);return(0,i.jsx)(t.WPr,{placeholder:"Search...","aria-label":"Search for a system to select",popupRender:n?a=>l(a,n):void 0,"data-testid":"system-select",..._,styles:{popup:{root:{minWidth:"500px"}},..._.styles},filterOption:!1,options:m,onSearch:h,loading:_.loading||c})}},8411:function(a,e,n){"use strict";n.d(e,{NA:function(){return s},Z8:function(){return t}});var i=n(21910);let t={[i._F.ER]:"Eritrea",[i._F.DJ]:"Djibouti",[i._F.MR]:"Mauritania",[i._F.NA]:"Namibia",[i._F.GH]:"Ghana",[i._F.SS]:"South Sudan",[i._F.SC]:"Seychelles",[i._F.IO]:"British Indian Ocean Territory",[i._F.GQ]:"Equatorial Guinea",[i._F.AO]:"Angola",[i._F.CG]:"Republic of the Congo",[i._F.BW]:"Botswana",[i._F.BI]:"Burundi",[i._F.DZ]:"Algeria",[i._F.TD]:"Chad",[i._F.NG]:"Nigeria",[i._F.TZ]:"Tanzania",[i._F.EH]:"Western Sahara",[i._F.SN]:"Senegal",[i._F.LR]:"Liberia",[i._F.ZA]:"South Africa",[i._F.CV]:"Cape Verde",[i._F.GM]:"Gambia",[i._F.SD]:"Sudan",[i._F.KM]:"Comoros",[i._F.SZ]:"Eswatini",[i._F.UG]:"Uganda",[i._F.MG]:"Madagascar",[i._F.RW]:"Rwanda",[i._F.CD]:"DR Congo",[i._F.CM]:"Cameroon",[i._F.SH]:"Saint Helena, Ascension and Tristan da Cunha",[i._F.TG]:"Togo",[i._F.MU]:"Mauritius",[i._F.NE]:"Niger",[i._F.BJ]:"Benin",[i._F.EG]:"Egypt",[i._F.LS]:"Lesotho",[i._F.ET]:"Ethiopia",[i._F.MA]:"Morocco",[i._F.YT]:"Mayotte",[i._F.BF]:"Burkina Faso",[i._F.RE]:"R\xe9union",[i._F.ST]:"S\xe3o Tom\xe9 and Pr\xedncipe",[i._F.CF]:"Central African Republic",[i._F.MZ]:"Mozambique",[i._F.MW]:"Malawi",[i._F.ML]:"Mali",[i._F.ZM]:"Zambia",[i._F.LY]:"Libya",[i._F.GW]:"Guinea-Bissau",[i._F.SO]:"Somalia",[i._F.KE]:"Kenya",[i._F.GN]:"Guinea",[i._F.ZW]:"Zimbabwe",[i._F.TN]:"Tunisia",[i._F.SL]:"Sierra Leone",[i._F.GA]:"Gabon",[i._F.CI]:"Ivory Coast",[i._F.JO]:"Jordan",[i._F.PK]:"Pakistan",[i._F.KP]:"North Korea",[i._F.MO]:"Macau",[i._F.AM]:"Armenia",[i._F.SY]:"Syria",[i._F.TJ]:"Tajikistan",[i._F.SA]:"Saudi Arabia",[i._F.KR]:"South Korea",[i._F.NP]:"Nepal",[i._F.PH]:"Philippines",[i._F.IQ]:"Iraq",[i._F.LB]:"Lebanon",[i._F.MN]:"Mongolia",[i._F.PS]:"Palestine",[i._F.YE]:"Yemen",[i._F.JP]:"Japan",[i._F.KZ]:"Kazakhstan",[i._F.LK]:"Sri Lanka",[i._F.MM]:"Myanmar",[i._F.KG]:"Kyrgyzstan",[i._F.CN]:"China",[i._F.AF]:"Afghanistan",[i._F.OM]:"Oman",[i._F.IN]:"India",[i._F.LA]:"Laos",[i._F.UZ]:"Uzbekistan",[i._F.MV]:"Maldives",[i._F.ID]:"Indonesia",[i._F.VN]:"Vietnam",[i._F.MY]:"Malaysia",[i._F.TW]:"Taiwan",[i._F.KH]:"Cambodia",[i._F.AE]:"United Arab Emirates",[i._F.HK]:"Hong Kong",[i._F.GE]:"Georgia (Country)",[i._F.BD]:"Bangladesh",[i._F.KW]:"Kuwait",[i._F.TM]:"Turkmenistan",[i._F.QA]:"Qatar",[i._F.BH]:"Bahrain",[i._F.BN]:"Brunei",[i._F.TH]:"Thailand",[i._F.BT]:"Bhutan",[i._F.SG]:"Singapore",[i._F.IL]:"Israel",[i._F.AZ]:"Azerbaijan",[i._F.TL]:"Timor-Leste",[i._F.IR]:"Iran",[i._F.TR]:"Turkey",[i._F.MK]:"North Macedonia",[i._F.IE]:"Ireland",[i._F.DK]:"Denmark",[i._F.SK]:"Slovakia",[i._F.MD]:"Moldova",[i._F.AX]:"\xc5land Islands",[i._F.PL]:"Poland",[i._F.BA]:"Bosnia and Herzegovina",[i._F.SM]:"San Marino",[i._F.CZ]:"Czechia",[i._F.EE]:"Estonia",[i._F.XK]:"Kosovo",[i._F.FO]:"Faroe Islands",[i._F.SJ]:"Svalbard and Jan Mayen",[i._F.GG]:"Guernsey",[i._F.FR]:"France",[i._F.NL]:"Netherlands",[i._F.FI]:"Finland",[i._F.PT]:"Portugal",[i._F.DE]:"Germany",[i._F.MT]:"Malta",[i._F.JE]:"Jersey",[i._F.IS]:"Iceland",[i._F.ES]:"Spain",[i._F.GI]:"Gibraltar",[i._F.NO]:"Norway",[i._F.CY]:"Cyprus",[i._F.RS]:"Serbia",[i._F.LT]:"Lithuania",[i._F.MC]:"Monaco",[i._F.LU]:"Luxembourg",[i._F.UA]:"Ukraine",[i._F.IM]:"Isle of Man",[i._F.RO]:"Romania",[i._F.BE]:"Belgium",[i._F.SE]:"Sweden",[i._F.ME]:"Montenegro",[i._F.LV]:"Latvia",[i._F.VA]:"Vatican City",[i._F.AT]:"Austria",[i._F.AL]:"Albania",[i._F.LI]:"Liechtenstein",[i._F.GR]:"Greece",[i._F.IT]:"Italy",[i._F.AD]:"Andorra",[i._F.GB]:"United Kingdom",[i._F.RU]:"Russia",[i._F.SI]:"Slovenia",[i._F.BY]:"Belarus",[i._F.CH]:"Switzerland",[i._F.HU]:"Hungary",[i._F.BG]:"Bulgaria",[i._F.HR]:"Croatia",[i._F.TC]:"Turks and Caicos Islands",[i._F.CW]:"Cura\xe7ao",[i._F.GP]:"Guadeloupe",[i._F.UM]:"United States Minor Outlying Islands",[i._F.GT]:"Guatemala",[i._F.PM]:"Saint Pierre and Miquelon",[i._F.BQ]:"Caribbean Netherlands",[i._F.GL]:"Greenland",[i._F.SX]:"Sint Maarten",[i._F.PA]:"Panama",[i._F.AW]:"Aruba",[i._F.MQ]:"Martinique",[i._F.AG]:"Antigua and Barbuda",[i._F.BM]:"Bermuda",[i._F.CU]:"Cuba",[i._F.GD]:"Grenada",[i._F.NI]:"Nicaragua",[i._F.LC]:"Saint Lucia",[i._F.KN]:"Saint Kitts and Nevis",[i._F.DO]:"Dominican Republic",[i._F.VC]:"Saint Vincent and the Grenadines",[i._F.BZ]:"Belize",[i._F.HT]:"Haiti",[i._F.JM]:"Jamaica",[i._F.BS]:"Bahamas",[i._F.MX]:"Mexico",[i._F.MF]:"Saint Martin",[i._F.SV]:"El Salvador",[i._F.BL]:"Saint Barth\xe9lemy",[i._F.AI]:"Anguilla",[i._F.MS]:"Montserrat",[i._F.VG]:"British Virgin Islands",[i._F.BB]:"Barbados",[i._F.HN]:"Honduras",[i._F.KY]:"Cayman Islands",[i._F.DM]:"Dominica",[i._F.TT]:"Trinidad and Tobago",[i._F.CR]:"Costa Rica",[i._F.SR]:"Suriname",[i._F.CX]:"Christmas Island",[i._F.WS]:"Samoa",[i._F.PF]:"French Polynesia",[i._F.AS]:"American Samoa",[i._F.NC]:"New Caledonia",[i._F.TK]:"Tokelau",[i._F.PW]:"Palau",[i._F.KI]:"Kiribati",[i._F.VU]:"Vanuatu",[i._F.PN]:"Pitcairn Islands",[i._F.CK]:"Cook Islands",[i._F.FJ]:"Fiji",[i._F.PG]:"Papua New Guinea",[i._F.MP]:"Northern Mariana Islands",[i._F.NU]:"Niue",[i._F.TV]:"Tuvalu",[i._F.NF]:"Norfolk Island",[i._F.TO]:"Tonga",[i._F.FM]:"Micronesia",[i._F.SB]:"Solomon Islands",[i._F.NR]:"Nauru",[i._F.WF]:"Wallis and Futuna",[i._F.GU]:"Guam",[i._F.AU]:"Australia",[i._F.NZ]:"New Zealand",[i._F.MH]:"Marshall Islands",[i._F.CC]:"Cocos (Keeling) Islands",[i._F.VE]:"Venezuela",[i._F.PY]:"Paraguay",[i._F.BR]:"Brazil",[i._F.CO]:"Colombia",[i._F.PE]:"Peru",[i._F.CL]:"Chile",[i._F.UY]:"Uruguay",[i._F.AR]:"Argentina",[i._F.GY]:"Guyana",[i._F.BO]:"Bolivia",[i._F.GF]:"French Guiana",[i._F.EC]:"Ecuador",[i._F.FK]:"Falkland Islands",[i._F.US_AL]:"Alabama",[i._F.US_AK]:"Alaska",[i._F.US_AZ]:"Arizona",[i._F.US_AR]:"Arkansas",[i._F.US_CA]:"California",[i._F.US_CO]:"Colorado",[i._F.US_CT]:"Connecticut",[i._F.US_DE]:"Delaware",[i._F.US_DC]:"District of Columbia (DC)",[i._F.US_FL]:"Florida",[i._F.US_GA]:"Georgia",[i._F.US_HI]:"Hawaii",[i._F.US_ID]:"Idaho",[i._F.US_IL]:"Illinois",[i._F.US_IN]:"Indiana",[i._F.US_IA]:"Iowa",[i._F.US_KS]:"Kansas",[i._F.US_KY]:"Kentucky",[i._F.US_LA]:"Louisiana",[i._F.US_ME]:"Maine",[i._F.US_MD]:"Maryland",[i._F.US_MA]:"Massachusetts",[i._F.US_MI]:"Michigan",[i._F.US_MN]:"Minnesota",[i._F.US_MS]:"Mississippi",[i._F.US_MO]:"Missouri",[i._F.US_MT]:"Montana",[i._F.US_NE]:"Nebraska",[i._F.US_NV]:"Nevada",[i._F.US_NH]:"New Hampshire",[i._F.US_NJ]:"New Jersey",[i._F.US_NM]:"New Mexico",[i._F.US_NY]:"New York",[i._F.US_NC]:"North Carolina",[i._F.US_ND]:"North Dakota",[i._F.US_OH]:"Ohio",[i._F.US_OK]:"Oklahoma",[i._F.US_OR]:"Oregon",[i._F.US_PA]:"Pennsylvania",[i._F.US_PR]:"Puerto Rico",[i._F.US_RI]:"Rhode Island",[i._F.US_SC]:"South Carolina",[i._F.US_SD]:"South Dakota",[i._F.US_TN]:"Tennessee",[i._F.US_TX]:"Texas",[i._F.US_UT]:"Utah",[i._F.US_VA]:"Virginia",[i._F.US_VI]:"United States Virgin Islands",[i._F.US_VT]:"Vermont",[i._F.US_WA]:"Washington",[i._F.US_WV]:"West Virginia",[i._F.US_WI]:"Wisconsin",[i._F.US_WY]:"Wyoming",[i._F.CA_AB]:"Alberta",[i._F.CA_BC]:"British Columbia",[i._F.CA_MB]:"Manitoba",[i._F.CA_NB]:"New Brunswick",[i._F.CA_NL]:"Newfoundland and Labrador",[i._F.CA_NS]:"Nova Scotia",[i._F.CA_ON]:"Ontario",[i._F.CA_PE]:"Prince Edward Island",[i._F.CA_QC]:"Quebec",[i._F.CA_SK]:"Saskatchewan",[i._F.CA_NT]:"Northwest Territories",[i._F.CA_NU]:"Nunavut",[i._F.CA_YT]:"Yukon",[i._F.CA]:"Canada",[i._F.US]:"United States",[i._F.MEXICO_CENTRAL_AMERICA]:"Mexico and Central America",[i._F.CARIBBEAN]:"Caribbean",[i._F.EEA]:"European Economic Area (EEA)",[i._F.NON_EEA]:"Non European Economic Area",[i._F.GLOBAL]:"Global"},s=new Map(Object.entries(t));Object.entries(t).map(a=>({value:a[0],label:a[1]}))},77685:function(a,e,n){"use strict";n.d(e,{i:function(){return b}});var i=n(24246),t=n(96306),s=n(34090),r=n(27378),_=n(55484),o=n(16134),l=n(25980),F=n(97181),d=n(40324),u=n(812),c=n(17245),m=n(45938),S=n(8133),h=n(33335),C=n(32885),g=n(57865),y=n(93237),p=n(65450),f=n(36345);let{Text:v}=t.AntTypography,M={name:"",vendor_id:void 0,description:"",tags:[]},b=a=>{let{onSuccessfulSubmit:e,toastOnSuccess:n,...b}=a,[A,N]=(0,r.useState)(!1),U=(0,o.T)(),{tcf:I,dictionaryService:x}=(0,l.hz)(),{isLoading:T}=(0,C.Rd)(void 0,{skip:!x}),j=(0,o.C)(C.o),B=(0,o.C)(g.gU),[w]=(0,p.in)(),[E]=(0,C.Qk)(),[G]=(0,p.f7)(),{successAlert:k,errorAlert:L}=(0,c.VY)(),{setSuggestions:R,setLockedForGVL:K}=g.dictSuggestionsSlice.actions,P=(0,r.useRef)(null),D=(0,r.useMemo)(()=>_.Ry().shape({name:_.Z_().required().label("System name").test("is-unique","",async(a,e)=>{let{data:n}=await w({page:1,size:10,search:a});return!((null==n?void 0:n.items)||[]).filter(e=>e.name===a).some(e=>e.name===a)||e.createError({message:'You already have a system called "'.concat(a,'". Please specify a unique name for this system.')})})}),[w]),O=a=>{if(x){if(!a){U(R("hiding")),U(K(!1));return}U(R("showing")),I&&(0,u.cj)(a)===u.c6.GVL?U(K(!0)):U(K(!1))}},V=()=>{b.onClose(),U(R("initial")),U(K(!1))},W=async a=>{if(N(!0),a.vendor_id){let i=await E([a.vendor_id]);if((0,u.D4)(i))L((0,u.e$)(i.error));else{let{data:a}=i,t=a.systems[0];null==e||e(t.fides_key,t.name),n&&k("".concat(a.name," has been added to your system inventory."))}}else{let i={...a,fides_key:(0,h.E)(a.name),system_type:"",body:"",privacy_declarations:[]},t=await G(i);if((0,u.D4)(t))L((0,u.e$)(t.error));else{let{fides_key:i,name:s}=t.data;null==e||e(i,s),n&&k("".concat(a.name," has been added to your system inventory."))}V()}N(!1)};return(0,i.jsx)(S.Z,{title:"Add New System",...b,onClose:V,children:(0,i.jsx)(s.J9,{initialValues:M,onSubmit:W,validationSchema:D,innerRef:P,children:a=>{let{dirty:e,isValid:n}=a;return(0,i.jsxs)(s.l0,{children:[(0,i.jsx)(m.Gt,{id:"new-system-modal",name:"Add New System"}),(0,i.jsxs)(t.jqI,{vertical:!0,gap:20,className:"pb-6 pt-4",children:[(0,i.jsx)(v,{children:"Fides will add this system to your inventory and configure it for consent using the categories of consent listed below. Optionally, you can check if this system is listed within the Fides compass library by selecting the compass icon below."}),x?(0,i.jsx)(f.Z,{label:"System name",options:j,onVendorSelected:O,isCreate:!0,lockedForGVL:B,isLoading:T}):(0,i.jsx)(d.j0,{id:"name",name:"name",label:"System name",tooltip:"Give the system a unique, and relevant name for reporting purposes. e.g. “Email Data Warehouse”",variant:"stacked",isRequired:!0}),(0,i.jsx)(y.Sv,{id:"description",name:"description",label:"Description",tooltip:"What services does this system perform?",disabled:B}),(0,i.jsx)(F.d,{mode:"tags",id:"tags",name:"tags",label:"System Tags",options:[],layout:"stacked",tooltip:"Are there any tags to associate with this system?",disabled:B})]}),(0,i.jsxs)(t.jqI,{justify:"space-between",children:[(0,i.jsx)(t.wpx,{htmlType:"reset",onClick:V,disabled:T||!e||!n,"data-testid":"cancel-btn",children:"Cancel"}),(0,i.jsx)(t.wpx,{htmlType:"submit",type:"primary",disabled:T||!e||!n,loading:A,"data-testid":"save-btn",children:"Save"})]})]})}})})}},93237:function(a,e,n){"use strict";n.d(e,{Sv:function(){return m},Yb:function(){return c},dQ:function(){return S},lm:function(){return h}});var i=n(24246),t=n(96306),s=n(34090),r=n(27378),_=n(16134),o=n(40324),l=n(46238),F=n(32885),d=n(57865);let u=(a,e,n)=>{var i,t;let[o,l,{setValue:u,setTouched:c}]=(0,s.U$)({name:a,type:n||void 0}),m=!!(l.touched&&l.error),{error:S}=l,h={...o,value:null!==(i=o.value)&&void 0!==i?i:""},[C,g]=(0,r.useState)(null!==(t=h.value)&&void 0!==t?t:""),{values:y}=(0,s.u6)(),{vendor_id:p}=y,f=(0,_.C)((0,F.$e)(p||"")),v=(0,_.C)(d.bN),M=(0,r.useRef)();return(0,r.useEffect)(()=>{"showing"===v&&g(h.value)},[v,g]),(0,r.useEffect)(()=>{if("showing"===v&&f){let n=e?e(f):f[a];h.value!==n&&(u(n),setTimeout(()=>{var a;c(!0),null===(a=M.current)||void 0===a||a.blur()},300))}},[v,u,f,M.current]),(0,r.useEffect)(()=>{"hiding"===v&&u(C)},[v,u,C]),{field:h,isInvalid:m,isShowingSuggestions:v,error:S,inputRef:M}},c=a=>{let{label:e,tooltip:n,disabled:s,isRequired:r=!1,dictField:_,name:F,placeholder:d,id:c}=a,{field:m,isInvalid:S,isShowingSuggestions:h,error:C,inputRef:g}=u(F,_);return(0,i.jsx)(t.NIc,{isInvalid:S,isRequired:r,children:(0,i.jsxs)(t.gCW,{alignItems:"start",children:[(0,i.jsxs)(t.kCb,{alignItems:"center",children:[(0,i.jsx)(o.__,{htmlFor:c||F,fontSize:"xs",my:0,mr:1,children:e}),(0,i.jsx)(l.b,{label:n})]}),(0,i.jsx)(o.oi,{...m,ref:g,isRequired:r,isDisabled:s,"data-testid":"input-".concat(m.name),placeholder:d,isPassword:!1,color:"showing"===h?"complimentary.500":"gray.800"}),(0,i.jsx)(o.Bc,{isInvalid:S,message:C,fieldName:m.name})]})})},m=a=>{let{label:e,tooltip:n,disabled:s,isRequired:r=!1,dictField:_,name:F,id:d}=a,{field:c,isInvalid:m,isShowingSuggestions:S,error:h}=u(F,_);return(0,i.jsx)(t.NIc,{isInvalid:m,isRequired:r,children:(0,i.jsxs)(t.gCW,{alignItems:"start",children:[(0,i.jsxs)(t.kCb,{alignItems:"center",children:[(0,i.jsx)(o.__,{htmlFor:d||F,fontSize:"xs",my:0,mr:1,children:e}),(0,i.jsx)(l.b,{label:n})]}),(0,i.jsx)(t.gxH,{...c,size:"sm","data-testid":"input-".concat(c.name),focusBorderColor:"primary.600",color:"showing"===S?"complimentary.500":"gray.800",isDisabled:s}),(0,i.jsx)(o.Bc,{isInvalid:m,message:h,fieldName:c.name})]})})},S=a=>{let{label:e,tooltip:n,dictField:r,name:_,id:F,disabled:d}=a,{field:c,isInvalid:m,error:S}=u(_,r,"checkbox");return(0,i.jsxs)(t.NIc,{isInvalid:m,width:"full",children:[(0,i.jsxs)(t.xuv,{display:"flex",alignItems:"center",justifyContent:"space-between",children:[(0,i.jsxs)(t.Ugi,{spacing:1,children:[(0,i.jsx)(o.__,{htmlFor:F||_,fontSize:"xs",my:0,mr:0,children:e}),(0,i.jsx)(l.b,{label:n})]}),(0,i.jsx)(t.Ugi,{children:(0,i.jsx)(s.gN,{name:c.name,children:a=>{let{form:{setFieldValue:e}}=a;return(0,i.jsx)(t.rAg,{checked:c.checked,onChange:a=>{e(c.name,a)},disabled:d,className:"mr-2","data-testid":"input-".concat(c.name),size:"small"})}})})]}),(0,i.jsx)(o.Bc,{isInvalid:m,message:S,fieldName:c.name})]})},h=a=>{let{label:e,tooltip:n,dictField:r,name:_,id:F,disabled:d}=a,{field:c,isInvalid:m,error:S,isShowingSuggestions:h}=u(_,r,"numeric"),{setFieldValue:C}=(0,s.u6)();return(0,i.jsxs)(t.NIc,{isInvalid:m,width:"full",children:[(0,i.jsxs)(t.xuv,{display:"flex",alignItems:"center",justifyContent:"space-between",children:[(0,i.jsxs)(t.Ugi,{spacing:1,children:[(0,i.jsx)(o.__,{htmlFor:F||_,fontSize:"xs",my:0,mr:0,children:e}),(0,i.jsx)(l.b,{label:n})]}),(0,i.jsx)(t.Ugi,{children:(0,i.jsxs)(t.Y2U,{value:c.value,name:c.name,size:"xs",onBlur:c.onBlur,onChange:a=>{C(c.name,a)},w:"100%",colorScheme:"terracotta",inputMode:"numeric","data-testid":"input-".concat(c.name),color:"showing"===h?"complimentary.500":"gray.800",focusBorderColor:"primary.600",isDisabled:d,children:[(0,i.jsx)(t.zuI,{}),(0,i.jsxs)(t.FiK,{children:[(0,i.jsx)(t.WQu,{}),(0,i.jsx)(t.Y_d,{})]})]})})]}),(0,i.jsx)(o.Bc,{isInvalid:m,message:S,fieldName:c.name})]})}},99830:function(a){a.exports={toastLink:"ToastLink_toastLink__OLSeq"}}}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3585],{66726:function(a,e,n){var i=n(11611),t=n(82846),s=n(91936),r=Math.max,_=Math.min;a.exports=function(a,e,n){var o,l,F,d,u,c,m=0,S=!1,h=!1,C=!0;if("function"!=typeof a)throw TypeError("Expected a function");function g(e){var n=o,i=l;return o=l=void 0,m=e,d=a.apply(i,n)}function y(a){var n=a-c,i=a-m;return void 0===c||n>=e||n<0||h&&i>=F}function p(){var a,n,i,s=t();if(y(s))return f(s);u=setTimeout(p,(a=s-c,n=s-m,i=e-a,h?_(i,F-n):i))}function f(a){return(u=void 0,C&&o)?g(a):(o=l=void 0,d)}function v(){var a,n=t(),i=y(n);if(o=arguments,l=this,c=n,i){if(void 0===u)return m=a=c,u=setTimeout(p,e),S?g(a):d;if(h)return clearTimeout(u),u=setTimeout(p,e),g(c)}return void 0===u&&(u=setTimeout(p,e)),d}return e=s(e)||0,i(n)&&(S=!!n.leading,F=(h="maxWait"in n)?r(s(n.maxWait)||0,e):F,C="trailing"in n?!!n.trailing:C),v.cancel=function(){void 0!==u&&clearTimeout(u),m=0,o=c=l=u=void 0},v.flush=function(){return void 0===u?d:f(t())},v}},82846:function(a,e,n){var i=n(77400);a.exports=function(){return i.Date.now()}},30952:function(a,e,n){"use strict";n.d(e,{f:function(){return o}});var i=n(24246),t=n(66726),s=n.n(t),r=n(27378),_=n(26917);let o=a=>{let{value:e,onChange:n,placeholder:t,...o}=a,[l,F]=(0,r.useState)(e);(0,r.useEffect)(()=>{F(e||"")},[e]);let d=s()(n,500),u=(0,r.useCallback)(a=>{F(a),d(a)},[]);return(0,i.jsx)(_.Z,{value:l,onChange:u,onClear:()=>{F(""),n("")},placeholder:t,...o})}},26089:function(a,e,n){"use strict";var i=n(24246),t=n(96306),s=n(99830),r=n.n(s);e.Z=a=>{let{onClick:e,children:n}=a;return(0,i.jsx)(t.wpx,{onClick:e,type:"link",role:"link",size:"small",className:r().toastLink,children:n})}},29850:function(a,e,n){"use strict";n.d(e,{R:function(){return F}});var i=n(24246),t=n(96306),s=n(27378),r=n(65450);let _=a=>{let{children:e,className:n,style:s,...r}=a;return(0,i.jsx)(t.wpx,{...r,type:"text",className:"w-full justify-start ".concat(n),style:{fontWeight:600,padding:"var(--ant-select-option-padding)",backgroundColor:"var(--ant-select-option-selected-bg)",...s},children:e})};var o=n(16394);let l=(a,e)=>(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(_,{onClick:e,"data-testid":"add-new-system",id:"add-new-system",children:"Add new system +"}),a]}),F=a=>{var e;let{onAddSystem:n,..._}=a,[F,d]=(0,s.useState)(),{data:u,isFetching:c}=(0,r.xF)({page:1,size:25,search:F||void 0}),m=null==u?void 0:null===(e=u.items)||void 0===e?void 0:e.map(a=>({value:a.fides_key,label:a.name})),S=(0,s.useCallback)(a=>{(null==a?void 0:a.length)>1&&d(a),(null==a?void 0:a.length)===0&&d(void 0)},[d]),h=(0,s.useMemo)(()=>(0,o.Ds)(S,300),[S]);return(0,i.jsx)(t.WPr,{placeholder:"Search...","aria-label":"Search for a system to select",popupRender:n?a=>l(a,n):void 0,"data-testid":"system-select",..._,styles:{popup:{root:{minWidth:"500px"}},..._.styles},filterOption:!1,options:m,onSearch:h,loading:_.loading||c})}},8411:function(a,e,n){"use strict";n.d(e,{NA:function(){return s},Z8:function(){return t}});var i=n(21910);let t={[i._F.ER]:"Eritrea",[i._F.DJ]:"Djibouti",[i._F.MR]:"Mauritania",[i._F.NA]:"Namibia",[i._F.GH]:"Ghana",[i._F.SS]:"South Sudan",[i._F.SC]:"Seychelles",[i._F.IO]:"British Indian Ocean Territory",[i._F.GQ]:"Equatorial Guinea",[i._F.AO]:"Angola",[i._F.CG]:"Republic of the Congo",[i._F.BW]:"Botswana",[i._F.BI]:"Burundi",[i._F.DZ]:"Algeria",[i._F.TD]:"Chad",[i._F.NG]:"Nigeria",[i._F.TZ]:"Tanzania",[i._F.EH]:"Western Sahara",[i._F.SN]:"Senegal",[i._F.LR]:"Liberia",[i._F.ZA]:"South Africa",[i._F.CV]:"Cape Verde",[i._F.GM]:"Gambia",[i._F.SD]:"Sudan",[i._F.KM]:"Comoros",[i._F.SZ]:"Eswatini",[i._F.UG]:"Uganda",[i._F.MG]:"Madagascar",[i._F.RW]:"Rwanda",[i._F.CD]:"DR Congo",[i._F.CM]:"Cameroon",[i._F.SH]:"Saint Helena, Ascension and Tristan da Cunha",[i._F.TG]:"Togo",[i._F.MU]:"Mauritius",[i._F.NE]:"Niger",[i._F.BJ]:"Benin",[i._F.EG]:"Egypt",[i._F.LS]:"Lesotho",[i._F.ET]:"Ethiopia",[i._F.MA]:"Morocco",[i._F.YT]:"Mayotte",[i._F.BF]:"Burkina Faso",[i._F.RE]:"R\xe9union",[i._F.ST]:"S\xe3o Tom\xe9 and Pr\xedncipe",[i._F.CF]:"Central African Republic",[i._F.MZ]:"Mozambique",[i._F.MW]:"Malawi",[i._F.ML]:"Mali",[i._F.ZM]:"Zambia",[i._F.LY]:"Libya",[i._F.GW]:"Guinea-Bissau",[i._F.SO]:"Somalia",[i._F.KE]:"Kenya",[i._F.GN]:"Guinea",[i._F.ZW]:"Zimbabwe",[i._F.TN]:"Tunisia",[i._F.SL]:"Sierra Leone",[i._F.GA]:"Gabon",[i._F.CI]:"Ivory Coast",[i._F.JO]:"Jordan",[i._F.PK]:"Pakistan",[i._F.KP]:"North Korea",[i._F.MO]:"Macau",[i._F.AM]:"Armenia",[i._F.SY]:"Syria",[i._F.TJ]:"Tajikistan",[i._F.SA]:"Saudi Arabia",[i._F.KR]:"South Korea",[i._F.NP]:"Nepal",[i._F.PH]:"Philippines",[i._F.IQ]:"Iraq",[i._F.LB]:"Lebanon",[i._F.MN]:"Mongolia",[i._F.PS]:"Palestine",[i._F.YE]:"Yemen",[i._F.JP]:"Japan",[i._F.KZ]:"Kazakhstan",[i._F.LK]:"Sri Lanka",[i._F.MM]:"Myanmar",[i._F.KG]:"Kyrgyzstan",[i._F.CN]:"China",[i._F.AF]:"Afghanistan",[i._F.OM]:"Oman",[i._F.IN]:"India",[i._F.LA]:"Laos",[i._F.UZ]:"Uzbekistan",[i._F.MV]:"Maldives",[i._F.ID]:"Indonesia",[i._F.VN]:"Vietnam",[i._F.MY]:"Malaysia",[i._F.TW]:"Taiwan",[i._F.KH]:"Cambodia",[i._F.AE]:"United Arab Emirates",[i._F.HK]:"Hong Kong",[i._F.GE]:"Georgia (Country)",[i._F.BD]:"Bangladesh",[i._F.KW]:"Kuwait",[i._F.TM]:"Turkmenistan",[i._F.QA]:"Qatar",[i._F.BH]:"Bahrain",[i._F.BN]:"Brunei",[i._F.TH]:"Thailand",[i._F.BT]:"Bhutan",[i._F.SG]:"Singapore",[i._F.IL]:"Israel",[i._F.AZ]:"Azerbaijan",[i._F.TL]:"Timor-Leste",[i._F.IR]:"Iran",[i._F.TR]:"Turkey",[i._F.MK]:"North Macedonia",[i._F.IE]:"Ireland",[i._F.DK]:"Denmark",[i._F.SK]:"Slovakia",[i._F.MD]:"Moldova",[i._F.AX]:"\xc5land Islands",[i._F.PL]:"Poland",[i._F.BA]:"Bosnia and Herzegovina",[i._F.SM]:"San Marino",[i._F.CZ]:"Czechia",[i._F.EE]:"Estonia",[i._F.XK]:"Kosovo",[i._F.FO]:"Faroe Islands",[i._F.SJ]:"Svalbard and Jan Mayen",[i._F.GG]:"Guernsey",[i._F.FR]:"France",[i._F.NL]:"Netherlands",[i._F.FI]:"Finland",[i._F.PT]:"Portugal",[i._F.DE]:"Germany",[i._F.MT]:"Malta",[i._F.JE]:"Jersey",[i._F.IS]:"Iceland",[i._F.ES]:"Spain",[i._F.GI]:"Gibraltar",[i._F.NO]:"Norway",[i._F.CY]:"Cyprus",[i._F.RS]:"Serbia",[i._F.LT]:"Lithuania",[i._F.MC]:"Monaco",[i._F.LU]:"Luxembourg",[i._F.UA]:"Ukraine",[i._F.IM]:"Isle of Man",[i._F.RO]:"Romania",[i._F.BE]:"Belgium",[i._F.SE]:"Sweden",[i._F.ME]:"Montenegro",[i._F.LV]:"Latvia",[i._F.VA]:"Vatican City",[i._F.AT]:"Austria",[i._F.AL]:"Albania",[i._F.LI]:"Liechtenstein",[i._F.GR]:"Greece",[i._F.IT]:"Italy",[i._F.AD]:"Andorra",[i._F.GB]:"United Kingdom",[i._F.RU]:"Russia",[i._F.SI]:"Slovenia",[i._F.BY]:"Belarus",[i._F.CH]:"Switzerland",[i._F.HU]:"Hungary",[i._F.BG]:"Bulgaria",[i._F.HR]:"Croatia",[i._F.TC]:"Turks and Caicos Islands",[i._F.CW]:"Cura\xe7ao",[i._F.GP]:"Guadeloupe",[i._F.UM]:"United States Minor Outlying Islands",[i._F.GT]:"Guatemala",[i._F.PM]:"Saint Pierre and Miquelon",[i._F.BQ]:"Caribbean Netherlands",[i._F.GL]:"Greenland",[i._F.SX]:"Sint Maarten",[i._F.PA]:"Panama",[i._F.AW]:"Aruba",[i._F.MQ]:"Martinique",[i._F.AG]:"Antigua and Barbuda",[i._F.BM]:"Bermuda",[i._F.CU]:"Cuba",[i._F.GD]:"Grenada",[i._F.NI]:"Nicaragua",[i._F.LC]:"Saint Lucia",[i._F.KN]:"Saint Kitts and Nevis",[i._F.DO]:"Dominican Republic",[i._F.VC]:"Saint Vincent and the Grenadines",[i._F.BZ]:"Belize",[i._F.HT]:"Haiti",[i._F.JM]:"Jamaica",[i._F.BS]:"Bahamas",[i._F.MX]:"Mexico",[i._F.MF]:"Saint Martin",[i._F.SV]:"El Salvador",[i._F.BL]:"Saint Barth\xe9lemy",[i._F.AI]:"Anguilla",[i._F.MS]:"Montserrat",[i._F.VG]:"British Virgin Islands",[i._F.BB]:"Barbados",[i._F.HN]:"Honduras",[i._F.KY]:"Cayman Islands",[i._F.DM]:"Dominica",[i._F.TT]:"Trinidad and Tobago",[i._F.CR]:"Costa Rica",[i._F.SR]:"Suriname",[i._F.CX]:"Christmas Island",[i._F.WS]:"Samoa",[i._F.PF]:"French Polynesia",[i._F.AS]:"American Samoa",[i._F.NC]:"New Caledonia",[i._F.TK]:"Tokelau",[i._F.PW]:"Palau",[i._F.KI]:"Kiribati",[i._F.VU]:"Vanuatu",[i._F.PN]:"Pitcairn Islands",[i._F.CK]:"Cook Islands",[i._F.FJ]:"Fiji",[i._F.PG]:"Papua New Guinea",[i._F.MP]:"Northern Mariana Islands",[i._F.NU]:"Niue",[i._F.TV]:"Tuvalu",[i._F.NF]:"Norfolk Island",[i._F.TO]:"Tonga",[i._F.FM]:"Micronesia",[i._F.SB]:"Solomon Islands",[i._F.NR]:"Nauru",[i._F.WF]:"Wallis and Futuna",[i._F.GU]:"Guam",[i._F.AU]:"Australia",[i._F.NZ]:"New Zealand",[i._F.MH]:"Marshall Islands",[i._F.CC]:"Cocos (Keeling) Islands",[i._F.VE]:"Venezuela",[i._F.PY]:"Paraguay",[i._F.BR]:"Brazil",[i._F.CO]:"Colombia",[i._F.PE]:"Peru",[i._F.CL]:"Chile",[i._F.UY]:"Uruguay",[i._F.AR]:"Argentina",[i._F.GY]:"Guyana",[i._F.BO]:"Bolivia",[i._F.GF]:"French Guiana",[i._F.EC]:"Ecuador",[i._F.FK]:"Falkland Islands",[i._F.US_AL]:"Alabama",[i._F.US_AK]:"Alaska",[i._F.US_AZ]:"Arizona",[i._F.US_AR]:"Arkansas",[i._F.US_CA]:"California",[i._F.US_CO]:"Colorado",[i._F.US_CT]:"Connecticut",[i._F.US_DE]:"Delaware",[i._F.US_DC]:"District of Columbia (DC)",[i._F.US_FL]:"Florida",[i._F.US_GA]:"Georgia",[i._F.US_HI]:"Hawaii",[i._F.US_ID]:"Idaho",[i._F.US_IL]:"Illinois",[i._F.US_IN]:"Indiana",[i._F.US_IA]:"Iowa",[i._F.US_KS]:"Kansas",[i._F.US_KY]:"Kentucky",[i._F.US_LA]:"Louisiana",[i._F.US_ME]:"Maine",[i._F.US_MD]:"Maryland",[i._F.US_MA]:"Massachusetts",[i._F.US_MI]:"Michigan",[i._F.US_MN]:"Minnesota",[i._F.US_MS]:"Mississippi",[i._F.US_MO]:"Missouri",[i._F.US_MT]:"Montana",[i._F.US_NE]:"Nebraska",[i._F.US_NV]:"Nevada",[i._F.US_NH]:"New Hampshire",[i._F.US_NJ]:"New Jersey",[i._F.US_NM]:"New Mexico",[i._F.US_NY]:"New York",[i._F.US_NC]:"North Carolina",[i._F.US_ND]:"North Dakota",[i._F.US_OH]:"Ohio",[i._F.US_OK]:"Oklahoma",[i._F.US_OR]:"Oregon",[i._F.US_PA]:"Pennsylvania",[i._F.US_PR]:"Puerto Rico",[i._F.US_RI]:"Rhode Island",[i._F.US_SC]:"South Carolina",[i._F.US_SD]:"South Dakota",[i._F.US_TN]:"Tennessee",[i._F.US_TX]:"Texas",[i._F.US_UT]:"Utah",[i._F.US_VA]:"Virginia",[i._F.US_VI]:"United States Virgin Islands",[i._F.US_VT]:"Vermont",[i._F.US_WA]:"Washington",[i._F.US_WV]:"West Virginia",[i._F.US_WI]:"Wisconsin",[i._F.US_WY]:"Wyoming",[i._F.CA_AB]:"Alberta",[i._F.CA_BC]:"British Columbia",[i._F.CA_MB]:"Manitoba",[i._F.CA_NB]:"New Brunswick",[i._F.CA_NL]:"Newfoundland and Labrador",[i._F.CA_NS]:"Nova Scotia",[i._F.CA_ON]:"Ontario",[i._F.CA_PE]:"Prince Edward Island",[i._F.CA_QC]:"Quebec",[i._F.CA_SK]:"Saskatchewan",[i._F.CA_NT]:"Northwest Territories",[i._F.CA_NU]:"Nunavut",[i._F.CA_YT]:"Yukon",[i._F.CA]:"Canada",[i._F.US]:"United States",[i._F.MEXICO_CENTRAL_AMERICA]:"Mexico and Central America",[i._F.CARIBBEAN]:"Caribbean",[i._F.EEA]:"European Economic Area (EEA)",[i._F.NON_EEA]:"Non European Economic Area",[i._F.GLOBAL]:"Global"},s=new Map(Object.entries(t));Object.entries(t).map(a=>({value:a[0],label:a[1]}))},77685:function(a,e,n){"use strict";n.d(e,{i:function(){return b}});var i=n(24246),t=n(96306),s=n(34090),r=n(27378),_=n(55484),o=n(16134),l=n(25980),F=n(97181),d=n(40324),u=n(812),c=n(17245),m=n(45938),S=n(8133),h=n(33335),C=n(32885),g=n(57865),y=n(93237),p=n(65450),f=n(36345);let{Text:v}=t.AntTypography,M={name:"",vendor_id:void 0,description:"",tags:[]},b=a=>{let{onSuccessfulSubmit:e,toastOnSuccess:n,...b}=a,[A,N]=(0,r.useState)(!1),U=(0,o.T)(),{tcf:I,dictionaryService:x}=(0,l.hz)(),{isLoading:T}=(0,C.Rd)(void 0,{skip:!x}),j=(0,o.C)(C.o),B=(0,o.C)(g.gU),[w]=(0,p.in)(),[E]=(0,C.Qk)(),[G]=(0,p.f7)(),{successAlert:k,errorAlert:L}=(0,c.VY)(),{setSuggestions:R,setLockedForGVL:K}=g.dictSuggestionsSlice.actions,P=(0,r.useRef)(null),D=(0,r.useMemo)(()=>_.Ry().shape({name:_.Z_().required().label("System name").test("is-unique","",async(a,e)=>{let{data:n}=await w({page:1,size:10,search:a});return!((null==n?void 0:n.items)||[]).filter(e=>e.name===a).some(e=>e.name===a)||e.createError({message:'You already have a system called "'.concat(a,'". Please specify a unique name for this system.')})})}),[w]),O=a=>{if(x){if(!a){U(R("hiding")),U(K(!1));return}U(R("showing")),I&&(0,u.cj)(a)===u.c6.GVL?U(K(!0)):U(K(!1))}},V=()=>{b.onClose(),U(R("initial")),U(K(!1))},W=async a=>{if(N(!0),a.vendor_id){let i=await E([a.vendor_id]);if((0,u.D4)(i))L((0,u.e$)(i.error));else{let{data:a}=i,t=a.systems[0];null==e||e(t.fides_key,t.name),n&&k("".concat(a.name," has been added to your system inventory.")),V()}}else{let i={...a,fides_key:(0,h.E)(a.name),system_type:"",body:"",privacy_declarations:[]},t=await G(i);if((0,u.D4)(t))L((0,u.e$)(t.error));else{let{fides_key:i,name:s}=t.data;null==e||e(i,s),n&&k("".concat(a.name," has been added to your system inventory."))}V()}N(!1)};return(0,i.jsx)(S.Z,{title:"Add New System",...b,onClose:V,children:(0,i.jsx)(s.J9,{initialValues:M,onSubmit:W,validationSchema:D,innerRef:P,children:a=>{let{dirty:e,isValid:n}=a;return(0,i.jsxs)(s.l0,{children:[(0,i.jsx)(m.Gt,{id:"new-system-modal",name:"Add New System"}),(0,i.jsxs)(t.jqI,{vertical:!0,gap:20,className:"pb-6 pt-4",children:[(0,i.jsx)(v,{children:"Fides will add this system to your inventory and configure it for consent using the categories of consent listed below. Optionally, you can check if this system is listed within the Fides compass library by selecting the compass icon below."}),x?(0,i.jsx)(f.Z,{label:"System name",options:j,onVendorSelected:O,isCreate:!0,lockedForGVL:B,isLoading:T}):(0,i.jsx)(d.j0,{id:"name",name:"name",label:"System name",tooltip:"Give the system a unique, and relevant name for reporting purposes. e.g. “Email Data Warehouse”",variant:"stacked",isRequired:!0}),(0,i.jsx)(y.Sv,{id:"description",name:"description",label:"Description",tooltip:"What services does this system perform?",disabled:B}),(0,i.jsx)(F.d,{mode:"tags",id:"tags",name:"tags",label:"System Tags",options:[],layout:"stacked",tooltip:"Are there any tags to associate with this system?",disabled:B})]}),(0,i.jsxs)(t.jqI,{justify:"space-between",children:[(0,i.jsx)(t.wpx,{htmlType:"reset",onClick:V,"data-testid":"cancel-btn",children:"Cancel"}),(0,i.jsx)(t.wpx,{htmlType:"submit",type:"primary",disabled:T||!e||!n,loading:A,"data-testid":"save-btn",children:"Save"})]})]})}})})}},93237:function(a,e,n){"use strict";n.d(e,{Sv:function(){return m},Yb:function(){return c},dQ:function(){return S},lm:function(){return h}});var i=n(24246),t=n(96306),s=n(34090),r=n(27378),_=n(16134),o=n(40324),l=n(46238),F=n(32885),d=n(57865);let u=(a,e,n)=>{var i,t;let[o,l,{setValue:u,setTouched:c}]=(0,s.U$)({name:a,type:n||void 0}),m=!!(l.touched&&l.error),{error:S}=l,h={...o,value:null!==(i=o.value)&&void 0!==i?i:""},[C,g]=(0,r.useState)(null!==(t=h.value)&&void 0!==t?t:""),{values:y}=(0,s.u6)(),{vendor_id:p}=y,f=(0,_.C)((0,F.$e)(p||"")),v=(0,_.C)(d.bN),M=(0,r.useRef)();return(0,r.useEffect)(()=>{"showing"===v&&g(h.value)},[v,g]),(0,r.useEffect)(()=>{if("showing"===v&&f){let n=e?e(f):f[a];h.value!==n&&(u(n),setTimeout(()=>{var a;c(!0),null===(a=M.current)||void 0===a||a.blur()},300))}},[v,u,f,M.current]),(0,r.useEffect)(()=>{"hiding"===v&&u(C)},[v,u,C]),{field:h,isInvalid:m,isShowingSuggestions:v,error:S,inputRef:M}},c=a=>{let{label:e,tooltip:n,disabled:s,isRequired:r=!1,dictField:_,name:F,placeholder:d,id:c}=a,{field:m,isInvalid:S,isShowingSuggestions:h,error:C,inputRef:g}=u(F,_);return(0,i.jsx)(t.NIc,{isInvalid:S,isRequired:r,children:(0,i.jsxs)(t.gCW,{alignItems:"start",children:[(0,i.jsxs)(t.kCb,{alignItems:"center",children:[(0,i.jsx)(o.__,{htmlFor:c||F,fontSize:"xs",my:0,mr:1,children:e}),(0,i.jsx)(l.b,{label:n})]}),(0,i.jsx)(o.oi,{...m,ref:g,isRequired:r,isDisabled:s,"data-testid":"input-".concat(m.name),placeholder:d,isPassword:!1,color:"showing"===h?"complimentary.500":"gray.800"}),(0,i.jsx)(o.Bc,{isInvalid:S,message:C,fieldName:m.name})]})})},m=a=>{let{label:e,tooltip:n,disabled:s,isRequired:r=!1,dictField:_,name:F,id:d}=a,{field:c,isInvalid:m,isShowingSuggestions:S,error:h}=u(F,_);return(0,i.jsx)(t.NIc,{isInvalid:m,isRequired:r,children:(0,i.jsxs)(t.gCW,{alignItems:"start",children:[(0,i.jsxs)(t.kCb,{alignItems:"center",children:[(0,i.jsx)(o.__,{htmlFor:d||F,fontSize:"xs",my:0,mr:1,children:e}),(0,i.jsx)(l.b,{label:n})]}),(0,i.jsx)(t.gxH,{...c,size:"sm","data-testid":"input-".concat(c.name),focusBorderColor:"primary.600",color:"showing"===S?"complimentary.500":"gray.800",isDisabled:s}),(0,i.jsx)(o.Bc,{isInvalid:m,message:h,fieldName:c.name})]})})},S=a=>{let{label:e,tooltip:n,dictField:r,name:_,id:F,disabled:d}=a,{field:c,isInvalid:m,error:S}=u(_,r,"checkbox");return(0,i.jsxs)(t.NIc,{isInvalid:m,width:"full",children:[(0,i.jsxs)(t.xuv,{display:"flex",alignItems:"center",justifyContent:"space-between",children:[(0,i.jsxs)(t.Ugi,{spacing:1,children:[(0,i.jsx)(o.__,{htmlFor:F||_,fontSize:"xs",my:0,mr:0,children:e}),(0,i.jsx)(l.b,{label:n})]}),(0,i.jsx)(t.Ugi,{children:(0,i.jsx)(s.gN,{name:c.name,children:a=>{let{form:{setFieldValue:e}}=a;return(0,i.jsx)(t.rAg,{checked:c.checked,onChange:a=>{e(c.name,a)},disabled:d,className:"mr-2","data-testid":"input-".concat(c.name),size:"small"})}})})]}),(0,i.jsx)(o.Bc,{isInvalid:m,message:S,fieldName:c.name})]})},h=a=>{let{label:e,tooltip:n,dictField:r,name:_,id:F,disabled:d}=a,{field:c,isInvalid:m,error:S,isShowingSuggestions:h}=u(_,r,"numeric"),{setFieldValue:C}=(0,s.u6)();return(0,i.jsxs)(t.NIc,{isInvalid:m,width:"full",children:[(0,i.jsxs)(t.xuv,{display:"flex",alignItems:"center",justifyContent:"space-between",children:[(0,i.jsxs)(t.Ugi,{spacing:1,children:[(0,i.jsx)(o.__,{htmlFor:F||_,fontSize:"xs",my:0,mr:0,children:e}),(0,i.jsx)(l.b,{label:n})]}),(0,i.jsx)(t.Ugi,{children:(0,i.jsxs)(t.Y2U,{value:c.value,name:c.name,size:"xs",onBlur:c.onBlur,onChange:a=>{C(c.name,a)},w:"100%",colorScheme:"terracotta",inputMode:"numeric","data-testid":"input-".concat(c.name),color:"showing"===h?"complimentary.500":"gray.800",focusBorderColor:"primary.600",isDisabled:d,children:[(0,i.jsx)(t.zuI,{}),(0,i.jsxs)(t.FiK,{children:[(0,i.jsx)(t.WQu,{}),(0,i.jsx)(t.Y_d,{})]})]})})]}),(0,i.jsx)(o.Bc,{isInvalid:m,message:S,fieldName:c.name})]})}},99830:function(a){a.exports={toastLink:"ToastLink_toastLink__OLSeq"}}}]);