sh3-core 0.15.3 → 0.16.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.
Files changed (224) hide show
  1. package/dist/BrandSlot.svelte +9 -9
  2. package/dist/{Shell.svelte → Sh3.svelte} +65 -65
  3. package/dist/Sh3.svelte.d.ts +5 -0
  4. package/dist/__test__/render.js +1 -1
  5. package/dist/actions/ActionPanel.svelte +3 -3
  6. package/dist/actions/CommandPalette.svelte +2 -2
  7. package/dist/actions/MenuBar.svelte +1 -1
  8. package/dist/actions/MenuBar.test.js +1 -1
  9. package/dist/actions/MenuButton.svelte +3 -3
  10. package/dist/actions/dispatcher.svelte.js +1 -1
  11. package/dist/actions/listActive.js +1 -1
  12. package/dist/actions/listeners.js +6 -6
  13. package/dist/actions/selection.svelte.d.ts +2 -2
  14. package/dist/actions/selection.svelte.js +4 -4
  15. package/dist/actions/selection.test.js +1 -1
  16. package/dist/actions/{shellActions.test.js → sh3Actions.test.js} +14 -14
  17. package/dist/actions/state.svelte.d.ts +3 -3
  18. package/dist/actions/state.svelte.js +3 -3
  19. package/dist/actions/syncMountedViewIds.test.js +1 -1
  20. package/dist/actions/types.d.ts +1 -1
  21. package/dist/api.d.ts +5 -5
  22. package/dist/api.js +7 -7
  23. package/dist/app/admin/ApiKeysView.svelte +9 -9
  24. package/dist/app/admin/AuthSettingsView.svelte +6 -6
  25. package/dist/app/admin/SystemView.svelte +12 -12
  26. package/dist/app/admin/UsersView.svelte +8 -8
  27. package/dist/app/store/AppUpdateAvailableModal.svelte +14 -14
  28. package/dist/app/store/PermissionConfirmModal.svelte +20 -20
  29. package/dist/app/store/StoreView.svelte +51 -51
  30. package/dist/app/store/UninstallAppDialog.svelte +14 -14
  31. package/dist/app/store/storeShard.svelte.js +1 -1
  32. package/dist/app/store/verbs.js +1 -1
  33. package/dist/apps/lifecycle.d.ts +1 -1
  34. package/dist/apps/lifecycle.js +4 -4
  35. package/dist/apps/lifecycle.test.js +5 -5
  36. package/dist/apps/registry.svelte.d.ts +2 -2
  37. package/dist/apps/registry.svelte.js +3 -3
  38. package/dist/apps/types.d.ts +1 -1
  39. package/dist/auth/GuestBanner.svelte +19 -19
  40. package/dist/auth/SignInWall.svelte +17 -17
  41. package/dist/auth/auth.svelte.d.ts +1 -1
  42. package/dist/auth/auth.svelte.js +1 -1
  43. package/dist/boot/satellitePayload.js +1 -1
  44. package/dist/color/api.d.ts +1 -1
  45. package/dist/color/api.js +1 -1
  46. package/dist/color/{shell-api.js → sh3-api.js} +3 -3
  47. package/dist/conflicts/ConflictModal.svelte +1 -1
  48. package/dist/conflicts/ConflictModal.svelte.d.ts +1 -1
  49. package/dist/conflicts/DetailView.svelte +19 -19
  50. package/dist/conflicts/PromptView.svelte +9 -9
  51. package/dist/conflicts/adapter-documents.js +1 -1
  52. package/dist/conflicts/api.d.ts +1 -1
  53. package/dist/conflicts/api.js +2 -2
  54. package/dist/conflicts/renderer-registry.js +1 -1
  55. package/dist/conflicts/renderers/MetaOnlyRenderer.svelte +8 -8
  56. package/dist/conflicts/renderers/TextDiffRenderer.svelte +15 -15
  57. package/dist/conflicts/renderers/index.js +1 -1
  58. package/dist/conflicts/resolve-primitive.js +1 -1
  59. package/dist/conflicts/{shell-api.js → sh3-api.js} +2 -2
  60. package/dist/contributions/registry.js +1 -1
  61. package/dist/createShell.d.ts +2 -2
  62. package/dist/createShell.js +6 -6
  63. package/dist/host-entry.d.ts +1 -1
  64. package/dist/host-entry.js +2 -2
  65. package/dist/host.js +2 -2
  66. package/dist/index.d.ts +1 -1
  67. package/dist/index.js +2 -2
  68. package/dist/keys/ConsentDialog.svelte +15 -15
  69. package/dist/keys/consent.svelte.d.ts +2 -2
  70. package/dist/keys/consent.svelte.js +3 -3
  71. package/dist/keys/revocation-bus.svelte.d.ts +3 -3
  72. package/dist/keys/revocation-bus.svelte.js +3 -3
  73. package/dist/layout/DragPreview.svelte +9 -9
  74. package/dist/layout/LayoutRenderer.browser.test.js +2 -2
  75. package/dist/layout/LayoutRenderer.svelte +4 -4
  76. package/dist/layout/SlotContainer.svelte +12 -12
  77. package/dist/layout/SlotDropZone.svelte +2 -2
  78. package/dist/layout/inspection.d.ts +1 -1
  79. package/dist/layout/inspection.js +1 -1
  80. package/dist/layout/store.svelte.js +3 -3
  81. package/dist/layout/types.d.ts +1 -1
  82. package/dist/layouts-shard/LayoutSaveModal.svelte +20 -20
  83. package/dist/layouts-shard/LayoutsSection.svelte +11 -11
  84. package/dist/layouts-shard/filter.test.js +3 -3
  85. package/dist/layouts-shard/layoutsApi.test.js +3 -3
  86. package/dist/layouts-shard/layoutsShard.svelte.test.js +7 -7
  87. package/dist/migrations/mode-id-rename.js +2 -2
  88. package/dist/overlays/ConfirmDialog.svelte +8 -8
  89. package/dist/overlays/EntityAppearanceModal.svelte +19 -19
  90. package/dist/overlays/FloatFrame.svelte +20 -20
  91. package/dist/overlays/FloatLayer.svelte +1 -1
  92. package/dist/overlays/ModalFrame.svelte +5 -5
  93. package/dist/overlays/PopupFrame.svelte +4 -4
  94. package/dist/overlays/ToastItem.svelte +12 -12
  95. package/dist/overlays/float.d.ts +2 -2
  96. package/dist/overlays/float.js +3 -3
  97. package/dist/overlays/float.test.js +6 -6
  98. package/dist/overlays/modal.js +1 -1
  99. package/dist/overlays/modal.test.js +2 -2
  100. package/dist/overlays/parentHost.js +2 -2
  101. package/dist/overlays/parentHost.test.js +5 -5
  102. package/dist/overlays/popup.js +2 -2
  103. package/dist/overlays/popup.test.js +2 -2
  104. package/dist/overlays/roots.js +4 -4
  105. package/dist/overlays/toast.js +1 -1
  106. package/dist/overlays/types.js +3 -3
  107. package/dist/primitives/Button.svelte +16 -16
  108. package/dist/primitives/Collapsible.svelte +11 -11
  109. package/dist/primitives/ResizableSplitter.svelte +10 -10
  110. package/dist/primitives/TabbedPanel.svelte +19 -19
  111. package/dist/primitives/base.css +57 -57
  112. package/dist/primitives/widgets/ColorSwatch.svelte +15 -15
  113. package/dist/primitives/widgets/ColorSwatch.svelte.test.js +4 -4
  114. package/dist/primitives/widgets/Field.svelte +20 -20
  115. package/dist/primitives/widgets/FilePicker.svelte +13 -13
  116. package/dist/primitives/widgets/IconPicker.svelte +14 -14
  117. package/dist/primitives/widgets/IconToggleGroup.svelte +14 -14
  118. package/dist/primitives/widgets/NumberInput.svelte +17 -17
  119. package/dist/primitives/widgets/PickerList.svelte +17 -17
  120. package/dist/primitives/widgets/RangeSlider.svelte +16 -16
  121. package/dist/primitives/widgets/Segmented.svelte +16 -16
  122. package/dist/primitives/widgets/Select.svelte +14 -14
  123. package/dist/primitives/widgets/Select.svelte.test.js +2 -2
  124. package/dist/primitives/widgets/Slider.svelte +20 -20
  125. package/dist/primitives/widgets/SliderGroup.svelte +2 -2
  126. package/dist/primitives/widgets/Textarea.svelte +13 -13
  127. package/dist/primitives/widgets/_select-listbox.svelte +15 -15
  128. package/dist/projects/session-state.svelte.js +1 -1
  129. package/dist/projects-shard/DeleteProjectDialog.svelte +12 -12
  130. package/dist/projects-shard/ProjectManage.svelte +25 -25
  131. package/dist/projects-shard/ProjectsSection.svelte +12 -12
  132. package/dist/registry/installer.d.ts +2 -2
  133. package/dist/registry/installer.js +2 -2
  134. package/dist/registry/loader.js +1 -1
  135. package/dist/registry/permission-descriptions.js +2 -2
  136. package/dist/registry/permission-descriptions.test.js +1 -1
  137. package/dist/runtime/runVerb-shell.test.js +2 -2
  138. package/dist/runtime/runVerb.js +4 -4
  139. package/dist/runtime/runVerb.test.js +4 -4
  140. package/dist/satellite/SatelliteShell.svelte +2 -2
  141. package/dist/{shell → sh3}/views/KeysAndPeers.svelte +7 -7
  142. package/dist/sh3Api/headless.d.ts +4 -0
  143. package/dist/{shell-shard/shellApi.js → sh3Api/headless.js} +5 -5
  144. package/dist/{shell-shard/shellApi.svelte.test.js → sh3Api/headless.svelte.test.js} +11 -11
  145. package/dist/{shellApi → sh3Api}/window.js +2 -2
  146. package/dist/{shellApi → sh3Api}/window.test.js +1 -1
  147. package/dist/{shellRuntime.svelte.d.ts → sh3Runtime.svelte.d.ts} +22 -10
  148. package/dist/{shellRuntime.svelte.js → sh3Runtime.svelte.js} +12 -10
  149. package/dist/sh3Runtime.svelte.test.d.ts +1 -0
  150. package/dist/sh3Runtime.svelte.test.js +46 -0
  151. package/dist/sh3core-shard/AppInfoView.svelte +19 -19
  152. package/dist/sh3core-shard/{ShellHome.svelte → Sh3Home.svelte} +82 -82
  153. package/dist/sh3core-shard/Sh3Home.svelte.d.ts +3 -0
  154. package/dist/sh3core-shard/{ShellTitle.svelte → Sh3Title.svelte} +11 -11
  155. package/dist/sh3core-shard/Sh3Title.svelte.d.ts +3 -0
  156. package/dist/sh3core-shard/appActions.js +3 -3
  157. package/dist/sh3core-shard/sh3coreShard.svelte.js +7 -7
  158. package/dist/shards/activate.svelte.d.ts +1 -1
  159. package/dist/shards/activate.svelte.js +6 -6
  160. package/dist/shards/types.d.ts +5 -5
  161. package/dist/shards/types.js +2 -2
  162. package/dist/shell-shard/CommandLine.svelte +7 -7
  163. package/dist/shell-shard/InputLine.svelte +3 -3
  164. package/dist/shell-shard/ScrollbackView.svelte +2 -2
  165. package/dist/shell-shard/Terminal.svelte +5 -5
  166. package/dist/shell-shard/Terminal.svelte.d.ts +2 -2
  167. package/dist/shell-shard/dispatch-custom.test.js +2 -2
  168. package/dist/shell-shard/dispatch-gating.test.js +2 -2
  169. package/dist/shell-shard/dispatch-invoke.test.js +2 -2
  170. package/dist/shell-shard/dispatch-to-terminal.js +1 -1
  171. package/dist/shell-shard/dispatch.d.ts +2 -2
  172. package/dist/shell-shard/dispatch.js +2 -2
  173. package/dist/shell-shard/entries/PromptEntry.svelte +4 -4
  174. package/dist/shell-shard/entries/StatusEntry.svelte +4 -4
  175. package/dist/shell-shard/entries/TextEntry.svelte +3 -3
  176. package/dist/shell-shard/locateSlot.test.js +9 -9
  177. package/dist/shell-shard/manifest.js +2 -2
  178. package/dist/shell-shard/registry.d.ts +2 -2
  179. package/dist/shell-shard/rich/AppCard.svelte +1 -1
  180. package/dist/shell-shard/rich/AppsTable.svelte +1 -1
  181. package/dist/shell-shard/rich/HelpTable.svelte +1 -1
  182. package/dist/shell-shard/rich/HistoryList.svelte +1 -1
  183. package/dist/shell-shard/rich/ViewsTable.svelte +1 -1
  184. package/dist/shell-shard/rich/ZoneTree.svelte +2 -2
  185. package/dist/shell-shard/shellShard.svelte.d.ts +1 -1
  186. package/dist/shell-shard/shellShard.svelte.js +8 -8
  187. package/dist/shell-shard/terminal-dispatch.test.js +2 -2
  188. package/dist/shell-shard/toolbar/Toolbar.svelte +4 -4
  189. package/dist/shell-shard/toolbar/Toolbar.svelte.d.ts +2 -2
  190. package/dist/shell-shard/toolbar/slots/BusySlot.svelte +2 -2
  191. package/dist/shell-shard/toolbar/slots/FocusLockSlot.svelte +2 -2
  192. package/dist/shell-shard/toolbar/slots/ModeSlot.svelte +1 -1
  193. package/dist/shell-shard/toolbar/slots/TargetShardSlot.svelte +1 -1
  194. package/dist/shell-shard/toolbar/slots.d.ts +3 -3
  195. package/dist/shell-shard/verbs/apps.js +3 -3
  196. package/dist/shell-shard/verbs/help.js +1 -1
  197. package/dist/shell-shard/verbs/help.svelte.test.js +1 -1
  198. package/dist/shell-shard/verbs/history.js +1 -1
  199. package/dist/shell-shard/verbs/mode.js +2 -2
  200. package/dist/shell-shard/verbs/mode.test.js +2 -2
  201. package/dist/shell-shard/verbs/shards.js +1 -1
  202. package/dist/shell-shard/verbs/views.js +8 -8
  203. package/dist/shell-shard/verbs/zones.js +2 -2
  204. package/dist/state/zones.svelte.d.ts +2 -2
  205. package/dist/state/zones.svelte.js +4 -4
  206. package/dist/theme.d.ts +3 -3
  207. package/dist/theme.js +5 -5
  208. package/dist/tokens.css +68 -68
  209. package/dist/verbs/types.d.ts +5 -5
  210. package/dist/verbs/types.js +1 -1
  211. package/dist/version.d.ts +1 -1
  212. package/dist/version.js +1 -1
  213. package/package.json +1 -1
  214. package/dist/Shell.svelte.d.ts +0 -5
  215. package/dist/sh3core-shard/ShellHome.svelte.d.ts +0 -3
  216. package/dist/sh3core-shard/ShellTitle.svelte.d.ts +0 -3
  217. package/dist/shell-shard/shellApi.d.ts +0 -4
  218. /package/dist/actions/{shellActions.test.d.ts → sh3Actions.test.d.ts} +0 -0
  219. /package/dist/color/{shell-api.d.ts → sh3-api.d.ts} +0 -0
  220. /package/dist/conflicts/{shell-api.d.ts → sh3-api.d.ts} +0 -0
  221. /package/dist/{shell → sh3}/views/KeysAndPeers.svelte.d.ts +0 -0
  222. /package/dist/{shell-shard/shellApi.svelte.test.d.ts → sh3Api/headless.svelte.test.d.ts} +0 -0
  223. /package/dist/{shellApi → sh3Api}/window.d.ts +0 -0
  224. /package/dist/{shellApi → sh3Api}/window.test.d.ts +0 -0
