datakeen-session-react 1.1.159 → 1.1.161
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/cjs/components/DatakeenSession.js +22 -3
- package/dist/cjs/components/DatakeenSession.js.map +1 -1
- package/dist/cjs/components/document-collection/DocumentCollection.js +2 -2
- package/dist/cjs/components/document-collection/DocumentCollection.js.map +1 -1
- package/dist/cjs/components/document-collection/DocumentCollectionIntroduction.js +5 -5
- package/dist/cjs/components/document-collection/DocumentCollectionIntroduction.js.map +1 -1
- package/dist/cjs/components/document-collection/DocumentCollectionMethodSelection.js +2 -2
- package/dist/cjs/components/document-collection/DocumentCollectionMethodSelection.js.map +1 -1
- package/dist/cjs/components/document-collection/DocumentCollectionSelection.js +5 -5
- package/dist/cjs/components/document-collection/DocumentCollectionSelection.js.map +1 -1
- package/dist/cjs/components/document-collection/DocumentCollectionUpload.js +11 -11
- package/dist/cjs/components/document-collection/DocumentCollectionUpload.js.map +1 -1
- package/dist/cjs/components/document-collection/DocumentError.js +4 -2
- package/dist/cjs/components/document-collection/DocumentError.js.map +1 -1
- package/dist/cjs/components/document-collection/DocumentSuccess.js +2 -2
- package/dist/cjs/components/document-collection/DocumentSuccess.js.map +1 -1
- package/dist/cjs/components/id-check/Photo.js +9 -1
- package/dist/cjs/components/id-check/Photo.js.map +1 -1
- package/dist/cjs/components/jdi/JDDWorkInProgress.js +1 -1
- package/dist/cjs/components/jdi/JDDWorkInProgress.js.map +1 -1
- package/dist/cjs/components/jdi/JDIDocumentUpload.js +1 -1
- package/dist/cjs/components/jdi/JDIDocumentUpload.js.map +1 -1
- package/dist/cjs/components/selfie/selfie-flow/SelfieRecorder.js +26 -7
- package/dist/cjs/components/selfie/selfie-flow/SelfieRecorder.js.map +1 -1
- package/dist/cjs/components/session/DocumentCheck.js +2 -2
- package/dist/cjs/components/session/DocumentCheck.js.map +1 -1
- package/dist/cjs/components/session/UserInputForm/CustomFormFields.js +42 -45
- package/dist/cjs/components/session/UserInputForm/CustomFormFields.js.map +1 -1
- package/dist/cjs/components/session/UserInputForm/DatePickerField.js +154 -0
- package/dist/cjs/components/session/UserInputForm/DatePickerField.js.map +1 -0
- package/dist/cjs/components/session/UserInputForm.js +2 -2
- package/dist/cjs/components/session/UserInputForm.js.map +1 -1
- package/dist/cjs/components/session/VideoWorkInProgress.js +1 -1
- package/dist/cjs/components/session/VideoWorkInProgress.js.map +1 -1
- package/dist/cjs/components/signature-electronic/DocusealSignature.js +2 -1
- package/dist/cjs/components/signature-electronic/DocusealSignature.js.map +1 -1
- package/dist/cjs/components/signature-electronic/SignatureElectronic.js +2 -1
- package/dist/cjs/components/signature-electronic/SignatureElectronic.js.map +1 -1
- package/dist/cjs/components/signature-electronic/SignatureElectronicIntroduction.js +2 -1
- package/dist/cjs/components/signature-electronic/SignatureElectronicIntroduction.js.map +1 -1
- package/dist/cjs/components/start-flow/CGU.js +5 -2
- package/dist/cjs/components/start-flow/CGU.js.map +1 -1
- package/dist/cjs/components/start-flow/Start.js +5 -2
- package/dist/cjs/components/start-flow/Start.js.map +1 -1
- package/dist/cjs/components/template/ExternalVerificationNodeHandler.js +2 -1
- package/dist/cjs/components/template/ExternalVerificationNodeHandler.js.map +1 -1
- package/dist/cjs/components/ui/MobilePageLayout.js +1 -1
- package/dist/cjs/components/ui/MobilePageLayout.js.map +1 -1
- package/dist/cjs/components/ui/Paper.js +2 -2
- package/dist/cjs/components/ui/Paper.js.map +1 -1
- package/dist/cjs/hooks/useUserInputForm.js +90 -29
- package/dist/cjs/hooks/useUserInputForm.js.map +1 -1
- package/dist/cjs/i18n/en.json.js +35 -5
- package/dist/cjs/i18n/en.json.js.map +1 -1
- package/dist/cjs/i18n/fr.json.js +36 -6
- package/dist/cjs/i18n/fr.json.js.map +1 -1
- package/dist/cjs/index.css.js +1 -1
- package/dist/cjs/node_modules/date-fns/locale/_lib/buildFormatLongFn.js +13 -0
- package/dist/cjs/node_modules/date-fns/locale/_lib/buildFormatLongFn.js.map +1 -0
- package/dist/cjs/node_modules/date-fns/locale/_lib/buildLocalizeFn.js +67 -0
- package/dist/cjs/node_modules/date-fns/locale/_lib/buildLocalizeFn.js.map +1 -0
- package/dist/cjs/node_modules/date-fns/locale/_lib/buildMatchFn.js +62 -0
- package/dist/cjs/node_modules/date-fns/locale/_lib/buildMatchFn.js.map +1 -0
- package/dist/cjs/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js +25 -0
- package/dist/cjs/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js.map +1 -0
- package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/formatDistance.js +106 -0
- package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/formatDistance.js.map +1 -0
- package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/formatLong.js +44 -0
- package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/formatLong.js.map +1 -0
- package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/formatRelative.js +16 -0
- package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/formatRelative.js.map +1 -0
- package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/localize.js +192 -0
- package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/localize.js.map +1 -0
- package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/match.js +137 -0
- package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/match.js.map +1 -0
- package/dist/cjs/node_modules/date-fns/locale/en-US.js +31 -0
- package/dist/cjs/node_modules/date-fns/locale/en-US.js.map +1 -0
- package/dist/cjs/node_modules/date-fns/locale/fr/_lib/formatDistance.js +105 -0
- package/dist/cjs/node_modules/date-fns/locale/fr/_lib/formatDistance.js.map +1 -0
- package/dist/cjs/node_modules/date-fns/locale/fr/_lib/formatLong.js +44 -0
- package/dist/cjs/node_modules/date-fns/locale/fr/_lib/formatLong.js.map +1 -0
- package/dist/cjs/node_modules/date-fns/locale/fr/_lib/formatRelative.js +16 -0
- package/dist/cjs/node_modules/date-fns/locale/fr/_lib/formatRelative.js.map +1 -0
- package/dist/cjs/node_modules/date-fns/locale/fr/_lib/localize.js +170 -0
- package/dist/cjs/node_modules/date-fns/locale/fr/_lib/localize.js.map +1 -0
- package/dist/cjs/node_modules/date-fns/locale/fr/_lib/match.js +138 -0
- package/dist/cjs/node_modules/date-fns/locale/fr/_lib/match.js.map +1 -0
- package/dist/cjs/node_modules/date-fns/locale/fr.js +31 -0
- package/dist/cjs/node_modules/date-fns/locale/fr.js.map +1 -0
- package/dist/cjs/types/session.js +6 -0
- package/dist/cjs/types/session.js.map +1 -0
- package/dist/cjs/utils/customFieldValidation.js +62 -0
- package/dist/cjs/utils/customFieldValidation.js.map +1 -0
- package/dist/esm/components/DatakeenSession.js +22 -3
- package/dist/esm/components/DatakeenSession.js.map +1 -1
- package/dist/esm/components/document-collection/DocumentCollection.js +2 -2
- package/dist/esm/components/document-collection/DocumentCollection.js.map +1 -1
- package/dist/esm/components/document-collection/DocumentCollectionIntroduction.js +5 -5
- package/dist/esm/components/document-collection/DocumentCollectionIntroduction.js.map +1 -1
- package/dist/esm/components/document-collection/DocumentCollectionMethodSelection.js +2 -2
- package/dist/esm/components/document-collection/DocumentCollectionMethodSelection.js.map +1 -1
- package/dist/esm/components/document-collection/DocumentCollectionSelection.js +5 -5
- package/dist/esm/components/document-collection/DocumentCollectionSelection.js.map +1 -1
- package/dist/esm/components/document-collection/DocumentCollectionUpload.js +11 -11
- package/dist/esm/components/document-collection/DocumentCollectionUpload.js.map +1 -1
- package/dist/esm/components/document-collection/DocumentError.js +4 -2
- package/dist/esm/components/document-collection/DocumentError.js.map +1 -1
- package/dist/esm/components/document-collection/DocumentSuccess.js +2 -2
- package/dist/esm/components/document-collection/DocumentSuccess.js.map +1 -1
- package/dist/esm/components/id-check/Photo.js +9 -1
- package/dist/esm/components/id-check/Photo.js.map +1 -1
- package/dist/esm/components/jdi/JDDWorkInProgress.js +1 -1
- package/dist/esm/components/jdi/JDDWorkInProgress.js.map +1 -1
- package/dist/esm/components/jdi/JDIDocumentUpload.js +1 -1
- package/dist/esm/components/jdi/JDIDocumentUpload.js.map +1 -1
- package/dist/esm/components/selfie/selfie-flow/SelfieRecorder.js +26 -7
- package/dist/esm/components/selfie/selfie-flow/SelfieRecorder.js.map +1 -1
- package/dist/esm/components/session/DocumentCheck.js +2 -2
- package/dist/esm/components/session/DocumentCheck.js.map +1 -1
- package/dist/esm/components/session/UserInputForm/CustomFormFields.js +42 -45
- package/dist/esm/components/session/UserInputForm/CustomFormFields.js.map +1 -1
- package/dist/esm/components/session/UserInputForm/DatePickerField.js +132 -0
- package/dist/esm/components/session/UserInputForm/DatePickerField.js.map +1 -0
- package/dist/esm/components/session/UserInputForm.js +2 -2
- package/dist/esm/components/session/UserInputForm.js.map +1 -1
- package/dist/esm/components/session/VideoWorkInProgress.js +1 -1
- package/dist/esm/components/session/VideoWorkInProgress.js.map +1 -1
- package/dist/esm/components/signature-electronic/DocusealSignature.js +2 -1
- package/dist/esm/components/signature-electronic/DocusealSignature.js.map +1 -1
- package/dist/esm/components/signature-electronic/SignatureElectronic.js +2 -1
- package/dist/esm/components/signature-electronic/SignatureElectronic.js.map +1 -1
- package/dist/esm/components/signature-electronic/SignatureElectronicIntroduction.js +2 -1
- package/dist/esm/components/signature-electronic/SignatureElectronicIntroduction.js.map +1 -1
- package/dist/esm/components/start-flow/CGU.js +5 -2
- package/dist/esm/components/start-flow/CGU.js.map +1 -1
- package/dist/esm/components/start-flow/Start.js +5 -2
- package/dist/esm/components/start-flow/Start.js.map +1 -1
- package/dist/esm/components/template/ExternalVerificationNodeHandler.js +2 -1
- package/dist/esm/components/template/ExternalVerificationNodeHandler.js.map +1 -1
- package/dist/esm/components/ui/MobilePageLayout.js +1 -1
- package/dist/esm/components/ui/MobilePageLayout.js.map +1 -1
- package/dist/esm/components/ui/Paper.js +2 -2
- package/dist/esm/components/ui/Paper.js.map +1 -1
- package/dist/esm/components/ui/SelectComponent.js +3 -3
- package/dist/esm/components/ui/SelectComponent.js.map +1 -1
- package/dist/esm/hooks/useUserInputForm.js +92 -31
- package/dist/esm/hooks/useUserInputForm.js.map +1 -1
- package/dist/esm/i18n/en.json.js +35 -5
- package/dist/esm/i18n/en.json.js.map +1 -1
- package/dist/esm/i18n/fr.json.js +36 -6
- package/dist/esm/i18n/fr.json.js.map +1 -1
- package/dist/esm/index.css.js +1 -1
- package/dist/esm/node_modules/date-fns/locale/_lib/buildFormatLongFn.js +11 -0
- package/dist/esm/node_modules/date-fns/locale/_lib/buildFormatLongFn.js.map +1 -0
- package/dist/esm/node_modules/date-fns/locale/_lib/buildLocalizeFn.js +65 -0
- package/dist/esm/node_modules/date-fns/locale/_lib/buildLocalizeFn.js.map +1 -0
- package/dist/esm/node_modules/date-fns/locale/_lib/buildMatchFn.js +60 -0
- package/dist/esm/node_modules/date-fns/locale/_lib/buildMatchFn.js.map +1 -0
- package/dist/esm/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js +23 -0
- package/dist/esm/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js.map +1 -0
- package/dist/esm/node_modules/date-fns/locale/en-US/_lib/formatDistance.js +104 -0
- package/dist/esm/node_modules/date-fns/locale/en-US/_lib/formatDistance.js.map +1 -0
- package/dist/esm/node_modules/date-fns/locale/en-US/_lib/formatLong.js +42 -0
- package/dist/esm/node_modules/date-fns/locale/en-US/_lib/formatLong.js.map +1 -0
- package/dist/esm/node_modules/date-fns/locale/en-US/_lib/formatRelative.js +14 -0
- package/dist/esm/node_modules/date-fns/locale/en-US/_lib/formatRelative.js.map +1 -0
- package/dist/esm/node_modules/date-fns/locale/en-US/_lib/localize.js +190 -0
- package/dist/esm/node_modules/date-fns/locale/en-US/_lib/localize.js.map +1 -0
- package/dist/esm/node_modules/date-fns/locale/en-US/_lib/match.js +135 -0
- package/dist/esm/node_modules/date-fns/locale/en-US/_lib/match.js.map +1 -0
- package/dist/esm/node_modules/date-fns/locale/en-US.js +29 -0
- package/dist/esm/node_modules/date-fns/locale/en-US.js.map +1 -0
- package/dist/esm/node_modules/date-fns/locale/fr/_lib/formatDistance.js +103 -0
- package/dist/esm/node_modules/date-fns/locale/fr/_lib/formatDistance.js.map +1 -0
- package/dist/esm/node_modules/date-fns/locale/fr/_lib/formatLong.js +42 -0
- package/dist/esm/node_modules/date-fns/locale/fr/_lib/formatLong.js.map +1 -0
- package/dist/esm/node_modules/date-fns/locale/fr/_lib/formatRelative.js +14 -0
- package/dist/esm/node_modules/date-fns/locale/fr/_lib/formatRelative.js.map +1 -0
- package/dist/esm/node_modules/date-fns/locale/fr/_lib/localize.js +168 -0
- package/dist/esm/node_modules/date-fns/locale/fr/_lib/localize.js.map +1 -0
- package/dist/esm/node_modules/date-fns/locale/fr/_lib/match.js +136 -0
- package/dist/esm/node_modules/date-fns/locale/fr/_lib/match.js.map +1 -0
- package/dist/esm/node_modules/date-fns/locale/fr.js +29 -0
- package/dist/esm/node_modules/date-fns/locale/fr.js.map +1 -0
- package/dist/esm/providers/I18nProvider.js +2 -2
- package/dist/esm/providers/I18nProvider.js.map +1 -1
- package/dist/esm/types/session.js +4 -0
- package/dist/esm/types/session.js.map +1 -0
- package/dist/esm/utils/customFieldValidation.js +56 -0
- package/dist/esm/utils/customFieldValidation.js.map +1 -0
- package/jest.config.js +1 -0
- package/package.json +4 -1
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
import { buildLocalizeFn } from '../../_lib/buildLocalizeFn.js';
|
|
2
|
+
|
|
3
|
+
const eraValues = {
|
|
4
|
+
narrow: ["av. J.-C", "ap. J.-C"],
|
|
5
|
+
abbreviated: ["av. J.-C", "ap. J.-C"],
|
|
6
|
+
wide: ["avant Jésus-Christ", "après Jésus-Christ"],
|
|
7
|
+
};
|
|
8
|
+
|
|
9
|
+
const quarterValues = {
|
|
10
|
+
narrow: ["T1", "T2", "T3", "T4"],
|
|
11
|
+
abbreviated: ["1er trim.", "2ème trim.", "3ème trim.", "4ème trim."],
|
|
12
|
+
wide: ["1er trimestre", "2ème trimestre", "3ème trimestre", "4ème trimestre"],
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
const monthValues = {
|
|
16
|
+
narrow: ["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"],
|
|
17
|
+
abbreviated: [
|
|
18
|
+
"janv.",
|
|
19
|
+
"févr.",
|
|
20
|
+
"mars",
|
|
21
|
+
"avr.",
|
|
22
|
+
"mai",
|
|
23
|
+
"juin",
|
|
24
|
+
"juil.",
|
|
25
|
+
"août",
|
|
26
|
+
"sept.",
|
|
27
|
+
"oct.",
|
|
28
|
+
"nov.",
|
|
29
|
+
"déc.",
|
|
30
|
+
],
|
|
31
|
+
|
|
32
|
+
wide: [
|
|
33
|
+
"janvier",
|
|
34
|
+
"février",
|
|
35
|
+
"mars",
|
|
36
|
+
"avril",
|
|
37
|
+
"mai",
|
|
38
|
+
"juin",
|
|
39
|
+
"juillet",
|
|
40
|
+
"août",
|
|
41
|
+
"septembre",
|
|
42
|
+
"octobre",
|
|
43
|
+
"novembre",
|
|
44
|
+
"décembre",
|
|
45
|
+
],
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
const dayValues = {
|
|
49
|
+
narrow: ["D", "L", "M", "M", "J", "V", "S"],
|
|
50
|
+
short: ["di", "lu", "ma", "me", "je", "ve", "sa"],
|
|
51
|
+
abbreviated: ["dim.", "lun.", "mar.", "mer.", "jeu.", "ven.", "sam."],
|
|
52
|
+
|
|
53
|
+
wide: [
|
|
54
|
+
"dimanche",
|
|
55
|
+
"lundi",
|
|
56
|
+
"mardi",
|
|
57
|
+
"mercredi",
|
|
58
|
+
"jeudi",
|
|
59
|
+
"vendredi",
|
|
60
|
+
"samedi",
|
|
61
|
+
],
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
const dayPeriodValues = {
|
|
65
|
+
narrow: {
|
|
66
|
+
am: "AM",
|
|
67
|
+
pm: "PM",
|
|
68
|
+
midnight: "minuit",
|
|
69
|
+
noon: "midi",
|
|
70
|
+
morning: "mat.",
|
|
71
|
+
afternoon: "ap.m.",
|
|
72
|
+
evening: "soir",
|
|
73
|
+
night: "mat.",
|
|
74
|
+
},
|
|
75
|
+
abbreviated: {
|
|
76
|
+
am: "AM",
|
|
77
|
+
pm: "PM",
|
|
78
|
+
midnight: "minuit",
|
|
79
|
+
noon: "midi",
|
|
80
|
+
morning: "matin",
|
|
81
|
+
afternoon: "après-midi",
|
|
82
|
+
evening: "soir",
|
|
83
|
+
night: "matin",
|
|
84
|
+
},
|
|
85
|
+
wide: {
|
|
86
|
+
am: "AM",
|
|
87
|
+
pm: "PM",
|
|
88
|
+
midnight: "minuit",
|
|
89
|
+
noon: "midi",
|
|
90
|
+
morning: "du matin",
|
|
91
|
+
afternoon: "de l’après-midi",
|
|
92
|
+
evening: "du soir",
|
|
93
|
+
night: "du matin",
|
|
94
|
+
},
|
|
95
|
+
};
|
|
96
|
+
|
|
97
|
+
const ordinalNumber = (dirtyNumber, options) => {
|
|
98
|
+
const number = Number(dirtyNumber);
|
|
99
|
+
const unit = options?.unit;
|
|
100
|
+
|
|
101
|
+
if (number === 0) return "0";
|
|
102
|
+
|
|
103
|
+
const feminineUnits = ["year", "week", "hour", "minute", "second"];
|
|
104
|
+
let suffix;
|
|
105
|
+
|
|
106
|
+
if (number === 1) {
|
|
107
|
+
suffix = unit && feminineUnits.includes(unit) ? "ère" : "er";
|
|
108
|
+
} else {
|
|
109
|
+
suffix = "ème";
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
return number + suffix;
|
|
113
|
+
};
|
|
114
|
+
|
|
115
|
+
const LONG_MONTHS_TOKENS = ["MMM", "MMMM"];
|
|
116
|
+
|
|
117
|
+
const localize = {
|
|
118
|
+
preprocessor: (date, parts) => {
|
|
119
|
+
// Replaces the `do` tokens with `d` when used with long month tokens and the day of the month is greater than one.
|
|
120
|
+
// Use case "do MMMM" => 1er août, 29 août
|
|
121
|
+
// see https://github.com/date-fns/date-fns/issues/1391
|
|
122
|
+
|
|
123
|
+
if (date.getDate() === 1) return parts;
|
|
124
|
+
|
|
125
|
+
const hasLongMonthToken = parts.some(
|
|
126
|
+
(part) => part.isToken && LONG_MONTHS_TOKENS.includes(part.value),
|
|
127
|
+
);
|
|
128
|
+
|
|
129
|
+
if (!hasLongMonthToken) return parts;
|
|
130
|
+
|
|
131
|
+
return parts.map((part) =>
|
|
132
|
+
part.isToken && part.value === "do"
|
|
133
|
+
? { isToken: true, value: "d" }
|
|
134
|
+
: part,
|
|
135
|
+
);
|
|
136
|
+
},
|
|
137
|
+
|
|
138
|
+
ordinalNumber,
|
|
139
|
+
|
|
140
|
+
era: buildLocalizeFn({
|
|
141
|
+
values: eraValues,
|
|
142
|
+
defaultWidth: "wide",
|
|
143
|
+
}),
|
|
144
|
+
|
|
145
|
+
quarter: buildLocalizeFn({
|
|
146
|
+
values: quarterValues,
|
|
147
|
+
defaultWidth: "wide",
|
|
148
|
+
argumentCallback: (quarter) => quarter - 1,
|
|
149
|
+
}),
|
|
150
|
+
|
|
151
|
+
month: buildLocalizeFn({
|
|
152
|
+
values: monthValues,
|
|
153
|
+
defaultWidth: "wide",
|
|
154
|
+
}),
|
|
155
|
+
|
|
156
|
+
day: buildLocalizeFn({
|
|
157
|
+
values: dayValues,
|
|
158
|
+
defaultWidth: "wide",
|
|
159
|
+
}),
|
|
160
|
+
|
|
161
|
+
dayPeriod: buildLocalizeFn({
|
|
162
|
+
values: dayPeriodValues,
|
|
163
|
+
defaultWidth: "wide",
|
|
164
|
+
}),
|
|
165
|
+
};
|
|
166
|
+
|
|
167
|
+
export { localize };
|
|
168
|
+
//# sourceMappingURL=localize.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"localize.js","sources":["../../../../../../../node_modules/date-fns/locale/fr/_lib/localize.js"],"sourcesContent":["import { buildLocalizeFn } from \"../../_lib/buildLocalizeFn.js\";\n\nconst eraValues = {\n narrow: [\"av. J.-C\", \"ap. J.-C\"],\n abbreviated: [\"av. J.-C\", \"ap. J.-C\"],\n wide: [\"avant Jésus-Christ\", \"après Jésus-Christ\"],\n};\n\nconst quarterValues = {\n narrow: [\"T1\", \"T2\", \"T3\", \"T4\"],\n abbreviated: [\"1er trim.\", \"2ème trim.\", \"3ème trim.\", \"4ème trim.\"],\n wide: [\"1er trimestre\", \"2ème trimestre\", \"3ème trimestre\", \"4ème trimestre\"],\n};\n\nconst monthValues = {\n narrow: [\"J\", \"F\", \"M\", \"A\", \"M\", \"J\", \"J\", \"A\", \"S\", \"O\", \"N\", \"D\"],\n abbreviated: [\n \"janv.\",\n \"févr.\",\n \"mars\",\n \"avr.\",\n \"mai\",\n \"juin\",\n \"juil.\",\n \"août\",\n \"sept.\",\n \"oct.\",\n \"nov.\",\n \"déc.\",\n ],\n\n wide: [\n \"janvier\",\n \"février\",\n \"mars\",\n \"avril\",\n \"mai\",\n \"juin\",\n \"juillet\",\n \"août\",\n \"septembre\",\n \"octobre\",\n \"novembre\",\n \"décembre\",\n ],\n};\n\nconst dayValues = {\n narrow: [\"D\", \"L\", \"M\", \"M\", \"J\", \"V\", \"S\"],\n short: [\"di\", \"lu\", \"ma\", \"me\", \"je\", \"ve\", \"sa\"],\n abbreviated: [\"dim.\", \"lun.\", \"mar.\", \"mer.\", \"jeu.\", \"ven.\", \"sam.\"],\n\n wide: [\n \"dimanche\",\n \"lundi\",\n \"mardi\",\n \"mercredi\",\n \"jeudi\",\n \"vendredi\",\n \"samedi\",\n ],\n};\n\nconst dayPeriodValues = {\n narrow: {\n am: \"AM\",\n pm: \"PM\",\n midnight: \"minuit\",\n noon: \"midi\",\n morning: \"mat.\",\n afternoon: \"ap.m.\",\n evening: \"soir\",\n night: \"mat.\",\n },\n abbreviated: {\n am: \"AM\",\n pm: \"PM\",\n midnight: \"minuit\",\n noon: \"midi\",\n morning: \"matin\",\n afternoon: \"après-midi\",\n evening: \"soir\",\n night: \"matin\",\n },\n wide: {\n am: \"AM\",\n pm: \"PM\",\n midnight: \"minuit\",\n noon: \"midi\",\n morning: \"du matin\",\n afternoon: \"de l’après-midi\",\n evening: \"du soir\",\n night: \"du matin\",\n },\n};\n\nconst ordinalNumber = (dirtyNumber, options) => {\n const number = Number(dirtyNumber);\n const unit = options?.unit;\n\n if (number === 0) return \"0\";\n\n const feminineUnits = [\"year\", \"week\", \"hour\", \"minute\", \"second\"];\n let suffix;\n\n if (number === 1) {\n suffix = unit && feminineUnits.includes(unit) ? \"ère\" : \"er\";\n } else {\n suffix = \"ème\";\n }\n\n return number + suffix;\n};\n\nconst LONG_MONTHS_TOKENS = [\"MMM\", \"MMMM\"];\n\nexport const localize = {\n preprocessor: (date, parts) => {\n // Replaces the `do` tokens with `d` when used with long month tokens and the day of the month is greater than one.\n // Use case \"do MMMM\" => 1er août, 29 août\n // see https://github.com/date-fns/date-fns/issues/1391\n\n if (date.getDate() === 1) return parts;\n\n const hasLongMonthToken = parts.some(\n (part) => part.isToken && LONG_MONTHS_TOKENS.includes(part.value),\n );\n\n if (!hasLongMonthToken) return parts;\n\n return parts.map((part) =>\n part.isToken && part.value === \"do\"\n ? { isToken: true, value: \"d\" }\n : part,\n );\n },\n\n ordinalNumber,\n\n era: buildLocalizeFn({\n values: eraValues,\n defaultWidth: \"wide\",\n }),\n\n quarter: buildLocalizeFn({\n values: quarterValues,\n defaultWidth: \"wide\",\n argumentCallback: (quarter) => quarter - 1,\n }),\n\n month: buildLocalizeFn({\n values: monthValues,\n defaultWidth: \"wide\",\n }),\n\n day: buildLocalizeFn({\n values: dayValues,\n defaultWidth: \"wide\",\n }),\n\n dayPeriod: buildLocalizeFn({\n values: dayPeriodValues,\n defaultWidth: \"wide\",\n }),\n};\n"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { buildMatchFn } from '../../_lib/buildMatchFn.js';
|
|
2
|
+
import { buildMatchPatternFn } from '../../_lib/buildMatchPatternFn.js';
|
|
3
|
+
|
|
4
|
+
const matchOrdinalNumberPattern = /^(\d+)(ième|ère|ème|er|e)?/i;
|
|
5
|
+
const parseOrdinalNumberPattern = /\d+/i;
|
|
6
|
+
|
|
7
|
+
const matchEraPatterns = {
|
|
8
|
+
narrow: /^(av\.J\.C|ap\.J\.C|ap\.J\.-C)/i,
|
|
9
|
+
abbreviated: /^(av\.J\.-C|av\.J-C|apr\.J\.-C|apr\.J-C|ap\.J-C)/i,
|
|
10
|
+
wide: /^(avant Jésus-Christ|après Jésus-Christ)/i,
|
|
11
|
+
};
|
|
12
|
+
const parseEraPatterns = {
|
|
13
|
+
any: [/^av/i, /^ap/i],
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
const matchQuarterPatterns = {
|
|
17
|
+
narrow: /^T?[1234]/i,
|
|
18
|
+
abbreviated: /^[1234](er|ème|e)? trim\.?/i,
|
|
19
|
+
wide: /^[1234](er|ème|e)? trimestre/i,
|
|
20
|
+
};
|
|
21
|
+
const parseQuarterPatterns = {
|
|
22
|
+
any: [/1/i, /2/i, /3/i, /4/i],
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
const matchMonthPatterns = {
|
|
26
|
+
narrow: /^[jfmasond]/i,
|
|
27
|
+
abbreviated:
|
|
28
|
+
/^(janv|févr|mars|avr|mai|juin|juill|juil|août|sept|oct|nov|déc)\.?/i,
|
|
29
|
+
wide: /^(janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i,
|
|
30
|
+
};
|
|
31
|
+
const parseMonthPatterns = {
|
|
32
|
+
narrow: [
|
|
33
|
+
/^j/i,
|
|
34
|
+
/^f/i,
|
|
35
|
+
/^m/i,
|
|
36
|
+
/^a/i,
|
|
37
|
+
/^m/i,
|
|
38
|
+
/^j/i,
|
|
39
|
+
/^j/i,
|
|
40
|
+
/^a/i,
|
|
41
|
+
/^s/i,
|
|
42
|
+
/^o/i,
|
|
43
|
+
/^n/i,
|
|
44
|
+
/^d/i,
|
|
45
|
+
],
|
|
46
|
+
|
|
47
|
+
any: [
|
|
48
|
+
/^ja/i,
|
|
49
|
+
/^f/i,
|
|
50
|
+
/^mar/i,
|
|
51
|
+
/^av/i,
|
|
52
|
+
/^ma/i,
|
|
53
|
+
/^juin/i,
|
|
54
|
+
/^juil/i,
|
|
55
|
+
/^ao/i,
|
|
56
|
+
/^s/i,
|
|
57
|
+
/^o/i,
|
|
58
|
+
/^n/i,
|
|
59
|
+
/^d/i,
|
|
60
|
+
],
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
const matchDayPatterns = {
|
|
64
|
+
narrow: /^[lmjvsd]/i,
|
|
65
|
+
short: /^(di|lu|ma|me|je|ve|sa)/i,
|
|
66
|
+
abbreviated: /^(dim|lun|mar|mer|jeu|ven|sam)\.?/i,
|
|
67
|
+
wide: /^(dimanche|lundi|mardi|mercredi|jeudi|vendredi|samedi)/i,
|
|
68
|
+
};
|
|
69
|
+
const parseDayPatterns = {
|
|
70
|
+
narrow: [/^d/i, /^l/i, /^m/i, /^m/i, /^j/i, /^v/i, /^s/i],
|
|
71
|
+
any: [/^di/i, /^lu/i, /^ma/i, /^me/i, /^je/i, /^ve/i, /^sa/i],
|
|
72
|
+
};
|
|
73
|
+
|
|
74
|
+
const matchDayPeriodPatterns = {
|
|
75
|
+
narrow: /^(a|p|minuit|midi|mat\.?|ap\.?m\.?|soir|nuit)/i,
|
|
76
|
+
any: /^([ap]\.?\s?m\.?|du matin|de l'après[-\s]midi|du soir|de la nuit)/i,
|
|
77
|
+
};
|
|
78
|
+
const parseDayPeriodPatterns = {
|
|
79
|
+
any: {
|
|
80
|
+
am: /^a/i,
|
|
81
|
+
pm: /^p/i,
|
|
82
|
+
midnight: /^min/i,
|
|
83
|
+
noon: /^mid/i,
|
|
84
|
+
morning: /mat/i,
|
|
85
|
+
afternoon: /ap/i,
|
|
86
|
+
evening: /soir/i,
|
|
87
|
+
night: /nuit/i,
|
|
88
|
+
},
|
|
89
|
+
};
|
|
90
|
+
|
|
91
|
+
const match = {
|
|
92
|
+
ordinalNumber: buildMatchPatternFn({
|
|
93
|
+
matchPattern: matchOrdinalNumberPattern,
|
|
94
|
+
parsePattern: parseOrdinalNumberPattern,
|
|
95
|
+
valueCallback: (value) => parseInt(value),
|
|
96
|
+
}),
|
|
97
|
+
|
|
98
|
+
era: buildMatchFn({
|
|
99
|
+
matchPatterns: matchEraPatterns,
|
|
100
|
+
defaultMatchWidth: "wide",
|
|
101
|
+
parsePatterns: parseEraPatterns,
|
|
102
|
+
defaultParseWidth: "any",
|
|
103
|
+
}),
|
|
104
|
+
|
|
105
|
+
quarter: buildMatchFn({
|
|
106
|
+
matchPatterns: matchQuarterPatterns,
|
|
107
|
+
defaultMatchWidth: "wide",
|
|
108
|
+
parsePatterns: parseQuarterPatterns,
|
|
109
|
+
defaultParseWidth: "any",
|
|
110
|
+
valueCallback: (index) => index + 1,
|
|
111
|
+
}),
|
|
112
|
+
|
|
113
|
+
month: buildMatchFn({
|
|
114
|
+
matchPatterns: matchMonthPatterns,
|
|
115
|
+
defaultMatchWidth: "wide",
|
|
116
|
+
parsePatterns: parseMonthPatterns,
|
|
117
|
+
defaultParseWidth: "any",
|
|
118
|
+
}),
|
|
119
|
+
|
|
120
|
+
day: buildMatchFn({
|
|
121
|
+
matchPatterns: matchDayPatterns,
|
|
122
|
+
defaultMatchWidth: "wide",
|
|
123
|
+
parsePatterns: parseDayPatterns,
|
|
124
|
+
defaultParseWidth: "any",
|
|
125
|
+
}),
|
|
126
|
+
|
|
127
|
+
dayPeriod: buildMatchFn({
|
|
128
|
+
matchPatterns: matchDayPeriodPatterns,
|
|
129
|
+
defaultMatchWidth: "any",
|
|
130
|
+
parsePatterns: parseDayPeriodPatterns,
|
|
131
|
+
defaultParseWidth: "any",
|
|
132
|
+
}),
|
|
133
|
+
};
|
|
134
|
+
|
|
135
|
+
export { match };
|
|
136
|
+
//# sourceMappingURL=match.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"match.js","sources":["../../../../../../../node_modules/date-fns/locale/fr/_lib/match.js"],"sourcesContent":["import { buildMatchFn } from \"../../_lib/buildMatchFn.js\";\nimport { buildMatchPatternFn } from \"../../_lib/buildMatchPatternFn.js\";\n\nconst matchOrdinalNumberPattern = /^(\\d+)(ième|ère|ème|er|e)?/i;\nconst parseOrdinalNumberPattern = /\\d+/i;\n\nconst matchEraPatterns = {\n narrow: /^(av\\.J\\.C|ap\\.J\\.C|ap\\.J\\.-C)/i,\n abbreviated: /^(av\\.J\\.-C|av\\.J-C|apr\\.J\\.-C|apr\\.J-C|ap\\.J-C)/i,\n wide: /^(avant Jésus-Christ|après Jésus-Christ)/i,\n};\nconst parseEraPatterns = {\n any: [/^av/i, /^ap/i],\n};\n\nconst matchQuarterPatterns = {\n narrow: /^T?[1234]/i,\n abbreviated: /^[1234](er|ème|e)? trim\\.?/i,\n wide: /^[1234](er|ème|e)? trimestre/i,\n};\nconst parseQuarterPatterns = {\n any: [/1/i, /2/i, /3/i, /4/i],\n};\n\nconst matchMonthPatterns = {\n narrow: /^[jfmasond]/i,\n abbreviated:\n /^(janv|févr|mars|avr|mai|juin|juill|juil|août|sept|oct|nov|déc)\\.?/i,\n wide: /^(janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i,\n};\nconst parseMonthPatterns = {\n narrow: [\n /^j/i,\n /^f/i,\n /^m/i,\n /^a/i,\n /^m/i,\n /^j/i,\n /^j/i,\n /^a/i,\n /^s/i,\n /^o/i,\n /^n/i,\n /^d/i,\n ],\n\n any: [\n /^ja/i,\n /^f/i,\n /^mar/i,\n /^av/i,\n /^ma/i,\n /^juin/i,\n /^juil/i,\n /^ao/i,\n /^s/i,\n /^o/i,\n /^n/i,\n /^d/i,\n ],\n};\n\nconst matchDayPatterns = {\n narrow: /^[lmjvsd]/i,\n short: /^(di|lu|ma|me|je|ve|sa)/i,\n abbreviated: /^(dim|lun|mar|mer|jeu|ven|sam)\\.?/i,\n wide: /^(dimanche|lundi|mardi|mercredi|jeudi|vendredi|samedi)/i,\n};\nconst parseDayPatterns = {\n narrow: [/^d/i, /^l/i, /^m/i, /^m/i, /^j/i, /^v/i, /^s/i],\n any: [/^di/i, /^lu/i, /^ma/i, /^me/i, /^je/i, /^ve/i, /^sa/i],\n};\n\nconst matchDayPeriodPatterns = {\n narrow: /^(a|p|minuit|midi|mat\\.?|ap\\.?m\\.?|soir|nuit)/i,\n any: /^([ap]\\.?\\s?m\\.?|du matin|de l'après[-\\s]midi|du soir|de la nuit)/i,\n};\nconst parseDayPeriodPatterns = {\n any: {\n am: /^a/i,\n pm: /^p/i,\n midnight: /^min/i,\n noon: /^mid/i,\n morning: /mat/i,\n afternoon: /ap/i,\n evening: /soir/i,\n night: /nuit/i,\n },\n};\n\nexport const match = {\n ordinalNumber: buildMatchPatternFn({\n matchPattern: matchOrdinalNumberPattern,\n parsePattern: parseOrdinalNumberPattern,\n valueCallback: (value) => parseInt(value),\n }),\n\n era: buildMatchFn({\n matchPatterns: matchEraPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseEraPatterns,\n defaultParseWidth: \"any\",\n }),\n\n quarter: buildMatchFn({\n matchPatterns: matchQuarterPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseQuarterPatterns,\n defaultParseWidth: \"any\",\n valueCallback: (index) => index + 1,\n }),\n\n month: buildMatchFn({\n matchPatterns: matchMonthPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseMonthPatterns,\n defaultParseWidth: \"any\",\n }),\n\n day: buildMatchFn({\n matchPatterns: matchDayPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseDayPatterns,\n defaultParseWidth: \"any\",\n }),\n\n dayPeriod: buildMatchFn({\n matchPatterns: matchDayPeriodPatterns,\n defaultMatchWidth: \"any\",\n parsePatterns: parseDayPeriodPatterns,\n defaultParseWidth: \"any\",\n }),\n};\n"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { formatDistance } from './fr/_lib/formatDistance.js';
|
|
2
|
+
import { formatLong } from './fr/_lib/formatLong.js';
|
|
3
|
+
import { formatRelative } from './fr/_lib/formatRelative.js';
|
|
4
|
+
import { localize } from './fr/_lib/localize.js';
|
|
5
|
+
import { match } from './fr/_lib/match.js';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* @category Locales
|
|
9
|
+
* @summary French locale.
|
|
10
|
+
* @language French
|
|
11
|
+
* @iso-639-2 fra
|
|
12
|
+
* @author Jean Dupouy [@izeau](https://github.com/izeau)
|
|
13
|
+
* @author François B [@fbonzon](https://github.com/fbonzon)
|
|
14
|
+
*/
|
|
15
|
+
const fr = {
|
|
16
|
+
code: "fr",
|
|
17
|
+
formatDistance: formatDistance,
|
|
18
|
+
formatLong: formatLong,
|
|
19
|
+
formatRelative: formatRelative,
|
|
20
|
+
localize: localize,
|
|
21
|
+
match: match,
|
|
22
|
+
options: {
|
|
23
|
+
weekStartsOn: 1 /* Monday */,
|
|
24
|
+
firstWeekContainsDate: 4,
|
|
25
|
+
},
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
export { fr };
|
|
29
|
+
//# sourceMappingURL=fr.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fr.js","sources":["../../../../../node_modules/date-fns/locale/fr.js"],"sourcesContent":["import { formatDistance } from \"./fr/_lib/formatDistance.js\";\nimport { formatLong } from \"./fr/_lib/formatLong.js\";\nimport { formatRelative } from \"./fr/_lib/formatRelative.js\";\nimport { localize } from \"./fr/_lib/localize.js\";\nimport { match } from \"./fr/_lib/match.js\";\n\n/**\n * @category Locales\n * @summary French locale.\n * @language French\n * @iso-639-2 fra\n * @author Jean Dupouy [@izeau](https://github.com/izeau)\n * @author François B [@fbonzon](https://github.com/fbonzon)\n */\nexport const fr = {\n code: \"fr\",\n formatDistance: formatDistance,\n formatLong: formatLong,\n formatRelative: formatRelative,\n localize: localize,\n match: match,\n options: {\n weekStartsOn: 1 /* Monday */,\n firstWeekContainsDate: 4,\n },\n};\n\n// Fallback for modularized imports:\nexport default fr;\n"],"names":[],"mappings":";;;;;;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,EAAE,GAAG;AAClB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE,cAAc,EAAE,cAAc;AAChC,EAAE,UAAU,EAAE,UAAU;AACxB,EAAE,cAAc,EAAE,cAAc;AAChC,EAAE,QAAQ,EAAE,QAAQ;AACpB,EAAE,KAAK,EAAE,KAAK;AACd,EAAE,OAAO,EAAE;AACX,IAAI,YAAY,EAAE,CAAC;AACnB,IAAI,qBAAqB,EAAE,CAAC;AAC5B,GAAG;AACH;;;;","x_google_ignoreList":[0]}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { jsx } from 'react/jsx-runtime';
|
|
2
|
-
import
|
|
2
|
+
import React__default, { createContext, useEffect, useContext } from 'react';
|
|
3
3
|
import { I18nextProvider } from 'react-i18next';
|
|
4
4
|
import sdkI18n from '../i18n/index.js';
|
|
5
5
|
|
|
6
6
|
var I18nContext = createContext(undefined);
|
|
7
7
|
var I18nProvider = function (_a) {
|
|
8
8
|
var children = _a.children, _b = _a.defaultLanguage, defaultLanguage = _b === void 0 ? 'fr' : _b;
|
|
9
|
-
var _c =
|
|
9
|
+
var _c = React__default.useState(defaultLanguage), language = _c[0], setLanguageState = _c[1];
|
|
10
10
|
useEffect(function () {
|
|
11
11
|
// Utiliser l'instance SDK pour changer la langue
|
|
12
12
|
sdkI18n.changeLanguage(language);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"I18nProvider.js","sources":["../../../../src/providers/I18nProvider.tsx"],"sourcesContent":["import React, { createContext, useContext, useEffect } from 'react';\nimport { I18nextProvider } from 'react-i18next';\nimport sdkI18n from '../i18n';\n// L'instance i18n du SDK est complètement séparée de celle de l'app\n\ninterface I18nContextType {\n language: string;\n setLanguage: (lang: string) => void;\n}\n\nconst I18nContext = createContext<I18nContextType | undefined>(undefined);\n\ninterface I18nProviderProps {\n children: React.ReactNode;\n defaultLanguage?: string;\n}\n\nexport const I18nProvider: React.FC<I18nProviderProps> = ({ \n children, \n defaultLanguage = 'fr' \n}) => {\n const [language, setLanguageState] = React.useState(defaultLanguage);\n\n useEffect(() => {\n // Utiliser l'instance SDK pour changer la langue\n sdkI18n.changeLanguage(language);\n }, [language]);\n\n const setLanguage = (lang: string) => {\n setLanguageState(lang);\n sdkI18n.changeLanguage(lang);\n };\n\n return (\n <I18nextProvider i18n={sdkI18n}>\n <I18nContext.Provider value={{ language, setLanguage }}>\n {children}\n </I18nContext.Provider>\n </I18nextProvider>\n );\n};\n\nexport const useI18nContext = () => {\n const context = useContext(I18nContext);\n if (context === undefined) {\n throw new Error('useI18nContext must be used within an I18nProvider');\n }\n return context;\n};\n"],"names":["_jsx"],"mappings":";;;;;AAUA,IAAM,WAAW,GAAG,aAAa,CAA8B,SAAS,CAAC;AAOlE,IAAM,YAAY,GAAgC,UAAC,EAGzD,EAAA;AAFC,IAAA,IAAA,QAAQ,cAAA,EACR,EAAA,GAAA,EAAA,CAAA,eAAsB,EAAtB,eAAe,GAAA,EAAA,KAAA,MAAA,GAAG,IAAI,GAAA,EAAA;AAEhB,IAAA,IAAA,EAAA,GAA+
|
|
1
|
+
{"version":3,"file":"I18nProvider.js","sources":["../../../../src/providers/I18nProvider.tsx"],"sourcesContent":["import React, { createContext, useContext, useEffect } from 'react';\nimport { I18nextProvider } from 'react-i18next';\nimport sdkI18n from '../i18n';\n// L'instance i18n du SDK est complètement séparée de celle de l'app\n\ninterface I18nContextType {\n language: string;\n setLanguage: (lang: string) => void;\n}\n\nconst I18nContext = createContext<I18nContextType | undefined>(undefined);\n\ninterface I18nProviderProps {\n children: React.ReactNode;\n defaultLanguage?: string;\n}\n\nexport const I18nProvider: React.FC<I18nProviderProps> = ({ \n children, \n defaultLanguage = 'fr' \n}) => {\n const [language, setLanguageState] = React.useState(defaultLanguage);\n\n useEffect(() => {\n // Utiliser l'instance SDK pour changer la langue\n sdkI18n.changeLanguage(language);\n }, [language]);\n\n const setLanguage = (lang: string) => {\n setLanguageState(lang);\n sdkI18n.changeLanguage(lang);\n };\n\n return (\n <I18nextProvider i18n={sdkI18n}>\n <I18nContext.Provider value={{ language, setLanguage }}>\n {children}\n </I18nContext.Provider>\n </I18nextProvider>\n );\n};\n\nexport const useI18nContext = () => {\n const context = useContext(I18nContext);\n if (context === undefined) {\n throw new Error('useI18nContext must be used within an I18nProvider');\n }\n return context;\n};\n"],"names":["React","_jsx"],"mappings":";;;;;AAUA,IAAM,WAAW,GAAG,aAAa,CAA8B,SAAS,CAAC;AAOlE,IAAM,YAAY,GAAgC,UAAC,EAGzD,EAAA;AAFC,IAAA,IAAA,QAAQ,cAAA,EACR,EAAA,GAAA,EAAA,CAAA,eAAsB,EAAtB,eAAe,GAAA,EAAA,KAAA,MAAA,GAAG,IAAI,GAAA,EAAA;AAEhB,IAAA,IAAA,EAAA,GAA+BA,cAAK,CAAC,QAAQ,CAAC,eAAe,CAAC,EAA7D,QAAQ,GAAA,EAAA,CAAA,CAAA,CAAA,EAAE,gBAAgB,QAAmC;AAEpE,IAAA,SAAS,CAAC,YAAA;;AAER,QAAA,OAAO,CAAC,cAAc,CAAC,QAAQ,CAAC;AAClC,IAAA,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;IAEd,IAAM,WAAW,GAAG,UAAC,IAAY,EAAA;QAC/B,gBAAgB,CAAC,IAAI,CAAC;AACtB,QAAA,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC;AAC9B,IAAA,CAAC;IAED,QACEC,GAAA,CAAC,eAAe,EAAA,EAAC,IAAI,EAAE,OAAO,EAAA,QAAA,EAC5BA,GAAA,CAAC,WAAW,CAAC,QAAQ,EAAA,EAAC,KAAK,EAAE,EAAE,QAAQ,EAAA,QAAA,EAAE,WAAW,EAAA,WAAA,EAAE,EAAA,QAAA,EACnD,QAAQ,EAAA,CACY,EAAA,CACP;AAEtB;AAEO,IAAM,cAAc,GAAG,YAAA;AAC5B,IAAA,IAAM,OAAO,GAAG,UAAU,CAAC,WAAW,CAAC;AACvC,IAAA,IAAI,OAAO,KAAK,SAAS,EAAE;AACzB,QAAA,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC;IACvE;AACA,IAAA,OAAO,OAAO;AAChB;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.js","sources":["../../../../src/types/session.ts"],"sourcesContent":["import type React from \"react\";\n\nexport interface SessionConfig {\n selfie?: boolean;\n requireMobile?: boolean;\n}\n\nexport interface DatakeenSessionProps {\n sessionId: string;\n sessionConfig?: SessionConfig;\n apiBaseUrl?: string; // Optional API base URL for dynamic environment configuration\n}\n\nexport interface UseSessionReturn {\n SessionComponent: React.ReactElement;\n}\n\nexport type stepObject = {\n setStep: (step: number) => void;\n goBack: () => void;\n goToNextStep: (\n currentNodeId: string,\n template: SessionTemplate,\n handle?: string,\n ) => void;\n step: number;\n canGoBack: boolean;\n};\n\nexport interface ProcessingStep {\n title: string;\n subtitle: string;\n hasError?: boolean;\n}\n\nexport type ConditionTokenType = \"variable\" | \"control\" | \"operator\" | \"input\";\n\nexport interface ConditionToken {\n type: ConditionTokenType;\n value: string;\n label?: string;\n sourceNodeId?: string;\n}\n\n/**\n * Type for custom field value types\n */\nexport type CustomFieldValueType =\n | \"text\"\n | \"enum\"\n | \"number\"\n | \"boolean\"\n | \"date\"\n | \"email\"\n | \"address\"\n | \"list\";\n\n/**\n * Display formats supported for date fields (top-level and list columns).\n */\nexport type DateDisplayFormat = \"dd/mm/yyyy\" | \"mm/dd/yyyy\" | \"yyyy-mm-dd\";\n\nexport const DEFAULT_DATE_DISPLAY_FORMAT: DateDisplayFormat = \"dd/mm/yyyy\";\n\n/**\n * Column definition for a list-type custom field\n */\nexport interface ListColumn {\n label: string;\n type: \"text\" | \"enum\" | \"date\" | \"email\";\n options?: string[]; // required when type === 'enum'\n placeholder?: string; // text/email/date — shown to the end user\n regex?: string; // text — JS regex source (without slashes)\n regexErrorMessage?: string; // text — message displayed when regex fails\n dateFormat?: DateDisplayFormat; // date — display format expected\n}\n\n/**\n * Interface for custom field definition\n */\nexport interface CustomField {\n id: string;\n label: string;\n placeholder?: string;\n description?: string;\n valueType: CustomFieldValueType;\n enumOptions?: string[];\n listColumns?: ListColumn[]; // for list type: column definitions\n minRows?: number; // for list type: minimum rows expected\n required?: boolean;\n regex?: string; // text — JS regex source (without slashes)\n regexErrorMessage?: string; // text — message displayed when regex fails\n dateFormat?: DateDisplayFormat; // date — display format expected\n}\n\n/**\n * Interface for session template node\n */\nexport interface SessionTemplateNode {\n id: string;\n type: string;\n title: string;\n description: string;\n informationType?:\n | \"identity\"\n | \"identity-legal\"\n | \"contact\"\n | \"address\"\n | \"nationality\"\n | \"custom\";\n position: {\n x: number;\n y: number;\n };\n options: unknown[];\n selectedOptions: string[];\n requiredDocumentType?: string;\n isRequired: boolean;\n order: number;\n optionalFields?: string[];\n requiredFields?: string[];\n pageTitle?: string;\n pageDescription?: string;\n // Properties for document-collection node type\n allowedDocumentTypes?: Array<{\n id: string;\n name: string;\n /**\n * Optional side information coming from the template.\n * When provided and equals to two (\"two\", 2, \"double\", \"recto-verso\"),\n * consumers should allow uploading two sides (front/back).\n */\n side?: string | number;\n }>;\n allowedAddingMethods?: string[];\n introductionPage?: {\n title?: string;\n description?: string;\n };\n documentSelection?: {\n title?: string;\n description?: string;\n };\n // Start node specific properties\n welcomeTitle?: string;\n welcomeSubtitle?: string;\n welcomeDescription?: string;\n welcomeImage?: string;\n qrCodeTitle?: string;\n qrCodeDescription?: string;\n showLegacyCGU?: boolean; // default: true — rétrocompatibilité\n\n // Legal consent node specific properties\n consentDescription?: string;\n consentDescription2?: string;\n cguUrl?: string;\n privacyPolicyUrl?: string;\n checkboxText?: string;\n // Identity control specific properties\n automaticPhotoCapture?: boolean;\n acceptedCountries?: AcceptedCountry[];\n // End node specific properties\n callbackURL?: string | null;\n // Condition node specific properties\n conditionExpression?: string;\n conditionTokens?: ConditionToken[];\n conditionFalseErrorMessage?: string;\n conditionMaxRetries?: number;\n conditionMaxRetryAction?: \"end-journey\" | \"force-true\";\n conditionFalseMode?: \"retry\" | \"loop\";\n\n // External verification specific properties\n targetApi?: \"INSEE\";\n referenceNodeId?: string;\n referenceNodeType?:\n | \"information-input\"\n | \"document-collection\"\n | \"identity-control\";\n referenceField?: \"siren\" | \"siret\";\n referenceVariable?: string;\n // Custom form fields (for information-input with type 'custom')\n customFields?: CustomField[];\n\n // Electronic signature specific properties\n templateId?: string;\n external_id?: string;\n fieldMappings?: Array<{\n sourceFieldId: string;\n label: string;\n docusealType: string;\n readonly: boolean;\n role?: string;\n sourceNodeId?: string;\n }>;\n /** If set, the generated PDF from this upstream pdf-generation node will be used as the document to sign */\n sourcePdfNodeId?: string;\n\n // PDF generation node specific properties\n // Note: htmlTemplate is intentionally NOT included — it is server-side only and never sent to the client\n pdfMode?: \"upload\" | \"html-template\";\n sourceNodeIds?: string[];\n\n // retry properties\n allowResubmission: boolean;\n maxResubmissionAttempts?: number;\n}\n\n/**\n * Interface for accepted countries\n */\nexport interface AcceptedCountry {\n code: string;\n documents: {\n passport: string[];\n idCard: string[];\n driverLicense: string[];\n residencePermit: string[];\n pinkDriverLicense: string[];\n };\n}\n\n/**\n * Interface for session template edge\n */\nexport interface SessionTemplateEdge {\n id: string;\n source: string;\n target: string;\n sourceHandle?: string;\n targetHandle?: string;\n conditionValue?: string;\n}\n\n/**\n * Interface for platform information\n */\nexport interface PlatformInfo {\n mobile: boolean;\n desktop: boolean;\n backoffice: boolean;\n}\n\n/**\n * Interface for session template\n */\nexport interface SessionTemplate {\n id: string;\n name: string;\n description: string;\n version: string;\n languages: string[];\n nodes: SessionTemplateNode[];\n edges: SessionTemplateEdge[];\n groupId: string;\n userId: string | null;\n created_at: string;\n updated_at: string;\n platforms?: PlatformInfo;\n logo?: string;\n showQRCode?: boolean;\n buttonBgColor?: string;\n buttonTextColor?: string;\n}\n\n/**\n * Interface for session data\n */\nexport interface SessionData {\n id: string;\n userId: string | null;\n token: string;\n templateId: string;\n templateKey: string;\n expireTime: number;\n status: string;\n result: Record<string, unknown>;\n landingPage: unknown;\n withSelfie: boolean | null;\n groupId: string | null;\n userInput: Record<string, unknown>;\n contactInfo?: {\n email: string;\n phoneNumber: string;\n };\n callbackURL?: string | null;\n webhookURL: string;\n analysisTemplateId: string | null;\n userAgent: unknown[];\n mobile: boolean;\n analysisId: string | null;\n currentStep?: number;\n createdAt: string;\n updatedAt: string;\n auditTrail: unknown[];\n user: unknown | null;\n analysis: unknown[];\n documents: unknown[];\n template: SessionTemplate;\n retryCounts?: Record<string, number>; // nodeId -> retry count\n}\n\nexport interface ClientInfo {\n ip?: string;\n location?: string;\n device: string;\n browser: string;\n os: string;\n}\n"],"names":[],"mappings":"AA8DO,IAAM,2BAA2B,GAAsB;;;;"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { DEFAULT_DATE_DISPLAY_FORMAT } from '../types/session.js';
|
|
2
|
+
|
|
3
|
+
var EMAIL_REGEX = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
|
|
4
|
+
var isEmailValid = function (value) {
|
|
5
|
+
return EMAIL_REGEX.test(String(value).trim());
|
|
6
|
+
};
|
|
7
|
+
var SLASH_DATE_RE = /^(\d{2})\/(\d{2})\/(\d{4})$/;
|
|
8
|
+
var ISO_DATE_RE = /^(\d{4})-(\d{2})-(\d{2})$/;
|
|
9
|
+
var DATE_FORMAT_SPECS = {
|
|
10
|
+
"dd/mm/yyyy": { re: SLASH_DATE_RE, order: ["day", "month", "year"] },
|
|
11
|
+
"mm/dd/yyyy": { re: SLASH_DATE_RE, order: ["month", "day", "year"] },
|
|
12
|
+
"yyyy-mm-dd": { re: ISO_DATE_RE, order: ["year", "month", "day"] },
|
|
13
|
+
};
|
|
14
|
+
var isValidDateParts = function (year, month, day) {
|
|
15
|
+
if (!Number.isInteger(year) || !Number.isInteger(month) || !Number.isInteger(day)) {
|
|
16
|
+
return false;
|
|
17
|
+
}
|
|
18
|
+
if (year < 1 || month < 1 || month > 12 || day < 1 || day > 31)
|
|
19
|
+
return false;
|
|
20
|
+
var d = new Date(Date.UTC(year, month - 1, day));
|
|
21
|
+
return (d.getUTCFullYear() === year &&
|
|
22
|
+
d.getUTCMonth() === month - 1 &&
|
|
23
|
+
d.getUTCDate() === day);
|
|
24
|
+
};
|
|
25
|
+
var isDateValid = function (value, format) {
|
|
26
|
+
var _a;
|
|
27
|
+
if (format === void 0) { format = DEFAULT_DATE_DISPLAY_FORMAT; }
|
|
28
|
+
var v = String(value || "").trim();
|
|
29
|
+
if (!v)
|
|
30
|
+
return false;
|
|
31
|
+
var spec = (_a = DATE_FORMAT_SPECS[format]) !== null && _a !== void 0 ? _a : DATE_FORMAT_SPECS[DEFAULT_DATE_DISPLAY_FORMAT];
|
|
32
|
+
var m = v.match(spec.re);
|
|
33
|
+
if (!m)
|
|
34
|
+
return false;
|
|
35
|
+
var parts = { day: 0, month: 0, year: 0 };
|
|
36
|
+
spec.order.forEach(function (part, i) {
|
|
37
|
+
parts[part] = Number(m[i + 1]);
|
|
38
|
+
});
|
|
39
|
+
return isValidDateParts(parts.year, parts.month, parts.day);
|
|
40
|
+
};
|
|
41
|
+
var isRegexMatch = function (value, source) {
|
|
42
|
+
if (!source)
|
|
43
|
+
return true;
|
|
44
|
+
try {
|
|
45
|
+
return new RegExp(source).test(String(value));
|
|
46
|
+
}
|
|
47
|
+
catch (_a) {
|
|
48
|
+
return true;
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
var cellErrorKey = function (rowIndex, columnLabel) {
|
|
52
|
+
return "".concat(rowIndex, "::").concat(columnLabel);
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
export { EMAIL_REGEX, cellErrorKey, isDateValid, isEmailValid, isRegexMatch };
|
|
56
|
+
//# sourceMappingURL=customFieldValidation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"customFieldValidation.js","sources":["../../../../src/utils/customFieldValidation.ts"],"sourcesContent":["import type { DateDisplayFormat } from \"../types/session\";\nimport { DEFAULT_DATE_DISPLAY_FORMAT } from \"../types/session\";\n\nexport const EMAIL_REGEX = /^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/;\n\nexport const isEmailValid = (value: string): boolean =>\n EMAIL_REGEX.test(String(value).trim());\n\nconst SLASH_DATE_RE = /^(\\d{2})\\/(\\d{2})\\/(\\d{4})$/;\nconst ISO_DATE_RE = /^(\\d{4})-(\\d{2})-(\\d{2})$/;\n\ntype DatePart = \"day\" | \"month\" | \"year\";\n\nconst DATE_FORMAT_SPECS: Record<\n DateDisplayFormat,\n { re: RegExp; order: [DatePart, DatePart, DatePart] }\n> = {\n \"dd/mm/yyyy\": { re: SLASH_DATE_RE, order: [\"day\", \"month\", \"year\"] },\n \"mm/dd/yyyy\": { re: SLASH_DATE_RE, order: [\"month\", \"day\", \"year\"] },\n \"yyyy-mm-dd\": { re: ISO_DATE_RE, order: [\"year\", \"month\", \"day\"] },\n};\n\nconst isValidDateParts = (year: number, month: number, day: number): boolean => {\n if (!Number.isInteger(year) || !Number.isInteger(month) || !Number.isInteger(day)) {\n return false;\n }\n if (year < 1 || month < 1 || month > 12 || day < 1 || day > 31) return false;\n const d = new Date(Date.UTC(year, month - 1, day));\n return (\n d.getUTCFullYear() === year &&\n d.getUTCMonth() === month - 1 &&\n d.getUTCDate() === day\n );\n};\n\nexport const isDateValid = (\n value: string,\n format: DateDisplayFormat = DEFAULT_DATE_DISPLAY_FORMAT,\n): boolean => {\n const v = String(value || \"\").trim();\n if (!v) return false;\n const spec = DATE_FORMAT_SPECS[format] ?? DATE_FORMAT_SPECS[DEFAULT_DATE_DISPLAY_FORMAT];\n const m = v.match(spec.re);\n if (!m) return false;\n const parts: Record<DatePart, number> = { day: 0, month: 0, year: 0 };\n spec.order.forEach((part, i) => {\n parts[part] = Number(m[i + 1]);\n });\n return isValidDateParts(parts.year, parts.month, parts.day);\n};\n\nexport const isRegexMatch = (value: string, source: string): boolean => {\n if (!source) return true;\n try {\n return new RegExp(source).test(String(value));\n } catch {\n return true;\n }\n};\n\nexport const cellErrorKey = (rowIndex: number, columnLabel: string): string =>\n `${rowIndex}::${columnLabel}`;\n"],"names":[],"mappings":"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"}
|
package/jest.config.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "datakeen-session-react",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.161",
|
|
4
4
|
"description": "React SDK component to manage and render Datakeen session experiences easily.",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public",
|
|
@@ -98,6 +98,7 @@
|
|
|
98
98
|
"@radix-ui/react-checkbox": "^1.3.2",
|
|
99
99
|
"@radix-ui/react-icons": "^1.3.2",
|
|
100
100
|
"@radix-ui/react-label": "^2.1.6",
|
|
101
|
+
"@radix-ui/react-popover": "^1.1.15",
|
|
101
102
|
"@radix-ui/react-select": "^2.2.5",
|
|
102
103
|
"@tensorflow-models/coco-ssd": "^2.2.3",
|
|
103
104
|
"@tensorflow/tfjs": "^4.22.0",
|
|
@@ -105,12 +106,14 @@
|
|
|
105
106
|
"@testing-library/dom": "^8.20.0",
|
|
106
107
|
"@unissey-web/sdk-react": "^4.4.0",
|
|
107
108
|
"clsx": "^2.1.1",
|
|
109
|
+
"date-fns": "^4.1.0",
|
|
108
110
|
"heic2any": "^0.0.4",
|
|
109
111
|
"i18next": "^25.4.2",
|
|
110
112
|
"lucide-react": "^0.511.0",
|
|
111
113
|
"pdfjs-dist": "5.4.149",
|
|
112
114
|
"qrcode": "^1.5.4",
|
|
113
115
|
"react-circle-flags": "^0.0.23",
|
|
116
|
+
"react-day-picker": "^9.14.0",
|
|
114
117
|
"react-i18next": "^15.7.3",
|
|
115
118
|
"tailwind-merge": "^3.3.1",
|
|
116
119
|
"ua-parser-js": "^2.0.5"
|