export class DateTimeUtcFromDateOrStringBackToDate extends S.transformOrFail(
S.Union(
DateFromSelf,
DateTimeUtc
// Thought maybe here you could force Encoded type to always be a Date
// .pipe(
// S.asSchema(DateFromSelf.)
// ),
),
DateTimeUtcFromSelf,
{
strict: true,
decode: decodeDateTimeUtc,
encode: (dt) => ParseResult.succeed<Date>(DateTime.toDateUtc(dt) as Date),
},
).annotations({ identifier: "DateTimeUtcFromDateOrStringBackToDate" }) {}
export class DateTimeUtcFromDateOrStringBackToDate extends S.transformOrFail(
S.Union(
DateFromSelf,
DateTimeUtc
// Thought maybe here you could force Encoded type to always be a Date
// .pipe(
// S.asSchema(DateFromSelf.)
// ),
),
DateTimeUtcFromSelf,
{
strict: true,
decode: decodeDateTimeUtc,
encode: (dt) => ParseResult.succeed<Date>(DateTime.toDateUtc(dt) as Date),
},
).annotations({ identifier: "DateTimeUtcFromDateOrStringBackToDate" }) {}