@aleonnet/healthcare-scheduler 0.1.48 → 0.2.0

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/README.md CHANGED
@@ -3,8 +3,8 @@
3
3
  Healthcare scheduling library for medication reminders, appointments, and health-related notifications with OS-level integration.
4
4
 
5
5
  ## Status
6
- - **209/215 tests passing** (6 skipped - real DB/Supabase)
7
- - **32/33 test suites** (1 real Supabase suite skipped por padrão)
6
+ - **211/217 tests passing** (6 skipped - real DB/Supabase)
7
+ - **33/34 test suites** (1 real Supabase suite skipped por padrão)
8
8
  - **100% TypeScript** (strict mode)
9
9
  - **6 scheduling patterns** validated
10
10
 
@@ -16,6 +16,7 @@ Healthcare scheduling library for medication reminders, appointments, and health
16
16
  - Migration (preserves data): `docs/SUPABASE_MIGRATION_MULTI_TENANT.sql`
17
17
  - Real Supabase E2E tests are opt-in: `SUPABASE_TEST=1 npm run test:supabase`
18
18
  - Aggregated tables (`adherence_daily`, `levels_state`) are **derived locally**; Supabase sync usa merge não-degradante (linhas remotas não podem reduzir `total/done/percent/streak` quando comparadas ao agregado local).
19
+ - Timestamp conflict checks (`updated_at`) are normalized to UTC before comparison, preventing false last-write-wins decisions when local SQLite timestamps have no timezone suffix.
19
20
 
20
21
  ## Features
21
22
 
@@ -295,6 +296,7 @@ The library includes comprehensive validation:
295
296
  - **Validation scenarios**: 6 real-world medication schedules
296
297
  - **Plugin tests**: Gamification, streak calculation
297
298
  - **Regression coverage**: bad-days accumulation across daily recomputes (`64 -> 72`, preventing inflated `77`)
299
+ - **Sync regression coverage**: UTC normalization for `updated_at` conflict resolution (local timestamp sem timezone vs remoto com `+00`)
298
300
 
299
301
  All tests run in-memory using MockAdapter (no database required).
300
302
 
