import packageInfo from '../../package.json'; /** * Release notes shown in the "What's new" dialog. This is the single source of * truth for the changelog: add a new entry at the top of `changelog` whenever * the version in package.json is bumped, and the dialog will surface it once per * user on their next login (see $lib/whats-new and WhatsNewDialog.svelte). */ export type ChangelogEntry = { version: string; /** ISO date (YYYY-MM-DD) the version shipped. */ date: string; highlights: string[]; }; /** The running app version, read straight from package.json at build time. */ export const APP_VERSION: string = packageInfo.version; export const changelog: ChangelogEntry[] = [ { version: '0.1.20', date: '2026-06-13', highlights: [ 'App - Improvements', 'App - Bug fixes' ] }, { version: '0.1.18', date: '2026-06-12', highlights: [ 'App - Improvements', 'App - Bug fixes' ] }, { version: '0.1.17', date: '2026-06-12', highlights: [ 'App - Improvements', 'App - Mix Calculator bug fixes' ] }, { version: '0.1.14', date: '2026-06-11', highlights: [ 'Web App: Improved mix calculator', 'Web App: Improved design' ] }, { version: '0.1.12', date: '2026-06-10', highlights: [ 'Mix Calculator: Changed from selecting Product to Mix.', 'Web app design improved', 'Throughput tab ready for testing', 'Costing Editor tab ready for testing' ] } ]; /** The changelog entry matching a specific version, if one exists. */ export function changelogFor(version: string): ChangelogEntry | undefined { return changelog.find((entry) => entry.version === version); } /** The entry for the version the app is currently running, if documented. */ export const currentChangelog: ChangelogEntry | undefined = changelogFor(APP_VERSION);