@siegesailor/terminal-sigma 1.1.0 → 1.3.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
@@ -6,17 +6,17 @@
6
6
  [![main: Release](https://github.com/SiegeSailor/Terminal-Sigma/actions/workflows/main-release.yml/badge.svg)](https://github.com/SiegeSailor/Terminal-Sigma/actions/workflows/main-release.yml)
7
7
  [![release: Desktop](https://github.com/SiegeSailor/Terminal-Sigma/actions/workflows/release-desktop.yml/badge.svg)](https://github.com/SiegeSailor/Terminal-Sigma/actions/workflows/release-desktop.yml)
8
8
 
9
- Terminal-Sigma is a terminal-based application that gives game-style feedback on your self-development journey. Though it is a CLI, it is meant to stay open: it fills the terminal, updates in real time, and is operated through menus rather than commands. It speaks English and Traditional Chinese, and it features 5 main components:
9
+ Terminal-Sigma is a terminal-based application that gives game-style feedback on your self-development journey. Though it is a CLI, it is meant to stay open: it fills the terminal, updates in real time, and is operated through menus rather than commands. It speaks English, Traditional Chinese, and Korean, and it features 5 main components:
10
10
 
11
11
  | Component | What It Does |
12
12
  | --------------------- | ------------------------------------------------------------------------------------------------------------- |
13
- | Character Progression | A pixel-art character that levels up with you, unlocks gear, and acts out what you are doing |
14
- | Diet Tracker | Logs each meal step by step, with its calories and protein, against a daily goal of 3 meals |
13
+ | Character Progression | A pixel-art you, shaped by your profile and dressed by your level, who walks around and acts out what you do |
15
14
  | Everyday Quotes | An inspiring quote that refreshes every 30 minutes, on restart, or on demand |
15
+ | Health | Your meals and workouts against daily targets worked out from your profile, with advice for the rest of today |
16
+ | Logs | Every focus, meal, and workout you logged, with the latest 4 in a Recent block next to the menu |
16
17
  | Tomato Timer | A Pomodoro timer: 25 minutes of focus, then a 5-minute break, against a daily goal of 4 focus sessions |
17
- | Workout Tracker | Logs each workout step by step, with its activity, minutes, and intensity, against a daily goal of 30 minutes |
18
18
 
19
- Underneath, your journey is written to the local file `~/.terminal-sigma/progress.json`. There is no plan to support logging at this point, and we chose JSON as a readable format, so that you can port it easily.
19
+ Underneath, your journey and your settings are written to the local file `~/.terminal-sigma/progress.json`. There is no plan to support logging at this point, and we chose JSON as a readable format, so that you can port it easily.
20
20
 
21
21
  ## Installation
22
22
 
@@ -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 the default 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.
54
54
 
55
55
  ## Usage
56
56
 
@@ -62,26 +62,48 @@ siegesailor-terminal-sigma --name "Ken"
62
62
 
63
63
  On the first run, it asks for your language and saves the answer in `progress.json`; change it at any time from **Language** in the menu. Every option has a default:
64
64
 
65
- | Option | Default | Description |
66
- | --------------- | ------------ | ---------------------------------- |
67
- | `--break <min>` | `5` | Minutes of each Tomato Timer break |
68
- | `--focus <min>` | `25` | Minutes of each Tomato Timer focus |
69
- | `--name <name>` | `Rook Sigma` | The name of your character |
65
+ | Option | Default | Description |
66
+ | --------------- | ------------------------------------ | ---------------------------------- |
67
+ | `--break <min>` | `5` | Minutes of each Tomato Timer break |
68
+ | `--focus <min>` | `25` | Minutes of each Tomato Timer focus |
69
+ | `--name <name>` | Your profile's name, or `Rook Sigma` | The name of your character |
70
70
 
71
71
  ### Menu
72
72
 
73
- The menu at the bottom drives everything, and Enter opens an item:
73
+ The menu drives everything, and Enter opens an item:
74
74
 
75
- | Item | Enter Does |
76
- | --------------- | -------------------------------------------------------------------------- |
77
- | Diet Tracker | Asks for the food, its calories, and its protein, one at a time |
78
- | Everyday Quotes | Draws a new quote |
79
- | Language | Switches between English and Traditional Chinese |
80
- | Logs | Lists every focus, meal, and workout, newest first, with a filter per kind |
81
- | Tomato Timer | Starts a focus, or pauses, resumes, or stops the running one |
82
- | Workout Tracker | Asks for the activity, its minutes, and its intensity, one at a time |
75
+ | Item | Enter Does |
76
+ | --------------- | -------------------------------------------------------------------------------------------------- |
77
+ | Everyday Quotes | Draws a new quote |
78
+ | Health | Shows today's targets and advice, then logs a meal or a workout |
79
+ | Language | Switches between English, Traditional Chinese, and Korean |
80
+ | Logs | Lists every focus, meal, and workout, newest first, with a filter per kind |
81
+ | Profile | Asks for your name, age, height, weight, gender, work style, and health goal, showing saved values |
82
+ | Theme | Picks the color tone of the dashboard and your character, previewing each one as the cursor moves |
83
+ | Tomato Timer | Starts a focus, or pauses, resumes, or stops the running one |
83
84
 
84
- A stopped focus earns nothing. While you log a meal or a workout, the character eats, runs, lifts, or stretches to match, and it celebrates when you level up.
85
+ 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. A stopped focus earns nothing. While you log, the character eats, runs, lifts, or stretches to match, and it celebrates when you level up.
86
+
87
+ ### Character
88
+
89
+ Your character is a pixel-art you that walks around its panel, pauses to look about, and switches to typing, eating, sipping coffee, running, lifting, or stretching to match what you do. 2 things shape it:
90
+
91
+ | Shaped By | What Changes |
92
+ | --------- | ---------------------------------------------------------------------------------------------------------------------------------- |
93
+ | Level | 1 piece of equipment per level up to level 9: headphones, a smartwatch, a hoodie, a jacket, a cap, a crown, a backpack, and a cape |
94
+ | Profile | The height follows yours, the build follows your weight for that height, and the hair and silhouette follow your gender |
95
+
96
+ ### Health Targets
97
+
98
+ 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:
99
+
100
+ | Target | How It Is Worked Out |
101
+ | -------- | ------------------------------------------------------------------------------------------------------------------------- |
102
+ | 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 |
103
+ | Exercise | 30 minutes to stay healthy, 45 to lose fat or build muscle, and 60 to build endurance |
104
+ | 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 |
105
+
106
+ The targets are general guidance for healthy adults, not medical advice.
85
107
 
86
108
  ### Keys
87
109
 
@@ -89,7 +111,7 @@ Every view shows its keys at the bottom right:
89
111
 
90
112
  | Key | Action |
91
113
  | ------------------------- | --------------------------------------------------------- |
92
- | `1` to `6` | Jump to a menu item |
114
+ | `1` to `7` | Jump to a menu item |
93
115
  | Arrows or `h` `j` `k` `l` | Move through the menu, a list, or the log filters |
94
116
  | Enter | Open the item, choose the option, or go to the next field |
95
117
  | Esc | Go back to the menu without logging anything |
@@ -108,11 +130,21 @@ Both are optional:
108
130
 
109
131
  ## Progress File
110
132
 
111
- `progress.json` holds your language and what you logged. Your experience, level, and daily progress are worked out from it every time, so editing the file by hand can never put them out of sync:
133
+ `progress.json` holds your settings and what you logged. Your experience, level, and daily progress are worked out from it every time, so editing the file by hand can never put them out of sync:
112
134
 
113
135
  ```json
114
136
  {
115
137
  "language": "en",
138
+ "theme": "ember",
139
+ "profile": {
140
+ "name": "Ken",
141
+ "age": 30,
142
+ "height": 175,
143
+ "weight": 70,
144
+ "gender": "male",
145
+ "workStyle": "desk",
146
+ "goal": "buildMuscle"
147
+ },
116
148
  "focus": [{ "at": "2026-10-03T09:00:00.000Z", "minutes": 25 }],
117
149
  "meals": [
118
150
  {
@@ -133,7 +165,19 @@ Both are optional:
133
165
  }
134
166
  ```
135
167
 
136
- `language` is `en` or `zh-TW`. A workout's `activity` is one of `cycling`, `other`, `running`, `strength`, `swimming`, `walking`, or `yoga`, and its `intensity` is `light`, `moderate`, or `vigorous`. Files written by version 1 still load as they are.
168
+ Each setting takes 1 of a fixed set of values:
169
+
170
+ | Field | Values |
171
+ | -------------------- | --------------------------------------------------------------------------- |
172
+ | `language` | `en`, `ko`, or `zh-TW` |
173
+ | `profile.gender` | `female`, `male`, or `other` |
174
+ | `profile.goal` | `buildMuscle`, `endurance`, `loseFat`, or `maintain` |
175
+ | `profile.workStyle` | `active`, `athlete`, `desk`, or `standing` |
176
+ | `theme` | `dusk`, `ember`, `frost`, `mono`, or `moss` |
177
+ | `workouts.activity` | `cycling`, `other`, `running`, `strength`, `swimming`, `walking`, or `yoga` |
178
+ | `workouts.intensity` | `light`, `moderate`, or `vigorous` |
179
+
180
+ Every setting is optional, and files written by version 1 still load as they are.
137
181
 
138
182
  Every 100 XP is a level, and every level from level 2 to level 9 upgrades 1 piece of your character's gear. Experience is earned as follows:
139
183
 
package/build/app.js CHANGED
@@ -1,26 +1,30 @@
1
1
  import { homedir } from "node:os";
2
2
  import zod from "zod";
3
3
  import React from "react";
4
- import { Select, ThemeProvider } from "@inkjs/ui";
4
+ import { ThemeProvider } from "@inkjs/ui";
5
5
  import { Box, Text, useApp, useInput, useStdout, useWindowSize } from "ink";
6
6
  import Character from "./components/character.js";
7
+ import Choice from "./components/choice.js";
7
8
  import EntryForm from "./components/entry-form.js";
8
9
  import Footer from "./components/footer.js";
9
- import LogsView from "./components/logs-view.js";
10
+ import LogsView, { LogRow } from "./components/logs-view.js";
10
11
  import MenuGrid from "./components/menu-grid.js";
11
12
  import TodayPanel from "./components/today-panel.js";
12
- import { characterWidth, dietFieldsOf, layoutOf, menuItemsOf, menuOrder, metricsOf, workoutFieldsOf, } from "./content.js";
13
- import { intensities, languages, messagesOf, workoutActivities, } from "./i18n.js";
13
+ import { characterWidth, dietFieldsOf, layoutOf, menuItemsOf, menuOrder, profileFieldsOf, sectionsOf, workoutFieldsOf, } from "./content.js";
14
+ import { adviceOf, targetsOf } from "./health.js";
15
+ import { formatNumber, genders, healthGoals, intensities, languages, messagesOf, workoutActivities, workStyles, } from "./i18n.js";
16
+ import { bodyOf } from "./pixel-art.js";
14
17
  import { experienceOf, experiencePerMeal, levelOf, logsOf, saveProgress, todayOf, workoutExperience, } from "./progress.js";
15
18
  import { fetchQuote, hasQuoteApi, localizedQuote, quoteRefreshMinutes, randomBundledQuote, } from "./quotes.js";
16
- import { colors, uiTheme } from "./theme.js";
19
+ import { paletteContext, themeNames, themes, uiThemeOf, } from "./theme.js";
17
20
  import { advanceTimer, formatClock, idleTimer, remainingOf, toggleTimer, } from "./timer.js";
18
21
  export const optionsSchema = zod.object({
19
- name: zod.string().min(1).default("Rook Sigma"),
22
+ name: zod.string().min(1).optional(),
20
23
  focus: zod.number().int().positive().default(25),
21
24
  break: zod.number().int().positive().default(5),
22
25
  });
23
26
  const flashMilliseconds = 6000;
27
+ const recentCount = 4;
24
28
  const workoutAnimation = (activity) => {
25
29
  if (activity === "strength") {
26
30
  return "lift";
@@ -31,11 +35,14 @@ const languageOptions = languages.map((language) => ({
31
35
  label: messagesOf(language).languageName,
32
36
  value: language,
33
37
  }));
34
- const asLanguage = (value) => value === "zh-TW" ? "zh-TW" : "en";
38
+ const pick = (options, value, fallback) => options.find((option) => option === value) ?? fallback;
35
39
  function Titled({ title, children, }) {
36
- return (React.createElement(Box, { flexDirection: "column" },
37
- React.createElement(Text, { bold: true, color: colors.accent }, title),
38
- children));
40
+ return (React.createElement(paletteContext.Consumer, null, (palette) => (React.createElement(Box, { flexDirection: "column" },
41
+ React.createElement(Text, { bold: true, color: palette.accent }, title),
42
+ children))));
43
+ }
44
+ function Swatches({ palette }) {
45
+ return (React.createElement(Text, null, Object.values(palette.metrics).map((color) => (React.createElement(Text, { key: color, color: color }, "\u2588\u2588")))));
39
46
  }
40
47
  export default function App({ options, file, initialProgress }) {
41
48
  const { exit } = useApp();
@@ -51,6 +58,12 @@ export default function App({ options, file, initialProgress }) {
51
58
  const [draftActivity, setDraftActivity] = React.useState();
52
59
  const language = progress.language ?? "en";
53
60
  const messages = messagesOf(language);
61
+ const themeName = progress.theme ?? "ember";
62
+ // While the theme picker is open, the focused theme previews live.
63
+ const [previewTheme, setPreviewTheme] = React.useState();
64
+ const palette = themes[previewTheme ?? themeName];
65
+ const uiTheme = React.useMemo(() => uiThemeOf(palette), [palette]);
66
+ const name = options.name ?? progress.profile?.name ?? "Rook Sigma";
54
67
  const [message, setMessage] = React.useState(() => ({
55
68
  text: messages.savedTo(file.replace(homedir(), "~")),
56
69
  tone: "info",
@@ -60,28 +73,38 @@ export default function App({ options, file, initialProgress }) {
60
73
  };
61
74
  // Saves first and only then shows the change, so the screen never claims
62
75
  // something the file does not hold.
63
- const record = React.useCallback((update, text, activity) => {
64
- const next = update(progress);
65
- const { form, notSaved } = messagesOf(next.language ?? "en");
76
+ const save = React.useCallback((next) => {
66
77
  try {
67
78
  saveProgress(file, next);
79
+ return true;
68
80
  }
69
81
  catch (error) {
70
- setMessage({ text: notSaved(String(error)), tone: "error" });
82
+ setMessage({
83
+ text: messagesOf(next.language ?? "en").notSaved(String(error)),
84
+ tone: "error",
85
+ });
86
+ return false;
87
+ }
88
+ }, [file]);
89
+ const record = React.useCallback((update, text, activity) => {
90
+ const next = update(progress);
91
+ if (!save(next)) {
71
92
  return;
72
93
  }
73
94
  const after = levelOf(experienceOf(next));
74
95
  const leveledUp = after > levelOf(experienceOf(progress));
75
96
  setProgress(next);
76
97
  setMessage({
77
- text: leveledUp ? `${text} ${form.levelUp(after)}` : text,
98
+ text: leveledUp
99
+ ? `${text} ${messagesOf(next.language ?? "en").form.levelUp(after)}`
100
+ : text,
78
101
  tone: "success",
79
102
  });
80
103
  setFlash({
81
104
  activity: leveledUp ? "levelUp" : activity,
82
105
  until: Date.now() + flashMilliseconds,
83
106
  });
84
- }, [file, progress]);
107
+ }, [progress, save]);
85
108
  React.useEffect(() => {
86
109
  const interval = setInterval(() => {
87
110
  setNow(Date.now());
@@ -133,6 +156,7 @@ export default function App({ options, file, initialProgress }) {
133
156
  const backToMenu = (text) => {
134
157
  setView("menu");
135
158
  setDraftActivity(undefined);
159
+ setPreviewTheme(undefined);
136
160
  if (text) {
137
161
  say(text);
138
162
  }
@@ -142,31 +166,28 @@ export default function App({ options, file, initialProgress }) {
142
166
  exit();
143
167
  }
144
168
  else if (view !== "menu" && key.escape) {
145
- const isForm = view === "diet" || view === "workout";
169
+ const isForm = ["diet", "workout", "profile"].includes(view);
146
170
  backToMenu(isForm ? messages.form.cancelled : undefined);
147
171
  }
148
172
  }, { isActive: progress.language !== undefined });
149
- const chooseLanguage = (next) => {
150
- const updated = { ...progress, language: next };
151
- try {
152
- saveProgress(file, updated);
153
- }
154
- catch (error) {
155
- say(messagesOf(next).notSaved(String(error)), "error");
156
- return;
173
+ const saveSetting = (next, text) => {
174
+ if (save(next)) {
175
+ setProgress(next);
176
+ backToMenu(text);
157
177
  }
158
- setProgress(updated);
159
- backToMenu(messagesOf(next).languageChanged);
160
178
  };
179
+ const chooseLanguage = (value) => {
180
+ const next = pick(languages, value, "en");
181
+ saveSetting({ ...progress, language: next }, messagesOf(next).languageChanged);
182
+ };
183
+ const providers = (children) => (React.createElement(paletteContext.Provider, { value: palette },
184
+ React.createElement(ThemeProvider, { theme: uiTheme }, children)));
161
185
  if (progress.language === undefined) {
162
- return (React.createElement(ThemeProvider, { theme: uiTheme },
163
- React.createElement(Box, { borderColor: colors.accent, borderStyle: "round", flexDirection: "column", paddingX: 2, paddingY: 1 },
164
- React.createElement(Titled, { title: "\u273B Terminal Sigma" },
165
- React.createElement(Text, { dimColor: true }, messages.chooseLanguage),
166
- React.createElement(Box, { marginTop: 1 },
167
- React.createElement(Select, { options: languageOptions, onChange: (value) => {
168
- chooseLanguage(asLanguage(value));
169
- } }))))));
186
+ return providers(React.createElement(Box, { borderColor: palette.accent, borderStyle: "round", flexDirection: "column", paddingX: 2, paddingY: 1 },
187
+ React.createElement(Titled, { title: "\u273B Terminal Sigma" },
188
+ React.createElement(Text, { dimColor: true }, messages.chooseLanguage),
189
+ React.createElement(Box, { marginTop: 1 },
190
+ React.createElement(Choice, { options: languageOptions, onSelect: chooseLanguage })))));
170
191
  }
171
192
  const isRunning = timer.endsAt !== undefined;
172
193
  const isIdle = !isRunning &&
@@ -201,6 +222,14 @@ export default function App({ options, file, initialProgress }) {
201
222
  backToMenu();
202
223
  }
203
224
  };
225
+ const chooseHealthAction = (action) => {
226
+ if (action === "diet" || action === "workout" || action === "profile") {
227
+ setView(action);
228
+ }
229
+ else {
230
+ backToMenu();
231
+ }
232
+ };
204
233
  const submitMeal = (values) => {
205
234
  const food = values.food ?? "";
206
235
  backToMenu();
@@ -220,14 +249,31 @@ export default function App({ options, file, initialProgress }) {
220
249
  const submitWorkout = (values) => {
221
250
  const workout = {
222
251
  at: new Date().toISOString(),
223
- activity: workoutActivities.find((option) => option === values.activity) ??
224
- "other",
252
+ activity: pick(workoutActivities, values.activity, "other"),
225
253
  minutes: Number(values.minutes),
226
- intensity: intensities.find((option) => option === values.intensity) ?? "moderate",
254
+ intensity: pick(intensities, values.intensity, "moderate"),
227
255
  };
228
256
  backToMenu();
229
257
  record((current) => ({ ...current, workouts: [...current.workouts, workout] }), messages.form.workoutLogged(messages.workoutActivity[workout.activity], workout.minutes, workoutExperience(workout)), workoutAnimation(workout.activity));
230
258
  };
259
+ const submitProfile = (values) => {
260
+ saveSetting({
261
+ ...progress,
262
+ profile: {
263
+ name: values.name ?? name,
264
+ age: Number(values.age),
265
+ height: Number(values.height),
266
+ weight: Number(values.weight),
267
+ gender: pick(genders, values.gender, "other"),
268
+ workStyle: pick(workStyles, values.workStyle, "desk"),
269
+ goal: pick(healthGoals, values.goal, "maintain"),
270
+ },
271
+ }, messages.form.profileSaved);
272
+ };
273
+ const chooseTheme = (value) => {
274
+ const next = pick(themeNames, value, "ember");
275
+ saveSetting({ ...progress, theme: next }, messages.themes.changed(messages.themes.names[next]));
276
+ };
231
277
  const experience = experienceOf(progress);
232
278
  const level = levelOf(experience);
233
279
  const today = todayOf(progress, now);
@@ -253,56 +299,96 @@ export default function App({ options, file, initialProgress }) {
253
299
  logs: messages.hints.logs,
254
300
  diet: messages.hints.form,
255
301
  workout: messages.hints.form,
302
+ profile: messages.hints.form,
256
303
  timer: messages.hints.select,
304
+ health: messages.hints.select,
305
+ theme: messages.hints.select,
257
306
  language: messages.hints.select,
258
307
  };
259
308
  const panels = {
260
309
  menu: (React.createElement(MenuGrid, { columns: layout.menuColumns, isActive: view === "menu", items: menuItemsOf(messages, language, {
261
310
  timerSignal,
262
- meals: today.meals,
263
- workoutMinutes: today.workoutMinutes,
311
+ progress,
312
+ now,
264
313
  logs: logs.length,
314
+ theme: themeName,
265
315
  focus: durations.focus,
266
316
  rest: durations.break,
267
317
  }), onSelect: selectMenu })),
268
318
  timer: (React.createElement(Titled, { title: messages.menu.timer },
269
- React.createElement(Select, { options: [
319
+ React.createElement(Choice, { options: [
270
320
  {
271
321
  label: isRunning ? messages.timer.pause : messages.timer.resume,
272
322
  value: "toggle",
273
323
  },
274
324
  { label: messages.timer.stop, value: "stop" },
275
325
  { label: messages.timer.back, value: "back" },
276
- ], onChange: chooseTimerAction }))),
326
+ ], onSelect: chooseTimerAction }))),
327
+ health: (React.createElement(HealthPanel, { language: language, messages: messages, palette: palette, progress: progress, today: today, onSelect: chooseHealthAction })),
277
328
  diet: (React.createElement(EntryForm, { fields: dietFieldsOf(messages), messages: messages, title: messages.form.dietTitle, onSubmit: submitMeal })),
278
329
  workout: (React.createElement(EntryForm, { fields: workoutFieldsOf(messages), messages: messages, title: messages.form.workoutTitle, onSubmit: submitWorkout, onValues: (values) => {
279
330
  setDraftActivity(values.activity);
280
331
  } })),
332
+ profile: (React.createElement(EntryForm, { fields: profileFieldsOf(messages, progress.profile, name), messages: messages, title: messages.form.profileTitle, onSubmit: submitProfile })),
333
+ theme: (React.createElement(Titled, { title: messages.menu.theme },
334
+ React.createElement(Choice, { initialValue: themeName, options: themeNames.map((option) => ({
335
+ label: messages.themes.names[option].padEnd(8),
336
+ value: option,
337
+ hint: React.createElement(Swatches, { palette: themes[option] }),
338
+ })), onFocus: (value) => {
339
+ setPreviewTheme(pick(themeNames, value, themeName));
340
+ }, onSelect: chooseTheme }))),
281
341
  language: (React.createElement(Titled, { title: messages.menu.language },
282
- React.createElement(Select, { options: languageOptions, onChange: (value) => {
283
- chooseLanguage(asLanguage(value));
284
- } }))),
342
+ React.createElement(Choice, { initialValue: language, options: languageOptions, onSelect: chooseLanguage }))),
285
343
  };
286
344
  const shownQuote = localizedQuote(quote, language);
287
- const todayPanel = (React.createElement(TodayPanel, { metrics: metricsOf(messages, language, progress, now), title: messages.today.title, width: layout.todayWidth }));
288
- return (React.createElement(ThemeProvider, { theme: uiTheme },
289
- React.createElement(Box, { flexDirection: "column", height: size.rows ? rows : undefined, overflow: "hidden", width: columns },
290
- React.createElement(Box, { borderColor: colors.accent, borderStyle: "round", flexDirection: "column", flexShrink: 0, paddingX: 1 },
291
- React.createElement(Box, { justifyContent: "space-between" },
292
- React.createElement(Text, { bold: true, color: colors.accent }, "\u273B Terminal Sigma"),
293
- React.createElement(Text, { dimColor: true }, new Date(now).toLocaleTimeString(language, { hour12: false }))),
294
- React.createElement(Text, { dimColor: true, italic: true, wrap: "truncate-end" }, `“${shownQuote.quote}” — ${shownQuote.author}`)),
295
- view === "logs" ? (React.createElement(Box, { borderColor: colors.accent, borderStyle: "round", flexGrow: 1, paddingX: 1 },
296
- React.createElement(LogsView, { height: rows - 7, language: language, logs: logs, messages: messages }))) : (React.createElement(React.Fragment, null,
297
- React.createElement(Box, { flexDirection: layout.stacked ? "column-reverse" : "row", flexGrow: 1 },
298
- layout.showCharacter ? (React.createElement(Character, { activity: activity, label: activity === "levelUp"
299
- ? `${messages.activity.levelUp} ${messages.level(level)}`
300
- : messages.activity[activity], level: messages.level(level), levelNumber: level, name: options.name, width: characterWidth })) : null,
301
- layout.showToday && layout.todayBeside ? todayPanel : null,
302
- React.createElement(Box, { borderColor: view === "menu" ? colors.border : colors.accent, borderStyle: "round", flexDirection: "column", paddingX: 1, width: layout.panelWidth }, view === "menu" ? panels.menu : panels[view])),
303
- layout.showToday && !layout.todayBeside ? todayPanel : null)),
304
- React.createElement(Footer, { hint: hints[view], message: isIdle || isRunning
305
- ? message.text
306
- : `${messages.timer.pausedAt(phaseLabel, clock)} · ${message.text}`, status: isRunning ? messages.timer.left(phaseLabel, clock) : undefined, tone: message.tone }))));
345
+ const todayPanel = (React.createElement(TodayPanel, { sections: sectionsOf(language, palette, progress, now), isCompact: layout.isTodayCompact, title: messages.today.title, width: layout.todayWidth }));
346
+ const recentBlock = (React.createElement(Box, { borderColor: palette.border, borderStyle: "round", flexDirection: "column", flexShrink: 0, paddingX: 1 },
347
+ React.createElement(Text, { bold: true, color: palette.soft }, messages.recent.title),
348
+ logs.length === 0 ? React.createElement(Text, { dimColor: true }, messages.recent.empty) : null,
349
+ logs.slice(0, recentCount).map((log) => (React.createElement(LogRow, { key: `${log.kind}-${log.at}`, language: language, log: log, messages: messages })))));
350
+ return providers(React.createElement(Box, { flexDirection: "column", height: size.rows ? rows : undefined, overflow: "hidden", width: columns },
351
+ React.createElement(Box, { borderColor: palette.accent, borderStyle: "round", flexDirection: "column", flexShrink: 0, paddingX: 1 },
352
+ React.createElement(Box, { justifyContent: "space-between" },
353
+ React.createElement(Text, { bold: true, color: palette.accent }, "\u273B Terminal Sigma"),
354
+ React.createElement(Text, { dimColor: true }, new Date(now).toTimeString().slice(0, 8))),
355
+ React.createElement(Text, { dimColor: true, italic: true, wrap: "truncate-end" }, `“${shownQuote.quote}” — ${shownQuote.author}`)),
356
+ view === "logs" ? (React.createElement(Box, { borderColor: palette.accent, borderStyle: "round", flexGrow: 1, paddingX: 1 },
357
+ React.createElement(LogsView, { height: rows - 7, language: language, logs: logs, messages: messages }))) : (React.createElement(React.Fragment, null,
358
+ React.createElement(Box, { flexDirection: layout.stacked ? "column-reverse" : "row", flexGrow: 1 },
359
+ layout.showCharacter ? (React.createElement(Character, { activity: activity, label: activity === "levelUp"
360
+ ? `${messages.activity.levelUp} ${messages.level(level)}`
361
+ : messages.activity[activity], body: bodyOf(progress.profile), level: messages.level(level), levelNumber: level, name: name, width: characterWidth })) : null,
362
+ layout.showToday && layout.todayBeside ? todayPanel : null,
363
+ React.createElement(Box, { flexDirection: "column", width: layout.panelWidth },
364
+ React.createElement(Box, { borderColor: view === "menu" ? palette.border : palette.accent, borderStyle: "round", flexDirection: "column", flexGrow: 1, paddingX: 1 }, view === "menu" ? panels.menu : panels[view]),
365
+ layout.showRecent ? recentBlock : null)),
366
+ layout.showToday && !layout.todayBeside ? todayPanel : null)),
367
+ React.createElement(Footer, { hint: hints[view], message: isIdle || isRunning
368
+ ? message.text
369
+ : `${messages.timer.pausedAt(phaseLabel, clock)} · ${message.text}`, status: isRunning ? messages.timer.left(phaseLabel, clock) : undefined, tone: message.tone })));
370
+ }
371
+ function HealthPanel({ language, messages, palette, progress, today, onSelect, }) {
372
+ const { profile } = progress;
373
+ const targets = targetsOf(profile);
374
+ const { health } = messages;
375
+ const options = [
376
+ ...(profile ? [] : [{ label: health.setUp, value: "profile" }]),
377
+ { label: health.logMeal, value: "diet" },
378
+ { label: health.logWorkout, value: "workout" },
379
+ { label: health.back, value: "back" },
380
+ ];
381
+ return (React.createElement(Box, { flexDirection: "column" },
382
+ React.createElement(Text, { bold: true, color: palette.accent }, profile
383
+ ? health.title(messages.goal[profile.goal])
384
+ : messages.menu.health),
385
+ React.createElement(Text, { dimColor: true }, health.targets(formatNumber(language, targets.calories), targets.protein, targets.workoutMinutes)),
386
+ React.createElement(Box, { flexDirection: "column", marginY: 1 },
387
+ profile ? null : React.createElement(Text, { dimColor: true }, health.noProfile),
388
+ adviceOf(profile, today, language, messages).map((advice) => (React.createElement(Text, { key: advice.text },
389
+ React.createElement(Text, { color: advice.isDone ? palette.success : palette.accent }, "⏺ "),
390
+ React.createElement(Text, null, advice.text)))),
391
+ profile ? (React.createElement(Text, { dimColor: true, italic: true }, health.tip[profile.goal])) : null),
392
+ React.createElement(Choice, { options: options, onSelect: onSelect })));
307
393
  }
308
394
  //# 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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"}
@@ -11,7 +11,7 @@ const cli = meow(`
11
11
  $ siegesailor-terminal-sigma [options]
12
12
 
13
13
  Options
14
- --name Your character's name (default: Rook Sigma)
14
+ --name Your character's name (default: your profile's name)
15
15
  --focus Minutes of each Tomato Timer focus (default: 25)
16
16
  --break Minutes of each Tomato Timer break (default: 5)
17
17
  `, {