@@ -107,6 +107,7 @@ export interface Occurrence {
107
107
  item_type?: ItemType;
108
108
  item_meta?: Record<string, any>;
109
109
  schedule_rule?: ScheduleRule;
110
+ plan_tz?: string;
110
111
  last_action?: EventAction;
111
112
  last_action_at?: string;
112
113
  last_action_payload?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAWA,MAAM,MAAM,WAAW,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAGpD,MAAM,MAAM,QAAQ,GAChB,OAAO,GACP,cAAc,GACd,UAAU,GACV,eAAe,GACf,QAAQ,GACR,QAAQ,GACR,WAAW,CAAC;AAKhB,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,WAAW,EAAE,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAKD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,cAAc,CAAC;IACrB,KAAK,EAAE,KAAK,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,GAAG,CAAC,EAAE,MAAM,CAAC;KACd,CAAC,CAAC;IACH,UAAU,CAAC,EAAE,WAAW,EAAE,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAKD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,UAAU,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAKD,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAKD,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,QAAQ,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAKD,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,KAAK,CAAC;QACX,EAAE,EAAE,MAAM,CAAC;QACX,UAAU,EAAE,WAAW,EAAE,CAAC;QAC1B,IAAI,EAAE,MAAM,CAAC;QACb,GAAG,CAAC,EAAE,MAAM,CAAC;KACd,CAAC,CAAC;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAKD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,WAAW,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAGD,MAAM,MAAM,YAAY,GACpB,SAAS,GACT,cAAc,GACd,YAAY,GACZ,gBAAgB,GAChB,UAAU,GACV,UAAU,GACV,YAAY,CAAC;AAOjB,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC;AAG1D,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,QAAQ,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAGD,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,YAAY,CAAC;IAC5B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAG3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,QAAQ,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACjC;AAGD,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;AAG1E,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,gBAAgB,CAAC;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,QAAQ,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAChC,aAAa,CAAC,EAAE,YAAY,CAAC;IAG7B,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAGD,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,WAAW,CAAC;AAGnF,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,QAAQ,CAAC;AAG7C,MAAM,WAAW,KAAK;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,WAAW,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC/B;AAOD,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,QAAQ,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAGD,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAOD,MAAM,WAAW,0BAA0B;IACzC,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,IAAI,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAGD,MAAM,WAAW,+BAA+B;IAC9C,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,IAAI,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAGD,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE;QACZ,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAC5B,CAAC;IACF,OAAO,CAAC,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;CACH;AAOD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,WAAW,CAAC,CAAC,SAAS,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,aAAa,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,mBAAmB,CAAC,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,eAAe,CAAC,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/C;AAOD,MAAM,WAAW,aAAa;IAE5B,KAAK,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IACzD,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClE,WAAW,CAAC,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAG1D,aAAa,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IACtE,WAAW,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IAC/D,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,eAAe,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAG7F,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACzB;AAOD,MAAM,WAAW,kBAAkB;IAEjC,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAGtC,eAAe,CAAC,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACtE,oBAAoB,CAAC,OAAO,EAAE,+BAA+B,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAGhF,yBAAyB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/D,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAGpC,aAAa,IAAI,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAAC;IAGlD,gBAAgB,CACd,OAAO,EAAE,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,WAAW,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,GAAG,CAAA;KAAE,KAAK,IAAI,GACnF,IAAI,CAAC;IAGR,2BAA2B,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/C;AAOD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,aAAa,CAAC;IACvB,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAOD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAOD,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
@@ -56,7 +56,7 @@ class OccurrencesRepository {
56
56
  const now = new Date();
57
57
  const [startISO, endISO] = (0, timezone_1.getLocalWindowBoundsUTCISO)(now, pastDays, days);
58
58
  const rows = await this.db.getAllAsync(`SELECT o.*, i.id as item_id, i.name as item_name, i.type as item_type, i.meta as item_meta,
59
- p.schedule_rule,
59
+ p.schedule_rule, p.tz as plan_tz,
60
60
  (SELECT e.action FROM events e
61
61
  WHERE e.occurrence_id = o.id
62
62
  ORDER BY e.action_at DESC LIMIT 1) as last_action,
@@ -82,7 +82,7 @@ class OccurrencesRepository {
82
82
  async getToday(now) {
83
83
  const [startISO, endISO] = (0, timezone_1.getLocalDayBoundsUTCISO)(now);
84
84
  const rows = await this.db.getAllAsync(`SELECT o.*, i.id as item_id, i.name as item_name, i.type as item_type, i.meta as item_meta,
85
- p.schedule_rule,
85
+ p.schedule_rule, p.tz as plan_tz,
86
86
  (SELECT e.action FROM events e
87
87
  WHERE e.occurrence_id = o.id
88
88
  ORDER BY e.action_at DESC LIMIT 1) as last_action,
@@ -121,7 +121,7 @@ class OccurrencesRepository {
121
121
  }
122
122
  async findById(id) {
123
123
  const row = await this.db.getFirstAsync(`SELECT o.*, i.id as item_id, i.name as item_name, i.type as item_type, i.meta as item_meta,
124
- p.schedule_rule,
124
+ p.schedule_rule, p.tz as plan_tz,
125
125
  (SELECT e.action FROM events e
126
126
  WHERE e.occurrence_id = o.id
127
127
  ORDER BY e.action_at DESC LIMIT 1) as last_action,
@@ -1,3 +1,3 @@
1
1
  import { ScheduleRule, ExpandedOccurrence } from '../core/types';
2
- export declare function expandPlan(rule: ScheduleRule, now: Date): ExpandedOccurrence[];
2
+ export declare function expandPlan(rule: ScheduleRule, now: Date, tz?: string): ExpandedOccurrence[];
3
3
  //# sourceMappingURL=expandPlan.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"expandPlan.d.ts","sourceRoot":"","sources":["../../src/planning/expandPlan.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAyCjE,wBAAgB,UAAU,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,IAAI,GAAG,kBAAkB,EAAE,CA8N9E"}
1
+ {"version":3,"file":"expandPlan.d.ts","sourceRoot":"","sources":["../../src/planning/expandPlan.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAoDjE,wBAAgB,UAAU,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,kBAAkB,EAAE,CAkO3F"}
@@ -14,34 +14,42 @@ function computeQtyFor(ruleKind, hhmm, idx, timesQtys, partQtyByTime, originalTi
14
14
  const byOriginal = originalIdx >= 0 ? timesQtys[originalIdx] : undefined;
15
15
  return (typeof byOriginal === 'number' && byOriginal > 0) ? byOriginal : 1;
16
16
  }
17
- function expandPlan(rule, now) {
17
+ function expandPlan(rule, now, tz) {
18
18
  if (rule.kind === 'AS_NEEDED') {
19
19
  return [];
20
20
  }
21
- const windowEnd = (0, utils_1.addDays)((0, utils_1.startOfDay)(now), 365);
21
+ const _startOfDay = tz ? (d) => (0, utils_1.startOfDayInTz)(d, tz) : utils_1.startOfDay;
22
+ const _parseHHmm = tz
23
+ ? (hhmm, day) => (0, utils_1.parseHHmmOnDayInTz)(hhmm, day, tz)
24
+ : utils_1.parseHHmmOnDay;
25
+ const _weekday = tz
26
+ ? (d) => (0, utils_1.weekday1to7)((0, utils_1.weekdayInTz)(d, tz))
27
+ : (d) => (0, utils_1.weekday1to7)(d.getDay());
28
+ const _dedupeKey = (dt) => (0, utils_1.toISO)(dt).slice(0, 16);
29
+ const windowEnd = (0, utils_1.addDays)(_startOfDay(now), 365);
22
30
  const endAt = rule.endAt ? new Date(rule.endAt) : null;
23
31
  const cutoff = endAt ? new Date(Math.min(windowEnd.getTime(), endAt.getTime())) : windowEnd;
24
32
  const out = [];
25
33
  const dedupe = new Set();
26
- const sod = (0, utils_1.startOfDay)(now);
34
+ const sod = _startOfDay(now);
27
35
  const startAt = rule.startAt ? new Date(rule.startAt) : null;
28
36
  const lowerBound = startAt ? new Date(Math.max(sod.getTime(), startAt.getTime())) : sod;
29
37
  if (rule.kind === 'WEEKLY') {
30
38
  const lines = (0, utils_1.sortLinesByTime)(rule.lines);
31
- const firstDayStart = (0, utils_1.startOfDay)(lowerBound);
32
- let day = (0, utils_1.startOfDay)(lowerBound);
39
+ const firstDayStart = _startOfDay(lowerBound);
40
+ let day = _startOfDay(lowerBound);
33
41
  while (day <= cutoff) {
34
- const wd = (0, utils_1.weekday1to7)(day.getDay());
42
+ const wd = _weekday(day);
35
43
  const isFirstDay = day.getTime() === firstDayStart.getTime();
36
44
  const minTs = isFirstDay && lowerBound.getTime() === sod.getTime() ? now.getTime() : lowerBound.getTime();
37
45
  for (const line of lines) {
38
46
  const allowed = line.daysOfWeek.length === 0 || line.daysOfWeek.includes(wd);
39
47
  if (!allowed)
40
48
  continue;
41
- const dt = (0, utils_1.parseHHmmOnDay)(line.time, day);
49
+ const dt = _parseHHmm(line.time, day);
42
50
  if (dt.getTime() < minTs || dt > cutoff)
43
51
  continue;
44
- const key = `${dt.getFullYear()}-${(0, utils_1.pad2)(dt.getMonth() + 1)}-${(0, utils_1.pad2)(dt.getDate())} ${(0, utils_1.pad2)(dt.getHours())}:${(0, utils_1.pad2)(dt.getMinutes())}`;
52
+ const key = _dedupeKey(dt);
45
53
  if (dedupe.has(key))
46
54
  continue;
47
55
  dedupe.add(key);
@@ -66,19 +74,19 @@ function expandPlan(rule, now) {
66
74
  const partQtyByTime = new Map(parts.map((p) => [p.time, (p.qty != null && p.qty > 0) ? p.qty : 1]));
67
75
  const originalTimes = rule.times || [];
68
76
  const daysOfWeek = rule.daysOfWeek;
69
- const firstDayStart = (0, utils_1.startOfDay)(lowerBound);
70
- let day = (0, utils_1.startOfDay)(lowerBound);
77
+ const firstDayStart = _startOfDay(lowerBound);
78
+ let day = _startOfDay(lowerBound);
71
79
  while (day <= cutoff) {
72
- const wd = (0, utils_1.weekday1to7)(day.getDay());
80
+ const wd = _weekday(day);
73
81
  const allowed = !daysOfWeek || daysOfWeek.length === 0 || daysOfWeek.includes(wd);
74
82
  const isFirstDay = day.getTime() === firstDayStart.getTime();
75
83
  const minTs = isFirstDay && lowerBound.getTime() === sod.getTime() ? now.getTime() : lowerBound.getTime();
76
84
  if (allowed) {
77
85
  for (let i = 0; i < times.length; i++) {
78
86
  const hhmm = times[i];
79
- const dt = (0, utils_1.parseHHmmOnDay)(hhmm, day);
87
+ const dt = _parseHHmm(hhmm, day);
80
88
  if (dt.getTime() >= minTs && dt <= cutoff) {
81
- const key = `${dt.getFullYear()}-${(0, utils_1.pad2)(dt.getMonth() + 1)}-${(0, utils_1.pad2)(dt.getDate())} ${(0, utils_1.pad2)(dt.getHours())}:${(0, utils_1.pad2)(dt.getMinutes())}`;
89
+ const key = _dedupeKey(dt);
82
90
  if (!dedupe.has(key)) {
83
91
  dedupe.add(key);
84
92
  out.push({
@@ -102,7 +110,7 @@ function expandPlan(rule, now) {
102
110
  const qty = (rule.intervalQty != null && rule.intervalQty > 0)
103
111
  ? rule.intervalQty
104
112
  : 1;
105
- const firstDayStart = (0, utils_1.startOfDay)(lowerBound);
113
+ const firstDayStart = _startOfDay(lowerBound);
106
114
  if (firstDayStart.getTime() === sod.getTime()) {
107
115
  while (next < now) {
108
116
  next = (0, utils_1.addMinutes)(next, intervalMin);
@@ -129,8 +137,8 @@ function expandPlan(rule, now) {
129
137
  const times = (0, utils_1.sortTimesAsc)(rule.times || []);
130
138
  const diQtys = rule.diQtys || [];
131
139
  const stepDays = rule.unit === 'WEEK' ? rule.everyN * 7 : rule.everyN;
132
- let cursor = (0, utils_1.startOfDay)(new Date(rule.anchorDateISO));
133
- const targetStart = (0, utils_1.startOfDay)(lowerBound);
140
+ let cursor = _startOfDay(new Date(rule.anchorDateISO));
141
+ const targetStart = _startOfDay(lowerBound);
134
142
  while ((0, utils_1.addDays)(cursor, 1).getTime() < targetStart.getTime()) {
135
143
  cursor = (0, utils_1.addDays)(cursor, stepDays);
136
144
  }
@@ -139,9 +147,9 @@ function expandPlan(rule, now) {
139
147
  const minTs = isFirstDay && lowerBound.getTime() === sod.getTime() ? now.getTime() : lowerBound.getTime();
140
148
  for (let i = 0; i < times.length; i++) {
141
149
  const hhmm = times[i];
142
- const dt = (0, utils_1.parseHHmmOnDay)(hhmm, cursor);
150
+ const dt = _parseHHmm(hhmm, cursor);
143
151
  if (dt.getTime() >= minTs && dt <= cutoff) {
144
- const key = `${dt.getFullYear()}-${(0, utils_1.pad2)(dt.getMonth() + 1)}-${(0, utils_1.pad2)(dt.getDate())} ${(0, utils_1.pad2)(dt.getHours())}:${(0, utils_1.pad2)(dt.getMinutes())}`;
152
+ const key = _dedupeKey(dt);
145
153
  if (!dedupe.has(key)) {
146
154
  dedupe.add(key);
147
155
  const qty = Math.max(1, diQtys[i] || 1);
@@ -165,9 +173,9 @@ function expandPlan(rule, now) {
165
173
  const take = Math.max(1, Math.floor(rule.takeDays || 1));
166
174
  const pause = Math.max(0, Math.floor(rule.pauseDays || 0));
167
175
  const cycleLength = take + pause;
168
- let cursor = (0, utils_1.startOfDay)(lowerBound);
169
- const anchor = (0, utils_1.startOfDay)(new Date(rule.cycleAnchorISO || now)).getTime();
170
- const firstDayStart = (0, utils_1.startOfDay)(lowerBound);
176
+ let cursor = _startOfDay(lowerBound);
177
+ const anchor = _startOfDay(new Date(rule.cycleAnchorISO || now)).getTime();
178
+ const firstDayStart = _startOfDay(lowerBound);
171
179
  while (cursor <= cutoff) {
172
180
  const dayIndex = Math.floor((cursor.getTime() - anchor) / (24 * 60 * 60 * 1000));
173
181
  const inTake = ((dayIndex % cycleLength) + cycleLength) % cycleLength < take;
@@ -176,9 +184,9 @@ function expandPlan(rule, now) {
176
184
  if (inTake) {
177
185
  for (let i = 0; i < times.length; i++) {
178
186
  const hhmm = times[i];
179
- const dt = (0, utils_1.parseHHmmOnDay)(hhmm, cursor);
187
+ const dt = _parseHHmm(hhmm, cursor);
180
188
  if (dt.getTime() >= minTs && dt <= cutoff) {
181
- const key = `${dt.getFullYear()}-${(0, utils_1.pad2)(dt.getMonth() + 1)}-${(0, utils_1.pad2)(dt.getDate())} ${(0, utils_1.pad2)(dt.getHours())}:${(0, utils_1.pad2)(dt.getMinutes())}`;
189
+ const key = _dedupeKey(dt);
182
190
  if (!dedupe.has(key)) {
183
191
  dedupe.add(key);
184
192
  const qty = Math.max(1, cycQtys[i] || 1);
@@ -1 +1 @@
1
- {"version":3,"file":"expandPlan.js","sourceRoot":"","sources":["../../src/planning/expandPlan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"expandPlan.js","sourceRoot":"","sources":["../../src/planning/expandPlan.ts"],"names":[],"mappings":"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"}
@@ -12,4 +12,14 @@ export declare function sortLinesByTime(lines: Array<{
12
12
  qty?: number;
13
13
  [key: string]: any;
14
14
  }>): typeof lines;
15
+ export declare function createDateInTz(year: number, month: number, day: number, hour: number, minute: number, tz: string): Date;
16
+ export declare function formatWallClockHHmmInTz(date: Date, tz?: string): string;
17
+ export declare function getDatePartsInTz(d: Date, tz: string): {
18
+ year: number;
19
+ month: number;
20
+ day: number;
21
+ };
22
+ export declare function startOfDayInTz(d: Date, tz: string): Date;
23
+ export declare function parseHHmmOnDayInTz(hhmm: string, day: Date, tz: string): Date;
24
+ export declare function weekdayInTz(d: Date, tz: string): number;
15
25
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/planning/utils.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAK5C,eAAO,MAAM,IAAI,GAAI,GAAG,MAAM,KAAG,MAAoC,CAAC;AAKtE,eAAO,MAAM,UAAU,GAAI,GAAG,IAAI,EAAE,GAAG,MAAM,KAAG,IACb,CAAC;AAKpC,eAAO,MAAM,OAAO,GAAI,GAAG,IAAI,EAAE,MAAM,MAAM,KAAG,IACI,CAAC;AAKrD,eAAO,MAAM,UAAU,GAAI,GAAG,IAAI,KAAG,IACiB,CAAC;AAKvD,eAAO,MAAM,KAAK,GAAI,GAAG,IAAI,KAAG,MAAyB,CAAC;AAK1D,eAAO,MAAM,WAAW,GAAI,OAAO,MAAM,KAAG,WACJ,CAAC;AAQzC,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,GAAG,IAAI,CAG5D;AAOD,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAStD;AAKD,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,CAAC,GAAG,OAAO,KAAK,CAM9G"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/planning/utils.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAK5C,eAAO,MAAM,IAAI,GAAI,GAAG,MAAM,KAAG,MAAoC,CAAC;AAKtE,eAAO,MAAM,UAAU,GAAI,GAAG,IAAI,EAAE,GAAG,MAAM,KAAG,IACb,CAAC;AAKpC,eAAO,MAAM,OAAO,GAAI,GAAG,IAAI,EAAE,MAAM,MAAM,KAAG,IACI,CAAC;AAKrD,eAAO,MAAM,UAAU,GAAI,GAAG,IAAI,KAAG,IACiB,CAAC;AAKvD,eAAO,MAAM,KAAK,GAAI,GAAG,IAAI,KAAG,MAAyB,CAAC;AAK1D,eAAO,MAAM,WAAW,GAAI,OAAO,MAAM,KAAG,WACJ,CAAC;AAQzC,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,GAAG,IAAI,CAG5D;AAOD,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAStD;AAKD,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,CAAC,GAAG,OAAO,KAAK,CAM9G;AAoED,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EACxC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAC5B,EAAE,EAAE,MAAM,GACT,IAAI,CAUN;AA2BD,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAOvE;AAKD,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,GAAG;IACrD,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;CAC1C,CAGA;AAKD,wBAAgB,cAAc,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAGxD;AAMD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAI5E;AAKD,wBAAgB,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAGvD"}
@@ -4,6 +4,12 @@ exports.weekday1to7 = exports.toISO = exports.startOfDay = exports.addDays = exp
4
4
  exports.parseHHmmOnDay = parseHHmmOnDay;
5
5
  exports.sortTimesAsc = sortTimesAsc;
6
6
  exports.sortLinesByTime = sortLinesByTime;
7
+ exports.createDateInTz = createDateInTz;
8
+ exports.formatWallClockHHmmInTz = formatWallClockHHmmInTz;
9
+ exports.getDatePartsInTz = getDatePartsInTz;
10
+ exports.startOfDayInTz = startOfDayInTz;
11
+ exports.parseHHmmOnDayInTz = parseHHmmOnDayInTz;
12
+ exports.weekdayInTz = weekdayInTz;
7
13
  const pad2 = (n) => String(n).padStart(2, '0');
8
14
  exports.pad2 = pad2;
9
15
  const addMinutes = (d, m) => new Date(d.getTime() + m * 60000);
@@ -37,4 +43,91 @@ function sortLinesByTime(lines) {
37
43
  return (ah - bh) || (am - bm) || ((a.qty || 0) - (b.qty || 0));
38
44
  });
39
45
  }
46
+ function parseEnUSLocale(str) {
47
+ const m = str.match(/(\d{1,2})\/(\d{1,2})\/(\d{4})\D+(\d{1,2}):(\d{2})(?::(\d{2}))?\s*(AM|PM)?/i);
48
+ if (!m)
49
+ return null;
50
+ let h = parseInt(m[4], 10);
51
+ if (m[7]) {
52
+ const ampm = m[7].toUpperCase();
53
+ if (ampm === 'PM' && h !== 12)
54
+ h += 12;
55
+ if (ampm === 'AM' && h === 12)
56
+ h = 0;
57
+ }
58
+ if (h === 24)
59
+ h = 0;
60
+ return {
61
+ year: parseInt(m[3], 10),
62
+ month: parseInt(m[1], 10) - 1,
63
+ day: parseInt(m[2], 10),
64
+ hour: h,
65
+ minute: parseInt(m[5], 10),
66
+ };
67
+ }
68
+ function getUtcOffsetMs(date, tz) {
69
+ try {
70
+ const utcStr = date.toLocaleString('en-US', { timeZone: 'UTC' });
71
+ const tzStr = date.toLocaleString('en-US', { timeZone: tz });
72
+ const utcP = parseEnUSLocale(utcStr);
73
+ const tzP = parseEnUSLocale(tzStr);
74
+ if (!utcP || !tzP)
75
+ return 0;
76
+ const utcMs = Date.UTC(utcP.year, utcP.month, utcP.day, utcP.hour, utcP.minute, 0, 0);
77
+ const tzMs = Date.UTC(tzP.year, tzP.month, tzP.day, tzP.hour, tzP.minute, 0, 0);
78
+ const diff = utcMs - tzMs;
79
+ return Number.isFinite(diff) ? diff : 0;
80
+ }
81
+ catch {
82
+ return 0;
83
+ }
84
+ }
85
+ function createDateInTz(year, month, day, hour, minute, tz) {
86
+ const utcGuess = new Date(Date.UTC(year, month, day, hour, minute, 0, 0));
87
+ const offsetMs = getUtcOffsetMs(utcGuess, tz);
88
+ const adjusted = new Date(utcGuess.getTime() + offsetMs);
89
+ const verifyOffset = getUtcOffsetMs(adjusted, tz);
90
+ if (verifyOffset !== offsetMs) {
91
+ return new Date(utcGuess.getTime() + verifyOffset);
92
+ }
93
+ return adjusted;
94
+ }
95
+ function getPartsInTz(date, tz) {
96
+ try {
97
+ const str = date.toLocaleString('en-US', { timeZone: tz });
98
+ const p = parseEnUSLocale(str);
99
+ if (p)
100
+ return p;
101
+ }
102
+ catch { }
103
+ return {
104
+ year: date.getFullYear(), month: date.getMonth(), day: date.getDate(),
105
+ hour: date.getHours(), minute: date.getMinutes(),
106
+ };
107
+ }
108
+ function formatWallClockHHmmInTz(date, tz) {
109
+ const t = typeof tz === 'string' ? tz.trim() : '';
110
+ if (!t) {
111
+ return `${(0, exports.pad2)(date.getHours())}:${(0, exports.pad2)(date.getMinutes())}`;
112
+ }
113
+ const p = getPartsInTz(date, t);
114
+ return `${(0, exports.pad2)(p.hour)}:${(0, exports.pad2)(p.minute)}`;
115
+ }
116
+ function getDatePartsInTz(d, tz) {
117
+ const p = getPartsInTz(d, tz);
118
+ return { year: p.year, month: p.month, day: p.day };
119
+ }
120
+ function startOfDayInTz(d, tz) {
121
+ const p = getDatePartsInTz(d, tz);
122
+ return createDateInTz(p.year, p.month, p.day, 0, 0, tz);
123
+ }
124
+ function parseHHmmOnDayInTz(hhmm, day, tz) {
125
+ const [h, m] = hhmm.split(':').map(Number);
126
+ const dp = getDatePartsInTz(day, tz);
127
+ return createDateInTz(dp.year, dp.month, dp.day, h, m, tz);
128
+ }
129
+ function weekdayInTz(d, tz) {
130
+ const p = getDatePartsInTz(d, tz);
131
+ return new Date(Date.UTC(p.year, p.month, p.day)).getUTCDay();
132
+ }
40
133
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/planning/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/planning/utils.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,9 @@ export declare class SyncPluginEventDriven implements PluginInterface {
16
16
  private ctx;
17
17
  private pushDebounceTimer;
18
18
  private syncInProgress;
19
+ private syncScopeDepth;
20
+ private pendingSyncRequested;
21
+ private pendingUserIdFromCaller;
19
22
  private lastSyncAt;
20
23
  private lastUserIdFromCaller;
21
24
  private readonly config;
@@ -24,6 +27,10 @@ export declare class SyncPluginEventDriven implements PluginInterface {
24
27
  bootstrap(context: PluginContext): Promise<void>;
25
28
  dispose(): Promise<void>;
26
29
  private debouncedPush;
30
+ private beginSyncScope;
31
+ private endSyncScope;
32
+ private requestAnotherSyncCycle;
33
+ private resolveEffectiveUserId;
27
34
  private retryWithBackoff;
28
35
  private pushLocalChanges;
29
36
  private pullRemoteChanges;
@@ -1 +1 @@
1
- {"version":3,"file":"SyncPluginEventDriven.d.ts","sourceRoot":"","sources":["../../src/plugins/SyncPluginEventDriven.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAyB,MAAM,6BAA6B,CAAC;AAa5F,MAAM,WAAW,2BAA2B;IAE1C,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,eAAe,CAAC,EAAE,OAAO,CAAC;IAG1B,wBAAwB,CAAC,EAAE,OAAO,CAAC;IAGnC,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,GAAG,MAAM,GAAG,SAAS,CAAC;IAInE,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AAGD,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAqBD,qBAAa,qBAAsB,YAAW,eAAe;IAgBzD,OAAO,CAAC,QAAQ;IAflB,QAAQ,CAAC,IAAI,gBAAgB;IAC7B,OAAO,CAAC,GAAG,CAAiB;IAC5B,OAAO,CAAC,iBAAiB,CAAa;IACtC,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,UAAU,CAAuB;IAEzC,OAAO,CAAC,oBAAoB,CAAuB;IACnD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAKrB;gBAGQ,QAAQ,EAAE,iBAAiB,EACnC,GAAG,GAAE,2BAAgC;IAiBvC,OAAO,CAAC,eAAe;IAkCjB,SAAS,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IA4FhD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAc9B,OAAO,CAAC,aAAa;YAiBP,gBAAgB;YA8BhB,gBAAgB;YA8GhB,iBAAiB;IAqFzB,OAAO,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;YA0DxC,iBAAiB;YAiPjB,kBAAkB;IAwhBhC,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,aAAa;IAQf,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;YAwCxB,2BAA2B;YA8B3B,8BAA8B;YAsG9B,aAAa;CAY5B"}
1
+ {"version":3,"file":"SyncPluginEventDriven.d.ts","sourceRoot":"","sources":["../../src/plugins/SyncPluginEventDriven.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAyB,MAAM,6BAA6B,CAAC;AAa5F,MAAM,WAAW,2BAA2B;IAE1C,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,eAAe,CAAC,EAAE,OAAO,CAAC;IAG1B,wBAAwB,CAAC,EAAE,OAAO,CAAC;IAGnC,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,GAAG,MAAM,GAAG,SAAS,CAAC;IAInE,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AAGD,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAqBD,qBAAa,qBAAsB,YAAW,eAAe;IAmBzD,OAAO,CAAC,QAAQ;IAlBlB,QAAQ,CAAC,IAAI,gBAAgB;IAC7B,OAAO,CAAC,GAAG,CAAiB;IAC5B,OAAO,CAAC,iBAAiB,CAAa;IACtC,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,oBAAoB,CAAS;IACrC,OAAO,CAAC,uBAAuB,CAAuB;IACtD,OAAO,CAAC,UAAU,CAAuB;IAEzC,OAAO,CAAC,oBAAoB,CAAuB;IACnD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAKrB;gBAGQ,QAAQ,EAAE,iBAAiB,EACnC,GAAG,GAAE,2BAAgC;IAiBvC,OAAO,CAAC,eAAe;IAiDjB,SAAS,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IA4FhD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAc9B,OAAO,CAAC,aAAa;IAcrB,OAAO,CAAC,cAAc;YAIR,YAAY;IAe1B,OAAO,CAAC,uBAAuB;YAQjB,sBAAsB;YAmBtB,gBAAgB;YA8BhB,gBAAgB;YAkHhB,iBAAiB;IAyFzB,OAAO,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;YA8DxC,iBAAiB;YAiPjB,kBAAkB;IAohBhC,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,aAAa;IAQf,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;YAwCxB,2BAA2B;YA8B3B,8BAA8B;YAsG9B,aAAa;CAY5B"}
@@ -14,6 +14,9 @@ class SyncPluginEventDriven {
14
14
  this.name = 'SyncPlugin';
15
15
  this.pushDebounceTimer = null;
16
16
  this.syncInProgress = false;
17
+ this.syncScopeDepth = 0;
18
+ this.pendingSyncRequested = false;
19
+ this.pendingUserIdFromCaller = null;
17
20
  this.lastSyncAt = null;
18
21
  this.lastUserIdFromCaller = null;
19
22
  this.config = {
@@ -29,6 +32,8 @@ class SyncPluginEventDriven {
29
32
  }
30
33
  categorizeError(error) {
31
34
  const msg = String(error?.message || '').toLowerCase();
35
+ const code = String(error?.code || '');
36
+ const status = Number(error?.status ?? error?.statusCode ?? 0);
32
37
  if (msg.includes('network') || msg.includes('fetch failed')) {
33
38
  return {
34
39
  type: 'NETWORK_ERROR',
@@ -36,14 +41,25 @@ class SyncPluginEventDriven {
36
41
  userMessage: 'Sem conexão. Dados serão sincronizados quando voltar online.'
37
42
  };
38
43
  }
39
- if (msg.includes('userid is required') || msg.includes('rls')) {
44
+ if (msg.includes('userid is required') ||
45
+ msg.includes('rls') ||
46
+ msg.includes('jwt') ||
47
+ msg.includes('permission denied') ||
48
+ msg.includes('unauthorized') ||
49
+ msg.includes('forbidden') ||
50
+ msg.includes('user_banned') ||
51
+ msg.includes('user banned') ||
52
+ code === '42501' ||
53
+ code === 'PGRST301' ||
54
+ status === 401 ||
55
+ status === 403) {
40
56
  return {
41
57
  type: 'AUTH_ERROR',
42
58
  retryable: false,
43
59
  userMessage: 'Erro de autenticação. Faça login novamente.'
44
60
  };
45
61
  }
46
- if (error?.status >= 500) {
62
+ if (status >= 500) {
47
63
  return {
48
64
  type: 'SERVER_ERROR',
49
65
  retryable: true,
@@ -126,6 +142,40 @@ class SyncPluginEventDriven {
126
142
  }
127
143
  this.pushDebounceTimer = timer;
128
144
  }
145
+ beginSyncScope() {
146
+ this.syncScopeDepth += 1;
147
+ }
148
+ async endSyncScope() {
149
+ this.syncScopeDepth = Math.max(0, this.syncScopeDepth - 1);
150
+ if (this.syncScopeDepth > 0 || this.syncInProgress || !this.pendingSyncRequested) {
151
+ return;
152
+ }
153
+ const userId = this.pendingUserIdFromCaller ?? this.lastUserIdFromCaller ?? undefined;
154
+ this.pendingSyncRequested = false;
155
+ this.pendingUserIdFromCaller = null;
156
+ console.log('🔁 [SyncPluginEventDriven] Flushing one coalesced sync cycle');
157
+ await this.syncNow(userId ? { userId } : undefined);
158
+ }
159
+ requestAnotherSyncCycle(userId) {
160
+ this.pendingSyncRequested = true;
161
+ if (userId) {
162
+ this.pendingUserIdFromCaller = userId;
163
+ this.lastUserIdFromCaller = userId;
164
+ }
165
+ }
166
+ async resolveEffectiveUserId(preferredUserId) {
167
+ const candidate = preferredUserId ?? this.lastUserIdFromCaller ?? null;
168
+ if (candidate) {
169
+ this.lastUserIdFromCaller = candidate;
170
+ return candidate;
171
+ }
172
+ const resolved = await this.resolveUserId();
173
+ if (resolved) {
174
+ this.lastUserIdFromCaller = resolved;
175
+ return resolved;
176
+ }
177
+ return null;
178
+ }
129
179
  async retryWithBackoff(fn, operation, maxRetries = 3) {
130
180
  for (let attempt = 0; attempt < maxRetries; attempt++) {
131
181
  try {
@@ -147,8 +197,11 @@ class SyncPluginEventDriven {
147
197
  throw new Error('Max retries exceeded');
148
198
  }
149
199
  async pushLocalChanges(callerUserId) {
200
+ this.beginSyncScope();
150
201
  if (this.syncInProgress) {
151
- console.log('⏭️ [SyncPluginEventDriven] Push already in progress, skipping');
202
+ this.requestAnotherSyncCycle(callerUserId ?? this.lastUserIdFromCaller);
203
+ console.log('⏭️ [SyncPluginEventDriven] Push already in progress, requeueing one extra cycle');
204
+ await this.endSyncScope();
152
205
  return;
153
206
  }
154
207
  this.syncInProgress = true;
@@ -156,7 +209,7 @@ class SyncPluginEventDriven {
156
209
  const nowISO = new Date().toISOString();
157
210
  const since = this.getLastSyncAt() || new Date(Date.now() - 90 * 24 * 60 * 60 * 1000).toISOString();
158
211
  try {
159
- const userId = callerUserId ?? this.lastUserIdFromCaller ?? null;
212
+ const userId = await this.resolveEffectiveUserId(callerUserId);
160
213
  if (!userId) {
161
214
  console.log('ℹ️ [SyncPluginEventDriven] No userId available, skipping push');
162
215
  return;
@@ -220,18 +273,22 @@ class SyncPluginEventDriven {
220
273
  }
221
274
  finally {
222
275
  this.syncInProgress = false;
276
+ await this.endSyncScope();
223
277
  }
224
278
  }
225
279
  async pullRemoteChanges(trigger, callerUserId) {
280
+ this.beginSyncScope();
226
281
  if (this.syncInProgress) {
227
- console.log('⏭️ [SyncPluginEventDriven] Pull already in progress, skipping');
282
+ this.requestAnotherSyncCycle(callerUserId ?? this.lastUserIdFromCaller);
283
+ console.log('⏭️ [SyncPluginEventDriven] Pull already in progress, requeueing one extra cycle');
284
+ await this.endSyncScope();
228
285
  return;
229
286
  }
230
287
  this.syncInProgress = true;
231
288
  const { eventBus } = this.ctx;
232
289
  const nowISO = new Date().toISOString();
233
290
  try {
234
- const userId = callerUserId ?? this.lastUserIdFromCaller ?? null;
291
+ const userId = await this.resolveEffectiveUserId(callerUserId);
235
292
  if (!userId) {
236
293
  console.log('ℹ️ [SyncPluginEventDriven] No userId available, skipping pull');
237
294
  return;
@@ -270,53 +327,59 @@ class SyncPluginEventDriven {
270
327
  }
271
328
  finally {
272
329
  this.syncInProgress = false;
330
+ await this.endSyncScope();
273
331
  }
274
332
  }
275
333
  async syncNow(options) {
276
334
  console.log('🔄 [SyncPluginEventDriven] Manual sync requested');
277
- const userId = options?.userId ?? this.lastUserIdFromCaller ?? null;
278
- if (!userId) {
279
- console.log('ℹ️ [SyncPluginEventDriven] No userId provided, skipping sync');
280
- return;
281
- }
282
- this.lastUserIdFromCaller = userId;
283
- const userIdSource = options?.userId ? 'explicit' : 'lastUserIdFromCaller';
284
- console.log(`🔄 [SyncPluginEventDriven] syncNow userId=${userId.substring(0, 8)}... (source: ${userIdSource}, lastSyncAt: ${this.lastSyncAt || 'null'})`);
285
- const lastSync = this.getLastSyncAt();
286
- const isColdStart = !lastSync || (() => {
287
- try {
288
- const lastSyncDate = new Date(lastSync);
289
- const now = new Date();
290
- const daysSinceSync = (now.getTime() - lastSyncDate.getTime()) / (1000 * 60 * 60 * 24);
291
- return daysSinceSync > 7;
335
+ this.beginSyncScope();
336
+ try {
337
+ const userId = await this.resolveEffectiveUserId(options?.userId);
338
+ if (!userId) {
339
+ console.log('ℹ️ [SyncPluginEventDriven] No userId provided, skipping sync');
340
+ return;
292
341
  }
293
- catch {
294
- return true;
342
+ const userIdSource = options?.userId ? 'explicit' : (this.config.getUserId ? 'resolver' : 'lastUserIdFromCaller');
343
+ console.log(`🔄 [SyncPluginEventDriven] syncNow userId=${userId.substring(0, 8)}... (source: ${userIdSource}, lastSyncAt: ${this.lastSyncAt || 'null'})`);
344
+ const lastSync = this.getLastSyncAt();
345
+ const isColdStart = !lastSync || (() => {
346
+ try {
347
+ const lastSyncDate = new Date(lastSync);
348
+ const now = new Date();
349
+ const daysSinceSync = (now.getTime() - lastSyncDate.getTime()) / (1000 * 60 * 60 * 24);
350
+ return daysSinceSync > 7;
351
+ }
352
+ catch {
353
+ return true;
354
+ }
355
+ })();
356
+ if (isColdStart) {
357
+ console.log('❄️ [SyncPluginEventDriven] Cold start detected, pulling first to consume latest state');
358
+ try {
359
+ await this.pullRemoteChanges('manual-cold-start', userId);
360
+ }
361
+ catch (err) {
362
+ console.warn('⚠️ [SyncPluginEventDriven] Pull failed in syncNow (cold start), continuing to push');
363
+ }
295
364
  }
296
- })();
297
- if (isColdStart) {
298
- console.log('❄️ [SyncPluginEventDriven] Cold start detected, pulling first to consume latest state');
299
365
  try {
300
- await this.pullRemoteChanges('manual-cold-start', userId);
366
+ await this.pushLocalChanges(userId);
301
367
  }
302
368
  catch (err) {
303
- console.warn('⚠️ [SyncPluginEventDriven] Pull failed in syncNow (cold start), continuing to push');
369
+ console.warn('⚠️ [SyncPluginEventDriven] Push failed in syncNow, continuing to pull');
304
370
  }
305
- }
306
- try {
307
- await this.pushLocalChanges(userId);
308
- }
309
- catch (err) {
310
- console.warn('⚠️ [SyncPluginEventDriven] Push failed in syncNow, continuing to pull');
311
- }
312
- if (!isColdStart) {
313
- try {
314
- await this.pullRemoteChanges('manual', userId);
315
- }
316
- catch (err) {
317
- console.warn('⚠️ [SyncPluginEventDriven] Pull failed in syncNow');
371
+ if (!isColdStart) {
372
+ try {
373
+ await this.pullRemoteChanges('manual', userId);
374
+ }
375
+ catch (err) {
376
+ console.warn('⚠️ [SyncPluginEventDriven] Pull failed in syncNow');
377
+ }
318
378
  }
319
379
  }
380
+ finally {
381
+ await this.endSyncScope();
382
+ }
320
383
  }
321
384
  async buildLocalChanges(sinceISO) {
322
385
  const out = {};
@@ -620,8 +683,8 @@ class SyncPluginEventDriven {
620
683
  const localRow = await storage.getFirstAsync('SELECT updated_at, status FROM occurrences WHERE id = ?', [occId]);
621
684
  if (!localRow)
622
685
  continue;
623
- const localUpdatedAt = localRow.updated_at ? new Date(String(localRow.updated_at)).getTime() : 0;
624
- const remoteUpdatedTime = new Date(remoteUpdatedAt).getTime();
686
+ const localUpdatedAt = toUtcMs(localRow.updated_at);
687
+ const remoteUpdatedTime = toUtcMs(remoteUpdatedAt);
625
688
  const localStatus = String(localRow.status || 'PENDING').toUpperCase();
626
689
  const remoteStatus = String(r.status).toUpperCase();
627
690
  const localPending = localStatus === 'PENDING';
@@ -667,8 +730,8 @@ class SyncPluginEventDriven {
667
730
  const remoteUpdatedAt = r.updated_at ? String(r.updated_at) : (r.action_at ? String(r.action_at) : new Date().toISOString());
668
731
  const existingEvent = await storage.getFirstAsync('SELECT updated_at FROM events WHERE id = ?', [eventId]);
669
732
  if (existingEvent) {
670
- const localUpdatedAt = existingEvent.updated_at ? new Date(String(existingEvent.updated_at)).getTime() : 0;
671
- const remoteUpdatedTime = new Date(remoteUpdatedAt).getTime();
733
+ const localUpdatedAt = toUtcMs(existingEvent.updated_at);
734
+ const remoteUpdatedTime = toUtcMs(remoteUpdatedAt);
672
735
  if (remoteUpdatedTime >= localUpdatedAt) {
673
736
  await storage.runAsync(`UPDATE events SET occurrence_id = ?, action = ?, action_at = ?, source = ?, note = ?, payload = ?, updated_at = ?, version = version + 1 WHERE id = ?`, [occurrenceId, String(r.action), String(r.action_at || remoteUpdatedAt), String(r.source || 'screen'), r.note || null, typeof r.payload === 'string' ? r.payload : (r.payload ? JSON.stringify(r.payload) : null), remoteUpdatedAt, eventId]);
674
737
  updatedEvents++;
@@ -768,12 +831,10 @@ class SyncPluginEventDriven {
768
831
  const remoteTotal = Number(r.total ?? 0);
769
832
  const remoteDone = Number(r.done ?? 0);
770
833
  const remotePercent = Number(r.percent ?? -1);
771
- const remoteUpdated = r.updated_at ? new Date(String(r.updated_at)).getTime() : 0;
834
+ const remoteUpdated = toUtcMs(r.updated_at);
772
835
  const existingRow = await storage.getFirstAsync('SELECT total, done, percent, updated_at FROM adherence_daily WHERE date_local = ?', [dateKey]);
773
836
  if (existingRow) {
774
- const localUpdated = existingRow.updated_at
775
- ? new Date(String(existingRow.updated_at)).getTime()
776
- : 0;
837
+ const localUpdated = toUtcMs(existingRow.updated_at);
777
838
  if (!remoteUpdated || remoteUpdated <= localUpdated) {
778
839
  continue;
779
840
  }
@@ -824,12 +885,10 @@ class SyncPluginEventDriven {
824
885
  continue;
825
886
  const dateKey = String(r.date_local);
826
887
  const remoteStreak = Number(r.streak ?? 0);
827
- const remoteUpdated = r.updated_at ? new Date(String(r.updated_at)).getTime() : 0;
888
+ const remoteUpdated = toUtcMs(r.updated_at);
828
889
  const existingRow = await storage.getFirstAsync('SELECT streak, updated_at FROM levels_state WHERE date_local = ?', [dateKey]);
829
890
  if (existingRow) {
830
- const localUpdated = existingRow.updated_at
831
- ? new Date(String(existingRow.updated_at)).getTime()
832
- : 0;
891
+ const localUpdated = toUtcMs(existingRow.updated_at);
833
892
  const localStreak = Number(existingRow.streak ?? 0);
834
893
  if (!remoteUpdated || remoteUpdated <= localUpdated) {
835
894
  continue;
@@ -980,6 +1039,12 @@ class SyncPluginEventDriven {
980
1039
  }
981
1040
  }
982
1041
  exports.SyncPluginEventDriven = SyncPluginEventDriven;
1042
+ function toUtcMs(value) {
1043
+ if (value == null)
1044
+ return 0;
1045
+ const ms = (0, timestamp_1.parseUTC)(String(value)).getTime();
1046
+ return Number.isFinite(ms) ? ms : 0;
1047
+ }
983
1048
  function safelyParseJSON(input) {
984
1049
  if (input == null)
985
1050
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"SyncPluginEventDriven.js","sourceRoot":"","sources":["../../src/plugins/SyncPluginEventDriven.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SyncPluginEventDriven.js","sourceRoot":"","sources":["../../src/plugins/SyncPluginEventDriven.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"WindowScheduler.d.ts","sourceRoot":"","sources":["../../src/reconciler/WindowScheduler.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAGlF,OAAO,EAAE,kBAAkB,EAAc,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAQ5C,qBAAa,eAAe;IAWxB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,eAAe;IACvB,OAAO,CAAC,kBAAkB;IAC1B,OAAO,CAAC,QAAQ;IAblB,OAAO,CAAC,aAAa,CAAkB;IACvC,OAAO,CAAC,aAAa,CAAc;IAEnC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAmC;IACzD,OAAO,CAAC,SAAS;gBAMP,SAAS,EAAE,eAAe,EAC1B,eAAe,EAAE,qBAAqB,EACtC,kBAAkB,EAAE,kBAAkB,EACtC,QAAQ,EAAE,QAAQ;IAM5B,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAOxC,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;YAOzB,iBAAiB;IAiBzB,UAAU,CAAC,OAAO,GAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAsF1D,wBAAwB,CAAC,OAAO,GAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IA2E3F,eAAe,CAAC,OAAO,GAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,cAAc,CAAC,EAAE,OAAO,CAAC;QAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAkY3H,YAAY,CAAC,OAAO,GAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAWlE,OAAO,CAAC,uBAAuB;IAW/B,OAAO,CAAC,sBAAsB;IAiB9B,OAAO,CAAC,gBAAgB;IAcxB,OAAO,CAAC,YAAY;CASrB"}
1
+ {"version":3,"file":"WindowScheduler.d.ts","sourceRoot":"","sources":["../../src/reconciler/WindowScheduler.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAIlF,OAAO,EAAE,kBAAkB,EAAc,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAQ5C,qBAAa,eAAe;IAWxB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,eAAe;IACvB,OAAO,CAAC,kBAAkB;IAC1B,OAAO,CAAC,QAAQ;IAblB,OAAO,CAAC,aAAa,CAAkB;IACvC,OAAO,CAAC,aAAa,CAAc;IAEnC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAmC;IACzD,OAAO,CAAC,SAAS;gBAMP,SAAS,EAAE,eAAe,EAC1B,eAAe,EAAE,qBAAqB,EACtC,kBAAkB,EAAE,kBAAkB,EACtC,QAAQ,EAAE,QAAQ;IAM5B,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAOxC,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;YAOzB,iBAAiB;IAiBzB,UAAU,CAAC,OAAO,GAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IA8F1D,wBAAwB,CAAC,OAAO,GAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IA2E3F,eAAe,CAAC,OAAO,GAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,cAAc,CAAC,EAAE,OAAO,CAAC;QAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAmY3H,YAAY,CAAC,OAAO,GAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAWlE,OAAO,CAAC,uBAAuB;IAW/B,OAAO,CAAC,sBAAsB;IAgB9B,OAAO,CAAC,gBAAgB;IAcxB,OAAO,CAAC,YAAY;CASrB"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.WindowScheduler = void 0;
4
4
  const expandPlan_1 = require("../planning/expandPlan");
5
5
  const windowPlanner_1 = require("../planning/windowPlanner");
6
+ const utils_1 = require("../planning/utils");
6
7
  const timestamp_1 = require("../utils/timestamp");
7
8
  const timezone_1 = require("../utils/timezone");
8
9
  const queue_1 = require("../utils/queue");
@@ -53,6 +54,9 @@ class WindowScheduler {
53
54
  return;
54
55
  }
55
56
  console.log(`📅 Found ${plans.length} active plans`);
57
+ for (const plan of plans) {
58
+ console.log(`📅 Plan ${plan.id.substring(0, 20)}… tz=${JSON.stringify(plan.tz)} kind=${plan.schedule_rule?.kind}`);
59
+ }
56
60
  let totalDeleted = 0;
57
61
  let plansWithDeletes = 0;
58
62
  for (const plan of plans) {
@@ -68,8 +72,12 @@ class WindowScheduler {
68
72
  const allOccurrences = [];
69
73
  for (const plan of plans) {
70
74
  try {
71
- const expanded = (0, expandPlan_1.expandPlan)(plan.schedule_rule, now);
75
+ const expanded = (0, expandPlan_1.expandPlan)(plan.schedule_rule, now, plan.tz);
72
76
  const windowed = (0, windowPlanner_1.selectWindow)(expanded, { windowDays: days, maxPending: 1000 });
77
+ if (windowed.length > 0) {
78
+ const sample = windowed[0].scheduledAt;
79
+ console.log(`📅 Plan ${plan.id.substring(0, 16)}… expanded ${windowed.length} occs (tz=${JSON.stringify(plan.tz)}, first=${sample})`);
80
+ }
73
81
  const dbOccurrences = windowed.map(occ => ({
74
82
  id: `${plan.id}:${occ.scheduledAt}`,
75
83
  plan_id: plan.id,
@@ -124,7 +132,7 @@ class WindowScheduler {
124
132
  const allOccurrences = [];
125
133
  for (const plan of plans) {
126
134
  try {
127
- const expanded = (0, expandPlan_1.expandPlan)(plan.schedule_rule, now);
135
+ const expanded = (0, expandPlan_1.expandPlan)(plan.schedule_rule, now, plan.tz);
128
136
  const windowed = (0, windowPlanner_1.selectWindow)(expanded, { windowDays: days, maxPending: 1000 });
129
137
  const dbOccurrences = windowed.map(occ => ({
130
138
  id: `${plan.id}:${occ.scheduledAt}`,
@@ -221,10 +229,11 @@ class WindowScheduler {
221
229
  continue;
222
230
  }
223
231
  try {
224
- const hh = scheduledTime.getHours().toString().padStart(2, '0');
225
- const mm = scheduledTime.getMinutes().toString().padStart(2, '0');
232
+ const planTz = occ.plan_tz;
233
+ const wall = (0, utils_1.formatWallClockHHmmInTz)(scheduledTime, planTz);
234
+ const [hh, mm] = wall.split(':');
226
235
  const groupKey = key;
227
- const legacyDailyKey = `${occ.kind}:HH:${hh}:${mm}`;
236
+ const legacyDailyKey = `${occ.kind}:HH:${scheduledTime.getHours().toString().padStart(2, '0')}:${scheduledTime.getMinutes().toString().padStart(2, '0')}`;
228
237
  const names = occs.map((o) => o.item_name).filter(Boolean);
229
238
  const namesShort = names.slice(0, 2).join(', ') + (names.length > 2 ? ` +${names.length - 2}` : '');
230
239
  const title = `💊 ${occs.length} medicamentos agora`;
@@ -504,10 +513,9 @@ class WindowScheduler {
504
513
  return `${this.getItemTypeEmoji(occ.kind)} ${name}`.trim();
505
514
  }
506
515
  formatNotificationBody(occ) {
507
- const time = (0, timestamp_1.parseUTC)(occ.scheduled_at).toLocaleTimeString('pt-BR', {
508
- hour: '2-digit',
509
- minute: '2-digit'
510
- });
516
+ const d = (0, timestamp_1.parseUTC)(occ.scheduled_at);
517
+ const planTz = occ.plan_tz;
518
+ const time = (0, utils_1.formatWallClockHHmmInTz)(d, planTz);
511
519
  const qtyLabel = occ?.qty && occ.qty > 0 ? `${occ.qty} ${this.inferQtyUnit(occ)}` : null;
512
520
  const parts = [];
513
521
  if (qtyLabel)
@@ -1 +1 @@
1
- {"version":3,"file":"WindowScheduler.js","sourceRoot":"","sources":["../../src/reconciler/WindowScheduler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WindowScheduler.js","sourceRoot":"","sources":["../../src/reconciler/WindowScheduler.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aleonnet/healthcare-scheduler",
3
- "version": "0.1.48",
3
+ "version": "0.2.0",
4
4
  "description": "Healthcare scheduling and medication reminder system",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",