@siegesailor/terminal-sigma 1.4.1 → 1.6.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
@@ -10,7 +10,7 @@ Terminal-Sigma is a terminal-based application that gives game-style feedback on
10
10
 
11
11
  | Component | What It Does |
12
12
  | --------------------- | ------------------------------------------------------------------------------------------------------------- |
13
- | Character Progression | A pixel-art pet, shaped by your profile, dressed by your level, and woken up by what you log today |
13
+ | Character Progression | A pixel-art you, shaped by your profile, dressed by your level, and woken up by what you log today |
14
14
  | Everyday Quotes | An inspiring quote that refreshes on your schedule, filtered by category, author, or work |
15
15
  | Health | Your meals and workouts against daily targets worked out from your profile, with advice for the rest of today |
16
16
  | Logs | Every focus, meal, workout, and action you took, with the latest 4 in a Recent block under the menu |
@@ -50,7 +50,7 @@ Download the file for your system from the [latest release](https://github.com/S
50
50
  > xattr -dr com.apple.quarantine "/Applications/Terminal Sigma.app"
51
51
  > ```
52
52
 
53
- The desktop app opens the dashboard in its own window, sends a system notification when a focus or break ends, and uses your profile's name and the default timer options below.
53
+ The desktop app opens the dashboard in its own window, sends a system notification when a focus or break ends, and uses your profile's name and the default timer options below. It updates itself from **Software Update** in the menu.
54
54
 
55
55
  ## Usage
56
56
 
@@ -70,21 +70,25 @@ On the first run, it asks for your language and saves the answer in `progress.js
70
70
 
71
71
  ### Menu
72
72
 
73
- The menu drives everything. It sits in 2 boxes: the items on the left, and on the right what the focused item does, which turns into its options once you press Enter:
73
+ The menu drives everything. It sits in 2 boxes: the items on the left, grouped under headings that only label them, and on the right what the focused item does, which turns into its options once you press Enter:
74
74
 
75
- | Key | Item | Enter Opens |
76
- | --- | --------------- | ----------------------------------------------------------------------------------------- |
77
- | `1` | Everyday Quotes | A new quote, and the settings below |
78
- | `2` | Tomato Timer | Start a focus, or pause, resume, or stop the running one |
79
- | `3` | Health | Today's targets and advice, then log a meal or a workout |
80
- | `4` | Logs | Every log and action, newest first, with a filter per kind |
81
- | `5` | Profile | Your name, age, height, weight, gender, work style, and health goal, showing saved values |
82
- | `6` | Theme | The color tone of the dashboard and your pet, previewing each one as the cursor moves |
83
- | `7` | Language | English, Traditional Chinese, or Korean |
75
+ | Key | Group | Item | Enter Opens |
76
+ | --- | -------- | --------------- | --------------------------------------------------------------------------------------------------- |
77
+ | `1` | Actions | Tomato Timer | Start a focus, or pause, resume, or stop the running one |
78
+ | `2` | Health | Log a Meal | The meal form; while focused, today's targets and advice show on the right |
79
+ | `3` | Health | Log a Workout | The workout form, with the same targets and advice |
80
+ | `4` | Settings | Everyday Quotes | A new quote, and the settings below |
81
+ | `5` | Settings | Profile | Your name, age, height, weight, body fat, gender, work style, and health goal, showing saved values |
82
+ | `6` | Settings | Theme | The color tone of the dashboard and your character, previewing each one as the cursor moves |
83
+ | `7` | Settings | Language | English, Traditional Chinese, or Korean |
84
+ | `8` | System | Logs | Every log and action, newest first, with a filter per kind |
85
+ | `9` | System | Software Update | The version you run and the newest one, with an update when there is one |
86
+
87
+ The headings give way to Recent on a terminal shorter than 27 rows. Body fat is optional: press Enter to skip it.
84
88
 
85
89
  A meal asks for the food, its calories, and its protein; a workout asks for the activity, its minutes, and its intensity, one at a time. The food field suggests as you type, your past meals first and then 112 common foods matched in any of the 3 languages, and picking one fills in its calories and protein. The activity offers your 3 latest workouts to repeat in 1 step. A stopped focus earns nothing.
86
90
 
87
- Everything else you do is logged too, without experience: opening the app, starting, pausing, resuming, or stopping a tomato, finishing a break, leveling up, drawing a quote, and changing the language, the theme, the profile, or a quote setting.
91
+ Everything else you do is logged too, without experience: opening the app, starting, pausing, resuming, or stopping a tomato, finishing a break, leveling up, drawing a quote, changing the language, the theme, the profile, or a quote setting, and updating.
88
92
 
89
93
  ### Everyday Quotes
90
94
 
@@ -102,27 +106,38 @@ Each setting is saved as soon as you choose it:
102
106
 
103
107
  Without an API key, the settings filter the 28 bundled quotes, which cover every category in all 3 languages, and fall back to all of them when nothing matches. With `API_NINJAS_KEY`, they become the query to API Ninjas.
104
108
 
105
- ### Pet
109
+ ### Character
110
+
111
+ Your character is a pixel-art you, standing on its own oval shadow and animating at 10 frames a second. It wanders around its panel, turning side on to walk with both feet stepping the way it goes and its arms swinging, then faces you to look about, blink, and shake out its hands. It types at a desk, sips a coffee, eats, runs a lap, lifts, or stretches to match what you do, and always finishes back where it started before the next animation begins. 3 things shape it:
112
+
113
+ | Shaped By | What Changes |
114
+ | ------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
115
+ | Level | 1 piece of gear per level up to level 9: headphones, a scarf, a cap, a backpack, a smartwatch, a jacket, sunglasses in place of the cap, and a medal |
116
+ | Profile | The height follows yours; the build follows your body fat, or your weight for your height without it, from slim or athletic to heavy; gender sets the shoulders, hips, and hair, age greys the hair, and a muscle goal broadens the shoulders |
117
+ | Today's Logs | It dozes on its feet until you log something, and smiles and waves once you meet your protein and exercise targets or finish 4 focus sessions |
118
+
119
+ At the same weight, a low body fat draws a lean, broad-shouldered build, and a high one a wider waist. Your work style dresses it: a hoodie and jeans at a desk, a shirt and an apron when standing, a tee and cargo pants when active, and a tank top and shorts as an athlete.
120
+
121
+ ### Software Update
106
122
 
107
- Your character is a pixel-art pet in the spirit of Claude Code's mascot. It wanders around its panel and switches to typing at a laptop, sipping from a cup, eating, running, lifting, or stretching to match what you do. 3 things shape it:
123
+ **Software Update** shows the version you run and the newest one, and checks once on start so the menu can tell you when there is a newer one. Choosing the update installs it, and **Restart now** starts the new version in place:
108
124
 
109
- | Shaped By | What Changes |
110
- | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
111
- | Level | It grows at levels 4 and 7, and gains 1 piece of gear per level up to level 9: headphones, a scarf, a cap, an orb, an antenna, a cape, a crown, and sparkles |
112
- | Profile | Its size follows your height and its width your weight for that height; a bow, a tuft, or a sprout follows your gender |
113
- | Today's Logs | It naps until you log something, and beams once you meet your protein and exercise targets or finish 4 focus sessions; a tomato, an apple, and a dumbbell show what you logged |
125
+ | Running As | How It Updates |
126
+ | ---------- | -------------------------------------------------------------------------------------------------- |
127
+ | CLI | `npm install --global @siegesailor/terminal-sigma@<version>`, then the same command starts again |
128
+ | Desktop | Downloads this system's file from the release, swaps it in for the running app, and opens it again |
114
129
 
115
- Your health goal adds a sweatband to lose fat, a heart to maintain, bigger arms to build muscle, or sneakers for endurance.
130
+ The desktop app waits until the release has its file for your system, a few minutes after the CLI. On Linux it updates the AppImage, and on Windows it runs the installer silently.
116
131
 
117
132
  ### Health Targets
118
133
 
119
134
  The Health group works out 3 daily targets from your profile, in metric units, and falls back to 2,000 kcal, 50 g of protein, and 30 minutes of exercise until you fill it in:
120
135
 
121
- | Target | How It Is Worked Out |
122
- | -------- | ------------------------------------------------------------------------------------------------------------------------- |
123
- | Calories | The Mifflin-St Jeor resting rate, times 1.2 to 1.725 by work style, then 500 less to lose fat or 200 to 300 more to build |
124
- | Exercise | 30 minutes to stay healthy, 45 to lose fat or build muscle, and 60 to build endurance |
125
- | Protein | 1.0 to 2.0 g per kg of body weight by goal, plus up to 0.3 g for a physical job, never above 2.2 g |
136
+ | Target | How It Is Worked Out |
137
+ | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
138
+ | Calories | The resting rate, times 1.2 to 1.725 by work style, then 500 less to lose fat or 200 to 300 more to build; the resting rate is Katch-McArdle from your lean mass when you give your body fat, and Mifflin-St Jeor otherwise |
139
+ | Exercise | 30 minutes to stay healthy, 45 to lose fat or build muscle, and 60 to build endurance |
140
+ | Protein | 1.0 to 2.0 g per kg of body weight by goal, plus up to 0.3 g for a physical job, never above 2.2 g |
126
141
 
127
142
  The targets are general guidance for healthy adults, not medical advice.
128
143
 
@@ -132,7 +147,7 @@ Every view shows its keys at the bottom right:
132
147
 
133
148
  | Key | Action |
134
149
  | ------------------------- | ------------------------------------------------------------------------ |
135
- | `1` to `7` | Jump to a menu item |
150
+ | `1` to `9` | Jump to a menu item |
136
151
  | Arrows or `h` `j` `k` `l` | Move through the menu, a list, a suggestion, or the log filters |
137
152
  | Enter | Open the item, choose the option, or go to the next field |
138
153
  | Esc | Go back to the menu, or out of a quote setting, without logging anything |
@@ -164,6 +179,7 @@ Both are optional:
164
179
  "age": 30,
165
180
  "height": 175,
166
181
  "weight": 70,
182
+ "bodyFat": 18,
167
183
  "gender": "male",
168
184
  "workStyle": "desk",
169
185
  "goal": "buildMuscle"
@@ -208,8 +224,9 @@ Each setting takes 1 of a fixed set of values:
208
224
 
209
225
  | Field | Values |
210
226
  | -------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
211
- | `events.action` | `appOpened`, `breakOver`, `languageChanged`, `levelUp`, `profileSaved`, `quoteDrawn`, `quoteSettingsChanged`, `themeChanged`, `timerPaused`, `timerResumed`, `timerStarted`, or `timerStopped` |
227
+ | `events.action` | `appOpened`, `breakOver`, `languageChanged`, `levelUp`, `profileSaved`, `quoteDrawn`, `quoteSettingsChanged`, `themeChanged`, `timerPaused`, `timerResumed`, `timerStarted`, `timerStopped`, or `updateInstalled` |
212
228
  | `language` | `en`, `ko`, or `zh-TW` |
229
+ | `profile.bodyFat` | A whole percentage from `3` to `60`, or left out |
213
230
  | `profile.gender` | `female`, `male`, or `other` |
214
231
  | `profile.goal` | `buildMuscle`, `endurance`, `loseFat`, or `maintain` |
215
232
  | `profile.workStyle` | `active`, `athlete`, `desk`, or `standing` |
@@ -222,7 +239,7 @@ Each setting takes 1 of a fixed set of values:
222
239
 
223
240
  Every setting is optional, and files written by version 1 still load as they are.
224
241
 
225
- Every 100 XP is a level, and every level from level 2 to level 9 gives your pet 1 piece of gear. Experience is earned as follows:
242
+ Every 100 XP is a level, and every level from level 2 to level 9 gives your character 1 piece of gear. Experience is earned as follows:
226
243
 
227
244
  | Entry | Experience |
228
245
  | -------------- | --------------------------------------------------------------------- |
package/build/app.js CHANGED
@@ -11,13 +11,13 @@ import Footer from "./components/footer.js";
11
11
  import LogsView, { LogRow } from "./components/logs-view.js";
12
12
  import MultiChoice from "./components/multi-choice.js";
13
13
  import TodayPanel from "./components/today-panel.js";
14
- import { categoryOptionsOf, characterWidth, dietFieldsOf, intervalOptionsOf, layoutOf, menuEntriesOf, menuListWidth, menuOrder, petStateOf, profileFieldsOf, quoteOptionsOf, sectionsOf, workoutFieldsOf, } from "./content.js";
14
+ import { categoryOptionsOf, characterWidth, dietFieldsOf, intervalOptionsOf, layoutOf, menuEntriesOf, menuListWidth, menuOrder, moodOf, profileFieldsOf, quoteOptionsOf, sectionsOf, updateViewOf, workoutFieldsOf, } from "./content.js";
15
15
  import { adviceOf, targetsOf } from "./health.js";
16
16
  import { formatNumber, genders, healthGoals, intensities, languages, messagesOf, workoutActivities, workStyles, } from "./i18n.js";
17
17
  import { lookOf } from "./pixel-art.js";
18
18
  import { experienceOf, experiencePerMeal, levelOf, logsOf, saveProgress, todayOf, workoutExperience, } from "./progress.js";
19
19
  import { bundledQuotes, defaultQuoteSettings, fetchQuote, hasQuoteApi, localizedQuote, pickBundled, quoteCategories, quoteIntervals, } from "./quotes.js";
20
- import { paletteContext, themeNames, themes, uiThemeOf, } from "./theme.js";
20
+ import { paletteContext, spinnerFrames, themeNames, themes, uiThemeOf, } from "./theme.js";
21
21
  import { advanceTimer, formatClock, idleTimer, remainingOf, toggleTimer, } from "./timer.js";
22
22
  export const optionsSchema = zod.object({
23
23
  name: zod.string().min(1).optional(),
@@ -36,6 +36,7 @@ const languageOptions = languages.map((language) => ({
36
36
  label: messagesOf(language).languageName,
37
37
  value: language,
38
38
  }));
39
+ const errorText = (error) => error instanceof Error ? error.message : String(error);
39
40
  const pick = (options, value, fallback) => options.find((option) => option === value) ?? fallback;
40
41
  // Appends an event, so every action lands in the logs with the change it made.
41
42
  const withEvent = (progress, action, detail) => ({
@@ -68,7 +69,7 @@ function Titled({ title, children, }) {
68
69
  function Swatches({ palette }) {
69
70
  return (React.createElement(Text, null, Object.values(palette.metrics).map((color) => (React.createElement(Text, { key: color, color: color }, "\u2588\u2588")))));
70
71
  }
71
- export default function App({ options, file, initialProgress }) {
72
+ export default function App({ options, file, initialProgress, updater, }) {
72
73
  const { exit } = useApp();
73
74
  const { stdout } = useStdout();
74
75
  const size = useWindowSize();
@@ -79,7 +80,7 @@ export default function App({ options, file, initialProgress }) {
79
80
  const quoteSettings = progress.quotes ?? defaultQuoteSettings;
80
81
  const [quote, setQuote] = React.useState(() => pickBundled(quoteSettings, Date.now()));
81
82
  const [view, setView] = React.useState("menu");
82
- const [focusedMenu, setFocusedMenu] = React.useState("quotes");
83
+ const [focusedMenu, setFocusedMenu] = React.useState("timer");
83
84
  const [quoteEditor, setQuoteEditor] = React.useState();
84
85
  const [quoteOption, setQuoteOption] = React.useState("draw");
85
86
  const [flash, setFlash] = React.useState();
@@ -96,6 +97,28 @@ export default function App({ options, file, initialProgress }) {
96
97
  text: messages.savedTo(file.replace(homedir(), "~")),
97
98
  tone: "info",
98
99
  }));
100
+ const [release, setRelease] = React.useState({ phase: "checking" });
101
+ // The latest progress, for work that finishes long after it started.
102
+ const latest = React.useRef(progress);
103
+ React.useEffect(() => {
104
+ latest.current = progress;
105
+ }, [progress]);
106
+ const lookUp = React.useCallback(async () => updater.newest().then((newest) => ({ phase: "ready", newest }), (error) => ({
107
+ phase: "checkFailed",
108
+ error: errorText(error),
109
+ })), [updater]);
110
+ // Looks for an update once on start, so the menu can say there is one.
111
+ React.useEffect(() => {
112
+ let isCurrent = true;
113
+ void lookUp().then((next) => {
114
+ if (isCurrent) {
115
+ setRelease(next);
116
+ }
117
+ });
118
+ return () => {
119
+ isCurrent = false;
120
+ };
121
+ }, [lookUp]);
99
122
  const say = (text, tone = "info") => {
100
123
  setMessage({ text, tone });
101
124
  };
@@ -256,14 +279,6 @@ export default function App({ options, file, initialProgress }) {
256
279
  backToMenu();
257
280
  }
258
281
  };
259
- const chooseHealthAction = (action) => {
260
- if (action === "diet" || action === "workout" || action === "profile") {
261
- setView(action);
262
- }
263
- else {
264
- backToMenu();
265
- }
266
- };
267
282
  const submitMeal = (values) => {
268
283
  const food = values.food ?? "";
269
284
  backToMenu();
@@ -298,6 +313,7 @@ export default function App({ options, file, initialProgress }) {
298
313
  age: Number(values.age),
299
314
  height: Number(values.height),
300
315
  weight: Number(values.weight),
316
+ ...(values.bodyFat ? { bodyFat: Number(values.bodyFat) } : {}),
301
317
  gender: pick(genders, values.gender, "other"),
302
318
  workStyle: pick(workStyles, values.workStyle, "desk"),
303
319
  goal: pick(healthGoals, values.goal, "maintain"),
@@ -353,13 +369,50 @@ export default function App({ options, file, initialProgress }) {
353
369
  }
354
370
  }
355
371
  };
372
+ const checkForUpdate = () => {
373
+ if (release.phase === "installed") {
374
+ return;
375
+ }
376
+ setRelease({ phase: "checking" });
377
+ void lookUp().then(setRelease);
378
+ };
379
+ const chooseUpdateAction = (value) => {
380
+ const { newest } = release;
381
+ if (value === "install" && newest) {
382
+ setRelease({ phase: "installing", newest });
383
+ updater.install(newest).then(() => {
384
+ setRelease({ phase: "installed", newest });
385
+ const { current } = latest;
386
+ commit(withEvent(current, "updateInstalled", newest), messagesOf(current.language ?? "en").update.installed(newest), "success");
387
+ }, (error) => {
388
+ setRelease({
389
+ phase: "installFailed",
390
+ newest,
391
+ error: errorText(error),
392
+ });
393
+ });
394
+ }
395
+ else if (value === "restart") {
396
+ updater.restart();
397
+ exit();
398
+ }
399
+ else if (value === "check") {
400
+ checkForUpdate();
401
+ }
402
+ else {
403
+ backToMenu();
404
+ }
405
+ };
356
406
  const openMenu = (value) => {
357
- const item = pick(menuOrder, value, "quotes");
407
+ const item = pick(menuOrder, value, "timer");
358
408
  setFocusedMenu(item);
359
409
  setView(item);
360
410
  if (item === "theme") {
361
411
  setPreviewTheme(themeName);
362
412
  }
413
+ if (item === "update" && release.phase !== "installing") {
414
+ checkForUpdate();
415
+ }
363
416
  };
364
417
  const experience = experienceOf(progress);
365
418
  const level = levelOf(experience);
@@ -368,7 +421,7 @@ export default function App({ options, file, initialProgress }) {
368
421
  const columns = size.columns || 100;
369
422
  const rows = size.rows || 40;
370
423
  const layout = layoutOf(columns, rows);
371
- const pet = petStateOf(progress, now);
424
+ const mood = moodOf(progress, now);
372
425
  const activity = flash && flash.until > now
373
426
  ? flash.activity
374
427
  : view === "diet"
@@ -380,7 +433,7 @@ export default function App({ options, file, initialProgress }) {
380
433
  : "idle";
381
434
  let activityLabel = messages.activity[activity];
382
435
  if (activity === "idle") {
383
- activityLabel = messages.mood[pet.mood];
436
+ activityLabel = messages.mood[mood];
384
437
  }
385
438
  else if (activity === "levelUp") {
386
439
  activityLabel = `${messages.activity.levelUp} ${messages.level(level)}`;
@@ -398,6 +451,8 @@ export default function App({ options, file, initialProgress }) {
398
451
  theme: themeName,
399
452
  focus: durations.focus,
400
453
  rest: durations.break,
454
+ version: updater.current,
455
+ newest: release.newest,
401
456
  });
402
457
  const focusedEntry = entries.find((entry) => entry.key === focusedMenu) ?? entries[0];
403
458
  const isTyping = view === "diet" ||
@@ -451,7 +506,13 @@ export default function App({ options, file, initialProgress }) {
451
506
  },
452
507
  { label: messages.timer.stop, value: "stop" },
453
508
  ];
509
+ const updateView = updateViewOf(messages, release, updater);
454
510
  const panels = {
511
+ update: (React.createElement(Titled, { title: messages.menu.update },
512
+ React.createElement(Text, null, messages.update.current(updater.current)),
513
+ React.createElement(Text, { color: release.phase.endsWith("Failed") ? palette.error : palette.soft }, updateView.status),
514
+ React.createElement(Text, { dimColor: true }, messages.update.via[updater.source]),
515
+ React.createElement(Box, { marginTop: 1 }, release.phase === "installing" ? (React.createElement(Text, { color: palette.accent }, `${spinnerFrames[Math.floor(now / 1000) % spinnerFrames.length] ?? "·"} ${updateView.status}`)) : (React.createElement(Choice, { key: release.phase, options: updateView.options, onSelect: chooseUpdateAction }))))),
455
516
  quotes: (React.createElement(Titled, { title: messages.menu.quotes },
456
517
  React.createElement(Text, { dimColor: true, italic: true, wrap: "truncate-end" }, `“${shownQuote.quote}” — ${shownQuote.author}`),
457
518
  React.createElement(Box, { marginTop: 1 }, quoteEditor ? (React.createElement(Box, { key: quoteEditor }, quoteEditors[quoteEditor])) : (React.createElement(Choice, { key: "options", initialValue: quoteOption, options: quoteOptionsOf(messages, quoteSettings), onSelect: chooseQuoteOption }))))),
@@ -460,7 +521,6 @@ export default function App({ options, file, initialProgress }) {
460
521
  ...timerOptions,
461
522
  { label: messages.timer.back, value: "back" },
462
523
  ], onSelect: chooseTimerAction }))),
463
- health: (React.createElement(HealthPanel, { language: language, messages: messages, palette: palette, progress: progress, today: today, onSelect: chooseHealthAction })),
464
524
  logs: (React.createElement(LogsView, { height: Math.max(rows - 9, 6), language: language, logs: logs, messages: messages })),
465
525
  diet: (React.createElement(EntryForm, { fields: dietFieldsOf(messages, language, progress.meals), messages: messages, title: messages.form.dietTitle, onSubmit: submitMeal })),
466
526
  workout: (React.createElement(EntryForm, { fields: workoutFieldsOf(messages, progress.workouts), messages: messages, title: messages.form.workoutTitle, onSubmit: submitWorkout, onValues: (values) => {
@@ -482,6 +542,7 @@ export default function App({ options, file, initialProgress }) {
482
542
  React.createElement(Text, { bold: true, color: palette.soft }, focusedEntry.status),
483
543
  React.createElement(Box, { marginTop: 1 },
484
544
  React.createElement(Text, { dimColor: true }, focusedEntry.description)),
545
+ focusedEntry.key === "diet" || focusedEntry.key === "workout" ? (React.createElement(HealthSummary, { language: language, messages: messages, palette: palette, progress: progress, today: today })) : null,
485
546
  React.createElement(Box, { marginTop: 1 },
486
547
  React.createElement(Text, { dimColor: true, italic: true }, messages.describe.open)))) : null;
487
548
  const todayPanel = (React.createElement(TodayPanel, { isCompact: layout.isTodayCompact, sections: sectionsOf(language, palette, progress, now), title: messages.today.title, width: layout.todayWidth }));
@@ -496,16 +557,17 @@ export default function App({ options, file, initialProgress }) {
496
557
  React.createElement(Text, { dimColor: true }, new Date(now).toTimeString().slice(0, 8))),
497
558
  React.createElement(Text, { dimColor: true, italic: true, wrap: "truncate-end" }, `“${shownQuote.quote}” — ${shownQuote.author}`)),
498
559
  React.createElement(Box, { flexDirection: layout.stacked ? "column-reverse" : "row", flexGrow: 1 },
499
- layout.showCharacter ? (React.createElement(Character, { activity: activity, badges: pet.badges, label: activityLabel, level: messages.level(level), levelNumber: level, look: lookOf(progress.profile), mood: pet.mood, name: name, width: characterWidth })) : null,
560
+ layout.showCharacter ? (React.createElement(Character, { activity: activity, label: activityLabel, level: messages.level(level), levelNumber: level, look: lookOf(progress.profile), mood: mood, name: name, width: characterWidth })) : null,
500
561
  layout.showToday && layout.todayBeside ? todayPanel : null,
501
562
  React.createElement(Box, { flexDirection: "column", width: layout.panelWidth },
502
563
  React.createElement(Box, { flexDirection: layout.isMenuSplit ? "row" : "column", flexGrow: 1 },
503
564
  React.createElement(Box, { borderColor: view === "menu" ? palette.accent : palette.border, borderStyle: "round", display: view === "logs" ? "none" : "flex", flexShrink: 0, paddingX: 1, width: layout.isMenuSplit ? menuListWidth : undefined },
504
565
  React.createElement(Choice, { isNumbered: true, initialValue: focusedMenu, isActive: view === "menu", options: entries.map((entry) => ({
566
+ group: layout.isMenuGrouped ? entry.group : undefined,
505
567
  label: entry.label,
506
568
  value: entry.key,
507
569
  })), onFocus: (value) => {
508
- setFocusedMenu(pick(menuOrder, value, "quotes"));
570
+ setFocusedMenu(pick(menuOrder, value, "timer"));
509
571
  }, onSelect: openMenu })),
510
572
  React.createElement(Box, { borderColor: view === "menu" ? palette.border : palette.accent, borderStyle: "round", flexDirection: "column", flexGrow: 1, overflow: "hidden", paddingX: 1 }, view === "menu" ? preview : panels[view])),
511
573
  layout.showRecent && view !== "logs" ? recentBlock : null)),
@@ -514,27 +576,16 @@ export default function App({ options, file, initialProgress }) {
514
576
  ? message.text
515
577
  : `${messages.timer.pausedAt(phaseLabel, clock)} · ${message.text}`, status: isRunning ? messages.timer.left(phaseLabel, clock) : undefined, tone: message.tone })));
516
578
  }
517
- function HealthPanel({ language, messages, palette, progress, today, onSelect, }) {
579
+ // Today's targets and what is left of them, under the meal and workout items.
580
+ function HealthSummary({ language, messages, palette, progress, today, }) {
518
581
  const { profile } = progress;
519
582
  const targets = targetsOf(profile);
520
583
  const { health } = messages;
521
- const options = [
522
- ...(profile ? [] : [{ label: health.setUp, value: "profile" }]),
523
- { label: health.logMeal, value: "diet" },
524
- { label: health.logWorkout, value: "workout" },
525
- { label: health.back, value: "back" },
526
- ];
527
- return (React.createElement(Box, { flexDirection: "column" },
528
- React.createElement(Text, { bold: true, color: palette.accent }, profile
529
- ? health.title(messages.goal[profile.goal])
530
- : messages.menu.health),
584
+ return (React.createElement(Box, { flexDirection: "column", marginTop: 1 },
585
+ React.createElement(Text, { bold: true, color: palette.soft }, profile ? health.title(messages.goal[profile.goal]) : health.noProfile),
531
586
  React.createElement(Text, { dimColor: true }, health.targets(formatNumber(language, targets.calories), targets.protein, targets.workoutMinutes)),
532
- React.createElement(Box, { flexDirection: "column", marginY: 1 },
533
- profile ? null : React.createElement(Text, { dimColor: true }, health.noProfile),
534
- adviceOf(profile, today, language, messages).map((advice) => (React.createElement(Text, { key: advice.text },
535
- React.createElement(Text, { color: advice.isDone ? palette.success : palette.accent }, "⏺ "),
536
- React.createElement(Text, null, advice.text)))),
537
- profile ? (React.createElement(Text, { dimColor: true, italic: true }, health.tip[profile.goal])) : null),
538
- React.createElement(Choice, { options: options, onSelect: onSelect })));
587
+ adviceOf(profile, today, language, messages).map((advice) => (React.createElement(Text, { key: advice.text },
588
+ React.createElement(Text, { color: advice.isDone ? palette.success : palette.accent }, "⏺ "),
589
+ React.createElement(Text, null, advice.text))))));
539
590
  }
540
591
  //# sourceMappingURL=app.js.map
package/build/app.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"app.js","sourceRoot":"","sources":["../source/app.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app.js","sourceRoot":"","sources":["../source/app.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  #!/usr/bin/env node
2
+ import { spawnSync } from "node:child_process";
2
3
  import process from "node:process";
3
4
  import React from "react";
4
5
  import { render } from "ink";
@@ -6,6 +7,7 @@ import meow from "meow";
6
7
  import zod from "zod";
7
8
  import App, { optionsSchema } from "./app.js";
8
9
  import { loadProgress, progressFile } from "./progress.js";
10
+ import { npmUpdater } from "./update.js";
9
11
  const cli = meow(`
10
12
  Usage
11
13
  $ siegesailor-terminal-sigma [options]
@@ -38,8 +40,20 @@ catch (error) {
38
40
  console.error(error instanceof Error ? error.message : error);
39
41
  process.exit(1);
40
42
  }
41
- render(React.createElement(App, { file: file, initialProgress: initialProgress, options: options.data }), {
43
+ let isRestarting = false;
44
+ const updater = npmUpdater(() => {
45
+ isRestarting = true;
46
+ });
47
+ const instance = render(React.createElement(App, { file: file, initialProgress: initialProgress, options: options.data, updater: updater }), {
42
48
  alternateScreen: true,
43
49
  incrementalRendering: true,
44
50
  });
51
+ await instance.waitUntilExit();
52
+ // After an update, the same command starts the version just installed.
53
+ if (isRestarting) {
54
+ const { status } = spawnSync(process.execPath, process.argv.slice(1), {
55
+ stdio: "inherit",
56
+ });
57
+ process.exit(status ?? 0);
58
+ }
45
59
  //# sourceMappingURL=command-line-interface.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"command-line-interface.js","sourceRoot":"","sources":["../source/command-line-interface.tsx"],"names":[],"mappings":";AACA,OAAO,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,GAAG,EAAE,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE3D,MAAM,GAAG,GAAG,IAAI,CACf;;;;;;;;CAQA,EACA;IACC,UAAU,EAAE,MAAM,CAAC,IAAI;IACvB,iBAAiB,EAAE,KAAK;IACxB,KAAK,EAAE;QACN,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACxB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACzB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;KACzB;CACD,CACD,CAAC;AAEF,MAAM,OAAO,GAAG,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAEnD,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;IACtB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IAChD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjB,CAAC;AAED,4EAA4E;AAC5E,MAAM,IAAI,GAAG,YAAY,EAAE,CAAC;AAC5B,IAAI,eAAe,CAAC;AAEpB,IAAI,CAAC;IACJ,eAAe,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;AACtC,CAAC;AAAC,OAAO,KAAK,EAAE,CAAC;IAChB,OAAO,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAC9D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjB,CAAC;AAED,MAAM,CACL,oBAAC,GAAG,IAAC,IAAI,EAAE,IAAI,EAAE,eAAe,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,GAAI,EAC5E;IACC,eAAe,EAAE,IAAI;IACrB,oBAAoB,EAAE,IAAI;CAC1B,CACD,CAAC"}
1
+ {"version":3,"file":"command-line-interface.js","sourceRoot":"","sources":["../source/command-line-interface.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,GAAG,EAAE,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,GAAG,GAAG,IAAI,CACf;;;;;;;;CAQA,EACA;IACC,UAAU,EAAE,MAAM,CAAC,IAAI;IACvB,iBAAiB,EAAE,KAAK;IACxB,KAAK,EAAE;QACN,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACxB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACzB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;KACzB;CACD,CACD,CAAC;AAEF,MAAM,OAAO,GAAG,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAEnD,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;IACtB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IAChD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjB,CAAC;AAED,4EAA4E;AAC5E,MAAM,IAAI,GAAG,YAAY,EAAE,CAAC;AAC5B,IAAI,eAAe,CAAC;AAEpB,IAAI,CAAC;IACJ,eAAe,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;AACtC,CAAC;AAAC,OAAO,KAAK,EAAE,CAAC;IAChB,OAAO,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAC9D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjB,CAAC;AAED,IAAI,YAAY,GAAG,KAAK,CAAC;AACzB,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;IAC/B,YAAY,GAAG,IAAI,CAAC;AACrB,CAAC,CAAC,CAAC;AAEH,MAAM,QAAQ,GAAG,MAAM,CACtB,oBAAC,GAAG,IACH,IAAI,EAAE,IAAI,EACV,eAAe,EAAE,eAAe,EAChC,OAAO,EAAE,OAAO,CAAC,IAAI,EACrB,OAAO,EAAE,OAAO,GACf,EACF;IACC,eAAe,EAAE,IAAI;IACrB,oBAAoB,EAAE,IAAI;CAC1B,CACD,CAAC;AAEF,MAAM,QAAQ,CAAC,aAAa,EAAE,CAAC;AAE/B,uEAAuE;AACvE,IAAI,YAAY,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;QACrE,KAAK,EAAE,SAAS;KAChB,CAAC,CAAC;IACH,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;AAC3B,CAAC"}