From bd2f982c489b15ce1165c051fdedf35af979f784 Mon Sep 17 00:00:00 2001 From: Martin Kagamino Lehoux Date: Tue, 8 Sep 2026 17:06:51 +0200 Subject: Migrate date handling from Date to Temporal API Routine scheduling, health series, service stamps, session expiry, and date formatting move to native Temporal (Instant / ZonedDateTime in UTC), with ISO strings kept at DB and chart boundaries. Ambient types in src/temporal-ambient.d.ts cover the native runtime; no polyfill. Observable behavior and stored formats are unchanged. --- src/lib/server/db/groceries.test.ts | 12 +++++++++--- src/lib/server/db/ondelete.test.ts | 4 +++- 2 files changed, 12 insertions(+), 4 deletions(-) (limited to 'src/lib/server/db') diff --git a/src/lib/server/db/groceries.test.ts b/src/lib/server/db/groceries.test.ts index 143e4da..7fec40b 100644 --- a/src/lib/server/db/groceries.test.ts +++ b/src/lib/server/db/groceries.test.ts @@ -29,7 +29,9 @@ describe('groceries add', () => { await db.insert(groceries).values({ name, categoryId, - createdAt: new Date().toISOString(), + createdAt: Temporal.Now.instant().toString({ + smallestUnit: 'millisecond', + }), }); } } @@ -44,7 +46,9 @@ describe('groceries add', () => { }); it('unchecks an existing checked item instead of creating duplicate', async () => { - const now = new Date().toISOString(); + const now = Temporal.Now.instant().toString({ + smallestUnit: 'millisecond', + }); await db .insert(groceries) .values({ name: 'milk', checked: true, createdAt: now }); @@ -56,7 +60,9 @@ describe('groceries add', () => { }); it('keeps an unchecked item unchanged (already on list)', async () => { - const now = new Date().toISOString(); + const now = Temporal.Now.instant().toString({ + smallestUnit: 'millisecond', + }); await db .insert(groceries) .values({ name: 'milk', checked: false, createdAt: now }); diff --git a/src/lib/server/db/ondelete.test.ts b/src/lib/server/db/ondelete.test.ts index 347bb92..5dcf69e 100644 --- a/src/lib/server/db/ondelete.test.ts +++ b/src/lib/server/db/ondelete.test.ts @@ -18,7 +18,9 @@ describe('category delete behavior', () => { await db.insert(groceries).values({ name: 'lait', checked: false, - createdAt: new Date().toISOString(), + createdAt: Temporal.Now.instant().toString({ + smallestUnit: 'millisecond', + }), categoryId: catId, }); -- cgit v1.3