@redacto.io/consent-sdk-react-native 5.0.0-beta.7 → 5.0.0-beta.8
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.
- package/dist/index.js +6 -3
- package/dist/index.mjs +6 -3
- package/dist/privacy-center.d.mts +35 -0
- package/dist/privacy-center.d.ts +35 -0
- package/dist/privacy-center.js +1070 -533
- package/dist/privacy-center.mjs +1041 -504
- package/package.json +1 -1
package/dist/privacy-center.mjs
CHANGED
|
@@ -5,10 +5,10 @@ import {
|
|
|
5
5
|
} from "./chunk-B2TXWC2C.mjs";
|
|
6
6
|
|
|
7
7
|
// src/RedactoPrivacyCenter/RedactoPrivacyCenter.tsx
|
|
8
|
-
import { useEffect as
|
|
8
|
+
import { useEffect as useEffect21 } from "react";
|
|
9
9
|
import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
|
|
10
10
|
import { I18nextProvider } from "react-i18next";
|
|
11
|
-
import { View as
|
|
11
|
+
import { View as View52, StyleSheet as StyleSheet55, StatusBar as StatusBar2, Platform as Platform8 } from "react-native";
|
|
12
12
|
|
|
13
13
|
// src/RedactoPrivacyCenter/lib/i18n.ts
|
|
14
14
|
import i18n from "i18next";
|
|
@@ -425,7 +425,14 @@ var translation_default = {
|
|
|
425
425
|
submittingAs: "Submitting as {{email}}",
|
|
426
426
|
tapToChooseFile: "Tap to choose a file",
|
|
427
427
|
view: "View",
|
|
428
|
-
whatDoYouNeed: "What do you need?"
|
|
428
|
+
whatDoYouNeed: "What do you need?",
|
|
429
|
+
sessionExpiredTitle: "Your session has expired",
|
|
430
|
+
sessionExpiredDescription: "Please sign in again to continue.",
|
|
431
|
+
chooseYourProfile: "Choose your profile",
|
|
432
|
+
loginIdentifierLinkedToMultipleProfiles: "The login identifier is linked to more than one profile. Choose the one you want to view.",
|
|
433
|
+
userIdLabel: "User ID: {{id}}",
|
|
434
|
+
signingInEllipsis: "Signing in\u2026",
|
|
435
|
+
switchProfile: "Switch profile"
|
|
429
436
|
};
|
|
430
437
|
|
|
431
438
|
// src/RedactoPrivacyCenter/locales/as/translation.json
|
|
@@ -839,7 +846,14 @@ var translation_default2 = {
|
|
|
839
846
|
submittingAs: "{{email}} \u09B9\u09BF\u099A\u09BE\u09AA\u09C7 \u09A6\u09BE\u0996\u09BF\u09B2 \u0995\u09F0\u09BF \u0986\u099B\u09C7",
|
|
840
847
|
tapToChooseFile: "\u09AB\u09BE\u0987\u09B2 \u09AC\u09BE\u099B\u09BF\u09AC\u09B2\u09C8 \u099F\u09BF\u09AA\u0995",
|
|
841
848
|
view: "\u099A\u09BE\u0993\u0995",
|
|
842
|
-
whatDoYouNeed: "\u0986\u09AA\u09CB\u09A8\u09BE\u0995 \u0995\u09BF \u09B2\u09BE\u0997\u09C7?"
|
|
849
|
+
whatDoYouNeed: "\u0986\u09AA\u09CB\u09A8\u09BE\u0995 \u0995\u09BF \u09B2\u09BE\u0997\u09C7?",
|
|
850
|
+
sessionExpiredTitle: "\u0986\u09AA\u09CB\u09A8\u09BE\u09F0 \u099B\u09C7\u099A\u09A8 \u09B6\u09C7\u09B7 \u09B9\u09C8\u099B\u09C7",
|
|
851
|
+
sessionExpiredDescription: "\u0985\u09AC\u09CD\u09AF\u09BE\u09B9\u09A4 \u09F0\u09BE\u0996\u09BF\u09AC\u09B2\u09C8 \u0985\u09A8\u09C1\u0997\u09CD\u09F0\u09B9 \u0995\u09F0\u09BF \u09AA\u09C1\u09A8\u09F0 \u099B\u09BE\u0987\u09A8 \u0987\u09A8 \u0995\u09F0\u0995\u0964",
|
|
852
|
+
chooseYourProfile: "\u0986\u09AA\u09CB\u09A8\u09BE\u09F0 \u09AA\u09CD\u09F0'\u09AB\u09BE\u0987\u09B2 \u09AC\u09BE\u099B\u09A8\u09BF \u0995\u09F0\u0995",
|
|
853
|
+
loginIdentifierLinkedToMultipleProfiles: "\u09B2\u0997\u0987\u09A8 \u0986\u0987\u09A1\u09BF \u098F\u0995\u09BE\u09A7\u09BF\u0995 \u09AA\u09CD\u09F0'\u09AB\u09BE\u0987\u09B2\u09F0 \u09B8\u09C8\u09A4\u09C7 \u09B8\u0982\u09AF\u09C1\u0995\u09CD\u09A4\u0964 \u0986\u09AA\u09C1\u09A8\u09BF \u099A\u09BE\u09AC \u09AC\u09BF\u099A\u09F0\u09BE\u099F\u09CB \u09AC\u09BE\u099B\u09A8\u09BF \u0995\u09F0\u0995\u0964",
|
|
854
|
+
userIdLabel: "\u09AC\u09CD\u09AF\u09F1\u09B9\u09BE\u09F0\u0995\u09BE\u09F0\u09C0 \u0986\u0987\u09A1\u09BF: {{id}}",
|
|
855
|
+
signingInEllipsis: "\u099B\u09BE\u0987\u09A8 \u0987\u09A8 \u09B9\u09C8 \u0986\u099B\u09C7\u2026",
|
|
856
|
+
switchProfile: "\u09AA\u09CD\u09F0'\u09AB\u09BE\u0987\u09B2 \u09B8\u09B2\u09A8\u09BF \u0995\u09F0\u0995"
|
|
843
857
|
};
|
|
844
858
|
|
|
845
859
|
// src/RedactoPrivacyCenter/locales/bn/translation.json
|
|
@@ -1253,7 +1267,14 @@ var translation_default3 = {
|
|
|
1253
1267
|
submittingAs: "{{email}} \u09B9\u09BF\u09B8\u09BE\u09AC\u09C7 \u099C\u09AE\u09BE \u09A6\u09C7\u0993\u09AF\u09BC\u09BE \u09B9\u099A\u09CD\u099B\u09C7",
|
|
1254
1268
|
tapToChooseFile: "\u09AB\u09BE\u0987\u09B2 \u09AC\u09C7\u099B\u09C7 \u09A8\u09BF\u09A4\u09C7 \u099F\u09CD\u09AF\u09BE\u09AA \u0995\u09B0\u09C1\u09A8",
|
|
1255
1269
|
view: "\u09A6\u09C7\u0996\u09C1\u09A8",
|
|
1256
|
-
whatDoYouNeed: "\u0986\u09AA\u09A8\u09BE\u09B0 \u0995\u09C0 \u09AA\u09CD\u09B0\u09AF\u09BC\u09CB\u099C\u09A8?"
|
|
1270
|
+
whatDoYouNeed: "\u0986\u09AA\u09A8\u09BE\u09B0 \u0995\u09C0 \u09AA\u09CD\u09B0\u09AF\u09BC\u09CB\u099C\u09A8?",
|
|
1271
|
+
sessionExpiredTitle: "\u0986\u09AA\u09A8\u09BE\u09B0 \u09B8\u09C7\u09B6\u09A8 \u09AE\u09C7\u09AF\u09BC\u09BE\u09A6 \u09B6\u09C7\u09B7 \u09B9\u09AF\u09BC\u09C7 \u0997\u09C7\u099B\u09C7",
|
|
1272
|
+
sessionExpiredDescription: "\u099A\u09BE\u09B2\u09BF\u09AF\u09BC\u09C7 \u09AF\u09C7\u09A4\u09C7 \u0985\u09A8\u09C1\u0997\u09CD\u09B0\u09B9 \u0995\u09B0\u09C7 \u0986\u09AC\u09BE\u09B0 \u09B8\u09BE\u0987\u09A8 \u0987\u09A8 \u0995\u09B0\u09C1\u09A8\u0964",
|
|
1273
|
+
chooseYourProfile: "\u0986\u09AA\u09A8\u09BE\u09B0 \u09AA\u09CD\u09B0\u09CB\u09AB\u09BE\u0987\u09B2 \u09AC\u09C7\u099B\u09C7 \u09A8\u09BF\u09A8",
|
|
1274
|
+
loginIdentifierLinkedToMultipleProfiles: "\u09B2\u0997\u0987\u09A8 \u0986\u0987\u09A1\u09BF \u098F\u0995\u09BE\u09A7\u09BF\u0995 \u09AA\u09CD\u09B0\u09CB\u09AB\u09BE\u0987\u09B2\u09C7\u09B0 \u09B8\u09BE\u09A5\u09C7 \u09AF\u09C1\u0995\u09CD\u09A4\u0964 \u0986\u09AA\u09A8\u09BF \u09AF\u09C7\u099F\u09BF \u09A6\u09C7\u0996\u09A4\u09C7 \u099A\u09BE\u09A8 \u09B8\u09C7\u099F\u09BF \u09AC\u09C7\u099B\u09C7 \u09A8\u09BF\u09A8\u0964",
|
|
1275
|
+
userIdLabel: "\u09AC\u09CD\u09AF\u09AC\u09B9\u09BE\u09B0\u0995\u09BE\u09B0\u09C0\u09B0 \u0986\u0987\u09A1\u09BF: {{id}}",
|
|
1276
|
+
signingInEllipsis: "\u09B8\u09BE\u0987\u09A8 \u0987\u09A8 \u09B9\u099A\u09CD\u099B\u09C7\u2026",
|
|
1277
|
+
switchProfile: "\u09AA\u09CD\u09B0\u09CB\u09AB\u09BE\u0987\u09B2 \u09AA\u09B0\u09BF\u09AC\u09B0\u09CD\u09A4\u09A8 \u0995\u09B0\u09C1\u09A8"
|
|
1257
1278
|
};
|
|
1258
1279
|
|
|
1259
1280
|
// src/RedactoPrivacyCenter/locales/brx/translation.json
|
|
@@ -1667,7 +1688,14 @@ var translation_default4 = {
|
|
|
1667
1688
|
submittingAs: "{{email}} \u092E\u0939\u0930\u0948 \u0917\u0925\u093E\u092F\u0917\u093E\u0938\u093F\u0928\u094B",
|
|
1668
1689
|
tapToChooseFile: "\u092B\u093E\u0907\u0932 \u0938\u093E\u092F\u0916\u0928\u094B \u091F\u0947\u092C \u0916\u093E\u0932\u093E\u092E",
|
|
1669
1690
|
view: "\u0928\u093E\u092F",
|
|
1670
|
-
whatDoYouNeed: "\u0928\u094B\u0902\u0925\u093E\u0902\u0928\u094B \u092E\u093E \u0917\u094B\u0928\u093E\u0902?"
|
|
1691
|
+
whatDoYouNeed: "\u0928\u094B\u0902\u0925\u093E\u0902\u0928\u094B \u092E\u093E \u0917\u094B\u0928\u093E\u0902?",
|
|
1692
|
+
sessionExpiredTitle: "\u0928\u094B\u0902\u0925\u093E\u0902\u0928\u093F \u0938\u0947\u0938\u0928 \u091C\u094B\u092C\u092C\u093E\u092F",
|
|
1693
|
+
sessionExpiredDescription: "\u0938\u093E\u0932\u093E\u092F\u0928\u094B \u0925\u093E\u0916\u093E\u092F \u0905\u0928\u0928\u093E\u0928\u0948 \u092B\u093F\u0928 \u0938\u093E\u0907\u0928 \u0907\u0928 \u0916\u093E\u0932\u093E\u092E\u0964",
|
|
1694
|
+
chooseYourProfile: "\u0928\u094B\u0902\u0925\u093E\u0902\u0928\u093F \u092A\u094D\u0930\u092B\u093E\u0907\u0932 \u0938\u093E\u092F\u0916",
|
|
1695
|
+
loginIdentifierLinkedToMultipleProfiles: "\u0932\u0949\u0917\u093F\u0928 \u0906\u0908\u0921\u0940 \u092E\u094B\u0928\u0938\u0947\u0928\u093F\u0916\u094D\u0930\u0941\u0907 \u092C\u093E\u0902\u0938\u093F\u0928 \u092A\u094D\u0930\u092B\u093E\u0907\u0932\u091C\u094B\u0902 \u0928\u093E\u0902\u091C\u093E\u092C \u0926\u0902\u0964 \u0928\u094B\u0902\u0925\u093E\u0919\u093E \u0928\u093E\u092F\u0928\u094B \u0932\u0941\u092C\u0948\u092F\u094B\u092C\u094D\u0932\u093E \u092C\u0947\u0916\u094C \u0938\u093E\u092F\u0916\u0964",
|
|
1696
|
+
userIdLabel: "\u092F\u0942\u091C\u0930 \u0906\u0908\u0921\u0940: {{id}}",
|
|
1697
|
+
signingInEllipsis: "\u0938\u093E\u0907\u0928 \u0907\u0928 \u091C\u093E\u092F\u0917\u093E\u0938\u093F\u0928\u094B \u0926\u0902\u2026",
|
|
1698
|
+
switchProfile: "\u092A\u094D\u0930\u094B\u092B\u093E\u0907\u0932 \u0938\u094B\u0932\u093E\u092F"
|
|
1671
1699
|
};
|
|
1672
1700
|
|
|
1673
1701
|
// src/RedactoPrivacyCenter/locales/doi/translation.json
|
|
@@ -2081,7 +2109,14 @@ var translation_default5 = {
|
|
|
2081
2109
|
submittingAs: "{{email}} \u0926\u0947 \u0930\u0942\u092A \u091A \u091C\u092E\u093E\u0902 \u0915\u0930\u0926\u0947",
|
|
2082
2110
|
tapToChooseFile: "\u092B\u093E\u0907\u0932 \u091A\u0941\u0928\u0928\u0947 \u0906\u0938\u094D\u0924\u0948 \u091F\u0948\u092A \u0915\u0930\u094B",
|
|
2083
2111
|
view: "\u0926\u093F\u0915\u094D\u0916\u094B",
|
|
2084
|
-
whatDoYouNeed: "\u0924\u0941\u0938\u0947\u0902 \u0915\u0947\u0939\u094D \u091A\u093E\u0939\u093F\u0926\u093E?"
|
|
2112
|
+
whatDoYouNeed: "\u0924\u0941\u0938\u0947\u0902 \u0915\u0947\u0939\u094D \u091A\u093E\u0939\u093F\u0926\u093E?",
|
|
2113
|
+
sessionExpiredTitle: "\u0924\u0941\u0902\u0926\u093E \u0938\u0924\u094D\u0930 \u0916\u0924\u092E \u0939\u094B\u0908 \u0917\u0947\u0906 \u0910",
|
|
2114
|
+
sessionExpiredDescription: "\u091C\u093E\u0930\u0940 \u0930\u0915\u094D\u0916\u0928\u0947 \u0906\u0938\u094D\u0924\u0948 \u0915\u0943\u092A\u093E \u0915\u0930\u093F\u092F\u0948 \u092B\u093F\u0930\u0940 \u0938\u093E\u0907\u0928 \u0907\u0928 \u0915\u0930\u094B\u0964",
|
|
2115
|
+
chooseYourProfile: "\u0905\u092A\u0928\u0940 \u092A\u094D\u0930\u094B\u092B\u093E\u0907\u0932 \u091A\u0941\u0928\u094B",
|
|
2116
|
+
loginIdentifierLinkedToMultipleProfiles: "\u0932\u0949\u0917\u093F\u0928 \u0906\u0908\u0921\u0940 \u0907\u0915 \u0915\u094B\u0932\u093E \u092E\u0924\u093E \u092A\u094D\u0930\u094B\u092B\u093E\u0907\u0932\u0947\u0902 \u0915\u0928\u094D\u0928\u0948 \u091C\u0941\u0921\u093C\u094D\u092F\u093E \u0926\u093E \u0910\u0964 \u091C\u0947\u0939\u094D\u0921\u093C\u0940 \u0924\u0941\u0938\u0947\u0902 \u0926\u093F\u0915\u094D\u0916\u0928\u0940 \u0910 \u0913\u0939\u094D \u091A\u0941\u0928\u094B\u0964",
|
|
2117
|
+
userIdLabel: "\u092A\u094D\u0930\u092F\u094B\u0917\u0915\u0930\u094D\u0924\u093E \u0906\u0908\u0921\u0940: {{id}}",
|
|
2118
|
+
signingInEllipsis: "\u0938\u093E\u0907\u0928 \u0907\u0928 \u0939\u094B\u0906 \u0915\u0930\u0926\u093E \u0910\u2026",
|
|
2119
|
+
switchProfile: "\u092A\u094D\u0930\u094B\u092B\u093E\u0907\u0932 \u092C\u0926\u0932\u094B"
|
|
2085
2120
|
};
|
|
2086
2121
|
|
|
2087
2122
|
// src/RedactoPrivacyCenter/locales/gom/translation.json
|
|
@@ -2495,7 +2530,14 @@ var translation_default6 = {
|
|
|
2495
2530
|
submittingAs: "{{email}} \u092E\u094D\u0939\u0942\u0923 \u0938\u093E\u0926\u0930 \u0915\u0930\u0924\u093E",
|
|
2496
2531
|
tapToChooseFile: "\u092B\u093E\u092F\u0932 \u0928\u093F\u0935\u0921\u092A\u093E\u0915 \u091F\u0945\u092A \u0915\u0930\u093E\u0924",
|
|
2497
2532
|
view: "\u092A\u0933\u092F\u093E\u0924",
|
|
2498
|
-
whatDoYouNeed: "\u0924\u0941\u092E\u0915\u093E\u0902 \u0915\u093F\u0924\u0947\u0902 \u091C\u093E\u092F?"
|
|
2533
|
+
whatDoYouNeed: "\u0924\u0941\u092E\u0915\u093E\u0902 \u0915\u093F\u0924\u0947\u0902 \u091C\u093E\u092F?",
|
|
2534
|
+
sessionExpiredTitle: "\u0924\u0941\u092E\u091A\u0947\u0902 \u0938\u0924\u094D\u0930 \u0938\u094B\u0902\u092A\u0932\u093E\u0902",
|
|
2535
|
+
sessionExpiredDescription: "\u092B\u0941\u0921\u0947\u0902 \u0935\u091A\u092A\u093E\u0915 \u0909\u092A\u0915\u093E\u0930 \u0915\u0930\u0942\u0928 \u092A\u0930\u0924\u0942\u0928 \u0938\u093E\u0907\u0928 \u0907\u0928 \u0915\u0930\u093E\u0924.",
|
|
2536
|
+
chooseYourProfile: "\u0924\u0941\u092E\u091A\u0947\u0902 \u092A\u094D\u0930\u094B\u092B\u093E\u092F\u0932 \u0928\u093F\u0935\u0921\u093E\u0924",
|
|
2537
|
+
loginIdentifierLinkedToMultipleProfiles: "\u0932\u0949\u0917\u093F\u0928 \u0906\u092F\u0921\u0940 \u090F\u0915\u093E\u092A\u0930\u0938 \u091A\u0921 \u092A\u094D\u0930\u094B\u092B\u093E\u092F\u0932\u093E\u0902\u0915 \u091C\u094B\u0921\u0932\u093E. \u0924\u0941\u092E\u0915\u093E\u0902 \u091C\u0947\u0902 \u092A\u0933\u094B\u0935\u092A\u093E\u0915 \u091C\u093E\u092F \u0924\u0947\u0902 \u0928\u093F\u0935\u0921\u093E\u0924.",
|
|
2538
|
+
userIdLabel: "\u0935\u093E\u092A\u0930\u092A\u0940 \u0906\u092F\u0921\u0940: {{id}}",
|
|
2539
|
+
signingInEllipsis: "\u0938\u093E\u0907\u0928 \u0907\u0928 \u091C\u093E\u0935\u0928 \u0906\u0938\u093E\u2026",
|
|
2540
|
+
switchProfile: "\u092A\u094D\u0930\u094B\u092B\u093E\u092F\u0932 \u092C\u0926\u0932\u093E"
|
|
2499
2541
|
};
|
|
2500
2542
|
|
|
2501
2543
|
// src/RedactoPrivacyCenter/locales/gu/translation.json
|
|
@@ -2909,7 +2951,14 @@ var translation_default7 = {
|
|
|
2909
2951
|
submittingAs: "{{email}} \u0AA4\u0AB0\u0AC0\u0A95\u0AC7 \u0AB8\u0AAC\u0AAE\u0ABF\u0A9F \u0A95\u0AB0\u0AC0 \u0AB0\u0AB9\u0ACD\u0AAF\u0ABE \u0A9B\u0ACB",
|
|
2910
2952
|
tapToChooseFile: "\u0AAB\u0ABE\u0A87\u0AB2 \u0AAA\u0AB8\u0A82\u0AA6 \u0A95\u0AB0\u0AB5\u0ABE \u0A9F\u0AC5\u0AAA \u0A95\u0AB0\u0ACB",
|
|
2911
2953
|
view: "\u0A9C\u0AC1\u0A93",
|
|
2912
|
-
whatDoYouNeed: "\u0AA4\u0AAE\u0AA8\u0AC7 \u0AB6\u0AC1\u0A82 \u0A9C\u0ACB\u0A88\u0A8F \u0A9B\u0AC7?"
|
|
2954
|
+
whatDoYouNeed: "\u0AA4\u0AAE\u0AA8\u0AC7 \u0AB6\u0AC1\u0A82 \u0A9C\u0ACB\u0A88\u0A8F \u0A9B\u0AC7?",
|
|
2955
|
+
sessionExpiredTitle: "\u0AA4\u0AAE\u0ABE\u0AB0\u0AC1\u0A82 \u0AB8\u0AA4\u0ACD\u0AB0 \u0AB8\u0AAE\u0ABE\u0AAA\u0ACD\u0AA4 \u0AA5\u0A88 \u0A97\u0AAF\u0AC1\u0A82 \u0A9B\u0AC7",
|
|
2956
|
+
sessionExpiredDescription: "\u0A9A\u0ABE\u0AB2\u0AC1 \u0AB0\u0ABE\u0A96\u0AB5\u0ABE \u0AAE\u0ABE\u0A9F\u0AC7 \u0A95\u0AC3\u0AAA\u0ABE \u0A95\u0AB0\u0AC0\u0AA8\u0AC7 \u0AAB\u0AB0\u0AC0\u0AA5\u0AC0 \u0AB8\u0ABE\u0A87\u0AA8 \u0A87\u0AA8 \u0A95\u0AB0\u0ACB.",
|
|
2957
|
+
chooseYourProfile: "\u0AA4\u0AAE\u0ABE\u0AB0\u0AC0 \u0AAA\u0ACD\u0AB0\u0ACB\u0AAB\u0ABE\u0A87\u0AB2 \u0AAA\u0AB8\u0A82\u0AA6 \u0A95\u0AB0\u0ACB",
|
|
2958
|
+
loginIdentifierLinkedToMultipleProfiles: "\u0AB2\u0ACB\u0A97\u0ABF\u0AA8 \u0A86\u0A88\u0AA1\u0AC0 \u0A8F\u0A95 \u0A95\u0AB0\u0AA4\u0ABE\u0A82 \u0AB5\u0AA7\u0AC1 \u0AAA\u0ACD\u0AB0\u0ACB\u0AAB\u0ABE\u0A87\u0AB2 \u0AB8\u0ABE\u0AA5\u0AC7 \u0A9C\u0ACB\u0AA1\u0ABE\u0AAF\u0AC7\u0AB2 \u0A9B\u0AC7. \u0AA4\u0AAE\u0AC7 \u0A9C\u0AC7 \u0A9C\u0ACB\u0AB5\u0ABE \u0AAE\u0ABE\u0A82\u0A97\u0ACB \u0A9B\u0ACB \u0AA4\u0AC7 \u0AAA\u0AB8\u0A82\u0AA6 \u0A95\u0AB0\u0ACB.",
|
|
2959
|
+
userIdLabel: "\u0AB5\u0AAA\u0AB0\u0ABE\u0AB6\u0A95\u0AB0\u0ACD\u0AA4\u0ABE \u0A86\u0A88\u0AA1\u0AC0: {{id}}",
|
|
2960
|
+
signingInEllipsis: "\u0AB8\u0ABE\u0A87\u0AA8 \u0A87\u0AA8 \u0AA5\u0A88 \u0AB0\u0AB9\u0ACD\u0AAF\u0AC1\u0A82 \u0A9B\u0AC7\u2026",
|
|
2961
|
+
switchProfile: "\u0AAA\u0ACD\u0AB0\u0ACB\u0AAB\u0ABE\u0A87\u0AB2 \u0AAC\u0AA6\u0AB2\u0ACB"
|
|
2913
2962
|
};
|
|
2914
2963
|
|
|
2915
2964
|
// src/RedactoPrivacyCenter/locales/hi/translation.json
|
|
@@ -3323,7 +3372,14 @@ var translation_default8 = {
|
|
|
3323
3372
|
submittingAs: "{{email}} \u0915\u0947 \u0930\u0942\u092A \u092E\u0947\u0902 \u0938\u092C\u092E\u093F\u091F \u0915\u0930 \u0930\u0939\u0947 \u0939\u0948\u0902",
|
|
3324
3373
|
tapToChooseFile: "\u092B\u093C\u093E\u0907\u0932 \u091A\u0941\u0928\u0928\u0947 \u0915\u0947 \u0932\u093F\u090F \u091F\u0948\u092A \u0915\u0930\u0947\u0902",
|
|
3325
3374
|
view: "\u0926\u0947\u0916\u0947\u0902",
|
|
3326
|
-
whatDoYouNeed: "\u0906\u092A\u0915\u094B \u0915\u094D\u092F\u093E \u091A\u093E\u0939\u093F\u090F?"
|
|
3375
|
+
whatDoYouNeed: "\u0906\u092A\u0915\u094B \u0915\u094D\u092F\u093E \u091A\u093E\u0939\u093F\u090F?",
|
|
3376
|
+
sessionExpiredTitle: "\u0906\u092A\u0915\u093E \u0938\u0924\u094D\u0930 \u0938\u092E\u093E\u092A\u094D\u0924 \u0939\u094B \u0917\u092F\u093E \u0939\u0948",
|
|
3377
|
+
sessionExpiredDescription: "\u091C\u093E\u0930\u0940 \u0930\u0916\u0928\u0947 \u0915\u0947 \u0932\u093F\u090F \u0915\u0943\u092A\u092F\u093E \u092B\u093F\u0930 \u0938\u0947 \u0938\u093E\u0907\u0928 \u0907\u0928 \u0915\u0930\u0947\u0902\u0964",
|
|
3378
|
+
chooseYourProfile: "\u0905\u092A\u0928\u0940 \u092A\u094D\u0930\u094B\u092B\u093C\u093E\u0907\u0932 \u091A\u0941\u0928\u0947\u0902",
|
|
3379
|
+
loginIdentifierLinkedToMultipleProfiles: "\u0932\u0949\u0917\u093F\u0928 \u0906\u0908\u0921\u0940 \u090F\u0915 \u0938\u0947 \u0905\u0927\u093F\u0915 \u092A\u094D\u0930\u094B\u092B\u093C\u093E\u0907\u0932 \u0938\u0947 \u091C\u0941\u0921\u093C\u093E \u0939\u0948\u0964 \u091C\u093F\u0938\u0947 \u0906\u092A \u0926\u0947\u0916\u0928\u093E \u091A\u093E\u0939\u0924\u0947 \u0939\u0948\u0902 \u0909\u0938\u0947 \u091A\u0941\u0928\u0947\u0902\u0964",
|
|
3380
|
+
userIdLabel: "\u0909\u092A\u092F\u094B\u0917\u0915\u0930\u094D\u0924\u093E \u0906\u0908\u0921\u0940: {{id}}",
|
|
3381
|
+
signingInEllipsis: "\u0938\u093E\u0907\u0928 \u0907\u0928 \u0939\u094B \u0930\u0939\u093E \u0939\u0948\u2026",
|
|
3382
|
+
switchProfile: "\u092A\u094D\u0930\u094B\u092B\u093C\u093E\u0907\u0932 \u092C\u0926\u0932\u0947\u0902"
|
|
3327
3383
|
};
|
|
3328
3384
|
|
|
3329
3385
|
// src/RedactoPrivacyCenter/locales/kn/translation.json
|
|
@@ -3737,7 +3793,14 @@ var translation_default9 = {
|
|
|
3737
3793
|
submittingAs: "{{email}} \u0C86\u0C97\u0CBF \u0CB8\u0CB2\u0CCD\u0CB2\u0CBF\u0CB8\u0CB2\u0CBE\u0C97\u0CC1\u0CA4\u0CCD\u0CA4\u0CBF\u0CA6\u0CC6",
|
|
3738
3794
|
tapToChooseFile: "\u0CAB\u0CC8\u0CB2\u0CCD \u0C86\u0CAF\u0CCD\u0C95\u0CC6\u0CAE\u0CBE\u0CA1\u0CB2\u0CC1 \u0C9F\u0CCD\u0CAF\u0CBE\u0CAA\u0CCD \u0CAE\u0CBE\u0CA1\u0CBF",
|
|
3739
3795
|
view: "\u0CB5\u0CC0\u0C95\u0CCD\u0CB7\u0CBF\u0CB8\u0CBF",
|
|
3740
|
-
whatDoYouNeed: "\u0CA8\u0CBF\u0CAE\u0C97\u0CC6 \u0C8F\u0CA8\u0CC1 \u0CAC\u0CC7\u0C95\u0CC1?"
|
|
3796
|
+
whatDoYouNeed: "\u0CA8\u0CBF\u0CAE\u0C97\u0CC6 \u0C8F\u0CA8\u0CC1 \u0CAC\u0CC7\u0C95\u0CC1?",
|
|
3797
|
+
sessionExpiredTitle: "\u0CA8\u0CBF\u0CAE\u0CCD\u0CAE \u0CB8\u0CC6\u0CB7\u0CA8\u0CCD \u0C85\u0CB5\u0CA7\u0CBF \u0CAE\u0CC1\u0C97\u0CBF\u0CA6\u0CBF\u0CA6\u0CC6",
|
|
3798
|
+
sessionExpiredDescription: "\u0CAE\u0CC1\u0C82\u0CA6\u0CC1\u0CB5\u0CB0\u0CBF\u0CB8\u0CB2\u0CC1 \u0CA6\u0CAF\u0CB5\u0CBF\u0C9F\u0CCD\u0C9F\u0CC1 \u0CAE\u0CA4\u0CCD\u0CA4\u0CC6 \u0CB8\u0CC8\u0CA8\u0CCD \u0C87\u0CA8\u0CCD \u0CAE\u0CBE\u0CA1\u0CBF.",
|
|
3799
|
+
chooseYourProfile: "\u0CA8\u0CBF\u0CAE\u0CCD\u0CAE \u0CAA\u0CCD\u0CB0\u0CCA\u0CAB\u0CC8\u0CB2\u0CCD \u0C86\u0CAF\u0CCD\u0C95\u0CC6\u0CAE\u0CBE\u0CA1\u0CBF",
|
|
3800
|
+
loginIdentifierLinkedToMultipleProfiles: "\u0CB2\u0CBE\u0C97\u0CBF\u0CA8\u0CCD \u0C90\u0CA1\u0CBF \u0C92\u0C82\u0CA6\u0C95\u0CCD\u0C95\u0CBF\u0C82\u0CA4 \u0CB9\u0CC6\u0C9A\u0CCD\u0C9A\u0CC1 \u0CAA\u0CCD\u0CB0\u0CCA\u0CAB\u0CC8\u0CB2\u0CCD\u200C\u0C97\u0CB3\u0CBF\u0C97\u0CC6 \u0CB2\u0CBF\u0C82\u0C95\u0CCD \u0C86\u0C97\u0CBF\u0CA6\u0CC6. \u0CA8\u0CC0\u0CB5\u0CC1 \u0CB5\u0CC0\u0C95\u0CCD\u0CB7\u0CBF\u0CB8\u0CB2\u0CC1 \u0CAC\u0CAF\u0CB8\u0CC1\u0CB5\u0CC1\u0CA6\u0CA8\u0CCD\u0CA8\u0CC1 \u0C86\u0CAF\u0CCD\u0C95\u0CC6\u0CAE\u0CBE\u0CA1\u0CBF.",
|
|
3801
|
+
userIdLabel: "\u0CAC\u0CB3\u0C95\u0CC6\u0CA6\u0CBE\u0CB0 \u0C90\u0CA1\u0CBF: {{id}}",
|
|
3802
|
+
signingInEllipsis: "\u0CB8\u0CC8\u0CA8\u0CCD \u0C87\u0CA8\u0CCD \u0C86\u0C97\u0CC1\u0CA4\u0CCD\u0CA4\u0CBF\u0CA6\u0CC6\u2026",
|
|
3803
|
+
switchProfile: "\u0CAA\u0CCD\u0CB0\u0CCA\u0CAB\u0CC8\u0CB2\u0CCD \u0CAC\u0CA6\u0CB2\u0CBE\u0CAF\u0CBF\u0CB8\u0CBF"
|
|
3741
3804
|
};
|
|
3742
3805
|
|
|
3743
3806
|
// src/RedactoPrivacyCenter/locales/ks/translation.json
|
|
@@ -4151,7 +4214,14 @@ var translation_default10 = {
|
|
|
4151
4214
|
submittingAs: "{{email}} \u067E\u0620\u0658\u0679\u06BE \u062C\u0645\u0639 \u06A9\u0631\u0627\u0646",
|
|
4152
4215
|
tapToChooseFile: "\u0641\u0627\u06CC\u0644 \u0698\u0627\u0631\u0646\u06C1 \u062E\u0672\u0637\u0631\u0655 \u0679\u06CC\u067E \u06A9\u0631\u06CC\u0648",
|
|
4153
4216
|
view: "\u0648\u064F\u0686\u06BE\u0650\u0648",
|
|
4154
|
-
whatDoYouNeed: "\u062A\u0648\u06C1\u0650 \u06A9\u06CC\u0627 \u0636\u0631\u0648\u0631\u062A \u0686\u06BE\u064F\u061F"
|
|
4217
|
+
whatDoYouNeed: "\u062A\u0648\u06C1\u0650 \u06A9\u06CC\u0627 \u0636\u0631\u0648\u0631\u062A \u0686\u06BE\u064F\u061F",
|
|
4218
|
+
sessionExpiredTitle: "\u062A\u064F\u06C1\u0646\u065B\u062F \u0633\u06CC\u0634\u064E\u0646 \u062E\u062A\u0645 \u06AF\u06C4\u0645\u064F\u062A",
|
|
4219
|
+
sessionExpiredDescription: "\u062C\u0627\u0631\u06CC \u0631\u06A9\u06BE\u0646\u06C1\u0655 \u062E\u0672\u0637\u0631\u0655 \u0645\u06C1\u0631\u0628\u0627\u0646\u06CC \u06A9\u0631\u0650\u062A\u06BE \u062F\u0648\u0628\u0627\u0631\u0655 \u0633\u0627\u0626\u0646 \u0627\u0650\u0646 \u06A9\u0631\u06CC\u0648\u06D4",
|
|
4220
|
+
chooseYourProfile: "\u067E\u0646\u0646\u06C1\u0655 \u067E\u0631\u0648\u0641\u0627\u0626\u0644 \u0698\u0627\u0631\u0655\u0648",
|
|
4221
|
+
loginIdentifierLinkedToMultipleProfiles: "\u0644\u0627\u06AF \u0627\u0650\u0646 \u0622\u0626\u06CC \u0688\u06CC \u0686\u06BE\u064F \u0627\u06A9\u06C1 \u06A9\u06BE\u06C4\u062A\u06C1 \u0632\u06CC\u0627\u062F\u0655 \u067E\u0631\u0648\u0641\u0627\u0626\u0644\u0646 \u0633\u065F\u062A\u0620 \u062C\u0648\u0691\u0646\u06C1 \u0622\u0645\u064F\u062A\u06D4 \u06CC\u064F\u0633 \u062A\u0648\u06C1\u06C1\u0650 \u0648\u064F\u0686\u06BE\u064F\u0646 \u0686\u06BE\u0650\u0648 \u06CC\u0698\u06BE\u0627\u0646 \u0633\u064F \u0698\u0627\u0631\u0655\u0648\u06D4",
|
|
4222
|
+
userIdLabel: "\u0635\u0627\u0631\u0641 \u0622\u0626\u06CC \u0688\u06CC: {{id}}",
|
|
4223
|
+
signingInEllipsis: "\u0633\u0627\u0626\u0646 \u0627\u0650\u0646 \u06AF\u0698\u06BE\u0627\u0646 \u0686\u06BE\u064F\u2026",
|
|
4224
|
+
switchProfile: "\u067E\u0631\u0648\u0641\u0627\u0626\u0644 \u0628\u062F\u0644\u0627\u0648"
|
|
4155
4225
|
};
|
|
4156
4226
|
|
|
4157
4227
|
// src/RedactoPrivacyCenter/locales/mai/translation.json
|
|
@@ -4565,7 +4635,14 @@ var translation_default11 = {
|
|
|
4565
4635
|
submittingAs: "{{email}} \u0930\u0942\u092A\u092E\u0947 \u091C\u092E\u093E \u0915\u093D \u0930\u0939\u0932 \u091B\u0940",
|
|
4566
4636
|
tapToChooseFile: "\u092B\u093E\u0907\u0932 \u091A\u0941\u0928\u092C\u093E\u0915 \u0932\u0947\u0932 \u091F\u0948\u092A \u0915\u0930\u0942",
|
|
4567
4637
|
view: "\u0926\u0947\u0916\u0942",
|
|
4568
|
-
whatDoYouNeed: "\u0905\u0939\u093E\u0901\u0915\u0947\u0901 \u0915\u0940 \u091A\u093E\u0939\u0940?"
|
|
4638
|
+
whatDoYouNeed: "\u0905\u0939\u093E\u0901\u0915\u0947\u0901 \u0915\u0940 \u091A\u093E\u0939\u0940?",
|
|
4639
|
+
sessionExpiredTitle: "\u0905\u0939\u093E\u0901\u0915 \u0938\u0924\u094D\u0930 \u0938\u092E\u093E\u092A\u094D\u0924 \u092D\u093D \u0917\u0947\u0932 \u0905\u091B\u093F",
|
|
4640
|
+
sessionExpiredDescription: "\u091C\u093E\u0930\u0940 \u0930\u093E\u0916\u092C\u093E\u0915 \u0932\u0947\u0932 \u0915\u0943\u092A\u092F\u093E \u092B\u0947\u0930 \u0938\u0901 \u0938\u093E\u0907\u0928 \u0907\u0928 \u0915\u0930\u0942\u0964",
|
|
4641
|
+
chooseYourProfile: "\u0905\u092A\u0928 \u092A\u094D\u0930\u094B\u092B\u093E\u0907\u0932 \u091A\u0941\u0928\u0942",
|
|
4642
|
+
loginIdentifierLinkedToMultipleProfiles: "\u0932\u0949\u0917\u093F\u0928 \u0906\u0907\u0921\u0940 \u090F\u0915\u093E\u0927\u093F\u0915 \u092A\u094D\u0930\u094B\u092B\u093E\u0907\u0932\u0938\u0901 \u091C\u0941\u0921\u093C\u0932 \u0905\u091B\u093F\u0964 \u091C\u0947 \u0905\u0939\u093E\u0901 \u0926\u0947\u0916\u092F \u091A\u093E\u0939\u0948\u0924 \u091B\u0940 \u0913\u0915\u0930\u093E \u091A\u0941\u0928\u0942\u0964",
|
|
4643
|
+
userIdLabel: "\u0909\u092A\u092F\u094B\u0917\u0915\u0930\u094D\u0924\u093E \u0906\u0907\u0921\u0940: {{id}}",
|
|
4644
|
+
signingInEllipsis: "\u0938\u093E\u0907\u0928 \u0907\u0928 \u092D' \u0930\u0939\u0932 \u0905\u091B\u093F\u2026",
|
|
4645
|
+
switchProfile: "\u092A\u094D\u0930\u094B\u092B\u093E\u0907\u0932 \u092C\u0926\u0932\u0942"
|
|
4569
4646
|
};
|
|
4570
4647
|
|
|
4571
4648
|
// src/RedactoPrivacyCenter/locales/ml/translation.json
|
|
@@ -4979,7 +5056,14 @@ var translation_default12 = {
|
|
|
4979
5056
|
submittingAs: "{{email}} \u0D06\u0D2F\u0D3F \u0D38\u0D2E\u0D7C\u0D2A\u0D4D\u0D2A\u0D3F\u0D15\u0D4D\u0D15\u0D41\u0D28\u0D4D\u0D28\u0D41",
|
|
4980
5057
|
tapToChooseFile: "\u0D2B\u0D2F\u0D7D \u0D24\u0D3F\u0D30\u0D1E\u0D4D\u0D1E\u0D46\u0D1F\u0D41\u0D15\u0D4D\u0D15\u0D3E\u0D7B \u0D1F\u0D3E\u0D2A\u0D4D\u0D2A\u0D4D \u0D1A\u0D46\u0D2F\u0D4D\u0D2F\u0D41\u0D15",
|
|
4981
5058
|
view: "\u0D15\u0D3E\u0D23\u0D41\u0D15",
|
|
4982
|
-
whatDoYouNeed: "\u0D28\u0D3F\u0D19\u0D4D\u0D19\u0D7E\u0D15\u0D4D\u0D15\u0D4D \u0D0E\u0D28\u0D4D\u0D24\u0D3E\u0D23\u0D4D \u0D35\u0D47\u0D23\u0D4D\u0D1F\u0D24\u0D4D?"
|
|
5059
|
+
whatDoYouNeed: "\u0D28\u0D3F\u0D19\u0D4D\u0D19\u0D7E\u0D15\u0D4D\u0D15\u0D4D \u0D0E\u0D28\u0D4D\u0D24\u0D3E\u0D23\u0D4D \u0D35\u0D47\u0D23\u0D4D\u0D1F\u0D24\u0D4D?",
|
|
5060
|
+
sessionExpiredTitle: "\u0D28\u0D3F\u0D19\u0D4D\u0D19\u0D33\u0D41\u0D1F\u0D46 \u0D38\u0D46\u0D37\u0D7B \u0D15\u0D3E\u0D32\u0D39\u0D30\u0D23\u0D2A\u0D4D\u0D2A\u0D46\u0D1F\u0D4D\u0D1F\u0D41",
|
|
5061
|
+
sessionExpiredDescription: "\u0D24\u0D41\u0D1F\u0D30\u0D3E\u0D7B \u0D26\u0D2F\u0D35\u0D3E\u0D2F\u0D3F \u0D35\u0D40\u0D23\u0D4D\u0D1F\u0D41\u0D02 \u0D38\u0D48\u0D7B \u0D07\u0D7B \u0D1A\u0D46\u0D2F\u0D4D\u0D2F\u0D41\u0D15.",
|
|
5062
|
+
chooseYourProfile: "\u0D28\u0D3F\u0D19\u0D4D\u0D19\u0D33\u0D41\u0D1F\u0D46 \u0D2A\u0D4D\u0D30\u0D4A\u0D2B\u0D48\u0D7D \u0D24\u0D3F\u0D30\u0D1E\u0D4D\u0D1E\u0D46\u0D1F\u0D41\u0D15\u0D4D\u0D15\u0D41\u0D15",
|
|
5063
|
+
loginIdentifierLinkedToMultipleProfiles: "\u0D32\u0D4B\u0D17\u0D3F\u0D7B \u0D10\u0D21\u0D3F \u0D12\u0D28\u0D4D\u0D28\u0D3F\u0D32\u0D27\u0D3F\u0D15\u0D02 \u0D2A\u0D4D\u0D30\u0D4A\u0D2B\u0D48\u0D32\u0D41\u0D15\u0D33\u0D41\u0D2E\u0D3E\u0D2F\u0D3F \u0D2C\u0D28\u0D4D\u0D27\u0D3F\u0D2A\u0D4D\u0D2A\u0D3F\u0D1A\u0D4D\u0D1A\u0D3F\u0D30\u0D3F\u0D15\u0D4D\u0D15\u0D41\u0D28\u0D4D\u0D28\u0D41. \u0D28\u0D3F\u0D19\u0D4D\u0D19\u0D7E \u0D15\u0D3E\u0D23\u0D3E\u0D7B \u0D06\u0D17\u0D4D\u0D30\u0D39\u0D3F\u0D15\u0D4D\u0D15\u0D41\u0D28\u0D4D\u0D28\u0D24\u0D4D \u0D24\u0D3F\u0D30\u0D1E\u0D4D\u0D1E\u0D46\u0D1F\u0D41\u0D15\u0D4D\u0D15\u0D41\u0D15.",
|
|
5064
|
+
userIdLabel: "\u0D09\u0D2A\u0D2F\u0D4B\u0D15\u0D4D\u0D24\u0D43 \u0D10\u0D21\u0D3F: {{id}}",
|
|
5065
|
+
signingInEllipsis: "\u0D38\u0D48\u0D7B \u0D07\u0D7B \u0D1A\u0D46\u0D2F\u0D4D\u0D2F\u0D41\u0D28\u0D4D\u0D28\u0D41\u2026",
|
|
5066
|
+
switchProfile: "\u0D2A\u0D4D\u0D30\u0D4A\u0D2B\u0D48\u0D7D \u0D2E\u0D3E\u0D31\u0D4D\u0D31\u0D41\u0D15"
|
|
4983
5067
|
};
|
|
4984
5068
|
|
|
4985
5069
|
// src/RedactoPrivacyCenter/locales/mni-Mtei/translation.json
|
|
@@ -5393,7 +5477,14 @@ var translation_default13 = {
|
|
|
5393
5477
|
submittingAs: "{{email}} \uABD1\uABE3\uABCF\uABC5 \uABCA\uABE5\uABD2\uABE0\uABC2\uABE4",
|
|
5394
5478
|
tapToChooseFile: "\uABD0\uABE5\uABCF\uABDC \uABC8\uABDF\uABC5\uABD5 \uABC7\uABE6\uABDE \uABC7\uABE7",
|
|
5395
5479
|
view: "\uABCC\uABE6\uABE1\uABCE",
|
|
5396
|
-
whatDoYouNeed: "\uABD1\uABD7\uABE3\uABDD\uABD7 \uABC0\uABD4\uABE4 \uABC7\uABC9\uABE5\uABCF\uABD0\uABD7\uABD5\uABD2\uABE6?"
|
|
5480
|
+
whatDoYouNeed: "\uABD1\uABD7\uABE3\uABDD\uABD7 \uABC0\uABD4\uABE4 \uABC7\uABC9\uABE5\uABCF\uABD0\uABD7\uABD5\uABD2\uABE6?",
|
|
5481
|
+
sessionExpiredTitle: "\uABD1\uABD7\uABE3\uABDD\uABD2\uABE4 \uABC1\uABE6\uABC1\uABDF \uABC2\uABE3\uABCF\uABD4\uABE6",
|
|
5482
|
+
sessionExpiredDescription: "\uABC3\uABC8\uABE5 \uABC6\uABE0\uABCA\uABD4\uABDB\uABC5\uABD5 \uABC6\uABE5\uABC5\uABD5\uABE4\uABD7\uABE8\uABC5 \uABD1\uABC3\uABE8\uABDB \uABCD\uABDF\uABC5 \uABC1\uABE5\uABCF\uABDF \uABCF\uABDF \uABC7\uABE7\uABD5\uABE4\uABCC\uABE8\uABEB",
|
|
5483
|
+
chooseYourProfile: "\u09A8\u09B9\u09BE\u0995\u09CD\u0995\u09C0 \u09AA\u09CD\u09B0\u09CB\u09AB\u09BE\u0987\u09B2 \u0996\u09A8\u09AC\u09BF\u09AF\u09BC\u09C1",
|
|
5484
|
+
loginIdentifierLinkedToMultipleProfiles: "\u09B2\u0997\u0987\u09A8 \u0986\u0987\u09A1\u09BF \u0985\u09B8\u09BF \u09AA\u09CD\u09B0\u09CB\u09AB\u09BE\u0987\u09B2 \u0985\u09AE\u09A6\u0997\u09C0 \u09B9\u09C7\u09A8\u09CD\u09A8\u09BE \u09B2\u09CB\u0987\u09A8\u09A8\u09AC\u09BE \u09B2\u09C8\u0964 \u09A8\u09B9\u09BE\u0995\u09CD\u09A8\u09BE \u09AF\u09BC\u09C7\u0982\u09A8\u09BF\u0982\u09AC\u09BE \u0985\u09A6\u09C1 \u0996\u09A8\u09AC\u09BF\u09AF\u09BC\u09C1\u0964",
|
|
5485
|
+
userIdLabel: "\uABC3\uABE4\uABD1\uABE3\uABCF\uABD5 \uABD1\uABE5\uABCF\uABD7\uABE4: {{id}}",
|
|
5486
|
+
signingInEllipsis: "\u09B8\u09BE\u0987\u09A8 \u0987\u09A8 \u09A4\u09CC\u09B0\u09BF\u2026",
|
|
5487
|
+
switchProfile: "\u09AA\u09CD\u09B0\u09CB\u09AB\u09BE\u0987\u09B2 \u09B9\u09CB\u0982\u09A6\u09CB\u0995-\u0989"
|
|
5397
5488
|
};
|
|
5398
5489
|
|
|
5399
5490
|
// src/RedactoPrivacyCenter/locales/mr/translation.json
|
|
@@ -5807,7 +5898,14 @@ var translation_default14 = {
|
|
|
5807
5898
|
submittingAs: "{{email}} \u092E\u094D\u0939\u0923\u0942\u0928 \u0938\u092C\u092E\u093F\u091F \u0915\u0930\u0924 \u0906\u0939\u0947",
|
|
5808
5899
|
tapToChooseFile: "\u092B\u093E\u0907\u0932 \u0928\u093F\u0935\u0921\u0923\u094D\u092F\u093E\u0938\u093E\u0920\u0940 \u091F\u0945\u092A \u0915\u0930\u093E",
|
|
5809
5900
|
view: "\u092A\u0939\u093E",
|
|
5810
|
-
whatDoYouNeed: "\u0924\u0941\u092E\u094D\u0939\u093E\u0932\u093E \u0915\u093E\u092F \u0939\u0935\u0947 \u0906\u0939\u0947?"
|
|
5901
|
+
whatDoYouNeed: "\u0924\u0941\u092E\u094D\u0939\u093E\u0932\u093E \u0915\u093E\u092F \u0939\u0935\u0947 \u0906\u0939\u0947?",
|
|
5902
|
+
sessionExpiredTitle: "\u0924\u0941\u092E\u091A\u0947 \u0938\u0924\u094D\u0930 \u0938\u0902\u092A\u0932\u0947 \u0906\u0939\u0947",
|
|
5903
|
+
sessionExpiredDescription: "\u0938\u0941\u0930\u0942 \u0920\u0947\u0935\u0923\u094D\u092F\u093E\u0938\u093E\u0920\u0940 \u0915\u0943\u092A\u092F\u093E \u092A\u0941\u0928\u094D\u0939\u093E \u0938\u093E\u0907\u0928 \u0907\u0928 \u0915\u0930\u093E.",
|
|
5904
|
+
chooseYourProfile: "\u0924\u0941\u092E\u091A\u0940 \u092A\u094D\u0930\u094B\u092B\u093E\u0907\u0932 \u0928\u093F\u0935\u0921\u093E",
|
|
5905
|
+
loginIdentifierLinkedToMultipleProfiles: "\u0932\u0949\u0917\u093F\u0928 \u0906\u092F\u0921\u0940 \u090F\u0915\u093E\u092A\u0947\u0915\u094D\u0937\u093E \u091C\u093E\u0938\u094D\u0924 \u092A\u094D\u0930\u094B\u092B\u093E\u0907\u0932\u0936\u0940 \u091C\u094B\u0921\u0932\u0947\u0932\u093E \u0906\u0939\u0947. \u0924\u0941\u092E\u094D\u0939\u093E\u0932\u093E \u091C\u0940 \u092A\u093E\u0939\u093E\u092F\u091A\u0940 \u0906\u0939\u0947 \u0924\u0940 \u0928\u093F\u0935\u0921\u093E.",
|
|
5906
|
+
userIdLabel: "\u0935\u093E\u092A\u0930\u0915\u0930\u094D\u0924\u093E \u0906\u092F\u0921\u0940: {{id}}",
|
|
5907
|
+
signingInEllipsis: "\u0938\u093E\u0907\u0928 \u0907\u0928 \u0915\u0930\u0924 \u0906\u0939\u0947\u2026",
|
|
5908
|
+
switchProfile: "\u092A\u094D\u0930\u094B\u092B\u093E\u0907\u0932 \u092C\u0926\u0932\u093E"
|
|
5811
5909
|
};
|
|
5812
5910
|
|
|
5813
5911
|
// src/RedactoPrivacyCenter/locales/ne/translation.json
|
|
@@ -6221,7 +6319,14 @@ var translation_default15 = {
|
|
|
6221
6319
|
submittingAs: "{{email}} \u0915\u094B \u0930\u0942\u092A\u092E\u093E \u092A\u0947\u0936 \u0917\u0930\u094D\u0926\u0948",
|
|
6222
6320
|
tapToChooseFile: "\u092B\u093E\u0907\u0932 \u091B\u093E\u0928\u094D\u0928 \u091F\u094D\u092F\u093E\u092A \u0917\u0930\u094D\u0928\u0941\u0939\u094B\u0938\u094D",
|
|
6223
6321
|
view: "\u0939\u0947\u0930\u094D\u0928\u0941\u0939\u094B\u0938\u094D",
|
|
6224
|
-
whatDoYouNeed: "\u0924\u092A\u093E\u0908\u0902\u0932\u093E\u0908 \u0915\u0947 \u091A\u093E\u0939\u093F\u0928\u094D\u091B?"
|
|
6322
|
+
whatDoYouNeed: "\u0924\u092A\u093E\u0908\u0902\u0932\u093E\u0908 \u0915\u0947 \u091A\u093E\u0939\u093F\u0928\u094D\u091B?",
|
|
6323
|
+
sessionExpiredTitle: "\u0924\u092A\u093E\u0908\u0902\u0915\u094B \u0938\u0924\u094D\u0930 \u0938\u092E\u093E\u092A\u094D\u0924 \u092D\u090F\u0915\u094B \u091B",
|
|
6324
|
+
sessionExpiredDescription: "\u091C\u093E\u0930\u0940 \u0930\u093E\u0916\u094D\u0928 \u0915\u0943\u092A\u092F\u093E \u092B\u0947\u0930\u093F \u0938\u093E\u0907\u0928 \u0907\u0928 \u0917\u0930\u094D\u0928\u0941\u0939\u094B\u0938\u094D\u0964",
|
|
6325
|
+
chooseYourProfile: "\u0906\u092B\u094D\u0928\u094B \u092A\u094D\u0930\u094B\u092B\u093E\u0907\u0932 \u091B\u093E\u0928\u094D\u0928\u0941\u0939\u094B\u0938\u094D",
|
|
6326
|
+
loginIdentifierLinkedToMultipleProfiles: "\u0932\u0917\u0907\u0928 \u0906\u0908\u0921\u0940 \u090F\u0915\u092D\u0928\u094D\u0926\u093E \u092C\u0922\u0940 \u092A\u094D\u0930\u094B\u092B\u093E\u0907\u0932\u0938\u0901\u0917 \u091C\u094B\u0921\u093F\u090F\u0915\u094B \u091B\u0964 \u0924\u092A\u093E\u0908\u0902\u0932\u0947 \u0939\u0947\u0930\u094D\u0928 \u091A\u093E\u0939\u0928\u0941\u092D\u090F\u0915\u094B \u091B\u093E\u0928\u094D\u0928\u0941\u0939\u094B\u0938\u094D\u0964",
|
|
6327
|
+
userIdLabel: "\u092A\u094D\u0930\u092F\u094B\u0917\u0915\u0930\u094D\u0924\u093E \u0906\u0908\u0921\u0940: {{id}}",
|
|
6328
|
+
signingInEllipsis: "\u0938\u093E\u0907\u0928 \u0907\u0928 \u0939\u0941\u0901\u0926\u0948\u091B\u2026",
|
|
6329
|
+
switchProfile: "\u092A\u094D\u0930\u094B\u092B\u093E\u0907\u0932 \u092C\u0926\u0932\u094D\u0928\u0941\u0939\u094B\u0938\u094D"
|
|
6225
6330
|
};
|
|
6226
6331
|
|
|
6227
6332
|
// src/RedactoPrivacyCenter/locales/or/translation.json
|
|
@@ -6635,7 +6740,14 @@ var translation_default16 = {
|
|
|
6635
6740
|
submittingAs: "{{email}} \u0B2D\u0B3E\u0B2C\u0B47 \u0B26\u0B3E\u0B16\u0B32 \u0B15\u0B30\u0B41\u0B1B\u0B28\u0B4D\u0B24\u0B3F",
|
|
6636
6741
|
tapToChooseFile: "\u0B2B\u0B3E\u0B07\u0B32 \u0B2C\u0B3E\u0B1B\u0B3F\u0B2C\u0B3E\u0B15\u0B41 \u0B1F\u0B4D\u0B5F\u0B3E\u0B2A \u0B15\u0B30\u0B28\u0B4D\u0B24\u0B41",
|
|
6637
6742
|
view: "\u0B26\u0B47\u0B16\u0B28\u0B4D\u0B24\u0B41",
|
|
6638
|
-
whatDoYouNeed: "\u0B06\u0B2A\u0B23 \u0B15\u0B23 \u0B1A\u0B3E\u0B39\u0B3E\u0B28\u0B4D\u0B24\u0B3F?"
|
|
6743
|
+
whatDoYouNeed: "\u0B06\u0B2A\u0B23 \u0B15\u0B23 \u0B1A\u0B3E\u0B39\u0B3E\u0B28\u0B4D\u0B24\u0B3F?",
|
|
6744
|
+
sessionExpiredTitle: "\u0B06\u0B2A\u0B23\u0B19\u0B4D\u0B15 \u0B38\u0B47\u0B38\u0B28\u0B4D \u0B38\u0B2E\u0B3E\u0B2A\u0B4D\u0B24 \u0B39\u0B4B\u0B07\u0B2F\u0B3E\u0B07\u0B1B\u0B3F",
|
|
6745
|
+
sessionExpiredDescription: "\u0B1C\u0B3E\u0B30\u0B3F \u0B30\u0B16\u0B3F\u0B2C\u0B3E\u0B15\u0B41 \u0B26\u0B5F\u0B3E\u0B15\u0B30\u0B3F \u0B2A\u0B41\u0B28\u0B30\u0B4D\u0B2C\u0B3E\u0B30 \u0B38\u0B3E\u0B07\u0B28\u0B4D \u0B07\u0B28\u0B4D \u0B15\u0B30\u0B28\u0B4D\u0B24\u0B41\u0964",
|
|
6746
|
+
chooseYourProfile: "\u0B06\u0B2A\u0B23\u0B19\u0B4D\u0B15 \u0B2A\u0B4D\u0B30\u0B4B\u0B2B\u0B3E\u0B07\u0B32\u0B4D \u0B2C\u0B3E\u0B1B\u0B28\u0B4D\u0B24\u0B41",
|
|
6747
|
+
loginIdentifierLinkedToMultipleProfiles: "\u0B32\u0B17\u0B07\u0B28\u0B4D \u0B06\u0B07\u0B21\u0B3F \u0B0F\u0B15\u0B3E\u0B27\u0B3F\u0B15 \u0B2A\u0B4D\u0B30\u0B4B\u0B2B\u0B3E\u0B07\u0B32\u0B4D \u0B38\u0B39\u0B3F\u0B24 \u0B2F\u0B4B\u0B21\u0B3C\u0B3E\u0B2F\u0B3E\u0B07\u0B1B\u0B3F\u0964 \u0B06\u0B2A\u0B23 \u0B26\u0B47\u0B16\u0B3F\u0B2C\u0B3E\u0B15\u0B41 \u0B1A\u0B3E\u0B39\u0B41\u0B01\u0B25\u0B3F\u0B2C\u0B3E\u0B1F\u0B3F \u0B2C\u0B3E\u0B1B\u0B28\u0B4D\u0B24\u0B41\u0964",
|
|
6748
|
+
userIdLabel: "\u0B2C\u0B4D\u0B5F\u0B2C\u0B39\u0B3E\u0B30\u0B15\u0B3E\u0B30\u0B40 \u0B06\u0B07\u0B21\u0B3F: {{id}}",
|
|
6749
|
+
signingInEllipsis: "\u0B38\u0B3E\u0B07\u0B28\u0B4D \u0B07\u0B28\u0B4D \u0B39\u0B47\u0B09\u0B1B\u0B3F\u2026",
|
|
6750
|
+
switchProfile: "\u0B2A\u0B4D\u0B30\u0B4B\u0B2B\u0B3E\u0B07\u0B32\u0B4D \u0B2C\u0B26\u0B33\u0B3E\u0B28\u0B4D\u0B24\u0B41"
|
|
6639
6751
|
};
|
|
6640
6752
|
|
|
6641
6753
|
// src/RedactoPrivacyCenter/locales/pa/translation.json
|
|
@@ -7049,7 +7161,14 @@ var translation_default17 = {
|
|
|
7049
7161
|
submittingAs: "{{email}} \u0A35\u0A1C\u0A4B\u0A02 \u0A38\u0A2C\u0A2E\u0A3F\u0A1F \u0A15\u0A30 \u0A30\u0A39\u0A47 \u0A39\u0A4B",
|
|
7050
7162
|
tapToChooseFile: "\u0A2B\u0A3E\u0A08\u0A32 \u0A1A\u0A41\u0A23\u0A28 \u0A32\u0A08 \u0A1F\u0A48\u0A2A \u0A15\u0A30\u0A4B",
|
|
7051
7163
|
view: "\u0A26\u0A47\u0A16\u0A4B",
|
|
7052
|
-
whatDoYouNeed: "\u0A24\u0A41\u0A39\u0A3E\u0A28\u0A42\u0A70 \u0A15\u0A40 \u0A1A\u0A3E\u0A39\u0A40\u0A26\u0A3E \u0A39\u0A48?"
|
|
7164
|
+
whatDoYouNeed: "\u0A24\u0A41\u0A39\u0A3E\u0A28\u0A42\u0A70 \u0A15\u0A40 \u0A1A\u0A3E\u0A39\u0A40\u0A26\u0A3E \u0A39\u0A48?",
|
|
7165
|
+
sessionExpiredTitle: "\u0A24\u0A41\u0A39\u0A3E\u0A21\u0A3E \u0A38\u0A48\u0A38\u0A3C\u0A28 \u0A38\u0A2E\u0A3E\u0A2A\u0A24 \u0A39\u0A4B \u0A17\u0A3F\u0A06 \u0A39\u0A48",
|
|
7166
|
+
sessionExpiredDescription: "\u0A1C\u0A3E\u0A30\u0A40 \u0A30\u0A71\u0A16\u0A23 \u0A32\u0A08 \u0A15\u0A3F\u0A30\u0A2A\u0A3E \u0A15\u0A30\u0A15\u0A47 \u0A26\u0A41\u0A2C\u0A3E\u0A30\u0A3E \u0A38\u0A3E\u0A08\u0A28 \u0A07\u0A28 \u0A15\u0A30\u0A4B\u0964",
|
|
7167
|
+
chooseYourProfile: "\u0A06\u0A2A\u0A23\u0A40 \u0A2A\u0A4D\u0A30\u0A4B\u0A2B\u0A3E\u0A08\u0A32 \u0A1A\u0A41\u0A23\u0A4B",
|
|
7168
|
+
loginIdentifierLinkedToMultipleProfiles: "\u0A32\u0A4C\u0A17\u0A07\u0A28 \u0A06\u0A08\u0A21\u0A40 \u0A07\u0A71\u0A15 \u0A24\u0A4B\u0A02 \u0A35\u0A71\u0A27 \u0A2A\u0A4D\u0A30\u0A4B\u0A2B\u0A3E\u0A08\u0A32\u0A3E\u0A02 \u0A28\u0A3E\u0A32 \u0A1C\u0A41\u0A5C\u0A3F\u0A06 \u0A39\u0A4B\u0A07\u0A06 \u0A39\u0A48\u0964 \u0A1C\u0A4B \u0A24\u0A41\u0A38\u0A40\u0A02 \u0A35\u0A47\u0A16\u0A23\u0A3E \u0A1A\u0A3E\u0A39\u0A41\u0A70\u0A26\u0A47 \u0A39\u0A4B \u0A09\u0A39 \u0A1A\u0A41\u0A23\u0A4B\u0964",
|
|
7169
|
+
userIdLabel: "\u0A09\u0A2A\u0A2F\u0A4B\u0A17\u0A15\u0A30\u0A24\u0A3E \u0A06\u0A08\u0A21\u0A40: {{id}}",
|
|
7170
|
+
signingInEllipsis: "\u0A38\u0A3E\u0A08\u0A28 \u0A07\u0A28 \u0A39\u0A4B \u0A30\u0A3F\u0A39\u0A3E \u0A39\u0A48\u2026",
|
|
7171
|
+
switchProfile: "\u0A2A\u0A4D\u0A30\u0A4B\u0A2B\u0A3E\u0A08\u0A32 \u0A2C\u0A26\u0A32\u0A4B"
|
|
7053
7172
|
};
|
|
7054
7173
|
|
|
7055
7174
|
// src/RedactoPrivacyCenter/locales/sa/translation.json
|
|
@@ -7463,7 +7582,14 @@ var translation_default18 = {
|
|
|
7463
7582
|
submittingAs: "{{email}} \u0907\u0924\u093F \u0938\u092E\u0930\u094D\u092A\u092F\u0928\u094D",
|
|
7464
7583
|
tapToChooseFile: "\u0938\u091E\u094D\u091A\u093F\u0915\u093E\u0902 \u091A\u0947\u0924\u0941\u0902 \u0938\u094D\u092A\u0943\u0936\u0924\u0941",
|
|
7465
7584
|
view: "\u092A\u0936\u094D\u092F",
|
|
7466
|
-
whatDoYouNeed: "\u092D\u0935\u0924\u0903 \u0915\u093F\u092E\u094D \u0906\u0935\u0936\u094D\u092F\u0915\u092E\u094D?"
|
|
7585
|
+
whatDoYouNeed: "\u092D\u0935\u0924\u0903 \u0915\u093F\u092E\u094D \u0906\u0935\u0936\u094D\u092F\u0915\u092E\u094D?",
|
|
7586
|
+
sessionExpiredTitle: "\u092D\u0935\u0924\u0903 \u0938\u0924\u094D\u0930\u0902 \u0938\u092E\u093E\u092A\u094D\u0924\u092E\u094D",
|
|
7587
|
+
sessionExpiredDescription: "\u0905\u0928\u0941\u0935\u0930\u094D\u0924\u0928\u093E\u0930\u094D\u0925\u0902 \u0915\u0943\u092A\u092F\u093E \u092A\u0941\u0928\u0903 \u092A\u094D\u0930\u0935\u0947\u0936\u0902 \u0915\u0930\u094B\u0924\u0941\u0964",
|
|
7588
|
+
chooseYourProfile: "\u0938\u094D\u0935\u092A\u094D\u0930\u094B\u092B\u093C\u093E\u0907\u0932\u0902 \u091A\u093F\u0928\u094B\u0924\u0941",
|
|
7589
|
+
loginIdentifierLinkedToMultipleProfiles: "\u092A\u094D\u0930\u0935\u0947\u0936-\u0906\u092F\u0921\u0940 \u090F\u0915\u093E\u0927\u093F\u0915\u0948\u0903 \u092A\u094D\u0930\u094B\u092B\u093C\u093E\u0907\u0932\u0948\u0903 \u0938\u0939 \u0938\u092E\u094D\u092C\u0926\u094D\u0927\u0903 \u0905\u0938\u094D\u0924\u093F\u0964 \u092F\u0924\u094D \u0926\u094D\u0930\u0937\u094D\u091F\u0941\u092E\u094D \u0907\u091A\u094D\u091B\u0924\u093F \u0924\u0924\u094D \u091A\u093F\u0928\u094B\u0924\u0941\u0964",
|
|
7590
|
+
userIdLabel: "\u0909\u092A\u092F\u094B\u0915\u094D\u0924\u0943-\u0906\u092F\u0921\u0940: {{id}}",
|
|
7591
|
+
signingInEllipsis: "\u092A\u094D\u0930\u0935\u0947\u0936\u0903 \u0915\u094D\u0930\u093F\u092F\u0924\u0947\u2026",
|
|
7592
|
+
switchProfile: "\u092A\u094D\u0930\u094B\u092B\u093C\u093E\u0907\u0932\u0902 \u092A\u0930\u093F\u0935\u0930\u094D\u0924\u092F\u0924\u0941"
|
|
7467
7593
|
};
|
|
7468
7594
|
|
|
7469
7595
|
// src/RedactoPrivacyCenter/locales/sat/translation.json
|
|
@@ -7877,7 +8003,14 @@ var translation_default19 = {
|
|
|
7877
8003
|
submittingAs: "{{email}} \u1C5E\u1C6E\u1C60\u1C5F\u1C5B\u1C6E \u1C61\u1C5A\u1C62\u1C5F \u1C6E\u1C6B\u1C5F",
|
|
7878
8004
|
tapToChooseFile: "\u1C6F\u1C77\u1C5F\u1C6D\u1C64\u1C5E \u1C75\u1C5F\u1C6A\u1C77\u1C5F\u1C63 \u1C5E\u1C5F\u1C79\u1C5C\u1C64\u1C6B \u1C74\u1C6E\u1C6F \u1C62\u1C6E",
|
|
7879
8005
|
view: "\u1C67\u1C6E\u1C5E \u1C62\u1C6E",
|
|
7880
|
-
whatDoYouNeed: "\u1C5F\u1C62 \u1C6A\u1C6E\u1C6B \u1C5E\u1C5F\u1C79\u1C60\u1C5B\u1C64?"
|
|
8006
|
+
whatDoYouNeed: "\u1C5F\u1C62 \u1C6A\u1C6E\u1C6B \u1C5E\u1C5F\u1C79\u1C60\u1C5B\u1C64?",
|
|
8007
|
+
sessionExpiredTitle: "\u1C5F\u1C62\u1C5F\u1C5C \u1C65\u1C6E\u1C65\u1C5A\u1C71 \u1C62\u1C69\u1C6A\u1C5F\u1C79\u1C6B\u1C6E\u1C71\u1C5F",
|
|
8008
|
+
sessionExpiredDescription: "\u1C5E\u1C5F\u1C66\u1C5F \u1C6A\u1C5F\u1C5E\u1C5F\u1C63 \u1C5E\u1C5F\u1C79\u1C5C\u1C64\u1C6B \u1C6B\u1C5F\u1C6D\u1C5F \u1C60\u1C5F\u1C5B\u1C6E \u1C6B\u1C73\u1C66\u1C72\u1C5F \u1C65\u1C5F\u1C6D\u1C71 \u1C64\u1C71 \u1C62\u1C6E\u1C7E",
|
|
8009
|
+
chooseYourProfile: "\u1C5F\u1C62\u1C5F\u1C5C \u1C6F\u1C68\u1C73\u1C6F\u1C77\u1C5F\u1C6D\u1C64\u1C5E \u1C75\u1C5F\u1C6A\u1C77\u1C5F\u1C63 \u1C62\u1C6E",
|
|
8010
|
+
loginIdentifierLinkedToMultipleProfiles: "\u1C5E\u1C5A\u1C5C\u1C64\u1C71 \u1C5F\u1C6D\u1C70\u1C64 \u1C6B\u1C5A \u1C62\u1C64\u1C6B \u1C60\u1C77\u1C5A\u1C71 \u1C70\u1C77\u1C6E\u1C68 \u1C6F\u1C68\u1C73\u1C6F\u1C77\u1C5F\u1C6D\u1C64\u1C5E \u1C65\u1C5F\u1C76 \u1C61\u1C69\u1C70\u1C5F\u1C79\u1C63 \u1C5F\u1C60\u1C5F\u1C71\u1C5F\u1C7E \u1C5F\u1C62 \u1C67\u1C6E\u1C5E \u1C65\u1C5F\u1C71\u1C5F\u1C62 \u1C5A\u1C71\u1C5F \u1C75\u1C5F\u1C6A\u1C77\u1C5F\u1C63 \u1C62\u1C6E\u1C7E",
|
|
8011
|
+
userIdLabel: "\u1C75\u1C6E\u1C75\u1C77\u1C5F\u1C68\u1C64\u1C6D\u1C5F\u1C79 \u1C5F\u1C6D\u1C70\u1C64: {{id}}",
|
|
8012
|
+
signingInEllipsis: "\u1C65\u1C5F\u1C6D\u1C64\u1C71 \u1C64\u1C71 \u1C6E\u1C6B\u1C5F\u1C6D\u2026",
|
|
8013
|
+
switchProfile: "\u1C6F\u1C68\u1C73\u1C6F\u1C77\u1C5F\u1C6D\u1C64\u1C5E \u1C75\u1C5A\u1C6B\u1C5A\u1C5E \u1C62\u1C6E"
|
|
7881
8014
|
};
|
|
7882
8015
|
|
|
7883
8016
|
// src/RedactoPrivacyCenter/locales/sd/translation.json
|
|
@@ -8291,7 +8424,14 @@ var translation_default20 = {
|
|
|
8291
8424
|
submittingAs: "{{email}} \u0637\u0648\u0631 \u062C\u0645\u0639 \u06AA\u0631\u064A \u0631\u0647\u064A\u0627 \u0622\u0647\u064A\u0648",
|
|
8292
8425
|
tapToChooseFile: "\u0641\u0627\u0626\u0644 \u0686\u0648\u0646\u068A\u06BB \u0644\u0627\u0621\u0650 \u067D\u064A\u067E \u06AA\u0631\u064A\u0648",
|
|
8293
8426
|
view: "\u068F\u0633\u0648",
|
|
8294
|
-
whatDoYouNeed: "\u062A\u0648\u0647\u0627\u0646 \u06A9\u064A \u0687\u0627 \u06AF\u0647\u0631\u062C\u064A\u061F"
|
|
8427
|
+
whatDoYouNeed: "\u062A\u0648\u0647\u0627\u0646 \u06A9\u064A \u0687\u0627 \u06AF\u0647\u0631\u062C\u064A\u061F",
|
|
8428
|
+
sessionExpiredTitle: "\u062A\u0648\u0647\u0627\u0646 \u062C\u0648 \u0633\u064A\u0634\u0646 \u062E\u062A\u0645 \u067F\u064A \u0648\u064A\u0648 \u0622\u0647\u064A",
|
|
8429
|
+
sessionExpiredDescription: "\u062C\u0627\u0631\u064A \u0631\u06A9\u06BB \u0644\u0627\u0621\u0650 \u0645\u0647\u0631\u0628\u0627\u0646\u064A \u06AA\u0631\u064A \u067B\u064A\u0647\u0631 \u0633\u0627\u0626\u0646 \u0627\u0646 \u06AA\u0631\u064A\u0648.",
|
|
8430
|
+
chooseYourProfile: "\u067E\u0646\u0647\u0646\u062C\u0648 \u067E\u0631\u0648\u0641\u0627\u0626\u0644 \u0686\u0648\u0646\u068A\u064A\u0648",
|
|
8431
|
+
loginIdentifierLinkedToMultipleProfiles: "\u0644\u0627\u06AF \u0627\u0646 \u0622\u0626\u064A\u068A\u064A \u0647\u06AA \u06A9\u0627\u0646 \u0648\u068C\u064A\u06AA \u067E\u0631\u0648\u0641\u0627\u0626\u0644\u0646 \u0633\u0627\u0646 \u06B3\u0646\u068D\u064A\u0644 \u0622\u0647\u064A. \u062C\u064A\u06AA\u0648 \u062A\u0648\u0647\u0627\u0646 \u068F\u0633\u06BB \u0686\u0627\u0647\u064A\u0648 \u067F\u0627 \u0627\u0647\u0648 \u0686\u0648\u0646\u068A\u064A\u0648.",
|
|
8432
|
+
userIdLabel: "\u064A\u0648\u0632\u0631 \u0622\u0626\u064A\u068A\u064A: {{id}}",
|
|
8433
|
+
signingInEllipsis: "\u0633\u0627\u0626\u0646 \u0627\u0646 \u067F\u064A \u0631\u0647\u064A\u0648 \u0622\u0647\u064A\u2026",
|
|
8434
|
+
switchProfile: "\u067E\u0631\u0648\u0641\u0627\u0626\u0644 \u062A\u0628\u062F\u064A\u0644 \u06AA\u0631\u064A\u0648"
|
|
8295
8435
|
};
|
|
8296
8436
|
|
|
8297
8437
|
// src/RedactoPrivacyCenter/locales/ta/translation.json
|
|
@@ -8705,7 +8845,14 @@ var translation_default21 = {
|
|
|
8705
8845
|
submittingAs: "{{email}} \u0B86\u0B95 \u0B9A\u0BAE\u0BB0\u0BCD\u0BAA\u0BCD\u0BAA\u0BBF\u0B95\u0BCD\u0B95\u0BBF\u0BB1\u0BC0\u0BB0\u0BCD\u0B95\u0BB3\u0BCD",
|
|
8706
8846
|
tapToChooseFile: "\u0B95\u0BCB\u0BAA\u0BCD\u0BAA\u0BC8\u0BA4\u0BCD \u0BA4\u0BC7\u0BB0\u0BCD\u0BA8\u0BCD\u0BA4\u0BC6\u0B9F\u0BC1\u0B95\u0BCD\u0B95 \u0BA4\u0B9F\u0BCD\u0B9F\u0BB5\u0BC1\u0BAE\u0BCD",
|
|
8707
8847
|
view: "\u0BAA\u0BBE\u0BB0\u0BCD",
|
|
8708
|
-
whatDoYouNeed: "\u0B89\u0B99\u0BCD\u0B95\u0BB3\u0BC1\u0B95\u0BCD\u0B95\u0BC1 \u0B8E\u0BA9\u0BCD\u0BA9 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD?"
|
|
8848
|
+
whatDoYouNeed: "\u0B89\u0B99\u0BCD\u0B95\u0BB3\u0BC1\u0B95\u0BCD\u0B95\u0BC1 \u0B8E\u0BA9\u0BCD\u0BA9 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD?",
|
|
8849
|
+
sessionExpiredTitle: "\u0B89\u0B99\u0BCD\u0B95\u0BB3\u0BCD \u0B85\u0BAE\u0BB0\u0BCD\u0BB5\u0BC1 \u0B95\u0BBE\u0BB2\u0BBE\u0BB5\u0BA4\u0BBF\u0BAF\u0BBE\u0B95\u0BBF\u0BB5\u0BBF\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1",
|
|
8850
|
+
sessionExpiredDescription: "\u0BA4\u0BCA\u0B9F\u0BB0\u0BCD\u0BB5\u0BA4\u0BB1\u0BCD\u0B95\u0BC1 \u0BA4\u0BAF\u0BB5\u0BC1\u0B9A\u0BC6\u0BAF\u0BCD\u0BA4\u0BC1 \u0BAE\u0BC0\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD \u0B89\u0BB3\u0BCD\u0BA8\u0BC1\u0BB4\u0BC8\u0BAF\u0BB5\u0BC1\u0BAE\u0BCD.",
|
|
8851
|
+
chooseYourProfile: "\u0B89\u0B99\u0BCD\u0B95\u0BB3\u0BCD \u0B9A\u0BC1\u0BAF\u0BB5\u0BBF\u0BB5\u0BB0\u0BA4\u0BCD\u0BA4\u0BC8\u0BA4\u0BCD \u0BA4\u0BC7\u0BB0\u0BCD\u0BA8\u0BCD\u0BA4\u0BC6\u0B9F\u0BC1\u0B95\u0BCD\u0B95\u0BB5\u0BC1\u0BAE\u0BCD",
|
|
8852
|
+
loginIdentifierLinkedToMultipleProfiles: "\u0B89\u0BB3\u0BCD\u0BA8\u0BC1\u0BB4\u0BC8\u0BB5\u0BC1 \u0B90\u0B9F\u0BBF \u0B92\u0BA9\u0BCD\u0BB1\u0BC1\u0B95\u0BCD\u0B95\u0BC1 \u0BAE\u0BC7\u0BB1\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F \u0B9A\u0BC1\u0BAF\u0BB5\u0BBF\u0BB5\u0BB0\u0B99\u0BCD\u0B95\u0BB3\u0BC1\u0B9F\u0BA9\u0BCD \u0B87\u0BA3\u0BC8\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BC1\u0BB3\u0BCD\u0BB3\u0BA4\u0BC1. \u0BA8\u0BC0\u0B99\u0BCD\u0B95\u0BB3\u0BCD \u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95 \u0BB5\u0BBF\u0BB0\u0BC1\u0BAE\u0BCD\u0BAA\u0BC1\u0BB5\u0BA4\u0BC8\u0BA4\u0BCD \u0BA4\u0BC7\u0BB0\u0BCD\u0BA8\u0BCD\u0BA4\u0BC6\u0B9F\u0BC1\u0B95\u0BCD\u0B95\u0BB5\u0BC1\u0BAE\u0BCD.",
|
|
8853
|
+
userIdLabel: "\u0BAA\u0BAF\u0BA9\u0BB0\u0BCD \u0B90\u0B9F\u0BBF: {{id}}",
|
|
8854
|
+
signingInEllipsis: "\u0B89\u0BB3\u0BCD\u0BA8\u0BC1\u0BB4\u0BC8\u0B95\u0BBF\u0BB1\u0BA4\u0BC1\u2026",
|
|
8855
|
+
switchProfile: "\u0B9A\u0BC1\u0BAF\u0BB5\u0BBF\u0BB5\u0BB0\u0BA4\u0BCD\u0BA4\u0BC8 \u0BAE\u0BBE\u0BB1\u0BCD\u0BB1\u0BC1"
|
|
8709
8856
|
};
|
|
8710
8857
|
|
|
8711
8858
|
// src/RedactoPrivacyCenter/locales/te/translation.json
|
|
@@ -9119,7 +9266,14 @@ var translation_default22 = {
|
|
|
9119
9266
|
submittingAs: "{{email}} \u0C17\u0C3E \u0C38\u0C2E\u0C30\u0C4D\u0C2A\u0C3F\u0C38\u0C4D\u0C24\u0C41\u0C28\u0C4D\u0C28\u0C3E\u0C30\u0C41",
|
|
9120
9267
|
tapToChooseFile: "\u0C2B\u0C48\u0C32\u0C4D\u200C\u0C28\u0C41 \u0C0E\u0C02\u0C1A\u0C41\u0C15\u0C4B\u0C35\u0C21\u0C3E\u0C28\u0C3F\u0C15\u0C3F \u0C28\u0C4A\u0C15\u0C4D\u0C15\u0C02\u0C21\u0C3F",
|
|
9121
9268
|
view: "\u0C35\u0C40\u0C15\u0C4D\u0C37\u0C3F\u0C02\u0C1A\u0C02\u0C21\u0C3F",
|
|
9122
|
-
whatDoYouNeed: "\u0C2E\u0C40\u0C15\u0C41 \u0C0F\u0C2E\u0C3F \u0C15\u0C3E\u0C35\u0C3E\u0C32\u0C3F?"
|
|
9269
|
+
whatDoYouNeed: "\u0C2E\u0C40\u0C15\u0C41 \u0C0F\u0C2E\u0C3F \u0C15\u0C3E\u0C35\u0C3E\u0C32\u0C3F?",
|
|
9270
|
+
sessionExpiredTitle: "\u0C2E\u0C40 \u0C38\u0C46\u0C37\u0C28\u0C4D \u0C17\u0C21\u0C41\u0C35\u0C41 \u0C2E\u0C41\u0C17\u0C3F\u0C38\u0C3F\u0C02\u0C26\u0C3F",
|
|
9271
|
+
sessionExpiredDescription: "\u0C15\u0C4A\u0C28\u0C38\u0C3E\u0C17\u0C3F\u0C02\u0C1A\u0C21\u0C3E\u0C28\u0C3F\u0C15\u0C3F \u0C26\u0C2F\u0C1A\u0C47\u0C38\u0C3F \u0C2E\u0C33\u0C4D\u0C32\u0C40 \u0C38\u0C48\u0C28\u0C4D \u0C07\u0C28\u0C4D \u0C1A\u0C47\u0C2F\u0C02\u0C21\u0C3F.",
|
|
9272
|
+
chooseYourProfile: "\u0C2E\u0C40 \u0C2A\u0C4D\u0C30\u0C4A\u0C2B\u0C48\u0C32\u0C4D\u200C\u0C28\u0C41 \u0C0E\u0C02\u0C1A\u0C41\u0C15\u0C4B\u0C02\u0C21\u0C3F",
|
|
9273
|
+
loginIdentifierLinkedToMultipleProfiles: "\u0C32\u0C3E\u0C17\u0C3F\u0C28\u0C4D \u0C10\u0C21\u0C3F \u0C12\u0C15\u0C1F\u0C3F \u0C15\u0C02\u0C1F\u0C47 \u0C0E\u0C15\u0C4D\u0C15\u0C41\u0C35 \u0C2A\u0C4D\u0C30\u0C4A\u0C2B\u0C48\u0C32\u0C4D\u200C\u0C32\u0C24\u0C4B \u0C05\u0C28\u0C41\u0C38\u0C02\u0C27\u0C3E\u0C28\u0C3F\u0C02\u0C1A\u0C2C\u0C21\u0C3F\u0C02\u0C26\u0C3F. \u0C2E\u0C40\u0C30\u0C41 \u0C1A\u0C42\u0C21\u0C3E\u0C32\u0C28\u0C41\u0C15\u0C41\u0C02\u0C1F\u0C41\u0C28\u0C4D\u0C28\u0C26\u0C3E\u0C28\u0C4D\u0C28\u0C3F \u0C0E\u0C02\u0C1A\u0C41\u0C15\u0C4B\u0C02\u0C21\u0C3F.",
|
|
9274
|
+
userIdLabel: "\u0C35\u0C3F\u0C28\u0C3F\u0C2F\u0C4B\u0C17\u0C26\u0C3E\u0C30\u0C41 \u0C10\u0C21\u0C3F: {{id}}",
|
|
9275
|
+
signingInEllipsis: "\u0C38\u0C48\u0C28\u0C4D \u0C07\u0C28\u0C4D \u0C05\u0C35\u0C41\u0C24\u0C4B\u0C02\u0C26\u0C3F\u2026",
|
|
9276
|
+
switchProfile: "\u0C2A\u0C4D\u0C30\u0C4A\u0C2B\u0C48\u0C32\u0C4D\u200C\u0C28\u0C41 \u0C2E\u0C3E\u0C30\u0C4D\u0C1A\u0C02\u0C21\u0C3F"
|
|
9123
9277
|
};
|
|
9124
9278
|
|
|
9125
9279
|
// src/RedactoPrivacyCenter/locales/ur/translation.json
|
|
@@ -9533,7 +9687,14 @@ var translation_default23 = {
|
|
|
9533
9687
|
submittingAs: "{{email}} \u06A9\u06D2 \u0637\u0648\u0631 \u067E\u0631 \u062C\u0645\u0639 \u06A9\u0631 \u0631\u06C1\u06D2 \u06C1\u06CC\u06BA",
|
|
9534
9688
|
tapToChooseFile: "\u0641\u0627\u0626\u0644 \u0645\u0646\u062A\u062E\u0628 \u06A9\u0631\u0646\u06D2 \u06A9\u06D2 \u0644\u06CC\u06D2 \u0679\u06CC\u067E \u06A9\u0631\u06CC\u06BA",
|
|
9535
9689
|
view: "\u062F\u06CC\u06A9\u06BE\u06CC\u06BA",
|
|
9536
|
-
whatDoYouNeed: "\u0622\u067E \u06A9\u0648 \u06A9\u06CC\u0627 \u0686\u0627\u06C1\u06CC\u06D2\u061F"
|
|
9690
|
+
whatDoYouNeed: "\u0622\u067E \u06A9\u0648 \u06A9\u06CC\u0627 \u0686\u0627\u06C1\u06CC\u06D2\u061F",
|
|
9691
|
+
sessionExpiredTitle: "\u0622\u067E \u06A9\u0627 \u0633\u06CC\u0634\u0646 \u062E\u062A\u0645 \u06C1\u0648 \u06AF\u06CC\u0627 \u06C1\u06D2",
|
|
9692
|
+
sessionExpiredDescription: "\u062C\u0627\u0631\u06CC \u0631\u06A9\u06BE\u0646\u06D2 \u06A9\u06D2 \u0644\u06CC\u06D2 \u0628\u0631\u0627\u06C1 \u06A9\u0631\u0645 \u062F\u0648\u0628\u0627\u0631\u06C1 \u0633\u0627\u0626\u0646 \u0627\u0650\u0646 \u06A9\u0631\u06CC\u06BA\u06D4",
|
|
9693
|
+
chooseYourProfile: "\u0627\u067E\u0646\u06CC \u067E\u0631\u0648\u0641\u0627\u0626\u0644 \u0645\u0646\u062A\u062E\u0628 \u06A9\u0631\u06CC\u06BA",
|
|
9694
|
+
loginIdentifierLinkedToMultipleProfiles: "\u0644\u0627\u06AF \u0627\u0646 \u0622\u0626\u06CC \u0688\u06CC \u0627\u06CC\u06A9 \u0633\u06D2 \u0632\u06CC\u0627\u062F\u06C1 \u067E\u0631\u0648\u0641\u0627\u0626\u0644\u0632 \u0633\u06D2 \u0645\u0646\u0633\u0644\u06A9 \u06C1\u06D2\u06D4 \u062C\u0633\u06D2 \u0622\u067E \u062F\u06CC\u06A9\u06BE\u0646\u0627 \u0686\u0627\u06C1\u062A\u06D2 \u06C1\u06CC\u06BA \u0627\u0633\u06D2 \u0645\u0646\u062A\u062E\u0628 \u06A9\u0631\u06CC\u06BA\u06D4",
|
|
9695
|
+
userIdLabel: "\u0635\u0627\u0631\u0641 \u0622\u0626\u06CC \u0688\u06CC: {{id}}",
|
|
9696
|
+
signingInEllipsis: "\u0633\u0627\u0626\u0646 \u0627\u0646 \u06C1\u0648 \u0631\u06C1\u0627 \u06C1\u06D2\u2026",
|
|
9697
|
+
switchProfile: "\u067E\u0631\u0648\u0641\u0627\u0626\u0644 \u062A\u0628\u062F\u06CC\u0644 \u06A9\u0631\u06CC\u06BA"
|
|
9537
9698
|
};
|
|
9538
9699
|
|
|
9539
9700
|
// src/RedactoPrivacyCenter/lib/locales.ts
|
|
@@ -9779,6 +9940,26 @@ var sandboxQueryIdentity = () => sandboxBodyIdentity();
|
|
|
9779
9940
|
var sandboxContact = () => sandboxConfig ? sandboxConfig.ucic || sandboxConfig.subject : null;
|
|
9780
9941
|
|
|
9781
9942
|
// src/RedactoPrivacyCenter/api/fetcher.ts
|
|
9943
|
+
var ApiError = class _ApiError extends Error {
|
|
9944
|
+
constructor(message, options = {}) {
|
|
9945
|
+
super(message);
|
|
9946
|
+
this.name = "ApiError";
|
|
9947
|
+
this.status = options.status;
|
|
9948
|
+
this.detail = options.detail;
|
|
9949
|
+
Object.setPrototypeOf(this, _ApiError.prototype);
|
|
9950
|
+
}
|
|
9951
|
+
};
|
|
9952
|
+
var TERMINAL_REFRESH_STATUSES = /* @__PURE__ */ new Set([400, 401, 403, 422]);
|
|
9953
|
+
function isTerminalRefreshError(error) {
|
|
9954
|
+
const e = error;
|
|
9955
|
+
if (!e) return false;
|
|
9956
|
+
if (typeof e.status === "number") {
|
|
9957
|
+
return TERMINAL_REFRESH_STATUSES.has(e.status);
|
|
9958
|
+
}
|
|
9959
|
+
const message = (typeof e.message === "string" ? e.message : "").toLowerCase();
|
|
9960
|
+
if (!message) return false;
|
|
9961
|
+
return message.includes("expired") || message.includes("revoked") || message.includes("not found") || message.includes("already used") || message.includes("invalid refresh token") || message.includes("unauthorized") || message.includes("[401]") || message.includes("[403]");
|
|
9962
|
+
}
|
|
9782
9963
|
async function apiFetch(url, options = {}) {
|
|
9783
9964
|
const { getAuthToken, headers = {}, ...fetchOptions } = options;
|
|
9784
9965
|
const requestHeaders = new Headers();
|
|
@@ -9843,7 +10024,7 @@ async function apiFetch(url, options = {}) {
|
|
|
9843
10024
|
} catch {
|
|
9844
10025
|
}
|
|
9845
10026
|
}
|
|
9846
|
-
throw new
|
|
10027
|
+
throw new ApiError(errorMessage, { status: response.status });
|
|
9847
10028
|
}
|
|
9848
10029
|
const contentLength = response.headers.get("Content-Length");
|
|
9849
10030
|
const contentType = response.headers.get("Content-Type") || "";
|
|
@@ -10261,6 +10442,32 @@ function createConsentClient(baseUrl, ledgerBaseUrl) {
|
|
|
10261
10442
|
authToken: authToken || baseRequest.authToken
|
|
10262
10443
|
});
|
|
10263
10444
|
},
|
|
10445
|
+
/**
|
|
10446
|
+
* List all data principals that share this session's contact
|
|
10447
|
+
* (shared-contact profile picker). Identity is derived server-side from the
|
|
10448
|
+
* JWT — the caller sends nothing but its bearer token.
|
|
10449
|
+
*/
|
|
10450
|
+
async listIdentities(baseRequest, authToken, options) {
|
|
10451
|
+
const url = `${baseUrl}/organisations/${baseRequest.organisationUuid}/workspaces/${baseRequest.workspaceUuid}/dsar/privacy-center/identities`;
|
|
10452
|
+
return privacyCenterApiFetch(url, {
|
|
10453
|
+
...options,
|
|
10454
|
+
authToken: authToken || baseRequest.authToken
|
|
10455
|
+
});
|
|
10456
|
+
},
|
|
10457
|
+
/**
|
|
10458
|
+
* Re-scope the session to a chosen principal uuid (must be one of the
|
|
10459
|
+
* principals sharing this session's contact). Returns fresh access/refresh
|
|
10460
|
+
* tokens scoped to that principal.
|
|
10461
|
+
*/
|
|
10462
|
+
async selectPrincipal(baseRequest, principalUuid, authToken, options) {
|
|
10463
|
+
const url = `${baseUrl}/organisations/${baseRequest.organisationUuid}/workspaces/${baseRequest.workspaceUuid}/dsar/privacy-center/identities/select`;
|
|
10464
|
+
return privacyCenterApiFetch(url, {
|
|
10465
|
+
...options,
|
|
10466
|
+
method: "POST",
|
|
10467
|
+
body: JSON.stringify({ uuid: principalUuid }),
|
|
10468
|
+
authToken: authToken || baseRequest.authToken
|
|
10469
|
+
});
|
|
10470
|
+
},
|
|
10264
10471
|
/**
|
|
10265
10472
|
* Get receipts (privacy center)
|
|
10266
10473
|
*/
|
|
@@ -11557,6 +11764,40 @@ var acknowledgeNotification = async (organizationId, workspaceId, notificationUu
|
|
|
11557
11764
|
var isRefreshing = false;
|
|
11558
11765
|
var refreshPromise = null;
|
|
11559
11766
|
var TOKEN_EXPIRY_BUFFER_SECONDS = 30;
|
|
11767
|
+
var deadRefreshToken = null;
|
|
11768
|
+
var transientRefreshFailureUntil = 0;
|
|
11769
|
+
var transientRefreshBackoffMs = 0;
|
|
11770
|
+
var MIN_REFRESH_BACKOFF_MS = 3e4;
|
|
11771
|
+
var MAX_REFRESH_BACKOFF_MS = 3e5;
|
|
11772
|
+
var sessionExpiredListener = null;
|
|
11773
|
+
var setSessionExpiredListener = (fn) => {
|
|
11774
|
+
sessionExpiredListener = fn;
|
|
11775
|
+
};
|
|
11776
|
+
var notifySessionExpired = () => {
|
|
11777
|
+
sessionExpiredListener == null ? void 0 : sessionExpiredListener();
|
|
11778
|
+
};
|
|
11779
|
+
var activeRefreshToken = (authContext) => (authContext == null ? void 0 : authContext.refreshToken) || getStoredValue("refresh_token") || null;
|
|
11780
|
+
var isRefreshBlocked = (authContext) => {
|
|
11781
|
+
const active = activeRefreshToken(authContext);
|
|
11782
|
+
if (active !== null && active === deadRefreshToken) return true;
|
|
11783
|
+
return Date.now() < transientRefreshFailureUntil;
|
|
11784
|
+
};
|
|
11785
|
+
var noteTransientRefreshFailure = () => {
|
|
11786
|
+
transientRefreshBackoffMs = Math.min(
|
|
11787
|
+
Math.max(transientRefreshBackoffMs * 2, MIN_REFRESH_BACKOFF_MS),
|
|
11788
|
+
MAX_REFRESH_BACKOFF_MS
|
|
11789
|
+
);
|
|
11790
|
+
transientRefreshFailureUntil = Date.now() + transientRefreshBackoffMs;
|
|
11791
|
+
};
|
|
11792
|
+
var markRefreshTokenDead = (token) => {
|
|
11793
|
+
if (token) deadRefreshToken = token;
|
|
11794
|
+
notifySessionExpired();
|
|
11795
|
+
};
|
|
11796
|
+
var resetRefreshCircuit = () => {
|
|
11797
|
+
deadRefreshToken = null;
|
|
11798
|
+
transientRefreshFailureUntil = 0;
|
|
11799
|
+
transientRefreshBackoffMs = 0;
|
|
11800
|
+
};
|
|
11560
11801
|
var tokenStore = {};
|
|
11561
11802
|
var getStoredValue = (key) => {
|
|
11562
11803
|
var _a3;
|
|
@@ -11647,6 +11888,7 @@ var ensureValidToken = async (organizationId, workspaceId, _slug, authContext, c
|
|
|
11647
11888
|
return accessToken;
|
|
11648
11889
|
}
|
|
11649
11890
|
if (isRefreshing && refreshPromise) return refreshPromise;
|
|
11891
|
+
if (isRefreshBlocked(authContext)) return null;
|
|
11650
11892
|
isRefreshing = true;
|
|
11651
11893
|
refreshPromise = performTokenRefresh(
|
|
11652
11894
|
organizationId,
|
|
@@ -11674,6 +11916,7 @@ var performTokenRefresh = async (organizationId, workspaceId, authContext, conse
|
|
|
11674
11916
|
if (!refreshToken || typeof refreshToken !== "string" || refreshToken.trim() === "") {
|
|
11675
11917
|
if (authContext == null ? void 0 : authContext.onError)
|
|
11676
11918
|
authContext.onError(new Error("No refresh token available"));
|
|
11919
|
+
notifySessionExpired();
|
|
11677
11920
|
signOutPrivacyCenter();
|
|
11678
11921
|
return null;
|
|
11679
11922
|
}
|
|
@@ -11703,11 +11946,13 @@ var performTokenRefresh = async (organizationId, workspaceId, authContext, conse
|
|
|
11703
11946
|
if (newRefreshToken)
|
|
11704
11947
|
setStoredValue("refresh_token", newRefreshToken);
|
|
11705
11948
|
}
|
|
11949
|
+
resetRefreshCircuit();
|
|
11706
11950
|
return newAccessToken;
|
|
11707
11951
|
}
|
|
11708
11952
|
}
|
|
11709
11953
|
if (authContext == null ? void 0 : authContext.onError)
|
|
11710
11954
|
authContext.onError(new Error("Refresh token expired or revoked"));
|
|
11955
|
+
markRefreshTokenDead(refreshToken);
|
|
11711
11956
|
signOutPrivacyCenter();
|
|
11712
11957
|
return null;
|
|
11713
11958
|
} catch (error) {
|
|
@@ -11715,7 +11960,12 @@ var performTokenRefresh = async (organizationId, workspaceId, authContext, conse
|
|
|
11715
11960
|
authContext.onError(
|
|
11716
11961
|
error instanceof Error ? error : new Error(String(error))
|
|
11717
11962
|
);
|
|
11718
|
-
|
|
11963
|
+
if (isTerminalRefreshError(error)) {
|
|
11964
|
+
markRefreshTokenDead(refreshToken);
|
|
11965
|
+
signOutPrivacyCenter();
|
|
11966
|
+
} else {
|
|
11967
|
+
noteTransientRefreshFailure();
|
|
11968
|
+
}
|
|
11719
11969
|
return null;
|
|
11720
11970
|
}
|
|
11721
11971
|
};
|
|
@@ -12153,8 +12403,17 @@ function DataAvailabilityProvider({ children }) {
|
|
|
12153
12403
|
mountedRef.current = false;
|
|
12154
12404
|
};
|
|
12155
12405
|
}, []);
|
|
12406
|
+
useEffect3(() => {
|
|
12407
|
+
setSessionExpiredListener(() => {
|
|
12408
|
+
if (!mountedRef.current) return;
|
|
12409
|
+
runIdRef.current += 1;
|
|
12410
|
+
setStatus("session-expired");
|
|
12411
|
+
});
|
|
12412
|
+
return () => setSessionExpiredListener(null);
|
|
12413
|
+
}, []);
|
|
12156
12414
|
const runCheck = useCallback4(async () => {
|
|
12157
12415
|
if (!organizationId || !workspaceId) return;
|
|
12416
|
+
if (isRefreshBlocked(authContext)) return;
|
|
12158
12417
|
const runId = ++runIdRef.current;
|
|
12159
12418
|
setStatus("checking");
|
|
12160
12419
|
const contact = email;
|
|
@@ -18290,6 +18549,7 @@ function useUnreadCount() {
|
|
|
18290
18549
|
const loadRef = useRef8();
|
|
18291
18550
|
loadRef.current = async () => {
|
|
18292
18551
|
if (!organizationId || !workspaceId) return;
|
|
18552
|
+
if (isRefreshBlocked(authContext)) return;
|
|
18293
18553
|
const res = await fetchUnreadCount(organizationId, workspaceId, authContext, consentClient);
|
|
18294
18554
|
if (res && typeof res.count === "number") setCount(res.count);
|
|
18295
18555
|
};
|
|
@@ -18615,17 +18875,255 @@ function PrivacyCenterEmptyState() {
|
|
|
18615
18875
|
return /* @__PURE__ */ jsx49(PCEmpty, { iconName: "shield", title: t("noDataTitle"), description: t("noDataDescription") });
|
|
18616
18876
|
}
|
|
18617
18877
|
|
|
18878
|
+
// src/RedactoPrivacyCenter/components/PrivacyCenterSessionExpired.tsx
|
|
18879
|
+
import { useTranslation as useTranslation20 } from "react-i18next";
|
|
18880
|
+
import { jsx as jsx50 } from "react/jsx-runtime";
|
|
18881
|
+
function PrivacyCenterSessionExpired() {
|
|
18882
|
+
const { t } = useTranslation20();
|
|
18883
|
+
return /* @__PURE__ */ jsx50(
|
|
18884
|
+
PCEmpty,
|
|
18885
|
+
{
|
|
18886
|
+
iconName: "shield",
|
|
18887
|
+
title: t("sessionExpiredTitle"),
|
|
18888
|
+
description: t("sessionExpiredDescription")
|
|
18889
|
+
}
|
|
18890
|
+
);
|
|
18891
|
+
}
|
|
18892
|
+
|
|
18893
|
+
// src/RedactoPrivacyCenter/components/SelectUserGate.tsx
|
|
18894
|
+
import { useCallback as useCallback11, useEffect as useEffect16, useState as useState22 } from "react";
|
|
18895
|
+
import { StyleSheet as StyleSheet41, View as View39 } from "react-native";
|
|
18896
|
+
|
|
18897
|
+
// src/RedactoPrivacyCenter/context/ProfileSwitchContext.tsx
|
|
18898
|
+
import { createContext as createContext7, useContext as useContext7 } from "react";
|
|
18899
|
+
import { jsx as jsx51 } from "react/jsx-runtime";
|
|
18900
|
+
var ProfileSwitchContext = createContext7({
|
|
18901
|
+
switchProfile: null
|
|
18902
|
+
});
|
|
18903
|
+
function ProfileSwitchProvider({
|
|
18904
|
+
switchProfile,
|
|
18905
|
+
children
|
|
18906
|
+
}) {
|
|
18907
|
+
return /* @__PURE__ */ jsx51(ProfileSwitchContext.Provider, { value: { switchProfile }, children });
|
|
18908
|
+
}
|
|
18909
|
+
function useProfileSwitch() {
|
|
18910
|
+
return useContext7(ProfileSwitchContext);
|
|
18911
|
+
}
|
|
18912
|
+
|
|
18913
|
+
// src/RedactoPrivacyCenter/components/SelectUser.tsx
|
|
18914
|
+
import { ScrollView as ScrollView8, StyleSheet as StyleSheet40, Text as Text30, TouchableOpacity as TouchableOpacity15, View as View38 } from "react-native";
|
|
18915
|
+
import { useTranslation as useTranslation21 } from "react-i18next";
|
|
18916
|
+
|
|
18917
|
+
// src/RedactoPrivacyCenter/lib/identityLabels.ts
|
|
18918
|
+
var identityPrimaryValue = (candidate) => {
|
|
18919
|
+
const orgUserId = candidate.org_user_id || "";
|
|
18920
|
+
const email = candidate.primary_email || "";
|
|
18921
|
+
const mobile = candidate.primary_mobile || "";
|
|
18922
|
+
return { orgUserId, fallback: email || mobile || candidate.uuid };
|
|
18923
|
+
};
|
|
18924
|
+
var identitySecondaryLabels = (candidate, primaryLabel) => {
|
|
18925
|
+
const email = candidate.primary_email || "";
|
|
18926
|
+
const mobile = candidate.primary_mobile || "";
|
|
18927
|
+
return [email, mobile].filter(
|
|
18928
|
+
(value, index, all) => value !== "" && value !== primaryLabel && all.indexOf(value) === index
|
|
18929
|
+
);
|
|
18930
|
+
};
|
|
18931
|
+
var selectableIdentities = (candidates) => candidates.filter((candidate) => Boolean(candidate.uuid));
|
|
18932
|
+
|
|
18933
|
+
// src/RedactoPrivacyCenter/components/SelectUser.tsx
|
|
18934
|
+
import { jsx as jsx52, jsxs as jsxs32 } from "react/jsx-runtime";
|
|
18935
|
+
var SelectUser = ({
|
|
18936
|
+
candidates,
|
|
18937
|
+
onSelect,
|
|
18938
|
+
busyUuid,
|
|
18939
|
+
error
|
|
18940
|
+
}) => {
|
|
18941
|
+
const { t } = useTranslation21();
|
|
18942
|
+
const { colors } = useTheme();
|
|
18943
|
+
const selectable = selectableIdentities(candidates);
|
|
18944
|
+
const busy = busyUuid !== null;
|
|
18945
|
+
return /* @__PURE__ */ jsxs32(ScrollView8, { contentContainerStyle: styles39.container, children: [
|
|
18946
|
+
/* @__PURE__ */ jsx52(Text30, { style: [typography.title, styles39.heading, { color: colors.text }], children: t("chooseYourProfile") }),
|
|
18947
|
+
/* @__PURE__ */ jsx52(Text30, { style: [typography.body, styles39.subtitle, { color: colors.textSecondary }], children: t("loginIdentifierLinkedToMultipleProfiles") }),
|
|
18948
|
+
error ? /* @__PURE__ */ jsx52(Text30, { style: [typography.caption, styles39.error, { color: colors.error }], children: error }) : null,
|
|
18949
|
+
selectable.map((candidate) => {
|
|
18950
|
+
const { orgUserId, fallback } = identityPrimaryValue(candidate);
|
|
18951
|
+
const primaryLabel = orgUserId ? t("userIdLabel", { id: orgUserId }) : fallback;
|
|
18952
|
+
const secondaryLabels = identitySecondaryLabels(candidate, primaryLabel);
|
|
18953
|
+
const isBusy = busyUuid === candidate.uuid;
|
|
18954
|
+
return /* @__PURE__ */ jsxs32(
|
|
18955
|
+
TouchableOpacity15,
|
|
18956
|
+
{
|
|
18957
|
+
accessibilityRole: "button",
|
|
18958
|
+
disabled: busy,
|
|
18959
|
+
onPress: () => onSelect(candidate.uuid),
|
|
18960
|
+
style: [
|
|
18961
|
+
styles39.row,
|
|
18962
|
+
{
|
|
18963
|
+
backgroundColor: colors.surface,
|
|
18964
|
+
borderColor: isBusy ? colors.primary : colors.border
|
|
18965
|
+
}
|
|
18966
|
+
],
|
|
18967
|
+
children: [
|
|
18968
|
+
/* @__PURE__ */ jsxs32(View38, { style: styles39.rowText, children: [
|
|
18969
|
+
/* @__PURE__ */ jsx52(Text30, { style: [typography.label, { color: colors.text }], children: primaryLabel }),
|
|
18970
|
+
secondaryLabels.map((label) => /* @__PURE__ */ jsx52(
|
|
18971
|
+
Text30,
|
|
18972
|
+
{
|
|
18973
|
+
style: [typography.caption, styles39.secondary, { color: colors.textSecondary }],
|
|
18974
|
+
children: label
|
|
18975
|
+
},
|
|
18976
|
+
label
|
|
18977
|
+
))
|
|
18978
|
+
] }),
|
|
18979
|
+
isBusy ? /* @__PURE__ */ jsx52(Text30, { style: [typography.caption, { color: colors.textSecondary }], children: t("signingInEllipsis") }) : /* @__PURE__ */ jsx52(Icon, { name: "chevron-right", size: 18, color: colors.textSecondary })
|
|
18980
|
+
]
|
|
18981
|
+
},
|
|
18982
|
+
candidate.uuid
|
|
18983
|
+
);
|
|
18984
|
+
})
|
|
18985
|
+
] });
|
|
18986
|
+
};
|
|
18987
|
+
var styles39 = StyleSheet40.create({
|
|
18988
|
+
container: { padding: spacing.lg },
|
|
18989
|
+
heading: { textAlign: "center" },
|
|
18990
|
+
subtitle: { textAlign: "center", marginTop: spacing.xs, marginBottom: spacing.lg },
|
|
18991
|
+
error: { textAlign: "center", marginBottom: spacing.md },
|
|
18992
|
+
row: {
|
|
18993
|
+
flexDirection: "row",
|
|
18994
|
+
alignItems: "center",
|
|
18995
|
+
borderWidth: 1,
|
|
18996
|
+
borderRadius: radii.md,
|
|
18997
|
+
padding: spacing.md,
|
|
18998
|
+
marginBottom: spacing.sm
|
|
18999
|
+
},
|
|
19000
|
+
rowText: { flex: 1 },
|
|
19001
|
+
secondary: { marginTop: 2 }
|
|
19002
|
+
});
|
|
19003
|
+
|
|
19004
|
+
// src/RedactoPrivacyCenter/components/SelectUserGate.tsx
|
|
19005
|
+
import { jsx as jsx53 } from "react/jsx-runtime";
|
|
19006
|
+
function SelectUserGate({ children }) {
|
|
19007
|
+
var _a3, _b;
|
|
19008
|
+
const { accessToken, organizationId, workspaceId, updateTokens } = useAuth();
|
|
19009
|
+
const { consentClient } = useBaseUrl();
|
|
19010
|
+
const { colors } = useTheme();
|
|
19011
|
+
const insets = useSafeInsets();
|
|
19012
|
+
const [phase, setPhase] = useState22("checking");
|
|
19013
|
+
const [candidates, setCandidates] = useState22([]);
|
|
19014
|
+
const [busyUuid, setBusyUuid] = useState22(null);
|
|
19015
|
+
const [selectError, setSelectError] = useState22(null);
|
|
19016
|
+
const [pinnedOrgUserId, setPinnedOrgUserId] = useState22(null);
|
|
19017
|
+
const tokenOrgUserId = ((_b = (_a3 = decodeJwtToken(accessToken)) == null ? void 0 : _a3.user_data) == null ? void 0 : _b.org_user_id) || "";
|
|
19018
|
+
useEffect16(() => {
|
|
19019
|
+
let cancelled = false;
|
|
19020
|
+
if (isSandboxMode() || !organizationId || !workspaceId || !accessToken) {
|
|
19021
|
+
setPhase("resolved");
|
|
19022
|
+
return;
|
|
19023
|
+
}
|
|
19024
|
+
const isPinned = Boolean(pinnedOrgUserId) && pinnedOrgUserId === tokenOrgUserId;
|
|
19025
|
+
setPhase(isPinned ? "resolved" : "checking");
|
|
19026
|
+
(async () => {
|
|
19027
|
+
var _a4;
|
|
19028
|
+
try {
|
|
19029
|
+
const res = await consentClient.listIdentities({
|
|
19030
|
+
organisationUuid: organizationId,
|
|
19031
|
+
workspaceUuid: workspaceId,
|
|
19032
|
+
authToken: accessToken
|
|
19033
|
+
});
|
|
19034
|
+
if (cancelled) return;
|
|
19035
|
+
const list = (_a4 = res == null ? void 0 : res.identities) != null ? _a4 : [];
|
|
19036
|
+
setCandidates(list);
|
|
19037
|
+
setPhase(list.length > 1 && !isPinned ? "picking" : "resolved");
|
|
19038
|
+
} catch {
|
|
19039
|
+
if (cancelled) return;
|
|
19040
|
+
setCandidates([]);
|
|
19041
|
+
setPhase("resolved");
|
|
19042
|
+
}
|
|
19043
|
+
})();
|
|
19044
|
+
return () => {
|
|
19045
|
+
cancelled = true;
|
|
19046
|
+
};
|
|
19047
|
+
}, [organizationId, workspaceId, tokenOrgUserId]);
|
|
19048
|
+
const handleSelect = useCallback11(
|
|
19049
|
+
async (principalUuid) => {
|
|
19050
|
+
var _a4, _b2;
|
|
19051
|
+
if (!principalUuid || busyUuid || !organizationId || !workspaceId) return;
|
|
19052
|
+
setBusyUuid(principalUuid);
|
|
19053
|
+
setSelectError(null);
|
|
19054
|
+
try {
|
|
19055
|
+
const res = await consentClient.selectPrincipal(
|
|
19056
|
+
{
|
|
19057
|
+
organisationUuid: organizationId,
|
|
19058
|
+
workspaceUuid: workspaceId,
|
|
19059
|
+
authToken: accessToken
|
|
19060
|
+
},
|
|
19061
|
+
principalUuid
|
|
19062
|
+
);
|
|
19063
|
+
if (!(res == null ? void 0 : res.token) || !(res == null ? void 0 : res.refresh_token)) {
|
|
19064
|
+
throw new Error("select-principal returned no tokens");
|
|
19065
|
+
}
|
|
19066
|
+
const pinned = ((_b2 = (_a4 = decodeJwtToken(res.token)) == null ? void 0 : _a4.user_data) == null ? void 0 : _b2.org_user_id) || null;
|
|
19067
|
+
setPinnedOrgUserId(pinned);
|
|
19068
|
+
setPhase("resolved");
|
|
19069
|
+
updateTokens(res.token, res.refresh_token);
|
|
19070
|
+
} catch (error) {
|
|
19071
|
+
setSelectError(
|
|
19072
|
+
error instanceof Error ? error.message : "Failed to switch profile"
|
|
19073
|
+
);
|
|
19074
|
+
} finally {
|
|
19075
|
+
setBusyUuid(null);
|
|
19076
|
+
}
|
|
19077
|
+
},
|
|
19078
|
+
[accessToken, busyUuid, consentClient, organizationId, workspaceId, updateTokens]
|
|
19079
|
+
);
|
|
19080
|
+
const canSwitch = candidates.length > 1;
|
|
19081
|
+
const switchProfile = useCallback11(() => {
|
|
19082
|
+
if (!canSwitch) return;
|
|
19083
|
+
setSelectError(null);
|
|
19084
|
+
setPhase("picking");
|
|
19085
|
+
}, [canSwitch]);
|
|
19086
|
+
if (phase === "checking" || phase === "picking") {
|
|
19087
|
+
return /* @__PURE__ */ jsx53(
|
|
19088
|
+
View39,
|
|
19089
|
+
{
|
|
19090
|
+
style: [
|
|
19091
|
+
styles40.screen,
|
|
19092
|
+
{
|
|
19093
|
+
backgroundColor: colors.canvasSubtle,
|
|
19094
|
+
paddingTop: insets.top,
|
|
19095
|
+
paddingBottom: insets.bottom
|
|
19096
|
+
}
|
|
19097
|
+
],
|
|
19098
|
+
children: phase === "checking" ? /* @__PURE__ */ jsx53(PCLoader, {}) : /* @__PURE__ */ jsx53(
|
|
19099
|
+
SelectUser,
|
|
19100
|
+
{
|
|
19101
|
+
candidates,
|
|
19102
|
+
onSelect: handleSelect,
|
|
19103
|
+
busyUuid,
|
|
19104
|
+
error: selectError
|
|
19105
|
+
}
|
|
19106
|
+
)
|
|
19107
|
+
}
|
|
19108
|
+
);
|
|
19109
|
+
}
|
|
19110
|
+
return /* @__PURE__ */ jsx53(ProfileSwitchProvider, { switchProfile: canSwitch ? switchProfile : null, children });
|
|
19111
|
+
}
|
|
19112
|
+
var styles40 = StyleSheet41.create({
|
|
19113
|
+
screen: { flex: 1 }
|
|
19114
|
+
});
|
|
19115
|
+
|
|
18618
19116
|
// src/RedactoPrivacyCenter/components/CaseDetails/CaseDetailsPage.tsx
|
|
18619
|
-
import { useState as
|
|
18620
|
-
import { View as
|
|
18621
|
-
import { useTranslation as
|
|
19117
|
+
import { useState as useState24, useMemo as useMemo20, useEffect as useEffect19 } from "react";
|
|
19118
|
+
import { View as View47, Text as Text38, StyleSheet as StyleSheet49, ActivityIndicator as ActivityIndicator8, Platform as Platform7 } from "react-native";
|
|
19119
|
+
import { useTranslation as useTranslation27 } from "react-i18next";
|
|
18622
19120
|
|
|
18623
19121
|
// src/RedactoPrivacyCenter/components/CaseDetails/RequestDetailsTab.tsx
|
|
18624
|
-
import { View as
|
|
18625
|
-
import { useTranslation as
|
|
18626
|
-
import { jsx as
|
|
19122
|
+
import { View as View40, Text as Text31, ScrollView as ScrollView9, StyleSheet as StyleSheet42 } from "react-native";
|
|
19123
|
+
import { useTranslation as useTranslation22 } from "react-i18next";
|
|
19124
|
+
import { jsx as jsx54, jsxs as jsxs33 } from "react/jsx-runtime";
|
|
18627
19125
|
function RequestDetailsTab({ selectedCase, requestTypeLabel }) {
|
|
18628
|
-
const { t } =
|
|
19126
|
+
const { t } = useTranslation22();
|
|
18629
19127
|
const { colors } = useTheme();
|
|
18630
19128
|
const { listBottom } = usePrivacyCenterInsets({ hasFooter: true });
|
|
18631
19129
|
const details = selectedCase.request_details;
|
|
@@ -18657,36 +19155,36 @@ function RequestDetailsTab({ selectedCase, requestTypeLabel }) {
|
|
|
18657
19155
|
}
|
|
18658
19156
|
const description = selectedCase.description_display || selectedCase.description;
|
|
18659
19157
|
const hasDetails = description || details && (details.purposes && details.purposes.length > 0 || details.correction_data && details.correction_data.length > 0 || details.grievance_types && details.grievance_types.length > 0 || details.nomination_data);
|
|
18660
|
-
return /* @__PURE__ */
|
|
18661
|
-
/* @__PURE__ */
|
|
19158
|
+
return /* @__PURE__ */ jsxs33(ScrollView9, { style: [styles41.container, { backgroundColor: colors.canvasSubtle }], contentContainerStyle: [styles41.content, { flexGrow: 1, paddingBottom: listBottom }], showsVerticalScrollIndicator: false, children: [
|
|
19159
|
+
/* @__PURE__ */ jsx54(View40, { style: styles41.timeline, children: steps.map((step, i) => {
|
|
18662
19160
|
const isLast = i === steps.length - 1;
|
|
18663
|
-
return /* @__PURE__ */
|
|
18664
|
-
/* @__PURE__ */
|
|
18665
|
-
/* @__PURE__ */
|
|
18666
|
-
|
|
19161
|
+
return /* @__PURE__ */ jsxs33(View40, { style: styles41.stepRow, children: [
|
|
19162
|
+
/* @__PURE__ */ jsxs33(View40, { style: styles41.gutter, children: [
|
|
19163
|
+
/* @__PURE__ */ jsx54(
|
|
19164
|
+
View40,
|
|
18667
19165
|
{
|
|
18668
19166
|
style: [
|
|
18669
|
-
|
|
19167
|
+
styles41.dot,
|
|
18670
19168
|
step.state === "upcoming" ? { backgroundColor: colors.canvasSubtle, borderWidth: 2, borderColor: step.danger ? colors.error : colors.border } : { backgroundColor: step.color }
|
|
18671
19169
|
],
|
|
18672
|
-
children: step.state === "done" ? /* @__PURE__ */
|
|
19170
|
+
children: step.state === "done" ? /* @__PURE__ */ jsx54(Icon, { name: "check", size: 11, color: colors.primaryText, strokeWidth: 3 }) : step.state === "current" ? /* @__PURE__ */ jsx54(View40, { style: [styles41.dotInner, { backgroundColor: colors.primaryText }] }) : null
|
|
18673
19171
|
}
|
|
18674
19172
|
),
|
|
18675
|
-
!isLast ? /* @__PURE__ */
|
|
19173
|
+
!isLast ? /* @__PURE__ */ jsx54(View40, { style: [styles41.connector, { backgroundColor: colors.border }] }) : null
|
|
18676
19174
|
] }),
|
|
18677
|
-
/* @__PURE__ */
|
|
18678
|
-
/* @__PURE__ */
|
|
18679
|
-
step.date ? /* @__PURE__ */
|
|
19175
|
+
/* @__PURE__ */ jsxs33(View40, { style: [styles41.stepContent, isLast && styles41.stepContentLast], children: [
|
|
19176
|
+
/* @__PURE__ */ jsx54(Text31, { style: [styles41.stepLabel, { color: step.danger ? colors.error : colors.text }], children: step.label }),
|
|
19177
|
+
step.date ? /* @__PURE__ */ jsx54(Text31, { style: [styles41.stepDate, { color: step.danger ? colors.error : colors.textSecondary }], children: step.date }) : null
|
|
18680
19178
|
] })
|
|
18681
19179
|
] }, `${step.label}-${i}`);
|
|
18682
19180
|
}) }),
|
|
18683
|
-
hasDetails ? /* @__PURE__ */
|
|
18684
|
-
description ? /* @__PURE__ */
|
|
18685
|
-
/* @__PURE__ */
|
|
18686
|
-
/* @__PURE__ */
|
|
19181
|
+
hasDetails ? /* @__PURE__ */ jsxs33(View40, { style: [styles41.card, elevation.card, { backgroundColor: colors.surface }], children: [
|
|
19182
|
+
description ? /* @__PURE__ */ jsxs33(View40, { style: styles41.block, children: [
|
|
19183
|
+
/* @__PURE__ */ jsx54(Text31, { style: [styles41.blockLabel, { color: colors.textSecondary }], children: t("descriptionLabel") || "Description" }),
|
|
19184
|
+
/* @__PURE__ */ jsx54(Text31, { style: [styles41.descriptionText, { color: colors.text }], children: description })
|
|
18687
19185
|
] }) : null,
|
|
18688
|
-
(details == null ? void 0 : details.purposes) && details.purposes.length > 0 ? /* @__PURE__ */
|
|
18689
|
-
/* @__PURE__ */
|
|
19186
|
+
(details == null ? void 0 : details.purposes) && details.purposes.length > 0 ? /* @__PURE__ */ jsxs33(View40, { style: styles41.block, children: [
|
|
19187
|
+
/* @__PURE__ */ jsx54(Text31, { style: [styles41.blockLabel, { color: colors.textSecondary }], children: t("purposesInvolved") || t("purposes") || "Purposes" }),
|
|
18690
19188
|
details.purposes.map((rawP, idx) => {
|
|
18691
19189
|
const p = (rawP == null ? void 0 : rawP.purpose) ? rawP.purpose : rawP;
|
|
18692
19190
|
const purposeId = (p == null ? void 0 : p.uuid) || (p == null ? void 0 : p.purpose_uuid) || (rawP == null ? void 0 : rawP.purpose_uuid) || idx;
|
|
@@ -18694,10 +19192,10 @@ function RequestDetailsTab({ selectedCase, requestTypeLabel }) {
|
|
|
18694
19192
|
const purposeDescription = (p == null ? void 0 : p.description) || (rawP == null ? void 0 : rawP.description);
|
|
18695
19193
|
const dataElements = Array.isArray(p == null ? void 0 : p.data_elements) ? p.data_elements.filter((de) => (de == null ? void 0 : de.selected) || (de == null ? void 0 : de.given_consent)) : [];
|
|
18696
19194
|
const dataElementUuids = Array.isArray(rawP == null ? void 0 : rawP.data_element_uuids) ? rawP.data_element_uuids : Array.isArray(p == null ? void 0 : p.data_element_uuids) ? p.data_element_uuids : [];
|
|
18697
|
-
return /* @__PURE__ */
|
|
18698
|
-
/* @__PURE__ */
|
|
18699
|
-
purposeDescription ? /* @__PURE__ */
|
|
18700
|
-
dataElements.length > 0 ? /* @__PURE__ */
|
|
19195
|
+
return /* @__PURE__ */ jsxs33(View40, { style: [styles41.itemRow, idx > 0 && { borderTopColor: colors.hairline, borderTopWidth: StyleSheet42.hairlineWidth }], children: [
|
|
19196
|
+
/* @__PURE__ */ jsx54(Text31, { style: [styles41.itemTitle, { color: colors.text }], children: purposeName }),
|
|
19197
|
+
purposeDescription ? /* @__PURE__ */ jsx54(Text31, { style: [styles41.itemDesc, { color: colors.textSecondary }], numberOfLines: 3, children: purposeDescription }) : null,
|
|
19198
|
+
dataElements.length > 0 ? /* @__PURE__ */ jsx54(View40, { style: styles41.chipRow, children: dataElements.map((de) => /* @__PURE__ */ jsx54(PCBadge, { status: "info", label: de.name }, de.uuid)) }) : dataElementUuids.length > 0 ? /* @__PURE__ */ jsxs33(Text31, { style: [styles41.itemDesc, { color: colors.textSecondary }], children: [
|
|
18701
19199
|
dataElementUuids.length,
|
|
18702
19200
|
" ",
|
|
18703
19201
|
t("dataElements") || "data elements"
|
|
@@ -18705,44 +19203,44 @@ function RequestDetailsTab({ selectedCase, requestTypeLabel }) {
|
|
|
18705
19203
|
] }, purposeId);
|
|
18706
19204
|
})
|
|
18707
19205
|
] }) : null,
|
|
18708
|
-
(details == null ? void 0 : details.correction_data) && details.correction_data.length > 0 ? /* @__PURE__ */
|
|
18709
|
-
/* @__PURE__ */
|
|
18710
|
-
details.correction_data.map((item, idx) => /* @__PURE__ */
|
|
18711
|
-
/* @__PURE__ */
|
|
18712
|
-
/* @__PURE__ */
|
|
18713
|
-
/* @__PURE__ */
|
|
18714
|
-
/* @__PURE__ */
|
|
18715
|
-
/* @__PURE__ */
|
|
19206
|
+
(details == null ? void 0 : details.correction_data) && details.correction_data.length > 0 ? /* @__PURE__ */ jsxs33(View40, { style: styles41.block, children: [
|
|
19207
|
+
/* @__PURE__ */ jsx54(Text31, { style: [styles41.blockLabel, { color: colors.textSecondary }], children: t("correctionData") || "Correction" }),
|
|
19208
|
+
details.correction_data.map((item, idx) => /* @__PURE__ */ jsxs33(View40, { style: [styles41.itemRow, idx > 0 && { borderTopColor: colors.hairline, borderTopWidth: StyleSheet42.hairlineWidth }], children: [
|
|
19209
|
+
/* @__PURE__ */ jsx54(Text31, { style: [styles41.itemTitle, { color: colors.text }], children: item.name }),
|
|
19210
|
+
/* @__PURE__ */ jsxs33(View40, { style: styles41.correctionValues, children: [
|
|
19211
|
+
/* @__PURE__ */ jsxs33(View40, { style: styles41.correctionValue, children: [
|
|
19212
|
+
/* @__PURE__ */ jsx54(Text31, { style: [styles41.correctionLabel, { color: colors.textSecondary }], children: t("currentValue") || "Current" }),
|
|
19213
|
+
/* @__PURE__ */ jsx54(Text31, { style: [styles41.correctionText, { color: colors.text }], children: item.curr_value || "-" })
|
|
18716
19214
|
] }),
|
|
18717
|
-
/* @__PURE__ */
|
|
18718
|
-
/* @__PURE__ */
|
|
18719
|
-
/* @__PURE__ */
|
|
18720
|
-
/* @__PURE__ */
|
|
19215
|
+
/* @__PURE__ */ jsx54(Icon, { name: "chevron-right", size: 16, color: colors.textSecondary, strokeWidth: 2.2 }),
|
|
19216
|
+
/* @__PURE__ */ jsxs33(View40, { style: styles41.correctionValue, children: [
|
|
19217
|
+
/* @__PURE__ */ jsx54(Text31, { style: [styles41.correctionLabel, { color: colors.textSecondary }], children: t("newValue") || "New" }),
|
|
19218
|
+
/* @__PURE__ */ jsx54(Text31, { style: [styles41.correctionText, { color: colors.primary }], children: item.new_value || "-" })
|
|
18721
19219
|
] })
|
|
18722
19220
|
] })
|
|
18723
19221
|
] }, idx))
|
|
18724
19222
|
] }) : null,
|
|
18725
|
-
(details == null ? void 0 : details.grievance_types) && details.grievance_types.length > 0 ? /* @__PURE__ */
|
|
18726
|
-
/* @__PURE__ */
|
|
18727
|
-
/* @__PURE__ */
|
|
19223
|
+
(details == null ? void 0 : details.grievance_types) && details.grievance_types.length > 0 ? /* @__PURE__ */ jsxs33(View40, { style: styles41.block, children: [
|
|
19224
|
+
/* @__PURE__ */ jsx54(Text31, { style: [styles41.blockLabel, { color: colors.textSecondary }], children: t("grievanceTypes") || "Grievance" }),
|
|
19225
|
+
/* @__PURE__ */ jsx54(View40, { style: styles41.chipRow, children: details.grievance_types.map((g, idx) => /* @__PURE__ */ jsx54(PCBadge, { status: "warning", label: (g.grievance || "").replace(/_/g, " ") }, idx)) })
|
|
18728
19226
|
] }) : null,
|
|
18729
|
-
(details == null ? void 0 : details.nomination_data) ? /* @__PURE__ */
|
|
18730
|
-
/* @__PURE__ */
|
|
18731
|
-
details.nomination_data.nominee_email ? /* @__PURE__ */
|
|
18732
|
-
/* @__PURE__ */
|
|
18733
|
-
/* @__PURE__ */
|
|
19227
|
+
(details == null ? void 0 : details.nomination_data) ? /* @__PURE__ */ jsxs33(View40, { style: styles41.block, children: [
|
|
19228
|
+
/* @__PURE__ */ jsx54(Text31, { style: [styles41.blockLabel, { color: colors.textSecondary }], children: t("nominationData") || "Nomination" }),
|
|
19229
|
+
details.nomination_data.nominee_email ? /* @__PURE__ */ jsxs33(View40, { style: styles41.kvRow, children: [
|
|
19230
|
+
/* @__PURE__ */ jsx54(Text31, { style: [styles41.kvLabel, { color: colors.textSecondary }], children: t("email") || "Email" }),
|
|
19231
|
+
/* @__PURE__ */ jsx54(Text31, { style: [styles41.kvValue, { color: colors.text }], children: details.nomination_data.nominee_email })
|
|
18734
19232
|
] }) : null,
|
|
18735
|
-
details.nomination_data.nominee_mobile ? /* @__PURE__ */
|
|
18736
|
-
/* @__PURE__ */
|
|
18737
|
-
/* @__PURE__ */
|
|
19233
|
+
details.nomination_data.nominee_mobile ? /* @__PURE__ */ jsxs33(View40, { style: styles41.kvRow, children: [
|
|
19234
|
+
/* @__PURE__ */ jsx54(Text31, { style: [styles41.kvLabel, { color: colors.textSecondary }], children: t("mobile") || "Mobile" }),
|
|
19235
|
+
/* @__PURE__ */ jsx54(Text31, { style: [styles41.kvValue, { color: colors.text }], children: details.nomination_data.nominee_mobile })
|
|
18738
19236
|
] }) : null
|
|
18739
19237
|
] }) : null
|
|
18740
19238
|
] }) : null,
|
|
18741
|
-
/* @__PURE__ */
|
|
19239
|
+
/* @__PURE__ */ jsx54(View40, { style: { marginTop: "auto" }, children: /* @__PURE__ */ jsx54(Footer, {}) })
|
|
18742
19240
|
] });
|
|
18743
19241
|
}
|
|
18744
19242
|
var DOT = 22;
|
|
18745
|
-
var
|
|
19243
|
+
var styles41 = StyleSheet42.create({
|
|
18746
19244
|
container: {
|
|
18747
19245
|
flex: 1
|
|
18748
19246
|
},
|
|
@@ -18863,21 +19361,21 @@ var styles39 = StyleSheet40.create({
|
|
|
18863
19361
|
});
|
|
18864
19362
|
|
|
18865
19363
|
// src/RedactoPrivacyCenter/components/CaseDetails/MessagesTab.tsx
|
|
18866
|
-
import { useState as
|
|
18867
|
-
import { View as
|
|
18868
|
-
import { useTranslation as
|
|
19364
|
+
import { useState as useState23, useRef as useRef10, useEffect as useEffect18, useCallback as useCallback12, useMemo as useMemo19 } from "react";
|
|
19365
|
+
import { View as View46, Text as Text37, FlatList as FlatList2, StyleSheet as StyleSheet48, ActivityIndicator as ActivityIndicator7 } from "react-native";
|
|
19366
|
+
import { useTranslation as useTranslation26 } from "react-i18next";
|
|
18869
19367
|
|
|
18870
19368
|
// src/RedactoPrivacyCenter/components/CaseDetails/MessageItem.tsx
|
|
18871
|
-
import
|
|
18872
|
-
import { useTranslation as
|
|
19369
|
+
import React23 from "react";
|
|
19370
|
+
import { useTranslation as useTranslation24 } from "react-i18next";
|
|
18873
19371
|
|
|
18874
19372
|
// src/RedactoPrivacyCenter/components/CaseDetails/ChatBubble.tsx
|
|
18875
|
-
import
|
|
18876
|
-
import { StyleSheet as
|
|
19373
|
+
import React22 from "react";
|
|
19374
|
+
import { StyleSheet as StyleSheet44, Text as Text33, View as View42 } from "react-native";
|
|
18877
19375
|
|
|
18878
19376
|
// src/RedactoPrivacyCenter/components/CaseDetails/AttachmentCard.tsx
|
|
18879
|
-
import { View as
|
|
18880
|
-
import { jsx as
|
|
19377
|
+
import { View as View41, Text as Text32, TouchableOpacity as TouchableOpacity16, Linking, StyleSheet as StyleSheet43 } from "react-native";
|
|
19378
|
+
import { jsx as jsx55, jsxs as jsxs34 } from "react/jsx-runtime";
|
|
18881
19379
|
function AttachmentCard({ doc }) {
|
|
18882
19380
|
const { colors } = useTheme();
|
|
18883
19381
|
const downloadUrl = getDownloadUrl(doc.file_url);
|
|
@@ -18886,28 +19384,28 @@ function AttachmentCard({ doc }) {
|
|
|
18886
19384
|
Linking.openURL(downloadUrl);
|
|
18887
19385
|
}
|
|
18888
19386
|
};
|
|
18889
|
-
return /* @__PURE__ */
|
|
18890
|
-
|
|
19387
|
+
return /* @__PURE__ */ jsxs34(
|
|
19388
|
+
TouchableOpacity16,
|
|
18891
19389
|
{
|
|
18892
|
-
style: [
|
|
19390
|
+
style: [styles42.container, { backgroundColor: colors.surface, borderColor: colors.border }],
|
|
18893
19391
|
onPress: handlePress,
|
|
18894
19392
|
disabled: !downloadUrl,
|
|
18895
19393
|
activeOpacity: 0.7,
|
|
18896
19394
|
children: [
|
|
18897
|
-
/* @__PURE__ */
|
|
18898
|
-
/* @__PURE__ */
|
|
18899
|
-
/* @__PURE__ */
|
|
18900
|
-
doc.file_size ? /* @__PURE__ */
|
|
19395
|
+
/* @__PURE__ */ jsx55(Icon, { name: "file-text", size: 18, color: colors.textSecondary }),
|
|
19396
|
+
/* @__PURE__ */ jsxs34(View41, { style: styles42.info, children: [
|
|
19397
|
+
/* @__PURE__ */ jsx55(Text32, { style: [styles42.fileName, { color: colors.text }], numberOfLines: 1, children: doc.file_name || "Document" }),
|
|
19398
|
+
doc.file_size ? /* @__PURE__ */ jsx55(Text32, { style: [styles42.fileSize, { color: colors.textSecondary }], children: formatFileSize(doc.file_size) }) : null
|
|
18901
19399
|
] })
|
|
18902
19400
|
]
|
|
18903
19401
|
}
|
|
18904
19402
|
);
|
|
18905
19403
|
}
|
|
18906
|
-
var
|
|
19404
|
+
var styles42 = StyleSheet43.create({
|
|
18907
19405
|
container: {
|
|
18908
19406
|
flexDirection: "row",
|
|
18909
19407
|
alignItems: "center",
|
|
18910
|
-
borderWidth:
|
|
19408
|
+
borderWidth: StyleSheet43.hairlineWidth,
|
|
18911
19409
|
borderRadius: radii.md,
|
|
18912
19410
|
paddingHorizontal: spacing.sm + 2,
|
|
18913
19411
|
paddingVertical: spacing.sm,
|
|
@@ -18927,11 +19425,11 @@ var styles40 = StyleSheet41.create({
|
|
|
18927
19425
|
});
|
|
18928
19426
|
|
|
18929
19427
|
// src/RedactoPrivacyCenter/components/CaseDetails/ChatBubble.tsx
|
|
18930
|
-
import { jsx as
|
|
19428
|
+
import { jsx as jsx56, jsxs as jsxs35 } from "react/jsx-runtime";
|
|
18931
19429
|
var AVATAR_SIZE = 28;
|
|
18932
19430
|
var AVATAR_GUTTER = 36;
|
|
18933
19431
|
function TeamAvatar({ tint }) {
|
|
18934
|
-
return /* @__PURE__ */
|
|
19432
|
+
return /* @__PURE__ */ jsx56(View42, { style: [styles43.avatar, { backgroundColor: withAlpha(tint, 0.13) }], children: /* @__PURE__ */ jsx56(Icon, { name: "shield-check", size: 15, color: tint, strokeWidth: 2 }) });
|
|
18935
19433
|
}
|
|
18936
19434
|
function ChatBubbleImpl({
|
|
18937
19435
|
message,
|
|
@@ -18958,28 +19456,28 @@ function ChatBubbleImpl({
|
|
|
18958
19456
|
borderBottomRightRadius: BUBBLE_RADIUS,
|
|
18959
19457
|
borderBottomLeftRadius: tailRadius
|
|
18960
19458
|
};
|
|
18961
|
-
const bubble = /* @__PURE__ */
|
|
18962
|
-
!isPrincipal && isFirstInGroup ? /* @__PURE__ */
|
|
18963
|
-
message.body ? /* @__PURE__ */
|
|
18964
|
-
message.documents && message.documents.length > 0 ? /* @__PURE__ */
|
|
19459
|
+
const bubble = /* @__PURE__ */ jsxs35(View42, { style: [styles43.bubble, bubbleStyle], children: [
|
|
19460
|
+
!isPrincipal && isFirstInGroup ? /* @__PURE__ */ jsx56(Text33, { style: [styles43.bubbleSender, { color: colors.primary }], numberOfLines: 1, children: senderLabel }) : null,
|
|
19461
|
+
message.body ? /* @__PURE__ */ jsx56(Text33, { style: [styles43.body, { color: isPrincipal ? colors.primaryText : colors.text }], children: message.body }) : null,
|
|
19462
|
+
message.documents && message.documents.length > 0 ? /* @__PURE__ */ jsx56(View42, { style: styles43.attachments, children: message.documents.map((doc) => /* @__PURE__ */ jsx56(AttachmentCard, { doc }, doc.uuid)) }) : null
|
|
18965
19463
|
] });
|
|
18966
|
-
return /* @__PURE__ */
|
|
18967
|
-
|
|
19464
|
+
return /* @__PURE__ */ jsxs35(
|
|
19465
|
+
View42,
|
|
18968
19466
|
{
|
|
18969
19467
|
style: [
|
|
18970
|
-
|
|
18971
|
-
isPrincipal ?
|
|
19468
|
+
styles43.row,
|
|
19469
|
+
isPrincipal ? styles43.rowRight : styles43.rowLeft,
|
|
18972
19470
|
{ marginTop: isFirstInGroup ? spacing.md : 2 }
|
|
18973
19471
|
],
|
|
18974
19472
|
children: [
|
|
18975
|
-
!isPrincipal ? /* @__PURE__ */
|
|
18976
|
-
/* @__PURE__ */
|
|
19473
|
+
!isPrincipal ? /* @__PURE__ */ jsx56(View42, { style: styles43.avatarSlot, children: isFirstInGroup ? /* @__PURE__ */ jsx56(TeamAvatar, { tint: colors.primary }) : null }) : null,
|
|
19474
|
+
/* @__PURE__ */ jsxs35(View42, { style: [styles43.column, isPrincipal ? styles43.columnRight : styles43.columnLeft], children: [
|
|
18977
19475
|
bubble,
|
|
18978
|
-
isLastInGroup ? /* @__PURE__ */
|
|
18979
|
-
|
|
19476
|
+
isLastInGroup ? /* @__PURE__ */ jsx56(
|
|
19477
|
+
Text33,
|
|
18980
19478
|
{
|
|
18981
19479
|
style: [
|
|
18982
|
-
|
|
19480
|
+
styles43.timestamp,
|
|
18983
19481
|
{ color: colors.textSecondary, textAlign: isPrincipal ? "right" : "left" }
|
|
18984
19482
|
],
|
|
18985
19483
|
children: formatMessageTime(timestamp)
|
|
@@ -18990,8 +19488,8 @@ function ChatBubbleImpl({
|
|
|
18990
19488
|
}
|
|
18991
19489
|
);
|
|
18992
19490
|
}
|
|
18993
|
-
var ChatBubble =
|
|
18994
|
-
var
|
|
19491
|
+
var ChatBubble = React22.memo(ChatBubbleImpl);
|
|
19492
|
+
var styles43 = StyleSheet44.create({
|
|
18995
19493
|
row: {
|
|
18996
19494
|
flexDirection: "row",
|
|
18997
19495
|
paddingHorizontal: spacing.md,
|
|
@@ -19051,9 +19549,9 @@ var styles41 = StyleSheet42.create({
|
|
|
19051
19549
|
});
|
|
19052
19550
|
|
|
19053
19551
|
// src/RedactoPrivacyCenter/components/CaseDetails/DocumentRequestCard.tsx
|
|
19054
|
-
import { View as
|
|
19055
|
-
import { useTranslation as
|
|
19056
|
-
import { jsx as
|
|
19552
|
+
import { View as View43, Text as Text34, TouchableOpacity as TouchableOpacity17, StyleSheet as StyleSheet45 } from "react-native";
|
|
19553
|
+
import { useTranslation as useTranslation23 } from "react-i18next";
|
|
19554
|
+
import { jsx as jsx57, jsxs as jsxs36 } from "react/jsx-runtime";
|
|
19057
19555
|
var STATUS_BADGE_MAP = {
|
|
19058
19556
|
pending: "warning",
|
|
19059
19557
|
under_review: "info",
|
|
@@ -19073,20 +19571,20 @@ function humanize(value) {
|
|
|
19073
19571
|
}
|
|
19074
19572
|
function DocumentRequestCard({ message, onUpload, isSubmitting, isCaseFinalized = false }) {
|
|
19075
19573
|
var _a3;
|
|
19076
|
-
const { t } =
|
|
19574
|
+
const { t } = useTranslation23();
|
|
19077
19575
|
const { colors } = useTheme();
|
|
19078
19576
|
const meta = message.document_request_metadata;
|
|
19079
19577
|
if (!meta) return null;
|
|
19080
19578
|
const status = meta.document_request_status;
|
|
19081
19579
|
const canUpload = (status === "pending" || status === "replacement_requested") && !isCaseFinalized;
|
|
19082
19580
|
const requestEventUuid = meta.document_request_uuid;
|
|
19083
|
-
return /* @__PURE__ */
|
|
19084
|
-
/* @__PURE__ */
|
|
19085
|
-
/* @__PURE__ */
|
|
19086
|
-
/* @__PURE__ */
|
|
19087
|
-
/* @__PURE__ */
|
|
19581
|
+
return /* @__PURE__ */ jsxs36(View43, { style: [styles44.container, { borderColor: colors.border, backgroundColor: colors.surface }], children: [
|
|
19582
|
+
/* @__PURE__ */ jsxs36(View43, { style: styles44.header, children: [
|
|
19583
|
+
/* @__PURE__ */ jsxs36(View43, { style: styles44.titleRow, children: [
|
|
19584
|
+
/* @__PURE__ */ jsx57(Icon, { name: "file-check", size: 16, color: colors.primary, strokeWidth: 2 }),
|
|
19585
|
+
/* @__PURE__ */ jsx57(Text34, { style: [styles44.title, { color: colors.text }], children: meta.title || t("documentRequestedLabel") || "Document Requested" })
|
|
19088
19586
|
] }),
|
|
19089
|
-
/* @__PURE__ */
|
|
19587
|
+
/* @__PURE__ */ jsx57(
|
|
19090
19588
|
PCBadge,
|
|
19091
19589
|
{
|
|
19092
19590
|
status: STATUS_BADGE_MAP[status] || "info",
|
|
@@ -19094,30 +19592,30 @@ function DocumentRequestCard({ message, onUpload, isSubmitting, isCaseFinalized
|
|
|
19094
19592
|
}
|
|
19095
19593
|
)
|
|
19096
19594
|
] }),
|
|
19097
|
-
meta.accepted_document ? /* @__PURE__ */
|
|
19595
|
+
meta.accepted_document ? /* @__PURE__ */ jsx57(Text34, { style: [styles44.accepted, { color: colors.textSecondary }], children: t("acceptedLabel", {
|
|
19098
19596
|
accepted: meta.accepted_document,
|
|
19099
19597
|
defaultValue: `Accepted: ${meta.accepted_document}`
|
|
19100
19598
|
}) }) : null,
|
|
19101
|
-
meta.rejection_reason ? /* @__PURE__ */
|
|
19102
|
-
/* @__PURE__ */
|
|
19599
|
+
meta.rejection_reason ? /* @__PURE__ */ jsxs36(View43, { style: [styles44.rejectionBox, { backgroundColor: colors.errorSoft }], children: [
|
|
19600
|
+
/* @__PURE__ */ jsxs36(Text34, { style: [styles44.rejectionLabel, { color: colors.error }], children: [
|
|
19103
19601
|
t("rejectionReasonLabel") || "Rejection reason",
|
|
19104
19602
|
":"
|
|
19105
19603
|
] }),
|
|
19106
|
-
/* @__PURE__ */
|
|
19604
|
+
/* @__PURE__ */ jsx57(Text34, { style: [styles44.rejectionText, { color: colors.error }], children: meta.rejection_reason })
|
|
19107
19605
|
] }) : null,
|
|
19108
|
-
canUpload && requestEventUuid ? /* @__PURE__ */
|
|
19109
|
-
|
|
19606
|
+
canUpload && requestEventUuid ? /* @__PURE__ */ jsx57(
|
|
19607
|
+
TouchableOpacity17,
|
|
19110
19608
|
{
|
|
19111
|
-
style: [
|
|
19609
|
+
style: [styles44.uploadButton, { backgroundColor: colors.primary }],
|
|
19112
19610
|
onPress: () => onUpload(requestEventUuid),
|
|
19113
19611
|
disabled: isSubmitting,
|
|
19114
19612
|
activeOpacity: 0.7,
|
|
19115
|
-
children: /* @__PURE__ */
|
|
19613
|
+
children: /* @__PURE__ */ jsx57(Text34, { style: [styles44.uploadButtonText, { color: colors.primaryText }], children: isSubmitting ? t("loading") || "Loading..." : t("uploadAndSubmit") || "Upload & Submit" })
|
|
19116
19614
|
}
|
|
19117
19615
|
) : null
|
|
19118
19616
|
] });
|
|
19119
19617
|
}
|
|
19120
|
-
var
|
|
19618
|
+
var styles44 = StyleSheet45.create({
|
|
19121
19619
|
container: {
|
|
19122
19620
|
borderWidth: 1.5,
|
|
19123
19621
|
borderStyle: "dashed",
|
|
@@ -19170,20 +19668,20 @@ var styles42 = StyleSheet43.create({
|
|
|
19170
19668
|
});
|
|
19171
19669
|
|
|
19172
19670
|
// src/RedactoPrivacyCenter/components/CaseDetails/StatusEvent.tsx
|
|
19173
|
-
import { StyleSheet as
|
|
19174
|
-
import { jsx as
|
|
19671
|
+
import { StyleSheet as StyleSheet46, Text as Text35, View as View44 } from "react-native";
|
|
19672
|
+
import { jsx as jsx58, jsxs as jsxs37 } from "react/jsx-runtime";
|
|
19175
19673
|
function StatusEvent({ icon, color, bgColor, borderColor, text, subText, timestamp }) {
|
|
19176
19674
|
const { colors } = useTheme();
|
|
19177
|
-
return /* @__PURE__ */
|
|
19178
|
-
/* @__PURE__ */
|
|
19179
|
-
/* @__PURE__ */
|
|
19180
|
-
/* @__PURE__ */
|
|
19181
|
-
subText ? /* @__PURE__ */
|
|
19675
|
+
return /* @__PURE__ */ jsxs37(View44, { style: [styles45.container, { backgroundColor: bgColor }], children: [
|
|
19676
|
+
/* @__PURE__ */ jsx58(View44, { style: [styles45.iconBubble, { backgroundColor: `${color}1F` }], children: icon }),
|
|
19677
|
+
/* @__PURE__ */ jsxs37(View44, { style: styles45.textContainer, children: [
|
|
19678
|
+
/* @__PURE__ */ jsx58(Text35, { style: [styles45.text, { color }], children: text }),
|
|
19679
|
+
subText ? /* @__PURE__ */ jsx58(Text35, { style: [styles45.subText, { color: colors.textSecondary }], numberOfLines: 2, children: subText }) : null
|
|
19182
19680
|
] }),
|
|
19183
|
-
/* @__PURE__ */
|
|
19681
|
+
/* @__PURE__ */ jsx58(Text35, { style: [styles45.timestamp, { color: colors.textSecondary }], children: formatMessageTime(timestamp) })
|
|
19184
19682
|
] });
|
|
19185
19683
|
}
|
|
19186
|
-
var
|
|
19684
|
+
var styles45 = StyleSheet46.create({
|
|
19187
19685
|
container: {
|
|
19188
19686
|
flexDirection: "row",
|
|
19189
19687
|
alignItems: "center",
|
|
@@ -19222,10 +19720,10 @@ var styles43 = StyleSheet44.create({
|
|
|
19222
19720
|
});
|
|
19223
19721
|
|
|
19224
19722
|
// src/RedactoPrivacyCenter/components/CaseDetails/MessageItem.tsx
|
|
19225
|
-
import { Fragment as Fragment12, jsx as
|
|
19226
|
-
var CheckIcon = ({ color }) => /* @__PURE__ */
|
|
19227
|
-
var XIcon = ({ color }) => /* @__PURE__ */
|
|
19228
|
-
var RefreshIcon = ({ color }) => /* @__PURE__ */
|
|
19723
|
+
import { Fragment as Fragment12, jsx as jsx59, jsxs as jsxs38 } from "react/jsx-runtime";
|
|
19724
|
+
var CheckIcon = ({ color }) => /* @__PURE__ */ jsx59(Icon, { name: "check", size: 14, color, strokeWidth: 2.6 });
|
|
19725
|
+
var XIcon = ({ color }) => /* @__PURE__ */ jsx59(Icon, { name: "x", size: 14, color, strokeWidth: 2.6 });
|
|
19726
|
+
var RefreshIcon = ({ color }) => /* @__PURE__ */ jsx59(Icon, { name: "refresh-cw", size: 14, color, strokeWidth: 2.2 });
|
|
19229
19727
|
function MessageItemImpl({
|
|
19230
19728
|
message,
|
|
19231
19729
|
onUploadForRequest,
|
|
@@ -19235,14 +19733,14 @@ function MessageItemImpl({
|
|
|
19235
19733
|
isLastInGroup = true
|
|
19236
19734
|
}) {
|
|
19237
19735
|
var _a3, _b;
|
|
19238
|
-
const { t } =
|
|
19736
|
+
const { t } = useTranslation24();
|
|
19239
19737
|
const isPrincipal = message.sender_role === "data_principal";
|
|
19240
19738
|
const senderLabel = isPrincipal ? t("senderYou") || "You" : t("senderPrivacyTeam") || "Privacy Team";
|
|
19241
19739
|
switch (message.message_type) {
|
|
19242
19740
|
case "message_sent":
|
|
19243
19741
|
case "document_submitted":
|
|
19244
19742
|
case "document_replaced":
|
|
19245
|
-
return /* @__PURE__ */
|
|
19743
|
+
return /* @__PURE__ */ jsx59(
|
|
19246
19744
|
ChatBubble,
|
|
19247
19745
|
{
|
|
19248
19746
|
message,
|
|
@@ -19254,8 +19752,8 @@ function MessageItemImpl({
|
|
|
19254
19752
|
}
|
|
19255
19753
|
);
|
|
19256
19754
|
case "document_requested":
|
|
19257
|
-
return /* @__PURE__ */
|
|
19258
|
-
/* @__PURE__ */
|
|
19755
|
+
return /* @__PURE__ */ jsxs38(Fragment12, { children: [
|
|
19756
|
+
/* @__PURE__ */ jsx59(
|
|
19259
19757
|
ChatBubble,
|
|
19260
19758
|
{
|
|
19261
19759
|
message,
|
|
@@ -19266,7 +19764,7 @@ function MessageItemImpl({
|
|
|
19266
19764
|
isLastInGroup
|
|
19267
19765
|
}
|
|
19268
19766
|
),
|
|
19269
|
-
/* @__PURE__ */
|
|
19767
|
+
/* @__PURE__ */ jsx59(
|
|
19270
19768
|
DocumentRequestCard,
|
|
19271
19769
|
{
|
|
19272
19770
|
message,
|
|
@@ -19277,10 +19775,10 @@ function MessageItemImpl({
|
|
|
19277
19775
|
)
|
|
19278
19776
|
] });
|
|
19279
19777
|
case "document_approved":
|
|
19280
|
-
return /* @__PURE__ */
|
|
19778
|
+
return /* @__PURE__ */ jsx59(
|
|
19281
19779
|
StatusEvent,
|
|
19282
19780
|
{
|
|
19283
|
-
icon: /* @__PURE__ */
|
|
19781
|
+
icon: /* @__PURE__ */ jsx59(CheckIcon, { color: "#059669" }),
|
|
19284
19782
|
color: "#059669",
|
|
19285
19783
|
bgColor: "rgba(16, 185, 129, 0.08)",
|
|
19286
19784
|
borderColor: "rgba(16, 185, 129, 0.2)",
|
|
@@ -19289,10 +19787,10 @@ function MessageItemImpl({
|
|
|
19289
19787
|
}
|
|
19290
19788
|
);
|
|
19291
19789
|
case "document_rejected":
|
|
19292
|
-
return /* @__PURE__ */
|
|
19790
|
+
return /* @__PURE__ */ jsx59(
|
|
19293
19791
|
StatusEvent,
|
|
19294
19792
|
{
|
|
19295
|
-
icon: /* @__PURE__ */
|
|
19793
|
+
icon: /* @__PURE__ */ jsx59(XIcon, { color: "#DC2626" }),
|
|
19296
19794
|
color: "#DC2626",
|
|
19297
19795
|
bgColor: "rgba(220, 38, 38, 0.08)",
|
|
19298
19796
|
borderColor: "rgba(220, 38, 38, 0.2)",
|
|
@@ -19302,10 +19800,10 @@ function MessageItemImpl({
|
|
|
19302
19800
|
}
|
|
19303
19801
|
);
|
|
19304
19802
|
case "document_replacement_requested":
|
|
19305
|
-
return /* @__PURE__ */
|
|
19803
|
+
return /* @__PURE__ */ jsx59(
|
|
19306
19804
|
StatusEvent,
|
|
19307
19805
|
{
|
|
19308
|
-
icon: /* @__PURE__ */
|
|
19806
|
+
icon: /* @__PURE__ */ jsx59(RefreshIcon, { color: "#D97706" }),
|
|
19309
19807
|
color: "#D97706",
|
|
19310
19808
|
bgColor: "rgba(245, 158, 11, 0.08)",
|
|
19311
19809
|
borderColor: "rgba(245, 158, 11, 0.2)",
|
|
@@ -19315,7 +19813,7 @@ function MessageItemImpl({
|
|
|
19315
19813
|
}
|
|
19316
19814
|
);
|
|
19317
19815
|
default:
|
|
19318
|
-
return /* @__PURE__ */
|
|
19816
|
+
return /* @__PURE__ */ jsx59(
|
|
19319
19817
|
ChatBubble,
|
|
19320
19818
|
{
|
|
19321
19819
|
message,
|
|
@@ -19328,22 +19826,22 @@ function MessageItemImpl({
|
|
|
19328
19826
|
);
|
|
19329
19827
|
}
|
|
19330
19828
|
}
|
|
19331
|
-
var MessageItem =
|
|
19829
|
+
var MessageItem = React23.memo(MessageItemImpl);
|
|
19332
19830
|
|
|
19333
19831
|
// src/RedactoPrivacyCenter/components/CaseDetails/MessageComposer.tsx
|
|
19334
|
-
import { useEffect as
|
|
19832
|
+
import { useEffect as useEffect17, useRef as useRef9 } from "react";
|
|
19335
19833
|
import {
|
|
19336
19834
|
ActivityIndicator as ActivityIndicator6,
|
|
19337
19835
|
Animated as Animated12,
|
|
19338
19836
|
Easing as Easing3,
|
|
19339
|
-
StyleSheet as
|
|
19340
|
-
Text as
|
|
19837
|
+
StyleSheet as StyleSheet47,
|
|
19838
|
+
Text as Text36,
|
|
19341
19839
|
TextInput as TextInput3,
|
|
19342
|
-
TouchableOpacity as
|
|
19343
|
-
View as
|
|
19840
|
+
TouchableOpacity as TouchableOpacity18,
|
|
19841
|
+
View as View45
|
|
19344
19842
|
} from "react-native";
|
|
19345
|
-
import { useTranslation as
|
|
19346
|
-
import { jsx as
|
|
19843
|
+
import { useTranslation as useTranslation25 } from "react-i18next";
|
|
19844
|
+
import { jsx as jsx60, jsxs as jsxs39 } from "react/jsx-runtime";
|
|
19347
19845
|
function MessageComposer({
|
|
19348
19846
|
messageText,
|
|
19349
19847
|
onMessageTextChange,
|
|
@@ -19355,11 +19853,11 @@ function MessageComposer({
|
|
|
19355
19853
|
isUploading,
|
|
19356
19854
|
isCaseFinalized = false
|
|
19357
19855
|
}) {
|
|
19358
|
-
const { t } =
|
|
19856
|
+
const { t } = useTranslation25();
|
|
19359
19857
|
const { colors } = useTheme();
|
|
19360
19858
|
const canSend = (messageText.trim().length > 0 || pendingUpload) && !isSending && !isUploading && !isCaseFinalized;
|
|
19361
19859
|
const activate = useRef9(new Animated12.Value(canSend ? 1 : 0)).current;
|
|
19362
|
-
|
|
19860
|
+
useEffect17(() => {
|
|
19363
19861
|
Animated12.timing(activate, {
|
|
19364
19862
|
toValue: canSend ? 1 : 0,
|
|
19365
19863
|
duration: 180,
|
|
@@ -19379,7 +19877,7 @@ function MessageComposer({
|
|
|
19379
19877
|
Animated12.spring(pressScale, { toValue: 1, useNativeDriver: true, speed: 20, bounciness: 6 }).start();
|
|
19380
19878
|
};
|
|
19381
19879
|
const pillIn = useRef9(new Animated12.Value(0)).current;
|
|
19382
|
-
|
|
19880
|
+
useEffect17(() => {
|
|
19383
19881
|
Animated12.timing(pillIn, {
|
|
19384
19882
|
toValue: pendingUpload ? 1 : 0,
|
|
19385
19883
|
duration: 220,
|
|
@@ -19389,12 +19887,12 @@ function MessageComposer({
|
|
|
19389
19887
|
}, [pendingUpload, pillIn]);
|
|
19390
19888
|
const pillOpacity = pillIn;
|
|
19391
19889
|
const pillTranslateY = pillIn.interpolate({ inputRange: [0, 1], outputRange: [8, 0] });
|
|
19392
|
-
return /* @__PURE__ */
|
|
19393
|
-
pendingUpload && /* @__PURE__ */
|
|
19890
|
+
return /* @__PURE__ */ jsxs39(View45, { style: [styles46.container, { borderTopColor: colors.hairline, backgroundColor: colors.canvasSubtle, paddingBottom: spacing.sm }], children: [
|
|
19891
|
+
pendingUpload && /* @__PURE__ */ jsxs39(
|
|
19394
19892
|
Animated12.View,
|
|
19395
19893
|
{
|
|
19396
19894
|
style: [
|
|
19397
|
-
|
|
19895
|
+
styles46.uploadPill,
|
|
19398
19896
|
{
|
|
19399
19897
|
backgroundColor: colors.primarySoft,
|
|
19400
19898
|
opacity: pillOpacity,
|
|
@@ -19402,34 +19900,34 @@ function MessageComposer({
|
|
|
19402
19900
|
}
|
|
19403
19901
|
],
|
|
19404
19902
|
children: [
|
|
19405
|
-
/* @__PURE__ */
|
|
19406
|
-
/* @__PURE__ */
|
|
19903
|
+
/* @__PURE__ */ jsx60(Icon, { name: "file", size: 14, color: colors.primary }),
|
|
19904
|
+
/* @__PURE__ */ jsxs39(Text36, { style: [styles46.uploadFileName, { color: colors.primary }], numberOfLines: 1, children: [
|
|
19407
19905
|
pendingUpload.file_name,
|
|
19408
19906
|
" (",
|
|
19409
19907
|
formatFileSize(pendingUpload.file_size),
|
|
19410
19908
|
")"
|
|
19411
19909
|
] }),
|
|
19412
|
-
/* @__PURE__ */
|
|
19910
|
+
/* @__PURE__ */ jsx60(TouchableOpacity18, { onPress: onRemovePendingUpload, hitSlop: { top: 8, bottom: 8, left: 8, right: 8 }, children: /* @__PURE__ */ jsx60(Icon, { name: "x", size: 14, color: colors.textSecondary, strokeWidth: 2.4 }) })
|
|
19413
19911
|
]
|
|
19414
19912
|
}
|
|
19415
19913
|
),
|
|
19416
|
-
/* @__PURE__ */
|
|
19417
|
-
/* @__PURE__ */
|
|
19418
|
-
|
|
19914
|
+
/* @__PURE__ */ jsxs39(View45, { style: [styles46.pill, { backgroundColor: colors.surface, borderColor: colors.border }, isCaseFinalized && styles46.pillDisabled], children: [
|
|
19915
|
+
/* @__PURE__ */ jsx60(
|
|
19916
|
+
TouchableOpacity18,
|
|
19419
19917
|
{
|
|
19420
|
-
style:
|
|
19918
|
+
style: styles46.attachButton,
|
|
19421
19919
|
onPress: onAttachClick,
|
|
19422
19920
|
disabled: isUploading || isCaseFinalized,
|
|
19423
19921
|
activeOpacity: 0.6,
|
|
19424
19922
|
hitSlop: DEFAULT_HIT_SLOP,
|
|
19425
19923
|
accessibilityLabel: t("uploadFile") || "Attach file",
|
|
19426
|
-
children: isUploading ? /* @__PURE__ */
|
|
19924
|
+
children: isUploading ? /* @__PURE__ */ jsx60(ActivityIndicator6, { size: "small", color: colors.primary }) : /* @__PURE__ */ jsx60(Icon, { name: "paperclip", size: 20, color: colors.textSecondary })
|
|
19427
19925
|
}
|
|
19428
19926
|
),
|
|
19429
|
-
/* @__PURE__ */
|
|
19927
|
+
/* @__PURE__ */ jsx60(
|
|
19430
19928
|
TextInput3,
|
|
19431
19929
|
{
|
|
19432
|
-
style: [
|
|
19930
|
+
style: [styles46.input, { color: colors.text }],
|
|
19433
19931
|
value: messageText,
|
|
19434
19932
|
onChangeText: onMessageTextChange,
|
|
19435
19933
|
placeholder: t("messageInputPlaceholder", { defaultValue: "Message\u2026" }),
|
|
@@ -19439,8 +19937,8 @@ function MessageComposer({
|
|
|
19439
19937
|
editable: !isSending && !isCaseFinalized
|
|
19440
19938
|
}
|
|
19441
19939
|
),
|
|
19442
|
-
/* @__PURE__ */
|
|
19443
|
-
|
|
19940
|
+
/* @__PURE__ */ jsx60(Animated12.View, { style: { transform: [{ scale: pressScale }] }, children: /* @__PURE__ */ jsx60(
|
|
19941
|
+
TouchableOpacity18,
|
|
19444
19942
|
{
|
|
19445
19943
|
onPress: onSend,
|
|
19446
19944
|
onPressIn: handlePressIn,
|
|
@@ -19448,15 +19946,15 @@ function MessageComposer({
|
|
|
19448
19946
|
disabled: !canSend,
|
|
19449
19947
|
activeOpacity: 0.85,
|
|
19450
19948
|
accessibilityLabel: t("send") || "Send",
|
|
19451
|
-
children: /* @__PURE__ */
|
|
19949
|
+
children: /* @__PURE__ */ jsx60(Animated12.View, { style: [styles46.sendButton, { backgroundColor: sendBgColor }], children: isSending ? /* @__PURE__ */ jsx60(ActivityIndicator6, { size: "small", color: colors.primaryText }) : /* @__PURE__ */ jsx60(View45, { style: styles46.sendIcon, children: /* @__PURE__ */ jsx60(Icon, { name: "send", size: 18, color: canSend ? colors.primaryText : colors.textSecondary }) }) })
|
|
19452
19950
|
}
|
|
19453
19951
|
) })
|
|
19454
19952
|
] })
|
|
19455
19953
|
] });
|
|
19456
19954
|
}
|
|
19457
|
-
var
|
|
19955
|
+
var styles46 = StyleSheet47.create({
|
|
19458
19956
|
container: {
|
|
19459
|
-
borderTopWidth:
|
|
19957
|
+
borderTopWidth: StyleSheet47.hairlineWidth,
|
|
19460
19958
|
paddingHorizontal: spacing.md,
|
|
19461
19959
|
paddingVertical: spacing.sm
|
|
19462
19960
|
},
|
|
@@ -19479,7 +19977,7 @@ var styles44 = StyleSheet45.create({
|
|
|
19479
19977
|
pill: {
|
|
19480
19978
|
flexDirection: "row",
|
|
19481
19979
|
alignItems: "center",
|
|
19482
|
-
borderWidth:
|
|
19980
|
+
borderWidth: StyleSheet47.hairlineWidth,
|
|
19483
19981
|
borderRadius: radii.xxl + 4,
|
|
19484
19982
|
paddingHorizontal: spacing.xs + 2,
|
|
19485
19983
|
paddingVertical: spacing.xs,
|
|
@@ -19518,7 +20016,7 @@ var styles44 = StyleSheet45.create({
|
|
|
19518
20016
|
});
|
|
19519
20017
|
|
|
19520
20018
|
// src/RedactoPrivacyCenter/components/CaseDetails/MessagesTab.tsx
|
|
19521
|
-
import { Fragment as Fragment13, jsx as
|
|
20019
|
+
import { Fragment as Fragment13, jsx as jsx61, jsxs as jsxs40 } from "react/jsx-runtime";
|
|
19522
20020
|
var STREAK_GAP_MS = 5 * 60 * 1e3;
|
|
19523
20021
|
function isStreakBoundary(a, b) {
|
|
19524
20022
|
if (!a || !b) return true;
|
|
@@ -19548,7 +20046,7 @@ function sameDay(a, b) {
|
|
|
19548
20046
|
}
|
|
19549
20047
|
var MESSAGE_POLL_INTERVAL = 3e4;
|
|
19550
20048
|
function MessagesTab({ caseUuid, isCaseFinalized = false }) {
|
|
19551
|
-
const { t } =
|
|
20049
|
+
const { t } = useTranslation26();
|
|
19552
20050
|
const { accessToken, refreshToken, email, organizationId, workspaceId, onError, updateTokens } = useAuth();
|
|
19553
20051
|
const { consentClient } = useBaseUrl();
|
|
19554
20052
|
const { colors } = useTheme();
|
|
@@ -19564,13 +20062,13 @@ function MessagesTab({ caseUuid, isCaseFinalized = false }) {
|
|
|
19564
20062
|
caseUuid,
|
|
19565
20063
|
authContext
|
|
19566
20064
|
);
|
|
19567
|
-
const [messageText, setMessageText] =
|
|
19568
|
-
const [pendingUpload, setPendingUpload] =
|
|
19569
|
-
const [isSending, setIsSending] =
|
|
19570
|
-
const [isUploading, setIsUploading] =
|
|
19571
|
-
const [isSubmittingForRequest, setIsSubmittingForRequest] =
|
|
20065
|
+
const [messageText, setMessageText] = useState23("");
|
|
20066
|
+
const [pendingUpload, setPendingUpload] = useState23(null);
|
|
20067
|
+
const [isSending, setIsSending] = useState23(false);
|
|
20068
|
+
const [isUploading, setIsUploading] = useState23(false);
|
|
20069
|
+
const [isSubmittingForRequest, setIsSubmittingForRequest] = useState23(false);
|
|
19572
20070
|
const flatListRef = useRef10(null);
|
|
19573
|
-
|
|
20071
|
+
useEffect18(() => {
|
|
19574
20072
|
if (messages && messages.length > 0) {
|
|
19575
20073
|
setTimeout(() => {
|
|
19576
20074
|
var _a3;
|
|
@@ -19580,14 +20078,17 @@ function MessagesTab({ caseUuid, isCaseFinalized = false }) {
|
|
|
19580
20078
|
}, [messages == null ? void 0 : messages.length]);
|
|
19581
20079
|
const refetchRef = useRef10(refetch);
|
|
19582
20080
|
refetchRef.current = refetch;
|
|
19583
|
-
|
|
20081
|
+
const authContextRef = useRef10(authContext);
|
|
20082
|
+
authContextRef.current = authContext;
|
|
20083
|
+
useEffect18(() => {
|
|
19584
20084
|
if (isCaseFinalized) return;
|
|
19585
20085
|
const id = setInterval(() => {
|
|
20086
|
+
if (isRefreshBlocked(authContextRef.current)) return;
|
|
19586
20087
|
refetchRef.current();
|
|
19587
20088
|
}, MESSAGE_POLL_INTERVAL);
|
|
19588
20089
|
return () => clearInterval(id);
|
|
19589
20090
|
}, [isCaseFinalized]);
|
|
19590
|
-
const handleSend =
|
|
20091
|
+
const handleSend = useCallback12(async () => {
|
|
19591
20092
|
if (isCaseFinalized) return;
|
|
19592
20093
|
if (!messageText.trim() && !pendingUpload) return;
|
|
19593
20094
|
if (!organizationId || !workspaceId) return;
|
|
@@ -19612,7 +20113,7 @@ function MessagesTab({ caseUuid, isCaseFinalized = false }) {
|
|
|
19612
20113
|
setIsSending(false);
|
|
19613
20114
|
}
|
|
19614
20115
|
}, [isCaseFinalized, messageText, pendingUpload, organizationId, workspaceId, caseUuid, authContext, consentClient, refetch]);
|
|
19615
|
-
const handleAttach =
|
|
20116
|
+
const handleAttach = useCallback12(async () => {
|
|
19616
20117
|
if (isCaseFinalized) return;
|
|
19617
20118
|
if (!organizationId || !workspaceId) return;
|
|
19618
20119
|
try {
|
|
@@ -19647,7 +20148,7 @@ function MessagesTab({ caseUuid, isCaseFinalized = false }) {
|
|
|
19647
20148
|
setIsUploading(false);
|
|
19648
20149
|
}
|
|
19649
20150
|
}, [isCaseFinalized, organizationId, workspaceId, caseUuid, authContext, consentClient]);
|
|
19650
|
-
const handleUploadForRequest =
|
|
20151
|
+
const handleUploadForRequest = useCallback12((_requestEventUuid) => {
|
|
19651
20152
|
handleAttach();
|
|
19652
20153
|
}, [handleAttach]);
|
|
19653
20154
|
const messagesList = useMemo19(() => {
|
|
@@ -19659,17 +20160,17 @@ function MessagesTab({ caseUuid, isCaseFinalized = false }) {
|
|
|
19659
20160
|
});
|
|
19660
20161
|
return list;
|
|
19661
20162
|
}, [messages]);
|
|
19662
|
-
const keyExtractor =
|
|
19663
|
-
const renderMessage =
|
|
20163
|
+
const keyExtractor = useCallback12((item) => item.uuid, []);
|
|
20164
|
+
const renderMessage = useCallback12(
|
|
19664
20165
|
({ item, index }) => {
|
|
19665
20166
|
const prev = index > 0 ? messagesList[index - 1] : void 0;
|
|
19666
20167
|
const next = index < messagesList.length - 1 ? messagesList[index + 1] : void 0;
|
|
19667
20168
|
const isFirstInGroup = isStreakBoundary(prev, item);
|
|
19668
20169
|
const isLastInGroup = isStreakBoundary(item, next);
|
|
19669
20170
|
const dateSeparator = getDateSeparator(prev == null ? void 0 : prev.created_at, item.created_at, t);
|
|
19670
|
-
return /* @__PURE__ */
|
|
19671
|
-
dateSeparator ? /* @__PURE__ */
|
|
19672
|
-
/* @__PURE__ */
|
|
20171
|
+
return /* @__PURE__ */ jsxs40(Fragment13, { children: [
|
|
20172
|
+
dateSeparator ? /* @__PURE__ */ jsx61(View46, { style: styles47.daySeparator, children: /* @__PURE__ */ jsx61(View46, { style: [styles47.dayPill, { backgroundColor: colors.surfaceAlt }], children: /* @__PURE__ */ jsx61(Text37, { style: [styles47.dayPillText, { color: colors.textSecondary }], children: dateSeparator }) }) }) : null,
|
|
20173
|
+
/* @__PURE__ */ jsx61(
|
|
19673
20174
|
MessageItem,
|
|
19674
20175
|
{
|
|
19675
20176
|
message: item,
|
|
@@ -19685,32 +20186,32 @@ function MessagesTab({ caseUuid, isCaseFinalized = false }) {
|
|
|
19685
20186
|
[messagesList, handleUploadForRequest, isSubmittingForRequest, isCaseFinalized, colors, t]
|
|
19686
20187
|
);
|
|
19687
20188
|
if (isLoading) {
|
|
19688
|
-
return /* @__PURE__ */
|
|
20189
|
+
return /* @__PURE__ */ jsx61(View46, { style: styles47.centered, children: /* @__PURE__ */ jsx61(ActivityIndicator7, { size: "large", color: colors.primary }) });
|
|
19689
20190
|
}
|
|
19690
20191
|
if (error) {
|
|
19691
|
-
return /* @__PURE__ */
|
|
20192
|
+
return /* @__PURE__ */ jsx61(View46, { style: styles47.centered, children: /* @__PURE__ */ jsx61(Text37, { style: [styles47.errorText, { color: colors.error }], children: t("errorLoadingMessages") || "Error loading messages" }) });
|
|
19692
20193
|
}
|
|
19693
|
-
return /* @__PURE__ */
|
|
19694
|
-
/* @__PURE__ */
|
|
19695
|
-
/* @__PURE__ */
|
|
19696
|
-
/* @__PURE__ */
|
|
20194
|
+
return /* @__PURE__ */ jsxs40(View46, { style: [styles47.container, { backgroundColor: colors.canvasSubtle }], children: [
|
|
20195
|
+
/* @__PURE__ */ jsxs40(View46, { style: styles47.secureRow, children: [
|
|
20196
|
+
/* @__PURE__ */ jsx61(Icon, { name: "lock", size: 12, color: colors.textSecondary, strokeWidth: 2.2 }),
|
|
20197
|
+
/* @__PURE__ */ jsx61(Text37, { style: [styles47.secureText, { color: colors.textSecondary }], children: isCaseFinalized ? t("caseFinalizedMessagesTooltip") || "This case is finalized \u2014 messages can no longer be sent." : `${t("private", { defaultValue: "Private" })} \xB7 ${t("senderPrivacyTeam") || "Privacy Team"}` })
|
|
19697
20198
|
] }),
|
|
19698
|
-
/* @__PURE__ */
|
|
20199
|
+
/* @__PURE__ */ jsx61(
|
|
19699
20200
|
FlatList2,
|
|
19700
20201
|
{
|
|
19701
20202
|
ref: flatListRef,
|
|
19702
|
-
style:
|
|
20203
|
+
style: styles47.list,
|
|
19703
20204
|
data: messagesList,
|
|
19704
20205
|
keyExtractor,
|
|
19705
20206
|
renderItem: renderMessage,
|
|
19706
20207
|
contentContainerStyle: [
|
|
19707
|
-
|
|
19708
|
-
messagesList.length ?
|
|
20208
|
+
styles47.messagesList,
|
|
20209
|
+
messagesList.length ? styles47.messagesListFill : styles47.messagesListCenter
|
|
19709
20210
|
],
|
|
19710
|
-
ListEmptyComponent: /* @__PURE__ */
|
|
19711
|
-
/* @__PURE__ */
|
|
19712
|
-
/* @__PURE__ */
|
|
19713
|
-
/* @__PURE__ */
|
|
20211
|
+
ListEmptyComponent: /* @__PURE__ */ jsxs40(View46, { style: styles47.emptyContainer, children: [
|
|
20212
|
+
/* @__PURE__ */ jsx61(View46, { style: [styles47.emptyIconWrap, { backgroundColor: colors.primarySoft }], children: /* @__PURE__ */ jsx61(Icon, { name: "messages-square", size: 28, color: colors.primary, strokeWidth: 2 }) }),
|
|
20213
|
+
/* @__PURE__ */ jsx61(Text37, { style: [styles47.emptyTitle, { color: colors.text }], children: t("noMessagesYet") || "No messages yet" }),
|
|
20214
|
+
/* @__PURE__ */ jsx61(Text37, { style: [styles47.emptySubtitle, { color: colors.textSecondary }], children: t("noMessagesYetSubtitle", "Start the conversation below") })
|
|
19714
20215
|
] }),
|
|
19715
20216
|
onContentSizeChange: () => {
|
|
19716
20217
|
var _a3;
|
|
@@ -19722,7 +20223,7 @@ function MessagesTab({ caseUuid, isCaseFinalized = false }) {
|
|
|
19722
20223
|
removeClippedSubviews: true
|
|
19723
20224
|
}
|
|
19724
20225
|
),
|
|
19725
|
-
/* @__PURE__ */
|
|
20226
|
+
/* @__PURE__ */ jsx61(
|
|
19726
20227
|
MessageComposer,
|
|
19727
20228
|
{
|
|
19728
20229
|
messageText,
|
|
@@ -19738,7 +20239,7 @@ function MessagesTab({ caseUuid, isCaseFinalized = false }) {
|
|
|
19738
20239
|
)
|
|
19739
20240
|
] });
|
|
19740
20241
|
}
|
|
19741
|
-
var
|
|
20242
|
+
var styles47 = StyleSheet48.create({
|
|
19742
20243
|
container: {
|
|
19743
20244
|
flex: 1
|
|
19744
20245
|
},
|
|
@@ -19821,16 +20322,16 @@ var styles45 = StyleSheet46.create({
|
|
|
19821
20322
|
});
|
|
19822
20323
|
|
|
19823
20324
|
// src/RedactoPrivacyCenter/components/CaseDetails/CaseDetailsPage.tsx
|
|
19824
|
-
import { jsx as
|
|
20325
|
+
import { jsx as jsx62, jsxs as jsxs41 } from "react/jsx-runtime";
|
|
19825
20326
|
function CaseDetailsPage() {
|
|
19826
20327
|
var _a3, _b;
|
|
19827
|
-
const { t } =
|
|
20328
|
+
const { t } = useTranslation27();
|
|
19828
20329
|
const { navigateTo, selectedCase, setSelectedCase, pendingCaseUuid } = useInternalNavigation();
|
|
19829
20330
|
const { accessToken, refreshToken, email, organizationId, workspaceId, onError, updateTokens } = useAuth();
|
|
19830
20331
|
const { colors } = useTheme();
|
|
19831
20332
|
const { keyboardOffset } = usePrivacyCenterInsets();
|
|
19832
20333
|
const requestTypeLabels = useRequestTypeLabels();
|
|
19833
|
-
const [activeTab, setActiveTab] =
|
|
20334
|
+
const [activeTab, setActiveTab] = useState24("request-details");
|
|
19834
20335
|
const authContext = useMemo20(() => ({
|
|
19835
20336
|
accessToken,
|
|
19836
20337
|
refreshToken,
|
|
@@ -19844,7 +20345,7 @@ function CaseDetailsPage() {
|
|
|
19844
20345
|
email != null ? email : void 0,
|
|
19845
20346
|
authContext
|
|
19846
20347
|
);
|
|
19847
|
-
|
|
20348
|
+
useEffect19(() => {
|
|
19848
20349
|
if (!cases) return;
|
|
19849
20350
|
if (cases.length === 0) {
|
|
19850
20351
|
navigateTo("form");
|
|
@@ -19858,33 +20359,33 @@ function CaseDetailsPage() {
|
|
|
19858
20359
|
navigateTo("form");
|
|
19859
20360
|
}
|
|
19860
20361
|
}, [cases, targetUuid, setSelectedCase, navigateTo]);
|
|
19861
|
-
|
|
20362
|
+
useEffect19(() => {
|
|
19862
20363
|
if (!selectedCase && !targetUuid && !isLoading) {
|
|
19863
20364
|
navigateTo("form");
|
|
19864
20365
|
}
|
|
19865
20366
|
}, [selectedCase, targetUuid, isLoading, navigateTo]);
|
|
19866
20367
|
if (!selectedCase) {
|
|
19867
|
-
return /* @__PURE__ */
|
|
20368
|
+
return /* @__PURE__ */ jsx62(View47, { style: styles48.centered, children: isLoading ? /* @__PURE__ */ jsx62(ActivityIndicator8, { size: "large", color: colors.primary }) : /* @__PURE__ */ jsx62(Text38, { style: [styles48.emptyText, { color: colors.textSecondary }], children: t("noCasesYet") || "No case selected" }) });
|
|
19868
20369
|
}
|
|
19869
20370
|
const requestTypeLabel = requestTypeLabels[(_b = selectedCase.request_type) == null ? void 0 : _b.toUpperCase()] || selectedCase.request_type_display || formatCaseStatus(selectedCase.request_type || "");
|
|
19870
20371
|
const tabs = [
|
|
19871
20372
|
{ id: "request-details", label: t("requestDetails") || "Request Details" },
|
|
19872
20373
|
{ id: "messages", label: t("messages") || "Messages" }
|
|
19873
20374
|
];
|
|
19874
|
-
return /* @__PURE__ */
|
|
20375
|
+
return /* @__PURE__ */ jsxs41(
|
|
19875
20376
|
KeyboardAvoidingViewCompat,
|
|
19876
20377
|
{
|
|
19877
|
-
style: [
|
|
20378
|
+
style: [styles48.container, { backgroundColor: colors.canvasSubtle }],
|
|
19878
20379
|
behavior: "padding",
|
|
19879
20380
|
keyboardVerticalOffset: Platform7.OS === "ios" ? keyboardOffset : 0,
|
|
19880
20381
|
children: [
|
|
19881
|
-
/* @__PURE__ */
|
|
19882
|
-
/* @__PURE__ */
|
|
19883
|
-
/* @__PURE__ */
|
|
19884
|
-
/* @__PURE__ */
|
|
19885
|
-
/* @__PURE__ */
|
|
19886
|
-
/* @__PURE__ */
|
|
19887
|
-
/* @__PURE__ */
|
|
20382
|
+
/* @__PURE__ */ jsxs41(View47, { style: styles48.headerWrap, children: [
|
|
20383
|
+
/* @__PURE__ */ jsx62(View47, { style: [styles48.heroCard, elevation.card, { backgroundColor: colors.surface }], children: /* @__PURE__ */ jsxs41(View47, { style: styles48.heroInner, children: [
|
|
20384
|
+
/* @__PURE__ */ jsx62(View47, { style: [styles48.accent, { backgroundColor: getCaseStatusColor(selectedCase.status, colors) }] }),
|
|
20385
|
+
/* @__PURE__ */ jsxs41(View47, { style: styles48.heroBody, children: [
|
|
20386
|
+
/* @__PURE__ */ jsxs41(View47, { style: styles48.heroTopRow, children: [
|
|
20387
|
+
/* @__PURE__ */ jsx62(View47, { style: [styles48.typeChip, { backgroundColor: withAlpha(getRequestTypeColor(selectedCase.request_type, colors), 0.12) }], children: /* @__PURE__ */ jsx62(Text38, { style: [styles48.typeChipText, { color: getRequestTypeColor(selectedCase.request_type, colors) }], numberOfLines: 1, children: requestTypeLabel }) }),
|
|
20388
|
+
/* @__PURE__ */ jsx62(
|
|
19888
20389
|
PCBadge,
|
|
19889
20390
|
{
|
|
19890
20391
|
status: getCaseStatusVariant(selectedCase.status),
|
|
@@ -19893,10 +20394,10 @@ function CaseDetailsPage() {
|
|
|
19893
20394
|
}
|
|
19894
20395
|
)
|
|
19895
20396
|
] }),
|
|
19896
|
-
/* @__PURE__ */
|
|
20397
|
+
/* @__PURE__ */ jsx62(Text38, { style: [styles48.caseId, { color: colors.text }], numberOfLines: 1, children: selectedCase.case_id })
|
|
19897
20398
|
] })
|
|
19898
20399
|
] }) }),
|
|
19899
|
-
/* @__PURE__ */
|
|
20400
|
+
/* @__PURE__ */ jsx62(
|
|
19900
20401
|
Segmented,
|
|
19901
20402
|
{
|
|
19902
20403
|
options: tabs.map((tab) => ({ value: tab.id, label: tab.label })),
|
|
@@ -19905,18 +20406,18 @@ function CaseDetailsPage() {
|
|
|
19905
20406
|
}
|
|
19906
20407
|
)
|
|
19907
20408
|
] }),
|
|
19908
|
-
/* @__PURE__ */
|
|
20409
|
+
/* @__PURE__ */ jsx62(View47, { style: styles48.tabContent, children: activeTab === "request-details" ? /* @__PURE__ */ jsx62(
|
|
19909
20410
|
RequestDetailsTab,
|
|
19910
20411
|
{
|
|
19911
20412
|
selectedCase,
|
|
19912
20413
|
requestTypeLabel
|
|
19913
20414
|
}
|
|
19914
|
-
) : /* @__PURE__ */
|
|
20415
|
+
) : /* @__PURE__ */ jsx62(MessagesTab, { caseUuid: selectedCase.uuid, isCaseFinalized: isTerminalCaseStatus(selectedCase.status) }) })
|
|
19915
20416
|
]
|
|
19916
20417
|
}
|
|
19917
20418
|
);
|
|
19918
20419
|
}
|
|
19919
|
-
var
|
|
20420
|
+
var styles48 = StyleSheet49.create({
|
|
19920
20421
|
container: {
|
|
19921
20422
|
flex: 1
|
|
19922
20423
|
},
|
|
@@ -19981,36 +20482,36 @@ var styles46 = StyleSheet47.create({
|
|
|
19981
20482
|
});
|
|
19982
20483
|
|
|
19983
20484
|
// src/RedactoPrivacyCenter/components/NotificationHub/NotificationsScreen.tsx
|
|
19984
|
-
import { useCallback as
|
|
19985
|
-
import { FlatList as FlatList3, RefreshControl as RefreshControl5, StyleSheet as
|
|
19986
|
-
import { useTranslation as
|
|
20485
|
+
import { useCallback as useCallback14, useEffect as useEffect20, useMemo as useMemo23, useRef as useRef12, useState as useState25 } from "react";
|
|
20486
|
+
import { FlatList as FlatList3, RefreshControl as RefreshControl5, StyleSheet as StyleSheet54, Text as Text42, TouchableOpacity as TouchableOpacity22, View as View51 } from "react-native";
|
|
20487
|
+
import { useTranslation as useTranslation29 } from "react-i18next";
|
|
19987
20488
|
|
|
19988
20489
|
// src/RedactoPrivacyCenter/components/NotificationHub/NotificationRow.tsx
|
|
19989
|
-
import { StyleSheet as
|
|
19990
|
-
import { useTranslation as
|
|
20490
|
+
import { StyleSheet as StyleSheet53, Text as Text41, TouchableOpacity as TouchableOpacity21, View as View50 } from "react-native";
|
|
20491
|
+
import { useTranslation as useTranslation28 } from "react-i18next";
|
|
19991
20492
|
|
|
19992
20493
|
// src/RedactoPrivacyCenter/components/NotificationHub/NotificationCTAButton.tsx
|
|
19993
|
-
import { StyleSheet as
|
|
19994
|
-
import { jsx as
|
|
20494
|
+
import { StyleSheet as StyleSheet50, Text as Text39, TouchableOpacity as TouchableOpacity19 } from "react-native";
|
|
20495
|
+
import { jsx as jsx63 } from "react/jsx-runtime";
|
|
19995
20496
|
var NotificationCTAButton = ({ cta, onPress }) => {
|
|
19996
20497
|
const { colors } = useTheme();
|
|
19997
20498
|
const tone = cta.style === "danger" ? colors.error : colors.primary;
|
|
19998
20499
|
const isPrimary = cta.style === "primary" || cta.style === "danger";
|
|
19999
|
-
return /* @__PURE__ */
|
|
20000
|
-
|
|
20500
|
+
return /* @__PURE__ */ jsx63(
|
|
20501
|
+
TouchableOpacity19,
|
|
20001
20502
|
{
|
|
20002
20503
|
onPress,
|
|
20003
20504
|
activeOpacity: 0.7,
|
|
20004
20505
|
style: [
|
|
20005
|
-
|
|
20506
|
+
styles49.button,
|
|
20006
20507
|
isPrimary ? { backgroundColor: tone } : { backgroundColor: colors.primarySoft }
|
|
20007
20508
|
],
|
|
20008
20509
|
accessibilityRole: "button",
|
|
20009
|
-
children: /* @__PURE__ */
|
|
20510
|
+
children: /* @__PURE__ */ jsx63(Text39, { style: [styles49.label, { color: isPrimary ? colors.primaryText : colors.primary }], numberOfLines: 1, children: cta.label })
|
|
20010
20511
|
}
|
|
20011
20512
|
);
|
|
20012
20513
|
};
|
|
20013
|
-
var
|
|
20514
|
+
var styles49 = StyleSheet50.create({
|
|
20014
20515
|
button: {
|
|
20015
20516
|
paddingHorizontal: spacing.lg,
|
|
20016
20517
|
paddingVertical: spacing.sm,
|
|
@@ -20025,8 +20526,8 @@ var styles47 = StyleSheet48.create({
|
|
|
20025
20526
|
});
|
|
20026
20527
|
|
|
20027
20528
|
// src/RedactoPrivacyCenter/components/NotificationHub/NotificationIcon.tsx
|
|
20028
|
-
import { StyleSheet as
|
|
20029
|
-
import { jsx as
|
|
20529
|
+
import { StyleSheet as StyleSheet51, View as View48 } from "react-native";
|
|
20530
|
+
import { jsx as jsx64 } from "react/jsx-runtime";
|
|
20030
20531
|
var CATEGORY_ICON = {
|
|
20031
20532
|
guardian: "user-round",
|
|
20032
20533
|
consent: "clock",
|
|
@@ -20039,18 +20540,18 @@ var NotificationIcon = ({ notificationType, size = 40 }) => {
|
|
|
20039
20540
|
var _a3;
|
|
20040
20541
|
const category = (_a3 = TYPE_TO_ICON_CATEGORY[notificationType]) != null ? _a3 : "system";
|
|
20041
20542
|
const color = ICON_COLORS[category];
|
|
20042
|
-
return /* @__PURE__ */
|
|
20043
|
-
|
|
20543
|
+
return /* @__PURE__ */ jsx64(
|
|
20544
|
+
View48,
|
|
20044
20545
|
{
|
|
20045
20546
|
style: [
|
|
20046
|
-
|
|
20547
|
+
styles50.wrap,
|
|
20047
20548
|
{ width: size, height: size, borderRadius: radii.md, backgroundColor: withAlpha(color, 0.13) }
|
|
20048
20549
|
],
|
|
20049
|
-
children: /* @__PURE__ */
|
|
20550
|
+
children: /* @__PURE__ */ jsx64(Icon, { name: CATEGORY_ICON[category], size: Math.round(size * 0.5), color, strokeWidth: 2 })
|
|
20050
20551
|
}
|
|
20051
20552
|
);
|
|
20052
20553
|
};
|
|
20053
|
-
var
|
|
20554
|
+
var styles50 = StyleSheet51.create({
|
|
20054
20555
|
wrap: {
|
|
20055
20556
|
alignItems: "center",
|
|
20056
20557
|
justifyContent: "center"
|
|
@@ -20059,8 +20560,8 @@ var styles48 = StyleSheet49.create({
|
|
|
20059
20560
|
|
|
20060
20561
|
// src/RedactoPrivacyCenter/components/NotificationHub/SwipeableRow.tsx
|
|
20061
20562
|
import { useMemo as useMemo21, useRef as useRef11 } from "react";
|
|
20062
|
-
import { Animated as Animated13, PanResponder as PanResponder2, StyleSheet as
|
|
20063
|
-
import { Fragment as Fragment14, jsx as
|
|
20563
|
+
import { Animated as Animated13, PanResponder as PanResponder2, StyleSheet as StyleSheet52, Text as Text40, TouchableOpacity as TouchableOpacity20, View as View49 } from "react-native";
|
|
20564
|
+
import { Fragment as Fragment14, jsx as jsx65, jsxs as jsxs42 } from "react/jsx-runtime";
|
|
20064
20565
|
var ACTION_WIDTH = 80;
|
|
20065
20566
|
var CLAIM_THRESHOLD = 8;
|
|
20066
20567
|
var SwipeableRow = ({ actions, background, children }) => {
|
|
@@ -20099,37 +20600,37 @@ var SwipeableRow = ({ actions, background, children }) => {
|
|
|
20099
20600
|
[maxOpen]
|
|
20100
20601
|
);
|
|
20101
20602
|
if (actions.length === 0) {
|
|
20102
|
-
return /* @__PURE__ */
|
|
20603
|
+
return /* @__PURE__ */ jsx65(Fragment14, { children });
|
|
20103
20604
|
}
|
|
20104
20605
|
const runAction = (action) => {
|
|
20105
20606
|
settle(0);
|
|
20106
20607
|
action.onPress();
|
|
20107
20608
|
};
|
|
20108
|
-
return /* @__PURE__ */
|
|
20109
|
-
/* @__PURE__ */
|
|
20110
|
-
|
|
20609
|
+
return /* @__PURE__ */ jsxs42(View49, { style: styles51.root, children: [
|
|
20610
|
+
/* @__PURE__ */ jsx65(View49, { style: styles51.actionsLayer, pointerEvents: "box-none", children: actions.map((action) => /* @__PURE__ */ jsxs42(
|
|
20611
|
+
TouchableOpacity20,
|
|
20111
20612
|
{
|
|
20112
|
-
style: [
|
|
20613
|
+
style: [styles51.action, { width: ACTION_WIDTH, backgroundColor: toneColor2[action.tone] }],
|
|
20113
20614
|
onPress: () => runAction(action),
|
|
20114
20615
|
activeOpacity: 0.85,
|
|
20115
20616
|
accessibilityRole: "button",
|
|
20116
20617
|
accessibilityLabel: action.label,
|
|
20117
20618
|
children: [
|
|
20118
|
-
/* @__PURE__ */
|
|
20119
|
-
/* @__PURE__ */
|
|
20619
|
+
/* @__PURE__ */ jsx65(Icon, { name: action.icon, size: 20, color: colors.primaryText, strokeWidth: 2.2 }),
|
|
20620
|
+
/* @__PURE__ */ jsx65(Text40, { style: [styles51.actionLabel, { color: colors.primaryText }], numberOfLines: 1, children: action.label })
|
|
20120
20621
|
]
|
|
20121
20622
|
},
|
|
20122
20623
|
action.key
|
|
20123
20624
|
)) }),
|
|
20124
|
-
/* @__PURE__ */
|
|
20625
|
+
/* @__PURE__ */ jsx65(Animated13.View, { style: [{ backgroundColor: background, transform: [{ translateX }] }], ...panResponder.panHandlers, children })
|
|
20125
20626
|
] });
|
|
20126
20627
|
};
|
|
20127
|
-
var
|
|
20628
|
+
var styles51 = StyleSheet52.create({
|
|
20128
20629
|
root: {
|
|
20129
20630
|
position: "relative"
|
|
20130
20631
|
},
|
|
20131
20632
|
actionsLayer: {
|
|
20132
|
-
...
|
|
20633
|
+
...StyleSheet52.absoluteFillObject,
|
|
20133
20634
|
flexDirection: "row",
|
|
20134
20635
|
justifyContent: "flex-end"
|
|
20135
20636
|
},
|
|
@@ -20162,10 +20663,10 @@ var formatTimeAgo = (dateString, t) => {
|
|
|
20162
20663
|
};
|
|
20163
20664
|
|
|
20164
20665
|
// src/RedactoPrivacyCenter/components/NotificationHub/NotificationRow.tsx
|
|
20165
|
-
import { Fragment as Fragment15, jsx as
|
|
20666
|
+
import { Fragment as Fragment15, jsx as jsx66, jsxs as jsxs43 } from "react/jsx-runtime";
|
|
20166
20667
|
var NotificationRow = ({ notification, onPress, onMarkRead, onAcknowledge }) => {
|
|
20167
20668
|
var _a3, _b;
|
|
20168
|
-
const { t } =
|
|
20669
|
+
const { t } = useTranslation28();
|
|
20169
20670
|
const { colors } = useTheme();
|
|
20170
20671
|
const isUnread = !notification.is_read;
|
|
20171
20672
|
const statusLabel = notification.status_label_display || notification.status_label;
|
|
@@ -20192,35 +20693,35 @@ var NotificationRow = ({ notification, onPress, onMarkRead, onAcknowledge }) =>
|
|
|
20192
20693
|
onPress: onAcknowledge
|
|
20193
20694
|
});
|
|
20194
20695
|
}
|
|
20195
|
-
return /* @__PURE__ */
|
|
20196
|
-
isUnread ? /* @__PURE__ */
|
|
20197
|
-
/* @__PURE__ */
|
|
20198
|
-
/* @__PURE__ */
|
|
20199
|
-
/* @__PURE__ */
|
|
20200
|
-
/* @__PURE__ */
|
|
20201
|
-
|
|
20696
|
+
return /* @__PURE__ */ jsx66(SwipeableRow, { actions, background: colors.surface, children: /* @__PURE__ */ jsxs43(TouchableOpacity21, { onPress, activeOpacity: 0.6, accessibilityRole: "button", style: styles52.row, children: [
|
|
20697
|
+
isUnread ? /* @__PURE__ */ jsx66(View50, { style: [styles52.accent, { backgroundColor: accent }] }) : null,
|
|
20698
|
+
/* @__PURE__ */ jsx66(NotificationIcon, { notificationType: notification.notification_type, size: 36 }),
|
|
20699
|
+
/* @__PURE__ */ jsxs43(View50, { style: styles52.content, children: [
|
|
20700
|
+
/* @__PURE__ */ jsxs43(View50, { style: styles52.titleRow, children: [
|
|
20701
|
+
/* @__PURE__ */ jsx66(
|
|
20702
|
+
Text41,
|
|
20202
20703
|
{
|
|
20203
|
-
style: [
|
|
20704
|
+
style: [styles52.title, { color: colors.text, fontWeight: isUnread ? "700" : "600" }],
|
|
20204
20705
|
numberOfLines: 2,
|
|
20205
20706
|
children: notification.title
|
|
20206
20707
|
}
|
|
20207
20708
|
),
|
|
20208
|
-
isUnread ? /* @__PURE__ */
|
|
20709
|
+
isUnread ? /* @__PURE__ */ jsx66(View50, { style: [styles52.unreadDot, { backgroundColor: colors.primary }] }) : null
|
|
20209
20710
|
] }),
|
|
20210
|
-
/* @__PURE__ */
|
|
20211
|
-
statusLabel ? /* @__PURE__ */
|
|
20212
|
-
/* @__PURE__ */
|
|
20213
|
-
/* @__PURE__ */
|
|
20214
|
-
/* @__PURE__ */
|
|
20711
|
+
/* @__PURE__ */ jsxs43(View50, { style: styles52.metaRow, children: [
|
|
20712
|
+
statusLabel ? /* @__PURE__ */ jsxs43(Fragment15, { children: [
|
|
20713
|
+
/* @__PURE__ */ jsx66(View50, { style: [styles52.statusDot, { backgroundColor: accent }] }),
|
|
20714
|
+
/* @__PURE__ */ jsx66(Text41, { style: [styles52.metaText, { color: colors.textSecondary }], numberOfLines: 1, children: statusLabel }),
|
|
20715
|
+
/* @__PURE__ */ jsx66(Text41, { style: [styles52.metaDivider, { color: colors.textSecondary }], children: "\xB7" })
|
|
20215
20716
|
] }) : null,
|
|
20216
|
-
/* @__PURE__ */
|
|
20717
|
+
/* @__PURE__ */ jsx66(Text41, { style: [styles52.metaText, { color: colors.textSecondary }], children: formatTimeAgo(notification.created_at, t) })
|
|
20217
20718
|
] }),
|
|
20218
|
-
showAcknowledge && ackCta ? /* @__PURE__ */
|
|
20719
|
+
showAcknowledge && ackCta ? /* @__PURE__ */ jsx66(View50, { style: styles52.ackWrap, children: /* @__PURE__ */ jsx66(NotificationCTAButton, { cta: ackCta, onPress: onAcknowledge }) }) : null
|
|
20219
20720
|
] }),
|
|
20220
|
-
/* @__PURE__ */
|
|
20721
|
+
/* @__PURE__ */ jsx66(View50, { style: styles52.chevron, children: /* @__PURE__ */ jsx66(Icon, { name: "chevron-right", size: 18, color: colors.textSecondary }) })
|
|
20221
20722
|
] }) });
|
|
20222
20723
|
};
|
|
20223
|
-
var
|
|
20724
|
+
var styles52 = StyleSheet53.create({
|
|
20224
20725
|
row: {
|
|
20225
20726
|
flexDirection: "row",
|
|
20226
20727
|
alignItems: "center",
|
|
@@ -20283,7 +20784,7 @@ var styles50 = StyleSheet51.create({
|
|
|
20283
20784
|
});
|
|
20284
20785
|
|
|
20285
20786
|
// src/RedactoPrivacyCenter/components/NotificationHub/useNotificationActions.ts
|
|
20286
|
-
import { useCallback as
|
|
20787
|
+
import { useCallback as useCallback13, useMemo as useMemo22 } from "react";
|
|
20287
20788
|
import { Linking as Linking2 } from "react-native";
|
|
20288
20789
|
var useNotificationActions = () => {
|
|
20289
20790
|
const { navigateTo, setSelectedCase } = useInternalNavigation();
|
|
@@ -20294,14 +20795,14 @@ var useNotificationActions = () => {
|
|
|
20294
20795
|
() => ({ accessToken, refreshToken, onError, updateTokens }),
|
|
20295
20796
|
[accessToken, refreshToken, onError, updateTokens]
|
|
20296
20797
|
);
|
|
20297
|
-
const hasAcknowledgeCTA =
|
|
20798
|
+
const hasAcknowledgeCTA = useCallback13(
|
|
20298
20799
|
(notification) => {
|
|
20299
20800
|
var _a3, _b;
|
|
20300
20801
|
return (_b = (_a3 = notification.ctas) == null ? void 0 : _a3.some((cta) => cta.action_type === "acknowledge")) != null ? _b : false;
|
|
20301
20802
|
},
|
|
20302
20803
|
[]
|
|
20303
20804
|
);
|
|
20304
|
-
const handleMarkRead =
|
|
20805
|
+
const handleMarkRead = useCallback13(
|
|
20305
20806
|
async (notificationUuid) => {
|
|
20306
20807
|
if (!organizationId || !workspaceId) return false;
|
|
20307
20808
|
const result = await markNotificationRead(organizationId, workspaceId, notificationUuid, authContext, consentClient);
|
|
@@ -20309,12 +20810,12 @@ var useNotificationActions = () => {
|
|
|
20309
20810
|
},
|
|
20310
20811
|
[organizationId, workspaceId, authContext, consentClient]
|
|
20311
20812
|
);
|
|
20312
|
-
const handleMarkAllRead =
|
|
20813
|
+
const handleMarkAllRead = useCallback13(async () => {
|
|
20313
20814
|
if (!organizationId || !workspaceId) return false;
|
|
20314
20815
|
const result = await markAllRead(organizationId, workspaceId, authContext, consentClient);
|
|
20315
20816
|
return result !== null;
|
|
20316
20817
|
}, [organizationId, workspaceId, authContext, consentClient]);
|
|
20317
|
-
const handleAcknowledge =
|
|
20818
|
+
const handleAcknowledge = useCallback13(
|
|
20318
20819
|
async (notificationUuid) => {
|
|
20319
20820
|
if (!organizationId || !workspaceId) return false;
|
|
20320
20821
|
const result = await acknowledgeNotification(organizationId, workspaceId, notificationUuid, authContext, consentClient);
|
|
@@ -20322,7 +20823,7 @@ var useNotificationActions = () => {
|
|
|
20322
20823
|
},
|
|
20323
20824
|
[organizationId, workspaceId, authContext, consentClient]
|
|
20324
20825
|
);
|
|
20325
|
-
const handleCTAClick =
|
|
20826
|
+
const handleCTAClick = useCallback13(
|
|
20326
20827
|
async (notification, cta) => {
|
|
20327
20828
|
var _a3;
|
|
20328
20829
|
if (cta.action_type === "acknowledge") {
|
|
@@ -20379,7 +20880,7 @@ var useNotificationActions = () => {
|
|
|
20379
20880
|
};
|
|
20380
20881
|
|
|
20381
20882
|
// src/RedactoPrivacyCenter/components/NotificationHub/NotificationsScreen.tsx
|
|
20382
|
-
import { Fragment as Fragment16, jsx as
|
|
20883
|
+
import { Fragment as Fragment16, jsx as jsx67, jsxs as jsxs44 } from "react/jsx-runtime";
|
|
20383
20884
|
var EMPTY_SUMMARY = { total: 0, unread: 0, action_needed: 0, acknowledged: 0 };
|
|
20384
20885
|
var READ_FILTER_TO_PARAM = {
|
|
20385
20886
|
all: void 0,
|
|
@@ -20387,7 +20888,7 @@ var READ_FILTER_TO_PARAM = {
|
|
|
20387
20888
|
read: true
|
|
20388
20889
|
};
|
|
20389
20890
|
var NotificationsScreen = () => {
|
|
20390
|
-
const { t } =
|
|
20891
|
+
const { t } = useTranslation29();
|
|
20391
20892
|
const { colors } = useTheme();
|
|
20392
20893
|
const { langParam } = useCurrentLanguage();
|
|
20393
20894
|
const { listBottom } = usePrivacyCenterInsets();
|
|
@@ -20404,15 +20905,15 @@ var NotificationsScreen = () => {
|
|
|
20404
20905
|
handleAcknowledge,
|
|
20405
20906
|
handleCTAClick
|
|
20406
20907
|
} = useNotificationActions();
|
|
20407
|
-
const [notifications, setNotifications] =
|
|
20408
|
-
const [summary, setSummary] =
|
|
20409
|
-
const [activeTab, setActiveTab] =
|
|
20410
|
-
const [readFilter, setReadFilter] =
|
|
20411
|
-
const [isLoading, setIsLoading] =
|
|
20412
|
-
const [isRefreshing2, setIsRefreshing] =
|
|
20413
|
-
const [filterOpen, setFilterOpen] =
|
|
20908
|
+
const [notifications, setNotifications] = useState25([]);
|
|
20909
|
+
const [summary, setSummary] = useState25(EMPTY_SUMMARY);
|
|
20910
|
+
const [activeTab, setActiveTab] = useState25("all");
|
|
20911
|
+
const [readFilter, setReadFilter] = useState25("all");
|
|
20912
|
+
const [isLoading, setIsLoading] = useState25(true);
|
|
20913
|
+
const [isRefreshing2, setIsRefreshing] = useState25(false);
|
|
20914
|
+
const [filterOpen, setFilterOpen] = useState25(false);
|
|
20414
20915
|
const isFiltered = activeTab !== "all" || readFilter !== "all";
|
|
20415
|
-
const loadNotifications =
|
|
20916
|
+
const loadNotifications = useCallback14(
|
|
20416
20917
|
async (includeSummary = false, silent = false) => {
|
|
20417
20918
|
if (!organizationId || !workspaceId) return;
|
|
20418
20919
|
if (!silent) setIsLoading(true);
|
|
@@ -20442,18 +20943,21 @@ var NotificationsScreen = () => {
|
|
|
20442
20943
|
},
|
|
20443
20944
|
[organizationId, workspaceId, activeTab, readFilter, authContext, consentClient, langParam]
|
|
20444
20945
|
);
|
|
20445
|
-
|
|
20946
|
+
useEffect20(() => {
|
|
20446
20947
|
loadNotifications(true);
|
|
20447
20948
|
}, [loadNotifications]);
|
|
20448
20949
|
const loadRef = useRef12(loadNotifications);
|
|
20449
20950
|
loadRef.current = loadNotifications;
|
|
20450
|
-
|
|
20951
|
+
const authContextRef = useRef12(authContext);
|
|
20952
|
+
authContextRef.current = authContext;
|
|
20953
|
+
useEffect20(() => {
|
|
20451
20954
|
const id = setInterval(() => {
|
|
20955
|
+
if (isRefreshBlocked(authContextRef.current)) return;
|
|
20452
20956
|
loadRef.current(false, true);
|
|
20453
20957
|
}, POLL_INTERVAL);
|
|
20454
20958
|
return () => clearInterval(id);
|
|
20455
20959
|
}, []);
|
|
20456
|
-
const onNotificationClick =
|
|
20960
|
+
const onNotificationClick = useCallback14(
|
|
20457
20961
|
async (notification) => {
|
|
20458
20962
|
const shouldMarkRead = !notification.is_read;
|
|
20459
20963
|
const shouldAutoAcknowledge = !notification.is_acknowledged && !hasAcknowledgeCTA(notification);
|
|
@@ -20474,7 +20978,7 @@ var NotificationsScreen = () => {
|
|
|
20474
20978
|
},
|
|
20475
20979
|
[hasAcknowledgeCTA, handleAcknowledge, handleMarkRead]
|
|
20476
20980
|
);
|
|
20477
|
-
const onRowPress =
|
|
20981
|
+
const onRowPress = useCallback14(
|
|
20478
20982
|
async (notification) => {
|
|
20479
20983
|
var _a3;
|
|
20480
20984
|
const linkCta = (_a3 = notification.ctas) == null ? void 0 : _a3.find((cta) => cta.action_type === "link" && cta.url);
|
|
@@ -20492,7 +20996,7 @@ var NotificationsScreen = () => {
|
|
|
20492
20996
|
},
|
|
20493
20997
|
[handleCTAClick, onNotificationClick]
|
|
20494
20998
|
);
|
|
20495
|
-
const onMarkReadRow =
|
|
20999
|
+
const onMarkReadRow = useCallback14(
|
|
20496
21000
|
async (notification) => {
|
|
20497
21001
|
if (notification.is_read) return;
|
|
20498
21002
|
const ok = await handleMarkRead(notification.uuid);
|
|
@@ -20502,7 +21006,7 @@ var NotificationsScreen = () => {
|
|
|
20502
21006
|
},
|
|
20503
21007
|
[handleMarkRead]
|
|
20504
21008
|
);
|
|
20505
|
-
const onAcknowledgeRow =
|
|
21009
|
+
const onAcknowledgeRow = useCallback14(
|
|
20506
21010
|
async (notification) => {
|
|
20507
21011
|
if (notification.is_acknowledged) return;
|
|
20508
21012
|
const ok = await handleAcknowledge(notification.uuid);
|
|
@@ -20519,7 +21023,14 @@ var NotificationsScreen = () => {
|
|
|
20519
21023
|
},
|
|
20520
21024
|
[handleAcknowledge]
|
|
20521
21025
|
);
|
|
20522
|
-
const
|
|
21026
|
+
const onMarkAllRead = useCallback14(async () => {
|
|
21027
|
+
const ok = await handleMarkAllRead();
|
|
21028
|
+
if (!ok) return;
|
|
21029
|
+
setNotifications((prev) => prev.map((item) => ({ ...item, is_read: true })));
|
|
21030
|
+
setSummary((prev) => ({ ...prev, unread: 0 }));
|
|
21031
|
+
if (readFilter !== "all") loadNotifications(true, true);
|
|
21032
|
+
}, [handleMarkAllRead, readFilter, loadNotifications]);
|
|
21033
|
+
const onRefresh = useCallback14(() => {
|
|
20523
21034
|
setIsRefreshing(true);
|
|
20524
21035
|
loadNotifications(true, true);
|
|
20525
21036
|
}, [loadNotifications]);
|
|
@@ -20527,14 +21038,14 @@ var NotificationsScreen = () => {
|
|
|
20527
21038
|
() => groupByTime(notifications, (item) => item.created_at, classifyTime),
|
|
20528
21039
|
[notifications, classifyTime]
|
|
20529
21040
|
);
|
|
20530
|
-
const header = /* @__PURE__ */
|
|
20531
|
-
/* @__PURE__ */
|
|
20532
|
-
/* @__PURE__ */
|
|
20533
|
-
/* @__PURE__ */
|
|
20534
|
-
|
|
21041
|
+
const header = /* @__PURE__ */ jsxs44(View51, { style: styles53.header, children: [
|
|
21042
|
+
/* @__PURE__ */ jsxs44(View51, { style: styles53.titleRow, children: [
|
|
21043
|
+
/* @__PURE__ */ jsx67(Text42, { style: [styles53.screenTitle, { color: colors.text }], children: t("notifications", { defaultValue: "Notifications" }) }),
|
|
21044
|
+
/* @__PURE__ */ jsx67(
|
|
21045
|
+
TouchableOpacity22,
|
|
20535
21046
|
{
|
|
20536
21047
|
style: [
|
|
20537
|
-
|
|
21048
|
+
styles53.filterBtn,
|
|
20538
21049
|
{
|
|
20539
21050
|
backgroundColor: isFiltered ? colors.primarySoft : colors.surface,
|
|
20540
21051
|
borderColor: isFiltered ? colors.primary : colors.border
|
|
@@ -20543,30 +21054,30 @@ var NotificationsScreen = () => {
|
|
|
20543
21054
|
onPress: () => setFilterOpen(true),
|
|
20544
21055
|
accessibilityRole: "button",
|
|
20545
21056
|
accessibilityLabel: t("filter") || "Filter",
|
|
20546
|
-
children: /* @__PURE__ */
|
|
21057
|
+
children: /* @__PURE__ */ jsx67(Icon, { name: "sliders-horizontal", size: 18, color: isFiltered ? colors.primary : colors.text })
|
|
20547
21058
|
}
|
|
20548
21059
|
)
|
|
20549
21060
|
] }),
|
|
20550
|
-
summary.unread > 0 ? /* @__PURE__ */
|
|
20551
|
-
/* @__PURE__ */
|
|
20552
|
-
/* @__PURE__ */
|
|
21061
|
+
summary.unread > 0 ? /* @__PURE__ */ jsxs44(TouchableOpacity22, { style: styles53.markAllBtn, onPress: onMarkAllRead, activeOpacity: 0.7, accessibilityRole: "button", children: [
|
|
21062
|
+
/* @__PURE__ */ jsx67(Icon, { name: "check-check", size: 15, color: colors.primary, strokeWidth: 2.2 }),
|
|
21063
|
+
/* @__PURE__ */ jsx67(Text42, { style: [styles53.markAllLabel, { color: colors.primary }], children: t("markAllAsRead") || "Mark all as read" })
|
|
20553
21064
|
] }) : null
|
|
20554
21065
|
] });
|
|
20555
|
-
return /* @__PURE__ */
|
|
20556
|
-
/* @__PURE__ */
|
|
21066
|
+
return /* @__PURE__ */ jsxs44(Fragment16, { children: [
|
|
21067
|
+
/* @__PURE__ */ jsx67(
|
|
20557
21068
|
FlatList3,
|
|
20558
21069
|
{
|
|
20559
21070
|
data: sections,
|
|
20560
21071
|
keyExtractor: (section2) => section2.key,
|
|
20561
|
-
style: [
|
|
20562
|
-
contentContainerStyle: [
|
|
21072
|
+
style: [styles53.list, { backgroundColor: colors.canvasSubtle }],
|
|
21073
|
+
contentContainerStyle: [styles53.listContent, { flexGrow: 1, paddingBottom: listBottom }],
|
|
20563
21074
|
ListHeaderComponent: header,
|
|
20564
21075
|
showsVerticalScrollIndicator: false,
|
|
20565
|
-
refreshControl: /* @__PURE__ */
|
|
20566
|
-
renderItem: ({ item: section2 }) => /* @__PURE__ */
|
|
20567
|
-
/* @__PURE__ */
|
|
20568
|
-
/* @__PURE__ */
|
|
20569
|
-
/* @__PURE__ */
|
|
21076
|
+
refreshControl: /* @__PURE__ */ jsx67(RefreshControl5, { refreshing: isRefreshing2, onRefresh, tintColor: colors.primary, colors: [colors.primary] }),
|
|
21077
|
+
renderItem: ({ item: section2 }) => /* @__PURE__ */ jsxs44(View51, { style: styles53.section, children: [
|
|
21078
|
+
/* @__PURE__ */ jsx67(Text42, { style: [styles53.sectionTitle, { color: colors.textSecondary }], children: section2.title }),
|
|
21079
|
+
/* @__PURE__ */ jsx67(View51, { style: [styles53.cardShadow, elevation.card], children: /* @__PURE__ */ jsx67(View51, { style: [styles53.cardClip, { backgroundColor: colors.surface }], children: section2.data.map((item, index) => /* @__PURE__ */ jsxs44(View51, { children: [
|
|
21080
|
+
/* @__PURE__ */ jsx67(
|
|
20570
21081
|
NotificationRow,
|
|
20571
21082
|
{
|
|
20572
21083
|
notification: item,
|
|
@@ -20575,19 +21086,19 @@ var NotificationsScreen = () => {
|
|
|
20575
21086
|
onAcknowledge: () => onAcknowledgeRow(item)
|
|
20576
21087
|
}
|
|
20577
21088
|
),
|
|
20578
|
-
index < section2.data.length - 1 ? /* @__PURE__ */
|
|
21089
|
+
index < section2.data.length - 1 ? /* @__PURE__ */ jsx67(View51, { style: [styles53.separator, { backgroundColor: colors.hairline }] }) : null
|
|
20579
21090
|
] }, item.uuid)) }) })
|
|
20580
21091
|
] }),
|
|
20581
|
-
ListEmptyComponent: isLoading ? /* @__PURE__ */
|
|
20582
|
-
/* @__PURE__ */
|
|
20583
|
-
/* @__PURE__ */
|
|
20584
|
-
/* @__PURE__ */
|
|
20585
|
-
/* @__PURE__ */
|
|
20586
|
-
/* @__PURE__ */
|
|
21092
|
+
ListEmptyComponent: isLoading ? /* @__PURE__ */ jsx67(View51, { style: styles53.skeletonWrap, children: /* @__PURE__ */ jsx67(View51, { style: [styles53.cardClip, elevation.card, { backgroundColor: colors.surface }], children: [0, 1, 2, 3].map((i) => /* @__PURE__ */ jsxs44(View51, { children: [
|
|
21093
|
+
/* @__PURE__ */ jsxs44(View51, { style: styles53.skeletonRow, children: [
|
|
21094
|
+
/* @__PURE__ */ jsx67(Skeleton, { width: 36, height: 36, radius: radii.md }),
|
|
21095
|
+
/* @__PURE__ */ jsxs44(View51, { style: styles53.skeletonLines, children: [
|
|
21096
|
+
/* @__PURE__ */ jsx67(Skeleton, { width: "70%", height: 13 }),
|
|
21097
|
+
/* @__PURE__ */ jsx67(Skeleton, { width: "40%", height: 10 })
|
|
20587
21098
|
] })
|
|
20588
21099
|
] }),
|
|
20589
|
-
i < 3 ? /* @__PURE__ */
|
|
20590
|
-
] }, i)) }) }) : /* @__PURE__ */
|
|
21100
|
+
i < 3 ? /* @__PURE__ */ jsx67(View51, { style: [styles53.separator, { backgroundColor: colors.hairline }] }) : null
|
|
21101
|
+
] }, i)) }) }) : /* @__PURE__ */ jsx67(View51, { style: styles53.emptyWrap, children: /* @__PURE__ */ jsx67(
|
|
20591
21102
|
PCEmpty,
|
|
20592
21103
|
{
|
|
20593
21104
|
iconName: "circle-check",
|
|
@@ -20596,14 +21107,14 @@ var NotificationsScreen = () => {
|
|
|
20596
21107
|
}
|
|
20597
21108
|
) }),
|
|
20598
21109
|
ListFooterComponentStyle: { marginTop: "auto" },
|
|
20599
|
-
ListFooterComponent: /* @__PURE__ */
|
|
21110
|
+
ListFooterComponent: /* @__PURE__ */ jsx67(Footer, {})
|
|
20600
21111
|
}
|
|
20601
21112
|
),
|
|
20602
|
-
/* @__PURE__ */
|
|
20603
|
-
/* @__PURE__ */
|
|
20604
|
-
/* @__PURE__ */
|
|
21113
|
+
/* @__PURE__ */ jsx67(BottomSheet, { visible: filterOpen, onClose: () => setFilterOpen(false), title: t("filter") || "Filter", children: /* @__PURE__ */ jsxs44(View51, { style: styles53.filterSheet, children: [
|
|
21114
|
+
/* @__PURE__ */ jsx67(Text42, { style: [styles53.filterGroupLabel, { color: colors.textSecondary }], children: t("category", { defaultValue: "Category" }) }),
|
|
21115
|
+
/* @__PURE__ */ jsx67(View51, { style: styles53.chipWrap, children: filterTabs.map((tab) => {
|
|
20605
21116
|
const selected = tab.key === activeTab;
|
|
20606
|
-
return /* @__PURE__ */
|
|
21117
|
+
return /* @__PURE__ */ jsx67(
|
|
20607
21118
|
FilterChip,
|
|
20608
21119
|
{
|
|
20609
21120
|
label: tab.label,
|
|
@@ -20613,12 +21124,12 @@ var NotificationsScreen = () => {
|
|
|
20613
21124
|
tab.key
|
|
20614
21125
|
);
|
|
20615
21126
|
}) }),
|
|
20616
|
-
/* @__PURE__ */
|
|
20617
|
-
/* @__PURE__ */
|
|
21127
|
+
/* @__PURE__ */ jsx67(Text42, { style: [styles53.filterGroupLabel, { color: colors.textSecondary, marginTop: spacing.lg }], children: t("readStatus", { defaultValue: "Status" }) }),
|
|
21128
|
+
/* @__PURE__ */ jsx67(View51, { style: styles53.chipWrap, children: [
|
|
20618
21129
|
{ key: "all", label: t("all") || "All" },
|
|
20619
21130
|
{ key: "unread", label: t("unread") || "Unread" },
|
|
20620
21131
|
{ key: "read", label: t("read", { defaultValue: "Read" }) }
|
|
20621
|
-
].map((opt) => /* @__PURE__ */
|
|
21132
|
+
].map((opt) => /* @__PURE__ */ jsx67(
|
|
20622
21133
|
FilterChip,
|
|
20623
21134
|
{
|
|
20624
21135
|
label: opt.label,
|
|
@@ -20627,13 +21138,13 @@ var NotificationsScreen = () => {
|
|
|
20627
21138
|
},
|
|
20628
21139
|
opt.key
|
|
20629
21140
|
)) }),
|
|
20630
|
-
/* @__PURE__ */
|
|
20631
|
-
|
|
21141
|
+
/* @__PURE__ */ jsx67(
|
|
21142
|
+
TouchableOpacity22,
|
|
20632
21143
|
{
|
|
20633
|
-
style: [
|
|
21144
|
+
style: [styles53.applyBtn, { backgroundColor: colors.primary }],
|
|
20634
21145
|
onPress: () => setFilterOpen(false),
|
|
20635
21146
|
accessibilityRole: "button",
|
|
20636
|
-
children: /* @__PURE__ */
|
|
21147
|
+
children: /* @__PURE__ */ jsx67(Text42, { style: [styles53.applyLabel, { color: colors.primaryText }], children: t("done", { defaultValue: "Done" }) })
|
|
20637
21148
|
}
|
|
20638
21149
|
)
|
|
20639
21150
|
] }) })
|
|
@@ -20641,25 +21152,25 @@ var NotificationsScreen = () => {
|
|
|
20641
21152
|
};
|
|
20642
21153
|
var FilterChip = ({ label, selected, onPress }) => {
|
|
20643
21154
|
const { colors } = useTheme();
|
|
20644
|
-
return /* @__PURE__ */
|
|
20645
|
-
|
|
21155
|
+
return /* @__PURE__ */ jsx67(
|
|
21156
|
+
TouchableOpacity22,
|
|
20646
21157
|
{
|
|
20647
21158
|
onPress,
|
|
20648
21159
|
activeOpacity: 0.7,
|
|
20649
21160
|
accessibilityRole: "button",
|
|
20650
21161
|
accessibilityState: { selected },
|
|
20651
21162
|
style: [
|
|
20652
|
-
|
|
21163
|
+
styles53.chip,
|
|
20653
21164
|
{
|
|
20654
21165
|
backgroundColor: selected ? colors.primary : colors.surfaceAlt,
|
|
20655
21166
|
borderColor: selected ? colors.primary : colors.border
|
|
20656
21167
|
}
|
|
20657
21168
|
],
|
|
20658
|
-
children: /* @__PURE__ */
|
|
21169
|
+
children: /* @__PURE__ */ jsx67(Text42, { style: [styles53.chipLabel, { color: selected ? colors.primaryText : colors.text }], children: label })
|
|
20659
21170
|
}
|
|
20660
21171
|
);
|
|
20661
21172
|
};
|
|
20662
|
-
var
|
|
21173
|
+
var styles53 = StyleSheet54.create({
|
|
20663
21174
|
list: {
|
|
20664
21175
|
flex: 1
|
|
20665
21176
|
},
|
|
@@ -20693,7 +21204,7 @@ var styles51 = StyleSheet52.create({
|
|
|
20693
21204
|
filterBtn: {
|
|
20694
21205
|
width: 40,
|
|
20695
21206
|
height: 40,
|
|
20696
|
-
borderWidth:
|
|
21207
|
+
borderWidth: StyleSheet54.hairlineWidth,
|
|
20697
21208
|
borderRadius: radii.md,
|
|
20698
21209
|
justifyContent: "center",
|
|
20699
21210
|
alignItems: "center"
|
|
@@ -20714,7 +21225,7 @@ var styles51 = StyleSheet52.create({
|
|
|
20714
21225
|
overflow: "hidden"
|
|
20715
21226
|
},
|
|
20716
21227
|
separator: {
|
|
20717
|
-
height:
|
|
21228
|
+
height: StyleSheet54.hairlineWidth,
|
|
20718
21229
|
marginLeft: spacing.lg + 36 + spacing.md
|
|
20719
21230
|
},
|
|
20720
21231
|
emptyWrap: {
|
|
@@ -20752,7 +21263,7 @@ var styles51 = StyleSheet52.create({
|
|
|
20752
21263
|
justifyContent: "center",
|
|
20753
21264
|
paddingHorizontal: spacing.lg,
|
|
20754
21265
|
borderRadius: radii.pill,
|
|
20755
|
-
borderWidth:
|
|
21266
|
+
borderWidth: StyleSheet54.hairlineWidth
|
|
20756
21267
|
},
|
|
20757
21268
|
chipLabel: {
|
|
20758
21269
|
...typography.label
|
|
@@ -20771,7 +21282,7 @@ var styles51 = StyleSheet52.create({
|
|
|
20771
21282
|
});
|
|
20772
21283
|
|
|
20773
21284
|
// src/RedactoPrivacyCenter/RedactoPrivacyCenter.tsx
|
|
20774
|
-
import { Fragment as Fragment17, jsx as
|
|
21285
|
+
import { Fragment as Fragment17, jsx as jsx68, jsxs as jsxs45 } from "react/jsx-runtime";
|
|
20775
21286
|
var privacyCenterQueryClient = new QueryClient();
|
|
20776
21287
|
function PrivacyCenterContent({ onBack }) {
|
|
20777
21288
|
const { currentPage } = useInternalNavigation();
|
|
@@ -20781,24 +21292,24 @@ function PrivacyCenterContent({ onBack }) {
|
|
|
20781
21292
|
const chromeMode = getPageChromeMode(currentPage);
|
|
20782
21293
|
const canvasIsLight = isLightColor(colors.canvasSubtle);
|
|
20783
21294
|
const barStyle = canvasIsLight ? "dark-content" : "light-content";
|
|
20784
|
-
|
|
21295
|
+
useEffect21(() => {
|
|
20785
21296
|
StatusBar2.setBarStyle(barStyle, true);
|
|
20786
21297
|
if (Platform8.OS === "android") {
|
|
20787
21298
|
setNavBarIconStyle(canvasIsLight ? "dark" : "light");
|
|
20788
21299
|
}
|
|
20789
21300
|
}, [barStyle, canvasIsLight]);
|
|
20790
|
-
return /* @__PURE__ */
|
|
20791
|
-
/* @__PURE__ */
|
|
20792
|
-
/* @__PURE__ */
|
|
20793
|
-
/* @__PURE__ */
|
|
20794
|
-
/* @__PURE__ */
|
|
20795
|
-
currentPage === "home" && /* @__PURE__ */
|
|
20796
|
-
currentPage === "consent-manager" && /* @__PURE__ */
|
|
20797
|
-
currentPage === "form" && /* @__PURE__ */
|
|
20798
|
-
currentPage === "activity" && /* @__PURE__ */
|
|
20799
|
-
currentPage === "receipts" && /* @__PURE__ */
|
|
20800
|
-
currentPage === "case-details" && /* @__PURE__ */
|
|
20801
|
-
currentPage === "notifications" && /* @__PURE__ */
|
|
21301
|
+
return /* @__PURE__ */ jsxs45(View52, { style: [styles54.container, { backgroundColor: colors.canvasSubtle }], children: [
|
|
21302
|
+
/* @__PURE__ */ jsx68(StatusBar2, { barStyle, translucent: true }),
|
|
21303
|
+
/* @__PURE__ */ jsx68(View52, { style: styles54.mainColumn, children: brandingLoading ? /* @__PURE__ */ jsx68(PCLoader, {}) : /* @__PURE__ */ jsxs45(Fragment17, { children: [
|
|
21304
|
+
/* @__PURE__ */ jsx68(SlimTopBar, { mode: chromeMode, onBack }),
|
|
21305
|
+
/* @__PURE__ */ jsx68(View52, { style: [styles54.content, { paddingBottom: insets.bottom }], children: status === "checking" ? /* @__PURE__ */ jsx68(PCLoader, {}) : status === "session-expired" ? /* @__PURE__ */ jsx68(PrivacyCenterSessionExpired, {}) : status === "empty" ? /* @__PURE__ */ jsx68(PrivacyCenterEmptyState, {}) : /* @__PURE__ */ jsxs45(Fragment17, { children: [
|
|
21306
|
+
currentPage === "home" && /* @__PURE__ */ jsx68(HomeHub, {}),
|
|
21307
|
+
currentPage === "consent-manager" && /* @__PURE__ */ jsx68(ConsentManager, {}),
|
|
21308
|
+
currentPage === "form" && /* @__PURE__ */ jsx68(FormPage, {}),
|
|
21309
|
+
currentPage === "activity" && /* @__PURE__ */ jsx68(ActivitiesList, {}),
|
|
21310
|
+
currentPage === "receipts" && /* @__PURE__ */ jsx68(ReceiptsList, {}),
|
|
21311
|
+
currentPage === "case-details" && /* @__PURE__ */ jsx68(CaseDetailsPage, {}),
|
|
21312
|
+
currentPage === "notifications" && /* @__PURE__ */ jsx68(NotificationsScreen, {})
|
|
20802
21313
|
] }) })
|
|
20803
21314
|
] }) })
|
|
20804
21315
|
] });
|
|
@@ -20823,7 +21334,7 @@ function RedactoPrivacyCenter({
|
|
|
20823
21334
|
initialCaseUuid,
|
|
20824
21335
|
onBack
|
|
20825
21336
|
}) {
|
|
20826
|
-
return /* @__PURE__ */
|
|
21337
|
+
return /* @__PURE__ */ jsx68(SafeAreaBoundary, { children: /* @__PURE__ */ jsx68(KeyboardProviderCompat, { children: /* @__PURE__ */ jsx68(QueryClientProvider, { client: privacyCenterQueryClient, children: /* @__PURE__ */ jsx68(I18nextProvider, { i18n: i18n_default, children: /* @__PURE__ */ jsx68(ThemeProvider, { slug, baseUrl, children: /* @__PURE__ */ jsx68(BaseUrlProvider, { baseUrl, ledgerBaseUrl, children: /* @__PURE__ */ jsx68(
|
|
20827
21338
|
AuthProvider,
|
|
20828
21339
|
{
|
|
20829
21340
|
accessToken: accessToken != null ? accessToken : "",
|
|
@@ -20835,11 +21346,11 @@ function RedactoPrivacyCenter({
|
|
|
20835
21346
|
workspaceUuid,
|
|
20836
21347
|
slug,
|
|
20837
21348
|
onError,
|
|
20838
|
-
children: /* @__PURE__ */
|
|
21349
|
+
children: /* @__PURE__ */ jsx68(NavigationProvider, { initialPage, initialPendingCaseUuid: initialCaseUuid != null ? initialCaseUuid : null, children: /* @__PURE__ */ jsx68(SelectUserGate, { children: /* @__PURE__ */ jsx68(DataAvailabilityProvider, { children: /* @__PURE__ */ jsx68(PageStatusProvider, { children: /* @__PURE__ */ jsx68(PrivacyCenterContent, { onBack }) }) }) }) })
|
|
20839
21350
|
}
|
|
20840
21351
|
) }) }) }) }) }) });
|
|
20841
21352
|
}
|
|
20842
|
-
var
|
|
21353
|
+
var styles54 = StyleSheet55.create({
|
|
20843
21354
|
container: {
|
|
20844
21355
|
flex: 1
|
|
20845
21356
|
},
|
|
@@ -20854,78 +21365,78 @@ var styles52 = StyleSheet53.create({
|
|
|
20854
21365
|
|
|
20855
21366
|
// src/RedactoPrivacyCenter/components/SideMenu.tsx
|
|
20856
21367
|
import {
|
|
20857
|
-
StyleSheet as
|
|
20858
|
-
Text as
|
|
20859
|
-
TouchableOpacity as
|
|
20860
|
-
View as
|
|
21368
|
+
StyleSheet as StyleSheet56,
|
|
21369
|
+
Text as Text43,
|
|
21370
|
+
TouchableOpacity as TouchableOpacity23,
|
|
21371
|
+
View as View53
|
|
20861
21372
|
} from "react-native";
|
|
20862
|
-
import { useTranslation as
|
|
21373
|
+
import { useTranslation as useTranslation30 } from "react-i18next";
|
|
20863
21374
|
import Svg2, { Path as Path2 } from "react-native-svg";
|
|
20864
|
-
import { Fragment as Fragment18, jsx as
|
|
21375
|
+
import { Fragment as Fragment18, jsx as jsx69, jsxs as jsxs46 } from "react/jsx-runtime";
|
|
20865
21376
|
var MENU_ITEMS = [
|
|
20866
21377
|
{ page: "consent-manager", labelKey: "consentManager", fallback: "Consent Manager", icon: "shield-check" },
|
|
20867
21378
|
{ page: "form", labelKey: "grievanceRequests", fallback: "Privacy Requests", icon: "message-circle-warning" },
|
|
20868
21379
|
{ page: "activity", labelKey: "activity", fallback: "Activity", icon: "activity" }
|
|
20869
21380
|
];
|
|
20870
21381
|
function SideMenu({ onBack } = {}) {
|
|
20871
|
-
const { t } =
|
|
21382
|
+
const { t } = useTranslation30();
|
|
20872
21383
|
const { currentPage, navigateTo } = useInternalNavigation();
|
|
20873
21384
|
const { organizationName, email } = useAuth();
|
|
20874
21385
|
const { colors } = useTheme();
|
|
20875
21386
|
const orgInitial = organizationName ? organizationName.charAt(0).toUpperCase() : "R";
|
|
20876
21387
|
const displayName = organizationName || "Organization";
|
|
20877
|
-
return /* @__PURE__ */
|
|
20878
|
-
/* @__PURE__ */
|
|
20879
|
-
/* @__PURE__ */
|
|
20880
|
-
/* @__PURE__ */
|
|
20881
|
-
/* @__PURE__ */
|
|
20882
|
-
email ? /* @__PURE__ */
|
|
21388
|
+
return /* @__PURE__ */ jsxs46(View53, { style: [styles55.container, { backgroundColor: colors.surface }], children: [
|
|
21389
|
+
/* @__PURE__ */ jsxs46(View53, { style: styles55.orgSection, children: [
|
|
21390
|
+
/* @__PURE__ */ jsx69(View53, { style: [styles55.avatar, { backgroundColor: colors.primary }], children: /* @__PURE__ */ jsx69(Text43, { style: [styles55.avatarText, { color: colors.primaryText }], children: orgInitial }) }),
|
|
21391
|
+
/* @__PURE__ */ jsxs46(View53, { style: styles55.orgInfo, children: [
|
|
21392
|
+
/* @__PURE__ */ jsx69(Text43, { style: [styles55.orgName, { color: colors.text }], numberOfLines: 1, children: displayName }),
|
|
21393
|
+
email ? /* @__PURE__ */ jsx69(Text43, { style: [styles55.orgEmail, { color: colors.textSecondary }], numberOfLines: 1, children: email }) : null
|
|
20883
21394
|
] })
|
|
20884
21395
|
] }),
|
|
20885
|
-
/* @__PURE__ */
|
|
20886
|
-
/* @__PURE__ */
|
|
21396
|
+
/* @__PURE__ */ jsx69(View53, { style: [styles55.divider, { backgroundColor: colors.border }] }),
|
|
21397
|
+
/* @__PURE__ */ jsx69(View53, { style: styles55.menuSection, children: MENU_ITEMS.map((item) => {
|
|
20887
21398
|
const isActive = currentPage === item.page || item.page === "form" && currentPage === "case-details";
|
|
20888
|
-
return /* @__PURE__ */
|
|
20889
|
-
|
|
21399
|
+
return /* @__PURE__ */ jsxs46(
|
|
21400
|
+
TouchableOpacity23,
|
|
20890
21401
|
{
|
|
20891
21402
|
style: [
|
|
20892
|
-
|
|
20893
|
-
isActive && [
|
|
21403
|
+
styles55.menuItem,
|
|
21404
|
+
isActive && [styles55.menuItemActive, { backgroundColor: `${colors.primary}14` }]
|
|
20894
21405
|
],
|
|
20895
21406
|
onPress: () => navigateTo(item.page),
|
|
20896
21407
|
activeOpacity: 0.7,
|
|
20897
21408
|
accessibilityRole: "button",
|
|
20898
21409
|
accessibilityState: { selected: isActive },
|
|
20899
21410
|
children: [
|
|
20900
|
-
/* @__PURE__ */
|
|
20901
|
-
/* @__PURE__ */
|
|
20902
|
-
|
|
21411
|
+
/* @__PURE__ */ jsx69(View53, { style: styles55.menuIconWrap, children: /* @__PURE__ */ jsx69(Icon, { name: item.icon, size: 18, color: isActive ? colors.primary : colors.textSecondary }) }),
|
|
21412
|
+
/* @__PURE__ */ jsx69(
|
|
21413
|
+
Text43,
|
|
20903
21414
|
{
|
|
20904
21415
|
style: [
|
|
20905
|
-
|
|
21416
|
+
styles55.menuLabel,
|
|
20906
21417
|
{ color: isActive ? colors.primary : colors.text },
|
|
20907
|
-
isActive &&
|
|
21418
|
+
isActive && styles55.menuLabelActive
|
|
20908
21419
|
],
|
|
20909
21420
|
children: t(item.labelKey) || item.fallback
|
|
20910
21421
|
}
|
|
20911
21422
|
),
|
|
20912
|
-
isActive ? /* @__PURE__ */
|
|
21423
|
+
isActive ? /* @__PURE__ */ jsx69(View53, { style: [styles55.activeIndicator, { backgroundColor: colors.primary }] }) : null
|
|
20913
21424
|
]
|
|
20914
21425
|
},
|
|
20915
21426
|
item.page
|
|
20916
21427
|
);
|
|
20917
21428
|
}) }),
|
|
20918
|
-
onBack ? /* @__PURE__ */
|
|
20919
|
-
/* @__PURE__ */
|
|
20920
|
-
/* @__PURE__ */
|
|
20921
|
-
/* @__PURE__ */
|
|
20922
|
-
|
|
21429
|
+
onBack ? /* @__PURE__ */ jsxs46(Fragment18, { children: [
|
|
21430
|
+
/* @__PURE__ */ jsx69(View53, { style: { flex: 1 } }),
|
|
21431
|
+
/* @__PURE__ */ jsx69(View53, { style: [styles55.divider, { backgroundColor: colors.border }] }),
|
|
21432
|
+
/* @__PURE__ */ jsxs46(
|
|
21433
|
+
TouchableOpacity23,
|
|
20923
21434
|
{
|
|
20924
|
-
style:
|
|
21435
|
+
style: styles55.backBtn,
|
|
20925
21436
|
onPress: () => navigateBack(onBack),
|
|
20926
21437
|
activeOpacity: 0.7,
|
|
20927
21438
|
children: [
|
|
20928
|
-
/* @__PURE__ */
|
|
21439
|
+
/* @__PURE__ */ jsx69(Svg2, { width: 16, height: 16, viewBox: "0 0 24 24", fill: "none", children: onBack === "back" ? /* @__PURE__ */ jsx69(
|
|
20929
21440
|
Path2,
|
|
20930
21441
|
{
|
|
20931
21442
|
d: "M19 12H5m0 0l7 7m-7-7l7-7",
|
|
@@ -20934,7 +21445,7 @@ function SideMenu({ onBack } = {}) {
|
|
|
20934
21445
|
strokeLinecap: "round",
|
|
20935
21446
|
strokeLinejoin: "round"
|
|
20936
21447
|
}
|
|
20937
|
-
) : /* @__PURE__ */
|
|
21448
|
+
) : /* @__PURE__ */ jsx69(
|
|
20938
21449
|
Path2,
|
|
20939
21450
|
{
|
|
20940
21451
|
d: "M9 21H5a2 2 0 01-2-2V5a2 2 0 012-2h4 M16 17l5-5-5-5 M21 12H9",
|
|
@@ -20944,14 +21455,14 @@ function SideMenu({ onBack } = {}) {
|
|
|
20944
21455
|
strokeLinejoin: "round"
|
|
20945
21456
|
}
|
|
20946
21457
|
) }),
|
|
20947
|
-
/* @__PURE__ */
|
|
21458
|
+
/* @__PURE__ */ jsx69(Text43, { style: [styles55.backBtnLabel, { color: colors.textSecondary }], children: onBack === "back" ? t("back") || "Back" : t("signOut") || "Sign Out" })
|
|
20948
21459
|
]
|
|
20949
21460
|
}
|
|
20950
21461
|
)
|
|
20951
21462
|
] }) : null
|
|
20952
21463
|
] });
|
|
20953
21464
|
}
|
|
20954
|
-
var
|
|
21465
|
+
var styles55 = StyleSheet56.create({
|
|
20955
21466
|
container: {
|
|
20956
21467
|
flex: 1,
|
|
20957
21468
|
paddingTop: 12
|
|
@@ -21037,42 +21548,68 @@ var styles53 = StyleSheet54.create({
|
|
|
21037
21548
|
});
|
|
21038
21549
|
|
|
21039
21550
|
// src/RedactoPrivacyCenter/components/Navbar.tsx
|
|
21040
|
-
import { useCallback as
|
|
21041
|
-
import { StyleSheet as
|
|
21042
|
-
import { useTranslation as
|
|
21551
|
+
import { useCallback as useCallback15, useEffect as useEffect22, useState as useState26 } from "react";
|
|
21552
|
+
import { StyleSheet as StyleSheet58, Text as Text45, TouchableOpacity as TouchableOpacity25, View as View55 } from "react-native";
|
|
21553
|
+
import { useTranslation as useTranslation32 } from "react-i18next";
|
|
21043
21554
|
import Svg4, { Path as Path4 } from "react-native-svg";
|
|
21044
21555
|
|
|
21045
21556
|
// src/RedactoPrivacyCenter/components/UserOrgMenu.tsx
|
|
21046
|
-
import { Image as Image4, StyleSheet as
|
|
21047
|
-
import { useTranslation as
|
|
21557
|
+
import { Image as Image4, StyleSheet as StyleSheet57, Text as Text44, TouchableOpacity as TouchableOpacity24, View as View54 } from "react-native";
|
|
21558
|
+
import { useTranslation as useTranslation31 } from "react-i18next";
|
|
21048
21559
|
import Svg3, { Path as Path3 } from "react-native-svg";
|
|
21049
|
-
import { jsx as
|
|
21560
|
+
import { jsx as jsx70, jsxs as jsxs47 } from "react/jsx-runtime";
|
|
21050
21561
|
var UserOrgMenu = ({ visible, onClose, onBack }) => {
|
|
21051
|
-
const { t } =
|
|
21562
|
+
const { t } = useTranslation31();
|
|
21052
21563
|
const { organizationName, email } = useAuth();
|
|
21053
21564
|
const { colors, branding } = useTheme();
|
|
21565
|
+
const { switchProfile } = useProfileSwitch();
|
|
21054
21566
|
const brandName = (branding == null ? void 0 : branding.brand_name) || organizationName || t("privacyCenter") || "Privacy Center";
|
|
21055
21567
|
const handleAction = () => {
|
|
21056
21568
|
onClose();
|
|
21057
21569
|
navigateBack(onBack);
|
|
21058
21570
|
};
|
|
21059
|
-
return /* @__PURE__ */
|
|
21060
|
-
/* @__PURE__ */
|
|
21061
|
-
(branding == null ? void 0 : branding.logo_url) ? /* @__PURE__ */
|
|
21062
|
-
/* @__PURE__ */
|
|
21063
|
-
/* @__PURE__ */
|
|
21064
|
-
email ? /* @__PURE__ */
|
|
21571
|
+
return /* @__PURE__ */ jsxs47(BottomSheet, { visible, onClose, title: t("account") || "Account", children: [
|
|
21572
|
+
/* @__PURE__ */ jsxs47(View54, { style: styles56.identity, children: [
|
|
21573
|
+
(branding == null ? void 0 : branding.logo_url) ? /* @__PURE__ */ jsx70(Image4, { source: { uri: branding.logo_url }, style: styles56.logo, resizeMode: "contain" }) : /* @__PURE__ */ jsx70(PCAvatar, { name: organizationName || brandName, imageUrl: branding == null ? void 0 : branding.icon_url, size: 52 }),
|
|
21574
|
+
/* @__PURE__ */ jsxs47(View54, { style: styles56.identityText, children: [
|
|
21575
|
+
/* @__PURE__ */ jsx70(Text44, { style: [styles56.orgName, { color: colors.text }], numberOfLines: 2, children: brandName }),
|
|
21576
|
+
email ? /* @__PURE__ */ jsx70(Text44, { style: [styles56.email, { color: colors.textSecondary }], numberOfLines: 1, children: email }) : null
|
|
21065
21577
|
] })
|
|
21066
21578
|
] }),
|
|
21067
|
-
|
|
21068
|
-
|
|
21579
|
+
switchProfile ? /* @__PURE__ */ jsxs47(
|
|
21580
|
+
TouchableOpacity24,
|
|
21069
21581
|
{
|
|
21070
|
-
style: [
|
|
21582
|
+
style: [styles56.actionRow, { backgroundColor: withAlpha(colors.primary, 0.1) }],
|
|
21583
|
+
onPress: () => {
|
|
21584
|
+
onClose();
|
|
21585
|
+
switchProfile();
|
|
21586
|
+
},
|
|
21587
|
+
activeOpacity: 0.7,
|
|
21588
|
+
accessibilityRole: "button",
|
|
21589
|
+
children: [
|
|
21590
|
+
/* @__PURE__ */ jsx70(Svg3, { width: 18, height: 18, viewBox: "0 0 24 24", fill: "none", children: /* @__PURE__ */ jsx70(
|
|
21591
|
+
Path3,
|
|
21592
|
+
{
|
|
21593
|
+
d: "M16 3h5v5 M21 3l-7 7 M8 21H3v-5 M3 21l7-7",
|
|
21594
|
+
stroke: colors.primary,
|
|
21595
|
+
strokeWidth: 2,
|
|
21596
|
+
strokeLinecap: "round",
|
|
21597
|
+
strokeLinejoin: "round"
|
|
21598
|
+
}
|
|
21599
|
+
) }),
|
|
21600
|
+
/* @__PURE__ */ jsx70(Text44, { style: [styles56.actionLabel, { color: colors.primary }], children: t("switchProfile") })
|
|
21601
|
+
]
|
|
21602
|
+
}
|
|
21603
|
+
) : null,
|
|
21604
|
+
onBack ? /* @__PURE__ */ jsxs47(
|
|
21605
|
+
TouchableOpacity24,
|
|
21606
|
+
{
|
|
21607
|
+
style: [styles56.actionRow, { backgroundColor: withAlpha(onBack === "signout" ? colors.error : colors.primary, 0.1) }],
|
|
21071
21608
|
onPress: handleAction,
|
|
21072
21609
|
activeOpacity: 0.7,
|
|
21073
21610
|
accessibilityRole: "button",
|
|
21074
21611
|
children: [
|
|
21075
|
-
/* @__PURE__ */
|
|
21612
|
+
/* @__PURE__ */ jsx70(Svg3, { width: 18, height: 18, viewBox: "0 0 24 24", fill: "none", children: onBack === "signout" ? /* @__PURE__ */ jsx70(
|
|
21076
21613
|
Path3,
|
|
21077
21614
|
{
|
|
21078
21615
|
d: "M9 21H5a2 2 0 01-2-2V5a2 2 0 012-2h4 M16 17l5-5-5-5 M21 12H9",
|
|
@@ -21081,7 +21618,7 @@ var UserOrgMenu = ({ visible, onClose, onBack }) => {
|
|
|
21081
21618
|
strokeLinecap: "round",
|
|
21082
21619
|
strokeLinejoin: "round"
|
|
21083
21620
|
}
|
|
21084
|
-
) : /* @__PURE__ */
|
|
21621
|
+
) : /* @__PURE__ */ jsx70(
|
|
21085
21622
|
Path3,
|
|
21086
21623
|
{
|
|
21087
21624
|
d: "M19 12H5m0 0l7 7m-7-7l7-7",
|
|
@@ -21091,13 +21628,13 @@ var UserOrgMenu = ({ visible, onClose, onBack }) => {
|
|
|
21091
21628
|
strokeLinejoin: "round"
|
|
21092
21629
|
}
|
|
21093
21630
|
) }),
|
|
21094
|
-
/* @__PURE__ */
|
|
21631
|
+
/* @__PURE__ */ jsx70(Text44, { style: [styles56.actionLabel, { color: onBack === "signout" ? colors.error : colors.primary }], children: onBack === "signout" ? t("signOut") || "Sign Out" : t("back") || "Back" })
|
|
21095
21632
|
]
|
|
21096
21633
|
}
|
|
21097
21634
|
) : null
|
|
21098
21635
|
] });
|
|
21099
21636
|
};
|
|
21100
|
-
var
|
|
21637
|
+
var styles56 = StyleSheet57.create({
|
|
21101
21638
|
identity: {
|
|
21102
21639
|
flexDirection: "row",
|
|
21103
21640
|
alignItems: "center",
|
|
@@ -21138,33 +21675,33 @@ var styles54 = StyleSheet55.create({
|
|
|
21138
21675
|
});
|
|
21139
21676
|
|
|
21140
21677
|
// src/RedactoPrivacyCenter/components/Navbar.tsx
|
|
21141
|
-
import { Fragment as Fragment19, jsx as
|
|
21678
|
+
import { Fragment as Fragment19, jsx as jsx71, jsxs as jsxs48 } from "react/jsx-runtime";
|
|
21142
21679
|
function Navbar({ mode = "primary", onBack }) {
|
|
21143
|
-
const { t } =
|
|
21680
|
+
const { t } = useTranslation32();
|
|
21144
21681
|
const { currentPage, navigateTo } = useInternalNavigation();
|
|
21145
21682
|
const { organizationName, email } = useAuth();
|
|
21146
21683
|
const { colors, branding } = useTheme();
|
|
21147
|
-
const [locale, setLocale] =
|
|
21148
|
-
const [menuOpen, setMenuOpen] =
|
|
21684
|
+
const [locale, setLocale] = useState26(i18n_default.language || "en");
|
|
21685
|
+
const [menuOpen, setMenuOpen] = useState26(false);
|
|
21149
21686
|
const unreadCount = useUnreadCount();
|
|
21150
21687
|
const { status: pageStatus } = usePageStatus();
|
|
21151
21688
|
const pageChrome = PAGE_CHROME_BY_PAGE[currentPage] || PAGE_CHROME_BY_PAGE["consent-manager"];
|
|
21152
21689
|
const isDetail = mode === "detail";
|
|
21153
|
-
|
|
21690
|
+
useEffect22(() => {
|
|
21154
21691
|
const handleLanguageChanged = () => setLocale(i18n_default.language);
|
|
21155
21692
|
i18n_default.on("languageChanged", handleLanguageChanged);
|
|
21156
21693
|
return () => {
|
|
21157
21694
|
i18n_default.off("languageChanged", handleLanguageChanged);
|
|
21158
21695
|
};
|
|
21159
21696
|
}, []);
|
|
21160
|
-
const handleLanguageChange =
|
|
21697
|
+
const handleLanguageChange = useCallback15((value) => {
|
|
21161
21698
|
i18n_default.changeLanguage(value);
|
|
21162
21699
|
}, []);
|
|
21163
21700
|
const brandLabel = (branding == null ? void 0 : branding.brand_name) || organizationName || t("privacyCenter") || "Privacy Center";
|
|
21164
21701
|
const accountLabel = brandLabel || email || t("account") || "Account";
|
|
21165
|
-
const brandLockup = /* @__PURE__ */
|
|
21166
|
-
/* @__PURE__ */
|
|
21167
|
-
/* @__PURE__ */
|
|
21702
|
+
const brandLockup = /* @__PURE__ */ jsxs48(View55, { style: styles57.brandRow, children: [
|
|
21703
|
+
/* @__PURE__ */ jsx71(PCAvatar, { name: organizationName || brandLabel, imageUrl: branding == null ? void 0 : branding.icon_url, size: 28 }),
|
|
21704
|
+
/* @__PURE__ */ jsx71(Text45, { style: [styles57.brandText, { color: colors.text }], numberOfLines: 1, children: brandLabel })
|
|
21168
21705
|
] });
|
|
21169
21706
|
const handleDetailBack = () => {
|
|
21170
21707
|
if (currentPage === "case-details") {
|
|
@@ -21176,26 +21713,26 @@ function Navbar({ mode = "primary", onBack }) {
|
|
|
21176
21713
|
}
|
|
21177
21714
|
};
|
|
21178
21715
|
if (isDetail) {
|
|
21179
|
-
return /* @__PURE__ */
|
|
21180
|
-
/* @__PURE__ */
|
|
21181
|
-
|
|
21716
|
+
return /* @__PURE__ */ jsxs48(Fragment19, { children: [
|
|
21717
|
+
/* @__PURE__ */ jsx71(
|
|
21718
|
+
View55,
|
|
21182
21719
|
{
|
|
21183
21720
|
style: [
|
|
21184
|
-
|
|
21185
|
-
|
|
21721
|
+
styles57.container,
|
|
21722
|
+
styles57.detailContainer,
|
|
21186
21723
|
{ backgroundColor: colors.background, borderBottomColor: colors.border, paddingTop: TOP_INSET + spacing.xs }
|
|
21187
21724
|
],
|
|
21188
|
-
children: /* @__PURE__ */
|
|
21189
|
-
/* @__PURE__ */
|
|
21190
|
-
|
|
21725
|
+
children: /* @__PURE__ */ jsxs48(View55, { style: styles57.detailRow, children: [
|
|
21726
|
+
/* @__PURE__ */ jsx71(
|
|
21727
|
+
TouchableOpacity25,
|
|
21191
21728
|
{
|
|
21192
|
-
style:
|
|
21729
|
+
style: styles57.backButton,
|
|
21193
21730
|
onPress: handleDetailBack,
|
|
21194
21731
|
activeOpacity: 0.7,
|
|
21195
21732
|
hitSlop: DEFAULT_HIT_SLOP,
|
|
21196
21733
|
accessibilityRole: "button",
|
|
21197
21734
|
accessibilityLabel: t("back") || "Back",
|
|
21198
|
-
children: /* @__PURE__ */
|
|
21735
|
+
children: /* @__PURE__ */ jsx71(Svg4, { width: 22, height: 22, viewBox: "0 0 24 24", fill: "none", children: /* @__PURE__ */ jsx71(
|
|
21199
21736
|
Path4,
|
|
21200
21737
|
{
|
|
21201
21738
|
d: "M19 12H5m0 0l7 7m-7-7l7-7",
|
|
@@ -21207,36 +21744,36 @@ function Navbar({ mode = "primary", onBack }) {
|
|
|
21207
21744
|
) })
|
|
21208
21745
|
}
|
|
21209
21746
|
),
|
|
21210
|
-
/* @__PURE__ */
|
|
21211
|
-
/* @__PURE__ */
|
|
21212
|
-
pageStatus ? /* @__PURE__ */
|
|
21747
|
+
/* @__PURE__ */ jsxs48(View55, { style: styles57.detailTitleWrap, children: [
|
|
21748
|
+
/* @__PURE__ */ jsx71(Text45, { style: [styles57.detailTitle, { color: colors.text }], numberOfLines: 1, children: t(pageChrome.titleKey) }),
|
|
21749
|
+
pageStatus ? /* @__PURE__ */ jsx71(PCBadge, { status: pageStatus.tone, label: pageStatus.label }) : null
|
|
21213
21750
|
] })
|
|
21214
21751
|
] })
|
|
21215
21752
|
}
|
|
21216
21753
|
),
|
|
21217
|
-
/* @__PURE__ */
|
|
21754
|
+
/* @__PURE__ */ jsx71(UserOrgMenu, { visible: menuOpen, onClose: () => setMenuOpen(false), onBack })
|
|
21218
21755
|
] });
|
|
21219
21756
|
}
|
|
21220
|
-
return /* @__PURE__ */
|
|
21221
|
-
/* @__PURE__ */
|
|
21222
|
-
|
|
21757
|
+
return /* @__PURE__ */ jsxs48(Fragment19, { children: [
|
|
21758
|
+
/* @__PURE__ */ jsxs48(
|
|
21759
|
+
View55,
|
|
21223
21760
|
{
|
|
21224
21761
|
style: [
|
|
21225
|
-
|
|
21762
|
+
styles57.container,
|
|
21226
21763
|
{ backgroundColor: colors.background, borderBottomColor: colors.border, paddingTop: TOP_INSET + spacing.xs }
|
|
21227
21764
|
],
|
|
21228
21765
|
children: [
|
|
21229
|
-
/* @__PURE__ */
|
|
21230
|
-
onBack ? /* @__PURE__ */
|
|
21231
|
-
|
|
21766
|
+
/* @__PURE__ */ jsxs48(View55, { style: styles57.appBar, children: [
|
|
21767
|
+
onBack ? /* @__PURE__ */ jsx71(
|
|
21768
|
+
TouchableOpacity25,
|
|
21232
21769
|
{
|
|
21233
|
-
style:
|
|
21770
|
+
style: styles57.backButton,
|
|
21234
21771
|
onPress: () => navigateBack(onBack),
|
|
21235
21772
|
activeOpacity: 0.7,
|
|
21236
21773
|
hitSlop: DEFAULT_HIT_SLOP,
|
|
21237
21774
|
accessibilityRole: "button",
|
|
21238
21775
|
accessibilityLabel: onBack === "back" ? t("back") || "Back" : t("signOut") || "Sign Out",
|
|
21239
|
-
children: /* @__PURE__ */
|
|
21776
|
+
children: /* @__PURE__ */ jsx71(Svg4, { width: 22, height: 22, viewBox: "0 0 24 24", fill: "none", children: /* @__PURE__ */ jsx71(
|
|
21240
21777
|
Path4,
|
|
21241
21778
|
{
|
|
21242
21779
|
d: "M19 12H5m0 0l7 7m-7-7l7-7",
|
|
@@ -21248,39 +21785,39 @@ function Navbar({ mode = "primary", onBack }) {
|
|
|
21248
21785
|
) })
|
|
21249
21786
|
}
|
|
21250
21787
|
) : null,
|
|
21251
|
-
/* @__PURE__ */
|
|
21252
|
-
/* @__PURE__ */
|
|
21253
|
-
/* @__PURE__ */
|
|
21254
|
-
/* @__PURE__ */
|
|
21255
|
-
/* @__PURE__ */
|
|
21256
|
-
|
|
21788
|
+
/* @__PURE__ */ jsx71(View55, { style: styles57.brandWrap, children: (branding == null ? void 0 : branding.logo_url) ? /* @__PURE__ */ jsx71(BrandImage, { uri: branding.logo_url, height: 34, maxWidth: 170, fallback: brandLockup }) : brandLockup }),
|
|
21789
|
+
/* @__PURE__ */ jsxs48(View55, { style: styles57.actions, children: [
|
|
21790
|
+
/* @__PURE__ */ jsx71(NotificationBell, { count: unreadCount, onPress: () => navigateTo("notifications") }),
|
|
21791
|
+
/* @__PURE__ */ jsx71(PCSelect, { value: locale, options: languageOptions, onChange: handleLanguageChange, placeholder: t("language"), compact: true }),
|
|
21792
|
+
/* @__PURE__ */ jsx71(
|
|
21793
|
+
TouchableOpacity25,
|
|
21257
21794
|
{
|
|
21258
|
-
style:
|
|
21795
|
+
style: styles57.avatarButton,
|
|
21259
21796
|
onPress: () => setMenuOpen(true),
|
|
21260
21797
|
activeOpacity: 0.7,
|
|
21261
21798
|
hitSlop: DEFAULT_HIT_SLOP,
|
|
21262
21799
|
accessibilityRole: "button",
|
|
21263
21800
|
accessibilityLabel: accountLabel,
|
|
21264
|
-
children: /* @__PURE__ */
|
|
21801
|
+
children: /* @__PURE__ */ jsx71(PCAvatar, { name: organizationName || accountLabel, imageUrl: branding == null ? void 0 : branding.icon_url, size: 28 })
|
|
21265
21802
|
}
|
|
21266
21803
|
)
|
|
21267
21804
|
] })
|
|
21268
21805
|
] }),
|
|
21269
|
-
/* @__PURE__ */
|
|
21270
|
-
/* @__PURE__ */
|
|
21271
|
-
pageStatus ? /* @__PURE__ */
|
|
21806
|
+
/* @__PURE__ */ jsx71(View55, { style: styles57.pageHeader, children: /* @__PURE__ */ jsxs48(View55, { style: styles57.titleRow, children: [
|
|
21807
|
+
/* @__PURE__ */ jsx71(Text45, { style: [styles57.pageTitle, { color: colors.text }], numberOfLines: 1, children: t(pageChrome.titleKey) }),
|
|
21808
|
+
pageStatus ? /* @__PURE__ */ jsx71(PCBadge, { status: pageStatus.tone, label: pageStatus.label }) : null
|
|
21272
21809
|
] }) })
|
|
21273
21810
|
]
|
|
21274
21811
|
}
|
|
21275
21812
|
),
|
|
21276
|
-
/* @__PURE__ */
|
|
21813
|
+
/* @__PURE__ */ jsx71(UserOrgMenu, { visible: menuOpen, onClose: () => setMenuOpen(false), onBack })
|
|
21277
21814
|
] });
|
|
21278
21815
|
}
|
|
21279
|
-
var
|
|
21816
|
+
var styles57 = StyleSheet58.create({
|
|
21280
21817
|
container: {
|
|
21281
21818
|
paddingHorizontal: spacing.lg,
|
|
21282
21819
|
paddingBottom: spacing.md,
|
|
21283
|
-
borderBottomWidth:
|
|
21820
|
+
borderBottomWidth: StyleSheet58.hairlineWidth
|
|
21284
21821
|
},
|
|
21285
21822
|
detailContainer: {
|
|
21286
21823
|
paddingBottom: spacing.sm
|
|
@@ -21360,10 +21897,10 @@ var styles55 = StyleSheet56.create({
|
|
|
21360
21897
|
});
|
|
21361
21898
|
|
|
21362
21899
|
// src/RedactoPrivacyCenter/components/BottomTabBar.tsx
|
|
21363
|
-
import { useState as
|
|
21364
|
-
import { Animated as Animated14, StyleSheet as
|
|
21365
|
-
import { useTranslation as
|
|
21366
|
-
import { jsx as
|
|
21900
|
+
import { useState as useState27 } from "react";
|
|
21901
|
+
import { Animated as Animated14, StyleSheet as StyleSheet59, Text as Text46, TouchableOpacity as TouchableOpacity26, View as View56 } from "react-native";
|
|
21902
|
+
import { useTranslation as useTranslation33 } from "react-i18next";
|
|
21903
|
+
import { jsx as jsx72, jsxs as jsxs49 } from "react/jsx-runtime";
|
|
21367
21904
|
var TAB_ITEMS = [
|
|
21368
21905
|
{ page: "consent-manager", labelKey: "consentManager", fallback: "Consents", icon: "shield-check" },
|
|
21369
21906
|
{ page: "form", labelKey: "grievanceRequests", fallback: "Requests", icon: "message-circle-warning" },
|
|
@@ -21374,10 +21911,10 @@ var PAD_H = spacing.lg;
|
|
|
21374
21911
|
var PILL_WIDTH = 56;
|
|
21375
21912
|
var PILL_HEIGHT = 34;
|
|
21376
21913
|
function BottomTabBar({ showFooter = true }) {
|
|
21377
|
-
const { t } =
|
|
21914
|
+
const { t } = useTranslation33();
|
|
21378
21915
|
const { currentPage, navigateTo } = useInternalNavigation();
|
|
21379
21916
|
const { colors } = useTheme();
|
|
21380
|
-
const [rowWidth, setRowWidth] =
|
|
21917
|
+
const [rowWidth, setRowWidth] = useState27(0);
|
|
21381
21918
|
const innerWidth = Math.max(0, rowWidth - PAD_H * 2);
|
|
21382
21919
|
const tabWidth = innerWidth > 0 ? innerWidth / TAB_ITEMS.length : 0;
|
|
21383
21920
|
const activeIndex = TAB_ITEMS.findIndex(
|
|
@@ -21385,13 +21922,13 @@ function BottomTabBar({ showFooter = true }) {
|
|
|
21385
21922
|
);
|
|
21386
21923
|
const { translateX } = useAnimatedTabIndicator(Math.max(0, activeIndex), tabWidth);
|
|
21387
21924
|
const onLayout = (e) => setRowWidth(e.nativeEvent.layout.width);
|
|
21388
|
-
return /* @__PURE__ */
|
|
21389
|
-
/* @__PURE__ */
|
|
21390
|
-
tabWidth > 0 && activeIndex >= 0 ? /* @__PURE__ */
|
|
21925
|
+
return /* @__PURE__ */ jsxs49(View56, { style: [styles58.wrapper, { backgroundColor: colors.canvasSubtle, borderTopColor: colors.hairline }], children: [
|
|
21926
|
+
/* @__PURE__ */ jsxs49(View56, { style: styles58.container, onLayout, children: [
|
|
21927
|
+
tabWidth > 0 && activeIndex >= 0 ? /* @__PURE__ */ jsx72(
|
|
21391
21928
|
Animated14.View,
|
|
21392
21929
|
{
|
|
21393
21930
|
style: [
|
|
21394
|
-
|
|
21931
|
+
styles58.pill,
|
|
21395
21932
|
{
|
|
21396
21933
|
width: PILL_WIDTH,
|
|
21397
21934
|
left: PAD_H + (tabWidth - PILL_WIDTH) / 2,
|
|
@@ -21404,17 +21941,17 @@ function BottomTabBar({ showFooter = true }) {
|
|
|
21404
21941
|
TAB_ITEMS.map((item) => {
|
|
21405
21942
|
const isActive = currentPage === item.page || item.page === "form" && currentPage === "case-details";
|
|
21406
21943
|
const label = t(item.labelKey) || item.fallback;
|
|
21407
|
-
return /* @__PURE__ */
|
|
21408
|
-
|
|
21944
|
+
return /* @__PURE__ */ jsxs49(
|
|
21945
|
+
TouchableOpacity26,
|
|
21409
21946
|
{
|
|
21410
|
-
style:
|
|
21947
|
+
style: styles58.tab,
|
|
21411
21948
|
onPress: () => navigateTo(item.page),
|
|
21412
21949
|
activeOpacity: 0.7,
|
|
21413
21950
|
accessibilityRole: "tab",
|
|
21414
21951
|
accessibilityState: { selected: isActive },
|
|
21415
21952
|
accessibilityLabel: label,
|
|
21416
21953
|
children: [
|
|
21417
|
-
/* @__PURE__ */
|
|
21954
|
+
/* @__PURE__ */ jsx72(View56, { style: styles58.iconWrap, children: /* @__PURE__ */ jsx72(
|
|
21418
21955
|
Icon,
|
|
21419
21956
|
{
|
|
21420
21957
|
name: item.icon,
|
|
@@ -21423,10 +21960,10 @@ function BottomTabBar({ showFooter = true }) {
|
|
|
21423
21960
|
strokeWidth: isActive ? 2.1 : 1.85
|
|
21424
21961
|
}
|
|
21425
21962
|
) }),
|
|
21426
|
-
/* @__PURE__ */
|
|
21427
|
-
|
|
21963
|
+
/* @__PURE__ */ jsx72(
|
|
21964
|
+
Text46,
|
|
21428
21965
|
{
|
|
21429
|
-
style: [
|
|
21966
|
+
style: [styles58.tabLabel, { color: isActive ? colors.primary : colors.textSecondary }],
|
|
21430
21967
|
numberOfLines: 1,
|
|
21431
21968
|
children: label
|
|
21432
21969
|
}
|
|
@@ -21437,13 +21974,13 @@ function BottomTabBar({ showFooter = true }) {
|
|
|
21437
21974
|
);
|
|
21438
21975
|
})
|
|
21439
21976
|
] }),
|
|
21440
|
-
showFooter ? /* @__PURE__ */
|
|
21441
|
-
/* @__PURE__ */
|
|
21977
|
+
showFooter ? /* @__PURE__ */ jsx72(Footer, { inline: true }) : null,
|
|
21978
|
+
/* @__PURE__ */ jsx72(View56, { style: { height: BOTTOM_INSET } })
|
|
21442
21979
|
] });
|
|
21443
21980
|
}
|
|
21444
|
-
var
|
|
21981
|
+
var styles58 = StyleSheet59.create({
|
|
21445
21982
|
wrapper: {
|
|
21446
|
-
borderTopWidth:
|
|
21983
|
+
borderTopWidth: StyleSheet59.hairlineWidth
|
|
21447
21984
|
},
|
|
21448
21985
|
container: {
|
|
21449
21986
|
flexDirection: "row",
|