ethyca-fides 2.63.1b3__py2.py3-none-any.whl → 2.63.1b4__py2.py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {ethyca_fides-2.63.1b3.dist-info → ethyca_fides-2.63.1b4.dist-info}/METADATA +1 -1
- {ethyca_fides-2.63.1b3.dist-info → ethyca_fides-2.63.1b4.dist-info}/RECORD +127 -117
- fides/_version.py +3 -3
- fides/api/alembic/migrations/versions/29e56fa1fdb3_add_monitor_tasks.py +147 -0
- fides/api/api/v1/endpoints/privacy_request_endpoints.py +4 -4
- fides/api/db/base.py +5 -1
- fides/api/models/connectionconfig.py +1 -1
- fides/api/models/detection_discovery/__init__.py +35 -0
- fides/api/models/detection_discovery/monitor_task.py +161 -0
- fides/api/models/field_types/__init__.py +5 -0
- fides/api/models/field_types/encrypted_large_data.py +151 -0
- fides/api/models/privacy_preference.py +1 -1
- fides/api/models/privacy_request/execution_log.py +3 -31
- fides/api/models/privacy_request/privacy_request.py +16 -3
- fides/api/models/privacy_request/request_task.py +36 -25
- fides/api/models/worker_task.py +96 -0
- fides/api/schemas/external_storage.py +22 -0
- fides/api/schemas/privacy_request.py +1 -12
- fides/api/service/connectors/base_erasure_email_connector.py +1 -1
- fides/api/service/connectors/consent_email_connector.py +2 -1
- fides/api/service/connectors/dynamic_erasure_email_connector.py +2 -1
- fides/api/service/connectors/erasure_email_connector.py +1 -1
- fides/api/service/external_data_storage.py +371 -0
- fides/api/service/privacy_request/request_runner_service.py +5 -5
- fides/api/service/privacy_request/request_service.py +1 -1
- fides/api/task/create_request_tasks.py +1 -1
- fides/api/task/execute_request_tasks.py +9 -8
- fides/api/task/graph_task.py +22 -10
- fides/api/util/consent_util.py +1 -1
- fides/api/util/data_size.py +102 -0
- fides/api/util/encryption/aes_gcm_encryption_util.py +271 -0
- fides/service/privacy_request/privacy_request_service.py +1 -1
- fides/ui-build/static/admin/404.html +1 -1
- fides/ui-build/static/admin/_next/static/{ycPcko8qnif6BlkQ6MN4D → X2nvWLg2_-vsCTkhSWpzw}/_buildManifest.js +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/messaging-c583a61302f02add.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/storage-20d20a8d1736f7c4.js +1 -0
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests-0e557d79e1e43c2b.js +1 -0
- fides/ui-build/static/admin/add-systems/manual.html +1 -1
- fides/ui-build/static/admin/add-systems/multiple.html +1 -1
- fides/ui-build/static/admin/add-systems.html +1 -1
- fides/ui-build/static/admin/consent/configure/add-vendors.html +1 -1
- fides/ui-build/static/admin/consent/configure.html +1 -1
- fides/ui-build/static/admin/consent/privacy-experience/[id].html +1 -1
- fides/ui-build/static/admin/consent/privacy-experience/new.html +1 -1
- fides/ui-build/static/admin/consent/privacy-experience.html +1 -1
- fides/ui-build/static/admin/consent/privacy-notices/[id].html +1 -1
- fides/ui-build/static/admin/consent/privacy-notices/new.html +1 -1
- fides/ui-build/static/admin/consent/privacy-notices.html +1 -1
- fides/ui-build/static/admin/consent/properties.html +1 -1
- fides/ui-build/static/admin/consent/reporting.html +1 -1
- fides/ui-build/static/admin/consent.html +1 -1
- fides/ui-build/static/admin/data-catalog/[systemId]/projects/[projectUrn]/[resourceUrn].html +1 -1
- fides/ui-build/static/admin/data-catalog/[systemId]/projects/[projectUrn].html +1 -1
- fides/ui-build/static/admin/data-catalog/[systemId]/projects.html +1 -1
- fides/ui-build/static/admin/data-catalog/[systemId]/resources/[resourceUrn].html +1 -1
- fides/ui-build/static/admin/data-catalog/[systemId]/resources.html +1 -1
- fides/ui-build/static/admin/data-catalog.html +1 -1
- fides/ui-build/static/admin/data-discovery/action-center/[monitorId]/[systemId].html +1 -1
- fides/ui-build/static/admin/data-discovery/action-center/[monitorId].html +1 -1
- fides/ui-build/static/admin/data-discovery/action-center.html +1 -1
- fides/ui-build/static/admin/data-discovery/activity.html +1 -1
- fides/ui-build/static/admin/data-discovery/detection/[resourceUrn].html +1 -1
- fides/ui-build/static/admin/data-discovery/detection.html +1 -1
- fides/ui-build/static/admin/data-discovery/discovery/[resourceUrn].html +1 -1
- fides/ui-build/static/admin/data-discovery/discovery.html +1 -1
- fides/ui-build/static/admin/datamap.html +1 -1
- fides/ui-build/static/admin/dataset/[datasetId]/[collectionName]/[...subfieldNames].html +1 -1
- fides/ui-build/static/admin/dataset/[datasetId]/[collectionName].html +1 -1
- fides/ui-build/static/admin/dataset/[datasetId].html +1 -1
- fides/ui-build/static/admin/dataset/new.html +1 -1
- fides/ui-build/static/admin/dataset.html +1 -1
- fides/ui-build/static/admin/datastore-connection/[id].html +1 -1
- fides/ui-build/static/admin/datastore-connection/new.html +1 -1
- fides/ui-build/static/admin/datastore-connection.html +1 -1
- fides/ui-build/static/admin/index.html +1 -1
- fides/ui-build/static/admin/integrations/[id].html +1 -1
- fides/ui-build/static/admin/integrations.html +1 -1
- fides/ui-build/static/admin/lib/fides-headless.js +1 -1
- fides/ui-build/static/admin/lib/fides-preview.js +1 -1
- fides/ui-build/static/admin/lib/fides-tcf.js +2 -2
- fides/ui-build/static/admin/lib/fides.js +2 -2
- fides/ui-build/static/admin/login/[provider].html +1 -1
- fides/ui-build/static/admin/login.html +1 -1
- fides/ui-build/static/admin/messaging/[id].html +1 -1
- fides/ui-build/static/admin/messaging/add-template.html +1 -1
- fides/ui-build/static/admin/messaging.html +1 -1
- fides/ui-build/static/admin/poc/ant-components.html +1 -1
- fides/ui-build/static/admin/poc/form-experiments/AntForm.html +1 -1
- fides/ui-build/static/admin/poc/form-experiments/FormikAntFormItem.html +1 -1
- fides/ui-build/static/admin/poc/form-experiments/FormikControlled.html +1 -1
- fides/ui-build/static/admin/poc/form-experiments/FormikField.html +1 -1
- fides/ui-build/static/admin/poc/form-experiments/FormikSpreadField.html +1 -1
- fides/ui-build/static/admin/poc/forms.html +1 -1
- fides/ui-build/static/admin/poc/table-migration.html +1 -1
- fides/ui-build/static/admin/privacy-requests/[id].html +1 -1
- fides/ui-build/static/admin/privacy-requests/configure/messaging.html +1 -1
- fides/ui-build/static/admin/privacy-requests/configure/storage.html +1 -1
- fides/ui-build/static/admin/privacy-requests/configure.html +1 -1
- fides/ui-build/static/admin/privacy-requests.html +1 -1
- fides/ui-build/static/admin/properties/[id].html +1 -1
- fides/ui-build/static/admin/properties/add-property.html +1 -1
- fides/ui-build/static/admin/properties.html +1 -1
- fides/ui-build/static/admin/reporting/datamap.html +1 -1
- fides/ui-build/static/admin/settings/about/alpha.html +1 -1
- fides/ui-build/static/admin/settings/about.html +1 -1
- fides/ui-build/static/admin/settings/consent/[configuration_id]/[purpose_id].html +1 -1
- fides/ui-build/static/admin/settings/consent.html +1 -1
- fides/ui-build/static/admin/settings/custom-fields.html +1 -1
- fides/ui-build/static/admin/settings/domain-records.html +1 -1
- fides/ui-build/static/admin/settings/domains.html +1 -1
- fides/ui-build/static/admin/settings/email-templates.html +1 -1
- fides/ui-build/static/admin/settings/locations.html +1 -1
- fides/ui-build/static/admin/settings/organization.html +1 -1
- fides/ui-build/static/admin/settings/regulations.html +1 -1
- fides/ui-build/static/admin/systems/configure/[id]/test-datasets.html +1 -1
- fides/ui-build/static/admin/systems/configure/[id].html +1 -1
- fides/ui-build/static/admin/systems.html +1 -1
- fides/ui-build/static/admin/taxonomy.html +1 -1
- fides/ui-build/static/admin/user-management/new.html +1 -1
- fides/ui-build/static/admin/user-management/profile/[id].html +1 -1
- fides/ui-build/static/admin/user-management.html +1 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/messaging-8cab04871908cfeb.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests/configure/storage-150d40428245ee0c.js +0 -1
- fides/ui-build/static/admin/_next/static/chunks/pages/privacy-requests-20cdb2c8a03deae1.js +0 -1
- {ethyca_fides-2.63.1b3.dist-info → ethyca_fides-2.63.1b4.dist-info}/WHEEL +0 -0
- {ethyca_fides-2.63.1b3.dist-info → ethyca_fides-2.63.1b4.dist-info}/entry_points.txt +0 -0
- {ethyca_fides-2.63.1b3.dist-info → ethyca_fides-2.63.1b4.dist-info}/licenses/LICENSE +0 -0
- {ethyca_fides-2.63.1b3.dist-info → ethyca_fides-2.63.1b4.dist-info}/top_level.txt +0 -0
- /fides/api/models/{detection_discovery.py → detection_discovery/core.py} +0 -0
- /fides/ui-build/static/admin/_next/static/{ycPcko8qnif6BlkQ6MN4D → X2nvWLg2_-vsCTkhSWpzw}/_ssgManifest.js +0 -0
@@ -0,0 +1,271 @@
|
|
1
|
+
"""
|
2
|
+
AES GCM encryption utilities with SQLAlchemy-Utils and cryptography library implementations.
|
3
|
+
|
4
|
+
This module provides simplified encrypt/decrypt functions using two approaches:
|
5
|
+
1. SQLAlchemy-Utils AesGcmEngine (compatible with existing database encryption)
|
6
|
+
2. Cryptography library with chunked processing (better performance, standard library)
|
7
|
+
"""
|
8
|
+
|
9
|
+
import base64
|
10
|
+
import hashlib
|
11
|
+
import json
|
12
|
+
import os
|
13
|
+
from typing import Any, List, Optional, Union
|
14
|
+
|
15
|
+
from cryptography.hazmat.backends import default_backend
|
16
|
+
from cryptography.hazmat.primitives.ciphers import Cipher, algorithms, modes
|
17
|
+
from loguru import logger
|
18
|
+
from sqlalchemy_utils.types.encrypted.encrypted_type import AesGcmEngine
|
19
|
+
|
20
|
+
from fides.api.util.collection_util import Row
|
21
|
+
from fides.api.util.custom_json_encoder import CustomJSONEncoder, _custom_decoder
|
22
|
+
from fides.config import CONFIG
|
23
|
+
|
24
|
+
|
25
|
+
class EncryptionError(Exception):
|
26
|
+
"""Raised when encryption/decryption operations fail"""
|
27
|
+
|
28
|
+
|
29
|
+
# SQLAlchemy-Utils Implementation (for compatibility with existing database encryption)
|
30
|
+
def encrypt_with_sqlalchemy_utils(data: List[Row]) -> bytes:
|
31
|
+
"""
|
32
|
+
Serialize and encrypt data using CustomJSONEncoder and SQLAlchemy-Utils AesGcmEngine.
|
33
|
+
|
34
|
+
This approach is compatible with existing database encryption but has lower performance.
|
35
|
+
|
36
|
+
Args:
|
37
|
+
data: Raw data to serialize and encrypt
|
38
|
+
|
39
|
+
Returns:
|
40
|
+
Encrypted bytes
|
41
|
+
|
42
|
+
Raises:
|
43
|
+
EncryptionError: If serialization or encryption fails
|
44
|
+
"""
|
45
|
+
try:
|
46
|
+
# Serialize using CustomJSONEncoder for consistent ObjectId handling
|
47
|
+
serialized_data = json.dumps(data, cls=CustomJSONEncoder, separators=(",", ":"))
|
48
|
+
data_bytes = serialized_data.encode("utf-8")
|
49
|
+
|
50
|
+
# Encrypt using SQLAlchemy-Utils AesGcmEngine
|
51
|
+
engine = AesGcmEngine()
|
52
|
+
key = CONFIG.security.app_encryption_key
|
53
|
+
engine._update_key(key) # pylint: disable=protected-access
|
54
|
+
|
55
|
+
# AesGcmEngine expects string input
|
56
|
+
data_str = data_bytes.decode("utf-8")
|
57
|
+
encrypted_data = engine.encrypt(data_str)
|
58
|
+
encrypted_bytes = encrypted_data.encode("utf-8")
|
59
|
+
|
60
|
+
logger.debug(
|
61
|
+
f"SQLAlchemy-Utils: Encrypted {len(data_bytes)} bytes to {len(encrypted_bytes)} bytes"
|
62
|
+
)
|
63
|
+
return encrypted_bytes
|
64
|
+
|
65
|
+
except Exception as e:
|
66
|
+
logger.error(f"SQLAlchemy-Utils encryption failed: {e}")
|
67
|
+
raise EncryptionError(f"SQLAlchemy-Utils encryption failed: {str(e)}")
|
68
|
+
|
69
|
+
|
70
|
+
def decrypt_with_sqlalchemy_utils(encrypted_bytes: bytes) -> List[Row]:
|
71
|
+
"""
|
72
|
+
Decrypt and deserialize data using SQLAlchemy-Utils AesGcmEngine and _custom_decoder.
|
73
|
+
|
74
|
+
Args:
|
75
|
+
encrypted_bytes: Encrypted data bytes to decrypt
|
76
|
+
|
77
|
+
Returns:
|
78
|
+
Deserialized data
|
79
|
+
|
80
|
+
Raises:
|
81
|
+
EncryptionError: If decryption or deserialization fails
|
82
|
+
"""
|
83
|
+
try:
|
84
|
+
# Decrypt using SQLAlchemy-Utils AesGcmEngine
|
85
|
+
engine = AesGcmEngine()
|
86
|
+
key = CONFIG.security.app_encryption_key
|
87
|
+
engine._update_key(key) # pylint: disable=protected-access
|
88
|
+
|
89
|
+
# AesGcmEngine expects string input
|
90
|
+
encrypted_str = encrypted_bytes.decode("utf-8")
|
91
|
+
decrypted_data = engine.decrypt(encrypted_str)
|
92
|
+
|
93
|
+
# Deserialize using _custom_decoder for consistent ObjectId handling
|
94
|
+
data = json.loads(decrypted_data, object_hook=_custom_decoder)
|
95
|
+
|
96
|
+
logger.debug(
|
97
|
+
f"SQLAlchemy-Utils: Decrypted {len(encrypted_bytes)} bytes to {len(data)} records"
|
98
|
+
)
|
99
|
+
return data
|
100
|
+
|
101
|
+
except Exception as e:
|
102
|
+
logger.error(f"SQLAlchemy-Utils decryption failed: {e}")
|
103
|
+
raise EncryptionError(f"SQLAlchemy-Utils decryption failed: {str(e)}")
|
104
|
+
|
105
|
+
|
106
|
+
# Cryptography Library Implementation (standard, chunked processing)
|
107
|
+
def encrypt_with_cryptography(
|
108
|
+
data: Union[List[Row], Any], chunk_size: Optional[int] = None
|
109
|
+
) -> bytes:
|
110
|
+
"""
|
111
|
+
Serialize and encrypt data using the standard cryptography library with chunked processing.
|
112
|
+
|
113
|
+
This provides fast performance and memory efficiency for large datasets.
|
114
|
+
|
115
|
+
Args:
|
116
|
+
data: Raw data to serialize and encrypt
|
117
|
+
chunk_size: Size of chunks for processing (default 4MB)
|
118
|
+
|
119
|
+
Returns:
|
120
|
+
Encrypted bytes (base64-encoded string as bytes)
|
121
|
+
|
122
|
+
Raises:
|
123
|
+
EncryptionError: If serialization or encryption fails
|
124
|
+
"""
|
125
|
+
try:
|
126
|
+
# Set default chunk size
|
127
|
+
if chunk_size is None:
|
128
|
+
chunk_size = 4 * 1024 * 1024 # 4MB chunks
|
129
|
+
|
130
|
+
# Serialize using CustomJSONEncoder for consistent handling
|
131
|
+
serialized_data = json.dumps(data, cls=CustomJSONEncoder, separators=(",", ":"))
|
132
|
+
plaintext = serialized_data.encode("utf-8")
|
133
|
+
|
134
|
+
data_size_mb = len(plaintext) / (1024 * 1024)
|
135
|
+
chunk_size_mb = chunk_size / (1024 * 1024)
|
136
|
+
estimated_chunks = len(plaintext) // chunk_size + (
|
137
|
+
1 if len(plaintext) % chunk_size else 0
|
138
|
+
)
|
139
|
+
record_count = len(data) if isinstance(data, list) else "N/A"
|
140
|
+
|
141
|
+
logger.info(
|
142
|
+
f"Cryptography: Encrypting {record_count} records ({data_size_mb:.1f} MB) "
|
143
|
+
f"using {chunk_size_mb:.0f}MB chunks (~{estimated_chunks} chunks)"
|
144
|
+
)
|
145
|
+
|
146
|
+
# Use SQLAlchemy-Utils compatible key (SHA256 hash of app key)
|
147
|
+
key = _get_sqlalchemy_compatible_key()
|
148
|
+
nonce = os.urandom(12) # 96-bit nonce for AES-GCM
|
149
|
+
|
150
|
+
# Create cipher
|
151
|
+
cipher = Cipher(
|
152
|
+
algorithms.AES(key), modes.GCM(nonce), backend=default_backend()
|
153
|
+
)
|
154
|
+
encryptor = cipher.encryptor()
|
155
|
+
|
156
|
+
# Process in chunks for memory efficiency
|
157
|
+
ciphertext_chunks = []
|
158
|
+
for i in range(0, len(plaintext), chunk_size):
|
159
|
+
chunk = plaintext[i : i + chunk_size]
|
160
|
+
ciphertext_chunks.append(encryptor.update(chunk))
|
161
|
+
|
162
|
+
# Finalize and get tag
|
163
|
+
encryptor.finalize()
|
164
|
+
tag = encryptor.tag
|
165
|
+
|
166
|
+
# Combine in same format as SQLAlchemy-Utils: [nonce/iv][tag][ciphertext]
|
167
|
+
ciphertext = b"".join(ciphertext_chunks)
|
168
|
+
binary_result = nonce + tag + ciphertext
|
169
|
+
|
170
|
+
# Base64 encode to match SQLAlchemy-Utils format
|
171
|
+
base64_result = base64.b64encode(binary_result).decode("utf-8")
|
172
|
+
result_bytes = base64_result.encode("utf-8")
|
173
|
+
|
174
|
+
encrypted_size_mb = len(result_bytes) / (1024 * 1024)
|
175
|
+
logger.info(
|
176
|
+
f"Cryptography: Encrypted successfully - "
|
177
|
+
f"{len(ciphertext_chunks)} chunks, {encrypted_size_mb:.1f} MB output (base64)"
|
178
|
+
)
|
179
|
+
|
180
|
+
return result_bytes
|
181
|
+
|
182
|
+
except Exception as e:
|
183
|
+
logger.error(f"Cryptography encryption failed: {e}")
|
184
|
+
raise EncryptionError(f"Cryptography encryption failed: {str(e)}")
|
185
|
+
|
186
|
+
|
187
|
+
def decrypt_with_cryptography(
|
188
|
+
encrypted_bytes: bytes, chunk_size: Optional[int] = None
|
189
|
+
) -> Union[List[Row], Any]:
|
190
|
+
"""
|
191
|
+
Decrypt and deserialize data using the cryptography library with chunked processing.
|
192
|
+
|
193
|
+
Args:
|
194
|
+
encrypted_bytes: Encrypted data (base64-encoded string as bytes)
|
195
|
+
chunk_size: Size of chunks for processing (default 4MB)
|
196
|
+
|
197
|
+
Returns:
|
198
|
+
Deserialized data
|
199
|
+
|
200
|
+
Raises:
|
201
|
+
EncryptionError: If decryption or deserialization fails
|
202
|
+
"""
|
203
|
+
try:
|
204
|
+
# Set default chunk size
|
205
|
+
if chunk_size is None:
|
206
|
+
chunk_size = 4 * 1024 * 1024 # 4MB chunks
|
207
|
+
|
208
|
+
# Decode from base64
|
209
|
+
encrypted_str = encrypted_bytes.decode("utf-8")
|
210
|
+
binary_data = base64.b64decode(encrypted_str)
|
211
|
+
|
212
|
+
# Extract components in SQLAlchemy-Utils format: [nonce/iv][tag][ciphertext]
|
213
|
+
if len(binary_data) < 28: # 12 (nonce) + 16 (tag)
|
214
|
+
raise ValueError("Encrypted data too short")
|
215
|
+
|
216
|
+
nonce = binary_data[:12] # First 12 bytes: nonce/IV
|
217
|
+
tag = binary_data[12:28] # Next 16 bytes: tag
|
218
|
+
ciphertext = binary_data[28:] # Remaining bytes: ciphertext
|
219
|
+
|
220
|
+
encrypted_size_mb = len(encrypted_bytes) / (1024 * 1024)
|
221
|
+
chunk_size_mb = chunk_size / (1024 * 1024)
|
222
|
+
estimated_chunks = len(ciphertext) // chunk_size + (
|
223
|
+
1 if len(ciphertext) % chunk_size else 0
|
224
|
+
)
|
225
|
+
|
226
|
+
logger.info(
|
227
|
+
f"Cryptography: Decrypting {encrypted_size_mb:.1f} MB "
|
228
|
+
f"using {chunk_size_mb:.0f}MB chunks (~{estimated_chunks} chunks)"
|
229
|
+
)
|
230
|
+
|
231
|
+
# Use SQLAlchemy-Utils compatible key
|
232
|
+
key = _get_sqlalchemy_compatible_key()
|
233
|
+
cipher = Cipher(
|
234
|
+
algorithms.AES(key), modes.GCM(nonce, tag), backend=default_backend()
|
235
|
+
)
|
236
|
+
decryptor = cipher.decryptor()
|
237
|
+
|
238
|
+
# Process in chunks for memory efficiency
|
239
|
+
plaintext_chunks = []
|
240
|
+
for i in range(0, len(ciphertext), chunk_size):
|
241
|
+
chunk = ciphertext[i : i + chunk_size]
|
242
|
+
plaintext_chunks.append(decryptor.update(chunk))
|
243
|
+
|
244
|
+
# Finalize
|
245
|
+
decryptor.finalize()
|
246
|
+
|
247
|
+
# Combine and deserialize
|
248
|
+
plaintext = b"".join(plaintext_chunks)
|
249
|
+
decrypted_json = plaintext.decode("utf-8")
|
250
|
+
data = json.loads(decrypted_json, object_hook=_custom_decoder)
|
251
|
+
|
252
|
+
record_count = len(data) if isinstance(data, list) else "N/A"
|
253
|
+
logger.info(f"Cryptography: Successfully decrypted {record_count} records")
|
254
|
+
|
255
|
+
return data
|
256
|
+
|
257
|
+
except Exception as e:
|
258
|
+
logger.error(f"Cryptography decryption failed: {e}")
|
259
|
+
raise EncryptionError(f"Cryptography decryption failed: {str(e)}")
|
260
|
+
|
261
|
+
|
262
|
+
def _get_sqlalchemy_compatible_key() -> bytes:
|
263
|
+
"""Get 32-byte encryption key compatible with SQLAlchemy-Utils AesGcmEngine."""
|
264
|
+
app_key = CONFIG.security.app_encryption_key.encode(CONFIG.security.encoding)
|
265
|
+
# SQLAlchemy-Utils always uses SHA256 hash of the key
|
266
|
+
return hashlib.sha256(app_key).digest()
|
267
|
+
|
268
|
+
|
269
|
+
# Public API - Use cryptography by default for new operations
|
270
|
+
encrypt_data = encrypt_with_cryptography
|
271
|
+
decrypt_data = decrypt_with_cryptography
|
@@ -20,6 +20,7 @@ from fides.api.models.privacy_request import (
|
|
20
20
|
RequestTask,
|
21
21
|
)
|
22
22
|
from fides.api.models.property import Property
|
23
|
+
from fides.api.models.worker_task import ExecutionLogStatus
|
23
24
|
from fides.api.schemas.api import BulkUpdateFailed
|
24
25
|
from fides.api.schemas.messaging.messaging import MessagingActionType
|
25
26
|
from fides.api.schemas.policy import ActionType, CurrentStep
|
@@ -27,7 +28,6 @@ from fides.api.schemas.privacy_request import (
|
|
27
28
|
BulkPostPrivacyRequests,
|
28
29
|
BulkReviewResponse,
|
29
30
|
CheckpointActionRequired,
|
30
|
-
ExecutionLogStatus,
|
31
31
|
PrivacyRequestCreate,
|
32
32
|
PrivacyRequestResponse,
|
33
33
|
PrivacyRequestResubmit,
|
@@ -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/1fdf5c593349dbc6.css" as="style"/><link rel="stylesheet" href="/_next/static/css/1fdf5c593349dbc6.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-8457bad7859c44f0.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-33bc23b79bffe07c.js" defer=""></script><script src="/_next/static/chunks/pages/404-ec04f826f3dd79ea.js" defer=""></script><script src="/_next/static/
|
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/1fdf5c593349dbc6.css" as="style"/><link rel="stylesheet" href="/_next/static/css/1fdf5c593349dbc6.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-8457bad7859c44f0.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-33bc23b79bffe07c.js" defer=""></script><script src="/_next/static/chunks/pages/404-ec04f826f3dd79ea.js" defer=""></script><script src="/_next/static/X2nvWLg2_-vsCTkhSWpzw/_buildManifest.js" defer=""></script><script src="/_next/static/X2nvWLg2_-vsCTkhSWpzw/_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":"X2nvWLg2_-vsCTkhSWpzw","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
|
@@ -1 +1 @@
|
|
1
|
-
self.__BUILD_MANIFEST=function(s,e,t,c,a,n,i,d,o,r,p,u,g,f,b,m,j,k,h,y,l,v,I,F,x,_,U,w,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){return{__rewrites:{afterFiles:[],beforeFiles:[],fallback:[]},"/":[w,"static/chunks/pages/index-773182b5e35d0045.js"],"/404":["static/chunks/pages/404-ec04f826f3dd79ea.js"],"/_error":["static/chunks/pages/_error-bede3a8288930dcf.js"],"/add-systems":[e,w,"static/chunks/pages/add-systems-effde5cfe49de55f.js"],"/add-systems/manual":[s,t,a,n,i,j,e,c,r,u,k,h,I,q,N,"static/chunks/pages/add-systems/manual-1bec086d567aacff.js"],"/add-systems/multiple":[s,t,e,c,r,y,A,"static/chunks/pages/add-systems/multiple-f68bf100e4e60e88.js"],"/consent":["static/chunks/pages/consent-42d4d2d6e0253671.js"],"/consent/configure":[s,t,e,c,r,y,"static/chunks/pages/consent/configure-4cc195e15e0c3cc8.js"],"/consent/configure/add-vendors":[s,t,e,c,r,y,A,"static/chunks/pages/consent/configure/add-vendors-ec95ed8cb0712828.js"],"/consent/privacy-experience":[s,t,j,e,c,S,"static/chunks/pages/consent/privacy-experience-ccf96207de3b74ea.js"],"/consent/privacy-experience/new":[a,n,p,B,d,l,C,"static/chunks/pages/consent/privacy-experience/new-a0039f216fb3eb93.js"],"/consent/privacy-experience/[id]":[a,n,p,B,d,l,C,"static/chunks/pages/consent/privacy-experience/[id]-be8972c79fb39705.js"],"/consent/privacy-notices":[s,t,e,c,S,"static/chunks/pages/consent/privacy-notices-b9beeee1bde5ca79.js"],"/consent/privacy-notices/new":[a,n,p,z,d,l,D,"static/chunks/pages/consent/privacy-notices/new-373f5772ab41bc93.js"],"/consent/privacy-notices/[id]":[a,n,p,z,d,l,D,"static/chunks/pages/consent/privacy-notices/[id]-b9823cc008372cee.js"],"/consent/properties":[s,t,e,c,E,"static/chunks/pages/consent/properties-6ab3a5baafebd199.js"],"/consent/reporting":[s,t,a,e,c,"static/chunks/pages/consent/reporting-8562790ae07f17c9.js"],"/data-catalog":[s,t,a,n,i,e,c,"static/css/95ac327e5d70148d.css","static/chunks/pages/data-catalog-bb57eed84f59a932.js"],"/data-catalog/[systemId]/projects":[s,t,a,n,i,e,c,b,o,"static/chunks/pages/data-catalog/[systemId]/projects-7eb08af333baaa8e.js"],"/data-catalog/[systemId]/projects/[projectUrn]":[s,t,e,c,L,"static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]-9d1df6d890671b0c.js"],"/data-catalog/[systemId]/projects/[projectUrn]/[resourceUrn]":[s,t,a,n,i,e,c,g,b,M,o,"static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]/[resourceUrn]-18e3faf7963962e4.js"],"/data-catalog/[systemId]/resources":[s,t,e,c,L,"static/chunks/pages/data-catalog/[systemId]/resources-51d99174c8006eb5.js"],"/data-catalog/[systemId]/resources/[resourceUrn]":[s,t,a,n,i,e,c,g,b,M,o,"static/chunks/pages/data-catalog/[systemId]/resources/[resourceUrn]-7320524a47104798.js"],"/data-discovery/action-center":[s,t,e,c,"static/chunks/pages/data-discovery/action-center-9d8e84a8b4bf568d.js"],"/data-discovery/action-center/[monitorId]":[s,t,a,n,i,e,c,T,F,"static/chunks/pages/data-discovery/action-center/[monitorId]-76cefefc53e84c7f.js"],"/data-discovery/action-center/[monitorId]/[systemId]":[s,t,a,n,i,e,c,r,I,T,"static/css/81642473e38c67a5.css","static/chunks/pages/data-discovery/action-center/[monitorId]/[systemId]-47eb34aef3e31ac6.js"],"/data-discovery/activity":[s,t,e,c,"static/chunks/pages/data-discovery/activity-c3eaadd88a2e6caa.js"],"/data-discovery/detection":[s,t,e,c,g,v,P,"static/chunks/pages/data-discovery/detection-6f27dbb7c8edc69d.js"],"/data-discovery/detection/[resourceUrn]":[s,t,e,c,g,v,P,"static/chunks/pages/data-discovery/detection/[resourceUrn]-4c526db0c30c488a.js"],"/data-discovery/discovery":[s,t,a,n,i,e,c,g,b,v,G,o,"static/chunks/pages/data-discovery/discovery-fe7f51502eda57c9.js"],"/data-discovery/discovery/[resourceUrn]":[s,t,a,n,i,e,c,g,b,v,G,o,"static/chunks/pages/data-discovery/discovery/[resourceUrn]-562d2b8ae90dd1f0.js"],"/datamap":[s,t,"static/chunks/255-7db55b0e3a0f9dea.js",e,c,u,k,H,"static/chunks/pages/datamap-db45aa864e9dda8a.js"],"/dataset":[s,t,f,e,c,m,"static/chunks/pages/dataset-e3b2d8e3980ab093.js"],"/dataset/new":[f,m,"static/chunks/pages/dataset/new-c23d18a9b56c2e3c.js"],"/dataset/[datasetId]":[s,t,"static/chunks/9729-fcf6ff4e3534e4a8.js",e,c,x,"static/chunks/pages/dataset/[datasetId]-12fc86f15a4c764e.js"],"/dataset/[datasetId]/[collectionName]":[s,t,a,n,i,_,e,c,x,o,"static/chunks/pages/dataset/[datasetId]/[collectionName]-618b89228f83435e.js"],"/dataset/[datasetId]/[collectionName]/[...subfieldNames]":[s,t,a,n,i,_,e,c,x,o,"static/chunks/pages/dataset/[datasetId]/[collectionName]/[...subfieldNames]-d5cfdebc74654337.js"],"/datastore-connection":["static/css/5f393dea1c0d031c.css","static/chunks/pages/datastore-connection-84eb56f5a07bdf4f.js"],"/datastore-connection/new":[f,j,m,J,"static/chunks/pages/datastore-connection/new-bbac1f624424282d.js"],"/datastore-connection/[id]":[f,m,J,"static/chunks/pages/datastore-connection/[id]-6e27257eccf65f01.js"],"/fides-js-docs":["static/chunks/2fbcc6de-a6c61724c327e9fa.js","static/chunks/e3251fe7-5777b5d778e6fffa.js",a,n,i,f,_,K,"static/css/ab65b8cc3144bfc8.css","static/chunks/905-8ab919e7b274ed50.js","static/chunks/pages/fides-js-docs-80b241bf6cddb72e.js"],"/integrations":[s,t,a,n,i,p,O,e,c,h,Q,o,"static/chunks/pages/integrations-781808bca01f8048.js"],"/integrations/[id]":[s,t,a,n,i,p,O,e,c,h,Q,"static/css/e458b5f1afdbb7fc.css","static/chunks/pages/integrations/[id]-eb28c927da5bd653.js"],"/login":["static/chunks/pages/login-0cb0eb44bf2dd24c.js"],"/login/[provider]":["static/chunks/pages/login/[provider]-c58beef131c3a82d.js"],"/messaging":[s,t,a,n,i,e,c,"static/chunks/pages/messaging-7dc295b3ed3d2224.js"],"/messaging/add-template":[d,R,"static/chunks/pages/messaging/add-template-1de479533f733fbd.js"],"/messaging/[id]":[d,R,"static/chunks/pages/messaging/[id]-b51bee8680d66b20.js"],"/poc/ant-components":["static/chunks/pages/poc/ant-components-f64dac3392f5ded7.js"],"/poc/form-experiments/AntForm":["static/chunks/pages/poc/form-experiments/AntForm-eb020bfac4bee532.js"],"/poc/form-experiments/FormikAntFormItem":["static/chunks/pages/poc/form-experiments/FormikAntFormItem-0bd62e28b539e114.js"],"/poc/form-experiments/FormikControlled":["static/chunks/pages/poc/form-experiments/FormikControlled-936877004113c2a6.js"],"/poc/form-experiments/FormikField":["static/chunks/pages/poc/form-experiments/FormikField-6416f01524482af9.js"],"/poc/form-experiments/FormikSpreadField":[V,"static/chunks/pages/poc/form-experiments/FormikSpreadField-af097d661f6abcf4.js"],"/poc/forms":[V,"static/chunks/pages/poc/forms-3f4e1313d1f2969b.js"],"/poc/table-migration":[r,y,"static/chunks/pages/poc/table-migration-1db7a54437db7db0.js"],"/privacy-requests":[s,t,e,c,W,"static/chunks/pages/privacy-requests-20cdb2c8a03deae1.js"],"/privacy-requests/configure":["static/chunks/pages/privacy-requests/configure-b6c876dceb16ad1b.js"],"/privacy-requests/configure/messaging":["static/chunks/pages/privacy-requests/configure/messaging-8cab04871908cfeb.js"],"/privacy-requests/configure/storage":["static/chunks/pages/privacy-requests/configure/storage-150d40428245ee0c.js"],"/privacy-requests/[id]":[W,"static/css/5ded47c57dae5baf.css","static/chunks/pages/privacy-requests/[id]-64236fd0141414fd.js"],"/properties":[s,t,e,c,E,"static/chunks/pages/properties-9a88220d03e7e02f.js"],"/properties/add-property":[d,X,"static/chunks/pages/properties/add-property-644dc669b508a79a.js"],"/properties/[id]":[d,X,"static/chunks/pages/properties/[id]-54bcc875592d1fb9.js"],"/reporting/datamap":[s,t,a,n,i,K,e,c,u,k,H,"static/chunks/pages/reporting/datamap-70dc1081df37ea69.js"],"/settings/about":["static/chunks/pages/settings/about-7cb16e0000dd16c9.js"],"/settings/about/alpha":["static/chunks/pages/settings/about/alpha-3c71b4dbcb6fd6c9.js"],"/settings/consent":["static/chunks/pages/settings/consent-dc220e116ad5c09e.js"],"/settings/consent/[configuration_id]/[purpose_id]":[s,t,e,c,"static/chunks/pages/settings/consent/[configuration_id]/[purpose_id]-a18d8f12ee8dcf5d.js"],"/settings/custom-fields":[s,t,e,c,u,"static/chunks/pages/settings/custom-fields-55ddc5f25b86f28e.js"],"/settings/domain-records":[s,t,e,c,"static/chunks/pages/settings/domain-records-5ca7decded228bc8.js"],"/settings/domains":["static/chunks/pages/settings/domains-a6fafa1be2834c40.js"],"/settings/email-templates":["static/chunks/pages/settings/email-templates-e633750d2b45ddd6.js"],"/settings/locations":[s,Y,F,"static/chunks/pages/settings/locations-3948686cbd372969.js"],"/settings/organization":["static/chunks/pages/settings/organization-04ece499c22d23f4.js"],"/settings/regulations":[s,Y,F,"static/chunks/pages/settings/regulations-7752305084280cca.js"],"/systems":[s,t,e,c,"static/chunks/pages/systems-cac52e6c3abf6a15.js"],"/systems/configure/[id]":[s,t,a,n,i,j,e,c,r,u,k,h,I,q,N,"static/chunks/pages/systems/configure/[id]-86de9e6d72098e45.js"],"/systems/configure/[id]/test-datasets":[f,m,"static/chunks/pages/systems/configure/[id]/test-datasets-9e5f9066be6f218d.js"],"/taxonomy":["static/chunks/678d4732-50255cc09048e643.js",a,n,i,p,"static/chunks/3983-17ae9c232bddc413.js",u,"static/css/34a7eb08b86ddb57.css","static/chunks/pages/taxonomy-60d5930b6855679b.js"],"/user-management":[U,"static/chunks/pages/user-management-7dee83dd6d9292aa.js"],"/user-management/new":[U,Z,"static/chunks/pages/user-management/new-b124cc24b930c9e1.js"],"/user-management/profile/[id]":[U,Z,"static/chunks/pages/user-management/profile/[id]-b0f4c34752d32c73.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/messaging","/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/domain-records","/settings/domains","/settings/email-templates","/settings/locations","/settings/organization","/settings/regulations","/systems","/systems/configure/[id]","/systems/configure/[id]/test-datasets","/taxonomy","/user-management","/user-management/new","/user-management/profile/[id]"]}}("static/chunks/c78d26b1-88a3e1bacb2a03c2.js","static/chunks/7553-08bc3d9f66695111.js","static/chunks/6060-cb1ab5be7067bf7b.js","static/chunks/4481-7f6710c928bb0cb0.js","static/chunks/2858-0b44609b6be7850b.js","static/chunks/2866-a73888c17a195cbe.js","static/chunks/9278-9b1b5970f0702668.js","static/chunks/69-00cba94689b9e740.js","static/css/d2d4e9a6923e6730.css","static/chunks/401-7e800aed05537126.js","static/chunks/3662-f6a1ddca5ee42076.js","static/chunks/7980-736f9fd1e749ddd2.js","static/chunks/2310-744354001d01f366.js","static/chunks/6527-0eed08abe252a918.js","static/chunks/1099-667e84655846e78c.js","static/chunks/9327-6a53461c9764b16f.js","static/chunks/5277-e8a036319456127f.js","static/chunks/8499-1fd392d0be9e8ee4.js","static/chunks/6202-081545c7822d09af.js","static/chunks/3923-b4f701ada3ef0ee0.js","static/chunks/6277-459e054b2702c60e.js","static/chunks/9494-1ffb888b95289891.js","static/chunks/4132-9b1731bfec6ee537.js","static/css/eb46b504bb5d980d.css","static/chunks/5487-2cbd8d2169eb2a65.js","static/chunks/8702-d1c8296f9f6afc10.js","static/chunks/3513-5c2d412a84a78971.js","static/css/972dc7eef106ee7c.css","static/chunks/8032-74d94f7bd5b81c89.js","static/css/92fc10cc7ed1aba3.css","static/chunks/796-d6586308ed44334b.js","static/chunks/6853-688df0b88fe65fd5.js","static/chunks/3670-2abd9b2f17770872.js","static/chunks/1817-951f58ddd5d46081.js","static/chunks/6659-b2088f525bf13c17.js","static/chunks/6954-4e313b4599b8763d.js","static/chunks/79-fc548561beed136f.js","static/chunks/3872-45cc725e241211f0.js","static/chunks/3119-e36ae5071c8f27a5.js","static/chunks/5404-2694509cf5fa96da.js","static/chunks/5683-37137111b3e769fb.js","static/chunks/1904-361e37a5811ed7fc.js","static/chunks/5258-2079138c8cc34f6c.js","static/chunks/9767-afd674014a1d1152.js","static/chunks/9187-851756440f79cd75.js","static/chunks/641-7e4eef3222cbda70.js","static/chunks/9033-fdd87182c15b91e2.js","static/chunks/1100-0b01f500b1eaf60d.js","static/chunks/2921-49af55ad7c631c93.js","static/chunks/8433-51870336908fb253.js","static/chunks/4060-90a52a9afc655bfc.js","static/chunks/3505-113f9c95d34b7aae.js","static/chunks/4121-66b0e00d5e7ae817.js"),self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
|
1
|
+
self.__BUILD_MANIFEST=function(s,e,t,c,a,n,i,d,o,r,p,u,g,f,b,m,j,k,h,y,l,v,I,F,x,_,U,w,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){return{__rewrites:{afterFiles:[],beforeFiles:[],fallback:[]},"/":[w,"static/chunks/pages/index-773182b5e35d0045.js"],"/404":["static/chunks/pages/404-ec04f826f3dd79ea.js"],"/_error":["static/chunks/pages/_error-bede3a8288930dcf.js"],"/add-systems":[e,w,"static/chunks/pages/add-systems-effde5cfe49de55f.js"],"/add-systems/manual":[s,t,a,n,i,j,e,c,r,u,k,h,I,q,N,"static/chunks/pages/add-systems/manual-1bec086d567aacff.js"],"/add-systems/multiple":[s,t,e,c,r,y,A,"static/chunks/pages/add-systems/multiple-f68bf100e4e60e88.js"],"/consent":["static/chunks/pages/consent-42d4d2d6e0253671.js"],"/consent/configure":[s,t,e,c,r,y,"static/chunks/pages/consent/configure-4cc195e15e0c3cc8.js"],"/consent/configure/add-vendors":[s,t,e,c,r,y,A,"static/chunks/pages/consent/configure/add-vendors-ec95ed8cb0712828.js"],"/consent/privacy-experience":[s,t,j,e,c,S,"static/chunks/pages/consent/privacy-experience-ccf96207de3b74ea.js"],"/consent/privacy-experience/new":[a,n,p,B,d,l,C,"static/chunks/pages/consent/privacy-experience/new-a0039f216fb3eb93.js"],"/consent/privacy-experience/[id]":[a,n,p,B,d,l,C,"static/chunks/pages/consent/privacy-experience/[id]-be8972c79fb39705.js"],"/consent/privacy-notices":[s,t,e,c,S,"static/chunks/pages/consent/privacy-notices-b9beeee1bde5ca79.js"],"/consent/privacy-notices/new":[a,n,p,z,d,l,D,"static/chunks/pages/consent/privacy-notices/new-373f5772ab41bc93.js"],"/consent/privacy-notices/[id]":[a,n,p,z,d,l,D,"static/chunks/pages/consent/privacy-notices/[id]-b9823cc008372cee.js"],"/consent/properties":[s,t,e,c,E,"static/chunks/pages/consent/properties-6ab3a5baafebd199.js"],"/consent/reporting":[s,t,a,e,c,"static/chunks/pages/consent/reporting-8562790ae07f17c9.js"],"/data-catalog":[s,t,a,n,i,e,c,"static/css/95ac327e5d70148d.css","static/chunks/pages/data-catalog-bb57eed84f59a932.js"],"/data-catalog/[systemId]/projects":[s,t,a,n,i,e,c,b,o,"static/chunks/pages/data-catalog/[systemId]/projects-7eb08af333baaa8e.js"],"/data-catalog/[systemId]/projects/[projectUrn]":[s,t,e,c,L,"static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]-9d1df6d890671b0c.js"],"/data-catalog/[systemId]/projects/[projectUrn]/[resourceUrn]":[s,t,a,n,i,e,c,g,b,M,o,"static/chunks/pages/data-catalog/[systemId]/projects/[projectUrn]/[resourceUrn]-18e3faf7963962e4.js"],"/data-catalog/[systemId]/resources":[s,t,e,c,L,"static/chunks/pages/data-catalog/[systemId]/resources-51d99174c8006eb5.js"],"/data-catalog/[systemId]/resources/[resourceUrn]":[s,t,a,n,i,e,c,g,b,M,o,"static/chunks/pages/data-catalog/[systemId]/resources/[resourceUrn]-7320524a47104798.js"],"/data-discovery/action-center":[s,t,e,c,"static/chunks/pages/data-discovery/action-center-9d8e84a8b4bf568d.js"],"/data-discovery/action-center/[monitorId]":[s,t,a,n,i,e,c,T,F,"static/chunks/pages/data-discovery/action-center/[monitorId]-76cefefc53e84c7f.js"],"/data-discovery/action-center/[monitorId]/[systemId]":[s,t,a,n,i,e,c,r,I,T,"static/css/81642473e38c67a5.css","static/chunks/pages/data-discovery/action-center/[monitorId]/[systemId]-47eb34aef3e31ac6.js"],"/data-discovery/activity":[s,t,e,c,"static/chunks/pages/data-discovery/activity-c3eaadd88a2e6caa.js"],"/data-discovery/detection":[s,t,e,c,g,v,P,"static/chunks/pages/data-discovery/detection-6f27dbb7c8edc69d.js"],"/data-discovery/detection/[resourceUrn]":[s,t,e,c,g,v,P,"static/chunks/pages/data-discovery/detection/[resourceUrn]-4c526db0c30c488a.js"],"/data-discovery/discovery":[s,t,a,n,i,e,c,g,b,v,G,o,"static/chunks/pages/data-discovery/discovery-fe7f51502eda57c9.js"],"/data-discovery/discovery/[resourceUrn]":[s,t,a,n,i,e,c,g,b,v,G,o,"static/chunks/pages/data-discovery/discovery/[resourceUrn]-562d2b8ae90dd1f0.js"],"/datamap":[s,t,"static/chunks/255-7db55b0e3a0f9dea.js",e,c,u,k,H,"static/chunks/pages/datamap-db45aa864e9dda8a.js"],"/dataset":[s,t,f,e,c,m,"static/chunks/pages/dataset-e3b2d8e3980ab093.js"],"/dataset/new":[f,m,"static/chunks/pages/dataset/new-c23d18a9b56c2e3c.js"],"/dataset/[datasetId]":[s,t,"static/chunks/9729-fcf6ff4e3534e4a8.js",e,c,x,"static/chunks/pages/dataset/[datasetId]-12fc86f15a4c764e.js"],"/dataset/[datasetId]/[collectionName]":[s,t,a,n,i,_,e,c,x,o,"static/chunks/pages/dataset/[datasetId]/[collectionName]-618b89228f83435e.js"],"/dataset/[datasetId]/[collectionName]/[...subfieldNames]":[s,t,a,n,i,_,e,c,x,o,"static/chunks/pages/dataset/[datasetId]/[collectionName]/[...subfieldNames]-d5cfdebc74654337.js"],"/datastore-connection":["static/css/5f393dea1c0d031c.css","static/chunks/pages/datastore-connection-84eb56f5a07bdf4f.js"],"/datastore-connection/new":[f,j,m,J,"static/chunks/pages/datastore-connection/new-bbac1f624424282d.js"],"/datastore-connection/[id]":[f,m,J,"static/chunks/pages/datastore-connection/[id]-6e27257eccf65f01.js"],"/fides-js-docs":["static/chunks/2fbcc6de-a6c61724c327e9fa.js","static/chunks/e3251fe7-5777b5d778e6fffa.js",a,n,i,f,_,K,"static/css/ab65b8cc3144bfc8.css","static/chunks/905-8ab919e7b274ed50.js","static/chunks/pages/fides-js-docs-80b241bf6cddb72e.js"],"/integrations":[s,t,a,n,i,p,O,e,c,h,Q,o,"static/chunks/pages/integrations-781808bca01f8048.js"],"/integrations/[id]":[s,t,a,n,i,p,O,e,c,h,Q,"static/css/e458b5f1afdbb7fc.css","static/chunks/pages/integrations/[id]-eb28c927da5bd653.js"],"/login":["static/chunks/pages/login-0cb0eb44bf2dd24c.js"],"/login/[provider]":["static/chunks/pages/login/[provider]-c58beef131c3a82d.js"],"/messaging":[s,t,a,n,i,e,c,"static/chunks/pages/messaging-7dc295b3ed3d2224.js"],"/messaging/add-template":[d,R,"static/chunks/pages/messaging/add-template-1de479533f733fbd.js"],"/messaging/[id]":[d,R,"static/chunks/pages/messaging/[id]-b51bee8680d66b20.js"],"/poc/ant-components":["static/chunks/pages/poc/ant-components-f64dac3392f5ded7.js"],"/poc/form-experiments/AntForm":["static/chunks/pages/poc/form-experiments/AntForm-eb020bfac4bee532.js"],"/poc/form-experiments/FormikAntFormItem":["static/chunks/pages/poc/form-experiments/FormikAntFormItem-0bd62e28b539e114.js"],"/poc/form-experiments/FormikControlled":["static/chunks/pages/poc/form-experiments/FormikControlled-936877004113c2a6.js"],"/poc/form-experiments/FormikField":["static/chunks/pages/poc/form-experiments/FormikField-6416f01524482af9.js"],"/poc/form-experiments/FormikSpreadField":[V,"static/chunks/pages/poc/form-experiments/FormikSpreadField-af097d661f6abcf4.js"],"/poc/forms":[V,"static/chunks/pages/poc/forms-3f4e1313d1f2969b.js"],"/poc/table-migration":[r,y,"static/chunks/pages/poc/table-migration-1db7a54437db7db0.js"],"/privacy-requests":[s,t,e,c,W,"static/chunks/pages/privacy-requests-0e557d79e1e43c2b.js"],"/privacy-requests/configure":["static/chunks/pages/privacy-requests/configure-b6c876dceb16ad1b.js"],"/privacy-requests/configure/messaging":["static/chunks/pages/privacy-requests/configure/messaging-c583a61302f02add.js"],"/privacy-requests/configure/storage":["static/chunks/pages/privacy-requests/configure/storage-20d20a8d1736f7c4.js"],"/privacy-requests/[id]":[W,"static/css/5ded47c57dae5baf.css","static/chunks/pages/privacy-requests/[id]-64236fd0141414fd.js"],"/properties":[s,t,e,c,E,"static/chunks/pages/properties-9a88220d03e7e02f.js"],"/properties/add-property":[d,X,"static/chunks/pages/properties/add-property-644dc669b508a79a.js"],"/properties/[id]":[d,X,"static/chunks/pages/properties/[id]-54bcc875592d1fb9.js"],"/reporting/datamap":[s,t,a,n,i,K,e,c,u,k,H,"static/chunks/pages/reporting/datamap-70dc1081df37ea69.js"],"/settings/about":["static/chunks/pages/settings/about-7cb16e0000dd16c9.js"],"/settings/about/alpha":["static/chunks/pages/settings/about/alpha-3c71b4dbcb6fd6c9.js"],"/settings/consent":["static/chunks/pages/settings/consent-dc220e116ad5c09e.js"],"/settings/consent/[configuration_id]/[purpose_id]":[s,t,e,c,"static/chunks/pages/settings/consent/[configuration_id]/[purpose_id]-a18d8f12ee8dcf5d.js"],"/settings/custom-fields":[s,t,e,c,u,"static/chunks/pages/settings/custom-fields-55ddc5f25b86f28e.js"],"/settings/domain-records":[s,t,e,c,"static/chunks/pages/settings/domain-records-5ca7decded228bc8.js"],"/settings/domains":["static/chunks/pages/settings/domains-a6fafa1be2834c40.js"],"/settings/email-templates":["static/chunks/pages/settings/email-templates-e633750d2b45ddd6.js"],"/settings/locations":[s,Y,F,"static/chunks/pages/settings/locations-3948686cbd372969.js"],"/settings/organization":["static/chunks/pages/settings/organization-04ece499c22d23f4.js"],"/settings/regulations":[s,Y,F,"static/chunks/pages/settings/regulations-7752305084280cca.js"],"/systems":[s,t,e,c,"static/chunks/pages/systems-cac52e6c3abf6a15.js"],"/systems/configure/[id]":[s,t,a,n,i,j,e,c,r,u,k,h,I,q,N,"static/chunks/pages/systems/configure/[id]-86de9e6d72098e45.js"],"/systems/configure/[id]/test-datasets":[f,m,"static/chunks/pages/systems/configure/[id]/test-datasets-9e5f9066be6f218d.js"],"/taxonomy":["static/chunks/678d4732-50255cc09048e643.js",a,n,i,p,"static/chunks/3983-17ae9c232bddc413.js",u,"static/css/34a7eb08b86ddb57.css","static/chunks/pages/taxonomy-60d5930b6855679b.js"],"/user-management":[U,"static/chunks/pages/user-management-7dee83dd6d9292aa.js"],"/user-management/new":[U,Z,"static/chunks/pages/user-management/new-b124cc24b930c9e1.js"],"/user-management/profile/[id]":[U,Z,"static/chunks/pages/user-management/profile/[id]-b0f4c34752d32c73.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/messaging","/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/domain-records","/settings/domains","/settings/email-templates","/settings/locations","/settings/organization","/settings/regulations","/systems","/systems/configure/[id]","/systems/configure/[id]/test-datasets","/taxonomy","/user-management","/user-management/new","/user-management/profile/[id]"]}}("static/chunks/c78d26b1-88a3e1bacb2a03c2.js","static/chunks/7553-08bc3d9f66695111.js","static/chunks/6060-cb1ab5be7067bf7b.js","static/chunks/4481-7f6710c928bb0cb0.js","static/chunks/2858-0b44609b6be7850b.js","static/chunks/2866-a73888c17a195cbe.js","static/chunks/9278-9b1b5970f0702668.js","static/chunks/69-00cba94689b9e740.js","static/css/d2d4e9a6923e6730.css","static/chunks/401-7e800aed05537126.js","static/chunks/3662-f6a1ddca5ee42076.js","static/chunks/7980-736f9fd1e749ddd2.js","static/chunks/2310-744354001d01f366.js","static/chunks/6527-0eed08abe252a918.js","static/chunks/1099-667e84655846e78c.js","static/chunks/9327-6a53461c9764b16f.js","static/chunks/5277-e8a036319456127f.js","static/chunks/8499-1fd392d0be9e8ee4.js","static/chunks/6202-081545c7822d09af.js","static/chunks/3923-b4f701ada3ef0ee0.js","static/chunks/6277-459e054b2702c60e.js","static/chunks/9494-1ffb888b95289891.js","static/chunks/4132-9b1731bfec6ee537.js","static/css/eb46b504bb5d980d.css","static/chunks/5487-2cbd8d2169eb2a65.js","static/chunks/8702-d1c8296f9f6afc10.js","static/chunks/3513-5c2d412a84a78971.js","static/css/972dc7eef106ee7c.css","static/chunks/8032-74d94f7bd5b81c89.js","static/css/92fc10cc7ed1aba3.css","static/chunks/796-d6586308ed44334b.js","static/chunks/6853-688df0b88fe65fd5.js","static/chunks/3670-2abd9b2f17770872.js","static/chunks/1817-951f58ddd5d46081.js","static/chunks/6659-b2088f525bf13c17.js","static/chunks/6954-4e313b4599b8763d.js","static/chunks/79-fc548561beed136f.js","static/chunks/3872-45cc725e241211f0.js","static/chunks/3119-e36ae5071c8f27a5.js","static/chunks/5404-2694509cf5fa96da.js","static/chunks/5683-37137111b3e769fb.js","static/chunks/1904-361e37a5811ed7fc.js","static/chunks/5258-2079138c8cc34f6c.js","static/chunks/9767-afd674014a1d1152.js","static/chunks/9187-851756440f79cd75.js","static/chunks/641-7e4eef3222cbda70.js","static/chunks/9033-fdd87182c15b91e2.js","static/chunks/1100-0b01f500b1eaf60d.js","static/chunks/2921-49af55ad7c631c93.js","static/chunks/8433-51870336908fb253.js","static/chunks/4060-90a52a9afc655bfc.js","static/chunks/3505-113f9c95d34b7aae.js","static/chunks/4121-66b0e00d5e7ae817.js"),self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
|
@@ -0,0 +1 @@
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8593],{13687:function(e,t,i){(window.__NEXT_P=window.__NEXT_P||[]).push(["/privacy-requests/configure/messaging",function(){return i(61463)}])},77213:function(e,t,i){"use strict";i.d(t,{Z:function(){return m}});var n=i(24246),s=i(4454),r=i(88038),l=i.n(r),a=i(86677);i(27378);var o=i(25980),c=i(90867),u=i(77830),d=()=>{let e=(0,a.useRouter)();return(0,n.jsx)(s.xuv,{bg:"gray.50",border:"1px solid",borderColor:"blue.400",borderRadius:"md",justifyContent:"space-between",p:5,mb:5,mt:5,children:(0,n.jsxs)(s.xuv,{children:[(0,n.jsxs)(s.Kqy,{direction:{base:"column",sm:"row"},justifyContent:"space-between",children:[(0,n.jsx)(s.xvT,{fontWeight:"semibold",children:"Configure your storage and messaging provider"}),(0,n.jsx)(s.wpx,{onClick:()=>{e.push(u.fz)},children:"Configure"})]}),(0,n.jsxs)(s.xvT,{children:["Before Fides can process your privacy requests we need two simple steps to configure your storage and email client."," "]})]})})},m=e=>{let{children:t,title:i,padded:r=!0,mainProps:u}=e,m=(0,o.hz)(),p=(0,a.useRouter)(),h="/privacy-requests"===p.pathname||"/datastore-connection"===p.pathname,x=!(m.flags.privacyRequestsConfiguration&&h),{data:g}=(0,c.JE)(void 0,{skip:x}),{data:f}=(0,c.PW)(void 0,{skip:x}),y=m.flags.privacyRequestsConfiguration&&(!g||!f)&&h;return(0,n.jsxs)(s.kCb,{"data-testid":i,direction:"column",h:"100vh",children:[(0,n.jsxs)(l(),{children:[(0,n.jsxs)("title",{children:["Fides Admin UI - ",i]}),(0,n.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,n.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,n.jsxs)(s.kCb,{as:"main",direction:"column",py:r?6:0,px:r?10:0,h:r?"calc(100% - 48px)":"full",flex:1,minWidth:0,overflow:"auto",...u,children:[y?(0,n.jsx)(d,{}):null,t]})]})}},58754:function(e,t,i){"use strict";var n=i(24246),s=i(4454),r=i(70788);t.Z=e=>{let{heading:t,breadcrumbItems:i,isSticky:l=!0,children:a,rightContent:o,style:c,...u}=e;return(0,n.jsxs)("div",{...u,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",...c}:{paddingBottom:"24px",...c},children:[(0,n.jsxs)(s.jqI,{justify:"space-between",children:["string"==typeof t?(0,n.jsx)(s.lQT,{className:i||a?"pb-4":void 0,level:1,"data-testid":"page-heading",children:t}):t,o&&(0,n.jsx)("div",{"data-testid":"page-header-right-content",children:o})]}),!!i&&(0,n.jsx)(r.m,{className:a?"pb-4":void 0,items:i,"data-testid":"page-breadcrumb"}),a]})}},812:function(e,t,i){"use strict";i.d(t,{D4:function(){return r.D4},MM:function(){return m},Ot:function(){return c},c6:function(){return s},cj:function(){return h},e$:function(){return a},fn:function(){return o},iC:function(){return p},nU:function(){return d},tB:function(){return u}});var n,s,r=i(19043);let l="An unexpected error occurred. Please try again.",a=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:l;if((0,r.Bw)(e)){if((0,r.hE)(e.data))return e.data.detail;if((0,r.cz)(e.data)){var i;let t=null===(i=e.data.detail)||void 0===i?void 0:i[0];return"".concat(null==t?void 0:t.msg,": ").concat(null==t?void 0:t.loc)}if(409===e.status&&(0,r.Dy)(e.data)||404===e.status&&(0,r.XD)(e.data))return"".concat(e.data.detail.error," (").concat(e.data.detail.fides_key,")")}return t};function o(e){return"object"==typeof e&&null!=e&&"status"in e}function c(e){return"object"==typeof e&&null!=e&&"data"in e&&"string"==typeof e.data.detail}function u(e){return"object"==typeof e&&null!=e&&"data"in e&&Array.isArray(e.data.detail)}let d=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{status:500,message:l};if((0,r.oK)(e))return{status:e.originalStatus,message:e.data};if((0,r.Bw)(e)){let{status:i}=e;return{status:i,message:a(e,t.message)}}return t},m=e=>Object.entries(e).map(e=>({value:e[1],label:e[1]}));(n=s||(s={})).GVL="gvl",n.AC="gacp",n.COMPASS="compass";let p={gvl:{label:"GVL",fullName:"Global Vendor List"},gacp:{label:"AC",fullName:"Google Additional Consent List"},compass:{label:"",fullName:""}},h=e=>{let t=e.split(".")[0];return"gacp"===t?"gacp":"gvl"===t?"gvl":"compass"}},14047:function(e,t,i){"use strict";i.d(t,{H:function(){return r},V:function(){return n.V}});var n=i(84306),s=i(812);let r=()=>{let{errorAlert:e}=(0,n.V)();return{handleError:t=>{let i="An unexpected error occurred. Please try again.";(0,s.Ot)(t)?i=t.data.detail:(0,s.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 n=i(24246),s=i(4454);let r=()=>{let e=(0,s.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,n.jsxs)(s.bZj,{alignItems:"normal",status:"error","data-testid":"error-alert",children:[(0,n.jsx)(s.zMQ,{}),(0,n.jsxs)(s.xuv,{children:[i&&(0,n.jsx)(s.CdC,{children:i}),(0,n.jsx)(s.XaZ,{children:t})]}),(0,n.jsx)(s.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,n.jsxs)(s.bZj,{alignItems:"normal",status:"success",variant:"subtle","data-testid":"success-alert",children:[(0,n.jsx)(s.zMQ,{}),(0,n.jsxs)(s.xuv,{children:[i&&(0,n.jsx)(s.CdC,{children:i}),(0,n.jsx)(s.XaZ,{children:t})]}),(0,n.jsx)(s.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 c}});var n=i(24246),s=i(4454),r=i(79894),l=i.n(r),a=i(27378);let{Text:o}=s.AntTypography,c=e=>{let{items:t,...i}=e,r=(0,a.useMemo)(()=>null==t?void 0:t.map((e,i)=>{let r=i===t.length-1,a={...e},c=a.onClick&&!a.href;return("string"==typeof a.title&&(a.title=(0,n.jsx)(o,{style:{color:"inherit",maxWidth:r?void 0:400},ellipsis:!r,children:a.title})),c)?a.title=(0,n.jsx)(s.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,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"anticon align-text-bottom",children:a.icon}),a.title]})),a.href&&a.title&&(a.title=(0,n.jsx)(l(),{href:a.href,className:"ant-breadcrumb-link",children:a.title}),delete a.href)),a}),[t]);return(0,n.jsx)(s.zrq,{items:r,...i})}},71784:function(e,t,i){"use strict";i.d(t,{DE:function(){return o},I3:function(){return s},kN:function(){return l},qX:function(){return a},rE:function(){return r}});var n=i(61317);let s=[...new Map([[n.q2.APPROVED,"Approved"],[n.q2.AWAITING_EMAIL_SEND,"Awaiting email send"],[n.q2.CANCELED,"Canceled"],[n.q2.COMPLETE,"Completed"],[n.q2.DENIED,"Denied"],[n.q2.ERROR,"Error"],[n.q2.IN_PROCESSING,"In progress"],[n.q2.PENDING,"New"],[n.q2.PAUSED,"Paused"],[n.q2.IDENTITY_UNVERIFIED,"Unverified"],[n.q2.REQUIRES_INPUT,"Requires input"]])].map(e=>{let[t,i]=e;return{label:i,value:t}}),r=new Map([[n.Us.ACCESS,"Access"],[n.Us.ERASURE,"Erasure"],[n.Us.CONSENT,"Consent"],[n.Us.UPDATE,"Update"]]),l=[...r].map(e=>{let[t,i]=e;return{label:i,value:t}}),a={mailgun:"mailgun",twilio_email:"twilio_email",twilio_text:"twilio_text"},o={local:"local",s3:"s3",gcs:"gcs"}},61463:function(e,t,i){"use strict";i.r(t),i.d(t,{default:function(){return _}});var n=i(24246),s=i(4454),r=i(27378),l=i(812),a=i(14047),o=i(77213),c=i(77830),u=i(58754),d=i(7426),m=i(71784),p=i(90867),h=i(34090),x=i(40324),g=e=>{let{messagingDetails:t}=e,{successAlert:i}=(0,a.V)(),{handleError:r}=(0,a.H)(),[o]=(0,p.SU)(),c=t.service_type===m.qX.twilio_email||t.service_type===m.qX.mailgun,u=t.service_type===m.qX.twilio_text,d=async e=>{if(c){let t=await o({email:e.email});(0,l.D4)(t)?r(t.error):i("Test message successfully sent.")}if(u){let t=await o({phone_number:e.phone});(0,l.D4)(t)?r(t.error):i("Test message successfully sent.")}};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(s.izJ,{mt:10}),(0,n.jsx)(s.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,mb:5,children:"Test connection"}),(0,n.jsx)(s.Kqy,{children:(0,n.jsx)(h.J9,{initialValues:{email:"",phone:""},onSubmit:d,children:e=>{let{isSubmitting:t,resetForm:i}=e;return(0,n.jsxs)(h.l0,{children:[c?(0,n.jsx)(x.j0,{name:"email",label:"Email",placeholder:"youremail@domain.com",isRequired:!0}):null,u?(0,n.jsx)(x.j0,{name:"phone",label:"Phone",placeholder:"+10000000000",isRequired:!0}):null,(0,n.jsxs)(s.xuv,{mt:10,children:[(0,n.jsx)(s.wpx,{onClick:()=>i(),className:"mr-2",children:"Cancel"}),(0,n.jsx)(s.wpx,{disabled:t,htmlType:"submit",type:"primary","data-testid":"save-btn",children:"Save"})]})]})}})})]})},f=()=>{var e;let{successAlert:t}=(0,a.V)(),[i,o]=(0,r.useState)(""),{handleError:c}=(0,a.H)(),{data:u}=(0,p.S3)({type:m.qX.mailgun}),[d]=(0,p.h9)(),[f]=(0,p.iI)(),y=async e=>{let i=await d({service_type:m.qX.mailgun,details:{is_eu_domain:"false",domain:e.domain}});(0,l.D4)(i)?c(i.error):(t("Mailgun email successfully updated. You can now enter your security key."),o("apiKey"))},j=async e=>{let i=await f({details:{mailgun_api_key:e.api_key},service_type:m.qX.mailgun});(0,l.D4)(i)?c(i.error):(t("Mailgun security key successfully updated."),o("testConnection"))},v={domain:null!==(e=null==u?void 0:u.details.domain)&&void 0!==e?e:""};return(0,n.jsxs)(s.xuv,{children:[(0,n.jsx)(s.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"Mailgun messaging configuration"}),(0,n.jsx)(s.Kqy,{children:(0,n.jsx)(h.J9,{initialValues:v,onSubmit:y,enableReinitialize:!0,children:e=>{let{isSubmitting:t,handleReset:i}=e;return(0,n.jsxs)(h.l0,{children:[(0,n.jsx)(s.Kqy,{mt:5,spacing:5,children:(0,n.jsx)(x.j0,{name:"domain",label:"Domain",placeholder:"Enter domain","data-testid":"option-twilio-domain",isRequired:!0})}),(0,n.jsxs)(s.xuv,{mt:10,children:[(0,n.jsx)(s.wpx,{onClick:i,className:"mr-2",children:"Cancel"}),(0,n.jsx)(s.wpx,{htmlType:"submit",disabled:t,type:"primary","data-testid":"save-btn",children:"Save"})]})]})}})}),"apiKey"===i||"testConnection"===i?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(s.izJ,{mt:10}),(0,n.jsx)(s.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"Security key"}),(0,n.jsx)(s.Kqy,{children:(0,n.jsx)(h.J9,{initialValues:{api_key:""},onSubmit:j,children:e=>{let{isSubmitting:t,handleReset:i}=e;return(0,n.jsxs)(h.l0,{children:[(0,n.jsx)(x.j0,{name:"api_key",label:"API key",type:"password",isRequired:!0}),(0,n.jsxs)(s.xuv,{mt:10,children:[(0,n.jsx)(s.wpx,{onClick:i,className:"mr-2",children:"Cancel"}),(0,n.jsx)(s.wpx,{disabled:t,htmlType:"submit",type:"primary","data-testid":"save-btn",children:"Save"})]})]})}})})]}):null,"testConnection"===i?(0,n.jsx)(g,{messagingDetails:u||{service_type:m.qX.mailgun}}):null]})},y=()=>{var e;let[t,i]=(0,r.useState)(""),{successAlert:o}=(0,a.V)(),{handleError:c}=(0,a.H)(),{data:u}=(0,p.S3)({type:m.qX.twilio_email}),[d]=(0,p.h9)(),[f]=(0,p.iI)(),y=async e=>{let t=await d({service_type:m.qX.twilio_email,details:{twilio_email_from:e.email}});(0,l.D4)(t)?c(t.error):(o("Twilio email successfully updated. You can now enter your security key."),i("configureTwilioEmailSecrets"))},j=async e=>{let t=await f({details:{twilio_api_key:e.api_key},service_type:m.qX.twilio_email});(0,l.D4)(t)?c(t.error):(o("Twilio email secrets successfully updated."),i("testConnection"))},v={email:null!==(e=null==u?void 0:u.details.twilio_email_from)&&void 0!==e?e:""};return(0,n.jsxs)(s.xuv,{children:[(0,n.jsx)(s.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"Twilio Email messaging configuration"}),(0,n.jsx)(s.Kqy,{children:(0,n.jsx)(h.J9,{initialValues:v,onSubmit:y,enableReinitialize:!0,children:e=>{let{isSubmitting:t,handleReset:i}=e;return(0,n.jsxs)(h.l0,{children:[(0,n.jsx)(s.Kqy,{mt:5,spacing:5,children:(0,n.jsx)(x.j0,{name:"email",label:"Email",placeholder:"Enter email",isRequired:!0})}),(0,n.jsxs)(s.xuv,{mt:10,children:[(0,n.jsx)(s.wpx,{onClick:()=>i(),className:"mr-2",children:"Cancel"}),(0,n.jsx)(s.wpx,{disabled:t,htmlType:"submit",type:"primary","data-testid":"save-btn",children:"Save"})]})]})}})}),"configureTwilioEmailSecrets"===t||"testConnection"===t?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(s.izJ,{mt:10}),(0,n.jsx)(s.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"Security key"}),(0,n.jsx)(s.Kqy,{children:(0,n.jsx)(h.J9,{initialValues:{api_key:""},onSubmit:j,children:e=>{let{isSubmitting:t,handleReset:i}=e;return(0,n.jsxs)(h.l0,{children:[(0,n.jsx)(s.Kqy,{mt:5,spacing:5,children:(0,n.jsx)(x.j0,{name:"api_key",label:"API key",type:"password",isRequired:!0})}),(0,n.jsxs)(s.xuv,{mt:10,children:[(0,n.jsx)(s.wpx,{onClick:()=>i(),className:"mr-2",children:"Cancel"}),(0,n.jsx)(s.wpx,{disabled:t,htmlType:"submit",type:"primary","data-testid":"save-btn",children:"Save"})]})]})}})})]}):null,"testConnection"===t?(0,n.jsx)(g,{messagingDetails:u||{service_type:m.qX.twilio_email}}):null]})},j=()=>{let{successAlert:e}=(0,a.V)(),{handleError:t}=(0,a.H)(),[i,o]=(0,r.useState)(""),{data:c}=(0,p.S3)({type:"twilio_text"}),[u]=(0,p.iI)(),d=async i=>{let n=await u({details:{twilio_account_sid:i.account_sid,twilio_auth_token:i.auth_token,twilio_messaging_service_sid:i.messaging_service_sid,twilio_sender_phone_number:i.phone},service_type:m.qX.twilio_text});(0,l.D4)(n)?t(n.error):(e("Twilio text secrets successfully updated."),o("testConnection"))};return(0,n.jsxs)(s.xuv,{children:[(0,n.jsx)(s.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"Twilio SMS messaging configuration"}),(0,n.jsx)(s.Kqy,{children:(0,n.jsx)(h.J9,{initialValues:{account_sid:"",auth_token:"",messaging_service_sid:"",phone:""},onSubmit:d,enableReinitialize:!0,children:e=>{let{isSubmitting:t,handleReset:i}=e;return(0,n.jsxs)(h.l0,{children:[(0,n.jsxs)(s.Kqy,{mt:5,spacing:5,children:[(0,n.jsx)(x.j0,{name:"account_sid",label:"Account SID",placeholder:"Enter account SID",isRequired:!0}),(0,n.jsx)(x.j0,{name:"auth_token",label:"Auth token",placeholder:"Enter auth token",type:"password",isRequired:!0}),(0,n.jsx)(x.j0,{name:"messaging_service_sid",label:"Messaging Service SID",placeholder:"Enter messaging service SID"}),(0,n.jsx)(x.j0,{name:"phone",label:"Phone Number",placeholder:"Enter phone number"})]}),(0,n.jsxs)(s.xuv,{mt:10,children:[(0,n.jsx)(s.wpx,{onClick:()=>i(),className:"mr-2",children:"Cancel"}),(0,n.jsx)(s.wpx,{disabled:t,htmlType:"submit",type:"primary","data-testid":"save-btn",children:"Save"})]})]})}})}),"testConnection"===i?(0,n.jsx)(g,{messagingDetails:c||{service_type:m.qX.twilio_text}}):null]})},v=()=>{let{successAlert:e}=(0,a.V)(),{handleError:t}=(0,a.H)(),[i,h]=(0,r.useState)(""),[x]=(0,p.h9)(),[g]=(0,d.L)(),{data:v}=(0,p.JE)();(0,r.useEffect)(()=>{v&&h(null==v?void 0:v.service_type)},[v]);let _=async i=>{let{value:n}=i.target,s=await g({notifications:{notification_service_type:n,send_request_completion_notification:!0,send_request_receipt_notification:!0,send_request_review_notification:!0},execution:{subject_identity_verification_required:!0}});if((0,l.D4)(s))t(s.error);else if(n!==m.qX.twilio_text)h(n);else{let i=await x({service_type:m.qX.twilio_text});(0,l.D4)(i)?t(i.error):(e("Messaging provider saved successfully."),h(n))}};return(0,n.jsxs)(o.Z,{title:"Configure Privacy Requests - Messaging",children:[(0,n.jsx)(u.Z,{heading:"Privacy Requests",breadcrumbItems:[{title:"All requests",href:c.Jw},{title:"Configure requests",href:c.fz},{title:"Messaging"}]}),(0,n.jsx)(s.X6q,{mb:5,fontSize:"md",fontWeight:"semibold",children:"Configure your messaging provider"}),(0,n.jsxs)(s.xuv,{display:"flex",flexDirection:"column",width:"50%",children:[(0,n.jsxs)(s.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,n.jsx)(s.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,n.jsx)(s.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"Choose service type to configure"}),(0,n.jsx)(s.y02.Group,{onChange:_,value:i,"data-testid":"privacy-requests-messaging-provider-selection",className:"p-3",children:(0,n.jsxs)(s.jqI,{children:[(0,n.jsx)(s.y02,{value:m.qX.mailgun,"data-testid":"option-mailgun",children:"Mailgun Email"},m.qX.mailgun),(0,n.jsx)(s.y02,{value:m.qX.twilio_email,"data-testid":"option-twilio-email",children:"Twilio Email"},m.qX.twilio_email),(0,n.jsx)(s.y02,{value:m.qX.twilio_text,"data-testid":"option-twilio-sms",children:"Twilio SMS"},m.qX.twilio_text)]})}),i===m.qX.mailgun?(0,n.jsx)(f,{}):null,i===m.qX.twilio_email?(0,n.jsx)(y,{}):null,i===m.qX.twilio_text?(0,n.jsx)(j,{}):null]})]})},_=()=>(0,n.jsx)(v,{})},19043:function(e,t,i){"use strict";i.d(t,{Bw:function(){return l},D4:function(){return s},Dy:function(){return o},XD:function(){return c},cz:function(){return u},hE:function(){return a},oK:function(){return r}});var n=i(76649);let s=e=>"error"in e,r=e=>(0,n.Ln)({status:"string"},e)&&"PARSING_ERROR"===e.status,l=e=>(0,n.Ln)({status:"number",data:{}},e),a=e=>(0,n.Ln)({detail:"string"},e),o=e=>(0,n.Ln)({detail:{error:"string",resource_type:"string",fides_key:"string"}},e),c=e=>(0,n.Ln)({detail:{error:"string",resource_type:"string",fides_key:"string"}},e),u=e=>(0,n.Ln)({detail:[{loc:["string","number"],msg:"string",type:"string"}]},e)},76649:function(e,t,i){"use strict";i.d(t,{Ln:function(){return n}});let n=(e,t)=>r(e,t),s=Symbol("SOME"),r=(e,t)=>"string"==typeof e?e===typeof t:Array.isArray(e)?s in e?e.some(e=>r(e,t)):!!Array.isArray(t)&&(0===e.length||t.every(t=>e.some(e=>r(e,t)))):"object"==typeof t&&null!==t&&Object.entries(e).every(([e,i])=>r(i,t[e]));class l{static narrow(e){return new l(t=>n(e,t))}constructor(e){this.NF=void 0,this.NF=e}satisfied(e){return this.NF(e)}build(e){return e}and(e){let t=this.NF,i=e instanceof l?e.NF:e instanceof Function?e:t=>n(e,t);return new l(e=>t(e)&&i(e))}}new l(e=>!0)}},function(e){e.O(0,[2888,9774,179],function(){return e(e.s=13687)}),_N_E=e.O()}]);
|
@@ -0,0 +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 n=i(24246),s=i(4454),r=i(88038),a=i.n(r),l=i(86677);i(27378);var o=i(25980),d=i(90867),c=i(77830),u=()=>{let e=(0,l.useRouter)();return(0,n.jsx)(s.xuv,{bg:"gray.50",border:"1px solid",borderColor:"blue.400",borderRadius:"md",justifyContent:"space-between",p:5,mb:5,mt:5,children:(0,n.jsxs)(s.xuv,{children:[(0,n.jsxs)(s.Kqy,{direction:{base:"column",sm:"row"},justifyContent:"space-between",children:[(0,n.jsx)(s.xvT,{fontWeight:"semibold",children:"Configure your storage and messaging provider"}),(0,n.jsx)(s.wpx,{onClick:()=>{e.push(c.fz)},children:"Configure"})]}),(0,n.jsxs)(s.xvT,{children:["Before Fides can process your privacy requests we need two simple steps to configure your storage and email client."," "]})]})})},m=e=>{let{children:t,title:i,padded:r=!0,mainProps:c}=e,m=(0,o.hz)(),h=(0,l.useRouter)(),p="/privacy-requests"===h.pathname||"/datastore-connection"===h.pathname,x=!(m.flags.privacyRequestsConfiguration&&p),{data:v}=(0,d.JE)(void 0,{skip:x}),{data:f}=(0,d.PW)(void 0,{skip:x}),j=m.flags.privacyRequestsConfiguration&&(!v||!f)&&p;return(0,n.jsxs)(s.kCb,{"data-testid":i,direction:"column",h:"100vh",children:[(0,n.jsxs)(a(),{children:[(0,n.jsxs)("title",{children:["Fides Admin UI - ",i]}),(0,n.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,n.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,n.jsxs)(s.kCb,{as:"main",direction:"column",py:r?6:0,px:r?10:0,h:r?"calc(100% - 48px)":"full",flex:1,minWidth:0,overflow:"auto",...c,children:[j?(0,n.jsx)(u,{}):null,t]})]})}},58754:function(e,t,i){"use strict";var n=i(24246),s=i(4454),r=i(70788);t.Z=e=>{let{heading:t,breadcrumbItems:i,isSticky:a=!0,children:l,rightContent:o,style:d,...c}=e;return(0,n.jsxs)("div",{...c,style:a?{position:"sticky",top:"-24px",paddingTop:"24px",paddingBottom:"24px",paddingLeft:"40px",marginLeft:"-40px",paddingRight:"40px",marginRight:"-40px",marginTop:"-24px",left:0,zIndex:20,backgroundColor:"white",...d}:{paddingBottom:"24px",...d},children:[(0,n.jsxs)(s.jqI,{justify:"space-between",children:["string"==typeof t?(0,n.jsx)(s.lQT,{className:i||l?"pb-4":void 0,level:1,"data-testid":"page-heading",children:t}):t,o&&(0,n.jsx)("div",{"data-testid":"page-header-right-content",children:o})]}),!!i&&(0,n.jsx)(r.m,{className:l?"pb-4":void 0,items:i,"data-testid":"page-breadcrumb"}),l]})}},97181:function(e,t,i){"use strict";i.d(t,{d:function(){return d}});var n=i(24246),s=i(4454),r=i(34090),a=i(27378),l=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,v,{setValue:f}]=(0,r.U$)(t),j=!!(v.touched&&v.error),[g,y]=(0,a.useState)("");x.value||"tags"!==p.mode&&"multiple"!==p.mode||(x.value=[]),"tags"===p.mode&&"string"==typeof x.value&&(x.value=[x.value]);let _="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=>{y(e),p.onSearch&&p.onSearch(e)},C=(e,t)=>{f(e),p.onChange&&p.onChange(e,t)};return"inline"===m?(0,n.jsx)(s.NIc,{isInvalid:j,isRequired:u,children:(0,n.jsxs)(s.rjZ,{templateColumns:i?"1fr 3fr":"1fr",children:[i?(0,n.jsx)(o.__,{htmlFor:p.id||t,...d,children:i}):null,(0,n.jsxs)(s.jqI,{align:"center",children:[(0,n.jsxs)(s.jqI,{vertical:!0,flex:1,className:"mr-2",children:[(0,n.jsx)(s.WPr,{...x,id:p.id||t,"data-testid":"controlled-select-".concat(x.name),...p,optionRender:_,onSearch:"tags"===p.mode?b:void 0,onChange:C,value:x.value||void 0,status:j?"error":void 0}),h&&(0,n.jsx)(s.Q6r,{children:h}),(0,n.jsx)(o.Bc,{isInvalid:j,message:v.error,fieldName:x.name})]}),(0,n.jsx)(l.b,{label:c,className:j?"mt-2 self-start":void 0})]})]})}):(0,n.jsx)(s.NIc,{isInvalid:j,isRequired:u,children:(0,n.jsxs)(s.gCW,{alignItems:"start",children:[(0,n.jsxs)(s.jqI,{align:"center",children:[i?(0,n.jsx)(o.__,{htmlFor:p.id||t,fontSize:"xs",my:0,mr:1,...d,children:i}):null,(0,n.jsx)(l.b,{label:c})]}),(0,n.jsx)(s.WPr,{...x,id:p.id||t,"data-testid":"controlled-select-".concat(x.name),...p,optionRender:_,onSearch:"tags"===p.mode?b:void 0,onChange:C,value:x.value||void 0,status:j?"error":void 0}),h&&(0,n.jsx)(s.Q6r,{style:{marginTop:0},children:h}),(0,n.jsx)(o.Bc,{isInvalid:j,message:v.error,fieldName:x.name})]})})}},812:function(e,t,i){"use strict";i.d(t,{D4:function(){return r.D4},MM:function(){return m},Ot:function(){return d},c6:function(){return s},cj:function(){return p},e$:function(){return l},fn:function(){return o},iC:function(){return h},nU:function(){return u},tB:function(){return c}});var n,s,r=i(19043);let a="An unexpected error occurred. Please try again.",l=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:a;if((0,r.Bw)(e)){if((0,r.hE)(e.data))return e.data.detail;if((0,r.cz)(e.data)){var i;let t=null===(i=e.data.detail)||void 0===i?void 0:i[0];return"".concat(null==t?void 0:t.msg,": ").concat(null==t?void 0:t.loc)}if(409===e.status&&(0,r.Dy)(e.data)||404===e.status&&(0,r.XD)(e.data))return"".concat(e.data.detail.error," (").concat(e.data.detail.fides_key,")")}return t};function o(e){return"object"==typeof e&&null!=e&&"status"in e}function d(e){return"object"==typeof e&&null!=e&&"data"in e&&"string"==typeof e.data.detail}function c(e){return"object"==typeof e&&null!=e&&"data"in e&&Array.isArray(e.data.detail)}let u=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{status:500,message:a};if((0,r.oK)(e))return{status:e.originalStatus,message:e.data};if((0,r.Bw)(e)){let{status:i}=e;return{status:i,message:l(e,t.message)}}return t},m=e=>Object.entries(e).map(e=>({value:e[1],label:e[1]}));(n=s||(s={})).GVL="gvl",n.AC="gacp",n.COMPASS="compass";let h={gvl:{label:"GVL",fullName:"Global Vendor List"},gacp:{label:"AC",fullName:"Google Additional Consent List"},compass:{label:"",fullName:""}},p=e=>{let t=e.split(".")[0];return"gacp"===t?"gacp":"gvl"===t?"gvl":"compass"}},14047:function(e,t,i){"use strict";i.d(t,{H:function(){return r},V:function(){return n.V}});var n=i(84306),s=i(812);let r=()=>{let{errorAlert:e}=(0,n.V)();return{handleError:t=>{let i="An unexpected error occurred. Please try again.";(0,s.Ot)(t)?i=t.data.detail:(0,s.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 n=i(24246),s=i(4454);let r=()=>{let e=(0,s.pmc)();return{errorAlert:(t,i,r)=>{let a={...r,position:(null==r?void 0:r.position)||"top",render:e=>{let{onClose:r}=e;return(0,n.jsxs)(s.bZj,{alignItems:"normal",status:"error","data-testid":"error-alert",children:[(0,n.jsx)(s.zMQ,{}),(0,n.jsxs)(s.xuv,{children:[i&&(0,n.jsx)(s.CdC,{children:i}),(0,n.jsx)(s.XaZ,{children:t})]}),(0,n.jsx)(s.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,a):e(a)},successAlert:(t,i,r)=>{let a={...r,position:(null==r?void 0:r.position)||"top",render:e=>{let{onClose:r}=e;return(0,n.jsxs)(s.bZj,{alignItems:"normal",status:"success",variant:"subtle","data-testid":"success-alert",children:[(0,n.jsx)(s.zMQ,{}),(0,n.jsxs)(s.xuv,{children:[i&&(0,n.jsx)(s.CdC,{children:i}),(0,n.jsx)(s.XaZ,{children:t})]}),(0,n.jsx)(s.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,a):e(a)}}}},70788:function(e,t,i){"use strict";i.d(t,{m:function(){return d}});var n=i(24246),s=i(4454),r=i(79894),a=i.n(r),l=i(27378);let{Text:o}=s.AntTypography,d=e=>{let{items:t,...i}=e,r=(0,l.useMemo)(()=>null==t?void 0:t.map((e,i)=>{let r=i===t.length-1,l={...e},d=l.onClick&&!l.href;return("string"==typeof l.title&&(l.title=(0,n.jsx)(o,{style:{color:"inherit",maxWidth:r?void 0:400},ellipsis:!r,children:l.title})),d)?l.title=(0,n.jsx)(s.wpx,{type:"text",size:"small",icon:l.icon,onClick:l.onClick,className:"ant-breadcrumb-link -mt-px px-1 text-inherit",children:l.title}):(l.icon&&(l.title=(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"anticon align-text-bottom",children:l.icon}),l.title]})),l.href&&l.title&&(l.title=(0,n.jsx)(a(),{href:l.href,className:"ant-breadcrumb-link",children:l.title}),delete l.href)),l}),[t]);return(0,n.jsx)(s.zrq,{items:r,...i})}},71784:function(e,t,i){"use strict";i.d(t,{DE:function(){return o},I3:function(){return s},kN:function(){return a},qX:function(){return l},rE:function(){return r}});var n=i(61317);let s=[...new Map([[n.q2.APPROVED,"Approved"],[n.q2.AWAITING_EMAIL_SEND,"Awaiting email send"],[n.q2.CANCELED,"Canceled"],[n.q2.COMPLETE,"Completed"],[n.q2.DENIED,"Denied"],[n.q2.ERROR,"Error"],[n.q2.IN_PROCESSING,"In progress"],[n.q2.PENDING,"New"],[n.q2.PAUSED,"Paused"],[n.q2.IDENTITY_UNVERIFIED,"Unverified"],[n.q2.REQUIRES_INPUT,"Requires input"]])].map(e=>{let[t,i]=e;return{label:i,value:t}}),r=new Map([[n.Us.ACCESS,"Access"],[n.Us.ERASURE,"Erasure"],[n.Us.CONSENT,"Consent"],[n.Us.UPDATE,"Update"]]),a=[...r].map(e=>{let[t,i]=e;return{label:i,value:t}}),l={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 y}});var n=i(24246),s=i(4454),r=i(27378),a=i(812),l=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),v=i(40324),f=e=>{var t,i,o,d,c;let{storageDetails:u}=e,[f,j]=(0,r.useState)(""),[g]=(0,h.gC)(),[y]=(0,h.cf)(),{handleError:_}=(0,l.H)(),{successAlert:b}=(0,l.V)(),C={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:""},k=async e=>{let t=await g({type:m.DE.gcs,details:{auth_method:e.auth_method,bucket:e.bucket},format:e.format});(0,a.D4)(t)?_(t.error):(j(e.auth_method),b("Google Cloud Storage credentials successfully updated."))},w=async e=>{let t=e.private_key.trim();t.includes("\\n")&&(t=t.replace(/\\n/g,"\n"));let i=await y({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,a.D4)(i)?_(i.error):b("Google Cloud Storage secrets successfully updated.")};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(s.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"Google Cloud Storage configuration"}),(0,n.jsx)(s.Kqy,{children:(0,n.jsx)(p.J9,{initialValues:C,onSubmit:k,enableReinitialize:!0,children:e=>{let{isSubmitting:t,handleReset:i}=e;return(0,n.jsxs)(p.l0,{children:[(0,n.jsxs)(s.Kqy,{mt:5,spacing:5,children:[(0,n.jsx)(x.d,{name:"format",label:"Format",options:[{label:"json",value:"json"},{label:"csv",value:"csv"}],"data-testid":"format",isRequired:!0}),(0,n.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,n.jsx)(v.j0,{"data-testid":"bucket",name:"bucket",label:"Bucket",isRequired:!0})]}),(0,n.jsx)(s.wpx,{onClick:()=>i(),className:"mr-2 mt-5",children:"Cancel"}),(0,n.jsx)(s.wpx,{htmlType:"submit",className:"mt-5",disabled:t,type:"primary","data-testid":"save-btn",children:"Save"})]})}})}),"service_account_keys"===f&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(s.izJ,{mt:5}),(0,n.jsx)(s.X6q,{fontSize:"md",fontWeight:"semibold",mt:5,children:"Storage destination"}),(0,n.jsx)(s.Kqy,{children:(0,n.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:w,children:e=>{let{isSubmitting:t,handleReset:i}=e;return(0,n.jsxs)(p.l0,{children:[(0,n.jsxs)(s.Kqy,{mt:5,spacing:5,children:[(0,n.jsx)(v.j0,{name:"type",label:"Type"}),(0,n.jsx)(v.j0,{name:"project_id",label:"Project ID"}),(0,n.jsx)(v.j0,{name:"private_key_id",label:"Private key ID",type:"password"}),(0,n.jsx)(v.j0,{name:"private_key",label:"Private key",type:"password"}),(0,n.jsx)(v.j0,{name:"client_email",label:"Client email"}),(0,n.jsx)(v.j0,{name:"client_id",label:"Client ID"}),(0,n.jsx)(v.j0,{name:"auth_uri",label:"Auth URI"}),(0,n.jsx)(v.j0,{name:"token_uri",label:"Token URI"}),(0,n.jsx)(v.j0,{name:"auth_provider_x509_cert_url",label:"Auth provider x509 cert URL"}),(0,n.jsx)(v.j0,{name:"client_x509_cert_url",label:"Client x509 cert URL"}),(0,n.jsx)(v.j0,{name:"universe_domain",label:"Universe domain"})]}),(0,n.jsxs)(s.xuv,{mt:10,children:[(0,n.jsx)(s.wpx,{onClick:()=>i(),className:"mr-2 mt-5",children:"Cancel"}),(0,n.jsx)(s.wpx,{disabled:t,htmlType:"submit",type:"primary",className:"mt-5","data-testid":"save-btn",children:"Save"})]})]})}})})]})]})},j=e=>{var t,i,o,d,c;let{storageDetails:u}=e,[f,j]=(0,r.useState)(""),[g]=(0,h.gC)(),[y]=(0,h.cf)(),{handleError:_}=(0,l.H)(),{successAlert:b}=(0,l.V)(),C={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:""},k=async e=>{let t=await g({type:m.DE.s3,details:{auth_method:e.auth_method,bucket:e.bucket},format:e.format});(0,a.D4)(t)?_(t.error):(j(e.auth_method),b("S3 storage credentials successfully updated."))},w=async e=>{let t=await y({details:{aws_access_key_id:e.aws_access_key_id,aws_secret_access_key:e.aws_secret_access_key},type:m.DE.s3});(0,a.D4)(t)?_(t.error):b("S3 storage secrets successfully updated.")};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(s.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"S3 storage configuration"}),(0,n.jsx)(s.Kqy,{children:(0,n.jsx)(p.J9,{initialValues:C,onSubmit:k,enableReinitialize:!0,children:e=>{let{isSubmitting:t,handleReset:i}=e;return(0,n.jsxs)(p.l0,{children:[(0,n.jsxs)(s.Kqy,{mt:5,spacing:5,children:[(0,n.jsx)(x.d,{name:"format",label:"Format",options:[{label:"json",value:"json"},{label:"csv",value:"csv"}],"data-testid":"format",isRequired:!0}),(0,n.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,n.jsx)(v.j0,{"data-testid":"bucket",name:"bucket",label:"Bucket",isRequired:!0})]}),(0,n.jsx)(s.wpx,{onClick:()=>i(),className:"mr-2 mt-5",children:"Cancel"}),(0,n.jsx)(s.wpx,{htmlType:"submit",className:"mt-5",disabled:t,type:"primary","data-testid":"save-btn",children:"Save"})]})}})}),"secret_keys"===f?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(s.izJ,{mt:5}),(0,n.jsx)(s.X6q,{fontSize:"md",fontWeight:"semibold",mt:5,children:"Storage destination"}),(0,n.jsx)(s.Kqy,{children:(0,n.jsx)(p.J9,{initialValues:{aws_access_key_id:"",aws_secret_access_key:""},onSubmit:w,children:e=>{let{isSubmitting:t,handleReset:i}=e;return(0,n.jsxs)(p.l0,{children:[(0,n.jsxs)(s.Kqy,{mt:5,spacing:5,children:[(0,n.jsx)(v.j0,{name:"aws_access_key_id",label:"AWS access key ID"}),(0,n.jsx)(v.j0,{name:"aws_secret_access_key",label:"AWS secret access key",type:"password"})]}),(0,n.jsxs)(s.xuv,{mt:10,children:[(0,n.jsx)(s.wpx,{onClick:()=>i(),className:"mr-2 mt-5",children:"Cancel"}),(0,n.jsx)(s.wpx,{disabled:t,htmlType:"submit",type:"primary",className:"mt-5","data-testid":"save-btn",children:"Save"})]})]})}})})]}):null]})},g=()=>{let{successAlert:e}=(0,l.V)(),{handleError:t}=(0,l.H)(),[i,p]=(0,r.useState)(""),{data:x}=(0,h.PW)(),{data:v}=(0,h.Au)({type:i}),[g,{isLoading:y}]=(0,h.gC)(),[_]=(0,u.L)();(0,r.useEffect)(()=>{x&&p(x.type)},[x]);let b=async i=>{let{value:n}=i.target;if(n===m.DE.local){let i=await g({type:n,details:{},format:"json"});(0,a.D4)(i)?t(i.error):e("Configured storage details successfully.")}let s=await _({storage:{active_default_storage_type:n}});(0,a.D4)(s)?t(s.error):p(n)},C={s3:j,gcs:f}[i];return(0,n.jsxs)(o.Z,{title:"Configure Privacy Requests - Storage",children:[(0,n.jsx)(c.Z,{heading:"Privacy Requests",breadcrumbItems:[{title:"All requests",href:d.Jw},{title:"Configure requests",href:d.fz},{title:"Storage"}]}),(0,n.jsx)(s.X6q,{mb:5,fontSize:"md",fontWeight:"semibold",children:"Configure storage"}),(0,n.jsxs)(s.xuv,{display:"flex",flexDirection:"column",width:"50%",children:[(0,n.jsx)(s.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,n.jsxs)(s.xuv,{children:["To configure a Storage destination, first choose a method to store your results. Fides currently supports"," ",(0,n.jsx)(s.xvT,{as:"span",color:"complimentary.500",children:"Local"}),", ",(0,n.jsx)(s.xvT,{as:"span",color:"complimentary.500",children:"S3"})," ","and"," ",(0,n.jsx)(s.xvT,{as:"span",color:"complimentary.500",children:"GCS"})," ","storage methods."]}),(0,n.jsx)(s.X6q,{fontSize:"md",fontWeight:"semibold",mt:10,children:"Choose storage type to configure"}),(0,n.jsx)(s.y02.Group,{disabled:y,onChange:b,value:i,"data-testid":"privacy-requests-storage-selection",className:"p-3",children:(0,n.jsxs)(s.jqI,{children:[(0,n.jsx)(s.y02,{value:"local","data-testid":"option-local",children:"Local"},"local"),(0,n.jsx)(s.y02,{value:"s3","data-testid":"option-s3",children:"S3"},"s3"),(0,n.jsx)(s.y02,{value:"gcs","data-testid":"option-gcs",children:"GCS"},"gcs")]})}),C&&v&&(0,n.jsx)(C,{storageDetails:v})]})]})},y=()=>(0,n.jsx)(g,{})},19043:function(e,t,i){"use strict";i.d(t,{Bw:function(){return a},D4:function(){return s},Dy:function(){return o},XD:function(){return d},cz:function(){return c},hE:function(){return l},oK:function(){return r}});var n=i(76649);let s=e=>"error"in e,r=e=>(0,n.Ln)({status:"string"},e)&&"PARSING_ERROR"===e.status,a=e=>(0,n.Ln)({status:"number",data:{}},e),l=e=>(0,n.Ln)({detail:"string"},e),o=e=>(0,n.Ln)({detail:{error:"string",resource_type:"string",fides_key:"string"}},e),d=e=>(0,n.Ln)({detail:{error:"string",resource_type:"string",fides_key:"string"}},e),c=e=>(0,n.Ln)({detail:[{loc:["string","number"],msg:"string",type:"string"}]},e)},76649:function(e,t,i){"use strict";i.d(t,{Ln:function(){return n}});let n=(e,t)=>r(e,t),s=Symbol("SOME"),r=(e,t)=>"string"==typeof e?e===typeof t:Array.isArray(e)?s in e?e.some(e=>r(e,t)):!!Array.isArray(t)&&(0===e.length||t.every(t=>e.some(e=>r(e,t)))):"object"==typeof t&&null!==t&&Object.entries(e).every(([e,i])=>r(i,t[e]));class a{static narrow(e){return new a(t=>n(e,t))}constructor(e){this.NF=void 0,this.NF=e}satisfied(e){return this.NF(e)}build(e){return e}and(e){let t=this.NF,i=e instanceof a?e.NF:e instanceof Function?e:t=>n(e,t);return new a(e=>t(e)&&i(e))}}new a(e=>!0)}},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,r){(window.__NEXT_P=window.__NEXT_P||[]).push(["/privacy-requests",function(){return r(22017)}])},35287:function(e,t,r){"use strict";var l=r(24246),i=r(4454),a=r(88038),s=r.n(a);r(27378),t.Z=e=>{let{children:t,title:r,mainProps:a}=e;return(0,l.jsxs)(i.kCb,{"data-testid":r,direction:"column",height:"calc(100vh - 48px)",width:"calc(100vw - 240px)",children:[(0,l.jsxs)(s(),{children:[(0,l.jsxs)("title",{children:["Fides Admin UI - ",r]}),(0,l.jsx)("meta",{name:"description",content:"Privacy Engineering Platform"}),(0,l.jsx)("link",{rel:"icon",href:"/favicon.ico"})]}),(0,l.jsx)(i.kCb,{px:10,py:6,as:"main",overflow:"auto",direction:"column",flex:1,minWidth:0,...a,children:t})]})}},87361:function(e,t,r){"use strict";var l=r(24246),i=r(4454);t.Z=e=>{let{title:t,text:r,onClose:a}=e;return(0,l.jsxs)(i.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,l.jsx)(i.Two,{boxSize:5,position:"absolute",right:3,top:3,zIndex:1,cursor:"pointer",p:1,onClick:a}),(0,l.jsx)(i.iid,{alignSelf:"start",color:"minos",mt:.5,flexGrow:0}),(0,l.jsxs)(i.kCb,{direction:"column",gap:2,flexGrow:1,children:[(0,l.jsx)(i.X6q,{fontSize:"md",children:t}),(0,l.jsx)(i.xvT,{fontSize:"sm",color:"gray.600",lineHeight:"5",children:r})]})]})}},96718:function(e,t,r){"use strict";r.d(t,{z:function(){return a}});var l=r(24246),i=r(4454);let a=e=>{let{...t}=e,r="multiple"===t.mode;return(0,l.jsx)(i.WPr,{defaultActiveFirstOption:!1,maxTagCount:"responsive",allowClear:!0,dropdownStyle:r?void 0:{width:"auto",minWidth:"200px"},className:"w-auto","data-testid":"filter-select",...t})}},97181:function(e,t,r){"use strict";r.d(t,{d:function(){return d}});var l=r(24246),i=r(4454),a=r(34090),s=r(27378),n=r(46238),o=r(40324);let d=e=>{let{name:t,label:r,labelProps:d,tooltip:u,isRequired:c,layout:p="inline",helperText:m,...h}=e,[x,v,{setValue:f}]=(0,a.U$)(t),y=!!(v.touched&&v.error),[b,_]=(0,s.useState)("");x.value||"tags"!==h.mode&&"multiple"!==h.mode||(x.value=[]),"tags"===h.mode&&"string"==typeof x.value&&(x.value=[x.value]);let j="tags"===h.mode?(e,t)=>e?e.value!==b||x.value.includes(b)?h.optionRender?h.optionRender(e,t):e.label:'Create "'.concat(b,'"'):void 0:h.optionRender||void 0,g=e=>{_(e),h.onSearch&&h.onSearch(e)},q=(e,t)=>{f(e),h.onChange&&h.onChange(e,t)};return"inline"===p?(0,l.jsx)(i.NIc,{isInvalid:y,isRequired:c,children:(0,l.jsxs)(i.rjZ,{templateColumns:r?"1fr 3fr":"1fr",children:[r?(0,l.jsx)(o.__,{htmlFor:h.id||t,...d,children:r}):null,(0,l.jsxs)(i.jqI,{align:"center",children:[(0,l.jsxs)(i.jqI,{vertical:!0,flex:1,className:"mr-2",children:[(0,l.jsx)(i.WPr,{...x,id:h.id||t,"data-testid":"controlled-select-".concat(x.name),...h,optionRender:j,onSearch:"tags"===h.mode?g:void 0,onChange:q,value:x.value||void 0,status:y?"error":void 0}),m&&(0,l.jsx)(i.Q6r,{children:m}),(0,l.jsx)(o.Bc,{isInvalid:y,message:v.error,fieldName:x.name})]}),(0,l.jsx)(n.b,{label:u,className:y?"mt-2 self-start":void 0})]})]})}):(0,l.jsx)(i.NIc,{isInvalid:y,isRequired:c,children:(0,l.jsxs)(i.gCW,{alignItems:"start",children:[(0,l.jsxs)(i.jqI,{align:"center",children:[r?(0,l.jsx)(o.__,{htmlFor:h.id||t,fontSize:"xs",my:0,mr:1,...d,children:r}):null,(0,l.jsx)(n.b,{label:u})]}),(0,l.jsx)(i.WPr,{...x,id:h.id||t,"data-testid":"controlled-select-".concat(x.name),...h,optionRender:j,onSearch:"tags"===h.mode?g:void 0,onChange:q,value:x.value||void 0,status:y?"error":void 0}),m&&(0,l.jsx)(i.Q6r,{style:{marginTop:0},children:m}),(0,l.jsx)(o.Bc,{isInvalid:y,message:v.error,fieldName:x.name})]})})}},71784:function(e,t,r){"use strict";r.d(t,{DE:function(){return o},I3:function(){return i},kN:function(){return s},qX:function(){return n},rE:function(){return a}});var l=r(61317);let i=[...new Map([[l.q2.APPROVED,"Approved"],[l.q2.AWAITING_EMAIL_SEND,"Awaiting email send"],[l.q2.CANCELED,"Canceled"],[l.q2.COMPLETE,"Completed"],[l.q2.DENIED,"Denied"],[l.q2.ERROR,"Error"],[l.q2.IN_PROCESSING,"In progress"],[l.q2.PENDING,"New"],[l.q2.PAUSED,"Paused"],[l.q2.IDENTITY_UNVERIFIED,"Unverified"],[l.q2.REQUIRES_INPUT,"Requires input"]])].map(e=>{let[t,r]=e;return{label:r,value:t}}),a=new Map([[l.Us.ACCESS,"Access"],[l.Us.ERASURE,"Erasure"],[l.Us.CONSENT,"Consent"],[l.Us.UPDATE,"Update"]]),s=[...a].map(e=>{let[t,r]=e;return{label:r,value:t}}),n={mailgun:"mailgun",twilio_email:"twilio_email",twilio_text:"twilio_text"},o={local:"local",s3:"s3",gcs:"gcs"}},22017:function(e,t,r){"use strict";r.r(t),r.d(t,{default:function(){return en}});var l,i,a=r(24246),s=r(35287),n=r(4454),o=r(65218),d=r.n(o),u=r(27378),c=r(25980),p=r(19904),m=r(59003),h=r(92222),x=r(86677),v=r(16125),f=r(91317),y=r(14048),b=r(14481),_=r(90867),j=r(16394),g=r(71784),q=r(61317);let C={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:"alert",label:"Requires Input"}},E=e=>{let{value:t}=e;return(0,a.jsx)(b.A4,{color:C[t].colorScheme,value:C[t].label,"data-testid":"request-status-badge"})},R=e=>{let t,{daysLeft:r,timeframe:l=45,status:i,includeText:s=!1}=e;if(null==r||i===q.q2.COMPLETE||i===q.q2.CANCELED||i===q.q2.DENIED||i===q.q2.IDENTITY_UNVERIFIED)return null;let n=100*r/l;return n<25?t="error":n>=75?t="success":n>=25&&(t="warning"),(0,a.jsx)(b.A4,{value:s?"".concat(r," days left"):r.toString(),color:t})},w=e=>Array.from(new Set(e.filter(e=>Object.values(q.Us).includes(e.action_type)).map(e=>e.action_type))),S=e=>{let{value:t}=e,r=w(t).map(e=>g.rE.get(e));return(0,a.jsx)(b.WP,{value:r,cellState:{isExpanded:!0}})};var I=r(58452),P=r(57526),k=r(66548),T=r(45489);let A=e=>{let{subjectRequest:t,...r}=e,l=(0,n.qY0)(),i=(0,n.qY0)(),s=(0,n.qY0)(),{handleApproveRequest:o,handleDenyRequest:d,handleDeleteRequest:u,isLoading:c}=(0,T.Z)({subjectRequest:t});return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(n.Ugi,{...r,children:["pending"!==t.status?null:(0,a.jsx)(n.wpx,{title:"Approve","aria-label":"Approve",icon:(0,a.jsx)(n.PJP.MCw,{}),onClick:l.onOpen,loading:c,disabled:c,"data-testid":"privacy-request-approve-btn",size:"small"}),"pending"!==t.status?null:(0,a.jsx)(n.wpx,{title:"Deny","aria-label":"Deny",icon:(0,a.jsx)(n.PJP.x8P,{}),onClick:i.onOpen,loading:c,disabled:c,"data-testid":"privacy-request-deny-btn",size:"small"}),(0,a.jsx)(p.ZP,{scopes:[q.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:s.onOpen,loading:c,disabled:c,"data-testid":"privacy-request-delete-btn",size:"small"})})]}),(0,a.jsx)(n.h_i,{children:(0,a.jsx)(P.Z,{isOpen:l.isOpen,isLoading:c,onClose:l.onClose,onApproveRequest:o,subjectRequest:t})}),(0,a.jsx)(n.h_i,{children:(0,a.jsx)(k.Z,{isOpen:i.isOpen,onClose:i.onClose,onDenyRequest:d})}),(0,a.jsx)(I.Z,{isOpen:s.isOpen,onClose:s.onClose,onConfirm:u,message:(0,a.jsx)(n.xvT,{children:"You are about to permanently delete the privacy request. Are you sure you would like to continue?"})})]})};(l=i||(i={})).STATUS="status",l.DAYS_LEFT="due_date",l.SOURCE="source",l.REQUEST_TYPE="request_type",l.SUBJECT_IDENTITY="subject_identity",l.TIME_RECEIVED="created_at",l.CREATED_BY="created_by",l.REVIEWER="reviewer",l.ID="id",l.ACTIONS="actions";let D=(0,h.Cl)(),O=function(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return[D.accessor(e=>e.status,{id:"status",cell:e=>{let{getValue:t}=e;return(0,a.jsx)(E,{value:t()})},header:e=>(0,a.jsx)(b.Rr,{value:"Status",...e})}),D.accessor(e=>e.days_left,{id:"due_date",cell:e=>{let{row:t,getValue:r}=e;return(0,a.jsx)(R,{daysLeft:r(),timeframe:t.original.policy.execution_timeframe,status:t.original.status})},header:e=>(0,a.jsx)(b.Rr,{value:"Days left",...e})}),...e?[D.accessor(e=>e.source,{id:"source",cell:e=>e.getValue()?(0,a.jsx)(b.A4,{value:e.getValue()}):(0,a.jsx)(b.G3,{value:void 0}),header:e=>(0,a.jsx)(b.Rr,{value:"Source",...e}),enableSorting:!1})]:[],D.accessor(e=>e.policy.rules,{id:"request_type",cell:e=>{let{getValue:t}=e;return(0,a.jsx)(S,{value:t()})},header:e=>(0,a.jsx)(b.Rr,{value:"Request type",...e}),enableSorting:!1}),D.accessor(e=>{var t,r;return(null===(t=e.identity)||void 0===t?void 0:t.email.value)||(null===(r=e.identity)||void 0===r?void 0:r.phone_number.value)||""},{id:"subject_identity",cell:e=>{let{getValue:t}=e;return(0,a.jsx)(b.G3,{value:t()})},header:e=>(0,a.jsx)(b.Rr,{value:"Subject identity",...e}),enableSorting:!1}),D.accessor(e=>e.created_at,{id:"created_at",cell:e=>{let{getValue:t}=e;return(0,a.jsx)(b.G3,{value:(0,j.p6)(t())})},header:e=>(0,a.jsx)(b.Rr,{value:"Time received",...e})}),D.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)(b.G3,{value:t()})},header:e=>(0,a.jsx)(b.Rr,{value:"Reviewed by",...e}),enableSorting:!1}),D.accessor(e=>e.id,{id:"id",cell:e=>{let{getValue:t}=e;return(0,a.jsx)(b.G3,{value:t()})},header:e=>(0,a.jsx)(b.Rr,{value:"Request ID",...e}),enableSorting:!1}),D.display({id:"actions",cell:e=>{let{row:t}=e;return(0,a.jsx)(A,{subjectRequest:t.original})},header:e=>(0,a.jsx)(b.Rr,{value:"Actions",...e}),meta:{disableRowClick:!0}})]},N=e=>{let t=(0,v.v9)(_.dp),r=(0,v.I0)();return{handleStatusChange:t=>{r((0,_.CI)(t)),e()},handleActionTypeChange:t=>{r((0,_.aM)(t)),e()},handleFromChange:t=>{r((0,_.su)(null==t?void 0:t.target.value)),e()},handleToChange:t=>{r((0,_.Ue)(null==t?void 0:t.target.value)),e()},handleClearAllFilters:()=>{r((0,_.Mk)()),e()},...t}};var U=r(96718);let F=e=>{let{onClose:t,onFilterChange:r,...l}=e,{handleStatusChange:i,handleActionTypeChange:s,handleFromChange:o,handleToChange:d,handleClearAllFilters:u,from:c,to:p,status:m,action_type:h}=N(r);return(0,a.jsxs)(n.u_l,{onClose:t,size:"xl",...l,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:c,max:p||void 0,onChange:o,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:c||void 0,onChange:d,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)(U.z,{id:"request-status",mode:"multiple",options:g.I3,value:m,onChange:i,"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)(U.z,{id:"request-action-type",mode:"multiple",options:g.kN,value:h,onChange:s,"data-testid":"request-action-type-filter"})]})]})}),(0,a.jsxs)(n.mzw,{justifyContent:"space-between",children:[(0,a.jsx)(n.wpx,{type:"text",onClick:u,children:"Clear all"}),(0,a.jsx)(n.wpx,{type:"primary",onClick:t,children:"Done"})]})]})]})},z=e=>{let{...t}=e,{plus:r}=(0,c.hz)(),[l,i]=(0,u.useState)(""),s=(0,v.v9)(_.dp),o=(0,v.v9)(f.rK),d=(0,n.pmc)(),p=(0,x.useRouter)(),j=(0,v.I0)(),{PAGE_SIZES:g,pageSize:q,setPageSize:C,onPreviousPageClick:E,isPreviousPageDisabled:R,onNextPageClick:w,isNextPageDisabled:S,startRange:I,endRange:P,pageIndex:k,setTotalPages:T,resetPageIndexToDefault:A}=(0,b.oi)(),{isOpen:D,onOpen:N,onClose:U}=(0,n.qY0)(),{data:z,isLoading:Z,isFetching:M}=(0,_.QA)({...s,page:k,size:q}),{items:V,total:Y}=(0,u.useMemo)(()=>{let e=z||{items:[],total:0,pages:0};return T(e.pages),e},[z,T]),G=(0,u.useCallback)(e=>{j((0,_.mU)(e)),i(e),A()},[j,A,i]),L=async()=>{let e;try{await (0,_.py)({...s,token:o})}catch(t){e=t instanceof Error?t.message:"Unknown error occurred"}e&&d({description:"".concat(e),duration:5e3,status:"error"})},B=e=>{p.push("/privacy-requests/".concat(e))},W=(0,m.b7)({getCoreRowModel:(0,h.sC)(),data:V,columns:(0,u.useMemo)(()=>O(r),[r]),getRowId:e=>"".concat(e.status,"-").concat(e.id),manualPagination:!0,columnResizeMode:"onChange"});return(0,a.jsxs)(n.xuv,{...t,children:[(0,a.jsxs)(b.Q$,{children:[(0,a.jsx)(b.HO,{globalFilter:l,setGlobalFilter:G,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:N,children:"Filter"}),(0,a.jsx)(n.wpx,{"aria-label":"Export report","data-testid":"export-btn",icon:(0,a.jsx)(y.nM,{ml:"1.5px"}),onClick:L})]}),(0,a.jsx)(n.h_i,{children:(0,a.jsx)(F,{isOpen:D,onClose:U,onFilterChange:A})})]}),Z?(0,a.jsx)(n.xuv,{p:2,borderWidth:1,children:(0,a.jsx)(b.I4,{rowHeight:26,numRows:10})}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(b.ZK,{tableInstance:W,onRowClick:e=>B(e.id),onSort:e=>{if(!e){j((0,_.p2)()),A();return}let{id:t,desc:r}=e;j((0,_.PU)(t)),j((0,_.iX)(r?"desc":"asc")),A()}}),(0,a.jsx)(b.s8,{totalRows:Y||0,pageSizes:g,setPageSize:C,onPreviousPageClick:E,isPreviousPageDisabled:R||M,onNextPageClick:w,isNextPageDisabled:S||M,startRange:I,endRange:P})]})]})};var Z=r(812),M=r(87361),V=r(46628),Y=r(34090),G=r(55484),L=r(40324);let B=(e,t)=>null==t?void 0:t.find(t=>t.policy_key===e),W=e=>{var t,r;if(!e)return G.Ry().shape({policy_key:G.Z_().required().label("Request type")});let l=e.custom_privacy_request_fields?Object.entries(e.custom_privacy_request_fields).map(e=>{let[t,r]=e;return{[t]:G.Ry().shape({value:r.required&&!r.hidden?G.Z_().required().label(r.label):G.Z_().nullable()})}}).reduce((e,t)=>({...e,...t}),{}):{};return G.Ry().shape({policy_key:G.Z_().required().label("Request type"),identity:G.Ry().shape({email:(null===(t=e.identity_inputs)||void 0===t?void 0:t.email)==="required"?G.Z_().email().required().label("Email address"):G.Z_().nullable(),phone_number:(null===(r=e.identity_inputs)||void 0===r?void 0:r.phone)==="required"?G.Z_().matches(/^\+?[1-9]\d{1,14}$/,"Phone number must be formatted correctly (e.g. 15555555555)").required().label("Phone number"):G.Z_().matches(/^\+?[1-9]\d{1,14}$/,"Phone number must be formatted correctly (e.g. 15555555555)").nullable()}),custom_privacy_request_fields:G.Ry().shape(l)})};var X=r(97181);let Q={is_verified:!1,policy_key:"",identity:{}},K=e=>{let{identityInputs:t}=e;return t?(0,a.jsxs)(a.Fragment,{children:[t.email?(0,a.jsx)(L.j0,{name:"identity.email",label:"User email address",isRequired:"required"===t.email,variant:"stacked"}):null,t.phone?(0,a.jsx)(L.j0,{name:"identity.phone_number",label:"User phone number",isRequired:"required"===t.phone,variant:"stacked"}):null]}):null},H=e=>{let{customFieldInputs:t}=e;if(!t)return null;let r=Object.entries(t);return(0,a.jsx)(a.Fragment,{children:r.map(e=>{let[t,r]=e;return(0,a.jsx)(L.j0,{name:"custom_privacy_request_fields.".concat(t,".value"),label:r.label,isRequired:!!r.required,variant:"stacked"},t)})})};var J=e=>{let{onSubmit:t,onCancel:r}=e,{data:l}=(0,_.xv)();return(0,a.jsx)(Y.J9,{initialValues:Q,onSubmit:t,validationSchema:()=>(0,G.Vo)(e=>W(B(e.policy_key,null==l?void 0:l.actions))),children:e=>{var t;let{values:i,dirty:s,isValid:o,isSubmitting:d,setFieldValue:u}=e,c=B(i.policy_key,null==l?void 0:l.actions);return(0,a.jsx)(Y.l0,{children:(0,a.jsxs)(n.Kqy,{spacing:6,mb:2,children:[(0,a.jsx)(X.d,{name:"policy_key",label:"Request type",options:null!==(t=null==l?void 0:l.actions.map(e=>({label:e.title,value:e.policy_key})))&&void 0!==t?t:[],onChange:e=>{let t=B(e,null==l?void 0:l.actions);if(!(null==t?void 0:t.custom_privacy_request_fields)){u("custom_privacy_request_fields",void 0);return}u("custom_privacy_request_fields",Object.entries(t.custom_privacy_request_fields).map(e=>{let[t,r]=e;return{[t]:{label:r.label,value:r.default_value}}}).reduce((e,t)=>({...e,...t}),{}))},layout:"stacked",isRequired:!0}),(0,a.jsx)(K,{identityInputs:null==c?void 0:c.identity_inputs}),(0,a.jsx)(H,{customFieldInputs:null==c?void 0:c.custom_privacy_request_fields}),(0,a.jsx)(L.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:r,children:"Cancel"}),(0,a.jsx)(n.wpx,{htmlType:"submit",type:"primary",disabled:!i.is_verified||!s||!o,loading:d,"data-testid":"submit-btn",children:"Create"})]})]})})}})},$=r(31883);let ee=e=>{let{isOpen:t,onClose:r}=e,[l]=(0,_.M6)(),i=(0,n.pmc)(),s=async e=>{let{is_verified:t,...a}=e,s=a.custom_privacy_request_fields?Object.entries(a.custom_privacy_request_fields).map(e=>{let[t,r]=e;return r.value?{[t]:r}:{}}).reduce((e,t)=>({...e,...t}),{}):void 0,n={...a,custom_privacy_request_fields:s},o=await l([n]);(0,$.D4)(o)?i((0,V.Vo)((0,Z.e$)(o.error,"An error occurred while creating this privacy request. Please try again"))):i((0,V.t5)("Privacy request created")),r()};return(0,a.jsxs)(n.u_l,{isOpen:t,onClose:r,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)(M.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)(J,{onSubmit:s,onCancel:()=>r()})]})})]})]})};var et=()=>{let{onOpen:e,isOpen:t,onClose:r}=(0,n.qY0)();return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(ee,{isOpen:t,onClose:r}),(0,a.jsx)(n.wpx,{type:"primary",onClick:e,"data-testid":"submit-request-btn",children:"Create request"})]})},er=r(58754),el=r(14047);let ei=()=>{let{errorAlert:e}=(0,el.V)(),[t,r]=(0,u.useState)(!1),[l,i]=(0,u.useState)({count:0,total:0}),[s,o]=(0,u.useState)(!0),d=q.q2.ERROR,{data:c}=(0,_.tE)(),{data:p}=(0,_.QA)({status:[d]},{pollingInterval:15e3,skip:s});return(0,u.useEffect)(()=>{o(!(c&&c.notify_after_failures>0))},[c]),(0,u.useEffect)(()=>{let e=(null==p?void 0:p.total)||0;e>=((null==c?void 0:c.notify_after_failures)||0)&&e>l.total?(i({count:e-l.total,total:e}),r(!0)):r(!1)},[null==p?void 0:p.total,null==c?void 0:c.notify_after_failures,l.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:l.count})," ","privacy request(s). Please review the event log for further details."]}),void 0,{containerStyle:{maxWidth:"max-content"},duration:null,id:"dsrErrorAlert"})}}},ea=d()(()=>r.e(9676).then(r.bind(r,59676)),{loadableGenerated:{webpack:()=>[59676]},loading:()=>(0,a.jsx)("div",{children:"Loading..."})});var es=()=>{let{processing:e}=ei(),{plus:t}=(0,c.hz)();return(0,u.useEffect)(()=>{e()},[e]),(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(er.Z,{heading:"Privacy Requests",breadcrumbItems:[{title:"All requests"}],rightContent:(0,a.jsxs)(n.vyj,{children:[t&&(0,a.jsx)(p.ZP,{scopes:[q.Sh.PRIVACY_REQUEST_CREATE],children:(0,a.jsx)(et,{})}),(0,a.jsx)(ea,{})]}),"data-testid":"privacy-requests"}),(0,a.jsx)(z,{})]})},en=()=>(0,a.jsx)(s.Z,{title:"Privacy Requests",children:(0,a.jsx)(es,{})})},31883:function(e,t,r){"use strict";r.d(t,{Bw:function(){return l.Bw},D4:function(){return l.D4}});var l=r(19043)},76737:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{default:function(){return n},noSSR:function(){return s}});let l=r(51538);r(24246),r(27378);let i=l._(r(21887));function a(e){return{default:(null==e?void 0:e.default)||e}}function s(e,t){return delete t.webpack,delete t.modules,e(t)}function n(e,t){let r=i.default,l={loading:e=>{let{error:t,isLoading:r,pastDelay:l}=e;return null}};e instanceof Promise?l.loader=()=>e:"function"==typeof e?l.loader=e:"object"==typeof e&&(l={...l,...e});let n=(l={...l,...t}).loader;return(l.loadableGenerated&&(l={...l,...l.loadableGenerated},delete l.loadableGenerated),"boolean"!=typeof l.ssr||l.ssr)?r({...l,loader:()=>null!=n?n().then(a):Promise.resolve(a(()=>null))}):(delete l.webpack,delete l.modules,s(r,l))}("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},28438:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"LoadableContext",{enumerable:!0,get:function(){return l}});let l=r(51538)._(r(27378)).default.createContext(null)},21887:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return p}});let l=r(51538)._(r(27378)),i=r(28438),a=[],s=[],n=!1;function o(e){let t=e(),r={loading:!0,loaded:null,error:null};return r.promise=t.then(e=>(r.loading=!1,r.loaded=e,e)).catch(e=>{throw r.loading=!1,r.error=e,e}),r}class d{promise(){return this._res.promise}retry(){this._clearTimeouts(),this._res=this._loadFn(this._opts.loader),this._state={pastDelay:!1,timedOut:!1};let{_res:e,_opts:t}=this;e.loading&&("number"==typeof t.delay&&(0===t.delay?this._state.pastDelay=!0:this._delay=setTimeout(()=>{this._update({pastDelay:!0})},t.delay)),"number"==typeof t.timeout&&(this._timeout=setTimeout(()=>{this._update({timedOut:!0})},t.timeout))),this._res.promise.then(()=>{this._update({}),this._clearTimeouts()}).catch(e=>{this._update({}),this._clearTimeouts()}),this._update({})}_update(e){this._state={...this._state,error:this._res.error,loaded:this._res.loaded,loading:this._res.loading,...e},this._callbacks.forEach(e=>e())}_clearTimeouts(){clearTimeout(this._delay),clearTimeout(this._timeout)}getCurrentValue(){return this._state}subscribe(e){return this._callbacks.add(e),()=>{this._callbacks.delete(e)}}constructor(e,t){this._loadFn=e,this._opts=t,this._callbacks=new Set,this._delay=null,this._timeout=null,this.retry()}}function u(e){return function(e,t){let r=Object.assign({loader:null,loading:null,delay:200,timeout:null,webpack:null,modules:null},t),a=null;function o(){if(!a){let t=new d(e,r);a={getCurrentValue:t.getCurrentValue.bind(t),subscribe:t.subscribe.bind(t),retry:t.retry.bind(t),promise:t.promise.bind(t)}}return a.promise()}if(!n){let e=r.webpack?r.webpack():r.modules;e&&s.push(t=>{for(let r of e)if(t.includes(r))return o()})}function u(e,t){!function(){o();let e=l.default.useContext(i.LoadableContext);e&&Array.isArray(r.modules)&&r.modules.forEach(t=>{e(t)})}();let s=l.default.useSyncExternalStore(a.subscribe,a.getCurrentValue,a.getCurrentValue);return l.default.useImperativeHandle(t,()=>({retry:a.retry}),[]),l.default.useMemo(()=>{var t;return s.loading||s.error?l.default.createElement(r.loading,{isLoading:s.loading,pastDelay:s.pastDelay,timedOut:s.timedOut,error:s.error,retry:a.retry}):s.loaded?l.default.createElement((t=s.loaded)&&t.default?t.default:t,e):null},[e,s])}return u.preload=()=>o(),u.displayName="LoadableComponent",l.default.forwardRef(u)}(o,e)}function c(e,t){let r=[];for(;e.length;){let l=e.pop();r.push(l(t))}return Promise.all(r).then(()=>{if(e.length)return c(e,t)})}u.preloadAll=()=>new Promise((e,t)=>{c(a).then(e,t)}),u.preloadReady=e=>(void 0===e&&(e=[]),new Promise(t=>{let r=()=>(n=!0,t());c(s,e).then(r,r)})),window.__NEXT_PRELOADREADY=u.preloadReady;let p=u},65218:function(e,t,r){e.exports=r(76737)}},function(e){e.O(0,[8033,6060,7553,4481,8433,2888,9774,179],function(){return e(e.s=1565)}),_N_E=e.O()}]);
|
@@ -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/1fdf5c593349dbc6.css" as="style"/><link rel="stylesheet" href="/_next/static/css/1fdf5c593349dbc6.css" data-n-g=""/><link rel="preload" href="/_next/static/css/92fc10cc7ed1aba3.css" as="style"/><link rel="stylesheet" href="/_next/static/css/92fc10cc7ed1aba3.css" data-n-p=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-8457bad7859c44f0.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-33bc23b79bffe07c.js" defer=""></script><script src="/_next/static/chunks/c78d26b1-88a3e1bacb2a03c2.js" defer=""></script><script src="/_next/static/chunks/6060-cb1ab5be7067bf7b.js" defer=""></script><script src="/_next/static/chunks/2858-0b44609b6be7850b.js" defer=""></script><script src="/_next/static/chunks/2866-a73888c17a195cbe.js" defer=""></script><script src="/_next/static/chunks/9278-9b1b5970f0702668.js" defer=""></script><script src="/_next/static/chunks/5277-e8a036319456127f.js" defer=""></script><script src="/_next/static/chunks/7553-08bc3d9f66695111.js" defer=""></script><script src="/_next/static/chunks/4481-7f6710c928bb0cb0.js" defer=""></script><script src="/_next/static/chunks/401-7e800aed05537126.js" defer=""></script><script src="/_next/static/chunks/7980-736f9fd1e749ddd2.js" defer=""></script><script src="/_next/static/chunks/8499-1fd392d0be9e8ee4.js" defer=""></script><script src="/_next/static/chunks/6202-081545c7822d09af.js" defer=""></script><script src="/_next/static/chunks/4132-9b1731bfec6ee537.js" defer=""></script><script src="/_next/static/chunks/8032-74d94f7bd5b81c89.js" defer=""></script><script src="/_next/static/chunks/pages/add-systems/manual-1bec086d567aacff.js" defer=""></script><script src="/_next/static/
|
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/1fdf5c593349dbc6.css" as="style"/><link rel="stylesheet" href="/_next/static/css/1fdf5c593349dbc6.css" data-n-g=""/><link rel="preload" href="/_next/static/css/92fc10cc7ed1aba3.css" as="style"/><link rel="stylesheet" href="/_next/static/css/92fc10cc7ed1aba3.css" data-n-p=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-8457bad7859c44f0.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-33bc23b79bffe07c.js" defer=""></script><script src="/_next/static/chunks/c78d26b1-88a3e1bacb2a03c2.js" defer=""></script><script src="/_next/static/chunks/6060-cb1ab5be7067bf7b.js" defer=""></script><script src="/_next/static/chunks/2858-0b44609b6be7850b.js" defer=""></script><script src="/_next/static/chunks/2866-a73888c17a195cbe.js" defer=""></script><script src="/_next/static/chunks/9278-9b1b5970f0702668.js" defer=""></script><script src="/_next/static/chunks/5277-e8a036319456127f.js" defer=""></script><script src="/_next/static/chunks/7553-08bc3d9f66695111.js" defer=""></script><script src="/_next/static/chunks/4481-7f6710c928bb0cb0.js" defer=""></script><script src="/_next/static/chunks/401-7e800aed05537126.js" defer=""></script><script src="/_next/static/chunks/7980-736f9fd1e749ddd2.js" defer=""></script><script src="/_next/static/chunks/8499-1fd392d0be9e8ee4.js" defer=""></script><script src="/_next/static/chunks/6202-081545c7822d09af.js" defer=""></script><script src="/_next/static/chunks/4132-9b1731bfec6ee537.js" defer=""></script><script src="/_next/static/chunks/8032-74d94f7bd5b81c89.js" defer=""></script><script src="/_next/static/chunks/pages/add-systems/manual-1bec086d567aacff.js" defer=""></script><script src="/_next/static/X2nvWLg2_-vsCTkhSWpzw/_buildManifest.js" defer=""></script><script src="/_next/static/X2nvWLg2_-vsCTkhSWpzw/_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":"/add-systems/manual","query":{},"buildId":"X2nvWLg2_-vsCTkhSWpzw","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
|
@@ -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/1fdf5c593349dbc6.css" as="style"/><link rel="stylesheet" href="/_next/static/css/1fdf5c593349dbc6.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-8457bad7859c44f0.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-33bc23b79bffe07c.js" defer=""></script><script src="/_next/static/chunks/c78d26b1-88a3e1bacb2a03c2.js" defer=""></script><script src="/_next/static/chunks/6060-cb1ab5be7067bf7b.js" defer=""></script><script src="/_next/static/chunks/7553-08bc3d9f66695111.js" defer=""></script><script src="/_next/static/chunks/4481-7f6710c928bb0cb0.js" defer=""></script><script src="/_next/static/chunks/401-7e800aed05537126.js" defer=""></script><script src="/_next/static/chunks/3923-b4f701ada3ef0ee0.js" defer=""></script><script src="/_next/static/chunks/796-d6586308ed44334b.js" defer=""></script><script src="/_next/static/chunks/pages/add-systems/multiple-f68bf100e4e60e88.js" defer=""></script><script src="/_next/static/
|
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/1fdf5c593349dbc6.css" as="style"/><link rel="stylesheet" href="/_next/static/css/1fdf5c593349dbc6.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-8457bad7859c44f0.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-33bc23b79bffe07c.js" defer=""></script><script src="/_next/static/chunks/c78d26b1-88a3e1bacb2a03c2.js" defer=""></script><script src="/_next/static/chunks/6060-cb1ab5be7067bf7b.js" defer=""></script><script src="/_next/static/chunks/7553-08bc3d9f66695111.js" defer=""></script><script src="/_next/static/chunks/4481-7f6710c928bb0cb0.js" defer=""></script><script src="/_next/static/chunks/401-7e800aed05537126.js" defer=""></script><script src="/_next/static/chunks/3923-b4f701ada3ef0ee0.js" defer=""></script><script src="/_next/static/chunks/796-d6586308ed44334b.js" defer=""></script><script src="/_next/static/chunks/pages/add-systems/multiple-f68bf100e4e60e88.js" defer=""></script><script src="/_next/static/X2nvWLg2_-vsCTkhSWpzw/_buildManifest.js" defer=""></script><script src="/_next/static/X2nvWLg2_-vsCTkhSWpzw/_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":"/add-systems/multiple","query":{},"buildId":"X2nvWLg2_-vsCTkhSWpzw","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
|