@asdp/ferryui 0.1.22-dev.10206 → 0.1.22-dev.10210
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.d.mts +2 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +26 -6
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +26 -6
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -11289,7 +11289,9 @@ var ModalPassengerForm = ({
|
|
|
11289
11289
|
idTypes,
|
|
11290
11290
|
ticketClassOptions,
|
|
11291
11291
|
onScanComplete,
|
|
11292
|
-
isLoading
|
|
11292
|
+
isLoading,
|
|
11293
|
+
minAge,
|
|
11294
|
+
maxAge
|
|
11293
11295
|
}) => {
|
|
11294
11296
|
const styles = useStyles24();
|
|
11295
11297
|
const mergedLabels = { ...DEFAULT_LABELS23[language], ...labels };
|
|
@@ -11298,6 +11300,15 @@ var ModalPassengerForm = ({
|
|
|
11298
11300
|
...labels?.errors
|
|
11299
11301
|
};
|
|
11300
11302
|
const displayTitle = title || mergedLabels.title;
|
|
11303
|
+
const computeDateBound = (yearsOffset) => {
|
|
11304
|
+
const d = /* @__PURE__ */ new Date();
|
|
11305
|
+
d.setFullYear(d.getFullYear() - yearsOffset);
|
|
11306
|
+
const offset = d.getTimezoneOffset();
|
|
11307
|
+
const adjusted = new Date(d.getTime() - offset * 60 * 1e3);
|
|
11308
|
+
return adjusted.toISOString().split("T")[0];
|
|
11309
|
+
};
|
|
11310
|
+
const birthdateMaxDate = computeDateBound(minAge);
|
|
11311
|
+
const birthdateMinDate = computeDateBound(maxAge);
|
|
11301
11312
|
const [isModalSelectIdTypeOpen, setIsModalSelectIdTypeOpen] = useState(false);
|
|
11302
11313
|
const [isModalScanOpen, setIsModalScanOpen] = useState(false);
|
|
11303
11314
|
const [scannedIdType, setScannedIdType] = useState(null);
|
|
@@ -11885,14 +11896,23 @@ var ModalPassengerForm = ({
|
|
|
11885
11896
|
size: "large",
|
|
11886
11897
|
required: true,
|
|
11887
11898
|
disableFutureDates: true,
|
|
11899
|
+
min: birthdateMinDate,
|
|
11900
|
+
max: birthdateMaxDate,
|
|
11888
11901
|
validationRules: {
|
|
11889
11902
|
required: mergedErrors.requiredDate,
|
|
11890
11903
|
validate: (value) => {
|
|
11891
|
-
const
|
|
11892
|
-
|
|
11893
|
-
|
|
11894
|
-
|
|
11895
|
-
|
|
11904
|
+
const { years } = calculateAge(value);
|
|
11905
|
+
if (years < minAge) {
|
|
11906
|
+
return mergedErrors.minAge.replace(
|
|
11907
|
+
/\d+/,
|
|
11908
|
+
minAge.toString()
|
|
11909
|
+
);
|
|
11910
|
+
}
|
|
11911
|
+
if (years > maxAge) {
|
|
11912
|
+
return mergedErrors.maxAge.replace(
|
|
11913
|
+
/\d+/,
|
|
11914
|
+
maxAge.toString()
|
|
11915
|
+
);
|
|
11896
11916
|
}
|
|
11897
11917
|
return true;
|
|
11898
11918
|
}
|