ttrpg-tools/src/components/journal
hypercross c524dd5867 refactor: implement base/modifier separation for variable reactivity
Introduce a distinction between base values (set via `/set` or
declarations) and active modifiers (applied via tags). This ensures
tag transitions and numeric modifiers are calculated correctly during
cascades.

- Refactor `VariableView` to use a flat list with hover popups for
  declarations and active modifiers.
- Update `command-dispatcher` to use `getCombined` for accurate
  value lookups and `setBase` for variable updates.
- Update `var-reactivity` to manage `baseValues`, `activeMods`, and
  `sourceActivations` separately.
- Export new utility functions for accessing combined values,
  modifiers, and declaration expressions.
2026-07-13 10:10:47 +08:00
..
types refactor: replace stat system with variable system 2026-07-12 17:29:03 +08:00
CompletionsDropdown.tsx feat: implement command autocomplete for journal input 2026-07-09 09:31:19 +08:00
ComposePanel.tsx feat: localize journal components to Chinese 2026-07-07 23:51:35 +08:00
ConnectDialog.tsx fix: update proxy path and MQTT broker URL in dev 2026-07-11 09:29:16 +08:00
ConnectionBar.tsx feat: update session creation to hydrate data immediately 2026-07-11 09:32:26 +08:00
CreateSessionDialog.tsx feat: update session creation to hydrate data immediately 2026-07-11 09:32:26 +08:00
DynamicForm.tsx feat: localize journal components to Chinese 2026-07-07 23:51:35 +08:00
ErrorPopup.tsx feat(journal): add ErrorPopup to display full error messages 2026-07-11 10:00:05 +08:00
InviteDialog.tsx feat: allow closing dialogs by clicking backdrop 2026-07-08 00:35:01 +08:00
JournalContext.tsx feat(journal): add JournalContext to allow closing panel on mobile 2026-07-08 00:11:16 +08:00
JournalHeader.tsx feat: implement session creation flow 2026-07-08 00:39:29 +08:00
JournalInput.tsx fix(journal): update command trigger condition 2026-07-13 09:41:27 +08:00
JournalPanel.tsx refactor: replace stat system with variable system 2026-07-12 17:29:03 +08:00
ReactiveVariableManager.tsx feat(journal): seed declared variables on initialization 2026-07-13 01:07:13 +08:00
SessionDropdown.tsx feat: implement session creation flow 2026-07-08 00:39:29 +08:00
StreamMessage.tsx feat: localize journal components to Chinese 2026-07-07 23:51:35 +08:00
StreamView.tsx feat: localize journal components to Chinese 2026-07-07 23:51:35 +08:00
VariableView.tsx refactor: implement base/modifier separation for variable reactivity 2026-07-13 10:10:47 +08:00
command-completions.ts refactor: replace stat system with variable system 2026-07-12 17:29:03 +08:00
command-dispatcher.ts refactor: implement base/modifier separation for variable reactivity 2026-07-13 10:10:47 +08:00
command-parser.ts refactor: replace stat system with variable system 2026-07-12 17:29:03 +08:00
completions.ts feat(journal): seed declared variables on initialization 2026-07-13 01:07:13 +08:00
declare-parser.ts refactor: replace stat-parser with declare-parser 2026-07-12 19:14:35 +08:00
index.ts refactor: implement base/modifier separation for variable reactivity 2026-07-13 10:10:47 +08:00
registry.ts refactor: simplify journal message types and implement GM rolls 2026-07-06 18:06:32 +08:00
var-reactivity.ts refactor: implement base/modifier separation for variable reactivity 2026-07-13 10:10:47 +08:00
variable-expression.ts feat(journal): seed declared variables on initialization 2026-07-13 01:07:13 +08:00