@ashley-shrok/viewmodel-shell 0.3.1 → 0.3.3

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.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/styles/default.css +17 -5
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ashley-shrok/viewmodel-shell",
3
- "version": "0.3.1",
3
+ "version": "0.3.3",
4
4
  "description": "A server-driven UI framework where the wire format is structured enough that agents can build full-stack apps without ever opening a browser and all UI tests are pure unit tests with no browser runtime. Server returns a JSON tree of typed nodes; a thin TypeScript adapter renders it to DOM. Backend-agnostic — a .NET reference backend ships with the repo, but any language can produce the JSON contract.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -34,18 +34,30 @@
34
34
  --vms-info: #4a9eff;
35
35
  --vms-radius: 10px;
36
36
  --vms-radius-sm: 6px;
37
- --vms-font-body: ui-monospace, 'DM Mono', 'Fira Mono', Menlo, monospace;
38
- --vms-font-head: 'DM Serif Display', Georgia, serif;
37
+ --vms-font-body: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
38
+ --vms-font-head: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
39
+ --vms-font-mono: ui-monospace, 'Cascadia Code', 'Fira Code', Menlo, Consolas, 'Liberation Mono', monospace;
39
40
  --vms-t: 0.15s ease;
40
41
  --vms-color-scheme: dark;
41
42
  }
42
43
 
44
+ /* ── Page chrome ──
45
+ Apply the theme background to <body> so areas outside .vms-page (the
46
+ default browser white) don't fight the active theme. Apps that prefer
47
+ their own page chrome can override these rules. */
48
+ body {
49
+ background-color: var(--vms-bg);
50
+ color: var(--vms-text);
51
+ color-scheme: var(--vms-color-scheme);
52
+ font-family: var(--vms-font-body);
53
+ }
54
+
43
55
  /* ── Page ── */
44
56
  .vms-page { display: flex; flex-direction: column; gap: 1.5rem; color: var(--vms-text); font-family: var(--vms-font-body); }
45
57
  .vms-page__title {
46
58
  font-family: var(--vms-font-head);
47
59
  font-size: 2.25rem;
48
- font-weight: 400;
60
+ font-weight: 600;
49
61
  letter-spacing: -0.02em;
50
62
  padding-bottom: 0.75rem;
51
63
  border-bottom: 1px solid var(--vms-border);
@@ -103,7 +115,7 @@ select.vms-field__input { cursor: pointer; padding-right: 2.25rem; }
103
115
  /* Code editor field — monospaced, tab-aware, no spell-check chrome.
104
116
  Apps add syntax highlighting via .vms-field--code-{language} hooks. */
105
117
  .vms-field__input--code {
106
- font-family: var(--vms-font-body);
118
+ font-family: var(--vms-font-mono);
107
119
  font-size: 13px;
108
120
  line-height: 1.5;
109
121
  tab-size: 2;
@@ -268,7 +280,7 @@ select.vms-field__input { cursor: pointer; padding-right: 2.25rem; }
268
280
  .vms-text--muted { color: var(--vms-text-muted); font-size: 12px; }
269
281
  .vms-text--strikethrough { color: var(--vms-done-text); text-decoration: line-through; }
270
282
  .vms-text--error { color: var(--vms-error); font-size: 13px; }
271
- .vms-text--pre { font-family: var(--vms-font-body); white-space: pre; }
283
+ .vms-text--pre { font-family: var(--vms-font-mono); white-space: pre; }
272
284
 
273
285
  /* ── Link ── */
274
286
  .vms-link {