@mrck-labs/vanaheim-shared 0.4.1 → 0.5.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.
@@ -308,6 +308,42 @@ interface HealthStats {
308
308
  bestStreak: number;
309
309
  weeklyCompletions: number;
310
310
  }
311
+ type HealthMeasurementType = 'weight' | 'height' | 'body_fat' | 'bmi';
312
+ type HealthMeasurementSource = 'apple_health' | 'manual';
313
+ interface HealthMeasurement {
314
+ id: string;
315
+ userId: string;
316
+ type: HealthMeasurementType;
317
+ value: number;
318
+ unit: string;
319
+ date: string;
320
+ source: HealthMeasurementSource;
321
+ appleHealthUuid: string | null;
322
+ createdAt: string;
323
+ }
324
+ interface NewHealthMeasurement {
325
+ type: HealthMeasurementType;
326
+ value: number;
327
+ unit: string;
328
+ date: string;
329
+ source?: HealthMeasurementSource;
330
+ appleHealthUuid?: string | null;
331
+ }
332
+ interface HealthMeasurementFilters {
333
+ type?: HealthMeasurementType;
334
+ dateFrom?: string;
335
+ dateTo?: string;
336
+ source?: HealthMeasurementSource;
337
+ }
338
+ interface WeightStats {
339
+ current: number | null;
340
+ currentDate: string | null;
341
+ highest: number | null;
342
+ lowest: number | null;
343
+ average: number | null;
344
+ trend: 'up' | 'down' | 'stable' | null;
345
+ measurements: number;
346
+ }
311
347
  interface Setting {
312
348
  id: string;
313
349
  userId: string;
@@ -470,4 +506,4 @@ interface NoteFilters {
470
506
  search?: string;
471
507
  }
472
508
 
473
- export type { ParsedWeeklyPlan as $, NewHealthCompletion as A, BankConnectionStatus as B, ChatMessageRole as C, HealthHabitFilters as D, ExpenseCategory as E, FocusCategory as F, HealthCompletionFilters as G, HealthCategory as H, IncomeCategory as I, HealthStats as J, ExchangeRate as K, LieuDayType as L, DailyPriority as M, NewExpenseCategory as N, DailyPlan as O, NewDailyPlan as P, ParsedDailyPlan as Q, MealType as R, Setting as S, TransactionType as T, MealPlan as U, NewMealPlan as V, PrepSession as W, NewPrepSession as X, FocusArea as Y, WeeklyPlan as Z, NewWeeklyPlan as _, Expense as a, NoteType as a0, NoteFolder as a1, NewNoteFolder as a2, Note as a3, NewNote as a4, NoteFilters as a5, NewExpense as b, NewIncomeCategory as c, Income as d, NewIncome as e, NewFocusCategory as f, FocusSessionStatus as g, FocusSession as h, NewFocusSession as i, FocusSessionFilters as j, ChatConversation as k, NewChatConversation as l, ChatMessage as m, NewChatMessage as n, EFLink as o, NewEFLink as p, LieuDay as q, NewLieuDay as r, BankConnection as s, BankTransaction as t, NewHealthCategory as u, HealthFrequencyType as v, HealthFrequencyConfig as w, HealthHabit as x, NewHealthHabit as y, HealthCompletion as z };
509
+ export type { NewMealPlan as $, NewHealthCompletion as A, BankConnectionStatus as B, ChatMessageRole as C, HealthHabitFilters as D, ExpenseCategory as E, FocusCategory as F, HealthCompletionFilters as G, HealthCategory as H, IncomeCategory as I, HealthStats as J, HealthMeasurementType as K, LieuDayType as L, HealthMeasurementSource as M, NewExpenseCategory as N, HealthMeasurement as O, NewHealthMeasurement as P, HealthMeasurementFilters as Q, ExchangeRate as R, Setting as S, TransactionType as T, DailyPriority as U, DailyPlan as V, WeightStats as W, NewDailyPlan as X, ParsedDailyPlan as Y, MealType as Z, MealPlan as _, Expense as a, PrepSession as a0, NewPrepSession as a1, FocusArea as a2, WeeklyPlan as a3, NewWeeklyPlan as a4, ParsedWeeklyPlan as a5, NoteType as a6, NoteFolder as a7, NewNoteFolder as a8, Note as a9, NewNote as aa, NoteFilters as ab, NewExpense as b, NewIncomeCategory as c, Income as d, NewIncome as e, NewFocusCategory as f, FocusSessionStatus as g, FocusSession as h, NewFocusSession as i, FocusSessionFilters as j, ChatConversation as k, NewChatConversation as l, ChatMessage as m, NewChatMessage as n, EFLink as o, NewEFLink as p, LieuDay as q, NewLieuDay as r, BankConnection as s, BankTransaction as t, NewHealthCategory as u, HealthFrequencyType as v, HealthFrequencyConfig as w, HealthHabit as x, NewHealthHabit as y, HealthCompletion as z };
@@ -308,6 +308,42 @@ interface HealthStats {
308
308
  bestStreak: number;
309
309
  weeklyCompletions: number;
310
310
  }
311
+ type HealthMeasurementType = 'weight' | 'height' | 'body_fat' | 'bmi';
312
+ type HealthMeasurementSource = 'apple_health' | 'manual';
313
+ interface HealthMeasurement {
314
+ id: string;
315
+ userId: string;
316
+ type: HealthMeasurementType;
317
+ value: number;
318
+ unit: string;
319
+ date: string;
320
+ source: HealthMeasurementSource;
321
+ appleHealthUuid: string | null;
322
+ createdAt: string;
323
+ }
324
+ interface NewHealthMeasurement {
325
+ type: HealthMeasurementType;
326
+ value: number;
327
+ unit: string;
328
+ date: string;
329
+ source?: HealthMeasurementSource;
330
+ appleHealthUuid?: string | null;
331
+ }
332
+ interface HealthMeasurementFilters {
333
+ type?: HealthMeasurementType;
334
+ dateFrom?: string;
335
+ dateTo?: string;
336
+ source?: HealthMeasurementSource;
337
+ }
338
+ interface WeightStats {
339
+ current: number | null;
340
+ currentDate: string | null;
341
+ highest: number | null;
342
+ lowest: number | null;
343
+ average: number | null;
344
+ trend: 'up' | 'down' | 'stable' | null;
345
+ measurements: number;
346
+ }
311
347
  interface Setting {
312
348
  id: string;
313
349
  userId: string;
@@ -470,4 +506,4 @@ interface NoteFilters {
470
506
  search?: string;
471
507
  }
472
508
 
473
- export type { ParsedWeeklyPlan as $, NewHealthCompletion as A, BankConnectionStatus as B, ChatMessageRole as C, HealthHabitFilters as D, ExpenseCategory as E, FocusCategory as F, HealthCompletionFilters as G, HealthCategory as H, IncomeCategory as I, HealthStats as J, ExchangeRate as K, LieuDayType as L, DailyPriority as M, NewExpenseCategory as N, DailyPlan as O, NewDailyPlan as P, ParsedDailyPlan as Q, MealType as R, Setting as S, TransactionType as T, MealPlan as U, NewMealPlan as V, PrepSession as W, NewPrepSession as X, FocusArea as Y, WeeklyPlan as Z, NewWeeklyPlan as _, Expense as a, NoteType as a0, NoteFolder as a1, NewNoteFolder as a2, Note as a3, NewNote as a4, NoteFilters as a5, NewExpense as b, NewIncomeCategory as c, Income as d, NewIncome as e, NewFocusCategory as f, FocusSessionStatus as g, FocusSession as h, NewFocusSession as i, FocusSessionFilters as j, ChatConversation as k, NewChatConversation as l, ChatMessage as m, NewChatMessage as n, EFLink as o, NewEFLink as p, LieuDay as q, NewLieuDay as r, BankConnection as s, BankTransaction as t, NewHealthCategory as u, HealthFrequencyType as v, HealthFrequencyConfig as w, HealthHabit as x, NewHealthHabit as y, HealthCompletion as z };
509
+ export type { NewMealPlan as $, NewHealthCompletion as A, BankConnectionStatus as B, ChatMessageRole as C, HealthHabitFilters as D, ExpenseCategory as E, FocusCategory as F, HealthCompletionFilters as G, HealthCategory as H, IncomeCategory as I, HealthStats as J, HealthMeasurementType as K, LieuDayType as L, HealthMeasurementSource as M, NewExpenseCategory as N, HealthMeasurement as O, NewHealthMeasurement as P, HealthMeasurementFilters as Q, ExchangeRate as R, Setting as S, TransactionType as T, DailyPriority as U, DailyPlan as V, WeightStats as W, NewDailyPlan as X, ParsedDailyPlan as Y, MealType as Z, MealPlan as _, Expense as a, PrepSession as a0, NewPrepSession as a1, FocusArea as a2, WeeklyPlan as a3, NewWeeklyPlan as a4, ParsedWeeklyPlan as a5, NoteType as a6, NoteFolder as a7, NewNoteFolder as a8, Note as a9, NewNote as aa, NoteFilters as ab, NewExpense as b, NewIncomeCategory as c, Income as d, NewIncome as e, NewFocusCategory as f, FocusSessionStatus as g, FocusSession as h, NewFocusSession as i, FocusSessionFilters as j, ChatConversation as k, NewChatConversation as l, ChatMessage as m, NewChatMessage as n, EFLink as o, NewEFLink as p, LieuDay as q, NewLieuDay as r, BankConnection as s, BankTransaction as t, NewHealthCategory as u, HealthFrequencyType as v, HealthFrequencyConfig as w, HealthHabit as x, NewHealthHabit as y, HealthCompletion as z };
package/dist/index.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- export { s as BankConnection, B as BankConnectionStatus, t as BankTransaction, k as ChatConversation, m as ChatMessage, C as ChatMessageRole, O as DailyPlan, M as DailyPriority, o as EFLink, K as ExchangeRate, a as Expense, E as ExpenseCategory, Y as FocusArea, F as FocusCategory, h as FocusSession, j as FocusSessionFilters, g as FocusSessionStatus, H as HealthCategory, z as HealthCompletion, G as HealthCompletionFilters, w as HealthFrequencyConfig, v as HealthFrequencyType, x as HealthHabit, D as HealthHabitFilters, J as HealthStats, d as Income, I as IncomeCategory, q as LieuDay, L as LieuDayType, U as MealPlan, R as MealType, l as NewChatConversation, n as NewChatMessage, P as NewDailyPlan, p as NewEFLink, b as NewExpense, N as NewExpenseCategory, f as NewFocusCategory, i as NewFocusSession, u as NewHealthCategory, A as NewHealthCompletion, y as NewHealthHabit, e as NewIncome, c as NewIncomeCategory, r as NewLieuDay, V as NewMealPlan, a4 as NewNote, a2 as NewNoteFolder, X as NewPrepSession, _ as NewWeeklyPlan, a3 as Note, a5 as NoteFilters, a1 as NoteFolder, a0 as NoteType, Q as ParsedDailyPlan, $ as ParsedWeeklyPlan, W as PrepSession, S as Setting, T as TransactionType, Z as WeeklyPlan } from './database-koVAareN.mjs';
1
+ export { s as BankConnection, B as BankConnectionStatus, t as BankTransaction, k as ChatConversation, m as ChatMessage, C as ChatMessageRole, V as DailyPlan, U as DailyPriority, o as EFLink, R as ExchangeRate, a as Expense, E as ExpenseCategory, a2 as FocusArea, F as FocusCategory, h as FocusSession, j as FocusSessionFilters, g as FocusSessionStatus, H as HealthCategory, z as HealthCompletion, G as HealthCompletionFilters, w as HealthFrequencyConfig, v as HealthFrequencyType, x as HealthHabit, D as HealthHabitFilters, O as HealthMeasurement, Q as HealthMeasurementFilters, M as HealthMeasurementSource, K as HealthMeasurementType, J as HealthStats, d as Income, I as IncomeCategory, q as LieuDay, L as LieuDayType, _ as MealPlan, Z as MealType, l as NewChatConversation, n as NewChatMessage, X as NewDailyPlan, p as NewEFLink, b as NewExpense, N as NewExpenseCategory, f as NewFocusCategory, i as NewFocusSession, u as NewHealthCategory, A as NewHealthCompletion, y as NewHealthHabit, P as NewHealthMeasurement, e as NewIncome, c as NewIncomeCategory, r as NewLieuDay, $ as NewMealPlan, aa as NewNote, a8 as NewNoteFolder, a1 as NewPrepSession, a4 as NewWeeklyPlan, a9 as Note, ab as NoteFilters, a7 as NoteFolder, a6 as NoteType, Y as ParsedDailyPlan, a5 as ParsedWeeklyPlan, a0 as PrepSession, S as Setting, T as TransactionType, a3 as WeeklyPlan, W as WeightStats } from './database-DcvgXSOp.mjs';
2
2
  export { ApiKeyInfo, CloudAgent, CloudAgentConversation, CloudAgentMessage, CloudAgentMessageType, CloudAgentModel, CloudAgentPrompt, CloudAgentSource, CloudAgentStatus, CloudAgentTarget, IssueQueryOptions, LINEAR_PRIORITY_LABELS, LaunchAgentRequest, LinearIssue, LinearPriority, LinearProject, LinearState, LinearStateType, LinearUser, ListAgentsResponse, ModelsResponse, PaginatedIssues } from './types/index.mjs';
3
3
  export { API_URLS, CLOUD_AGENT_STATUSES, CLOUD_AGENT_STATUS_COLORS, CLOUD_AGENT_STATUS_EMOJI, CURRENCIES, CURRENCY_NAMES, CURRENCY_SYMBOLS, Currency, DAY_OPTIONS, DEFAULT_FOCUS_DURATIONS, FOCUS_STATUS, FREQUENCIES, FREQUENCY_LABELS, FREQUENCY_MULTIPLIERS, FREQUENCY_OPTIONS, FocusDuration, FocusStatus, Frequency, HEALTH_FREQUENCY_LABELS, HEALTH_FREQUENCY_TYPES, LINEAR_PRIORITIES, LINEAR_PRIORITY_COLORS, LinearPriorityValue, PRESET_COLORS, PRESET_ICONS, SETTING_KEYS, SettingKey } from './constants/index.mjs';
4
4
  export { WeeklyProgressItem, calculateFocusStats, calculateLieuBalance, calculateMonthlyExpenses, calculateMonthlyIncome, calculateMonthlySavings, calculateSavingsRate, calculateWeeklyProgress, formatCurrency, formatDate, formatDueDate, formatDuration, formatRelativeTime, formatTime, formatTotalTime, generateId, generateRandomColor, generateShortId, getFrequencyDescription, getRepoName, isNonEmptyString, isPositiveNumber, isValidCurrency, isValidEmail, isValidFrequency, isValidISODate, isValidUrl, parseFrequencyConfig, shouldDoOnDate, shouldDoToday, stringifyFrequencyConfig, toMonthlyAmount, toYearlyAmount, truncate } from './utils/index.mjs';
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export { s as BankConnection, B as BankConnectionStatus, t as BankTransaction, k as ChatConversation, m as ChatMessage, C as ChatMessageRole, O as DailyPlan, M as DailyPriority, o as EFLink, K as ExchangeRate, a as Expense, E as ExpenseCategory, Y as FocusArea, F as FocusCategory, h as FocusSession, j as FocusSessionFilters, g as FocusSessionStatus, H as HealthCategory, z as HealthCompletion, G as HealthCompletionFilters, w as HealthFrequencyConfig, v as HealthFrequencyType, x as HealthHabit, D as HealthHabitFilters, J as HealthStats, d as Income, I as IncomeCategory, q as LieuDay, L as LieuDayType, U as MealPlan, R as MealType, l as NewChatConversation, n as NewChatMessage, P as NewDailyPlan, p as NewEFLink, b as NewExpense, N as NewExpenseCategory, f as NewFocusCategory, i as NewFocusSession, u as NewHealthCategory, A as NewHealthCompletion, y as NewHealthHabit, e as NewIncome, c as NewIncomeCategory, r as NewLieuDay, V as NewMealPlan, a4 as NewNote, a2 as NewNoteFolder, X as NewPrepSession, _ as NewWeeklyPlan, a3 as Note, a5 as NoteFilters, a1 as NoteFolder, a0 as NoteType, Q as ParsedDailyPlan, $ as ParsedWeeklyPlan, W as PrepSession, S as Setting, T as TransactionType, Z as WeeklyPlan } from './database-koVAareN.js';
1
+ export { s as BankConnection, B as BankConnectionStatus, t as BankTransaction, k as ChatConversation, m as ChatMessage, C as ChatMessageRole, V as DailyPlan, U as DailyPriority, o as EFLink, R as ExchangeRate, a as Expense, E as ExpenseCategory, a2 as FocusArea, F as FocusCategory, h as FocusSession, j as FocusSessionFilters, g as FocusSessionStatus, H as HealthCategory, z as HealthCompletion, G as HealthCompletionFilters, w as HealthFrequencyConfig, v as HealthFrequencyType, x as HealthHabit, D as HealthHabitFilters, O as HealthMeasurement, Q as HealthMeasurementFilters, M as HealthMeasurementSource, K as HealthMeasurementType, J as HealthStats, d as Income, I as IncomeCategory, q as LieuDay, L as LieuDayType, _ as MealPlan, Z as MealType, l as NewChatConversation, n as NewChatMessage, X as NewDailyPlan, p as NewEFLink, b as NewExpense, N as NewExpenseCategory, f as NewFocusCategory, i as NewFocusSession, u as NewHealthCategory, A as NewHealthCompletion, y as NewHealthHabit, P as NewHealthMeasurement, e as NewIncome, c as NewIncomeCategory, r as NewLieuDay, $ as NewMealPlan, aa as NewNote, a8 as NewNoteFolder, a1 as NewPrepSession, a4 as NewWeeklyPlan, a9 as Note, ab as NoteFilters, a7 as NoteFolder, a6 as NoteType, Y as ParsedDailyPlan, a5 as ParsedWeeklyPlan, a0 as PrepSession, S as Setting, T as TransactionType, a3 as WeeklyPlan, W as WeightStats } from './database-DcvgXSOp.js';
2
2
  export { ApiKeyInfo, CloudAgent, CloudAgentConversation, CloudAgentMessage, CloudAgentMessageType, CloudAgentModel, CloudAgentPrompt, CloudAgentSource, CloudAgentStatus, CloudAgentTarget, IssueQueryOptions, LINEAR_PRIORITY_LABELS, LaunchAgentRequest, LinearIssue, LinearPriority, LinearProject, LinearState, LinearStateType, LinearUser, ListAgentsResponse, ModelsResponse, PaginatedIssues } from './types/index.js';
3
3
  export { API_URLS, CLOUD_AGENT_STATUSES, CLOUD_AGENT_STATUS_COLORS, CLOUD_AGENT_STATUS_EMOJI, CURRENCIES, CURRENCY_NAMES, CURRENCY_SYMBOLS, Currency, DAY_OPTIONS, DEFAULT_FOCUS_DURATIONS, FOCUS_STATUS, FREQUENCIES, FREQUENCY_LABELS, FREQUENCY_MULTIPLIERS, FREQUENCY_OPTIONS, FocusDuration, FocusStatus, Frequency, HEALTH_FREQUENCY_LABELS, HEALTH_FREQUENCY_TYPES, LINEAR_PRIORITIES, LINEAR_PRIORITY_COLORS, LinearPriorityValue, PRESET_COLORS, PRESET_ICONS, SETTING_KEYS, SettingKey } from './constants/index.js';
4
4
  export { WeeklyProgressItem, calculateFocusStats, calculateLieuBalance, calculateMonthlyExpenses, calculateMonthlyIncome, calculateMonthlySavings, calculateSavingsRate, calculateWeeklyProgress, formatCurrency, formatDate, formatDueDate, formatDuration, formatRelativeTime, formatTime, formatTotalTime, generateId, generateRandomColor, generateShortId, getFrequencyDescription, getRepoName, isNonEmptyString, isPositiveNumber, isValidCurrency, isValidEmail, isValidFrequency, isValidISODate, isValidUrl, parseFrequencyConfig, shouldDoOnDate, shouldDoToday, stringifyFrequencyConfig, toMonthlyAmount, toYearlyAmount, truncate } from './utils/index.js';
package/dist/index.js CHANGED
@@ -714,6 +714,16 @@ var queryKeys = {
714
714
  all: ["healthStats"],
715
715
  forDate: (date) => [...queryKeys.healthStats.all, date ?? "today"]
716
716
  },
717
+ // Health Measurements (Apple Health sync)
718
+ healthMeasurements: {
719
+ all: ["healthMeasurements"],
720
+ lists: () => [...queryKeys.healthMeasurements.all, "list"],
721
+ list: (filters) => [...queryKeys.healthMeasurements.lists(), filters],
722
+ weight: () => [...queryKeys.healthMeasurements.all, "weight"],
723
+ weightInRange: (dateFrom, dateTo) => [...queryKeys.healthMeasurements.all, "weight", dateFrom, dateTo],
724
+ latest: (type) => [...queryKeys.healthMeasurements.all, "latest", type],
725
+ detail: (id) => [...queryKeys.healthMeasurements.all, "detail", id]
726
+ },
717
727
  // -------------------------------------------------------------------------
718
728
  // Prompts
719
729
  // -------------------------------------------------------------------------