refactor: replace stat system with variable system

Replaces the specialized `stat` system with a more general-purpose
variable system. This includes:

- Renaming `ReactiveStatManager` to `ReactiveVariableManager`
- Changing template syntax from `${key}` to `{{$key}}`
- Replacing `StatsView` with `VariableView` to show declared, plain,
  and tag-typed variables
- Updating command `/stat` to `/set`
- Refactoring the reactivity engine to support variable declarations
  and tag modifiers via `csv role=declare` blocks
This commit is contained in:
2026-07-12 17:29:03 +08:00
parent 2983aa4440
commit 894f1735e5
18 changed files with 464 additions and 1063 deletions
+3 -3
View File
@@ -32,9 +32,9 @@ export const CommandLinkManager: Component = () => {
myName: stream.myName,
command,
sparkTables: comp.data.sparkTables,
statValues: stream.stats,
statDefs: comp.data.stats,
statTemplates: comp.data.statTemplates,
variables: stream.variables,
declarations: comp.data.declarations,
tagModifiers: comp.data.tagModifiers,
}).then((result) => {
if (!result.ok) {
setDispatchError(result.error);