@greatapps/common 1.1.611 → 1.1.613
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.
|
@@ -1,24 +1,18 @@
|
|
|
1
1
|
import z from "zod";
|
|
2
2
|
function parseCalendarDate(val) {
|
|
3
3
|
if (val == null) return val;
|
|
4
|
-
if (val instanceof Date)
|
|
4
|
+
if (val instanceof Date) {
|
|
5
|
+
return new Date(val.getUTCFullYear(), val.getUTCMonth(), val.getUTCDate());
|
|
6
|
+
}
|
|
5
7
|
if (typeof val === "string") {
|
|
6
|
-
const
|
|
7
|
-
if (
|
|
8
|
-
return new Date(Number(
|
|
8
|
+
const match = val.match(/^(\d{4})-(\d{2})-(\d{2})/);
|
|
9
|
+
if (match) {
|
|
10
|
+
return new Date(Number(match[1]), Number(match[2]) - 1, Number(match[3]));
|
|
9
11
|
}
|
|
10
|
-
const
|
|
11
|
-
if (
|
|
12
|
-
return new Date(
|
|
13
|
-
Number(noTz[1]),
|
|
14
|
-
Number(noTz[2]) - 1,
|
|
15
|
-
Number(noTz[3]),
|
|
16
|
-
Number(noTz[4]),
|
|
17
|
-
Number(noTz[5]),
|
|
18
|
-
Number(noTz[6] ?? 0)
|
|
19
|
-
);
|
|
12
|
+
const fallback = new Date(val);
|
|
13
|
+
if (!Number.isNaN(fallback.getTime())) {
|
|
14
|
+
return new Date(fallback.getUTCFullYear(), fallback.getUTCMonth(), fallback.getUTCDate());
|
|
20
15
|
}
|
|
21
|
-
return new Date(val);
|
|
22
16
|
}
|
|
23
17
|
return val;
|
|
24
18
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/infra/utils/date.ts"],"sourcesContent":["import z from 'zod';\n\nfunction parseCalendarDate(val: unknown): Date | unknown {\n if (val == null) return val;\n if (val instanceof Date) return val;\n if (typeof val === 'string') {\n const
|
|
1
|
+
{"version":3,"sources":["../../../src/infra/utils/date.ts"],"sourcesContent":["import z from 'zod';\n\nfunction parseCalendarDate(val: unknown): Date | unknown {\n if (val == null) return val;\n if (val instanceof Date) {\n return new Date(val.getUTCFullYear(), val.getUTCMonth(), val.getUTCDate());\n }\n if (typeof val === 'string') {\n const match = val.match(/^(\\d{4})-(\\d{2})-(\\d{2})/);\n if (match) {\n return new Date(Number(match[1]), Number(match[2]) - 1, Number(match[3]));\n }\n const fallback = new Date(val);\n if (!Number.isNaN(fallback.getTime())) {\n return new Date(fallback.getUTCFullYear(), fallback.getUTCMonth(), fallback.getUTCDate());\n }\n }\n return val;\n}\n\nexport const calendarDateSchema = () => z.preprocess(parseCalendarDate, z.date());\n\nexport function toCalendarDate(date: Date | string | null | undefined): Date | null {\n if (!date) return null;\n const parsed = parseCalendarDate(date);\n return parsed instanceof Date ? parsed : null;\n}\n\nexport function formatShortDate(date: Date | string | null | undefined): string {\n if (!date) return '--';\n const d = toCalendarDate(date) ?? new Date(date);\n const day = String(d.getDate()).padStart(2, '0');\n const month = String(d.getMonth() + 1).padStart(2, '0');\n if (d.getFullYear() !== new Date().getFullYear()) {\n return `${day}/${month}/${d.getFullYear()}`;\n }\n return `${day}/${month}`;\n}\n\nexport function formatDateTime(date: Date | string | null | undefined): string | null {\n if (!date) return null;\n return new Date(date).toLocaleString('pt-BR', {\n day: '2-digit',\n month: '2-digit',\n year: 'numeric',\n hour: '2-digit',\n minute: '2-digit',\n });\n}\n"],"mappings":"AAAA,OAAO,OAAO;AAEd,SAAS,kBAAkB,KAA8B;AACvD,MAAI,OAAO,KAAM,QAAO;AACxB,MAAI,eAAe,MAAM;AACvB,WAAO,IAAI,KAAK,IAAI,eAAe,GAAG,IAAI,YAAY,GAAG,IAAI,WAAW,CAAC;AAAA,EAC3E;AACA,MAAI,OAAO,QAAQ,UAAU;AAC3B,UAAM,QAAQ,IAAI,MAAM,0BAA0B;AAClD,QAAI,OAAO;AACT,aAAO,IAAI,KAAK,OAAO,MAAM,CAAC,CAAC,GAAG,OAAO,MAAM,CAAC,CAAC,IAAI,GAAG,OAAO,MAAM,CAAC,CAAC,CAAC;AAAA,IAC1E;AACA,UAAM,WAAW,IAAI,KAAK,GAAG;AAC7B,QAAI,CAAC,OAAO,MAAM,SAAS,QAAQ,CAAC,GAAG;AACrC,aAAO,IAAI,KAAK,SAAS,eAAe,GAAG,SAAS,YAAY,GAAG,SAAS,WAAW,CAAC;AAAA,IAC1F;AAAA,EACF;AACA,SAAO;AACT;AAEO,MAAM,qBAAqB,MAAM,EAAE,WAAW,mBAAmB,EAAE,KAAK,CAAC;AAEzE,SAAS,eAAe,MAAqD;AAClF,MAAI,CAAC,KAAM,QAAO;AAClB,QAAM,SAAS,kBAAkB,IAAI;AACrC,SAAO,kBAAkB,OAAO,SAAS;AAC3C;AAEO,SAAS,gBAAgB,MAAgD;AAC9E,MAAI,CAAC,KAAM,QAAO;AAClB,QAAM,IAAI,eAAe,IAAI,KAAK,IAAI,KAAK,IAAI;AAC/C,QAAM,MAAM,OAAO,EAAE,QAAQ,CAAC,EAAE,SAAS,GAAG,GAAG;AAC/C,QAAM,QAAQ,OAAO,EAAE,SAAS,IAAI,CAAC,EAAE,SAAS,GAAG,GAAG;AACtD,MAAI,EAAE,YAAY,OAAM,oBAAI,KAAK,GAAE,YAAY,GAAG;AAChD,WAAO,GAAG,GAAG,IAAI,KAAK,IAAI,EAAE,YAAY,CAAC;AAAA,EAC3C;AACA,SAAO,GAAG,GAAG,IAAI,KAAK;AACxB;AAEO,SAAS,eAAe,MAAuD;AACpF,MAAI,CAAC,KAAM,QAAO;AAClB,SAAO,IAAI,KAAK,IAAI,EAAE,eAAe,SAAS;AAAA,IAC5C,KAAK;AAAA,IACL,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,EACV,CAAC;AACH;","names":[]}
|
package/package.json
CHANGED
package/src/infra/utils/date.ts
CHANGED
|
@@ -2,24 +2,18 @@ import z from 'zod';
|
|
|
2
2
|
|
|
3
3
|
function parseCalendarDate(val: unknown): Date | unknown {
|
|
4
4
|
if (val == null) return val;
|
|
5
|
-
if (val instanceof Date)
|
|
5
|
+
if (val instanceof Date) {
|
|
6
|
+
return new Date(val.getUTCFullYear(), val.getUTCMonth(), val.getUTCDate());
|
|
7
|
+
}
|
|
6
8
|
if (typeof val === 'string') {
|
|
7
|
-
const
|
|
8
|
-
if (
|
|
9
|
-
return new Date(Number(
|
|
9
|
+
const match = val.match(/^(\d{4})-(\d{2})-(\d{2})/);
|
|
10
|
+
if (match) {
|
|
11
|
+
return new Date(Number(match[1]), Number(match[2]) - 1, Number(match[3]));
|
|
10
12
|
}
|
|
11
|
-
const
|
|
12
|
-
if (
|
|
13
|
-
return new Date(
|
|
14
|
-
Number(noTz[1]),
|
|
15
|
-
Number(noTz[2]) - 1,
|
|
16
|
-
Number(noTz[3]),
|
|
17
|
-
Number(noTz[4]),
|
|
18
|
-
Number(noTz[5]),
|
|
19
|
-
Number(noTz[6] ?? 0)
|
|
20
|
-
);
|
|
13
|
+
const fallback = new Date(val);
|
|
14
|
+
if (!Number.isNaN(fallback.getTime())) {
|
|
15
|
+
return new Date(fallback.getUTCFullYear(), fallback.getUTCMonth(), fallback.getUTCDate());
|
|
21
16
|
}
|
|
22
|
-
return new Date(val);
|
|
23
17
|
}
|
|
24
18
|
return val;
|
|
25
19
|
}
|