@@ -8,7 +8,7 @@ export const viewsVerb = {
8
8
  programmatic: true,
9
9
  async run(ctx, args) {
10
10
  if (args.includes('--standalone')) {
11
- const standalones = ctx.shell.listStandaloneViews();
11
+ const standalones = ctx.sh3.listStandaloneViews();
12
12
  if (standalones.length === 0) {
13
13
  ctx.scrollback.push({
14
14
  kind: 'status',
@@ -28,7 +28,7 @@ export const viewsVerb = {
28
28
  });
29
29
  return;
30
30
  }
31
- const views = ctx.shell.listViewsInCurrentLayout();
31
+ const views = ctx.sh3.listViewsInCurrentLayout();
32
32
  ctx.scrollback.push({
33
33
  kind: 'rich',
34
34
  componentKey: VIEWS_TABLE_KEY,
@@ -38,7 +38,7 @@ export const viewsVerb = {
38
38
  views,
39
39
  onClose: (slotId) => {
40
40
  var _a;
41
- const result = ctx.shell.closeSlot(slotId);
41
+ const result = ctx.sh3.closeSlot(slotId);
42
42
  if (!result.ok) {
43
43
  ctx.scrollback.push({
44
44
  kind: 'status',
@@ -70,7 +70,7 @@ export const openVerb = {
70
70
  });
71
71
  return;
72
72
  }
73
- const result = ctx.shell.openViewInCurrentLayout(viewId);
73
+ const result = ctx.sh3.openViewInCurrentLayout(viewId);
74
74
  if (!result.ok) {
75
75
  ctx.scrollback.push({
76
76
  kind: 'status',
@@ -105,7 +105,7 @@ export const popoutVerb = {
105
105
  });
106
106
  return;
107
107
  }
108
- const result = ctx.shell.popoutSlot(slotId);
108
+ const result = ctx.sh3.popoutSlot(slotId);
109
109
  if (!result.ok) {
110
110
  ctx.scrollback.push({
111
111
  kind: 'status',
@@ -132,7 +132,7 @@ export const dockVerb = {
132
132
  var _a;
133
133
  const floatId = args[0];
134
134
  if (!floatId) {
135
- const floats = ctx.shell.listFloats();
135
+ const floats = ctx.sh3.listFloats();
136
136
  if (floats.length === 0) {
137
137
  ctx.scrollback.push({
138
138
  kind: 'status',
@@ -152,7 +152,7 @@ export const dockVerb = {
152
152
  });
153
153
  return;
154
154
  }
155
- const result = ctx.shell.dockFloat(floatId);
155
+ const result = ctx.sh3.dockFloat(floatId);
156
156
  if (!result.ok) {
157
157
  ctx.scrollback.push({
158
158
  kind: 'status',
@@ -187,7 +187,7 @@ export const closeVerb = {
187
187
  });
188
188
  return;
189
189
  }
190
- const result = ctx.shell.closeSlot(slotId);
190
+ const result = ctx.sh3.closeSlot(slotId);
191
191
  if (!result.ok) {
192
192
  ctx.scrollback.push({
193
193
  kind: 'status',
@@ -10,7 +10,7 @@ export const zonesVerb = {
10
10
  summary: 'List zones for the current user (optionally scoped to a shard).',
11
11
  programmatic: true,
12
12
  async run(ctx, args) {
13
- const rows = ctx.shell.listZones(args[0]);
13
+ const rows = ctx.sh3.listZones(args[0]);
14
14
  ctx.scrollback.push({
15
15
  kind: 'rich',
16
16
  componentKey: ZONES_TABLE_KEY,
@@ -35,7 +35,7 @@ export const zoneVerb = {
35
35
  });
36
36
  return;
37
37
  }
38
- const value = ctx.shell.readZone(shardId, zoneName);
38
+ const value = ctx.sh3.readZone(shardId, zoneName);
39
39
  ctx.scrollback.push({
40
40
  kind: 'rich',
41
41
  componentKey: ZONE_TREE_KEY,
@@ -11,7 +11,7 @@ export type StateZones<T extends ZoneSchema> = {
11
11
  [K in keyof T]: T[K];
12
12
  };
13
13
  /**
14
- * Create live reactive state zones for a shard (or the shell itself).
14
+ * Create live reactive state zones for a shard (or the sh3 itself).
15
15
  *
16
16
  * Each zone declared in `schema` is backed by the appropriate store:
17
17
  * `ephemeral` and `session` are in-memory; `workspace` and `user` are
@@ -35,7 +35,7 @@ export declare function __setBackend(zone: ZoneName, backend: Backend): void;
35
35
  /**
36
36
  * Read a raw persisted zone entry without creating a reactive proxy.
37
37
  *
38
- * Intended for framework-internal consumers (e.g. the shell's layout
38
+ * Intended for framework-internal consumers (e.g. the sh3's layout
39
39
  * persistence) that need to inspect a stored value before deciding
40
40
  * whether to pass it to `createStateZones`. Not part of the shard-facing
41
41
  * API — shards always go through `createStateZones` so hydration is
@@ -2,7 +2,7 @@
2
2
  * createStateZones — turns a declarative zone schema into live reactive
3
3
  * per-zone objects backed by the right store for each zone.
4
4
  *
5
- * Usage (from a shard, or the shell itself):
5
+ * Usage (from a shard, or the sh3 itself):
6
6
  *
7
7
  * const state = createStateZones('graphlive', {
8
8
  * ephemeral: { hoveredId: null as string | null },
@@ -25,7 +25,7 @@
25
25
  *
26
26
  * Lifetime management (tracking teardown on shard deactivation) arrives in
27
27
  * phase 4 when the shard contract exists. For phase 3, roots live until the
28
- * page unloads, which is fine for a single-session shell.
28
+ * page unloads, which is fine for a single-session sh3.
29
29
  *
30
30
  * This file must be `.svelte.ts` so it can use the Svelte 5 runes
31
31
  * `$state`, `$effect.root`, `$effect`, and `$state.snapshot` at module level.
@@ -54,7 +54,7 @@ function scheduleFlush(zone, shardId, value) {
54
54
  });
55
55
  }
56
56
  /**
57
- * Create live reactive state zones for a shard (or the shell itself).
57
+ * Create live reactive state zones for a shard (or the sh3 itself).
58
58
  *
59
59
  * Each zone declared in `schema` is backed by the appropriate store:
60
60
  * `ephemeral` and `session` are in-memory; `workspace` and `user` are
@@ -119,7 +119,7 @@ export function __setBackend(zone, backend) {
119
119
  /**
120
120
  * Read a raw persisted zone entry without creating a reactive proxy.
121
121
  *
122
- * Intended for framework-internal consumers (e.g. the shell's layout
122
+ * Intended for framework-internal consumers (e.g. the sh3's layout
123
123
  * persistence) that need to inspect a stored value before deciding
124
124
  * whether to pass it to `createStateZones`. Not part of the shard-facing
125
125
  * API — shards always go through `createStateZones` so hydration is
package/dist/theme.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Apply CSS token overrides to :root and persist to User zone.
3
3
  *
4
- * Keys are token names without the `--` prefix (e.g. `'shell-accent'`).
4
+ * Keys are token names without the `--` prefix (e.g. `'sh3-accent'`).
5
5
  * Values are any valid CSS value string.
6
6
  *
7
7
  * Calling this replaces ALL previous overrides — tokens not present in
@@ -10,7 +10,7 @@
10
10
  export declare function setTokenOverrides(overrides: Record<string, string>): void;
11
11
  /**
12
12
  * Remove all token overrides from :root and clear persisted state.
13
- * The shell reverts to the default tokens defined in tokens.css.
13
+ * The sh3 reverts to the default tokens defined in tokens.css.
14
14
  */
15
15
  export declare function clearTokenOverrides(): void;
16
16
  /**
@@ -19,7 +19,7 @@ export declare function clearTokenOverrides(): void;
19
19
  */
20
20
  export declare function getTokenOverrides(): Record<string, string>;
21
21
  /**
22
- * Apply persisted token overrides to :root. Called once during shell boot
22
+ * Apply persisted token overrides to :root. Called once during sh3 boot
23
23
  * before any component mounts, so the themed colors are visible from the
24
24
  * first frame.
25
25
  *
package/dist/theme.js CHANGED
@@ -1,9 +1,9 @@
1
1
  /*
2
2
  * Token override API — allows external packages (like sh3-style) to
3
- * dynamically change shell CSS tokens and persist the selection to
3
+ * dynamically change sh3 CSS tokens and persist the selection to
4
4
  * the User zone.
5
5
  *
6
- * The shell reads persisted overrides at boot (see createShell.ts) so
6
+ * The sh3 reads persisted overrides at boot (see createShell.ts) so
7
7
  * themes survive page reloads. This module provides the write path.
8
8
  */
9
9
  const STORAGE_KEY = 'sh3:user:__sh3core__:theme';
@@ -12,7 +12,7 @@ let appliedKeys = [];
12
12
  /**
13
13
  * Apply CSS token overrides to :root and persist to User zone.
14
14
  *
15
- * Keys are token names without the `--` prefix (e.g. `'shell-accent'`).
15
+ * Keys are token names without the `--` prefix (e.g. `'sh3-accent'`).
16
16
  * Values are any valid CSS value string.
17
17
  *
18
18
  * Calling this replaces ALL previous overrides — tokens not present in
@@ -41,7 +41,7 @@ export function setTokenOverrides(overrides) {
41
41
  }
42
42
  /**
43
43
  * Remove all token overrides from :root and clear persisted state.
44
- * The shell reverts to the default tokens defined in tokens.css.
44
+ * The sh3 reverts to the default tokens defined in tokens.css.
45
45
  */
46
46
  export function clearTokenOverrides() {
47
47
  for (const key of appliedKeys) {
@@ -75,7 +75,7 @@ export function getTokenOverrides() {
75
75
  }
76
76
  }
77
77
  /**
78
- * Apply persisted token overrides to :root. Called once during shell boot
78
+ * Apply persisted token overrides to :root. Called once during sh3 boot
79
79
  * before any component mounts, so the themed colors are visible from the
80
80
  * first frame.
81
81
  *
package/dist/tokens.css CHANGED
@@ -1,125 +1,125 @@
1
1
  /*
2
2
  * SH3 design tokens and base reset.
3
3
  *
4
- * All shell-level CSS variables live here. Shards may read --shell-* tokens
4
+ * All sh3-level CSS variables live here. Shards may read --sh3-* tokens
5
5
  * but must not override them. Z-indices for the overlay layer stack are the
6
6
  * ONLY place z-index is written in the codebase (per docs/design/layout.md).
7
7
  */
8
8
 
9
9
  :root {
10
10
  /* Surfaces */
11
- --shell-bg: #1a1b1e;
12
- --shell-bg-elevated: #22232a;
13
- --shell-bg-sunken: #141518;
11
+ --sh3-bg: #1a1b1e;
12
+ --sh3-bg-elevated: #22232a;
13
+ --sh3-bg-sunken: #141518;
14
14
 
15
15
  /*
16
16
  * Gradient layer — undefined by default. When set (e.g. by sh3-style),
17
17
  * surfaces use the gradient instead of the flat color via the fallback
18
- * pattern: background: var(--shell-grad-bg, var(--shell-bg)).
18
+ * pattern: background: var(--sh3-grad-bg, var(--sh3-bg)).
19
19
  * Do NOT declare these here — they must remain undefined for the
20
20
  * CSS fallback to work.
21
21
  */
22
22
 
23
- --shell-border: #2e3038;
24
- --shell-border-strong: #3c3f4a;
23
+ --sh3-border: #2e3038;
24
+ --sh3-border-strong: #3c3f4a;
25
25
 
26
26
  /* Text */
27
- --shell-fg: #e4e6eb;
28
- --shell-fg-muted: #9aa0aa;
29
- --shell-fg-subtle: #6b7280;
27
+ --sh3-fg: #e4e6eb;
28
+ --sh3-fg-muted: #9aa0aa;
29
+ --sh3-fg-subtle: #6b7280;
30
30
 
31
31
  /* Accent */
32
- --shell-accent: #6ea8fe;
33
- --shell-accent-muted: #3a5580;
32
+ --sh3-accent: #6ea8fe;
33
+ --sh3-accent-muted: #3a5580;
34
34
 
35
35
  /* Inputs */
36
- --shell-input-bg: var(--shell-bg-sunken);
37
- --shell-input-border-focus: var(--shell-accent);
38
- --shell-focus-ring: 0 0 0 2px color-mix(in srgb, var(--shell-accent) 40%, transparent);
36
+ --sh3-input-bg: var(--sh3-bg-sunken);
37
+ --sh3-input-border-focus: var(--sh3-accent);
38
+ --sh3-focus-ring: 0 0 0 2px color-mix(in srgb, var(--sh3-accent) 40%, transparent);
39
39
 
40
40
  /* Semantic */
41
- --shell-error: #f87171;
42
- --shell-warning: #fbbf24;
43
- --shell-success: #34d399;
41
+ --sh3-error: #f87171;
42
+ --sh3-warning: #fbbf24;
43
+ --sh3-success: #34d399;
44
44
 
45
45
  /* Foreground pairings — the contrasting text/icon color for each
46
- semantic surface. Used instead of --shell-fg when the background
47
- is a saturated semantic color rather than --shell-bg. Theme
46
+ semantic surface. Used instead of --sh3-fg when the background
47
+ is a saturated semantic color rather than --sh3-bg. Theme
48
48
  overrides that change the surface hue should also update its
49
49
  paired foreground. */
50
- --shell-fg-on-accent: #ffffff;
51
- --shell-fg-on-error: #1a1b1e;
52
- --shell-fg-on-warning: #1a1b1e;
53
- --shell-fg-on-success: #1a1b1e;
50
+ --sh3-fg-on-accent: #ffffff;
51
+ --sh3-fg-on-error: #1a1b1e;
52
+ --sh3-fg-on-warning: #1a1b1e;
53
+ --sh3-fg-on-success: #1a1b1e;
54
54
 
55
55
  /* Typography */
56
- --shell-font-ui: system-ui, -apple-system, "Segoe UI", sans-serif;
57
- --shell-font-mono: ui-monospace, "Cascadia Code", "Consolas", monospace;
58
- --shell-font-size: 13px;
59
- --shell-line: 1.45;
56
+ --sh3-font-ui: system-ui, -apple-system, "Segoe UI", sans-serif;
57
+ --sh3-font-mono: ui-monospace, "Cascadia Code", "Consolas", monospace;
58
+ --sh3-font-size: 13px;
59
+ --sh3-line: 1.45;
60
60
 
61
61
  /* Radius */
62
- --shell-radius-sm: 3px;
63
- --shell-radius: 4px;
64
- --shell-radius-md: 6px;
65
- --shell-radius-lg: 8px;
62
+ --sh3-radius-sm: 3px;
63
+ --sh3-radius: 4px;
64
+ --sh3-radius-md: 6px;
65
+ --sh3-radius-lg: 8px;
66
66
 
67
67
  /* Spacing */
68
- --shell-pad-xs: 2px;
69
- --shell-pad-sm: 4px;
70
- --shell-pad-md: 8px;
71
- --shell-pad-lg: 12px;
68
+ --sh3-pad-xs: 2px;
69
+ --sh3-pad-sm: 4px;
70
+ --sh3-pad-md: 8px;
71
+ --sh3-pad-lg: 12px;
72
72
 
73
73
  /* Chrome metrics */
74
- --shell-tabbar-height: 32px;
75
- --shell-statusbar-height: 22px;
74
+ --sh3-tabbar-height: 32px;
75
+ --sh3-statusbar-height: 22px;
76
76
 
77
77
  /*
78
78
  * Overlay layer z-indices. See docs/design/layout.md — this is the single
79
79
  * source of truth for the layer stack. No component outside the overlay
80
80
  * layer managers is permitted to write a z-index.
81
81
  */
82
- --shell-z-layer-0: 0; /* docked layout (content area) */
83
- --shell-z-layer-1: 100; /* floating panels (deferred) */
84
- --shell-z-layer-2: 200; /* drag preview */
85
- --shell-z-layer-3: 300; /* popups, context menus */
86
- --shell-z-layer-4: 400; /* modals */
87
- --shell-z-layer-5: 500; /* toasts */
88
- --shell-z-layer-6: 600; /* command palette / AI input */
82
+ --sh3-z-layer-0: 0; /* docked layout (content area) */
83
+ --sh3-z-layer-1: 100; /* floating panels (deferred) */
84
+ --sh3-z-layer-2: 200; /* drag preview */
85
+ --sh3-z-layer-3: 300; /* popups, context menus */
86
+ --sh3-z-layer-4: 400; /* modals */
87
+ --sh3-z-layer-5: 500; /* toasts */
88
+ --sh3-z-layer-6: 600; /* command palette / AI input */
89
89
 
90
90
  /* ── Widget tokens (ADR-022) ─────────────────────────────────────── */
91
91
 
92
92
  /* Field metrics — fields, selects, number inputs share these */
93
- --shell-field-height-sm: 24px;
94
- --shell-field-height-md: 28px;
95
- --shell-field-pad-x: 10px;
93
+ --sh3-field-height-sm: 24px;
94
+ --sh3-field-height-md: 28px;
95
+ --sh3-field-pad-x: 10px;
96
96
 
97
97
  /* Slider tracks */
98
- --shell-track-bg: var(--shell-bg-sunken);
99
- --shell-track-border: var(--shell-border);
100
- --shell-track-fill: var(--shell-accent);
98
+ --sh3-track-bg: var(--sh3-bg-sunken);
99
+ --sh3-track-border: var(--sh3-border);
100
+ --sh3-track-fill: var(--sh3-accent);
101
101
 
102
- /* Slider thumbs — pinned to a fixed near-white instead of var(--shell-fg)
102
+ /* Slider thumbs — pinned to a fixed near-white instead of var(--sh3-fg)
103
103
  so light themes don't render a dark thumb. Themes that want a different
104
- thumb override --shell-thumb-bg directly. */
105
- --shell-thumb-bg: #e4e6eb;
106
- --shell-thumb-border: var(--shell-accent);
107
- --shell-thumb-shadow: var(--shell-shadow-sm);
104
+ thumb override --sh3-thumb-bg directly. */
105
+ --sh3-thumb-bg: #e4e6eb;
106
+ --sh3-thumb-border: var(--sh3-accent);
107
+ --sh3-thumb-shadow: var(--sh3-shadow-sm);
108
108
 
109
109
  /* Slider ticks */
110
- --shell-tick-bg: var(--shell-fg-subtle);
111
- --shell-tick-strong-bg: var(--shell-border-strong);
110
+ --sh3-tick-bg: var(--sh3-fg-subtle);
111
+ --sh3-tick-strong-bg: var(--sh3-border-strong);
112
112
 
113
113
  /* Widget radii */
114
- --shell-widget-radius: var(--shell-radius);
115
- --shell-widget-radius-pill: 999px;
114
+ --sh3-widget-radius: var(--sh3-radius);
115
+ --sh3-widget-radius-pill: 999px;
116
116
 
117
117
  /* Minimal shadow scale (1 token, just what thumbs need) */
118
- --shell-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.35);
118
+ --sh3-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.35);
119
119
 
120
120
  /* Minimal motion scale */
121
- --shell-motion-fast: 120ms;
122
- --shell-ease-standard: cubic-bezier(0.2, 0, 0, 1);
121
+ --sh3-motion-fast: 120ms;
122
+ --sh3-ease-standard: cubic-bezier(0.2, 0, 0, 1);
123
123
  }
124
124
 
125
125
  /* Base reset — intentionally minimal */
@@ -135,11 +135,11 @@ body {
135
135
  padding: 0;
136
136
  height: 100%;
137
137
  overflow: hidden;
138
- background: var(--shell-grad-bg, var(--shell-bg));
139
- color: var(--shell-fg);
140
- font-family: var(--shell-font-ui);
141
- font-size: var(--shell-font-size);
142
- line-height: var(--shell-line);
138
+ background: var(--sh3-grad-bg, var(--sh3-bg));
139
+ color: var(--sh3-fg);
140
+ font-family: var(--sh3-font-ui);
141
+ font-size: var(--sh3-font-size);
142
+ line-height: var(--sh3-line);
143
143
  -webkit-font-smoothing: antialiased;
144
144
  }
145
145
 
@@ -3,7 +3,7 @@ import type { SessionClient } from '../shell-shard/session-client.svelte';
3
3
  import type { TenantFsClient } from '../shell-shard/tenant-fs-client';
4
4
  import type { TreeRootRef } from '../layout/types';
5
5
  import type { DispatchToTerminalResult } from '../shell-shard/dispatch-to-terminal';
6
- export interface ShellApi {
6
+ export interface Sh3Api {
7
7
  listApps(): Array<{
8
8
  id: string;
9
9
  label: string;
@@ -68,7 +68,7 @@ export interface ShellApi {
68
68
  admin: boolean;
69
69
  };
70
70
  /**
71
- * Switch the active shell mode. The mode must be registered and visible
71
+ * Switch the active sh3 mode. The mode must be registered and visible
72
72
  * to the current role. Returns true on success, false on unknown or
73
73
  * role-restricted id (so verbs can surface a status).
74
74
  */
@@ -79,7 +79,7 @@ export interface ShellApi {
79
79
  label: string;
80
80
  }[];
81
81
  /**
82
- * Active shell mode. Returns `{ id: 'sh3', label: 'sh3' }` from headless
82
+ * Active sh3 mode. Returns `{ id: 'sh3', label: 'sh3' }` from headless
83
83
  * contexts (no terminal view mounted) so callers can rely on a stable
84
84
  * shape — Terminal.svelte overrides this with the live mode.
85
85
  */
@@ -103,7 +103,7 @@ export interface ShellApi {
103
103
  }
104
104
  export type { DispatchToTerminalResult } from '../shell-shard/dispatch-to-terminal';
105
105
  export interface VerbContext {
106
- shell: ShellApi;
106
+ sh3: Sh3Api;
107
107
  scrollback: Scrollback;
108
108
  session: SessionClient;
109
109
  cwd: string;
@@ -158,7 +158,7 @@ export interface Verb {
158
158
  name: string;
159
159
  summary: string;
160
160
  /**
161
- * When true, this verb resolves in every shell mode — including bash and
161
+ * When true, this verb resolves in every sh3 mode — including bash and
162
162
  * external shards' custom modes. Defaults to false: sh3-domain verbs only
163
163
  * resolve when `mode.id === 'sh3'`. Reserve this flag for verbs whose
164
164
  * action is mode-agnostic (e.g. `clear` clears the local scrollback,
@@ -2,7 +2,7 @@
2
2
  * Verb types — framework-level contribution kind.
3
3
  *
4
4
  * Shared between the framework verb registry (shards/registry.ts) and
5
- * shell-shard's resolution logic (shell-shard/registry.ts). ShellApi
5
+ * shell-shard's resolution logic (shell-shard/registry.ts). Sh3Api
6
6
  * stays in shell-shard — it's the Terminal's bridge to host actions.
7
7
  */
8
8
  export {};
package/dist/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
1
  /** Auto-generated from package.json — do not edit manually. */
2
- export declare const VERSION = "0.15.3";
2
+ export declare const VERSION = "0.16.0";
package/dist/version.js CHANGED
@@ -1,2 +1,2 @@
1
1
  /** Auto-generated from package.json — do not edit manually. */
2
- export const VERSION = '0.15.3';
2
+ export const VERSION = '0.16.0';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sh3-core",
3
- "version": "0.15.3",
3
+ "version": "0.16.0",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist"
@@ -1,5 +0,0 @@
1
- import './tokens.css';
2
- import './primitives/base.css';
3
- declare const Shell: import("svelte").Component<Record<string, never>, {}, "">;
4
- type Shell = ReturnType<typeof Shell>;
5
- export default Shell;
@@ -1,3 +0,0 @@
1
- declare const ShellHome: import("svelte").Component<Record<string, never>, {}, "">;
2
- type ShellHome = ReturnType<typeof ShellHome>;
3
- export default ShellHome;
@@ -1,3 +0,0 @@
1
- declare const ShellTitle: import("svelte").Component<Record<string, never>, {}, "">;
2
- type ShellTitle = ReturnType<typeof ShellTitle>;
3
- export default ShellTitle;
@@ -1,4 +0,0 @@
1
- import type { ShellApi } from './registry';
2
- import type { ZoneManager } from '../state/types';
3
- export declare function makeShellApiHeadless(zones?: ZoneManager): ShellApi;
4
- export declare function makeShellApiForTest(): ShellApi;
File without changes
File without changes
File without changes
File without changes